From 87cda29ae47c93c2210f7e80e115c7faca9aafa6 Mon Sep 17 00:00:00 2001 From: ineczka Date: Fri, 9 Nov 2018 19:03:39 -0500 Subject: [PATCH] update master --- .DS_Store | Bin 6148 -> 6148 bytes TIL to Code/Pods/.DS_Store | Bin 0 -> 6148 bytes .../TIL to Code.xcodeproj/project.pbxproj | 189 + TIL to Code/TIL to Code/AppDelegate.swift | 4 + .../TIL to Code/GoogleService-Info.plist | 40 + .../GoogleService-Info.plist | 40 + {TIL to Code => Til to Code}/.DS_Store | Bin Til to Code/Podfile | 31 + Til to Code/Podfile.lock | 107 + Til to Code/Pods/Firebase/.cocoapods.yml | 5 + Til to Code/Pods/Firebase/CHANGELOG.md | 5 + .../Pods/Firebase/CoreOnly/Sources/Firebase.h | 105 + .../CoreOnly/Sources/module.modulemap | 4 + Til to Code/Pods/Firebase/NOTICES | 375 ++ Til to Code/Pods/Firebase/README.md | 87 + .../FIRAnalyticsConnector | Bin 0 -> 278352 bytes .../Modules/module.modulemap | 5 + .../FirebaseAnalytics | Bin 0 -> 465024 bytes .../Headers/FIRAnalytics+AppDelegate.h | 62 + .../Headers/FIRAnalytics.h | 119 + .../Headers/FIREventNames.h | 407 ++ .../Headers/FIRParameterNames.h | 507 ++ .../Headers/FIRUserPropertyNames.h | 17 + .../Headers/FirebaseAnalytics.h | 5 + .../Modules/module.modulemap | 10 + .../FirebaseCoreDiagnostics | Bin 0 -> 2787232 bytes .../Modules/module.modulemap | 6 + .../FirebaseAuth/Firebase/Auth/CHANGELOG.md | 172 + .../Pods/FirebaseAuth/Firebase/Auth/README.md | 17 + .../EmailPassword/FIREmailAuthProvider.m | 39 + .../FIREmailPasswordAuthCredential.h | 61 + .../FIREmailPasswordAuthCredential.m | 60 + .../Facebook/FIRFacebookAuthCredential.h | 36 + .../Facebook/FIRFacebookAuthCredential.m | 51 + .../Facebook/FIRFacebookAuthProvider.m | 36 + .../GitHub/FIRGitHubAuthCredential.h | 41 + .../GitHub/FIRGitHubAuthCredential.m | 49 + .../GitHub/FIRGitHubAuthProvider.m | 36 + .../Google/FIRGoogleAuthCredential.h | 38 + .../Google/FIRGoogleAuthCredential.m | 54 + .../Google/FIRGoogleAuthProvider.m | 37 + .../AuthProviders/OAuth/FIROAuthCredential.h | 50 + .../AuthProviders/OAuth/FIROAuthCredential.m | 49 + .../AuthProviders/OAuth/FIROAuthProvider.m | 42 + .../Phone/FIRPhoneAuthCredential.m | 64 + .../Phone/FIRPhoneAuthCredential_Internal.h | 70 + .../Phone/FIRPhoneAuthProvider.m | 519 ++ .../Twitter/FIRTwitterAuthCredential.h | 48 + .../Twitter/FIRTwitterAuthCredential.m | 51 + .../Twitter/FIRTwitterAuthProvider.m | 36 + .../Auth/Source/FIRActionCodeSettings.m | 45 + .../Auth/Source/FIRAdditionalUserInfo.m | 98 + .../Source/FIRAdditionalUserInfo_Internal.h | 46 + .../Firebase/Auth/Source/FIRAuth.m | 1919 +++++++ .../Firebase/Auth/Source/FIRAuthAPNSToken.h | 59 + .../Firebase/Auth/Source/FIRAuthAPNSToken.m | 52 + .../Auth/Source/FIRAuthAPNSTokenManager.h | 78 + .../Auth/Source/FIRAuthAPNSTokenManager.m | 247 + .../Auth/Source/FIRAuthAppCredential.h | 53 + .../Auth/Source/FIRAuthAppCredential.m | 64 + .../Auth/Source/FIRAuthAppCredentialManager.h | 85 + .../Auth/Source/FIRAuthAppCredentialManager.m | 164 + .../Auth/Source/FIRAuthAppDelegateProxy.h | 87 + .../Auth/Source/FIRAuthAppDelegateProxy.m | 412 ++ .../Firebase/Auth/Source/FIRAuthCredential.m | 42 + .../Auth/Source/FIRAuthCredential_Internal.h | 41 + .../Firebase/Auth/Source/FIRAuthDataResult.m | 69 + .../Auth/Source/FIRAuthDataResult_Internal.h | 30 + .../Auth/Source/FIRAuthDefaultUIDelegate.h | 43 + .../Auth/Source/FIRAuthDefaultUIDelegate.m | 92 + .../Firebase/Auth/Source/FIRAuthDispatcher.h | 63 + .../Firebase/Auth/Source/FIRAuthDispatcher.m | 46 + .../Firebase/Auth/Source/FIRAuthErrorUtils.h | 517 ++ .../Firebase/Auth/Source/FIRAuthErrorUtils.m | 1031 ++++ .../Auth/Source/FIRAuthExceptionUtils.h | 41 + .../Auth/Source/FIRAuthExceptionUtils.m | 36 + .../Auth/Source/FIRAuthGlobalWorkQueue.h | 31 + .../Auth/Source/FIRAuthGlobalWorkQueue.m | 26 + .../Auth/Source/FIRAuthInternalErrors.h | 443 ++ .../Firebase/Auth/Source/FIRAuthKeychain.h | 70 + .../Firebase/Auth/Source/FIRAuthKeychain.m | 256 + .../Auth/Source/FIRAuthNotificationManager.h | 71 + .../Auth/Source/FIRAuthNotificationManager.m | 177 + .../Auth/Source/FIRAuthOperationType.h | 47 + .../Firebase/Auth/Source/FIRAuthProvider.m | 63 + .../Auth/Source/FIRAuthSerialTaskQueue.h | 50 + .../Auth/Source/FIRAuthSerialTaskQueue.m | 52 + .../Firebase/Auth/Source/FIRAuthSettings.m | 29 + .../Firebase/Auth/Source/FIRAuthTokenResult.m | 110 + .../Auth/Source/FIRAuthTokenResult_Internal.h | 37 + .../Auth/Source/FIRAuthURLPresenter.h | 64 + .../Auth/Source/FIRAuthURLPresenter.m | 190 + .../Auth/Source/FIRAuthUserDefaultsStorage.h | 47 + .../Auth/Source/FIRAuthUserDefaultsStorage.m | 78 + .../Firebase/Auth/Source/FIRAuthWebUtils.h | 67 + .../Firebase/Auth/Source/FIRAuthWebUtils.m | 100 + .../Firebase/Auth/Source/FIRAuthWebView.h | 38 + .../Firebase/Auth/Source/FIRAuthWebView.m | 86 + .../Auth/Source/FIRAuthWebViewController.h | 73 + .../Auth/Source/FIRAuthWebViewController.m | 111 + .../Firebase/Auth/Source/FIRAuth_Internal.h | 120 + .../Auth/Source/FIRSecureTokenService.h | 99 + .../Auth/Source/FIRSecureTokenService.m | 206 + .../Firebase/Auth/Source/FIRUser.m | 1385 +++++ .../Firebase/Auth/Source/FIRUserInfoImpl.h | 61 + .../Firebase/Auth/Source/FIRUserInfoImpl.m | 127 + .../Firebase/Auth/Source/FIRUserMetadata.m | 64 + .../Auth/Source/FIRUserMetadata_Internal.h | 38 + .../Firebase/Auth/Source/FIRUser_Internal.h | 86 + .../Auth/Source/FirebaseAuthVersion.m | 26 + .../Source/Public/FIRActionCodeSettings.h | 84 + .../Source/Public/FIRAdditionalUserInfo.h | 57 + .../Firebase/Auth/Source/Public/FIRAuth.h | 864 +++ .../Auth/Source/Public/FIRAuthAPNSTokenType.h | 40 + .../Auth/Source/Public/FIRAuthCredential.h | 41 + .../Auth/Source/Public/FIRAuthDataResult.h | 49 + .../Auth/Source/Public/FIRAuthErrors.h | 321 ++ .../Auth/Source/Public/FIRAuthSettings.h | 30 + .../Auth/Source/Public/FIRAuthTokenResult.h | 66 + .../Auth/Source/Public/FIRAuthUIDelegate.h | 52 + .../Auth/Source/Public/FIREmailAuthProvider.h | 81 + .../Source/Public/FIRFacebookAuthProvider.h | 54 + .../Source/Public/FIRGitHubAuthProvider.h | 55 + .../Source/Public/FIRGoogleAuthProvider.h | 56 + .../Auth/Source/Public/FIROAuthProvider.h | 62 + .../Source/Public/FIRPhoneAuthCredential.h | 36 + .../Auth/Source/Public/FIRPhoneAuthProvider.h | 106 + .../Source/Public/FIRTwitterAuthProvider.h | 56 + .../Firebase/Auth/Source/Public/FIRUser.h | 495 ++ .../Firebase/Auth/Source/Public/FIRUserInfo.h | 60 + .../Auth/Source/Public/FIRUserMetadata.h | 45 + .../Auth/Source/Public/FirebaseAuth.h | 43 + .../Auth/Source/Public/FirebaseAuthVersion.h | 27 + .../Auth/Source/RPCs/FIRAuthBackend.h | 569 ++ .../Auth/Source/RPCs/FIRAuthBackend.m | 1122 ++++ .../Auth/Source/RPCs/FIRAuthRPCRequest.h | 57 + .../Auth/Source/RPCs/FIRAuthRPCResponse.h | 49 + .../Source/RPCs/FIRAuthRequestConfiguration.h | 52 + .../Source/RPCs/FIRAuthRequestConfiguration.m | 34 + .../Source/RPCs/FIRCreateAuthURIRequest.h | 88 + .../Source/RPCs/FIRCreateAuthURIRequest.m | 95 + .../Source/RPCs/FIRCreateAuthURIResponse.h | 61 + .../Source/RPCs/FIRCreateAuthURIResponse.m | 32 + .../Source/RPCs/FIRDeleteAccountRequest.h | 50 + .../Source/RPCs/FIRDeleteAccountRequest.m | 65 + .../Source/RPCs/FIRDeleteAccountResponse.h | 26 + .../Source/RPCs/FIRDeleteAccountResponse.m | 26 + .../Source/RPCs/FIREmailLinkSignInRequest.h | 66 + .../Source/RPCs/FIREmailLinkSignInRequest.m | 70 + .../Source/RPCs/FIREmailLinkSignInResponse.h | 54 + .../Source/RPCs/FIREmailLinkSignInResponse.m | 32 + .../Source/RPCs/FIRGetAccountInfoRequest.h | 53 + .../Source/RPCs/FIRGetAccountInfoRequest.m | 48 + .../Source/RPCs/FIRGetAccountInfoResponse.h | 156 + .../Source/RPCs/FIRGetAccountInfoResponse.m | 104 + .../RPCs/FIRGetOOBConfirmationCodeRequest.h | 147 + .../RPCs/FIRGetOOBConfirmationCodeRequest.m | 234 + .../RPCs/FIRGetOOBConfirmationCodeResponse.h | 35 + .../RPCs/FIRGetOOBConfirmationCodeResponse.m | 36 + .../Source/RPCs/FIRGetProjectConfigRequest.h | 41 + .../Source/RPCs/FIRGetProjectConfigRequest.m | 40 + .../Source/RPCs/FIRGetProjectConfigResponse.h | 36 + .../Source/RPCs/FIRGetProjectConfigResponse.m | 38 + .../Source/RPCs/FIRIdentityToolkitRequest.h | 66 + .../Source/RPCs/FIRIdentityToolkitRequest.m | 72 + .../Source/RPCs/FIRResetPasswordRequest.h | 55 + .../Source/RPCs/FIRResetPasswordRequest.m | 56 + .../Source/RPCs/FIRResetPasswordResponse.h | 52 + .../Source/RPCs/FIRResetPasswordResponse.m | 29 + .../Auth/Source/RPCs/FIRSecureTokenRequest.h | 113 + .../Auth/Source/RPCs/FIRSecureTokenRequest.m | 159 + .../Auth/Source/RPCs/FIRSecureTokenResponse.h | 50 + .../Auth/Source/RPCs/FIRSecureTokenResponse.m | 70 + .../RPCs/FIRSendVerificationCodeRequest.h | 67 + .../RPCs/FIRSendVerificationCodeRequest.m | 84 + .../RPCs/FIRSendVerificationCodeResponse.h | 32 + .../RPCs/FIRSendVerificationCodeResponse.m | 36 + .../Source/RPCs/FIRSetAccountInfoRequest.h | 151 + .../Source/RPCs/FIRSetAccountInfoRequest.m | 175 + .../Source/RPCs/FIRSetAccountInfoResponse.h | 98 + .../Source/RPCs/FIRSetAccountInfoResponse.m | 59 + .../Source/RPCs/FIRSignUpNewUserRequest.h | 72 + .../Source/RPCs/FIRSignUpNewUserRequest.m | 86 + .../Source/RPCs/FIRSignUpNewUserResponse.h | 44 + .../Source/RPCs/FIRSignUpNewUserResponse.m | 30 + .../Source/RPCs/FIRVerifyAssertionRequest.h | 103 + .../Source/RPCs/FIRVerifyAssertionRequest.m | 145 + .../Source/RPCs/FIRVerifyAssertionResponse.h | 186 + .../Source/RPCs/FIRVerifyAssertionResponse.m | 76 + .../Auth/Source/RPCs/FIRVerifyClientRequest.h | 56 + .../Auth/Source/RPCs/FIRVerifyClientRequest.m | 63 + .../Source/RPCs/FIRVerifyClientResponse.h | 38 + .../Source/RPCs/FIRVerifyClientResponse.m | 33 + .../Source/RPCs/FIRVerifyCustomTokenRequest.h | 57 + .../Source/RPCs/FIRVerifyCustomTokenRequest.m | 57 + .../RPCs/FIRVerifyCustomTokenResponse.h | 52 + .../RPCs/FIRVerifyCustomTokenResponse.m | 31 + .../Source/RPCs/FIRVerifyPasswordRequest.h | 81 + .../Source/RPCs/FIRVerifyPasswordRequest.m | 92 + .../Source/RPCs/FIRVerifyPasswordResponse.h | 72 + .../Source/RPCs/FIRVerifyPasswordResponse.m | 34 + .../Source/RPCs/FIRVerifyPhoneNumberRequest.h | 91 + .../Source/RPCs/FIRVerifyPhoneNumberRequest.m | 133 + .../RPCs/FIRVerifyPhoneNumberResponse.h | 64 + .../RPCs/FIRVerifyPhoneNumberResponse.m | 42 + Til to Code/Pods/FirebaseAuth/LICENSE | 202 + Til to Code/Pods/FirebaseAuth/README.md | 185 + .../Interop/Auth/Public/FIRAuthInterop.h | 42 + Til to Code/Pods/FirebaseAuthInterop/LICENSE | 202 + .../Pods/FirebaseAuthInterop/README.md | 179 + .../Firebase/Core/FIRAnalyticsConfiguration.m | 69 + .../Pods/FirebaseCore/Firebase/Core/FIRApp.m | 791 +++ .../Core/FIRAppAssociationRegistration.m | 47 + .../Firebase/Core/FIRBundleUtil.m | 57 + .../FirebaseCore/Firebase/Core/FIRComponent.m | 65 + .../Firebase/Core/FIRComponentContainer.m | 205 + .../Firebase/Core/FIRComponentType.m | 28 + .../Firebase/Core/FIRConfiguration.m | 44 + .../Firebase/Core/FIRDependency.m | 44 + .../FirebaseCore/Firebase/Core/FIRErrors.m | 29 + .../FirebaseCore/Firebase/Core/FIRLogger.m | 185 + .../FirebaseCore/Firebase/Core/FIROptions.m | 444 ++ .../FirebaseCore/Firebase/Core/FIRVersion.m | 33 + .../FIRAnalyticsConfiguration+Internal.h | 49 + .../Private/FIRAppAssociationRegistration.h | 49 + .../Firebase/Core/Private/FIRAppInternal.h | 222 + .../Firebase/Core/Private/FIRBundleUtil.h | 52 + .../Firebase/Core/Private/FIRComponent.h | 91 + .../Core/Private/FIRComponentContainer.h | 47 + .../Private/FIRComponentContainerInternal.h | 39 + .../Core/Private/FIRComponentRegistrant.h | 38 + .../Firebase/Core/Private/FIRComponentType.h | 34 + .../Core/Private/FIRCoreConfigurable.h | 38 + .../Firebase/Core/Private/FIRDependency.h | 45 + .../Firebase/Core/Private/FIRErrorCode.h | 55 + .../Firebase/Core/Private/FIRErrors.h | 33 + .../Firebase/Core/Private/FIRLogger.h | 159 + .../Core/Private/FIROptionsInternal.h | 114 + .../Firebase/Core/Private/FIRVersion.h | 23 + .../Core/Public/FIRAnalyticsConfiguration.h | 52 + .../Firebase/Core/Public/FIRApp.h | 127 + .../Firebase/Core/Public/FIRConfiguration.h | 50 + .../Firebase/Core/Public/FIRLoggerLevel.h | 38 + .../Firebase/Core/Public/FIROptions.h | 116 + .../Firebase/Core/Public/FirebaseCore.h | 21 + Til to Code/Pods/FirebaseCore/LICENSE | 202 + Til to Code/Pods/FirebaseCore/README.md | 185 + .../Firebase/Database/Api/FIRDataSnapshot.m | 101 + .../Firebase/Database/Api/FIRDatabase.m | 305 ++ .../Firebase/Database/Api/FIRDatabaseConfig.h | 63 + .../Firebase/Database/Api/FIRDatabaseConfig.m | 117 + .../Firebase/Database/Api/FIRDatabaseQuery.m | 525 ++ .../Firebase/Database/Api/FIRMutableData.m | 134 + .../Firebase/Database/Api/FIRServerValue.m | 30 + .../Database/Api/FIRTransactionResult.m | 39 + .../Api/Private/FIRDataSnapshot_Private.h | 28 + .../Api/Private/FIRDatabaseQuery_Private.h | 43 + .../Private/FIRDatabaseReference_Private.h | 29 + .../Api/Private/FIRDatabase_Private.h | 28 + .../Api/Private/FIRMutableData_Private.h | 26 + .../Private/FIRTransactionResult_Private.h | 25 + .../Database/Api/Private/FTypedefs_Private.h | 56 + .../Firebase/Database/Constants/FConstants.h | 190 + .../Firebase/Database/Constants/FConstants.m | 183 + .../Firebase/Database/Core/FCompoundHash.h | 40 + .../Firebase/Database/Core/FCompoundHash.m | 236 + .../Firebase/Database/Core/FListenProvider.h | 33 + .../Firebase/Database/Core/FListenProvider.m | 26 + .../Database/Core/FPersistentConnection.h | 78 + .../Database/Core/FPersistentConnection.m | 952 ++++ .../Firebase/Database/Core/FQueryParams.h | 59 + .../Firebase/Database/Core/FQueryParams.m | 372 ++ .../Firebase/Database/Core/FQuerySpec.h | 36 + .../Firebase/Database/Core/FQuerySpec.m | 85 + .../Firebase/Database/Core/FRangeMerge.h | 35 + .../Firebase/Database/Core/FRangeMerge.m | 107 + .../Firebase/Database/Core/FRepo.h | 76 + .../Firebase/Database/Core/FRepo.m | 1119 ++++ .../Firebase/Database/Core/FRepoInfo.h | 38 + .../Firebase/Database/Core/FRepoInfo.m | 134 + .../Firebase/Database/Core/FRepoManager.h | 32 + .../Firebase/Database/Core/FRepoManager.m | 135 + .../Firebase/Database/Core/FRepo_Private.h | 42 + .../Firebase/Database/Core/FServerValues.h | 30 + .../Firebase/Database/Core/FServerValues.m | 93 + .../Firebase/Database/Core/FSnapshotHolder.h | 27 + .../Firebase/Database/Core/FSnapshotHolder.m | 46 + .../Database/Core/FSparseSnapshotTree.h | 34 + .../Database/Core/FSparseSnapshotTree.m | 144 + .../Firebase/Database/Core/FSyncPoint.h | 66 + .../Firebase/Database/Core/FSyncPoint.m | 257 + .../Firebase/Database/Core/FSyncTree.h | 61 + .../Firebase/Database/Core/FSyncTree.m | 818 +++ .../Firebase/Database/Core/FWriteRecord.h | 40 + .../Firebase/Database/Core/FWriteRecord.m | 117 + .../Firebase/Database/Core/FWriteTree.h | 63 + .../Firebase/Database/Core/FWriteTree.m | 458 ++ .../Firebase/Database/Core/FWriteTreeRef.h | 51 + .../Firebase/Database/Core/FWriteTreeRef.m | 133 + .../Database/Core/Operation/FAckUserWrite.h | 35 + .../Database/Core/Operation/FAckUserWrite.m | 55 + .../Firebase/Database/Core/Operation/FMerge.h | 30 + .../Firebase/Database/Core/Operation/FMerge.m | 71 + .../Database/Core/Operation/FOperation.h | 34 + .../Core/Operation/FOperationSource.h | 34 + .../Core/Operation/FOperationSource.m | 73 + .../Database/Core/Operation/FOverwrite.h | 30 + .../Database/Core/Operation/FOverwrite.m | 62 + .../Database/Core/Utilities/FIRRetryHelper.h | 33 + .../Database/Core/Utilities/FIRRetryHelper.m | 140 + .../Database/Core/Utilities/FImmutableTree.h | 51 + .../Database/Core/Utilities/FImmutableTree.m | 421 ++ .../Firebase/Database/Core/Utilities/FPath.h | 45 + .../Firebase/Database/Core/Utilities/FPath.m | 298 + .../Firebase/Database/Core/Utilities/FTree.h | 48 + .../Firebase/Database/Core/Utilities/FTree.m | 183 + .../Database/Core/Utilities/FTreeNode.h | 25 + .../Database/Core/Utilities/FTreeNode.m | 36 + .../Firebase/Database/Core/View/FCacheNode.h | 44 + .../Firebase/Database/Core/View/FCacheNode.m | 60 + .../Database/Core/View/FCancelEvent.h | 30 + .../Database/Core/View/FCancelEvent.m | 55 + .../Firebase/Database/Core/View/FChange.h | 38 + .../Firebase/Database/Core/View/FChange.m | 65 + .../Core/View/FChildEventRegistration.h | 37 + .../Core/View/FChildEventRegistration.m | 93 + .../Firebase/Database/Core/View/FDataEvent.h | 39 + .../Firebase/Database/Core/View/FDataEvent.m | 74 + .../Firebase/Database/Core/View/FEvent.h | 27 + .../Database/Core/View/FEventRaiser.h | 35 + .../Database/Core/View/FEventRaiser.m | 72 + .../Database/Core/View/FEventRegistration.h | 36 + .../Core/View/FKeepSyncedEventRegistration.h | 28 + .../Core/View/FKeepSyncedEventRegistration.m | 64 + .../Core/View/FValueEventRegistration.h | 34 + .../Core/View/FValueEventRegistration.m | 90 + .../Firebase/Database/Core/View/FView.h | 53 + .../Firebase/Database/Core/View/FView.m | 223 + .../Firebase/Database/Core/View/FViewCache.h | 35 + .../Firebase/Database/Core/View/FViewCache.m | 61 + .../View/Filter/FChildChangeAccumulator.h | 28 + .../View/Filter/FChildChangeAccumulator.m | 80 + .../Core/View/Filter/FCompleteChildSource.h | 28 + .../Core/View/Filter/FIndexedFilter.h | 27 + .../Core/View/Filter/FIndexedFilter.m | 147 + .../Core/View/Filter/FLimitedFilter.h | 26 + .../Core/View/Filter/FLimitedFilter.m | 243 + .../Database/Core/View/Filter/FNodeFilter.h | 71 + .../Firebase/Database/FClock.h | 35 + .../Firebase/Database/FClock.m | 58 + .../Firebase/Database/FEventGenerator.h | 27 + .../Firebase/Database/FEventGenerator.m | 141 + .../Database/FIRDatabaseConfig_Private.h | 35 + .../Firebase/Database/FIRDatabaseReference.m | 404 ++ .../Firebase/Database/FIndex.h | 50 + .../Firebase/Database/FIndex.m | 38 + .../Firebase/Database/FKeyIndex.h | 23 + .../Firebase/Database/FKeyIndex.m | 115 + .../Firebase/Database/FListenComplete.h | 29 + .../Firebase/Database/FListenComplete.m | 51 + .../Firebase/Database/FMaxNode.h | 23 + .../Firebase/Database/FMaxNode.m | 61 + .../Firebase/Database/FNamedNode.h | 32 + .../Firebase/Database/FNamedNode.m | 94 + .../Firebase/Database/FPathIndex.h | 23 + .../Firebase/Database/FPathIndex.m | 125 + .../Firebase/Database/FPriorityIndex.h | 23 + .../Firebase/Database/FPriorityIndex.m | 118 + .../Firebase/Database/FRangedFilter.h | 32 + .../Firebase/Database/FRangedFilter.m | 118 + .../Database/FTransformedEnumerator.h | 24 + .../Database/FTransformedEnumerator.m | 43 + .../Firebase/Database/FValueIndex.h | 23 + .../Firebase/Database/FValueIndex.m | 106 + .../Firebase/Database/FViewProcessor.h | 41 + .../Firebase/Database/FViewProcessor.m | 655 +++ .../Firebase/Database/FViewProcessorResult.h | 30 + .../Firebase/Database/FViewProcessorResult.m | 35 + .../Database/Login/FAuthTokenProvider.h | 38 + .../Database/Login/FAuthTokenProvider.m | 108 + .../Database/Login/FIRNoopAuthTokenProvider.h | 22 + .../Database/Login/FIRNoopAuthTokenProvider.m | 33 + .../Database/Persistence/FCachePolicy.h | 41 + .../Database/Persistence/FCachePolicy.m | 79 + .../Persistence/FLevelDBStorageEngine.h | 39 + .../Persistence/FLevelDBStorageEngine.m | 738 +++ .../Database/Persistence/FPendingPut.h | 55 + .../Database/Persistence/FPendingPut.m | 112 + .../Persistence/FPersistenceManager.h | 52 + .../Persistence/FPersistenceManager.m | 191 + .../Database/Persistence/FPruneForest.h | 38 + .../Database/Persistence/FPruneForest.m | 177 + .../Database/Persistence/FStorageEngine.h | 53 + .../Database/Persistence/FTrackedQuery.h | 40 + .../Database/Persistence/FTrackedQuery.m | 102 + .../Persistence/FTrackedQueryManager.h | 51 + .../Persistence/FTrackedQueryManager.m | 322 ++ .../Database/Public/FIRDataEventType.h | 38 + .../Database/Public/FIRDataSnapshot.h | 147 + .../Firebase/Database/Public/FIRDatabase.h | 168 + .../Database/Public/FIRDatabaseQuery.h | 314 ++ .../Database/Public/FIRDatabaseReference.h | 718 +++ .../Firebase/Database/Public/FIRMutableData.h | 129 + .../Firebase/Database/Public/FIRServerValue.h | 33 + .../Database/Public/FIRTransactionResult.h | 46 + .../Database/Public/FirebaseDatabase.h | 29 + .../Firebase/Database/Realtime/FConnection.h | 52 + .../Firebase/Database/Realtime/FConnection.m | 212 + .../Database/Realtime/FWebSocketConnection.h | 46 + .../Database/Realtime/FWebSocketConnection.m | 308 ++ .../Database/Snapshot/FChildrenNode.h | 40 + .../Database/Snapshot/FChildrenNode.m | 385 ++ .../Database/Snapshot/FCompoundWrite.h | 61 + .../Database/Snapshot/FCompoundWrite.m | 257 + .../Firebase/Database/Snapshot/FEmptyNode.h | 24 + .../Firebase/Database/Snapshot/FEmptyNode.m | 30 + .../Firebase/Database/Snapshot/FIndexedNode.h | 49 + .../Firebase/Database/Snapshot/FIndexedNode.m | 202 + .../Firebase/Database/Snapshot/FLeafNode.h | 28 + .../Firebase/Database/Snapshot/FLeafNode.m | 250 + .../Firebase/Database/Snapshot/FNode.h | 46 + .../Database/Snapshot/FSnapshotUtilities.h | 45 + .../Database/Snapshot/FSnapshotUtilities.m | 301 ++ .../Database/Utilities/FAtomicNumber.h | 23 + .../Database/Utilities/FAtomicNumber.m | 54 + .../Database/Utilities/FEventEmitter.h | 33 + .../Database/Utilities/FEventEmitter.m | 145 + .../Firebase/Database/Utilities/FNextPushId.h | 23 + .../Firebase/Database/Utilities/FNextPushId.m | 63 + .../Firebase/Database/Utilities/FParsedUrl.h | 25 + .../Firebase/Database/Utilities/FParsedUrl.m | 24 + .../Database/Utilities/FStringUtilities.h | 26 + .../Database/Utilities/FStringUtilities.m | 61 + .../Firebase/Database/Utilities/FTypedefs.h | 45 + .../Firebase/Database/Utilities/FUtilities.h | 75 + .../Firebase/Database/Utilities/FUtilities.m | 390 ++ .../Firebase/Database/Utilities/FValidation.h | 45 + .../Firebase/Database/Utilities/FValidation.m | 312 ++ .../Utilities/Tuples/FTupleBoolBlock.h | 25 + .../Utilities/Tuples/FTupleBoolBlock.m | 24 + .../Utilities/Tuples/FTupleCallbackStatus.h | 24 + .../Utilities/Tuples/FTupleCallbackStatus.m | 22 + .../Utilities/Tuples/FTupleFirebase.h | 26 + .../Utilities/Tuples/FTupleFirebase.m | 25 + .../Utilities/Tuples/FTupleNodePath.h | 28 + .../Utilities/Tuples/FTupleNodePath.m | 33 + .../Utilities/Tuples/FTupleObjectNode.h | 27 + .../Utilities/Tuples/FTupleObjectNode.m | 32 + .../Database/Utilities/Tuples/FTupleObjects.h | 24 + .../Database/Utilities/Tuples/FTupleObjects.m | 24 + .../Utilities/Tuples/FTupleOnDisconnect.h | 27 + .../Utilities/Tuples/FTupleOnDisconnect.m | 26 + .../Utilities/Tuples/FTuplePathValue.h | 25 + .../Utilities/Tuples/FTuplePathValue.m | 38 + .../Tuples/FTupleRemovedQueriesEvents.h | 30 + .../Tuples/FTupleRemovedQueriesEvents.m | 37 + .../Utilities/Tuples/FTupleSetIdPath.h | 27 + .../Utilities/Tuples/FTupleSetIdPath.m | 33 + .../Utilities/Tuples/FTupleStringNode.h | 27 + .../Utilities/Tuples/FTupleStringNode.m | 34 + .../Database/Utilities/Tuples/FTupleTSN.h | 25 + .../Database/Utilities/Tuples/FTupleTSN.m | 24 + .../Utilities/Tuples/FTupleTransaction.h | 74 + .../Utilities/Tuples/FTupleTransaction.m | 38 + .../Utilities/Tuples/FTupleUserCallback.h | 31 + .../Utilities/Tuples/FTupleUserCallback.m | 35 + .../FArraySortedDictionary.h | 21 + .../FArraySortedDictionary.m | 266 + .../FImmutableSortedDictionary.h | 54 + .../FImmutableSortedDictionary.m | 142 + .../FImmutableSortedSet.h | 22 + .../FImmutableSortedSet.m | 115 + .../FLLRBEmptyNode.h | 27 + .../FLLRBEmptyNode.m | 72 + .../FImmutableSortedDictionary/FLLRBNode.h | 29 + .../FLLRBValueNode.h | 29 + .../FLLRBValueNode.m | 230 + .../FTreeSortedDictionary.h | 30 + .../FTreeSortedDictionary.m | 326 ++ .../FTreeSortedDictionaryEnumerator.h | 9 + .../FTreeSortedDictionaryEnumerator.m | 83 + .../third_party/SocketRocket/FSRWebSocket.h | 107 + .../third_party/SocketRocket/FSRWebSocket.m | 1852 +++++++ .../SocketRocket/NSData+SRB64Additions.h | 23 + .../SocketRocket/NSData+SRB64Additions.m | 37 + .../third_party/SocketRocket/fbase64.c | 318 ++ .../third_party/SocketRocket/fbase64.h | 33 + .../third_party/Wrap-leveldb/APLevelDB.h | 105 + .../third_party/Wrap-leveldb/APLevelDB.mm | 500 ++ Til to Code/Pods/FirebaseDatabase/LICENSE | 202 + Til to Code/Pods/FirebaseDatabase/README.md | 179 + .../Pods/FirebaseInstanceID/CHANGELOG.md | 132 + .../FirebaseInstanceID | Bin 0 -> 5428736 bytes .../Headers/FIRInstanceID.h | 304 ++ .../Headers/FirebaseInstanceID.h | 1 + .../Modules/module.modulemap | 6 + Til to Code/Pods/FirebaseInstanceID/README.md | 10 + Til to Code/Pods/GTMSessionFetcher/LICENSE | 202 + Til to Code/Pods/GTMSessionFetcher/README.md | 23 + .../Source/GTMSessionFetcher.h | 1309 +++++ .../Source/GTMSessionFetcher.m | 4595 ++++++++++++++++ .../Source/GTMSessionFetcherLogging.h | 112 + .../Source/GTMSessionFetcherLogging.m | 982 ++++ .../Source/GTMSessionFetcherService.h | 190 + .../Source/GTMSessionFetcherService.m | 1352 +++++ .../Source/GTMSessionUploadFetcher.h | 166 + .../Source/GTMSessionUploadFetcher.m | 1954 +++++++ .../GoogleAppMeasurement | Bin 0 -> 22793632 bytes .../Modules/module.modulemap | 9 + .../GULAppDelegateSwizzler.m | 718 +++ .../Internal/GULAppDelegateSwizzler_Private.h | 64 + .../Private/GULAppDelegateSwizzler.h | 63 + .../GoogleUtilities/Common/GULLoggerCodes.h | 36 + .../third_party/GULAppEnvironmentUtil.h | 43 + .../third_party/GULAppEnvironmentUtil.m | 250 + .../GoogleUtilities/Logger/GULLogger.m | 207 + .../Logger/Private/GULLogger.h | 159 + .../Logger/Public/GULLoggerLevel.h | 35 + .../MethodSwizzler/GULSwizzler.m | 185 + .../Private/GULOriginalIMPConvenienceMacros.h | 207 + .../MethodSwizzler/Private/GULSwizzler.h | 91 + .../NSData+zlib/GULNSData+zlib.h | 49 + .../NSData+zlib/GULNSData+zlib.m | 207 + .../Network/GULMutableDictionary.m | 97 + .../GoogleUtilities/Network/GULNetwork.m | 388 ++ .../Network/GULNetworkConstants.m | 40 + .../Network/GULNetworkURLSession.m | 730 +++ .../Network/Private/GULMutableDictionary.h | 46 + .../Network/Private/GULNetwork.h | 87 + .../Network/Private/GULNetworkConstants.h | 79 + .../Private/GULNetworkLoggerProtocol.h | 51 + .../Network/Private/GULNetworkMessageCode.h | 45 + .../Network/Private/GULNetworkURLSession.h | 60 + .../GULReachabilityChecker+Internal.h | 47 + .../Reachability/GULReachabilityChecker.m | 240 + .../Private/GULReachabilityChecker.h | 77 + .../Private/GULReachabilityMessageCode.h | 27 + .../UserDefaults/GULUserDefaults.m | 235 + .../UserDefaults/Private/GULUserDefaults.h | 110 + Til to Code/Pods/GoogleUtilities/LICENSE | 202 + Til to Code/Pods/GoogleUtilities/README.md | 180 + .../Pods/Headers/Private/Firebase/Firebase.h | 1 + .../FirebaseAuthInterop/FIRAuthInterop.h | 1 + .../Pods/Headers/Public/Firebase/Firebase.h | 1 + .../FirebaseAuthInterop/FIRAuthInterop.h | 1 + Til to Code/Pods/Manifest.lock | 107 + .../Pods/Pods.xcodeproj/project.pbxproj | 4780 +++++++++++++++++ .../FirebaseAuth/FirebaseAuth-dummy.m | 5 + .../FirebaseAuth/FirebaseAuth-umbrella.h | 39 + .../FirebaseAuth/FirebaseAuth.modulemap | 6 + .../FirebaseAuth/FirebaseAuth.xcconfig | 12 + .../FirebaseCore/FirebaseCore-dummy.m | 5 + .../FirebaseCore/FirebaseCore-umbrella.h | 22 + .../FirebaseCore/FirebaseCore.modulemap | 6 + .../FirebaseCore/FirebaseCore.xcconfig | 12 + .../FirebaseDatabase/FirebaseDatabase-dummy.m | 5 + .../FirebaseDatabase-umbrella.h | 25 + .../FirebaseDatabase.modulemap | 6 + .../FirebaseDatabase.xcconfig | 10 + .../GTMSessionFetcher-dummy.m | 5 + .../GTMSessionFetcher-prefix.pch | 12 + .../GTMSessionFetcher-umbrella.h | 20 + .../GTMSessionFetcher.modulemap | 6 + .../GTMSessionFetcher.xcconfig | 9 + .../GTMSessionFetcher/Info.plist | 26 + .../GoogleUtilities/GoogleUtilities-dummy.m | 5 + .../GoogleUtilities-prefix.pch | 12 + .../GoogleUtilities-umbrella.h | 19 + .../GoogleUtilities/GoogleUtilities.modulemap | 6 + .../GoogleUtilities/GoogleUtilities.xcconfig | 9 + .../GoogleUtilities/Info.plist | 26 + .../Pods-TIL to Code/Info.plist | 26 + ...Pods-TIL to Code-acknowledgements.markdown | 1310 +++++ .../Pods-TIL to Code-acknowledgements.plist | 1408 +++++ .../Pods-TIL to Code/Pods-TIL to Code-dummy.m | 5 + .../Pods-TIL to Code-frameworks.sh | 159 + .../Pods-TIL to Code-resources.sh | 118 + .../Pods-TIL to Code-umbrella.h | 16 + .../Pods-TIL to Code.debug.xcconfig | 10 + .../Pods-TIL to Code.modulemap | 6 + .../Pods-TIL to Code.release.xcconfig | 10 + .../Pods-TIL to CodeTests/Info.plist | 26 + ...TIL to CodeTests-acknowledgements.markdown | 1310 +++++ ...ds-TIL to CodeTests-acknowledgements.plist | 1408 +++++ .../Pods-TIL to CodeTests-dummy.m | 5 + .../Pods-TIL to CodeTests-frameworks.sh | 159 + .../Pods-TIL to CodeTests-resources.sh | 118 + .../Pods-TIL to CodeTests-umbrella.h | 16 + .../Pods-TIL to CodeTests.debug.xcconfig | 10 + .../Pods-TIL to CodeTests.modulemap | 6 + .../Pods-TIL to CodeTests.release.xcconfig | 10 + .../Pods-TIL to CodeUITests/Info.plist | 26 + ...L to CodeUITests-acknowledgements.markdown | 1310 +++++ ...-TIL to CodeUITests-acknowledgements.plist | 1408 +++++ .../Pods-TIL to CodeUITests-dummy.m | 5 + .../Pods-TIL to CodeUITests-frameworks.sh | 159 + .../Pods-TIL to CodeUITests-resources.sh | 118 + .../Pods-TIL to CodeUITests-umbrella.h | 16 + .../Pods-TIL to CodeUITests.debug.xcconfig | 10 + .../Pods-TIL to CodeUITests.modulemap | 6 + .../Pods-TIL to CodeUITests.release.xcconfig | 10 + .../leveldb-library/Info.plist | 26 + .../leveldb-library/leveldb-library-dummy.m | 5 + .../leveldb-library-prefix.pch | 12 + .../leveldb-library-umbrella.h | 30 + .../leveldb-library/leveldb-library.modulemap | 6 + .../leveldb-library/leveldb-library.xcconfig | 12 + .../Target Support Files/nanopb/Info.plist | 26 + .../nanopb/nanopb-dummy.m | 5 + .../nanopb/nanopb-prefix.pch | 12 + .../nanopb/nanopb-umbrella.h | 26 + .../nanopb/nanopb.modulemap | 6 + .../nanopb/nanopb.xcconfig | 8 + Til to Code/Pods/leveldb-library/LICENSE | 27 + Til to Code/Pods/leveldb-library/README.md | 174 + .../Pods/leveldb-library/db/builder.cc | 88 + Til to Code/Pods/leveldb-library/db/builder.h | 34 + Til to Code/Pods/leveldb-library/db/c.cc | 595 ++ .../Pods/leveldb-library/db/db_impl.cc | 1568 ++++++ Til to Code/Pods/leveldb-library/db/db_impl.h | 211 + .../Pods/leveldb-library/db/db_iter.cc | 317 ++ Til to Code/Pods/leveldb-library/db/db_iter.h | 28 + .../Pods/leveldb-library/db/dbformat.cc | 140 + .../Pods/leveldb-library/db/dbformat.h | 230 + .../Pods/leveldb-library/db/dumpfile.cc | 225 + .../Pods/leveldb-library/db/filename.cc | 144 + .../Pods/leveldb-library/db/filename.h | 85 + .../Pods/leveldb-library/db/log_format.h | 35 + .../Pods/leveldb-library/db/log_reader.cc | 284 + .../Pods/leveldb-library/db/log_reader.h | 113 + .../Pods/leveldb-library/db/log_writer.cc | 112 + .../Pods/leveldb-library/db/log_writer.h | 54 + .../Pods/leveldb-library/db/memtable.cc | 145 + .../Pods/leveldb-library/db/memtable.h | 88 + Til to Code/Pods/leveldb-library/db/repair.cc | 461 ++ .../Pods/leveldb-library/db/skiplist.h | 384 ++ .../Pods/leveldb-library/db/snapshot.h | 67 + .../Pods/leveldb-library/db/table_cache.cc | 127 + .../Pods/leveldb-library/db/table_cache.h | 61 + .../Pods/leveldb-library/db/version_edit.cc | 266 + .../Pods/leveldb-library/db/version_edit.h | 107 + .../Pods/leveldb-library/db/version_set.cc | 1535 ++++++ .../Pods/leveldb-library/db/version_set.h | 398 ++ .../Pods/leveldb-library/db/write_batch.cc | 147 + .../leveldb-library/db/write_batch_internal.h | 50 + .../Pods/leveldb-library/include/leveldb/c.h | 290 + .../leveldb-library/include/leveldb/cache.h | 110 + .../include/leveldb/comparator.h | 63 + .../Pods/leveldb-library/include/leveldb/db.h | 163 + .../include/leveldb/dumpfile.h | 25 + .../leveldb-library/include/leveldb/env.h | 351 ++ .../include/leveldb/filter_policy.h | 70 + .../include/leveldb/iterator.h | 100 + .../leveldb-library/include/leveldb/options.h | 213 + .../leveldb-library/include/leveldb/slice.h | 109 + .../leveldb-library/include/leveldb/status.h | 112 + .../leveldb-library/include/leveldb/table.h | 85 + .../include/leveldb/table_builder.h | 92 + .../include/leveldb/write_batch.h | 64 + .../leveldb-library/port/atomic_pointer.h | 242 + Til to Code/Pods/leveldb-library/port/port.h | 19 + .../Pods/leveldb-library/port/port_example.h | 141 + .../Pods/leveldb-library/port/port_posix.cc | 53 + .../Pods/leveldb-library/port/port_posix.h | 156 + .../leveldb-library/port/port_posix_sse.cc | 129 + .../leveldb-library/port/thread_annotations.h | 60 + .../Pods/leveldb-library/table/block.cc | 268 + .../Pods/leveldb-library/table/block.h | 44 + .../leveldb-library/table/block_builder.cc | 109 + .../leveldb-library/table/block_builder.h | 57 + .../leveldb-library/table/filter_block.cc | 111 + .../Pods/leveldb-library/table/filter_block.h | 68 + .../Pods/leveldb-library/table/format.cc | 144 + .../Pods/leveldb-library/table/format.h | 108 + .../Pods/leveldb-library/table/iterator.cc | 67 + .../leveldb-library/table/iterator_wrapper.h | 66 + .../Pods/leveldb-library/table/merger.cc | 197 + .../Pods/leveldb-library/table/merger.h | 26 + .../Pods/leveldb-library/table/table.cc | 285 + .../leveldb-library/table/table_builder.cc | 270 + .../table/two_level_iterator.cc | 182 + .../table/two_level_iterator.h | 34 + .../Pods/leveldb-library/util/arena.cc | 68 + Til to Code/Pods/leveldb-library/util/arena.h | 68 + .../Pods/leveldb-library/util/bloom.cc | 95 + .../Pods/leveldb-library/util/cache.cc | 405 ++ .../Pods/leveldb-library/util/coding.cc | 194 + .../Pods/leveldb-library/util/coding.h | 104 + .../Pods/leveldb-library/util/comparator.cc | 81 + .../Pods/leveldb-library/util/crc32c.cc | 350 ++ .../Pods/leveldb-library/util/crc32c.h | 45 + Til to Code/Pods/leveldb-library/util/env.cc | 100 + .../Pods/leveldb-library/util/env_posix.cc | 695 +++ .../util/env_posix_test_helper.h | 28 + .../leveldb-library/util/filter_policy.cc | 11 + Til to Code/Pods/leveldb-library/util/hash.cc | 52 + Til to Code/Pods/leveldb-library/util/hash.h | 19 + .../Pods/leveldb-library/util/histogram.cc | 139 + .../Pods/leveldb-library/util/histogram.h | 42 + .../Pods/leveldb-library/util/logging.cc | 72 + .../Pods/leveldb-library/util/logging.h | 43 + .../Pods/leveldb-library/util/mutexlock.h | 41 + .../Pods/leveldb-library/util/options.cc | 30 + .../Pods/leveldb-library/util/posix_logger.h | 98 + .../Pods/leveldb-library/util/random.h | 64 + .../Pods/leveldb-library/util/status.cc | 75 + .../Pods/leveldb-library/util/testharness.cc | 77 + .../Pods/leveldb-library/util/testharness.h | 138 + .../Pods/leveldb-library/util/testutil.cc | 51 + .../Pods/leveldb-library/util/testutil.h | 63 + Til to Code/Pods/nanopb/LICENSE.txt | 20 + Til to Code/Pods/nanopb/README.md | 71 + Til to Code/Pods/nanopb/pb.h | 593 ++ Til to Code/Pods/nanopb/pb_common.c | 97 + Til to Code/Pods/nanopb/pb_common.h | 42 + Til to Code/Pods/nanopb/pb_decode.c | 1508 ++++++ Til to Code/Pods/nanopb/pb_decode.h | 175 + Til to Code/Pods/nanopb/pb_encode.c | 869 +++ Til to Code/Pods/nanopb/pb_encode.h | 170 + .../contents.xcworkspacedata | 10 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + 721 files changed, 106238 insertions(+) create mode 100644 TIL to Code/Pods/.DS_Store create mode 100644 TIL to Code/TIL to Code/GoogleService-Info.plist create mode 100644 TIL to Code/TIL to CodeUITests/GoogleService-Info.plist rename {TIL to Code => Til to Code}/.DS_Store (100%) create mode 100644 Til to Code/Podfile create mode 100644 Til to Code/Podfile.lock create mode 100755 Til to Code/Pods/Firebase/.cocoapods.yml create mode 100755 Til to Code/Pods/Firebase/CHANGELOG.md create mode 100755 Til to Code/Pods/Firebase/CoreOnly/Sources/Firebase.h create mode 100755 Til to Code/Pods/Firebase/CoreOnly/Sources/module.modulemap create mode 100755 Til to Code/Pods/Firebase/NOTICES create mode 100755 Til to Code/Pods/Firebase/README.md create mode 100755 Til to Code/Pods/FirebaseAnalytics/Frameworks/FIRAnalyticsConnector.framework/FIRAnalyticsConnector create mode 100755 Til to Code/Pods/FirebaseAnalytics/Frameworks/FIRAnalyticsConnector.framework/Modules/module.modulemap create mode 100755 Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/FirebaseAnalytics create mode 100755 Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalytics+AppDelegate.h create mode 100755 Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalytics.h create mode 100755 Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIREventNames.h create mode 100755 Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIRParameterNames.h create mode 100755 Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h create mode 100755 Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h create mode 100755 Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Modules/module.modulemap create mode 100755 Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseCoreDiagnostics.framework/FirebaseCoreDiagnostics create mode 100755 Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseCoreDiagnostics.framework/Modules/module.modulemap create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/CHANGELOG.md create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/README.md create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/EmailPassword/FIREmailAuthProvider.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/EmailPassword/FIREmailPasswordAuthCredential.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/EmailPassword/FIREmailPasswordAuthCredential.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Facebook/FIRFacebookAuthCredential.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Facebook/FIRFacebookAuthCredential.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Facebook/FIRFacebookAuthProvider.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/GitHub/FIRGitHubAuthCredential.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/GitHub/FIRGitHubAuthCredential.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/GitHub/FIRGitHubAuthProvider.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Google/FIRGoogleAuthCredential.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Google/FIRGoogleAuthCredential.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Google/FIRGoogleAuthProvider.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/OAuth/FIROAuthCredential.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/OAuth/FIROAuthCredential.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/OAuth/FIROAuthProvider.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Phone/FIRPhoneAuthCredential.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Phone/FIRPhoneAuthCredential_Internal.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Phone/FIRPhoneAuthProvider.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Twitter/FIRTwitterAuthCredential.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Twitter/FIRTwitterAuthCredential.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Twitter/FIRTwitterAuthProvider.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRActionCodeSettings.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAdditionalUserInfo.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAdditionalUserInfo_Internal.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuth.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAPNSToken.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAPNSToken.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAPNSTokenManager.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAPNSTokenManager.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppCredential.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppCredential.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppCredentialManager.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppCredentialManager.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppDelegateProxy.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppDelegateProxy.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthCredential.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthCredential_Internal.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDataResult.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDataResult_Internal.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDefaultUIDelegate.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDefaultUIDelegate.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDispatcher.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDispatcher.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthErrorUtils.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthErrorUtils.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthExceptionUtils.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthExceptionUtils.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthGlobalWorkQueue.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthGlobalWorkQueue.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthInternalErrors.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthKeychain.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthKeychain.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthNotificationManager.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthNotificationManager.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthOperationType.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthProvider.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthSerialTaskQueue.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthSerialTaskQueue.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthSettings.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthTokenResult.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthTokenResult_Internal.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthURLPresenter.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthURLPresenter.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthUserDefaultsStorage.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthUserDefaultsStorage.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebUtils.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebUtils.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebView.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebView.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebViewController.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebViewController.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuth_Internal.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRSecureTokenService.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRSecureTokenService.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUser.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUserInfoImpl.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUserInfoImpl.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUserMetadata.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUserMetadata_Internal.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUser_Internal.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FirebaseAuthVersion.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRActionCodeSettings.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAdditionalUserInfo.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuth.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthAPNSTokenType.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthCredential.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthDataResult.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthErrors.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthSettings.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthTokenResult.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthUIDelegate.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIREmailAuthProvider.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRFacebookAuthProvider.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRGitHubAuthProvider.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRGoogleAuthProvider.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIROAuthProvider.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRPhoneAuthCredential.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRPhoneAuthProvider.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRTwitterAuthProvider.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRUser.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRUserInfo.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRUserMetadata.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FirebaseAuth.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FirebaseAuthVersion.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthBackend.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthBackend.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthRPCRequest.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthRPCResponse.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthRequestConfiguration.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthRequestConfiguration.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRCreateAuthURIRequest.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRCreateAuthURIRequest.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRCreateAuthURIResponse.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRCreateAuthURIResponse.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRDeleteAccountRequest.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRDeleteAccountRequest.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRDeleteAccountResponse.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRDeleteAccountResponse.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIREmailLinkSignInRequest.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIREmailLinkSignInRequest.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIREmailLinkSignInResponse.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIREmailLinkSignInResponse.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetAccountInfoRequest.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetAccountInfoRequest.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetAccountInfoResponse.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetAccountInfoResponse.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetOOBConfirmationCodeRequest.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetOOBConfirmationCodeRequest.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetOOBConfirmationCodeResponse.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetOOBConfirmationCodeResponse.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetProjectConfigRequest.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetProjectConfigRequest.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetProjectConfigResponse.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetProjectConfigResponse.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRIdentityToolkitRequest.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRIdentityToolkitRequest.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRResetPasswordRequest.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRResetPasswordRequest.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRResetPasswordResponse.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRResetPasswordResponse.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSecureTokenRequest.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSecureTokenRequest.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSecureTokenResponse.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSecureTokenResponse.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSendVerificationCodeRequest.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSendVerificationCodeRequest.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSendVerificationCodeResponse.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSendVerificationCodeResponse.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSetAccountInfoRequest.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSetAccountInfoRequest.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSetAccountInfoResponse.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSetAccountInfoResponse.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSignUpNewUserRequest.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSignUpNewUserRequest.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSignUpNewUserResponse.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSignUpNewUserResponse.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyAssertionRequest.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyAssertionRequest.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyAssertionResponse.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyAssertionResponse.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyClientRequest.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyClientRequest.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyClientResponse.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyClientResponse.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyCustomTokenRequest.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyCustomTokenRequest.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyCustomTokenResponse.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyCustomTokenResponse.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPasswordRequest.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPasswordRequest.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPasswordResponse.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPasswordResponse.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPhoneNumberRequest.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPhoneNumberRequest.m create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPhoneNumberResponse.h create mode 100644 Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPhoneNumberResponse.m create mode 100644 Til to Code/Pods/FirebaseAuth/LICENSE create mode 100644 Til to Code/Pods/FirebaseAuth/README.md create mode 100644 Til to Code/Pods/FirebaseAuthInterop/Interop/Auth/Public/FIRAuthInterop.h create mode 100644 Til to Code/Pods/FirebaseAuthInterop/LICENSE create mode 100644 Til to Code/Pods/FirebaseAuthInterop/README.md create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/FIRAnalyticsConfiguration.m create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/FIRApp.m create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/FIRAppAssociationRegistration.m create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/FIRBundleUtil.m create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/FIRComponent.m create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/FIRComponentContainer.m create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/FIRComponentType.m create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/FIRConfiguration.m create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/FIRDependency.m create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/FIRErrors.m create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/FIRLogger.m create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/FIROptions.m create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/FIRVersion.m create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRAnalyticsConfiguration+Internal.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRAppAssociationRegistration.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRAppInternal.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRBundleUtil.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponent.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponentContainer.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponentContainerInternal.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponentRegistrant.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponentType.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRCoreConfigurable.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRDependency.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRErrorCode.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRErrors.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRLogger.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIROptionsInternal.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRVersion.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIRAnalyticsConfiguration.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIRApp.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIRConfiguration.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIRLoggerLevel.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIROptions.h create mode 100644 Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FirebaseCore.h create mode 100644 Til to Code/Pods/FirebaseCore/LICENSE create mode 100644 Til to Code/Pods/FirebaseCore/README.md create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDataSnapshot.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDatabase.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDatabaseConfig.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDatabaseConfig.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDatabaseQuery.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRMutableData.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRServerValue.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRTransactionResult.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRDataSnapshot_Private.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRDatabaseQuery_Private.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRDatabaseReference_Private.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRDatabase_Private.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRMutableData_Private.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRTransactionResult_Private.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FTypedefs_Private.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Constants/FConstants.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Constants/FConstants.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FCompoundHash.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FCompoundHash.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FListenProvider.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FListenProvider.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FPersistentConnection.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FPersistentConnection.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FQueryParams.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FQueryParams.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FQuerySpec.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FQuerySpec.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRangeMerge.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRangeMerge.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepo.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepo.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepoInfo.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepoInfo.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepoManager.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepoManager.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepo_Private.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FServerValues.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FServerValues.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSnapshotHolder.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSnapshotHolder.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSparseSnapshotTree.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSparseSnapshotTree.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSyncPoint.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSyncPoint.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSyncTree.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSyncTree.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteRecord.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteRecord.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteTree.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteTree.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteTreeRef.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteTreeRef.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FAckUserWrite.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FAckUserWrite.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FMerge.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FMerge.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOperation.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOperationSource.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOperationSource.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOverwrite.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOverwrite.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FIRRetryHelper.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FIRRetryHelper.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FImmutableTree.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FImmutableTree.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FPath.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FPath.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FTree.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FTree.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FTreeNode.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FTreeNode.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FCacheNode.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FCacheNode.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FCancelEvent.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FCancelEvent.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FChange.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FChange.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FChildEventRegistration.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FChildEventRegistration.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FDataEvent.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FDataEvent.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FEvent.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FEventRaiser.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FEventRaiser.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FEventRegistration.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FKeepSyncedEventRegistration.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FKeepSyncedEventRegistration.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FValueEventRegistration.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FValueEventRegistration.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FView.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FView.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FViewCache.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FViewCache.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FChildChangeAccumulator.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FChildChangeAccumulator.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FCompleteChildSource.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FIndexedFilter.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FIndexedFilter.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FLimitedFilter.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FLimitedFilter.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FNodeFilter.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FClock.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FClock.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FEventGenerator.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FEventGenerator.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FIRDatabaseConfig_Private.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FIRDatabaseReference.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FIndex.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FIndex.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FKeyIndex.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FKeyIndex.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FListenComplete.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FListenComplete.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FMaxNode.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FMaxNode.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FNamedNode.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FNamedNode.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FPathIndex.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FPathIndex.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FPriorityIndex.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FPriorityIndex.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FRangedFilter.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FRangedFilter.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FTransformedEnumerator.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FTransformedEnumerator.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FValueIndex.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FValueIndex.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FViewProcessor.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FViewProcessor.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FViewProcessorResult.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/FViewProcessorResult.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Login/FAuthTokenProvider.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Login/FAuthTokenProvider.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Login/FIRNoopAuthTokenProvider.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Login/FIRNoopAuthTokenProvider.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FCachePolicy.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FCachePolicy.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FLevelDBStorageEngine.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FLevelDBStorageEngine.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPendingPut.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPendingPut.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPersistenceManager.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPersistenceManager.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPruneForest.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPruneForest.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FStorageEngine.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FTrackedQuery.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FTrackedQuery.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FTrackedQueryManager.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FTrackedQueryManager.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDataEventType.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDataSnapshot.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDatabase.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDatabaseQuery.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDatabaseReference.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRMutableData.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRServerValue.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRTransactionResult.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FirebaseDatabase.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Realtime/FConnection.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Realtime/FConnection.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Realtime/FWebSocketConnection.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Realtime/FWebSocketConnection.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FChildrenNode.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FChildrenNode.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FCompoundWrite.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FCompoundWrite.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FEmptyNode.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FEmptyNode.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FIndexedNode.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FIndexedNode.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FLeafNode.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FLeafNode.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FNode.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FSnapshotUtilities.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FSnapshotUtilities.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FAtomicNumber.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FAtomicNumber.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FEventEmitter.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FEventEmitter.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FNextPushId.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FNextPushId.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FParsedUrl.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FParsedUrl.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FStringUtilities.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FStringUtilities.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FTypedefs.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FUtilities.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FUtilities.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FValidation.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FValidation.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleBoolBlock.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleBoolBlock.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleCallbackStatus.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleCallbackStatus.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleFirebase.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleFirebase.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleNodePath.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleNodePath.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleObjectNode.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleObjectNode.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleObjects.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleObjects.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleOnDisconnect.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleOnDisconnect.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTuplePathValue.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTuplePathValue.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleRemovedQueriesEvents.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleRemovedQueriesEvents.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleSetIdPath.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleSetIdPath.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleStringNode.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleStringNode.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleTSN.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleTSN.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleTransaction.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleTransaction.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleUserCallback.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleUserCallback.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FArraySortedDictionary.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FArraySortedDictionary.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FImmutableSortedDictionary.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FImmutableSortedDictionary.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FImmutableSortedSet.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FImmutableSortedSet.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBEmptyNode.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBEmptyNode.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBNode.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBValueNode.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBValueNode.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FTreeSortedDictionary.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FTreeSortedDictionary.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FTreeSortedDictionaryEnumerator.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FTreeSortedDictionaryEnumerator.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/FSRWebSocket.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/FSRWebSocket.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/NSData+SRB64Additions.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/NSData+SRB64Additions.m create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/fbase64.c create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/fbase64.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/Wrap-leveldb/APLevelDB.h create mode 100644 Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/Wrap-leveldb/APLevelDB.mm create mode 100644 Til to Code/Pods/FirebaseDatabase/LICENSE create mode 100644 Til to Code/Pods/FirebaseDatabase/README.md create mode 100755 Til to Code/Pods/FirebaseInstanceID/CHANGELOG.md create mode 100755 Til to Code/Pods/FirebaseInstanceID/Frameworks/FirebaseInstanceID.framework/FirebaseInstanceID create mode 100755 Til to Code/Pods/FirebaseInstanceID/Frameworks/FirebaseInstanceID.framework/Headers/FIRInstanceID.h create mode 100755 Til to Code/Pods/FirebaseInstanceID/Frameworks/FirebaseInstanceID.framework/Headers/FirebaseInstanceID.h create mode 100755 Til to Code/Pods/FirebaseInstanceID/Frameworks/FirebaseInstanceID.framework/Modules/module.modulemap create mode 100755 Til to Code/Pods/FirebaseInstanceID/README.md create mode 100644 Til to Code/Pods/GTMSessionFetcher/LICENSE create mode 100644 Til to Code/Pods/GTMSessionFetcher/README.md create mode 100644 Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcher.h create mode 100644 Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcher.m create mode 100644 Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcherLogging.h create mode 100644 Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcherLogging.m create mode 100644 Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcherService.h create mode 100644 Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcherService.m create mode 100644 Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionUploadFetcher.h create mode 100644 Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionUploadFetcher.m create mode 100755 Til to Code/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.framework/GoogleAppMeasurement create mode 100755 Til to Code/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.framework/Modules/module.modulemap create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/AppDelegateSwizzler/GULAppDelegateSwizzler.m create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/AppDelegateSwizzler/Internal/GULAppDelegateSwizzler_Private.h create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/AppDelegateSwizzler/Private/GULAppDelegateSwizzler.h create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Common/GULLoggerCodes.h create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Environment/third_party/GULAppEnvironmentUtil.h create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Environment/third_party/GULAppEnvironmentUtil.m create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Logger/GULLogger.m create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Logger/Private/GULLogger.h create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Logger/Public/GULLoggerLevel.h create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/MethodSwizzler/GULSwizzler.m create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/MethodSwizzler/Private/GULOriginalIMPConvenienceMacros.h create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/MethodSwizzler/Private/GULSwizzler.h create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/NSData+zlib/GULNSData+zlib.h create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/NSData+zlib/GULNSData+zlib.m create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Network/GULMutableDictionary.m create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Network/GULNetwork.m create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Network/GULNetworkConstants.m create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Network/GULNetworkURLSession.m create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Network/Private/GULMutableDictionary.h create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Network/Private/GULNetwork.h create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Network/Private/GULNetworkConstants.h create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Network/Private/GULNetworkLoggerProtocol.h create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Network/Private/GULNetworkMessageCode.h create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Network/Private/GULNetworkURLSession.h create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Reachability/GULReachabilityChecker+Internal.h create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Reachability/GULReachabilityChecker.m create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Reachability/Private/GULReachabilityChecker.h create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/Reachability/Private/GULReachabilityMessageCode.h create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/UserDefaults/GULUserDefaults.m create mode 100644 Til to Code/Pods/GoogleUtilities/GoogleUtilities/UserDefaults/Private/GULUserDefaults.h create mode 100644 Til to Code/Pods/GoogleUtilities/LICENSE create mode 100644 Til to Code/Pods/GoogleUtilities/README.md create mode 120000 Til to Code/Pods/Headers/Private/Firebase/Firebase.h create mode 120000 Til to Code/Pods/Headers/Private/FirebaseAuthInterop/FIRAuthInterop.h create mode 120000 Til to Code/Pods/Headers/Public/Firebase/Firebase.h create mode 120000 Til to Code/Pods/Headers/Public/FirebaseAuthInterop/FIRAuthInterop.h create mode 100644 Til to Code/Pods/Manifest.lock create mode 100644 Til to Code/Pods/Pods.xcodeproj/project.pbxproj create mode 100644 Til to Code/Pods/Target Support Files/FirebaseAuth/FirebaseAuth-dummy.m create mode 100644 Til to Code/Pods/Target Support Files/FirebaseAuth/FirebaseAuth-umbrella.h create mode 100644 Til to Code/Pods/Target Support Files/FirebaseAuth/FirebaseAuth.modulemap create mode 100644 Til to Code/Pods/Target Support Files/FirebaseAuth/FirebaseAuth.xcconfig create mode 100644 Til to Code/Pods/Target Support Files/FirebaseCore/FirebaseCore-dummy.m create mode 100644 Til to Code/Pods/Target Support Files/FirebaseCore/FirebaseCore-umbrella.h create mode 100644 Til to Code/Pods/Target Support Files/FirebaseCore/FirebaseCore.modulemap create mode 100644 Til to Code/Pods/Target Support Files/FirebaseCore/FirebaseCore.xcconfig create mode 100644 Til to Code/Pods/Target Support Files/FirebaseDatabase/FirebaseDatabase-dummy.m create mode 100644 Til to Code/Pods/Target Support Files/FirebaseDatabase/FirebaseDatabase-umbrella.h create mode 100644 Til to Code/Pods/Target Support Files/FirebaseDatabase/FirebaseDatabase.modulemap create mode 100644 Til to Code/Pods/Target Support Files/FirebaseDatabase/FirebaseDatabase.xcconfig create mode 100644 Til to Code/Pods/Target Support Files/GTMSessionFetcher/GTMSessionFetcher-dummy.m create mode 100644 Til to Code/Pods/Target Support Files/GTMSessionFetcher/GTMSessionFetcher-prefix.pch create mode 100644 Til to Code/Pods/Target Support Files/GTMSessionFetcher/GTMSessionFetcher-umbrella.h create mode 100644 Til to Code/Pods/Target Support Files/GTMSessionFetcher/GTMSessionFetcher.modulemap create mode 100644 Til to Code/Pods/Target Support Files/GTMSessionFetcher/GTMSessionFetcher.xcconfig create mode 100644 Til to Code/Pods/Target Support Files/GTMSessionFetcher/Info.plist create mode 100644 Til to Code/Pods/Target Support Files/GoogleUtilities/GoogleUtilities-dummy.m create mode 100644 Til to Code/Pods/Target Support Files/GoogleUtilities/GoogleUtilities-prefix.pch create mode 100644 Til to Code/Pods/Target Support Files/GoogleUtilities/GoogleUtilities-umbrella.h create mode 100644 Til to Code/Pods/Target Support Files/GoogleUtilities/GoogleUtilities.modulemap create mode 100644 Til to Code/Pods/Target Support Files/GoogleUtilities/GoogleUtilities.xcconfig create mode 100644 Til to Code/Pods/Target Support Files/GoogleUtilities/Info.plist create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to Code/Info.plist create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to Code/Pods-TIL to Code-acknowledgements.markdown create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to Code/Pods-TIL to Code-acknowledgements.plist create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to Code/Pods-TIL to Code-dummy.m create mode 100755 Til to Code/Pods/Target Support Files/Pods-TIL to Code/Pods-TIL to Code-frameworks.sh create mode 100755 Til to Code/Pods/Target Support Files/Pods-TIL to Code/Pods-TIL to Code-resources.sh create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to Code/Pods-TIL to Code-umbrella.h create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to Code/Pods-TIL to Code.debug.xcconfig create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to Code/Pods-TIL to Code.modulemap create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to Code/Pods-TIL to Code.release.xcconfig create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to CodeTests/Info.plist create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to CodeTests/Pods-TIL to CodeTests-acknowledgements.markdown create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to CodeTests/Pods-TIL to CodeTests-acknowledgements.plist create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to CodeTests/Pods-TIL to CodeTests-dummy.m create mode 100755 Til to Code/Pods/Target Support Files/Pods-TIL to CodeTests/Pods-TIL to CodeTests-frameworks.sh create mode 100755 Til to Code/Pods/Target Support Files/Pods-TIL to CodeTests/Pods-TIL to CodeTests-resources.sh create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to CodeTests/Pods-TIL to CodeTests-umbrella.h create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to CodeTests/Pods-TIL to CodeTests.debug.xcconfig create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to CodeTests/Pods-TIL to CodeTests.modulemap create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to CodeTests/Pods-TIL to CodeTests.release.xcconfig create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to CodeUITests/Info.plist create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to CodeUITests/Pods-TIL to CodeUITests-acknowledgements.markdown create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to CodeUITests/Pods-TIL to CodeUITests-acknowledgements.plist create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to CodeUITests/Pods-TIL to CodeUITests-dummy.m create mode 100755 Til to Code/Pods/Target Support Files/Pods-TIL to CodeUITests/Pods-TIL to CodeUITests-frameworks.sh create mode 100755 Til to Code/Pods/Target Support Files/Pods-TIL to CodeUITests/Pods-TIL to CodeUITests-resources.sh create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to CodeUITests/Pods-TIL to CodeUITests-umbrella.h create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to CodeUITests/Pods-TIL to CodeUITests.debug.xcconfig create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to CodeUITests/Pods-TIL to CodeUITests.modulemap create mode 100644 Til to Code/Pods/Target Support Files/Pods-TIL to CodeUITests/Pods-TIL to CodeUITests.release.xcconfig create mode 100644 Til to Code/Pods/Target Support Files/leveldb-library/Info.plist create mode 100644 Til to Code/Pods/Target Support Files/leveldb-library/leveldb-library-dummy.m create mode 100644 Til to Code/Pods/Target Support Files/leveldb-library/leveldb-library-prefix.pch create mode 100644 Til to Code/Pods/Target Support Files/leveldb-library/leveldb-library-umbrella.h create mode 100644 Til to Code/Pods/Target Support Files/leveldb-library/leveldb-library.modulemap create mode 100644 Til to Code/Pods/Target Support Files/leveldb-library/leveldb-library.xcconfig create mode 100644 Til to Code/Pods/Target Support Files/nanopb/Info.plist create mode 100644 Til to Code/Pods/Target Support Files/nanopb/nanopb-dummy.m create mode 100644 Til to Code/Pods/Target Support Files/nanopb/nanopb-prefix.pch create mode 100644 Til to Code/Pods/Target Support Files/nanopb/nanopb-umbrella.h create mode 100644 Til to Code/Pods/Target Support Files/nanopb/nanopb.modulemap create mode 100644 Til to Code/Pods/Target Support Files/nanopb/nanopb.xcconfig create mode 100644 Til to Code/Pods/leveldb-library/LICENSE create mode 100644 Til to Code/Pods/leveldb-library/README.md create mode 100644 Til to Code/Pods/leveldb-library/db/builder.cc create mode 100644 Til to Code/Pods/leveldb-library/db/builder.h create mode 100644 Til to Code/Pods/leveldb-library/db/c.cc create mode 100644 Til to Code/Pods/leveldb-library/db/db_impl.cc create mode 100644 Til to Code/Pods/leveldb-library/db/db_impl.h create mode 100644 Til to Code/Pods/leveldb-library/db/db_iter.cc create mode 100644 Til to Code/Pods/leveldb-library/db/db_iter.h create mode 100644 Til to Code/Pods/leveldb-library/db/dbformat.cc create mode 100644 Til to Code/Pods/leveldb-library/db/dbformat.h create mode 100644 Til to Code/Pods/leveldb-library/db/dumpfile.cc create mode 100644 Til to Code/Pods/leveldb-library/db/filename.cc create mode 100644 Til to Code/Pods/leveldb-library/db/filename.h create mode 100644 Til to Code/Pods/leveldb-library/db/log_format.h create mode 100644 Til to Code/Pods/leveldb-library/db/log_reader.cc create mode 100644 Til to Code/Pods/leveldb-library/db/log_reader.h create mode 100644 Til to Code/Pods/leveldb-library/db/log_writer.cc create mode 100644 Til to Code/Pods/leveldb-library/db/log_writer.h create mode 100644 Til to Code/Pods/leveldb-library/db/memtable.cc create mode 100644 Til to Code/Pods/leveldb-library/db/memtable.h create mode 100644 Til to Code/Pods/leveldb-library/db/repair.cc create mode 100644 Til to Code/Pods/leveldb-library/db/skiplist.h create mode 100644 Til to Code/Pods/leveldb-library/db/snapshot.h create mode 100644 Til to Code/Pods/leveldb-library/db/table_cache.cc create mode 100644 Til to Code/Pods/leveldb-library/db/table_cache.h create mode 100644 Til to Code/Pods/leveldb-library/db/version_edit.cc create mode 100644 Til to Code/Pods/leveldb-library/db/version_edit.h create mode 100644 Til to Code/Pods/leveldb-library/db/version_set.cc create mode 100644 Til to Code/Pods/leveldb-library/db/version_set.h create mode 100644 Til to Code/Pods/leveldb-library/db/write_batch.cc create mode 100644 Til to Code/Pods/leveldb-library/db/write_batch_internal.h create mode 100644 Til to Code/Pods/leveldb-library/include/leveldb/c.h create mode 100644 Til to Code/Pods/leveldb-library/include/leveldb/cache.h create mode 100644 Til to Code/Pods/leveldb-library/include/leveldb/comparator.h create mode 100644 Til to Code/Pods/leveldb-library/include/leveldb/db.h create mode 100644 Til to Code/Pods/leveldb-library/include/leveldb/dumpfile.h create mode 100644 Til to Code/Pods/leveldb-library/include/leveldb/env.h create mode 100644 Til to Code/Pods/leveldb-library/include/leveldb/filter_policy.h create mode 100644 Til to Code/Pods/leveldb-library/include/leveldb/iterator.h create mode 100644 Til to Code/Pods/leveldb-library/include/leveldb/options.h create mode 100644 Til to Code/Pods/leveldb-library/include/leveldb/slice.h create mode 100644 Til to Code/Pods/leveldb-library/include/leveldb/status.h create mode 100644 Til to Code/Pods/leveldb-library/include/leveldb/table.h create mode 100644 Til to Code/Pods/leveldb-library/include/leveldb/table_builder.h create mode 100644 Til to Code/Pods/leveldb-library/include/leveldb/write_batch.h create mode 100644 Til to Code/Pods/leveldb-library/port/atomic_pointer.h create mode 100644 Til to Code/Pods/leveldb-library/port/port.h create mode 100644 Til to Code/Pods/leveldb-library/port/port_example.h create mode 100644 Til to Code/Pods/leveldb-library/port/port_posix.cc create mode 100644 Til to Code/Pods/leveldb-library/port/port_posix.h create mode 100644 Til to Code/Pods/leveldb-library/port/port_posix_sse.cc create mode 100644 Til to Code/Pods/leveldb-library/port/thread_annotations.h create mode 100644 Til to Code/Pods/leveldb-library/table/block.cc create mode 100644 Til to Code/Pods/leveldb-library/table/block.h create mode 100644 Til to Code/Pods/leveldb-library/table/block_builder.cc create mode 100644 Til to Code/Pods/leveldb-library/table/block_builder.h create mode 100644 Til to Code/Pods/leveldb-library/table/filter_block.cc create mode 100644 Til to Code/Pods/leveldb-library/table/filter_block.h create mode 100644 Til to Code/Pods/leveldb-library/table/format.cc create mode 100644 Til to Code/Pods/leveldb-library/table/format.h create mode 100644 Til to Code/Pods/leveldb-library/table/iterator.cc create mode 100644 Til to Code/Pods/leveldb-library/table/iterator_wrapper.h create mode 100644 Til to Code/Pods/leveldb-library/table/merger.cc create mode 100644 Til to Code/Pods/leveldb-library/table/merger.h create mode 100644 Til to Code/Pods/leveldb-library/table/table.cc create mode 100644 Til to Code/Pods/leveldb-library/table/table_builder.cc create mode 100644 Til to Code/Pods/leveldb-library/table/two_level_iterator.cc create mode 100644 Til to Code/Pods/leveldb-library/table/two_level_iterator.h create mode 100644 Til to Code/Pods/leveldb-library/util/arena.cc create mode 100644 Til to Code/Pods/leveldb-library/util/arena.h create mode 100644 Til to Code/Pods/leveldb-library/util/bloom.cc create mode 100644 Til to Code/Pods/leveldb-library/util/cache.cc create mode 100644 Til to Code/Pods/leveldb-library/util/coding.cc create mode 100644 Til to Code/Pods/leveldb-library/util/coding.h create mode 100644 Til to Code/Pods/leveldb-library/util/comparator.cc create mode 100644 Til to Code/Pods/leveldb-library/util/crc32c.cc create mode 100644 Til to Code/Pods/leveldb-library/util/crc32c.h create mode 100644 Til to Code/Pods/leveldb-library/util/env.cc create mode 100644 Til to Code/Pods/leveldb-library/util/env_posix.cc create mode 100644 Til to Code/Pods/leveldb-library/util/env_posix_test_helper.h create mode 100644 Til to Code/Pods/leveldb-library/util/filter_policy.cc create mode 100644 Til to Code/Pods/leveldb-library/util/hash.cc create mode 100644 Til to Code/Pods/leveldb-library/util/hash.h create mode 100644 Til to Code/Pods/leveldb-library/util/histogram.cc create mode 100644 Til to Code/Pods/leveldb-library/util/histogram.h create mode 100644 Til to Code/Pods/leveldb-library/util/logging.cc create mode 100644 Til to Code/Pods/leveldb-library/util/logging.h create mode 100644 Til to Code/Pods/leveldb-library/util/mutexlock.h create mode 100644 Til to Code/Pods/leveldb-library/util/options.cc create mode 100644 Til to Code/Pods/leveldb-library/util/posix_logger.h create mode 100644 Til to Code/Pods/leveldb-library/util/random.h create mode 100644 Til to Code/Pods/leveldb-library/util/status.cc create mode 100644 Til to Code/Pods/leveldb-library/util/testharness.cc create mode 100644 Til to Code/Pods/leveldb-library/util/testharness.h create mode 100644 Til to Code/Pods/leveldb-library/util/testutil.cc create mode 100644 Til to Code/Pods/leveldb-library/util/testutil.h create mode 100644 Til to Code/Pods/nanopb/LICENSE.txt create mode 100644 Til to Code/Pods/nanopb/README.md create mode 100644 Til to Code/Pods/nanopb/pb.h create mode 100644 Til to Code/Pods/nanopb/pb_common.c create mode 100644 Til to Code/Pods/nanopb/pb_common.h create mode 100644 Til to Code/Pods/nanopb/pb_decode.c create mode 100644 Til to Code/Pods/nanopb/pb_decode.h create mode 100644 Til to Code/Pods/nanopb/pb_encode.c create mode 100644 Til to Code/Pods/nanopb/pb_encode.h create mode 100644 Til to Code/TIL to Code.xcworkspace/contents.xcworkspacedata create mode 100644 Til to Code/TIL to Code.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/.DS_Store b/.DS_Store index 0b2e3c287e98dccb21eefd224cf32c0900969344..6ff6a33079fc43a7d33963fd5834c230faf5fc0e 100644 GIT binary patch delta 283 zcmZoMXfc=|#>B)qu~2NHUhKvX4UCfwL|7*Fi`OTW7Z)VuvOFq}*($jK}&F)+B! z$i&RT%Er#Y!NtMF%M}}(kzXEMl2}q&?37p(4dMkPmSiMB*&+G)IdFDjQdnkcdAxv# zbADb)VrE`y5m<9(N-9uEOn7EqN`ARheraAxG1#2oFo+BX2PX$-ynsY?wW*CJ*u~2NHUhHH85thmPOyZm=#mPBI`T02vlX;k=Hj6TUV%coK?8CH~ for9kPsCu&^^LOUS{33>o43lkmq<itY8KJB^wk> diff --git a/TIL to Code/Pods/.DS_Store b/TIL to Code/Pods/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..46a0a43ac2362911ca7943987a6d20065430a744 GIT binary patch literal 6148 zcmeHKK}rKb5Ukc50z$~q=wWrz?ANYHxFa;=k6mrX&Fb0cU<5VTkNsJ&8YhOgmY)O49+u# z{0>jd-ap(fHrxGUm-MTT-|D-&Vf}m36s3R^kOERb3P^#20_@pt)3ZcHDIf);z?TC4 zeJFIt+OSWIPX|Mc0K^H?VO+;7K`fpi)`oo|Gc-#oF{#!@3`;umrPbAjePYsKaWdc2 zPPR6oSe(v$iE>y?RFncz;8=mv+|IrKujxO`|HmZlq<|FoR|?o /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; + }; + 52718495CD8A6667468DFA27 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-TIL to CodeTests-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; + }; + 60ED1D1D385438FB24205FAC /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${SRCROOT}/Pods/Target Support Files/Pods-TIL to Code/Pods-TIL to Code-frameworks.sh", + "${BUILT_PRODUCTS_DIR}/GTMSessionFetcher/GTMSessionFetcher.framework", + "${BUILT_PRODUCTS_DIR}/GoogleUtilities/GoogleUtilities.framework", + "${BUILT_PRODUCTS_DIR}/leveldb-library/leveldb.framework", + "${BUILT_PRODUCTS_DIR}/nanopb/nanopb.framework", + ); + name = "[CP] Embed Pods Frameworks"; + outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GTMSessionFetcher.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GoogleUtilities.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/leveldb.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/nanopb.framework", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-TIL to Code/Pods-TIL to Code-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; + 651E9687BED8BDAE54CDE122 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${SRCROOT}/Pods/Target Support Files/Pods-TIL to CodeTests/Pods-TIL to CodeTests-frameworks.sh", + "${BUILT_PRODUCTS_DIR}/GTMSessionFetcher/GTMSessionFetcher.framework", + "${BUILT_PRODUCTS_DIR}/GoogleUtilities/GoogleUtilities.framework", + "${BUILT_PRODUCTS_DIR}/leveldb-library/leveldb.framework", + "${BUILT_PRODUCTS_DIR}/nanopb/nanopb.framework", + ); + name = "[CP] Embed Pods Frameworks"; + outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GTMSessionFetcher.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GoogleUtilities.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/leveldb.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/nanopb.framework", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-TIL to CodeTests/Pods-TIL to CodeTests-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; + 7D6E7B83D7E77B000A15966B /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-TIL to CodeUITests-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; + }; + A9189BE67625D49BD8424553 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${SRCROOT}/Pods/Target Support Files/Pods-TIL to CodeUITests/Pods-TIL to CodeUITests-frameworks.sh", + "${BUILT_PRODUCTS_DIR}/GTMSessionFetcher/GTMSessionFetcher.framework", + "${BUILT_PRODUCTS_DIR}/GoogleUtilities/GoogleUtilities.framework", + "${BUILT_PRODUCTS_DIR}/leveldb-library/leveldb.framework", + "${BUILT_PRODUCTS_DIR}/nanopb/nanopb.framework", + ); + name = "[CP] Embed Pods Frameworks"; + outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GTMSessionFetcher.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GoogleUtilities.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/leveldb.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/nanopb.framework", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-TIL to CodeUITests/Pods-TIL to CodeUITests-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; +/* End PBXShellScriptBuildPhase section */ + /* Begin PBXSourcesBuildPhase section */ 0E198C2F2165069800BA832B /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -265,6 +446,7 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + 53792A3421964B2F0051406A /* AppDelegate.swift in Sources */, 0E198C4C2165069A00BA832B /* TIL_to_CodeTests.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -273,6 +455,7 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + 53792A3521964B330051406A /* AppDelegate.swift in Sources */, 0E198C572165069A00BA832B /* TIL_to_CodeUITests.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -430,6 +613,7 @@ }; 0E198C5C2165069A00BA832B /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 1D3777CA4721BC9C0B6B5EA0 /* Pods-TIL to Code.debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CODE_SIGN_STYLE = Automatic; @@ -447,6 +631,7 @@ }; 0E198C5D2165069A00BA832B /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 8CA2F9B3AADC8B239EBAE675 /* Pods-TIL to Code.release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CODE_SIGN_STYLE = Automatic; @@ -464,6 +649,7 @@ }; 0E198C5F2165069A00BA832B /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 91355B3B99F6FAC8B61BB8B5 /* Pods-TIL to CodeTests.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; BUNDLE_LOADER = "$(TEST_HOST)"; @@ -484,6 +670,7 @@ }; 0E198C602165069A00BA832B /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 3006A880B028BD59AB886218 /* Pods-TIL to CodeTests.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; BUNDLE_LOADER = "$(TEST_HOST)"; @@ -504,6 +691,7 @@ }; 0E198C622165069A00BA832B /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 60BF7EB869571E919218F598 /* Pods-TIL to CodeUITests.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; CODE_SIGN_STYLE = Automatic; @@ -523,6 +711,7 @@ }; 0E198C632165069A00BA832B /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 4259C383A4B043D0CB6518DD /* Pods-TIL to CodeUITests.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; CODE_SIGN_STYLE = Automatic; diff --git a/TIL to Code/TIL to Code/AppDelegate.swift b/TIL to Code/TIL to Code/AppDelegate.swift index 75c1b34..a3486bd 100644 --- a/TIL to Code/TIL to Code/AppDelegate.swift +++ b/TIL to Code/TIL to Code/AppDelegate.swift @@ -25,6 +25,8 @@ // import UIKit +import Firebase + @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { @@ -34,6 +36,8 @@ class AppDelegate: UIResponder, UIApplicationDelegate { func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { // Override point for customization after application launch. + FirebaseApp.configure() + return true } diff --git a/TIL to Code/TIL to Code/GoogleService-Info.plist b/TIL to Code/TIL to Code/GoogleService-Info.plist new file mode 100644 index 0000000..4974356 --- /dev/null +++ b/TIL to Code/TIL to Code/GoogleService-Info.plist @@ -0,0 +1,40 @@ + + + + + AD_UNIT_ID_FOR_BANNER_TEST + ca-app-pub-3940256099942544/2934735716 + AD_UNIT_ID_FOR_INTERSTITIAL_TEST + ca-app-pub-3940256099942544/4411468910 + CLIENT_ID + 762543403547-5c56l3vqo5qfhva8qkijg5u5ccegg9k8.apps.googleusercontent.com + REVERSED_CLIENT_ID + com.googleusercontent.apps.762543403547-5c56l3vqo5qfhva8qkijg5u5ccegg9k8 + API_KEY + AIzaSyCJ5uJO5Lgyq0Wx0D_A6MTmhJGvT4shBcA + GCM_SENDER_ID + 762543403547 + PLIST_VERSION + 1 + BUNDLE_ID + com.codex.TIL-to-Code + PROJECT_ID + til-to-code + STORAGE_BUCKET + til-to-code.appspot.com + IS_ADS_ENABLED + + IS_ANALYTICS_ENABLED + + IS_APPINVITE_ENABLED + + IS_GCM_ENABLED + + IS_SIGNIN_ENABLED + + GOOGLE_APP_ID + 1:762543403547:ios:9d6bb2dc63d3c206 + DATABASE_URL + https://til-to-code.firebaseio.com + + \ No newline at end of file diff --git a/TIL to Code/TIL to CodeUITests/GoogleService-Info.plist b/TIL to Code/TIL to CodeUITests/GoogleService-Info.plist new file mode 100644 index 0000000..4974356 --- /dev/null +++ b/TIL to Code/TIL to CodeUITests/GoogleService-Info.plist @@ -0,0 +1,40 @@ + + + + + AD_UNIT_ID_FOR_BANNER_TEST + ca-app-pub-3940256099942544/2934735716 + AD_UNIT_ID_FOR_INTERSTITIAL_TEST + ca-app-pub-3940256099942544/4411468910 + CLIENT_ID + 762543403547-5c56l3vqo5qfhva8qkijg5u5ccegg9k8.apps.googleusercontent.com + REVERSED_CLIENT_ID + com.googleusercontent.apps.762543403547-5c56l3vqo5qfhva8qkijg5u5ccegg9k8 + API_KEY + AIzaSyCJ5uJO5Lgyq0Wx0D_A6MTmhJGvT4shBcA + GCM_SENDER_ID + 762543403547 + PLIST_VERSION + 1 + BUNDLE_ID + com.codex.TIL-to-Code + PROJECT_ID + til-to-code + STORAGE_BUCKET + til-to-code.appspot.com + IS_ADS_ENABLED + + IS_ANALYTICS_ENABLED + + IS_APPINVITE_ENABLED + + IS_GCM_ENABLED + + IS_SIGNIN_ENABLED + + GOOGLE_APP_ID + 1:762543403547:ios:9d6bb2dc63d3c206 + DATABASE_URL + https://til-to-code.firebaseio.com + + \ No newline at end of file diff --git a/TIL to Code/.DS_Store b/Til to Code/.DS_Store similarity index 100% rename from TIL to Code/.DS_Store rename to Til to Code/.DS_Store diff --git a/Til to Code/Podfile b/Til to Code/Podfile new file mode 100644 index 0000000..a7c596e --- /dev/null +++ b/Til to Code/Podfile @@ -0,0 +1,31 @@ +# Uncomment the next line to define a global platform for your project +# platform :ios, '9.0' + +use_frameworks! +target 'TIL to Code' do + # Comment the next line if you're not using Swift and don't want to use dynamic frameworks + + + # Pods for TIL to Code + pod "Firebase" + pod "Firebase/Auth" + pod "Firebase/Database" +end + + target 'TIL to CodeTests' do + inherit! :search_paths + # Pods for testing + pod "Firebase" + pod "Firebase/Auth" + pod "Firebase/Database" + end + + target 'TIL to CodeUITests' do + inherit! :search_paths + # Pods for testing + pod "Firebase" + pod "Firebase/Auth" + pod "Firebase/Database" + end + + diff --git a/Til to Code/Podfile.lock b/Til to Code/Podfile.lock new file mode 100644 index 0000000..6bf5dcc --- /dev/null +++ b/Til to Code/Podfile.lock @@ -0,0 +1,107 @@ +PODS: + - Firebase (5.12.0): + - Firebase/Core (= 5.12.0) + - Firebase/Auth (5.12.0): + - Firebase/CoreOnly + - FirebaseAuth (= 5.0.5) + - Firebase/Core (5.12.0): + - Firebase/CoreOnly + - FirebaseAnalytics (= 5.3.0) + - Firebase/CoreOnly (5.12.0): + - FirebaseCore (= 5.1.7) + - Firebase/Database (5.12.0): + - Firebase/CoreOnly + - FirebaseDatabase (= 5.0.3) + - FirebaseAnalytics (5.3.0): + - FirebaseCore (~> 5.1) + - FirebaseInstanceID (~> 3.3) + - GoogleAppMeasurement (~> 5.3) + - GoogleUtilities/AppDelegateSwizzler (~> 5.2) + - GoogleUtilities/MethodSwizzler (~> 5.2) + - GoogleUtilities/Network (~> 5.2) + - "GoogleUtilities/NSData+zlib (~> 5.2)" + - nanopb (~> 0.3) + - FirebaseAuth (5.0.5): + - FirebaseAuthInterop (~> 1.0) + - FirebaseCore (~> 5.1) + - GoogleUtilities/Environment (~> 5.2) + - GTMSessionFetcher/Core (~> 1.1) + - FirebaseAuthInterop (1.0.0) + - FirebaseCore (5.1.7): + - GoogleUtilities/Logger (~> 5.2) + - FirebaseDatabase (5.0.3): + - FirebaseCore (~> 5.0) + - leveldb-library (~> 1.18) + - FirebaseInstanceID (3.3.0): + - FirebaseCore (~> 5.1) + - GoogleUtilities/Environment (~> 5.3) + - GoogleUtilities/UserDefaults (~> 5.3) + - GoogleAppMeasurement (5.3.0): + - GoogleUtilities/AppDelegateSwizzler (~> 5.2) + - GoogleUtilities/MethodSwizzler (~> 5.2) + - GoogleUtilities/Network (~> 5.2) + - "GoogleUtilities/NSData+zlib (~> 5.2)" + - nanopb (~> 0.3) + - GoogleUtilities/AppDelegateSwizzler (5.3.4): + - GoogleUtilities/Environment + - GoogleUtilities/Logger + - GoogleUtilities/Network + - GoogleUtilities/Environment (5.3.4) + - GoogleUtilities/Logger (5.3.4): + - GoogleUtilities/Environment + - GoogleUtilities/MethodSwizzler (5.3.4): + - GoogleUtilities/Logger + - GoogleUtilities/Network (5.3.4): + - GoogleUtilities/Logger + - "GoogleUtilities/NSData+zlib" + - GoogleUtilities/Reachability + - "GoogleUtilities/NSData+zlib (5.3.4)" + - GoogleUtilities/Reachability (5.3.4): + - GoogleUtilities/Logger + - GoogleUtilities/UserDefaults (5.3.4): + - GoogleUtilities/Logger + - GTMSessionFetcher/Core (1.2.0) + - leveldb-library (1.20) + - nanopb (0.3.901): + - nanopb/decode (= 0.3.901) + - nanopb/encode (= 0.3.901) + - nanopb/decode (0.3.901) + - nanopb/encode (0.3.901) + +DEPENDENCIES: + - Firebase + - Firebase/Auth + - Firebase/Database + +SPEC REPOS: + https://github.com/cocoapods/specs.git: + - Firebase + - FirebaseAnalytics + - FirebaseAuth + - FirebaseAuthInterop + - FirebaseCore + - FirebaseDatabase + - FirebaseInstanceID + - GoogleAppMeasurement + - GoogleUtilities + - GTMSessionFetcher + - leveldb-library + - nanopb + +SPEC CHECKSUMS: + Firebase: 9190018e296139d938b99521cde0c15a6e8d2946 + FirebaseAnalytics: 63202d2665de4e6adcbdce189135255d8b5962ba + FirebaseAuth: 9299ab178271bec7426967b05b2718bb6fc31f17 + FirebaseAuthInterop: 0ffa57668be100582bb7643d4fcb7615496c41fc + FirebaseCore: 027d350adc039aa5483357c6f56556f117c5170e + FirebaseDatabase: e2bcbc106adc4b11a2da3ec2eb63c0c4a44f2f54 + FirebaseInstanceID: e2fa4cb35ef5558c200f7f0ad8a53e212215f93e + GoogleAppMeasurement: 5029d78f2b438bd30ffb44e6c558b57c21622727 + GoogleUtilities: abb092d2c12e817fa3e0e7b274987dd72fb86ec3 + GTMSessionFetcher: 0c4baf0a73acd0041bf9f71ea018deedab5ea84e + leveldb-library: 08cba283675b7ed2d99629a4bc5fd052cd2bb6a5 + nanopb: 2901f78ea1b7b4015c860c2fdd1ea2fee1a18d48 + +PODFILE CHECKSUM: a11de7113df12f33709fee00a7614343c1e014b2 + +COCOAPODS: 1.5.3 diff --git a/Til to Code/Pods/Firebase/.cocoapods.yml b/Til to Code/Pods/Firebase/.cocoapods.yml new file mode 100755 index 0000000..57e7572 --- /dev/null +++ b/Til to Code/Pods/Firebase/.cocoapods.yml @@ -0,0 +1,5 @@ +try: + install: + pre: + - git clone https://github.com/firebase/quickstart-ios + diff --git a/Til to Code/Pods/Firebase/CHANGELOG.md b/Til to Code/Pods/Firebase/CHANGELOG.md new file mode 100755 index 0000000..d1550c6 --- /dev/null +++ b/Til to Code/Pods/Firebase/CHANGELOG.md @@ -0,0 +1,5 @@ +Please go to https://firebase.google.com/support/release-notes/ios#0.0.0 +to view the Firebase iOS release notes. + +You can find information about prior changes to the Firebase pod and Firebase +Database [here](https://www.firebase.com/docs/ios/changelog.html). diff --git a/Til to Code/Pods/Firebase/CoreOnly/Sources/Firebase.h b/Til to Code/Pods/Firebase/CoreOnly/Sources/Firebase.h new file mode 100755 index 0000000..6461547 --- /dev/null +++ b/Til to Code/Pods/Firebase/CoreOnly/Sources/Firebase.h @@ -0,0 +1,105 @@ +#import + +#if !defined(__has_include) + #error "Firebase.h won't import anything if your compiler doesn't support __has_include. Please \ + import the headers individually." +#else + #if __has_include() + #import + #else + #ifndef FIREBASE_ANALYTICS_SUPPRESS_WARNING + #warning "FirebaseAnalytics.framework is not included in your target. Please add \ +`Firebase/Core` to your Podfile or add FirebaseAnalytics.framework to your project to ensure \ +Firebase services work as intended." + #endif // #ifndef FIREBASE_ANALYTICS_SUPPRESS_WARNING + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + + #if __has_include() + #import + #endif + +#endif // defined(__has_include) diff --git a/Til to Code/Pods/Firebase/CoreOnly/Sources/module.modulemap b/Til to Code/Pods/Firebase/CoreOnly/Sources/module.modulemap new file mode 100755 index 0000000..3685b54 --- /dev/null +++ b/Til to Code/Pods/Firebase/CoreOnly/Sources/module.modulemap @@ -0,0 +1,4 @@ +module Firebase { + export * + header "Firebase.h" +} \ No newline at end of file diff --git a/Til to Code/Pods/Firebase/NOTICES b/Til to Code/Pods/Firebase/NOTICES new file mode 100755 index 0000000..ad93dba --- /dev/null +++ b/Til to Code/Pods/Firebase/NOTICES @@ -0,0 +1,375 @@ +Google LevelDB +Copyright (c) 2011 The LevelDB Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation andor other materials provided with the distribution. + +Neither the name of Google Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-- + +Square Socket Rocket +Copyright 2012 Square Inc. + +Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +-- + +APLevelDB +Created by Adam Preble on 12312. +Copyright (c) 2012 Adam Preble. All rights reserved. + +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, andor 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. + +Portions of APLevelDB are based on LevelDB-ObjC: +https://github.com/hoisie/LevelDB-ObjC +Specifically the SliceFromString/StringFromSlice macros, and the structure of +the enumeration methods. License for those potions follows: +Copyright (c) 2011 Pave Labs +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. + +-- + +sqlite3 +2001 September 15 + +The author disclaims copyright to this source code. In place of +a legal notice, here is a blessing: + + May you do good and not evil. + May you find forgiveness for yourself and forgive others. + May you share freely, never taking more than you give. + + +This header file defines the interface that the SQLite library +presents to client programs. If a C-function, structure, datatype, +or constant definition does not appear in this file, then it is +not a published API of SQLite, is subject to change without +notice, and should not be referenced by programs that use SQLite. + +Some of the definitions that are in this file are marked as +"experimental". Experimental interfaces are normally new +features recently added to SQLite. We do not anticipate changes +to experimental interfaces but reserve the right to make minor changes +if experience from use "in the wild" suggest such changes are prudent. + +The official C-language API documentation for SQLite is derived +from comments in this file. This file is the authoritative source +on how SQLite interfaces are suppose to operate. + +The name of this file under configuration management is "sqlite.h.in". +The makefile makes some minor changes to this file (such as inserting +the version number) and changes its name to "sqlite3.h" as +part of the build process. + +-- + +sysutsname.h +Copyright (c) 2000 Apple Computer, Inc. All rights reserved. + +This file contains Original Code andor Modifications of Original Code +as defined in and that are subject to the Apple Public Source License +Version 2.0 (the 'License'). You may not use this file except in +compliance with the License. The rights granted to you under the License +may not be used to create, or enable the creation or redistribution of, +unlawful or unlicensed copies of an Apple operating system, or to +circumvent, violate, or enable the circumvention or violation of, any +terms of an Apple operating system software license agreement. + +Please obtain a copy of the License at +http://www.opensource.apple.com/apsl and read it before using this file. + +The Original Code and all software distributed under the License are +distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER +EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, +INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. +Please see the License for the specific language governing rights and +limitations under the License. + +Copyright 1993,1995 NeXT Computer Inc. All Rights Reserved +Copyright (c) 1994 The Regents of the University of California. All rights reserved. +This code is derived from software contributed to Berkeley by +Chuck Karish of Mindcraft, Inc. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation andor other materials provided with the distribution. +3. All advertising materials mentioning features or use of this software + must display the following acknowledgement: +* This product includes software developed by the University of +* California, Berkeley and its contributors. +4. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + +-- + +GTMNSData+zlib.h +Copyright 2007-2008 Google Inc. + +Licensed under the Apache License, Version 2.0 (the "License"); you may not +use this file except in compliance with the License. You may obtain a copy +of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +License for the specific language governing permissions and limitations under +the License. + +-- + +GTMDefines.h +Copyright 2008 Google Inc. + +Licensed under the Apache License, Version 2.0 (the "License"); you may not +use this file except in compliance with the License. You may obtain a copy +of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +License for the specific language governing permissions and limitations under +the License. + +-- + +ProtocolBuffer +Copyright 2008 Cyrus Najmabadi +Copyright 2011 Google Inc. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +-- + +GTMDefines.h +Copyright 2008 Google Inc. + +Licensed under the Apache License, Version 2.0 (the "License"); you may not +use this file except in compliance with the License. You may obtain a copy +of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +License for the specific language governing permissions and limitations under +the License. + +-- + +fbase64.c + +Copyright (c) 1996 by Internet Software Consortium. +Permission to use, copy, modify, and distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. +THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS +ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES +OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE +CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL +DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR +PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS +ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +Portions Copyright (c) 1995 by International Business Machines, Inc. +International Business Machines, Inc. (hereinafter called IBM) grants +permission under its copyrights to use, copy, modify, and distribute this +Software with or without fee, provided that the above copyright notice and +all paragraphs of this notice appear in all copies, and that the name of IBM +not be used in connection with the marketing of any product incorporating +the Software or modifications thereof, without specific, written prior +permission. +To the extent it has a right to do so, IBM grants an immunity from suit +under its patents, if any, for the use, sale or manufacture of products to +the extent that such products are used for performing Domain Name System +dynamic updates in TCP/IP networks by means of the Software. No immunity is +granted for any product per se or for any other function of any product. +THE SOFTWARE IS PROVIDED "AS IS", AND IBM DISCLAIMS ALL WARRANTIES, +INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE. IN NO EVENT SHALL IBM BE LIABLE FOR ANY SPECIAL, +DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER ARISING +OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE, EVEN +IF IBM IS APPRISED OF THE POSSIBILITY OF SUCH DAMAGES. + +OPENBSD ORIGINAL: lib/libc/net/base64.c */ + +-- + +FIRAppEnvironmentUtil.m + +The following copyright from Landon J. Fuller applies to the isAppEncrypted function. +Copyright (c) 2017 Landon J. Fuller +All rights reserved. +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. +Comment from iPhone Dev Wiki +Crack Prevention: +App Store binaries are signed by both their developer and Apple. This encrypts the binary so +that decryption keys are needed in order to make the binary readable. When iOS executes the +binary, the decryption keys are used to decrypt the binary into a readable state where it is +then loaded into memory and executed. iOS can tell the encryption status of a binary via the +cryptid structure member of LC_ENCRYPTION_INFO MachO load command. If cryptid is a non-zero +value then the binary is encrypted. +'Cracking' works by letting the kernel decrypt the binary then siphoning the decrypted data into +a new binary file, resigning, and repackaging. This will only work on jailbroken devices as +codesignature validation has been removed. Resigning takes place because while the codesignature +doesn't have to be valid thanks to the jailbreak, it does have to be in place unless you have +AppSync or similar to disable codesignature checks. +More information at Landon Fuller's blog + +-- + +tflite + +Copyright 2017 The TensorFlow Authors. All Rights Reserved. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +-- + +FirebaseCore + +Copyright 2017 Google. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +-- + +google_api_objectivec_client_for_rest + +Copyright 2011 Google Inc. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +-- + +ocmock + +Copyright (c) 2006-2016 Erik Doernenburg and contributors + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +-- diff --git a/Til to Code/Pods/Firebase/README.md b/Til to Code/Pods/Firebase/README.md new file mode 100755 index 0000000..49aa2ee --- /dev/null +++ b/Til to Code/Pods/Firebase/README.md @@ -0,0 +1,87 @@ +# Firebase APIs for iOS + +Simplify your iOS development, grow your user base, and monetize more +effectively with Firebase services. + +Much more information can be found at [https://firebase.google.com](https://firebase.google.com). + +## Install a Firebase SDK using CocoaPods + +Firebase distributes several iOS specific APIs and SDKs via CocoaPods. +You can install the CocoaPods tool on OS X by running the following command from +the terminal. Detailed information is available in the [Getting Started +guide](https://guides.cocoapods.org/using/getting-started.html#getting-started). + +``` +$ sudo gem install cocoapods +``` + +## Try out an SDK + +You can try any of the SDKs with `pod try`. Run the following command and select +the SDK you are interested in when prompted: + +``` +$ pod try Firebase +``` + +Note that some SDKs may require credentials. More information is available in +the SDK-specific documentation at [https://firebase.google.com/docs/](https://firebase.google.com/docs/). + +## Add a Firebase SDK to your iOS app + +CocoaPods is used to install and manage dependencies in existing Xcode projects. + +1. Create an Xcode project, and save it to your local machine. +2. Create a file named `Podfile` in your project directory. This file defines + your project's dependencies, and is commonly referred to as a Podspec. +3. Open `Podfile`, and add your dependencies. A simple Podspec is shown here: + + ``` + platform :ios, '8.0' + pod 'Firebase' + ``` + +4. Save the file. + +5. Open a terminal and `cd` to the directory containing the Podfile. + + ``` + $ cd /project/ + ``` + +6. Run the `pod install` command. This will install the SDKs specified in the + Podspec, along with any dependencies they may have. + + ``` + $ pod install + ``` + +7. Open your app's `.xcworkspace` file to launch Xcode. Use this file for all + development on your app. + +8. You can also install other Firebase SDKs by adding the subspecs in the + Podfile. + + ``` + pod 'Firebase/AdMob' + pod 'Firebase/Analytics' + pod 'Firebase/Auth' + pod 'Firebase/Crash' + pod 'Firebase/Database' + pod 'Firebase/DynamicLinks' + pod 'Firebase/Firestore' + pod 'Firebase/Functions' + pod 'Firebase/Invites' + pod 'Firebase/Messaging' + pod 'Firebase/MLCommon' + pod 'Firebase/MLModelInterpreter' + pod 'Firebase/MLVision' + pod 'Firebase/MLVisionBarcodeModel' + pod 'Firebase/MLVisionFaceModel' + pod 'Firebase/MLVisionLabelModel' + pod 'Firebase/MLVisionTextModel' + pod 'Firebase/Performance' + pod 'Firebase/RemoteConfig' + pod 'Firebase/Storage' + ``` diff --git a/Til to Code/Pods/FirebaseAnalytics/Frameworks/FIRAnalyticsConnector.framework/FIRAnalyticsConnector b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FIRAnalyticsConnector.framework/FIRAnalyticsConnector new file mode 100755 index 0000000000000000000000000000000000000000..897b5da29ed5ad5fcd8eff856f90ead9afd2fe22 GIT binary patch literal 278352 zcmcG13tUr2_WuouBuEHRsiFo9h>9-^4>3G!!^?uAqF5ibmIR1GB_4Od*)Sis#~%$OzmQ z111EF@DTH=X9N=(DdrcgE6B)tc;M*ZDIqFl?=iJEs+_6{Mk++50z$A#6&{XoYH&D@ zp&gi(7L>YVc6`DNW$N7d3lid~2oi#hL`b&)1$V7wm;gRKpAU^Zd<~!8&4>Ty!~fyK z0N@dyI)rI+V`s*t#U;n2rltj?%}AOblc&omHD+fN#^vYb=`)P^1w2mD!kGE}p#-Jr ztYkd)?1Tj|59XS~6`dRtn~_TIKF3)I1|6@%1V*L?z^Alzy%ukpTm(Y*2_u15D%Eye^Ifc$G4+{xj+oMCn$k3yoSb109OmS)tK7<-A*(iS8v zUeKGSSSeZ}(bI7#hheHIB4SJw(2C~Fw!nShL3E;3fc0jxv9z@O^rte?GIDf zqZ~ZQ7C3CIcpkZWV^*FnSAU-_d%@!`AWq?W7mgbLeRW~wDAebW6l9;ix-6D3j2ble zWE|Zg$bl#W)^>7a-HiD;y_^n5BtN3J;JyGI*fLFx@9T<5ahK;ID&ph-8%JI8ax!uXo$*-A^SHm@r^w?dztw>;m`rhf(xs@vJ% z;c(d5BLf#bU4}8OC~tLkUM6&jx5wQF9^C*e1`qNJFW7_B!(nSOX=(bbwB-fV{ji5) zo7TxmxHOx}H2nlbq2gd&MKJa2?Xls65bqy(1@WP!#uei?~4okTGjrx(uu z?eSRkRr3u=7m+PC-w^c_NqQP*gJDl&#Q?O5FME1=%tySJwE!=5(L(bLDT}%kkqzdj zfS1zsK8qr+J_}dfpuh3-!DkL~PzoCpOzy9A))Q(4}-$@f624By?A+pAvu~ zgvDJ>xKHu99PSf*ss)sby5_Jc(Za3-E|S_6%|;YYrY&V2Q*HIQ- zUQJRh>^jJ&U;*TMckSWR2{&NT>Sf)jJqKb?X3v2lNYu5C%Pnv6EPoPC(NlC|Vb6ht z-u$O}^B+cjb_>Fh_{Yp74~e(Yz2X zH3wz`2a;^CTot0i7WNcf=^D^m$lp-))yukAgr5kZ`ZiFyyT1M}nM7XRWE{1@G6n@~ z*fbUYDf4;`%%eh!y1G8*P*~Cdl$T0`f4-kE!GW;Sj_@HHp}|U6v#iVLV=eSCJKEH) zWGkgKwWjC_3EFeuG1dmp0IzE@o9&g_6=1`IfxCvXDfo>C7a=iS*ytpy=L9z;_EtXY z>egCc=2ep*CnssU2WL52tqABkO0kxj1aAVrM~Q?RHJ0blBh+k~1t+dH21u+<_Y$&U z#5LCZ3@%?<{X{QLF^99T#$sW4tRNiTX&)!{H>sc$iY@C#!IqUA6M4<-Zs194X5T;{ zsg8%AL%eZ>s0gT8*4?E*6h1@bgE(lH8--y3T>^yWBetev>jr8}52G~-6C^}*@qd7f z@Ek((5eaJ|J4`PQlYFj7p3?OWi^X*pc39t|f_Q%Gt$fh`8<^!8xy;S%w$cStuP zZM`VbIM3Npz}}VV3u16TdEbp%B%{m8$I+hE>!&X; zmPRreIeJ||f4OXCLNRUu=iqV{*_%w!(e({?kcHsjly$bgFcL!~wiF^x!B8o?B$CP1 zmDmYDSWHg-3bu?z*~YB71=%aI^CD@i8fmaA1S;5(l{%sp>vD?pBnoc`%7>1|{EYmZ z$ZU+naqpVVy3m5`T-@qJX6g<4yi9#w21$@npl9=9VX>94TtR`3DQxzbMZb z$z&ID(#62CtM!?YOkq}jQBG#Eo%pPo?B&iaGV0QE^l|xyQqU)?D$?bEPH&vcvW{Gy zUocBws?SUX`w#F36*ta9P?>d3=G|rDP zC?5cy_rV#2lP(|2a4yGb#`#yAr*U@Rq=UvW&1esHM+(JH;-veiR)_XM_n3~y4cuSY z-@999KkQ*>1pKUwedl2}_aR`4(YvT3!!&B9I7G$8sKW^kXK>omOm;6CAEW*#rk_^k z-^^v1yhiTLacw*3~A`crv;#E_pN!4}+$-j~!Sj2(hadOKL(@=!vt zn)osrKCqQ%P1~E!pX^QJV7lM>40TNRgmm0Od^{fyLuLdYPe*(PA1^}Oiu0mfJO%ly zasCipr~54{3{hq{@`%R%r~nfAmUW!m4IaCI zcai65#U*|y)~3rK&{=gEinvvNAH=PCx#HqrwSx?Ct6oD8AIr5nBZ1 z(lG-h!+k|H=_X}@OY9c+Ska&mFSW#b*1(XpRf)A;%D5R-Z!p6{Vy`61Y6k@zNr{

_w3dP_ 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

?if>99wIRvegjlUrf3{iwW4fMe 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 O(r0lXJ?Ia`@xK7NHhPr+ literal 0 HcmV?d00001 diff --git a/Til to Code/Pods/FirebaseAnalytics/Frameworks/FIRAnalyticsConnector.framework/Modules/module.modulemap b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FIRAnalyticsConnector.framework/Modules/module.modulemap new file mode 100755 index 0000000..73fb1d7 --- /dev/null +++ b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FIRAnalyticsConnector.framework/Modules/module.modulemap @@ -0,0 +1,5 @@ +framework module FIRAnalyticsConnector { + export * + module * { export *} + link framework "Security" + link framework "SystemConfiguration"} diff --git a/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/FirebaseAnalytics b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/FirebaseAnalytics new file mode 100755 index 0000000000000000000000000000000000000000..b20d5d25c2e202804880096b6118cd53417b6097 GIT binary patch literal 465024 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

y?Jujb>^$%GOZ5(onq` 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

tP=d2f;z=G|ZNj;N0yb4U28 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ⓈqMI%#)ib#gT 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

H601(1hs#K-lgkEQh$ay)Dqljnjw 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 literal 0 HcmV?d00001 diff --git a/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalytics+AppDelegate.h b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalytics+AppDelegate.h new file mode 100755 index 0000000..d499af6 --- /dev/null +++ b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalytics+AppDelegate.h @@ -0,0 +1,62 @@ +#import + +#import "FIRAnalytics.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + * Provides App Delegate handlers to be used in your App Delegate. + * + * To save time integrating Firebase Analytics in an application, Firebase Analytics does not + * require delegation implementation from the AppDelegate. Instead this is automatically done by + * Firebase Analytics. Should you choose instead to delegate manually, you can turn off the App + * Delegate Proxy by adding FirebaseAppDelegateProxyEnabled into your app's Info.plist and setting + * it to NO, and adding the methods in this category to corresponding delegation handlers. + * + * To handle Universal Links, you must return YES in + * [UIApplicationDelegate application:didFinishLaunchingWithOptions:]. + */ +@interface FIRAnalytics (AppDelegate) + +/** + * Handles events related to a URL session that are waiting to be processed. + * + * For optimal use of Firebase Analytics, call this method from the + * [UIApplicationDelegate application:handleEventsForBackgroundURLSession:completionHandler] + * method of the app delegate in your app. + * + * @param identifier The identifier of the URL session requiring attention. + * @param completionHandler The completion handler to call when you finish processing the events. + * Calling this completion handler lets the system know that your app's user interface is + * updated and a new snapshot can be taken. + */ ++ (void)handleEventsForBackgroundURLSession:(NSString *)identifier + completionHandler:(nullable void (^)(void))completionHandler; + +/** + * Handles the event when the app is launched by a URL. + * + * Call this method from [UIApplicationDelegate application:openURL:options:] (on iOS 9.0 and + * above), or [UIApplicationDelegate application:openURL:sourceApplication:annotation:] (on + * iOS 8.x and below) in your app. + * + * @param url The URL resource to open. This resource can be a network resource or a file. + */ ++ (void)handleOpenURL:(NSURL *)url; + +/** + * Handles the event when the app receives data associated with user activity that includes a + * Universal Link (on iOS 9.0 and above). + * + * Call this method from [UIApplication continueUserActivity:restorationHandler:] in your app + * delegate (on iOS 9.0 and above). + * + * @param userActivity The activity object containing the data associated with the task the user + * was performing. + */ ++ (void)handleUserActivity:(id)userActivity; + +@end + +NS_ASSUME_NONNULL_END + diff --git a/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalytics.h b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalytics.h new file mode 100755 index 0000000..39d23f1 --- /dev/null +++ b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalytics.h @@ -0,0 +1,119 @@ +#import + +#import "FIREventNames.h" +#import "FIRParameterNames.h" +#import "FIRUserPropertyNames.h" + +NS_ASSUME_NONNULL_BEGIN + +/// The top level Firebase Analytics singleton that provides methods for logging events and setting +/// user properties. See the developer guides for general +/// information on using Firebase Analytics in your apps. +NS_SWIFT_NAME(Analytics) +@interface FIRAnalytics : NSObject + +/// Logs an app event. The event can have up to 25 parameters. Events with the same name must have +/// the same parameters. Up to 500 event names are supported. Using predefined events and/or +/// parameters is recommended for optimal reporting. +/// +/// The following event names are reserved and cannot be used: +///

    +///
  • ad_activeview
  • +///
  • ad_click
  • +///
  • ad_exposure
  • +///
  • ad_impression
  • +///
  • ad_query
  • +///
  • adunit_exposure
  • +///
  • app_clear_data
  • +///
  • app_remove
  • +///
  • app_update
  • +///
  • error
  • +///
  • first_open
  • +///
  • in_app_purchase
  • +///
  • notification_dismiss
  • +///
  • notification_foreground
  • +///
  • notification_open
  • +///
  • notification_receive
  • +///
  • os_update
  • +///
  • screen_view
  • +///
  • session_start
  • +///
  • user_engagement
  • +///
+/// +/// @param name The name of the event. Should contain 1 to 40 alphanumeric characters or +/// underscores. The name must start with an alphabetic character. Some event names are +/// reserved. See FIREventNames.h for the list of reserved event names. The "firebase_", +/// "google_", and "ga_" prefixes are reserved and should not be used. Note that event names are +/// case-sensitive and that logging two events whose names differ only in case will result in +/// two distinct events. +/// @param parameters The dictionary of event parameters. Passing nil indicates that the event has +/// no parameters. Parameter names can be up to 40 characters long and must start with an +/// alphabetic character and contain only alphanumeric characters and underscores. Only NSString +/// and NSNumber (signed 64-bit integer and 64-bit floating-point number) parameter types are +/// supported. NSString parameter values can be up to 100 characters long. The "firebase_", +/// "google_", and "ga_" prefixes are reserved and should not be used for parameter names. ++ (void)logEventWithName:(NSString *)name + parameters:(nullable NSDictionary *)parameters + NS_SWIFT_NAME(logEvent(_:parameters:)); + +/// Sets a user property to a given value. Up to 25 user property names are supported. Once set, +/// user property values persist throughout the app lifecycle and across sessions. +/// +/// The following user property names are reserved and cannot be used: +///
    +///
  • first_open_time
  • +///
  • last_deep_link_referrer
  • +///
  • user_id
  • +///
+/// +/// @param value The value of the user property. Values can be up to 36 characters long. Setting the +/// value to nil removes the user property. +/// @param name The name of the user property to set. Should contain 1 to 24 alphanumeric characters +/// or underscores and must start with an alphabetic character. The "firebase_", "google_", and +/// "ga_" prefixes are reserved and should not be used for user property names. ++ (void)setUserPropertyString:(nullable NSString *)value forName:(NSString *)name + NS_SWIFT_NAME(setUserProperty(_:forName:)); + +/// Sets the user ID property. This feature must be used in accordance with +/// Google's Privacy Policy +/// +/// @param userID The user ID to ascribe to the user of this app on this device, which must be +/// non-empty and no more than 256 characters long. Setting userID to nil removes the user ID. ++ (void)setUserID:(nullable NSString *)userID; + +/// Sets the current screen name, which specifies the current visual context in your app. This helps +/// identify the areas in your app where users spend their time and how they interact with your app. +/// Must be called on the main thread. +/// +/// Note that screen reporting is enabled automatically and records the class name of the current +/// UIViewController for you without requiring you to call this method. If you implement +/// viewDidAppear in your UIViewController but do not call [super viewDidAppear:], that screen class +/// will not be automatically tracked. The class name can optionally be overridden by calling this +/// method in the viewDidAppear callback of your UIViewController and specifying the +/// screenClassOverride parameter. setScreenName:screenClass: must be called after +/// [super viewDidAppear:]. +/// +/// If your app does not use a distinct UIViewController for each screen, you should call this +/// method and specify a distinct screenName each time a new screen is presented to the user. +/// +/// The screen name and screen class remain in effect until the current UIViewController changes or +/// a new call to setScreenName:screenClass: is made. +/// +/// @param screenName The name of the current screen. Should contain 1 to 100 characters. Set to nil +/// to clear the current screen name. +/// @param screenClassOverride The name of the screen class. Should contain 1 to 100 characters. By +/// default this is the class name of the current UIViewController. Set to nil to revert to the +/// default class name. ++ (void)setScreenName:(nullable NSString *)screenName + screenClass:(nullable NSString *)screenClassOverride; + +/// The unique ID for this instance of the application. ++ (NSString *)appInstanceID; + +/// Clears all analytics data for this instance from the device and resets the app instance ID. +/// FIRAnalyticsConfiguration values will be reset to the default values. ++ (void)resetAnalyticsData; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIREventNames.h b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIREventNames.h new file mode 100755 index 0000000..c70c53e --- /dev/null +++ b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIREventNames.h @@ -0,0 +1,407 @@ +/// @file FIREventNames.h +/// +/// Predefined event names. +/// +/// An Event is an important occurrence in your app that you want to measure. You can report up to +/// 500 different types of Events per app and you can associate up to 25 unique parameters with each +/// Event type. Some common events are suggested below, but you may also choose to specify custom +/// Event types that are associated with your specific app. Each event type is identified by a +/// unique name. Event names can be up to 40 characters long, may only contain alphanumeric +/// characters and underscores ("_"), and must start with an alphabetic character. The "firebase_", +/// "google_", and "ga_" prefixes are reserved and should not be used. + +#import + +/// Add Payment Info event. This event signifies that a user has submitted their payment information +/// to your app. +static NSString *const kFIREventAddPaymentInfo NS_SWIFT_NAME(AnalyticsEventAddPaymentInfo) = + @"add_payment_info"; + +/// E-Commerce Add To Cart event. This event signifies that an item was added to a cart for +/// purchase. Add this event to a funnel with kFIREventEcommercePurchase to gauge the effectiveness +/// of your checkout process. Note: If you supply the @c kFIRParameterValue parameter, you must +/// also supply the @c kFIRParameterCurrency parameter so that revenue metrics can be computed +/// accurately. Params: +/// +///
    +///
  • @c kFIRParameterQuantity (signed 64-bit integer as NSNumber)
  • +///
  • @c kFIRParameterItemID (NSString)
  • +///
  • @c kFIRParameterItemName (NSString)
  • +///
  • @c kFIRParameterItemCategory (NSString)
  • +///
  • @c kFIRParameterItemLocationID (NSString) (optional)
  • +///
  • @c kFIRParameterPrice (double as NSNumber) (optional)
  • +///
  • @c kFIRParameterCurrency (NSString) (optional)
  • +///
  • @c kFIRParameterValue (double as NSNumber) (optional)
  • +///
  • @c kFIRParameterOrigin (NSString) (optional)
  • +///
  • @c kFIRParameterDestination (NSString) (optional)
  • +///
  • @c kFIRParameterStartDate (NSString) (optional)
  • +///
  • @c kFIRParameterEndDate (NSString) (optional)
  • +///
+static NSString *const kFIREventAddToCart NS_SWIFT_NAME(AnalyticsEventAddToCart) = @"add_to_cart"; + +/// E-Commerce Add To Wishlist event. This event signifies that an item was added to a wishlist. +/// Use this event to identify popular gift items in your app. Note: If you supply the +/// @c kFIRParameterValue parameter, you must also supply the @c kFIRParameterCurrency +/// parameter so that revenue metrics can be computed accurately. Params: +/// +///
    +///
  • @c kFIRParameterQuantity (signed 64-bit integer as NSNumber)
  • +///
  • @c kFIRParameterItemID (NSString)
  • +///
  • @c kFIRParameterItemName (NSString)
  • +///
  • @c kFIRParameterItemCategory (NSString)
  • +///
  • @c kFIRParameterItemLocationID (NSString) (optional)
  • +///
  • @c kFIRParameterPrice (double as NSNumber) (optional)
  • +///
  • @c kFIRParameterCurrency (NSString) (optional)
  • +///
  • @c kFIRParameterValue (double as NSNumber) (optional)
  • +///
+static NSString *const kFIREventAddToWishlist NS_SWIFT_NAME(AnalyticsEventAddToWishlist) = + @"add_to_wishlist"; + +/// App Open event. By logging this event when an App becomes active, developers can understand how +/// often users leave and return during the course of a Session. Although Sessions are automatically +/// reported, this event can provide further clarification around the continuous engagement of +/// app-users. +static NSString *const kFIREventAppOpen NS_SWIFT_NAME(AnalyticsEventAppOpen) = @"app_open"; + +/// E-Commerce Begin Checkout event. This event signifies that a user has begun the process of +/// checking out. Add this event to a funnel with your kFIREventEcommercePurchase event to gauge the +/// effectiveness of your checkout process. Note: If you supply the @c kFIRParameterValue +/// parameter, you must also supply the @c kFIRParameterCurrency parameter so that revenue +/// metrics can be computed accurately. Params: +/// +///
    +///
  • @c kFIRParameterValue (double as NSNumber) (optional)
  • +///
  • @c kFIRParameterCurrency (NSString) (optional)
  • +///
  • @c kFIRParameterTransactionID (NSString) (optional)
  • +///
  • @c kFIRParameterStartDate (NSString) (optional)
  • +///
  • @c kFIRParameterEndDate (NSString) (optional)
  • +///
  • @c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for +/// hotel bookings
  • +///
  • @c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for +/// hotel bookings
  • +///
  • @c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional) +/// for travel bookings
  • +///
  • @c kFIRParameterOrigin (NSString) (optional)
  • +///
  • @c kFIRParameterDestination (NSString) (optional)
  • +///
  • @c kFIRParameterTravelClass (NSString) (optional) for travel bookings
  • +///
+static NSString *const kFIREventBeginCheckout NS_SWIFT_NAME(AnalyticsEventBeginCheckout) = + @"begin_checkout"; + +/// Campaign Detail event. Log this event to supply the referral details of a re-engagement +/// campaign. Note: you must supply at least one of the required parameters kFIRParameterSource, +/// kFIRParameterMedium or kFIRParameterCampaign. Params: +/// +///
    +///
  • @c kFIRParameterSource (NSString)
  • +///
  • @c kFIRParameterMedium (NSString)
  • +///
  • @c kFIRParameterCampaign (NSString)
  • +///
  • @c kFIRParameterTerm (NSString) (optional)
  • +///
  • @c kFIRParameterContent (NSString) (optional)
  • +///
  • @c kFIRParameterAdNetworkClickID (NSString) (optional)
  • +///
  • @c kFIRParameterCP1 (NSString) (optional)
  • +///
+static NSString *const kFIREventCampaignDetails NS_SWIFT_NAME(AnalyticsEventCampaignDetails) = + @"campaign_details"; + +/// Checkout progress. Params: +/// +///
    +///
  • @c kFIRParameterCheckoutStep (unsigned 64-bit integer as NSNumber)
  • +///
  • @c kFIRParameterCheckoutOption (NSString) (optional)
  • +///
+static NSString *const kFIREventCheckoutProgress NS_SWIFT_NAME(AnalyticsEventCheckoutProgress) = + @"checkout_progress"; + +/// Earn Virtual Currency event. This event tracks the awarding of virtual currency in your app. Log +/// this along with @c kFIREventSpendVirtualCurrency to better understand your virtual economy. +/// Params: +/// +///
    +///
  • @c kFIRParameterVirtualCurrencyName (NSString)
  • +///
  • @c kFIRParameterValue (signed 64-bit integer or double as NSNumber)
  • +///
+static NSString *const kFIREventEarnVirtualCurrency + NS_SWIFT_NAME(AnalyticsEventEarnVirtualCurrency) = @"earn_virtual_currency"; + +/// E-Commerce Purchase event. This event signifies that an item was purchased by a user. Note: +/// This is different from the in-app purchase event, which is reported automatically for App +/// Store-based apps. Note: If you supply the @c kFIRParameterValue parameter, you must also +/// supply the @c kFIRParameterCurrency parameter so that revenue metrics can be computed +/// accurately. Params: +/// +///
    +///
  • @c kFIRParameterCurrency (NSString) (optional)
  • +///
  • @c kFIRParameterValue (double as NSNumber) (optional)
  • +///
  • @c kFIRParameterTransactionID (NSString) (optional)
  • +///
  • @c kFIRParameterTax (double as NSNumber) (optional)
  • +///
  • @c kFIRParameterShipping (double as NSNumber) (optional)
  • +///
  • @c kFIRParameterCoupon (NSString) (optional)
  • +///
  • @c kFIRParameterLocation (NSString) (optional)
  • +///
  • @c kFIRParameterStartDate (NSString) (optional)
  • +///
  • @c kFIRParameterEndDate (NSString) (optional)
  • +///
  • @c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for +/// hotel bookings
  • +///
  • @c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for +/// hotel bookings
  • +///
  • @c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional) +/// for travel bookings
  • +///
  • @c kFIRParameterOrigin (NSString) (optional)
  • +///
  • @c kFIRParameterDestination (NSString) (optional)
  • +///
  • @c kFIRParameterTravelClass (NSString) (optional) for travel bookings
  • +///
+static NSString *const kFIREventEcommercePurchase NS_SWIFT_NAME(AnalyticsEventEcommercePurchase) = + @"ecommerce_purchase"; + +/// Generate Lead event. Log this event when a lead has been generated in the app to understand the +/// efficacy of your install and re-engagement campaigns. Note: If you supply the +/// @c kFIRParameterValue parameter, you must also supply the @c kFIRParameterCurrency +/// parameter so that revenue metrics can be computed accurately. Params: +/// +///
    +///
  • @c kFIRParameterCurrency (NSString) (optional)
  • +///
  • @c kFIRParameterValue (double as NSNumber) (optional)
  • +///
+static NSString *const kFIREventGenerateLead NS_SWIFT_NAME(AnalyticsEventGenerateLead) = + @"generate_lead"; + +/// Join Group event. Log this event when a user joins a group such as a guild, team or family. Use +/// this event to analyze how popular certain groups or social features are in your app. Params: +/// +///
    +///
  • @c kFIRParameterGroupID (NSString)
  • +///
+static NSString *const kFIREventJoinGroup NS_SWIFT_NAME(AnalyticsEventJoinGroup) = @"join_group"; + +/// Level Up event. This event signifies that a player has leveled up in your gaming app. It can +/// help you gauge the level distribution of your userbase and help you identify certain levels that +/// are difficult to pass. Params: +/// +///
    +///
  • @c kFIRParameterLevel (signed 64-bit integer as NSNumber)
  • +///
  • @c kFIRParameterCharacter (NSString) (optional)
  • +///
+static NSString *const kFIREventLevelUp NS_SWIFT_NAME(AnalyticsEventLevelUp) = @"level_up"; + +/// Login event. Apps with a login feature can report this event to signify that a user has logged +/// in. +static NSString *const kFIREventLogin NS_SWIFT_NAME(AnalyticsEventLogin) = @"login"; + +/// Post Score event. Log this event when the user posts a score in your gaming app. This event can +/// help you understand how users are actually performing in your game and it can help you correlate +/// high scores with certain audiences or behaviors. Params: +/// +///
    +///
  • @c kFIRParameterScore (signed 64-bit integer as NSNumber)
  • +///
  • @c kFIRParameterLevel (signed 64-bit integer as NSNumber) (optional)
  • +///
  • @c kFIRParameterCharacter (NSString) (optional)
  • +///
+static NSString *const kFIREventPostScore NS_SWIFT_NAME(AnalyticsEventPostScore) = @"post_score"; + +/// Present Offer event. This event signifies that the app has presented a purchase offer to a user. +/// Add this event to a funnel with the kFIREventAddToCart and kFIREventEcommercePurchase to gauge +/// your conversion process. Note: If you supply the @c kFIRParameterValue parameter, you must +/// also supply the @c kFIRParameterCurrency parameter so that revenue metrics can be computed +/// accurately. Params: +/// +///
    +///
  • @c kFIRParameterQuantity (signed 64-bit integer as NSNumber)
  • +///
  • @c kFIRParameterItemID (NSString)
  • +///
  • @c kFIRParameterItemName (NSString)
  • +///
  • @c kFIRParameterItemCategory (NSString)
  • +///
  • @c kFIRParameterItemLocationID (NSString) (optional)
  • +///
  • @c kFIRParameterPrice (double as NSNumber) (optional)
  • +///
  • @c kFIRParameterCurrency (NSString) (optional)
  • +///
  • @c kFIRParameterValue (double as NSNumber) (optional)
  • +///
+static NSString *const kFIREventPresentOffer NS_SWIFT_NAME(AnalyticsEventPresentOffer) = + @"present_offer"; + +/// E-Commerce Purchase Refund event. This event signifies that an item purchase was refunded. +/// Note: If you supply the @c kFIRParameterValue parameter, you must also supply the +/// @c kFIRParameterCurrency parameter so that revenue metrics can be computed accurately. +/// Params: +/// +///
    +///
  • @c kFIRParameterCurrency (NSString) (optional)
  • +///
  • @c kFIRParameterValue (double as NSNumber) (optional)
  • +///
  • @c kFIRParameterTransactionID (NSString) (optional)
  • +///
+static NSString *const kFIREventPurchaseRefund NS_SWIFT_NAME(AnalyticsEventPurchaseRefund) = + @"purchase_refund"; + +/// Remove from cart event. Params: +/// +///
    +///
  • @c kFIRParameterQuantity (signed 64-bit integer as NSNumber)
  • +///
  • @c kFIRParameterItemID (NSString)
  • +///
  • @c kFIRParameterItemName (NSString)
  • +///
  • @c kFIRParameterItemCategory (NSString)
  • +///
  • @c kFIRParameterItemLocationID (NSString) (optional)
  • +///
  • @c kFIRParameterPrice (double as NSNumber) (optional)
  • +///
  • @c kFIRParameterCurrency (NSString) (optional)
  • +///
  • @c kFIRParameterValue (double as NSNumber) (optional)
  • +///
  • @c kFIRParameterOrigin (NSString) (optional)
  • +///
  • @c kFIRParameterDestination (NSString) (optional)
  • +///
  • @c kFIRParameterStartDate (NSString) (optional)
  • +///
  • @c kFIRParameterEndDate (NSString) (optional)
  • +///
+static NSString *const kFIREventRemoveFromCart NS_SWIFT_NAME(AnalyticsEventRemoveFromCart) = + @"remove_from_cart"; + +/// Search event. Apps that support search features can use this event to contextualize search +/// operations by supplying the appropriate, corresponding parameters. This event can help you +/// identify the most popular content in your app. Params: +/// +///
    +///
  • @c kFIRParameterSearchTerm (NSString)
  • +///
  • @c kFIRParameterStartDate (NSString) (optional)
  • +///
  • @c kFIRParameterEndDate (NSString) (optional)
  • +///
  • @c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for +/// hotel bookings
  • +///
  • @c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for +/// hotel bookings
  • +///
  • @c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional) +/// for travel bookings
  • +///
  • @c kFIRParameterOrigin (NSString) (optional)
  • +///
  • @c kFIRParameterDestination (NSString) (optional)
  • +///
  • @c kFIRParameterTravelClass (NSString) (optional) for travel bookings
  • +///
+static NSString *const kFIREventSearch NS_SWIFT_NAME(AnalyticsEventSearch) = @"search"; + +/// Select Content event. This general purpose event signifies that a user has selected some content +/// of a certain type in an app. The content can be any object in your app. This event can help you +/// identify popular content and categories of content in your app. Params: +/// +///
    +///
  • @c kFIRParameterContentType (NSString)
  • +///
  • @c kFIRParameterItemID (NSString)
  • +///
+static NSString *const kFIREventSelectContent NS_SWIFT_NAME(AnalyticsEventSelectContent) = + @"select_content"; + +/// Set checkout option. Params: +/// +///
    +///
  • @c kFIRParameterCheckoutStep (unsigned 64-bit integer as NSNumber)
  • +///
  • @c kFIRParameterCheckoutOption (NSString)
  • +///
+static NSString *const kFIREventSetCheckoutOption NS_SWIFT_NAME(AnalyticsEventSetCheckoutOption) = + @"set_checkout_option"; + +/// Share event. Apps with social features can log the Share event to identify the most viral +/// content. Params: +/// +///
    +///
  • @c kFIRParameterContentType (NSString)
  • +///
  • @c kFIRParameterItemID (NSString)
  • +///
+static NSString *const kFIREventShare NS_SWIFT_NAME(AnalyticsEventShare) = @"share"; + +/// Sign Up event. This event indicates that a user has signed up for an account in your app. The +/// parameter signifies the method by which the user signed up. Use this event to understand the +/// different behaviors between logged in and logged out users. Params: +/// +///
    +///
  • @c kFIRParameterSignUpMethod (NSString)
  • +///
+static NSString *const kFIREventSignUp NS_SWIFT_NAME(AnalyticsEventSignUp) = @"sign_up"; + +/// Spend Virtual Currency event. This event tracks the sale of virtual goods in your app and can +/// help you identify which virtual goods are the most popular objects of purchase. Params: +/// +///
    +///
  • @c kFIRParameterItemName (NSString)
  • +///
  • @c kFIRParameterVirtualCurrencyName (NSString)
  • +///
  • @c kFIRParameterValue (signed 64-bit integer or double as NSNumber)
  • +///
+static NSString *const kFIREventSpendVirtualCurrency + NS_SWIFT_NAME(AnalyticsEventSpendVirtualCurrency) = @"spend_virtual_currency"; + +/// Tutorial Begin event. This event signifies the start of the on-boarding process in your app. Use +/// this in a funnel with kFIREventTutorialComplete to understand how many users complete this +/// process and move on to the full app experience. +static NSString *const kFIREventTutorialBegin NS_SWIFT_NAME(AnalyticsEventTutorialBegin) = + @"tutorial_begin"; + +/// Tutorial End event. Use this event to signify the user's completion of your app's on-boarding +/// process. Add this to a funnel with kFIREventTutorialBegin to gauge the completion rate of your +/// on-boarding process. +static NSString *const kFIREventTutorialComplete NS_SWIFT_NAME(AnalyticsEventTutorialComplete) = + @"tutorial_complete"; + +/// Unlock Achievement event. Log this event when the user has unlocked an achievement in your +/// game. Since achievements generally represent the breadth of a gaming experience, this event can +/// help you understand how many users are experiencing all that your game has to offer. Params: +/// +///
    +///
  • @c kFIRParameterAchievementID (NSString)
  • +///
+static NSString *const kFIREventUnlockAchievement NS_SWIFT_NAME(AnalyticsEventUnlockAchievement) = + @"unlock_achievement"; + +/// View Item event. This event signifies that some content was shown to the user. This content may +/// be a product, a webpage or just a simple image or text. Use the appropriate parameters to +/// contextualize the event. Use this event to discover the most popular items viewed in your app. +/// Note: If you supply the @c kFIRParameterValue parameter, you must also supply the +/// @c kFIRParameterCurrency parameter so that revenue metrics can be computed accurately. +/// Params: +/// +///
    +///
  • @c kFIRParameterItemID (NSString)
  • +///
  • @c kFIRParameterItemName (NSString)
  • +///
  • @c kFIRParameterItemCategory (NSString)
  • +///
  • @c kFIRParameterItemLocationID (NSString) (optional)
  • +///
  • @c kFIRParameterPrice (double as NSNumber) (optional)
  • +///
  • @c kFIRParameterQuantity (signed 64-bit integer as NSNumber) (optional)
  • +///
  • @c kFIRParameterCurrency (NSString) (optional)
  • +///
  • @c kFIRParameterValue (double as NSNumber) (optional)
  • +///
  • @c kFIRParameterStartDate (NSString) (optional)
  • +///
  • @c kFIRParameterEndDate (NSString) (optional)
  • +///
  • @c kFIRParameterFlightNumber (NSString) (optional) for travel bookings
  • +///
  • @c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional) +/// for travel bookings
  • +///
  • @c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for +/// travel bookings
  • +///
  • @c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for +/// travel bookings
  • +///
  • @c kFIRParameterOrigin (NSString) (optional)
  • +///
  • @c kFIRParameterDestination (NSString) (optional)
  • +///
  • @c kFIRParameterSearchTerm (NSString) (optional) for travel bookings
  • +///
  • @c kFIRParameterTravelClass (NSString) (optional) for travel bookings
  • +///
+static NSString *const kFIREventViewItem NS_SWIFT_NAME(AnalyticsEventViewItem) = @"view_item"; + +/// View Item List event. Log this event when the user has been presented with a list of items of a +/// certain category. Params: +/// +///
    +///
  • @c kFIRParameterItemCategory (NSString)
  • +///
+static NSString *const kFIREventViewItemList NS_SWIFT_NAME(AnalyticsEventViewItemList) = + @"view_item_list"; + +/// View Search Results event. Log this event when the user has been presented with the results of a +/// search. Params: +/// +///
    +///
  • @c kFIRParameterSearchTerm (NSString)
  • +///
+static NSString *const kFIREventViewSearchResults NS_SWIFT_NAME(AnalyticsEventViewSearchResults) = + @"view_search_results"; + +/// Level Start event. Log this event when the user starts a new level. Params: +/// +///
    +///
  • @c kFIRParameterLevelName (NSString)
  • +///
+static NSString *const kFIREventLevelStart NS_SWIFT_NAME(AnalyticsEventLevelStart) = + @"level_start"; + +/// Level End event. Log this event when the user finishes a level. Params: +/// +///
    +///
  • @c kFIRParameterLevelName (NSString)
  • +///
  • @c kFIRParameterSuccess (NSString)
  • +///
+static NSString *const kFIREventLevelEnd NS_SWIFT_NAME(AnalyticsEventLevelEnd) = @"level_end"; diff --git a/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIRParameterNames.h b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIRParameterNames.h new file mode 100755 index 0000000..4e1366c --- /dev/null +++ b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIRParameterNames.h @@ -0,0 +1,507 @@ +/// @file FIRParameterNames.h +/// +/// Predefined event parameter names. +/// +/// Params supply information that contextualize Events. You can associate up to 25 unique Params +/// with each Event type. Some Params are suggested below for certain common Events, but you are +/// not limited to these. You may supply extra Params for suggested Events or custom Params for +/// Custom events. Param names can be up to 40 characters long, may only contain alphanumeric +/// characters and underscores ("_"), and must start with an alphabetic character. Param values can +/// be up to 100 characters long. The "firebase_", "google_", and "ga_" prefixes are reserved and +/// should not be used. + +#import + +/// Game achievement ID (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterAchievementID : @"10_matches_won",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterAchievementID NS_SWIFT_NAME(AnalyticsParameterAchievementID) = + @"achievement_id"; + +/// Ad Network Click ID (NSString). Used for network-specific click IDs which vary in format. +///
+///     NSDictionary *params = @{
+///       kFIRParameterAdNetworkClickID : @"1234567",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterAdNetworkClickID + NS_SWIFT_NAME(AnalyticsParameterAdNetworkClickID) = @"aclid"; + +/// The store or affiliation from which this transaction occurred (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterAffiliation : @"Google Store",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterAffiliation NS_SWIFT_NAME(AnalyticsParameterAffiliation) = + @"affiliation"; + +/// The individual campaign name, slogan, promo code, etc. Some networks have pre-defined macro to +/// capture campaign information, otherwise can be populated by developer. Highly Recommended +/// (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterCampaign : @"winter_promotion",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterCampaign NS_SWIFT_NAME(AnalyticsParameterCampaign) = + @"campaign"; + +/// Character used in game (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterCharacter : @"beat_boss",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterCharacter NS_SWIFT_NAME(AnalyticsParameterCharacter) = + @"character"; + +/// The checkout step (1..N) (unsigned 64-bit integer as NSNumber). +///
+///     NSDictionary *params = @{
+///       kFIRParameterCheckoutStep : @"1",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterCheckoutStep NS_SWIFT_NAME(AnalyticsParameterCheckoutStep) = + @"checkout_step"; + +/// Some option on a step in an ecommerce flow (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterCheckoutOption : @"Visa",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterCheckoutOption + NS_SWIFT_NAME(AnalyticsParameterCheckoutOption) = @"checkout_option"; + +/// Campaign content (NSString). +static NSString *const kFIRParameterContent NS_SWIFT_NAME(AnalyticsParameterContent) = @"content"; + +/// Type of content selected (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterContentType : @"news article",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterContentType NS_SWIFT_NAME(AnalyticsParameterContentType) = + @"content_type"; + +/// Coupon code for a purchasable item (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterCoupon : @"zz123",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterCoupon NS_SWIFT_NAME(AnalyticsParameterCoupon) = @"coupon"; + +/// Campaign custom parameter (NSString). Used as a method of capturing custom data in a campaign. +/// Use varies by network. +///
+///     NSDictionary *params = @{
+///       kFIRParameterCP1 : @"custom_data",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterCP1 NS_SWIFT_NAME(AnalyticsParameterCP1) = @"cp1"; + +/// The name of a creative used in a promotional spot (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterCreativeName : @"Summer Sale",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterCreativeName NS_SWIFT_NAME(AnalyticsParameterCreativeName) = + @"creative_name"; + +/// The name of a creative slot (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterCreativeSlot : @"summer_banner2",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterCreativeSlot NS_SWIFT_NAME(AnalyticsParameterCreativeSlot) = + @"creative_slot"; + +/// Purchase currency in 3-letter +/// ISO_4217 format (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterCurrency : @"USD",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterCurrency NS_SWIFT_NAME(AnalyticsParameterCurrency) = + @"currency"; + +/// Flight or Travel destination (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterDestination : @"Mountain View, CA",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterDestination NS_SWIFT_NAME(AnalyticsParameterDestination) = + @"destination"; + +/// The arrival date, check-out date or rental end date for the item. This should be in +/// YYYY-MM-DD format (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterEndDate : @"2015-09-14",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterEndDate NS_SWIFT_NAME(AnalyticsParameterEndDate) = @"end_date"; + +/// Flight number for travel events (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterFlightNumber : @"ZZ800",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterFlightNumber NS_SWIFT_NAME(AnalyticsParameterFlightNumber) = + @"flight_number"; + +/// Group/clan/guild ID (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterGroupID : @"g1",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterGroupID NS_SWIFT_NAME(AnalyticsParameterGroupID) = @"group_id"; + +/// Index of an item in a list (signed 64-bit integer as NSNumber). +///
+///     NSDictionary *params = @{
+///       kFIRParameterIndex : @(1),
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterIndex NS_SWIFT_NAME(AnalyticsParameterIndex) = @"index"; + +/// Item brand (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterItemBrand : @"Google",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterItemBrand NS_SWIFT_NAME(AnalyticsParameterItemBrand) = + @"item_brand"; + +/// Item category (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterItemCategory : @"t-shirts",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterItemCategory NS_SWIFT_NAME(AnalyticsParameterItemCategory) = + @"item_category"; + +/// Item ID (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterItemID : @"p7654",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterItemID NS_SWIFT_NAME(AnalyticsParameterItemID) = @"item_id"; + +/// The Google Place ID (NSString) that +/// corresponds to the associated item. Alternatively, you can supply your own custom Location ID. +///
+///     NSDictionary *params = @{
+///       kFIRParameterItemLocationID : @"ChIJiyj437sx3YAR9kUWC8QkLzQ",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterItemLocationID + NS_SWIFT_NAME(AnalyticsParameterItemLocationID) = @"item_location_id"; + +/// Item name (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterItemName : @"abc",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterItemName NS_SWIFT_NAME(AnalyticsParameterItemName) = + @"item_name"; + +/// The list in which the item was presented to the user (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterItemList : @"Search Results",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterItemList NS_SWIFT_NAME(AnalyticsParameterItemList) = + @"item_list"; + +/// Item variant (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterItemVariant : @"Red",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterItemVariant NS_SWIFT_NAME(AnalyticsParameterItemVariant) = + @"item_variant"; + +/// Level in game (signed 64-bit integer as NSNumber). +///
+///     NSDictionary *params = @{
+///       kFIRParameterLevel : @(42),
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterLevel NS_SWIFT_NAME(AnalyticsParameterLevel) = @"level"; + +/// Location (NSString). The Google Place ID +/// that corresponds to the associated event. Alternatively, you can supply your own custom +/// Location ID. +///
+///     NSDictionary *params = @{
+///       kFIRParameterLocation : @"ChIJiyj437sx3YAR9kUWC8QkLzQ",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterLocation NS_SWIFT_NAME(AnalyticsParameterLocation) = + @"location"; + +/// The advertising or marketing medium, for example: cpc, banner, email, push. Highly recommended +/// (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterMedium : @"email",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterMedium NS_SWIFT_NAME(AnalyticsParameterMedium) = @"medium"; + +/// Number of nights staying at hotel (signed 64-bit integer as NSNumber). +///
+///     NSDictionary *params = @{
+///       kFIRParameterNumberOfNights : @(3),
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterNumberOfNights + NS_SWIFT_NAME(AnalyticsParameterNumberOfNights) = @"number_of_nights"; + +/// Number of passengers traveling (signed 64-bit integer as NSNumber). +///
+///     NSDictionary *params = @{
+///       kFIRParameterNumberOfPassengers : @(11),
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterNumberOfPassengers + NS_SWIFT_NAME(AnalyticsParameterNumberOfPassengers) = @"number_of_passengers"; + +/// Number of rooms for travel events (signed 64-bit integer as NSNumber). +///
+///     NSDictionary *params = @{
+///       kFIRParameterNumberOfRooms : @(2),
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterNumberOfRooms NS_SWIFT_NAME(AnalyticsParameterNumberOfRooms) = + @"number_of_rooms"; + +/// Flight or Travel origin (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterOrigin : @"Mountain View, CA",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterOrigin NS_SWIFT_NAME(AnalyticsParameterOrigin) = @"origin"; + +/// Purchase price (double as NSNumber). +///
+///     NSDictionary *params = @{
+///       kFIRParameterPrice : @(1.0),
+///       kFIRParameterCurrency : @"USD",  // e.g. $1.00 USD
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterPrice NS_SWIFT_NAME(AnalyticsParameterPrice) = @"price"; + +/// Purchase quantity (signed 64-bit integer as NSNumber). +///
+///     NSDictionary *params = @{
+///       kFIRParameterQuantity : @(1),
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterQuantity NS_SWIFT_NAME(AnalyticsParameterQuantity) = + @"quantity"; + +/// Score in game (signed 64-bit integer as NSNumber). +///
+///     NSDictionary *params = @{
+///       kFIRParameterScore : @(4200),
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterScore NS_SWIFT_NAME(AnalyticsParameterScore) = @"score"; + +/// The search string/keywords used (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterSearchTerm : @"periodic table",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterSearchTerm NS_SWIFT_NAME(AnalyticsParameterSearchTerm) = + @"search_term"; + +/// Shipping cost (double as NSNumber). +///
+///     NSDictionary *params = @{
+///       kFIRParameterShipping : @(9.50),
+///       kFIRParameterCurrency : @"USD",  // e.g. $9.50 USD
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterShipping NS_SWIFT_NAME(AnalyticsParameterShipping) = + @"shipping"; + +/// Sign up method (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterSignUpMethod : @"google",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterSignUpMethod NS_SWIFT_NAME(AnalyticsParameterSignUpMethod) = + @"sign_up_method"; + +/// The origin of your traffic, such as an Ad network (for example, google) or partner (urban +/// airship). Identify the advertiser, site, publication, etc. that is sending traffic to your +/// property. Highly recommended (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterSource : @"InMobi",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterSource NS_SWIFT_NAME(AnalyticsParameterSource) = @"source"; + +/// The departure date, check-in date or rental start date for the item. This should be in +/// YYYY-MM-DD format (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterStartDate : @"2015-09-14",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterStartDate NS_SWIFT_NAME(AnalyticsParameterStartDate) = + @"start_date"; + +/// Tax amount (double as NSNumber). +///
+///     NSDictionary *params = @{
+///       kFIRParameterTax : @(1.0),
+///       kFIRParameterCurrency : @"USD",  // e.g. $1.00 USD
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterTax NS_SWIFT_NAME(AnalyticsParameterTax) = @"tax"; + +/// If you're manually tagging keyword campaigns, you should use utm_term to specify the keyword +/// (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterTerm : @"game",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterTerm NS_SWIFT_NAME(AnalyticsParameterTerm) = @"term"; + +/// A single ID for a ecommerce group transaction (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterTransactionID : @"ab7236dd9823",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterTransactionID NS_SWIFT_NAME(AnalyticsParameterTransactionID) = + @"transaction_id"; + +/// Travel class (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterTravelClass : @"business",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterTravelClass NS_SWIFT_NAME(AnalyticsParameterTravelClass) = + @"travel_class"; + +/// A context-specific numeric value which is accumulated automatically for each event type. This is +/// a general purpose parameter that is useful for accumulating a key metric that pertains to an +/// event. Examples include revenue, distance, time and points. Value should be specified as signed +/// 64-bit integer or double as NSNumber. Notes: Values for pre-defined currency-related events +/// (such as @c kFIREventAddToCart) should be supplied using double as NSNumber and must be +/// accompanied by a @c kFIRParameterCurrency parameter. The valid range of accumulated values is +/// [-9,223,372,036,854.77, 9,223,372,036,854.77]. Supplying a non-numeric value, omitting the +/// corresponding @c kFIRParameterCurrency parameter, or supplying an invalid +/// currency code for conversion events will cause that +/// conversion to be omitted from reporting. +///
+///     NSDictionary *params = @{
+///       kFIRParameterValue : @(3.99),
+///       kFIRParameterCurrency : @"USD",  // e.g. $3.99 USD
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterValue NS_SWIFT_NAME(AnalyticsParameterValue) = @"value"; + +/// Name of virtual currency type (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterVirtualCurrencyName : @"virtual_currency_name",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterVirtualCurrencyName + NS_SWIFT_NAME(AnalyticsParameterVirtualCurrencyName) = @"virtual_currency_name"; + +/// The name of a level in a game (NSString). +///
+///     NSDictionary *params = @{
+///       kFIRParameterLevelName : @"room_1",
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterLevelName NS_SWIFT_NAME(AnalyticsParameterLevelName) = + @"level_name"; + +/// The result of an operation. Specify 1 to indicate success and 0 to indicate failure (unsigned +/// integer as NSNumber). +///
+///     NSDictionary *params = @{
+///       kFIRParameterSuccess : @(1),
+///       // ...
+///     };
+/// 
+static NSString *const kFIRParameterSuccess NS_SWIFT_NAME(AnalyticsParameterSuccess) = @"success"; diff --git a/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h new file mode 100755 index 0000000..f50707f --- /dev/null +++ b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h @@ -0,0 +1,17 @@ +/// @file FIRUserPropertyNames.h +/// +/// Predefined user property names. +/// +/// A UserProperty is an attribute that describes the app-user. By supplying UserProperties, you can +/// later analyze different behaviors of various segments of your userbase. You may supply up to 25 +/// unique UserProperties per app, and you can use the name and value of your choosing for each one. +/// UserProperty names can be up to 24 characters long, may only contain alphanumeric characters and +/// underscores ("_"), and must start with an alphabetic character. UserProperty values can be up to +/// 36 characters long. The "firebase_", "google_", and "ga_" prefixes are reserved and should not +/// be used. + +#import + +/// The method used to sign in. For example, "google", "facebook" or "twitter". +static NSString *const kFIRUserPropertySignUpMethod + NS_SWIFT_NAME(AnalyticsUserPropertySignUpMethod) = @"sign_up_method"; diff --git a/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h new file mode 100755 index 0000000..ed7588a --- /dev/null +++ b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h @@ -0,0 +1,5 @@ +#import "FIRAnalytics+AppDelegate.h" +#import "FIRAnalytics.h" +#import "FIREventNames.h" +#import "FIRParameterNames.h" +#import "FIRUserPropertyNames.h" diff --git a/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Modules/module.modulemap b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Modules/module.modulemap new file mode 100755 index 0000000..ef80595 --- /dev/null +++ b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Modules/module.modulemap @@ -0,0 +1,10 @@ +framework module FirebaseAnalytics { + umbrella header "FirebaseAnalytics.h" + export * + module * { export *} + link "sqlite3" + link "z" + link framework "Security" + link framework "StoreKit" + link framework "SystemConfiguration" + link framework "UIKit"} diff --git a/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseCoreDiagnostics.framework/FirebaseCoreDiagnostics b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseCoreDiagnostics.framework/FirebaseCoreDiagnostics new file mode 100755 index 0000000000000000000000000000000000000000..83848561835f3eab29304a23c65c4b14b5e574cb GIT binary patch literal 2787232 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 z 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

5W7A*x!Ab0fvd%hNntfsd)9 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%0AY2mS#DF!X2T&R6xW6!W|I4+MO~(VNo3X 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
3+76-Di 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%0DFMVz)g(r0*XJ|h_WA$ za6M7h|KgVlp!h}B|KCD-S@&ChCNJy$yTQwPA48|LZeW0>icfh2KIReNU=zSP%J41UL=hT3{uxki696DF_FFlYvryUk3(&5#S!=`#i7@DEamhVQZiO{1)IO;70Nr zfGCsYuM>bx2#Y`K8NUP=1YZk08dwJW8n6(ELRx;1{PGc&{HlPLAS`~l7?=kXeE@45 z7JdWeuVB3RTjIr!^$=21x}^Qfc?knck$w)7Kwh%$eQ{6?V2ca!fTFY~DI_2esvL1KW| zhxx?PPwXLf6YGf;#2_(1?89JUr6=|fyNUJ03Sy8LAoigUR(fI&v71;=tRM!70b(B# zTj_~C#BO3ev4R*R28exV=lJiCUSbcin^;e*AO?v5E8RJ02k>*vAX&6Pk^Vd(lRLuK zk~>)@Z~R~1uQC-KPr~{>mATL(VSRtfSxm3*OF8UF6|e6{86lG;-$GumPHWc^?f6^(0}@Vk?W~X-zOsP zL5RG*KjbCG>-$0;XL@}<$VV*C*!@-h^8S^ScL~e8P|A-%v}q5N;xhqp5^iJo&$5U? zRE+7Z#SX$N7=D=f>-#`{!}`?sf2=q{rPud;%wu`={T`ELFo!;UpT}OQf7q~r_Wfpz zir4pf%wt&J-_b|^>iarYv3~A9NtJggCT-EL@9TJ-<=;yEt7LLPyuPnvF2nkMj^S)? z`aX_3*`D7RP=@)^OfzE2~;`s!xLRev{!{^xp>z_fVg{|KemRztlJN9mw=|AFuLziRInO_`gd$ z?A7;Z+$izLU*DJUZPuT@ALDM8U*C5TVp!jAA@3_mdVQb8O)S5@zv2V7UwvOigz@@* zirW~!?F417yjLXp^!*c8vi$nKiOU$T@0YlQ^{wxd_>}tf{Snd*L|iZ#9 zu|4YhAl_trg7Wg-oup6S_rUn87{7?=^?eSb*go|A4NtIty-fKHY`^+`hL0Hji19I& zSKq%N?{P`~!%tN9%lmv19?S68Sl$rB&(q#YhUGmkkzc^@1N4`^AEAu->-!Ksr2SV= zeqYT0!_WtVGgbc9b6|vfrmOHbF~3XvZiW*KZ<(RuXE3~%;hSVUguJ}0EuU7I&(MBH z)~WDQjBjFohcdi{;Xhz(mGm2DDfz7o?_&6GD67P8sZ#NWp{+}}iuqm4_>BzDXE>ko zCo@d`E+hP@#_jiV&jTZh21;J+){C5!QVEiN% zFW&){@OFmf`;ZduV)$A7U&6a4D)|b)(Rrx|Uhe zb0Du;iVE*Web~dl1#J&EVSccOFU5Rf4?lzQ+QUzvy!NoHTkYY^X#e)`0yklMQ{ljq_C{iY0k=NRc9GU{6n+wA#WiT-R4 zZ$^8!hc7~Zw1+=8^u1=(=edUdBaqmhev%P?xS@ZVQC|y;@C%0jMYmmlgCQR_%JUt= zKSvn;Jle2N-g~p_-`9vQGVDLo2tR4qcbgI3Y}ngwgyr1Wp8sV=d#pC>OB&%P4SNDn z+(Ft9T@g>!wzsy$+f%Cp>eh4b-(5)Beyz|`*!H{71yTMWE3U$wk!X)Mq*~i`F6z$Q zariyjn$DEmf;uD7kV>?+#6-fftRrJtv;`5V*5*V*w4t@lO&}|FUgf;`b@7z-YiG36 zk)3-aSvVz?XpXloZ;Y)DB=u$Rt``CGw|X;D=_})1Z{PM7my2qRUx(1b$^cyi=kI2- zjL^WJK*;)W1FePSP-@J}iVdNRDlfron~Yzy^K2ZjU)elXBksx#XYsd#%qw579o+UgYU3+}Ja zI)D5&fM0Bhx3{;p2cl?7DE3ShP@T@Ii5BER&AQdO{aS3M(YtmHWot&rzh`(#yL1f7 zX176GzsQQuwB@XBk)5A=ugI3kC^9=mR({S(%Ni0fh}N}swl~BVwd!QJ2O2*#-_R6| zEzdaKsYbU@$IstnT1VRVVz>o!|mCQq|&vrJQ}WY)6%+-M+bRphkJ<;&f=O=t5mq1}Hb$>?R)IGXjN zmu>=?AJyde8OLxCZ;#3RDYL1dkuK|(`U3ySk18{Z_IL^d9*Qw7DL)2|!2;uQ6nB;< zR)EC<0{?pb8a-lGcQmAu;)IS=49OdsRz{b{5*D+}QkebYk+j~s5AYYQjZ$WQGaFgW ztDD~1(g3^TrzcyN#gdlcS$v(?LfT`zRkdFbHD-}&_<)X)1<9H5m<~3^J5uefb|%r1 zNZABBun3B)ut%QhNfLuX6LYar)j@O13QSCDeS=^^f?2;Ui%H8)dwbCRN9~zitW&H^ z#$z4vh4EBpd&?QIWM`a_swq_dMJP?u?V3*)hdrr5Fs+Vkoe@ZbvksDjq;AN~fGPL?*h zzn|I)MAMG7{1ip&m+Z|JB0uyHh&Ci!I{?}X;~LsMJ|F)!Yg zs*ATYI@1+po5^%ZEVou+{Wlr^QOkhI+#^kPswgRT%^KNBwzWX?e~uPsCQ?n)TbuC< z6f*i(#abGZ@pc!T#UU@9u&`sGTHFh#>TN)V^wZ6=f3OcN#cHMT=C;)8XahPJ8UhEw zns`S?Yz4v|8qg>g*haZ4h*jTBf5Fe@T! z=+(a)Ee$&}&8_H+wKsa22dAS?6-2#%bC5l;xnqU2vwjuD+S-zd25Sj0tuv8C0&!GT ztYcOpE}_MY&}tjX zoI;r;X4bOSF6g^OcM;5}G*_*5VKhfsq(qzINu2X=Je5YuwTcnpHa?*9=V2jNZkNr?QBF*z5Bw~T~@Ckjaa(IT0t36%p`jPbC<#5EVEQh zG)`}dwXBF6qPjR~*DVbUU=fquC}@)R6l3H`dB+mRRjWDQ7`o`G<&6ff^RUki?jq)d zU`R28#&|4=eWVe|Tzn%t;_a*A?TZ&y8)@wgcX=WiZ;3U>t>uwAz>~8&90Tf8?a4l= zaga@AuxCIitSuwfQ3FVpc4XG5Ynnr;q|fTpy>``rjtxT$C!jRPRL&~6K=x$FNUd)T ze`L&*RSY&pvDNDE(^Qrbtci88_0QvBrzy*f;a@L_w6_0X$?WO~87iU7Yk};V#&0?7 zng9ivEz8hka&{y32#MthS;BjX&WoomXl-9<3g{6-w;@<5%VcWp1RUmO`qwN+T&DPSdH_X6Ub`?QT@XzV zwv^1Ar(yt>C8=|vS`aQNml$C>m<1rVBzvR-{|GLRO61@n=D(yu`~JrB;l)H;TMcg;b1d zs!(~cXp*)OmNu;!VSwSn_S&rW4P~cg-BZ2QVblc^k(G?ByuvrfZroNHXBj59rPuWS<_cBz#SL5X2YJnp9NQzcQv` zQIY0Mef1#~)kTT!GNrHnltJ>9AjgNzv_X!@+T+VROntkkZv#{ArM|7uhgam}gEw(9 zAL?tygegmGNB!2LeDaxy_mkw)U9M37>-3-1jXL5*Lfx z@)ak?$6g=eK(qbHm)PWk*PX0S(AJiO@bI71M{0GOvpx=@z6DBM;N*enOE*HZy!F(# zgO2KkKJi}<%FCwCoD|s0i2N#cDmBH=QR8}oQg8)*Q$?}WJ9vUO<$Rz zZwdA7_0+d4k!omdjMM69w7U9?8U_Fr)VJkz#nnR}hnkF#?SJUMe9EFoQ{Nu`P|;kb z$saSQAAMGN6U|tqCR&!an*KZGFy$rfzjL6^_!$0^-^GsMVQ{B<1{AH9Zj}C1QC~0B zG(n%#Z=hn3e7{;gSxpcxr!+;Ex64pqea!Zp_y5>?^RT9lFJSm)fkX%)h)Ynw1W`~? z!=?zL35$S&f{NmvASftmWD~bGAxIJdi%S))RdA(hE$(Pt!lI(mid&02xG!jNskPRh zerN8Tn*`MMeV^z1gk8;nQv(A|_XXY+5K?`f)Xuw?VT_|}5kcTjkvyw;x{HGh7 zDTApRAvUD92Iy1ZtP5ihXm1ac>*ziQpN^xw{?L*{w1*_xr~Lo=hz-}@myMN;85JF& z{}7%RSPgkGJkK`+(obYwAQC70_#G2#Ksfzhs65YRB3y*$!3W}qo(b4d zP!Q^QCR~3zTwh7@-VWDPb0^3q%ce~Fh^k4@I%To4(WAmOO~P>fIna*vh3kI@wg`PS zh#>hx>%ujG@gML3KWob%@ZP0+_07Uf>A{sYVA<%-K(a!=gd?JYQ1I6*d1Hi>d_LwEt%a^VHO$Tehb9-o5W^8lT+NKinQ(`_*-8jL;P zm#l9QuzlM2;2I#=PmwGJlJJ7|U-kG*d?X`w{a@kwYslPI^`We#!=ZszZypMfd8FB7 z9Q=mb5yb%jr#;^sLEQp8KsQi7${IJ)V3G?cTYA_YiYW=lJ5tR0N{U^7n{s*75@@=` zb+$P&kRF-W?XeHi0c8(9Z84fBe93j&96Ll$5}Ij6ft%<1BPj#g%VbA+UkGAdU$MXP>yPYu1%&9{xyy-Xd5sX>hm{D-6Hk> zv~VpHTY(tTSLVi{A)%#lq?nKBFAm$hz)}w|AkX&#$TbT9%DDAVNQGng5<|M+c>C4@ zC)GeNn+6gf7}k)MJ!mC_Y=qH(ib6>kI>spwNQd&9bRXdFj`%+lzsGG_tHX@I^R5@t z>D!Cc`6f#LUiR^_S=Gt5_Pq&-7s{#ZOzXTy>O6w@^>04uGsocz{8m1rXpVOVgy%)N zJ0Ew1%OhxPq)Wi4L=XzD+(4=&+Y=3nCIa8fkY6M7660@bWDJy+p<(HUF9>vKE%p&)b-G`ZV&NVhg(K7(HNKfIKxNl2iM`Xcm9@)Ti*11H z{Ux!r2=_T_ceWPm-&(BxU&Lm7No;y+vFL}1S~$V$U&K0pNo-(ivH7jVUWXg)FFD~f z!hOyOmgZtdLujDK3RE;gXaqxOxRQE&7lQ;Cr{9RatR((RN*Z0vWFjTa<^@Q}33zA# zAt0ob?D-cZ|AXaYpRLJJbD2oVIr9RfWIUy0A4q_jr2LDLqAw{~V=faZ*=AmVl>7o8lyRo&{=j0gk`9yM!96vtegte{3 zhPM{G=3m5Wz9crjwb&Ps2U|En`Y&QVz9bg?P?51GA}6eCE%q^F?Jq^b6@>d-kADpz z*+Oh^Yq2Z-MJ)Pty3dL|)>>>6B$5_R2>2JVZeJ3cYc6&ybhvNL3y@cGTI;z4Y5YrG zIe~DW^U7p%u}DvE^8%#Dv9+F=|DtE?m-KWn7mM=6N$5e)x1E6j`gVVqx_rrY)@Nms z+kudi`*&2UQga8WBt2_D_jBYe^C$O6?&12_a^uV)Tpwx(FPKyZBRVBXA6lacAZ&Ar z2xOuY+E^ge^W*8z%jgywCV1IU5Sa&A450(tK}AB~4l*wa=AG>-!u7XgAFt3OJj{{M zoL>J1>gWym3!#==%;;?_9AqjK8Ve(Eq2?V!6MGpN?jbdqk$pTJ60o=~RsWQOtwB>I z(&*z3q&17n^I|Vkwa8m+z*8ViwY%xww#qnpGCe!MQz&pm9aLx-^gn2sEih`BCi--R zs5y8c8d1obO1d2GGI9Hn<(EM~8X_uazaG{j!*sLN6nx3`$b!HUKmmD#ZOBK{Bo2wa z418NCJ`mIs1ht&aAuB+FZRkI!z0n;2LElVGg1dUq9=KRU*5VCH_XX|efiO=)q&@@w zzreMM(!Vt`ifkz?3+{^!0^jjY$fx?-k>vA_J21heJX_E{oV4v>l>UE_`VTFHoJO~8 zg5&LIP8^&C?R_bhNd5B`^ze)&@D4OLRC5?4WrWM~jR57~GV<}yZ~BTdM$VaZG&vnW zl~WZ)w`RZy6~6`DfV2$pw78puzCcZ;;jiKUY)VZ=g}Mptrbo-l11CUaw47;!W+Hsa zN82T6Jj=NYQ5j{Rg;JKZ0)8 zThoVQ`YfQoK+Lw1By zQTqL^Bx!*~C(6`Pig7<;M2W8jBaA;$`dzM=rU+;tUpl}@CM%~R^iHJyZ?jB5KUBqr zA&0>;H%Or5>>)CbGy`SNW2hn|fLuWW$de?18iE8+Ba#4WeG))nLjow|NWh&2L^L3z z0RatgX@H;slom*Klu}3lr6UqRsf+|r8YBUfND&Z-Y6JCuf%32Z<)>q(@!7?a>*)?( zpnuu{5MeN_06{e%$n)YSa$wxSWybCl9uQiW;Q)hXxVjpRA*PAPV`S7L^assA!qrUz z@V%)YhU-J$(v~dwm@y)};Mm)DA3u@|P`(?wb9lkGZ^18MPc+zbm<^&@nbe|HY16Pb z=nw=8-)7i=c}V}HmR6znIOK!$Xo?vgD$!#r*w7Z)kmq|H`U#q!!0^&iJ(_~#`Bnqk zI4hy2M=)W5fv^$6jGRwAr^TaJG!z`Qm{BWTs|rgOKsGPTD#&d86l;CS+cqn3C0&wB-rvK;%>_$B-U| zdJ3L*Rl~DD<0Z_OQ4`bCaI*POn4pLA)LSh2B@5|!F#KuNQ?TfZuT|*x8gb$Je_BLK z9iGNfZ#f`*O2Kq;ZWUTaR}AfaLmX$oAM&v%6->sb^ryhjgTP!<7#mUWurSsTsrQGZ zydJVoxITyrzKwxY0z7Sj=P<Wv|Ku2~SP3O|h$B7wVr(r7Vyow!&lw2^<{nDsQlM-p4Eebr zN*ARc0D{s0eHi&B)YAa2GbRdM=m`+2qlMD*dZ-)ud<0F;Rf|u+v-3aF#URFqvIkzk zm9|s{GwP@A#wPQFriRyPvtjN7okt5NG#`IVHVKHr_fw>jD^NXjqm;L}m^u|vr$X{H z30jxFQ3G2LSt)rk>)>@69jJJV`&|BcYWbA?lu1S%Fqh$|FulzK4-Q6+p64rv(T&VA z;G!?QdWCz*e|z`o@9&sA^9ci#c8qkHT9OX0WR^wr~9^H=Opds71 zoNf+iW80jSBy->o$eDS*XVHj=WPIX(qxZRy1)+v0JtP?4E#%m^7@qgv!Su#EMe-TC zdH;oXzOwxcc$bzw+$hQqTJaI&K4?V-%zaTSz93!rw6}?dYHWlDGW3g_i0p6N*dLy< zLOtIYGX2~FMGm?+>?C5}4*5UEH}_-@_U$;q45 z^dP|dq2bh+eKl_x>7BwgZyzjEi#gh?iH=jwM=#y!gg~i1ZcVua@*{}=X}IRbmZw@mW3&2K`d9@zV!j*g+Ksv?^Xn6??QQUPKk6pH=oeV-#bIe>5bL zSrr~EEH;qO7Z%r0r!o?SUa>=fkwxYY!4M;`lt=2DTXw;Z4NrMbt)6mQrqMduYvdVR z_VK&FR0JynAhhi}bszxwc|K~hgYX}EAa&Hh2?CMAGys6^#mJ)>{-WD*lIMQ_7zX}M++QYMJ>R1CO zWG{)?1b`895-yN#5_1s%qg70hGML85;9?|PkjKaG{>Ua+O{7(K>y6qsXv!WVN9*$KFS*$H)Ag9|x;ixI{jDvq2< z9-(l7q>-3dxIon=kICkk*>GVrM~yLGBWWnMjWMzVE@nU>iD?JuuPIsZtw!XSrBT3<0*ez8QQp}#6m^vmoaUK#2i}GPDT^a&g zsDrgubJ7!GuYzgGpgwpcwGj{^lfjCC`RF5lbU`@;IU)q?M!W72VNqjRTpOvdXUqv( z7a3`hx6BD!TpOuK_nDKmEC9OT4A{iL?4fCda3u4GAH#5>wD7iN=zQwA8*S$?-(U=r|Nu z)K&{{H7aBn1$UG7?j|LoU}fB_j9DW_je%7iXjdj=G^!v361^%8wqMMeA37WDftWyq zk>S!8ECLE5qId9!k!TTz#FL06DMaaWMAWV>qGS}A(Ci{uF_@kRf60Ys{vuFo;`27+ zqZXi>_`rSSMr5s6e9TzTVifqs+QdWZA{prZSHqzodYuCrf6NaWzu1i`HKsL8MB~53 z_%HGAz<6@*ZKi$Q@93FFbNzxhG)-@*7V+4m0PjrkS}q4`DbQ~^rC<_C@M zh4E-iF+XVhfdAkR!FV(qFh6Mi7>q}=67z$`D=^-ehA|P1pZOp1voQWk{$KVV`Zr)a z8i>pfTK^%8|5E#%{SW;O|DnGb<6$=5;-K|&dQip25fD?+cp=6chon|`FN`-1fUWR@ zF#b#JGaTbNn2$cu`p5hSelo^?DL&Bad31aUpM~*X>K|H+|5ALf!1y+l8slHu{`LRC zza8Vz&~JXw{5vroy}dI(X#6pZ|C0T+|G|F?*p3BmX;#cwpm_xgf;i~fUOhw<>Py2U})@2CIZ z{~6<5F*m&qj=qx-VZ)^OEXQXRJ{RLNtz3kGPB<^nnK~zZ4&DG0jQG+PXT-m3iGakzoF|PSw-6%c zzy`UnZjqqo&wz*sAz%}Z=`aV3hpnqp65%={4W{8EC_=O)KnUfMXta!rfY}+EyWxo! zP~&Z7sJame^9L8DB%_jPM z!@4-=Pvp*t#?4wNyXR5vOH7@Wn2-!}ZW;}{VE8N2p)um2zG?pC=E_jXk&!|3A&g)z z2JjNH#%O2@ccL2+uzkcdRBxkGu@KTTqe+)gTbx5Lng0ousda;(#mRn4SD9>n+_JP~ zaL<{F`Yi-ndLq=83K6)V0P;>bf!yGlP|i_iq(D_+0|&TINuPuLJ!=l!MnT6{D3#Fp zKSP7}F@bQU`Uf=4=g45+76{7`)6h*`V!{x#>JRN{@&#(7lI+~1oj^qI$})ORFx+FO zPR&U7M{R`sOznf{4=GWRK;~|G9r0{0DwU_>a}GXl!{-C|T#e5c@wpzKpW!oF+=7nw z-qhI>p9kRcV0;e4=TZ1P9-pV;vkIS=Sj3lIHAZ86Ru>vi+k3w@fEw-Ot zmrd7zu2)C&MBD73{n5QuIqe^xR^_z6T9?!QYh6yq<=|Fw=(rx*s+^Ad*5!1(wU$H2 zUF&i>?nbtfPxtfIcB;WAXzKUL^sg1and?3as-TpM|FC&X}*@(ny$wq}aS z_bT>K#!+`&E~{ZjSPHxbtYGBux>;}?oY{HtD%VhE&Ncva@Xo;S&TZrQFDJOJ7S1s3J2g z&L@78J2s2?O)8t;435nTXi%Hqik+@8y41^U9)NjpDTg+4yaxm%@PGmUrQiciGsE^d zA$n5b^g!%b3!eX6Fz6OQNF-_IXK~Vyc1~s%@&FwMDw|vpVJ)2{%0=89%p}lUbwf2RudH8eUwes~0(vBc)A+UX+vPUwO{EhIzvejGeJn!FP^$}Eo;oJZ@xzX`j zYiUIs7$D}xk*>(%EI|DlI=Hrv}2ieA$BI>2?jItC_2ST8+VZTB# z#*)kut)qf1S=0C)K}5J=zdDQA!0RU{B-U40x^z-`*Gt3MO3ThVJy9)Z$s7z0DWV-r zKlDsB0>*4KIk3->772LvIjSO2yHhz0MG|(7MCMo6CTLTnFgvtJ;A+pD7E~80SU)}6 z;9<|UTr2XaW2@(P=S8|k35t>`4IUTR+2gv;0N@H+y`0dC2*MTS0$wiRR-%L@?3J!t za^TP1oRY$JZ6jCYTjv1Z{xgmYAw0RWl7y)eP7*FsBFW&$aG&TFW!Ek8!^e#t4}C7O zee455!>7Ktmy0S16^rX$A!JCcb+UM#h?DH865XpNRutN@bV1oXk+siV*W{({ikDxz zh38Bmax}1OmwT`S-_cLnSyvTxv0Y5%y^q5Sxr2ivwcf>z1~scqL!$@D@o}SgTb08H zi{;zC4g$Y);j(}93tQ(hwCMdu{rZO+3zZF0W`22uv1E!M`JI~&K}fTQ)~Q!+>9Hy2 z%*Ty2YaJ`beQ4v$;p@0|E+Jf)V6FF)XGgnAmtLYsz8Beja7*nTrd<8CY)hLq+|h#U zGzzoaO822ndk;R$&qR#zH(W^E*x^J5SOhNzvZgJoUeM4>cv#Z6QoF?4Wl3grVK{Jwr-Z9OsxFE{<~PPGFf4s|(@~<(tNa`YBZL1$KnbPQiXY zAP>xl*3JG_U7=>J>cz0IT;CP7+92Nu8-t*<{=m%NcTcL`$t4yn{|SsywRfpkvv}cg z;)!CZe5o#WlYnK(tBDf}9sLCPh2K_Q25k27y+B$7cB@&x)Ql5bIT1=#@wX*{yl~fo zNE>#(9g*-O?{~hVDCNF;Iy63u$1gnCL$!|#qQM93ecMDZc|j>w92+;DWAW@Ie#!<_ z|94|@hjIAP=86uKv?=ScKKw1_Q%#%Wm+5BX>yCS?L1=bgKTh3)N26&uQgD8Ifhqp0EAFaUulG2DDcosG^Fyu1MC$yMWnbayqmS`sev&neXkJ6{0s({tsX2Di<8uiuphL@zzTS45m2n@$K_MAv7D0*(?ls}mYknOa25zSsVdH_ z27XpCXRe$B157G~l~~Ueak9!>cwaSkOe$%oRClOv==hbw@qrp<=4jZemz&_PVDMF= zn+tR!qX>O%eL`wgBDF3tSe|IMzANXylG?s3UKfu4nb-gkbFz#cv;~H zV(Z0@Fv`Fk7Tkc;OP$X)IzCZ5!O&K3aJtplu?B8Z)IjD8ofzmXad$(^(_nbuL~Yf6YN)3HE>t4 zX3ATOkz9-MT#J5hmrTjx%#GI0eY*s13Nm4cggJnml^G7hE(h+{GT&O5?y!nDXxi}B z0%ki(k#-6U(}mh}mA3sQFs4Tivv&@&vkDBW4A5!(^Q-z62K&_o`|XkrPFCKk6) z2X}%>m`*Fn`#8B~E+tK=O?zu$(q5!(KfM{8X}wity`OaEA0qw}3I9YL|Gw1rk<|8Y z!uGzw@~*`8waE5y1OH*ObyFe#bu|B_fZrss?Nw^3DFJ3InJ3_62(?pSlAzSWy+Hd} zNVut`uy6^#Nx*+4u?11ka490&`%308N3-?4Xnv!Ve}Ym<*nXi+D`0kq zZs_1<6JqAS+tjDYz<*Q6pG{T``5lS?A z2AgCxEOYD5i*H`*$|Xc-&`Kmivn3Psd+(0R`^I5756aN{%glj06jD}xHyO2cXbH=` zE&JNgRZh0^RSfT9p%g|&plZqruP(IgGz=Tn(<<7PdjMJ0<#Cbtq|vHo@R-5piHEIsI{!~(hUERYwgR#$O<5uC0XcOM zIwlgWayri+H&3#Dyb*gx7r?$?#E$4SZoXu{342N(kYmE0A3VR7+zb#LZdkT``>sIY zwBBvFWDPP0rk!+RK6VXZkhX5L9xh<7aA05S80Sc~UtCkUhH+&Dm;g0Vt+ebA$okQS zIm*T(+j2r@_J>YcwLn&Oy@3@BU+rFf(fnPgjo)fEn}B8m@2tJcZ%l8yiS)Z_H>a&P zSim0i)*!ehnwvTB#PpcpW!)I${(4~7hw@V?$ z^>?FI+j7g_dhni@{ISrcJUEN4WAVMp>U?n1u#STyInm+koopXlj_Jv3GLhc|aurPu zVKfKoSZu1Jq7htDZ_?I@1MJUC?1TB`!G$LFN2&6HO4UrGvFeAwe$~W2jPqMh-YXOP z9$+svvA@lbAE=C;V`MLR2JF{N?29-XjCrOOdj~BRyxY`bZ=l6e=@xVUC_;Tp zI#g%N6L)Mo{j|3>JC>s?1r`h=xj<%R4L^FC5aR4U@bsii=q;dOv1UQ`VyKWiV?88ps|h zC)-KZ9G_}B11k@KFybc=W;m$4SJ6zn&+v5VQnvUgm|S(Ma=CTzIXe44?A5a^`vuDW zORcp&muWf87eI~>$tgUnlxmEF#n|2+ZP_n@d_<{rxHGSePS=qK%fba`d&NMy>LdDD za+I!I^NmUunFPss{j;jNvTP1^p`p?`kKKsu+4qWh(VA6D+Y{Co6ud?XZdup3^N!F8 zc*jA(MWo_v9IvflY zygYWvF{sPRl`QjcxRxrNp>RKp!$CePH#ECpG8&D4QJaUui2i_axkj=r;x^sFw&^20btZIG=AjS zj_tv_Ysx#GU5*43CB`9D^-dY1`No(7AO5C&E(mfr4sx#ti4I7LXa^VG1}z5U;F|Z! z`;`r;#^f0B4_IwCl%AP<^Vl}rkLN{Oo&Eu=eu=EUH(0b)Qb=1}_&<KhdX zy8lW;1$k`631~1@Zndv{u2l!J4 z9pJ;zc0swL$r*wVn;onxsJ{AQRrk3uRi@f&`-Ak+Ch31iOgtnhn`mrN`6_79CB_!L zw5{5yP$NlWQS+p-yW+8THd#uBF_{DtC9Ctt+ujtHMF+v7Fi2j4G}oy^pm#xh)GWF*iE!P>zZQlX;eww@~YiLpV429oeR}q=}>t8fWE;wadccW%yF!}vPpJx}B z0(llC(9D5lkrTH|c1?p!56DTdGeL?G;G87-H!yTOmWcQJ2xh{$mHh( z;E8yXCz_%r9*`89JTYYbBfcybdqP#*-5$;2*84Il1Q)x`%^bLI_{2w&8z%D0--F|5 zau~K=R>xWeA2w<`{SdSznY1k&G4Z0@)FqZL-V~72$rxPc|FMUVeqan~XM2w$!DXhZ zXw))de1|pu zJpVPc!<_3tON~j(>uGaOR@Ry3E+yxI-O0qB-=SjwFTlj^)B8wpJP z`VmbJPITz#t20gXQw~1jtF^{R^FDO)K0o-p(P3d3dCvt4Ob&ZE!Ov`z*#4DuLc82a z^eFM>Cm1C@!YHx9p^qR-xQHHO%g@9w7pdZ4jJ;D{K3P$7$QWtGsTZ7>LSv+DU!Rxf zWVyiILfjO2bS#wWoB0BY6Pt1T$*I?>&O;;d>3QRGy@6-V+)-h8I z%_?{?K4x%>Jhf6z`9HB9%DU5e1LkCo9dBLU*4n;{A>)F{d+DrRdzOpOxU*t z!@5}RHL?43z9}}C*xz3*uT_+pLgw=R3r<0fCidM0d0leN*k=HH4b5J6w7W|%WYWKU z9gqhCoQ3^GGlctG{cxgG9iCfKRhVY%*@x4n4qYO?wSr)%pk?K!H$OQQYLl><%|&S$ zX3fg}yZwbjd$$qbO!{{A#I2I`6WWUKUH9Z$nb*4Yk)^p>F4=G2AYMMvc})aiK+|V*7z*8eZ7sX0NNbSA^6=5$ zX@#Y1l0bz>c>3qBkMRsux-JU7%LC> z$1oAphY8-=GV*?&m8*S>O| zb?D8_cR&k$2;2VsTyX(RMdaw<=^y=7#wsIJ71T9oS>CBjew?|Mnq}YQdZ@_HWhgB^ zXHTbgkdg}+p}`4>YwG>3wilU%B?}A54RKo>GLylULd`^|EZAlJprS(rvlw9HC#cJ~ zF2#i%2noF?MB?i5$JC|PB61-k<&c|y$;!Y~sHzHBz|=SYlxz04Fm-*G)aZ^ag#5Mn zFbF{hCFJBkdwyuqG;trAU$!uH#@Fq>f@fGz6Ou1@)1kozQC~uiT#Syr4sDNpm}|L- zK|qv~N8vApH6On56xoOfwB~?PbYFC_2p&3F7_F@p{2k3Q_sLe>D)kI#H7o^UU}RVb zZz7Ax#U-Ne#CF46_$lVj4|iKWq@RlXeFEfsX}m_-7|bVB9s)uJy1bl=+#T#93-jA_ z4?D#UW=fdRg~hZ^*dVf>5^T07eN=1 zVA$IGdEvTC#Zh6Sb<+LSzCFIp-2V7?AE%oh=N~qv4S3w|M8?pymzunMBE!aRt)01U zS!V9_L?;K~6E2%5>?oc5$iOv3hxI68mJ%kP&s3Kz8!1^5&A4Y#xTa*;=xB== z3gqv&W-pyg%y)Pq)uuOKFx(>c5e6HyUzKC9xaVNZv#3VfA4~Et)6k_0%e8)(U~#>6 z00z_iwEh@;>d&E62`xsJSx{gpE1(#IBC8h!W#0HQi&qrLPfoQp5(?W>U=1s<8P=uW zODxs6GpQn_GZWQ2*I#!BGrEtYNP^dOqDYE+aw(Ga)0w0i{?ok_$!30&GnP=`juJ1uE-NNI#5_=&$0qP8uGj&&^>Yl)FXp_!;31XuYZJj= z7>wRxO9@@hSzw?+>mv;q6i0~|l((W?+ZqX_7~ErhRE|MA>%A%rUa&r1j6qMUEd~sN z{AL=o+99&X!mM^gV=%`0pvnZ6VNe!32pa%(RbUXRl3*&GhQSjAKN*Ajq}C}IjAnPF z94L!T#YLk-aS?c0-qC1?3WG6L+YCmYuhdkmflrGu`{82iO}MmC#NUET!Mtr4gt#fi zAQ-X((?Trl!ll36??h>p#qPyesM3B6j?U;zS*+kcEW;o;rw)U2tx5@JT%~q*Xr549 z1cY)7s`-zL=~Ac?2E|d&F%MYWj6n#_m)N#nr*@%)m++seFbIuXjKK>2GXn-?v7&6s zInSH{vGGK_B@)O_K~AG^=`x;u#YRsS5p_AfZ_6my>iyqdzjLT}LBr1v+p-S9% z5ZP1_8N+mpeTA_QmyV*os-wJ&d)a+-mK0da>|Kh%=xoKU!{I_K)VWzEG?gx*K<%q~%wAgM-+;mD zY>!76EDH{3Hp~2wF;&asu{OVNg4;HaHKfa(+~SK~CUhO+KcL{eeLl zy+6CxTP_7ct#aBJOA9er9PD3;!ClN=Wf+WxttUxWg*nwT94YX$Qv-bWOO|qC>aqNM zW{(C8f~%TM;9CrC$?mCRQd(~?oC`4sr9~J73B?!$14=Onc9&uBDAS`HgWxy=1|d8i zVKBOVUu>aAT{aCmHK_e?6?zl}`6Dpzncn8Q{T{|aw;8OI5w9)lH@vke3-ol9FWgl1 zraD#iO#hg;Zhr;vWq?<5>Nhm=%L473o9(|5jZKj5I-f|L>OLG<3hn1qFQYTksb zc&6`m-9GA|+lG`8Ay+q)?hTxqxG?_Qn~*in^nI_}Pd(^XmolO>hUqH(&ic^FLSokL z8^U1b{=?}Lcx~z)T(j{6MBbrO2yv?|LM)n!5bu5=5d$g_;<+IZ)pcP|BMi4M<7u%PgEns2Umo6Pl~cCLmV>= z6@ci&Y=aP1)riAif;g;YrxC)s3qtr0M2MFXZ$RW#lUB9$MTkfe;Xl_qUcOUm7$Z~v z$Yf8jus&$zn9@F^zGtzJA>u4FpI@g)UHw>les|k_Yulb%e{9(FWWkB7y+4jwyzrj`yYCuuadTS{~<0d7S=s;$I6Y zt~MTh`u?kpSMN&(2F@$E{jB3Zi+}scDYx_eKi=&3IJEur{T`DxWN!Rn&J5?teU3bx zb@Qt(ZS5E$yKAq~tAm7wkS)v86q8wOYtLw{9r03Cm0Ws87d&IfFS@E3yDsR0XKuQp z)6Cp-RaZ50(@h;KWlN(jIA!a7ohD`LV_j9smS;NFtSv8e!LttjsjHf`>F;oH3d7Di zpD5JX5ni55sbmP@ZrOAGh0w7{+pa81`?aJof9d3mEA7`M_q)A5Ey?c^&m-Tz=k}G$ zD}&s=PxU|SzGKfX(ssmwNXHA2AzOYq8o6=x{Wp7$_DpE?YbgE|(;` z6s^&@Rwo~19GJ~om#dqcQ?`G=@!Qig|4xh?s!^8rd$X3uz0|1k>>NGh(h$Fu428d= zWE$&iQu~RC>0=_MgSww^dF5YvJ$_ z-#k3Bc+lKQZBDJ_{+eu6UC;5kZ7a|%E8;3rH!YUFnx&ulM5h;Ycf0n`{&)UN!qRT& zmKfK?H~u_W?r~z<;3!Ts%Lwj_a3w6 zbh^`@()hA7I_m;e{X0pCD6UYxX5z`1sNl@`F4I%{?Qqv6b*!43zoc$MSW~8h&dQE^ z$w8O6X2iq*Ig=@MNsl;~J0h89si}xR;yR&fyAMEe?@23uY#h}IAW5h8<4)?hn+7-z zbs61e<(UzCjtt!Pbj;t?u_-+hT(-mxnw#k6#^lAf7kCWVzE(GL{1Qgtw9V@j;xUiM zAMD!SYFuvY#Ia5FJ%Tz-{nnzeyH7Y*G4f=e&6GDsS-4|pbJrt#Za>^~tZCcR`afR1 zp0wthb4Qx9-tYeTvH#85rgx5up>tNv>-=kcy3D5{y5u( zwU#-Ll?#Ze{X~)4&D~~tgiMV*-APkLga=1;Xj3{Zj=N_<4lD&qv6^nTW$k2n33tI> z$8O>R^&tB@J{LOdnQi4ltsHchHNZfTJUCIcX5PD?UOsCdhfB?ud2?y?C9Nlwf6q}f(PmIuPr_f z!E$%PE&ip9(TQtEOpFRzL9mkZ69>(`(n(&?J*05;-_?Hxy9BLUuZw$N|NA#Ha=@hI zwYv)}ri=Pnjk8Q_Qe+-WS#)mA{iDOz4nX}~^LodsA0}8Pcdry}>KNyqy*uUQ++K%7 zA>Ol?OP%tB1@$Ry{eFGPv<{74eR9y;#ddAxuCvjxr;GgKU2@Lo+bztya^Lgj+tq!~ z{p~e>e8=;rU;3=yy}9>HoQ%5(1jEQoYL{`f$$spz72UO-->c)Qr@3r$bLsA~sc(R4 zUASThp@WxWYh%1b+fToKecfsG!=IA<-}Qi?e|`AZ_el2P*<_4#)9eWFn6^gtx<7aF z>hqV<{N0~zTXX-pq_fXHMLJ~?deBlMU(hP&Rq05)@NSF`!5eo+&*2h9R`qBkn(MB&t7mfYUAKvAV9`u zeslXC3;?~(-Jf%K*^N^7{QLJM$08%ootye@!Uo%mJ4bGNz5!+O1>2&U#Vu8b|%uDA|=M~wk zyHxesD{1)G=c*p=<&S2raO|!5d0j@wRLe>}J7mtUWreg5LR^_d$p5)Z%c z{kxshpAQm`P&L|%9Fg(h(4uibl=}CC-CYA_SjNtatL>wCG$-0=IRDbQ;{D%EUj1`b zO5st`2T02f2gB`V|A5H8-nXZhzK{AE`eXXV!0pPMXJx@l<JzmxNTKHPK68qpHR6*Vpe1KXZ){dVGtGu^*m)b^}<)XLPM zJ$LSZIn-m{<2qmxT2#O5>93;v?ygE3?*DZE zt6#5-PkVOY^6)C}5rKc*+c#qHN48J2jMHs@bZ}zcv*-}}*meg)V@4JDUI_2?OTQtV zGhWApcl|bf&lo*&nD3vXM~{llh#fN_q)CK$HROJW3Vi{OORy3FQfUtcg;J;S!y?H^fGy@jRIZl&UkYt+9wXDFJ z;J|!VU~N`DtfE@T<-l4MB`h0Mve42qk=CKsjt^gZHcD(~OKk5p^P8jj-hyhUTd)L7 z>{O|6o+i=5%~k+>L%W|f@Tg{B4lAIxxm~85voML%AFV^=^jD$vCTKk)d`1hOux4rJ zskBpI8Hw|A!6&{0-)9G0W(Aa0@lGdem2uisr3O|zX2F_ASd3Pzb@+7@EWERQ8O^^} z$iEBUj*9qAPz#Z}(~SzWM&=?cPElwe0L4Yql)Y-e+Mmox@3zp6AEu59{E}7DG*ekCV}QCA7H4A*`S6OZZH;nSU2OS)VV0-(ZJxymPoH zSjTf1;NV)gTzaaeCdnn5+s*Q`S5^RJ9p?_%MomX+JquGGqHED z2yYQ$UKD|TM_Gh+CioBRDA;cWb~K@WZrKC>inZ}qm_1Sxr^7}IsUEZEOi4&oBuqhj zdnnBng(*_wk*eT1DQF`X5M_>yNE3~Mo#xP14Y1`4+IEDpnA`|N1Y0-2PHyS2PsO~c zNs81dX~_!`qa%Vvk!W8#*rFmOQG|Y^T9ircQYRYF$Fq+_@T5{(X$$+~h4$MZ$Rd#`Mw<{Xz<*S9NIbpi@L zLV>E5%k=W{=0!EsN_;B4tLk{wJl5!e-n;_4UnD+SpQ<`h9j|JYpEvs~&%k4NSCuWg z%wq{vjBZ`kZO-Zne%bxY)@KE~mi<_JGQW3I%ItPIJ9b&0+uyr=zkWaWTjR6WtN)Q0 zCcKFG0rG$~w6nDpe1Z;-aTdfWi-H58o0J6)sH@6;;CKp_*TF~luue_vM8z#}0p3Pg z0uQH_{1zTM6Z%GeAatxka<5p0h#-0b-kvRkH!c)ybw$6JeZ===TbIkOrr7&h*Y&#| z@(bi4A4gF_8mC65-jgE|Hdu<;9UbfKG}&!rlIS*RR@{gDLOa$}xT(x%6%vl z968KNsFsck67bTe4q(O$Qj@BSA zCHm#hKBr>K%M!x@D4uw8wW0#AIai1XVh8Zpvm;1*(Z;RpVpj{U%tpYPU=d)lJ$~5K zT$ig>1J+vGFpGKb6Hul5CT6`eb--+Q`YW_y6ho+guFr!FC^5>WLly7$;P7&W!#}eDQnktuPqE9yG%Sq?TQYC zh#>mFneJccrE9feOoheVG89Q}@PHSd@0Mg7)UUHB{eIS_Y0xJ^97XA=bU#bcLc?R% zjgp>b1i8^|t6m@qGSIlvQOcmQt*Zj0LwL)&u`5)89b5%N$Yxe`tJe!X-HV`^SIgbl ztax&}+E4qOsjETFG#OwgIus)4Z(x%>JDTio_E5$yo_Kb1$kMGm^lo*Va;P>EItd4L zlJrXY5w+}fGFz2?wfl??#q&_z+&7@Qt?SQ}{z;~kKq{pWS|?))Szy&Cz!>{)+ED?l zjw`oU4BHh_%LwX@DlUYeRxk7jQdX#)s7ig?yj>OjoN(}zph$kJ%xz#2l6a*D1WLSO zM81$s2Z%V9*FV1k^`$UD;aR%7NV^EkyF_G9;cTJ1gm#$U4~o@|f@~_U728_%?Bi!N zv1fZhEiI+6;|+mX$C}tvv=%i*J~Ra}=%`pYo14{!N4H1(4qCkKhlJH?p;7#Zg=XS? z+EcZaO$(vplc$V zqt^T;syCKa$5~K0sIX(Y$kl9g*k^^q(j&bmf2e}4zN8mzedVsDe}@ zo=9#VeGNG}7qX(fOQr-`^fZ9V4ucXoKj7ZM7`CguCsnQ2YEF8grJ43aR=Q{O*i>U3 zEzCAqoHG$DJ`Gt@+F{xi&QB6L?bLjW(};(7>?w~5*>`+frtN|ytegjQuxgGbS%}LU49jr;ejh8L zYS7$h#q_!%C~GIA?aArjd9KWzakbLecAnN1b4`7~{YQCq18Tb(m!IV7?KqXo^%vVt zYt!K@D1B{GYG|RfbPTO@xpk$_4Z#hQ(lSt5Ct;|oj7l3@C{-DiX7A5bIMGVm)PvG> zcAC3TbHBU`*DNypw3HtNc^9uONf-5U(Xw)e{DHdcdg!wMG+T%vq&EoInthVqQ{r~2 zhD!W!=aG-nPUe=rroCH}mnJZ4y^z^B-iR)bM7j!PuzZZ1Znr%Xsy(XiLa2~q;z`y3 zJUkY5d?s)-1&98&F*K(Qb9!zJ&9}W3s~a3}+I-vFmk!ytz0*x#hCu~WGC~3WCs^Kr zp&|FeEQe(~uY0)6{q1_UWU&;SI@Fv>7^0Eo~C zB19v|stOp1>d-(lQwd{JKLfCLhJmKh29a@qu}A|F>JeEp@$?{XzA9rvZXk?Dnl7MD z+zydhA!!y!8k$x`SHJ-G1CkaCWK}&unz}vGZUxd*OF&vJB1>X`v;!c`a-sy3_5o?? zjxYhMvxYH|&;nV$1}a$72(~>0X}RfO8!G_F8l6BIVGBx&I539RRe`kUi0p49?JJ~o zFpx1^VXPFj1!+P(NL!Ty(jt-H+~xw=Dx`EMkjc7%(lSJ*L}UgwI4uE@c_Xs#khCbM zg4hkD72AW-`Zl{@>O~$35kdR|b5(nGn!p-9C~|>Pm>=rYKW1MdCRijMw5m^OfAnh4 z!hNyP({~c*$5d?iF?-Mii?0t_Fotc-4>Dr+~4LanPze z5X1pN4GS#mO| zG&;I+BeN%8ka`Ga$7ISq7y>Dknv@Og=_kGoDFMyi#@|@!!0XS>peBIPX{y4bo}zYh zU~W)>=HQo?c(W@lOhUIZ*CB~yB6!_3KAX<2cedt^W5NYW5Wg|E+>n=xo4ZPi5=FVH zU96l(1q|_Gdg4&rXSY~jmV5iR7o0$O59P?>F5}zt=+V^Ax3;aItK~^Fb^BC`?9(6e|2txr1ml);+L9Qv|O)7s?QY2qPs z#96O>scFn5Rzo6X3}6OnSUJ*V4Do83vAEAgIXB0Y$wS6l+(VNl(lL)Xo!85Z$-MN6 zWEe~xD33O+>H!`-j66EDZL}lY(xmdZS4_5wIW26x*R%LLTBUUG6M}DaYW!|+Y9e-O z_O6MFa%qoI#9qRw`- zaEYAGUXmZF1P7BQ&4Kb>Q(%hnqz!MHgR47GkcBlnQQ>n`xW&DAte-UeIW4L*Z>)gX z`LJo|Iyy$0Zk(5XRTI<;?oaRxJ;i1p8>Z_hUU!8it*uf9H;<4@&P7L6;KGwh-$S8b zBr1$y+^=K=EuuxqCf&;xyst5ZxXU5tOSl=qA+G5-TP&n!Rp~Q}x|I&$ErltUy!V)M z@RBQg6;m_LvKA6NRXF}BD*P4|Hd!S(@&#VUXi-n%9dn2%v$((8Uhu>e_YVa83VL9X zO|J4_^ox&1GpLy{6W&N}2x{92YrT@jNuMfJg->a&=#EcC>^Z5XF*@!il^hLv=l zl<<^@j{7!mAny0$xX-)wMBA7v-wtuFzRp|+LuJDFv+|T22)wk&&%(!6NBJSVy61|{RN(W2h zyBOoX@&v^F931y|j*X8m7bo?CxFIXC)Ik06Eu30epOHL^}HddZx4Re$%O2CZ8==MGb`vN%`2O9v|7M53-pfGx({@8 z*4eI2(i;O^wMVg93UhBN27-3EK@6Puf7pBXxTvZ%ZhQ}efC$6jEflrETWCr%!)@@^ zaM8d}QPjL-%qS=%HvtvRQ-hF*m%_55iybsAyHi=&^?;g@S&>Vv)5j;H;n;nM768k;DUh}fp+^5yQTK3cV>Tx#?cMs(wg$<+3xCR&J!L5T#E z2jJshBaGL#bnsZJelcsS*PMO*z_vaC?jdp2;>M}&A@SHpmFc|%=45&FIhI@3`+8FcaQsv;T`Dd@VO>S#` z4F|XlZK4b#T8BSZtIh`_{WFG3dK!(3f@v=yo5~rJQ};WsG!t z=j7DuL#h5d@IqIh$hE~0Qy1R}3E1WhhPPsSw(qYfcDTaAcmoKQVJbvYu? z?+`=nLd^9tiflmK6hwjK&SW8AaX>7Bufu~V_zI=qD*$>N6pbFFF!Qtt8V(PMKs;zb zpjS#kXfu^PO{*QhQmlHD(baONu0K^BjIyR)Fh-0$GbyOtPqF9xpk~LLZ4`2rQpkB^ zBP_|KAn_RrU>6~*)2l*GiY03(mOMgAPE*KPPSM{4vV=m;E&~Oy6qz2;!;&+k?N_Sn zAJm*FXim$eFsUmHCJDXKoXzC1=@d(jal#>YKwIk7(AF}FwDpBgHdDxXk|NVW5=$bn zT~z5zgq*uCgP3t3dHcvA_MwnN1rJuRodY;PuNoAv!qG{nTpzLOHOB&2`4Tk}a z9n|pglzRzsQ@4@v(~xT(frjtj0RuW($-I%&v|GvZS0UFp8s-^qNA9-XXxg#UsG@+B z#FLVHNo)qhx<*4uJ&7GBv9tctG8@JGv|iQE|0;2fiq@3<8v~|qGWPegG|e+dB2-Vn zcBEoj)BbU={l65D8|~r>6s_TgLY~)f{SV{X0gsDz7Oyjvme50_%kV7F0E?i%{;)kD z*IpEHR9?dECB%jcO;nvh{A;bS66=?1oajjs=47QuEc7#+2%k2#iWGb=D~q^XD|n|8XUEjHF;(Gee~ z2|rK)_Vb@A_U$G3?%$Xnyl+G6+|V}N;$E-ex@#jY%!UNEkIgqU&FdOs4=EflGSIUi zS&R*}A7Vr8ySnq@8vdu^8oo3Ll4%g+w$ajl)B#+q3D>ySBkL-I^ONjnkKlBtUj}zY z>_`n#1c<-&&)Om{2z3m5TeN)4+knex4O^!%jvlJe798507HCXY5 zO*lK!Es?o?d$C+ZcT*g7JI3;Q*_C6DT<}~NMid**1cf{p+3HYSEy{J-AKv(~z6RrJ zkR_es_rCAeI70gJy4~E3`()+4@3hWzV5~{2UQy4!lFX~6fBu+Z94sw3RZV|+uK5$w z`EZPnpyX10^-w8leLDK#S%!^tEh%1OURV|~?s}Z_r3=^PV@+{3d#ih~ru~#XDE%l! z3y0AtTX?M5&v~cQa25hxIDd-kGFfycw9&b4e-$Rb59nN1NH+iyXyS~79vz($&4CbW zq!Z>zIwhW?F}#-6J|@xf%`k`iErL#yAUrCrPfQcXbF?^~=T6_7er)fg;C;3&`>qY% zn@_9i4^>Xz)Bjklai=}Je~P7l+TAqT{hkXBE*xNLAG@GwUI&&aHqI1xkB?tA)bVli z@#m87Ez;XQ4p{SC=ud@_$3IFa4QVPe4sv|#vNk{0lIJSYza@MeuuJz`s9j$exhePv@55&d#8)>nA^KM$jSf79I{)I3P^V}G}bA84fPum;Rbj9A%O3w|X z{IRBp5vhpu775k;4CltBnt~>FIvQ?In!VN)5@}4a3;qFtLGQN9@#N(vf|4gK@svL_ z*7i`RA=0Qz7AAIf9K3yqanKOc;eZ;Wv3aH~tt%~Xr#n)6EPcSp{mMw~(T**fCKlTL z{dMPRs`F;8v#%`WIwyA4cfL1_uI;5!-ZXrP@fF27$?zvOUOxEyCSADEzp0<${wp8u z_Xc9jLVJ)7s!}6d{U^>I<|&(J%pJela~0R>RqvpN{$sNsEZe+SH~nG1n`xC+T=}^C zL_l)H1!dLPvF)k4xMR+5X^kGUje+K8XYCA@L-)thhx!*}85CDJCxf5JKX^DG%})Ml zubT0x-!9Z8TRyB~ZcNrVkLCX`9??xyth+3|{NNssw*#lF&OVL0nsibA{^-TIqprI;HYoE&}ju;Rk~Wo5&k=$P-E z`m&Y|npFm6xMnAcDFWPV|I zrl-|^8ki>vM}7TQ$Ksc!Ca&U3)0QpU(n`ZtDsCqnd`i(| zeMbFVMWK<#Qv41v{3GOhA(#pe8pB96Nt$++cT;TNnE;3y)MZdA7UB!bh*^QYzQF&ea^g zwzXl~_K1;v5dv;K`I^bUD1523?AqA(;ep#Cnstb`N-rrtGjOGI;Ihts6P^8HJNsVl z>^q_}><>rS&mD$u9fmJD`n=@m^GrwZqmJMQ%#j;Rk*kf7#X{tYuECBbXTQ^fdp~uQ zj-Ufa?SdS^Jp$$ZLlDMZy?>DvcMK5}j@x~G8zM*qlT9^`INgE)bk|;t`W{*1`Fh6l zb$*~*;Hc+oLa>{C&hs^)kB9YqO)z*^&)0-759|4w(AUFyz9#hZu%53813m1(ljxdp zRpzW!LAn=&8fhI(44iX zd|eKcHIZ(P*LQA}!oFwS5w_FlM8e#uKhMw(`8#33GAkDraq8L{Ysbp`b$aR0!2XEQmE7% zx}J0dlfWFh-hNzEJAl+SivkNt?RYBHdNZkgQB->g)EW&`>Sz?HO(FpsUAjM(N@~}T zT0CD30-uxGUqrRTNNtBG@DEaZC6x-QBelcn(s%brvbHaknorKrUrhp)bPazzjnv*l zYF+&hopp$%rckM@85iP!}3N`3=f47ZUg(_pG= z8eN%J7ob#fJe6viMx{O=0fDZ=8@H2%&xv&}WS9g-CpGY!m7?E$&h5A{# z6hDtpv3fl&r=622L>-1}-TW{_lm`P5QU066x=8E-iESXUDG;+?O4rpS)=pyIlh_3k z`;)|OB(W<=8;PC0m8>%1x_Xll!LPm!xh-jA|9zVg+h);KxBJrl@HThQ>NMf86&Qd0 z{8Po4mG+a>Gzw#at7f(*T)=M^aZMdwByNd9thhmU?&|2aLJKx7=@z+g9cl8v_Y%vI z9nr77ySYkNWr}F4v5mr2X*j-Kn0k45#SqiImpI#Y40|{H(+@Dmy69Ted|OCWvwZwD zW!vAPsmi9;$%o*9Y}~cBLohCRrZMG}*IdW@2I&WEGcIWMOv{IM@kK;d?_L*+5>Ifes9a7UbKA;&tZ^vCVVDHec|(_SV70XO$-gGwl+rQKbEx-T6Wsco zp}wHLmw$Lw>(=GUYt63y##gYelJ$nCLs-U7DIuFWJTuztIlSJ` zl$Mbs8#pSj4Pkxmbuem+9>1#CA228=x$`ZnZ5H2C8S9+$+PIe3ww4Cn=e7y&g;bdH zU3SAs_vzg=YQflsQLcco5nt%;bxN1Z3-;_g$`(}|+IyP6E;zLBOb50n^LCf2S;>9% z1HP^bs2fHTEcHmgv3Y^z0aaL<5Z^PTaeauzv}T$QaNqtg-M9Y+hsB2&CsS~J=%N*h zBeY#{87(u$;vhRryTGDo)wGeW6*tpGU>jcqV$k5@Gzr3&z<&O7-D?;%js9C)nePij zu|9Pvtyn|^w~w{=HyLO+ovj(a{dcTbJgIvwZc$;upMhCT;lf~Xbd9}5FixXIi@opC zqQxp&w6L4#;HyvPEmb%MtqzQ64Ax_d{j zvm1L4Jkc@g$`ehV8>>gA^x8?|sTJd?xvSf{^z`onST;U8xmLXZ{W-!#hb_Sl&}6flSlpkmK7Iq-1S#uR>*D6)HdsU%s!|*3$b4x*=}Ie$YL8`~Ge) ze*U;V_a544m|vFGZ=>Rd>FznY?Jc^LfAP`N|CapCRmT3Fqo?k!;7y^MZwU!<9m0?u zz1wcI+&?tDI;!jJqv?u88w>VS(K)N0#ZC6|4aK#PKb8~4dV?tV6HRmlkV47vYpcA8{DXURi zaPrr$!7JGLn0{-)=DBTw8|=p;L%t3dp7DQA+PZkP`K=xa`_%0XRZ*k%(qV*SJN^9T zfJ<|e$GQ&^`=}E*Na_Q|rX1dEPZ_j-fB5L1c1qny(Hnkfec%o(4TUextz^5ndIhz+X24w+FH`-?Zx8sHY3X70qf*+yr+Mw)kT1M?u5YjJ*RrDF&SFD;pNiPDm5L2?lqQ8ljv;PNGmXAy6tcu?Pa-^?if5tD=-UijHZsm zF`7J(&X;}YeA&xuzes=a*p&7^_rmv@Mk5`89|}*~{Olv86C3S)o{um-`DrYsZhOPz zUz>bwvm;gv&gi5e@28YjEu~|Aqo_ASJmzT~6ne2}xlN#r%6DKTC#F~7fLt8*?fo13 zJr}n}zyEXmAWA%-qs0SyIv>!n;qi*&xwOr_^U?88#~$}w*Ev%@$c{{0C{K3hDsbTz zlq#fMgHe;&Yh$`&XYX?Vf%8V~ovYZNS4RuW!2$j)9Wh77+>>WCY}~7_>G}o-5@v)! z+hXf#>@Rul^`FnS-|!kOwaiHo_LAPMy*36p_h$6!RbvjHw?i=??bxbFgQ5DR{L5DG zfxdJvwuWt_3-stLks|8+Z#AqWAzjGM&eKW51ET+*cvv z26(={?>-Vv-j!+(k=`TX2@Qs0IHhA;?WZ8=THK>(reMyAA$k~tDuMz;BSppyVmuv7 zQR85YwB4Z?X&tnqt5VM+&1n*Z85kV>{ENhWNz%Uc=wlmceXsuE!JdhK%;Lej{IEjT z3oCTN?Fr@qO+}?+@ob2B&CgXmDoh=$Ys?Tsj-3>8%*msWqmV)l(-NXvKMoSA#0Bmj z=q^XrBpO2}-=TBGQ{nY1HO(({ynEZVazOI=uy^_@`aE;23HL$svF=-N8$y}konduByfZbc z_Z`8TBK;>((D7hU(32GH1o?*}7}*-MDXHGIZep+R?_5_MHQ5h~!l4|8_$4$XMw}QS zEbra!5Kj#mNA~PBl?{JLR6ja=>unob3+{^!mFn9u?ekk7pDmx>>h4B;HCc2Q`i6Qnkq3T9x9{lN@0e|W~YrCWZcTiD|7 z7B)V#dEv%_e>>7|6&gl4^pD^UzG&6c7xbYAF6XuQJA_ARd7p0e9DJlBAYdX@Shg_N znZ49LtA(ff=77C{(o`NaI^fUF07n}QRxxN?J^;5+4$u~*-1=T8Ns3Os2?2}8_^&jR zuBW%Rl(Z)|2COyD_{n8Dw7q5F`MITY_S>Jp`LR09w7FuLaOs*-|4Rgy=%td7BPow< zt`9!@tmN_?B_TiU3EQcN+rqDDp_58b#5Uc+odZ(l$h&vauI>HaNQ9kEb3l_WdzGmV zWwkAuc=RK>HC2_EuC08JA`7RxCW=AnGQW#%GQ5a0VID5rC>Z?| zlHx6VI*W=wNmx#IBxw4n9t>e8?GzQymiZKn9-+x8Ac-cYp>)L>Mw8h&I)&QlLVGs_ zva=~S8fB|!`>2C%;oIn3+DPZp`6Tuj-K3vSRa}l4u4*7DIZ3%?v=QM&QgR*L%)SCu zbkeR-!2l&jx`n@uZs8vzu`>|cRE`s}egXx}LorP@8Zb>R2!x$YbPN9!owt9W^LAx3 z|KvwlWfFvN_{nN84zD@x_wQjr;~Otjo$!0k)G*#**!Zd6Z6kwXy7q7U!f(^%=`oFO zZv4vcD@#L+eQfnNe$U6Y$8;>L{@(9E{Dm0TO7Z$G5A*zC{1BtBey8ac=%vp?CV?Jp zC#2zz&f!`3qYq&j5hEyt=ee5jVkO|4z*wL^72uC3hwuM03Bo|&(|8XO-LDkiXa%l+ zlytB84e&5Q2X&np5+CTAlwX|^xDAF^(xg% z`geezhIA_Usmzo7hu{Yxy%{|1V;1Gd2|^cmx+mTUUTNol!5hIp20l!dhyG9)P3f1w zQ=B8$I|MxW;SKNu6ucEY`Q_i>DPOKP13b0oJop6W$<7L6T6a?Fd4ToY1zxG= z1@IY$C_X$>zIe4wl!e%{J@ zR;u*uVcrFv?3L|#f%V*}(sPLAcd7Jz1fKfoY4B03hsMtz;Hkaufv4k7?%zQ;NT@wO zfS2b18dovk>G<^XljdDnJ_9_mg-GyjJ3%_5qRcB%B7V?EEP^aMu>;zM%Z0S^(Wy+A8?>c?LddPsi;cs=LV%75bfZp{B7Ws{`?g@_0tpJ z={z9&r}r31f3r&eSn#C(GnM`n@TC72m3{}yhr=iC_Ci4=%U=dwY0sVDX`G~jAFQzF zDez)@!7JN)g7t4u>HmiH-=@+ZG*+_z36;DFJlTIlB|nAbJ5=)XS^ig*dQgYXMgbI z&wb#P{)`7t{d+{Ee+GE+&ncDul`Q|OO1_%qLjt_*-_7#T;Faxtf#s*DgIC)B6zkXHAXeJ{2J0ULUTObV;OTge$A55< z)L-b3F7R}`PXezz-UF|Y;_TVr>3Tw*ZzI4{KRUrH>otQXKdc3>tam2M->#Bh&hihd z8#``P*6kUX}bVmVZDc|18VDppyR=%eScHKLk&4|A*j}=hJUl z&o?SPzp$R4RC+>jaZCOT3h^G#qrj6tF9omk=M^k}8F;1tuL5s`{ABQ9K>4`1hV^8s z^f+11T$P@6;QONd_29!5dbYBj8&rDkU_I3;J&%K@@pLzM`TB^Ci$kpEah0Cqtmj#k zp3|)7O_iSCSkGrFJ^EP5pI@o;M1rSz;J*rbm$MQ~<{Ov4Xppt(SJk@s-cxAu5!g}gedR}Ke4JtjKfv0|X z0=%+c&a<9FDn0*WJ;zjf2F6K#=>RX!8|2S%;3+=%1-uDJ{-FUp6FjZ64KR4dISu?3 z;OV?O4!rw%8S<@SC0RB@N~S)2CwXw{j7h5N`DLMzfq;XgZ1C5(*F(Xe?X<* zFJ7|e1(kdVc(SKOB|j28+4muMrGF-XC;yxSZvx8xxfVS6Cj$XStK>J7J!CxZtaDWcNRPPNc zJtpvUeNL}gB75a_O#n~rdJ4RWd1}|S;7RUXmHySN|Ex;?PL}V5$xms|<19Y}ys}-# z!AC%Ul2RV+I?Z~rlsp9g3!d7wLZxR&l4NI%NxUakWdHTxm435=9|XQu zC4V)`->;Itp5e}Lsb zRms21^5<3ZAG3To8lkl3Jj+LeSK8BWl5`zA75rds7tJRz;AuSMfHyHu4$J~i?Y&8* zzW_Y7_fD1m%`E?nN`5!XA5+OUgU6IDd<7n-Hn;!Z0Z;w-3wUKeegvNS@xS1e{rDrx z_XDYv|AXZt!7JtaO_tha0jc!cIPlc2bnr^QUCr`&D*0TN-=LDOX8F5S^7pZPlS=+2 zmVZknf0E@-tK@$MKNNQAVEhoEJbxOeNbMR5UfHfO;Hh14AgP=@{?oyepJ#(t`fUz) z^7BIQsM;-mJu($$nnLdRD0P z+{$`xROxvFJn6j`yt2REWIfNT^qgirZ>#j^?NWQb1%D~@$@Yu@ABl7@4p!xHJq0|~ zHxfMM%kqoBlYg!RZ(^SOvjIFE?>YES>7P5mQ+;c|EB$kTA)eQSrmU z)A4%}{Ak%ujKizI)A9T}c*>XOtCiqQNMDLUB#(c(zqu7W%~MmrQ@iDHzMJKUh%TL7(B%}XLWJ0vnVe&XW4RkrgQO%oR!lu=49uU zttnWRHzRX?K{-9jxi~G4($kz$p%_c|Vlh@91yh`5%Sv*^3S(k5%EtL9J2$Vgf-H@R z*C?3aqhO|UXIj1BHdt3JUXP!qrj=6bEeKrol5dz-i)bp({tu0&&ipYJY%XvWlznVnmTvZ9Hq2| zY>XvdWVOU&ED4$=5`B~q9gL@UrxiF?6ql4&6f7%OwntN6QqTIV=JLGa+{}^{<#S6? z3-d6bR#!||TTqdoT0)QcCKpYJDZ!|Q-!SNxQ8!*yShCbvm{M4>Y^CURt0gCADW&ib z^YUeQf_X(rSx!Y!smvA@z{SqOoE2g@(H6Nga8Ss#!iE*Tdm_ea)oPwK)<^TyeLrtb zrpJKpogHJ9dds`NW2{m?Y4)L2>MeB%n-8O;{*Zl;nmH#c1+AaD24m5uaj|AGTUAx8 zrRS<*H9Z#V!(*|M$JBNB7{sv&;wXsKnhs(mH>kDw7?5$AZH)8L#yF{svO6)PaCrFi zW1Q4}l~r+4%QZVWPIFkq`4|>)n!_T_$FPW#yrQxyUh;>gRq>Kn)FmW;XqV7zdAyI7 z$7{Ac-bc&hHCrCOlHg;sBxoKH2|kX91j#${__}IdCdSv) z;xz?jCB;QJWam{B6#6z&(}f8>T$rHg!UP{KOwb%Wi9QBTqU0pGSu?X|tgdh_EzC%*`7pA7bf~}VPc#(MI>s)8i~qaBRO|Q$x^X$)u2w4JfbF-yL;n6<32;I$(Zlv>PM_E^l4K^C)?MHaJUlEtiLlf^6dh4nq-#dLsI?b%^#0mSq+cuaw4$#iD7yMLAlMS64_qX|ZTF$D$l6Bs?!e@{L8a zeHP^~nO0DiSB@}DZh~f;t;)eNZFRBuei^nOF7#y+32jivgIXZMR=hH*J9Od zvsKyVY}kbN*+}iMYBt--y=c{JrPa3bs;e^jLMpppMR7(kE7NRZtXUzRT$_>Eb|@AShS-Vi?49TlBju+WJ#3Vsy*Zq6LQ7X9&t@1M)6&{ zt-g*2?SRMPE8?-(G$Un;%}1zgv1tZ+7MqVq&tmhAmS<+qo0pO1dm6E6k4Br10NG;G zo*!*KLS&0gItJB;W|EH}*^;DriDgOhagAk3ij`*Cq&TgaHc4u&XQsV)z->vAT+z*P zUxOq`Gb*+u`Iv~TX3arjHTxJORC9@iXq{QD7ReE+zO(YGq~=^<F9TDh!nb#7iR&F?ABWh+;gUY#e+wQ9S0 z-A=o$R_SQ5TD6WAt5u4UtX8ck$!bj$k2I^*rg5ZMtx`N>jn(WmUN)1DL-cl5N(Obc zbUn7ZOk5xKJsP!_*Q~zQ*Q~K(JnX%K>s2M49DDL)tdBE{HCDV}@YbB2b~UYz_o&au z3}TJdSZjtpejg@O(jnqq-PE$Ok}|n6FV~7W^v2AKcvO2t@~WWr2;#*-^{C@@!5+%Q zb~j#Xjck24b<&*GgF5YL$=3p*ReOcd>T8M6s=Y>N^|eT7)m|mE#``#hSrHePEWLhN zPF_)I#k!nj&Sm-1r2w3gEO+b7Z0Vh&o(@&q9Z`Faml)mj+=W?uAH|!(0=&wVq9kb5 zDNv?Wvz|<=PJS}28eL2$n01BHO`VZ^n~02>m6n}@A)#1`l%3 zG_%z%lod;SPf9bBQ>JFh_p!ukBxdHUnVHFp7Rot=g=>mpmf`jd&Z%WFtIP9pb(b&p zw$W5r;>=wl_Ha@8ifr5g62If-jaW4oZ=j2taE-RkzEL@$(5+dJS;l=MF zN!3YJ+NRPb%4g5otLEAzy578WeWO)ByBpR=qYrqotZ zNcYT&O0Xiaykvs2v~l*ws_lFyt)!E zt5~TRPX0Zue5tsc)~)C~juXY&lCqUhE;?#iN$EQAO~-TwDPLZem-qM7k^`~|3(70R zaRY7Li(TZhaEbU5;uzeGr12{ntWHnahG;A&?7VjKOU7=yzavV5W zPOP`h$)sMT)|0!l>F#JgWlSq6OTz-&G8`v(yK+WxT1gR(n{pgu7!B7r%ZjlC+}*Nr zv6qr7pjOKzYs;|GEZH=nqNE3*!jct=`N%!OW{3;VdASAUrOpbxUzcv!im!97v?b&u z#Er*jEX*5UP*QHgOP$T*%cYk_mz1q2DOpjNSL9rFML|}6Npap4v~EZ%pI69tWv}p_ zIAV&r9k$|BBAqRGE|C&GClgsjoK3o^{5vy&I4I=V6WW8t#p%7&nj}4^R$xVHLv7cZ2wbc4qcRG=5)U#yVxcu zsbq{rt89$bS83h}#R_6I6~y^cK-;0Xbi8Ki1Yf1aJyBddQM0(sySRE|6qilXEQ?hK z#l0r%j$&zxwxh5Np}j>)E~f1sOPmw}dty`Nz9MO#RHj0t`{o(WbqDm~UMVKEE}Jyv zv0utZ5$u@ip%mOMhQwMG#aJZwdta+6o7aO<^heK1t>&DIpQxn0Q`(!SxIbw7R1f>7 znD*X4rRW3c;zK@HV~)W38JjG2WA{G79xCm&S}`how6)vdK!9?wn&gi39uU|}<+CQa zBh{sBK1(Hed&O%{)kW-#HM4-K##kI)J$od!2S3L8^kZyX4|U1D(j30A@R+#J6{|hD z#LB)=x4`H4jq9P^aX#A}XZ7|p&P_P1F5==i*(oXm<79VeHakvsin^4~0TkE60E&~H zq+OTnDpg(avXeAR#mlZzmy!pEcBvk`5%1F*@jZAW-lsR>d+@4k4s(DFsbJoS|?ZL4LJ{_CTgJTnXIyRw)VU{TSOtY1V z7Vl%ud#~0-nwQvvV-tNkHW6b{oN^N3o$irbOrlpjByQVcJ5>FbDEmpfWwN)_rDQ*8 zma@THqH#71DGlRnUa=zY;gXA>*;+-sqeFQkmt08O3Angc1ZK+JTyi-yUaK;%Xi(hJ zB^N-uH3}qoMSzNZU0f_l+Yd?TdeKiw+Ko<%{`t z?WNf;?Duj@XxoTAUv3F)E3xm(Eun2E_I|k~da%?x#+EmL$)$RVv?zyUDoXo-R!+?r>0TvpW*h_C_3hpxIV;EZ9Ri_p}h# z!*Fnie`<@|k)O8ac=xmx-@}-vU{CTQ1$J6qq`;0PdKlpDAg-HrXim?UF4%7-Yo?e? zt8R+Mq`DJ&us=Z+dC42kF4o5hXsu>n`3|?R{j8^QzQ=PyQqDzI1$)|q)1LpAI} zQ;&VmMzo9hrl(L1o6)$a_GqJEP1C0oy!jXh2;vmWn#w(CJ?WD>p$9wUu27H1MBn3) z;yF$GDZcYzzYU{QyPR)-*}9Eg+N8$1dYqkXvNP4Kv&qwswpVPj)4G+D-PJ=m*=g!> zNwT}N%TX|>=@kkGeRz|CMCq8PxKL|Wzz+e$@}4C^@utAV97kcKwn4IIdT5C3pKcD2 zJ)>C;yV$hr!#*}&4!};fp33{STRAEC~PnF7E>!Fdd?^Mpgwl?35 zOcG-)X|0g9J8`FDZ<}VPV|SZd0{+n$7TDp|LlZ3WyrkU(_e!t23GPMS9?JF9bc^q% zTjXJ*uFonD814G7K%q$u2=_dvVN0Ai z+P&3#_Qdt1R32d3T^Fl$H^FOToJOVc&NvNkySK)%IXyeMrvdC<%GEa5y`rlg_;K=# z*F(8jjfO}IzSt$#gY(=$d=EP14(n!%@A=Lh%6BX0`=F=DUhCw8J#(C)ZKpfHSJy|O zy^j%xopaKCWyRJxw*lSu&ao=#gsQw>)~!}~Ds^Xwd)L%$llQrGbF!QvJK0+ew%5r+ zzFUUu-fkJ)9P8dqS12{u_hvd4g4&+<(sg&7_e!*sFL{ri>@aKT_1Klenk8CeGaWn4 zYdf76r`k{_ZQtjyR&$NH_KYH}c zUvfVR$p+&lztqrxY1O@M@xN71GW5}{&&m`v1m26D5{$B*I3!4y|5-^7jRX1w-4!hA z{Y%z2qdIU~z;;n57bm~p2e}TGqwzg08rD ze`P{;jb17jB^A@OD-LocEJx#(K0#mk)=zd7qTDfmNk5He`UG9x$GbhM{s_l$mWt`G zH}HDkiQy8``=#>mxar$~xp=K(Ef7OtfD4E&7_g4{QsxVoU&{PK=I1bfHS;OVPh>uh z`Do^&n7;&=4|~Emzc=Uq3CGQVUB3Wf-;8s>%OUp(r{4o&Opb2`Qu%{Gvj0gS*}oq+ z7X01J*E3%Sj0V4!`Blv4aXN?73xL%AsX)>{ne!7le=IN)_C*584n2_M{xC^)`~oC9 z&H}R_*9oL{v;)bmH-KbsGmzw-15)`XnBU9%E+E;lo%3(z{F^wx3^)t=R{%+GHe)=H z^p69Q{-Hq9KY;lV=KX+Iqx=QTkCfj9q;g*YsobZWKEdfXIo-nP7lCBoGr$6rzZyJCLr1UPv8~EzXM3^+RphKIsXPA*3g?dlQhRz!`IEoJ`Gxd<0wn$K z1F8HmAhq)lklOhKa2oJo;8Nfg;8n0=4d-V7$?hwGqmdsEr1r%yMgggP1At_AD3I!< zhv!kfr*Wd8@~41g_gg^9e*sAO`+-!Bo{L8OJcuK$80wNP0Se{=j#DB=8&cGycHC;@;RKI52W(5fFzd+ zr1}y$|8mZc0#dm_%o~{xVE%uIqsX2MK!51@5lDK!0g~P?faI@s;Bv?v0Zv2uU%(Z> zhk@k3JwQC#edxVFvf~a;-@;f6Bs*>bQhgObs%JTn>Y?XRu0;M!AnCCKNpB30>Kg;3 z{s?5A9&$+aoX0Z~N$)uz={*f3y`KU}?@8w0Wc~;cuUZ&-5J=@815)|DKq^nq@1*iO zfh2bn4_$=ZwLa&ke|KZ_=RQ@}l z1N?_T(*GLs&jU%%Zsu=gzKZ#k%r9jAYUXXsk7k~plS_JnnEw?IQ>1#o1rpy5qXFi5`6Yx6lq0Ik*hdhdY1}+AF3P|;~GXElQ9{7it zzk_*t{`IxsE0|x({9NE7@DrII1I$HwI4}tQj094BfxtQ7|AXru8b{v&mt(wr3Z!wq z14!en78nhCDuB>4VC< zH2x0*sr<7*vU?wp)~AnD%)B>Qg%Qk=38I32ix`D`HBGlg*s z;~*gEr-!VPzTa>iOZEH&r20D<-vTa!+$%t;Zwrv@tp;8OzFbPra000uy;p(sW&%my zRG?Tt=O+TGzRQ8*@ozNeUkaplgaS#A9!PpF;9=RM=SLv%Ujb=e=m3(QlR(n*4v^|O z%;{G-{XCHL?gLVJdY=X9tp}3cI_7Tz(mYfNB)x?|(o65lAiaw@J)hIFfTVXako3j^ zNpCce^hPm%36SOuBarm^14-{+p_1MUK+gq=()sLVPoj=9w3Oq~~$q zc>LQBB>Q#)Nzbi7lD`>9de#F;PdW4S-V~abmI6u7eBgNen++sA(}ASN1|&T(K+-b; zNP31a-xo;pSRWwi`71=y^E;6A{0t;Loj}s_A&~SO2a=xGn12a47wH2)(z72p9{(Ny zlAim3q-P6|^tgbeXEl)Y6f>U-%to4?QA>Je14$3P*N5~>1(KdvAn6$cBt64`q~{Xm zLxD7}1^`LV@0g@W&o4mI^F5ICd;%mrCxE2qbs*_!X8t)K&BIRuNe{hGiS*nLBt3Tl zNe{i3iS*n6Bt4}-(o+B=xuu-H7)W|%0ZGqv&QArB9t)84Tm~dPLx7}b0Fd+;I6n|b zdj1HO^!y5>{BJn@C8z%lB)!Lhr1ubz^ga(Hy-h$W_b})00g~Q3fn?tf&cB({E>5ol zlHL_S(o63hBfWEgr1xqd=}qJO$w1O;0g~QvoNwZEB&YiWNv|J}^j_#K>HQ8!dd~n! z?`J^DZwHcIdY>EVeVy}P;`DQzeiBG}cLAv!y+@Ah-3%nXRm{_S=jc3I3M9R`K+>B7 zq7n=Cksb?>^o(WR1f=sWy+4oigaS!V5RmlffTZUKC?P#x;y==J3P^h1 z1LEHRdXFES?+*b<&vQW1^AwQuJOU&=4M6-Ga0~v+M}9Ss^lSj)-+(gwN9X&MK+=-~ zBt46Oq$e9ldXj1OZ8p9!Prr43zYI0|Ygo z1DKEe_kpD6ZRU>v=OFzGkn}tSBt4G-NzWc2mAeOsax-=UN#AxL$yWoHgP#e6-IK49 zaK;qiIF!2_NaamHD%X!u2c&kMgA(FD1CrdkoNi`(0T>PbK~Db@h<^hb@ZVVQn}C$R z7D)PvfmH8eAnD5nlHJpR_&0#w^GR}70E3Vo4kWp7P6q?=Z-5^Ek=*aSBz<22N$xWs z>H7dka>syqNFM}}zDI#1w~Nzv0!eNwknAdDemRij7IS(okmP0np?~rOAjw|_B)P#r z(r@Inp40Rm*gVL84UC4|dq9$V14!jw1?D3EAt1@^0+QY>K+1OkNxq!Z%YnI&o5Or6 zkjlk!dNh#AMR3}{X&NlKko#IM$ zaC!!(V}X#HaT%vC1wzk^en8Uym!FhR??tBZ(Fr8}Lm=rp4y1ZtWByej`Tcny$=?ZF zj{IdnvL_ozOWMC}MsE^9~@{u@Ff9$>RJgfn=`@NabUIRDL9< zhXSeGKwts*K0vg8h97VY(mx22{J()z{w>BMKx*eJoPG{SdiDd+j-p$D&@;IdNcPMI zQu(WZGr`+A9m|NiM7ywzCF;fHt0<3fTGUJL+l8M39KbZZ@+FJYc21i)ZQ`_%(^Qz` zyLw6GJAjmK<8(8pn>gLb>3UAPI9A1wd02ilA zIql$d7N_l;HgnpJ4(`HVa zIBn##!09fGXR&^uSU;zmIo-tRMo!mr+QsQoPCGcA#c4aI&73xI+Q?~v(_I+HV*Nm| zeoi-Yx{1?`oUZ4zi_@i?c5ph2({@gqIc?&!k<$RNJ}Qr6%79~^hNJ=48bS&%9Y}Uj zd4FIuqlppARU%LNC?ChLhyW2?Kpew{N?;t2>PZ4pJqbVu&<>>fY``qwBp}tB2t=MR z1&BOh0+8&82a+9FN;a5)7GMMrc?Ki!N+8)`1p9DH#wN!7jE#&9jP;D08C{H(jHQhEj1I;Hj9HB7jCMvFqnR<9 z(Zm?RXk-jx6c{hSPh$HS&oXu}wllUdwlX#|9%O7{+|Ss^*uYrNxS7$#Sjkw*n9t~7 zT)>#cn9gWtv@x0)qZv(%5sXI0AVz@LZqkRPX>pw4yEx90fux7f1cVN8d{KT7(vyJz zdJndt5q_jgJqHj=#0KgwN>jgJ>Cr&_5`wg{U$8W1pnf4<*)Lc^Gf=+}e*yaCeu3?V zvq%%)!F)RqMi|<7+@OVZD2TMZ1G#TUXASOBb&^m(w70LT;z9VOoC^-6T zWPS2Jo69&Y@2hFz`sIBzU7VKp&CvBb>67=#WMfh%d%D=3#VjxHlX-{pFL3@k&X@Pe zd_aQ@w#oZrE~PZ|%ll-ea(m?cG1E9--Y1jCX?b5vZq$MgBDkf*mI%`czRm9R3&}_0KxU(>vsw za8jcWT^~@I-h)Y>E%+XW`Zsg^7T7~+7pGUDzbT#1=|K38(hg3ag?}ks$>~T`OX*Th zKLmRyUC(K{o|G(;>OTcgrnf<#G93VWm1$b1Ql{y8U722@(qE`bw?bGcPsfEaJxP`S z0Q{lMr?^p>Zd0YdQ>E`#wTE_;Da(HV|0vV+U70Rb={u{+H>mQrsnRYeQ|h}(<&S$* z{%ldD?^2Z?t}0)zvi~hrf5hN;P}cv7${*1fPs;o_Rrxzq>6NPVPL)4~sM1(-_0r!@ zRsYMX{Bl)#m8yLiDtl?2LuvmLD*s)r%Acmv_npeWwClAoyZk4@DcT8B~E`=d%5u8e_7P6naX$6bj#!- zik}jz-?T?hc~TYgdQyyJ8~3%qOE_oi)C!@YN7YcyXaaIu}) zvJoB+YHZ*3>I{0Sr^+a;7yNlSXGW&_@mnelusW6Bg(v+^N|iq|Tk!+0Zh6wkGOD**Np^NefSL`+EiHTlAK>A_4@c;E^vYt_h#}2A& z)qETaIRQ^s#Onf=<*&?H?kqs59)5NfA!W{MA8^LW(zAz9!xUs&j+kshMpMTn2$ za5qT$2|pd9sz)NKS}Fh7U+{iVpOdJksH59n1q3biK@ zLR4Y zCnTbj=DRxO(s_7ONiLosA5&D4ySfmiyncx`Gh2FU0Cn;IgU1C!jrhz^#qV<5Js7nrxf)))+A4ahEUES!YAaSd z%W`=L@S|G2G>A{}5xPAcQgLi9>7MKT(97=m;^Sev(^`)@?fJQ(f3JME=Y#&;V&da~ zmCsi0Ua(O0;N9*LS}np$RJ|Su-M!SspCG8=^NT#tK%<1_vqv?oQ9h!$d$z{2M7;(O z9!=Tp7{+q~y=0^Z*K`-d5Ag9;=+vCN%4K<_6*=Oo2$Q-omRR>OD?R|XyMVPjMMr^n z=zBkvx4WQO7-6|0!DjM&%$~0%Jk1D6{JI?f<9mF3JPXlVEek#ao=qa+k+D6LW30IE&M~G=7;i&k}F3I+K>hl;Cnq{Jit~ zcmJbH6}Ssr8vgOZ?Sbq$B#G`tX2# z=duc%=*070PG*{?HmnP=J_nQLG2;Cj!G5`fpuL)$larT^6Ahj!EEQ1uuZ{IJvc7uO z$4Oe_&X>Ovj=~?7%kaU4Dn3*ht?@2E{r!Or;{>4@eSvcHdlKPQUr%iuE&Y{xPebTF2f->rEX^_Z9 zk<_PGHya_cAE{T#jP$zC&H{vg(Xe@y8XzXAcwKTt`c{4V*2)N`#P1o^M~#_vzlv0o zZgKK;OAd=BU6VXNd2V)k)wwq4NUwVj24>X#1@ppc>cE6u)11EjStEY(6gFm4BN1an zI{_{+HLWyk%rpo7vhZiepBaB9{29Z>1jts_G*_f&ZqIAZtotgn?thteKe1)FQHDyl z-$DA3C$f;8l)n8HqSEXBEmF_uzP%)U`{cXP)^7vxr43)i49mxL?derV$n?d@*Ct<= zoU`O``qruK={Ljbcn8GN!=`qjL=3)KKDIQArM^9;Y={PbSRr zdCnqP-QTgtqpzU2prQb_t!L6JSN2IgWh%=n&2v`d}KSV{K`A;F|pERY8GkkSiRI8q)3@ zc1&k#-#z4vbJ!_i*y-Ivjz$eV1D(x7I(9?V5TP8x4Yg%L(Avt{1asiJpjuMps$H8N zxVEvjtiCoOI&e*T?Hb{1^004q4{@~&{WmO09(HK=&||wpJ35D+Xc>BT_mI=OLyuJr zJ+XV}spg^oZW(&YHS}22kmEYjC!Ir2nTCGSGUSZ5{iU^Q^YyFu*RFAi_KOWsSWd;8 zhaPHy&6>@p;??WYYs*V(%S^QiZDjD;25LxUe)XE5!1eaP<{^iwsL8@1vK*~Aq#M=| zHT09tA>EwW5V$_5cGUtjKX6@T;QHv=RgJZ4;Q?dqdUIfTbl^IwEASuDfjD1o9Cj#q z*xS2@pkI#ahJB-pAjz_Ny$iiiUkl;&`TFwc+S10__23%<9T2% zIkkIeS5@c-j$tqlN%YaNWD=k+PX2%0|Y}mZ2GH@MiiwIorsNImSUsqYXzBI5bIPw4tu*{C5Ws)n9&khd}FJmU((X&rh5 zE`>kSMGL8SYD-P3uJJLb1o&`$bf7~VE#>vKrTMimva+(aq7>ak{Zi(rt;nxUfIw+& zf}^%9D6m`_(iq0(+I8p)4g3H9(e?jubd@F?p_whr<)7Iy#Q%ux?LM#DLC*q4Iw zbiLtcqX9?Emu&&(jfStA4Mk={XEWuxl4|r5kEbRH{u6f|o^(7lvblQF&cn97hbKX2 zgMJcJ)$1K3{BxE;=rsJ$7I4NC*4aj?y1EQscNorR8GdRD__EpXb(=w$+?qOhr`~+< z@I+YBnrb_c3L|0ggoFCYJF6!hNKR@>op2yE5&{QPBb!o_YO0fjnu#x`M((Yi*l>7~ zw*B9C8Hzd#ogIdsQM(XU)Mn_khn*D~Qf*DJQ*Wp0S|;s1oOCcXsXjIGY-&>LVKhp# zKY3z}esZI#3FpxSA*`$3@O`PFo3`Wn$u);614(# zRZrQecLfT`VV$P1ud)p1+XB82!hR99kz`V<&fb=4YdwrUq8{0a?ns4al8)<}0={sC zt#SkwHU*qTUMR+_`$VI+S>mzhX_zL@z7vdSUj3acy)6lRBgZw~8p zP#0)<cfgm zVLxPreQ!5>X*U$v4PQILzQ*^qfS-+FKiR{I9EPs8fbWck^DcvDjPrABT;*I-jN5)H(dF`-e0uhBHoc&Iw<-H$$ojouDBF`h$cJU9$L84cfM z8H$9kAJC6>I4!Iw%W$sV@LgK~1io(zIG1IBm!v_9fqKTQZNE7D4yM`;`Wk-bu&+xE z-)9+4w*~x;0pI0oDC*GHwq`vB$;A7*AB;cS!#d4|Z$(%90JF`8^IdcVeV!F|27QWF zpsq$VvqL$GT5Qd!lZ7uJnPn&wj5vyaDn%bri@rp6WKj?PEIig?>qs5au8VxEDyicz zCWOexk|!R}Piblye4LJy$j4f6jAMNAm*dhGWE~y?nGXH1PjvQ^)i`!+4d_kH$>bNY z?|$wwoDpk3*F^`TdoV<98zBsAJmoOa@VZhc64E0#rwMn4Zt5%au?I$O9wodO8ZZLi zi%j?E_9qx;3gaR-e?`K9_EQeKRI0DJ$h1eWRfpD|Cqi%TRc;w{m5q1 zkq1lLvYrY$o3bm(FDu%A)QGmWGouT(L_2@_XUA20#|#(F++}PD&-af*-WLzIebxVw z1;(HnMMB+VCA`JM5x0pQQ|68a49kzN{^5DE#ryUd;nv zzwkn@sCzOBg98WY?2eIr!ygXmpIMig*XR&x##Y-Oh?*B39kKM?{UQCgZN2X1#-O-} zE%S7y#*c#RgRUQ}`)JGTe*SSnaA)xBH-qB#UJmoajZcO=+jrB3sr!2eE%0}_YV^8n z!GBM%^OoBl+}wBcUnghI-8x+8ckiKOyd?-iCi-B)evRAjPc+&Dyg9FyDOF82Ce5z}JqzipIb-_COpul|tZpV_=yp z5T}>Q#z0KWh)&C-TyvjQrohU^^Dbl5nB3O%9pUy7HE%pT_P)=4h<)i3!>u_5(Z7Ee z^RI0M>lO~V|E`>@-|qe2{r|ep`JX?gj=S}<(@$^s-{5DyEd6oq@tJphdcNdT(Tz8~ z@#T;AUVGdLO-dk8wb>GA7cC>sJklC|+~A_0@`xWt z`soqSjNqxZVdDA-&KTUAO}4sJ;AzRY+ThHAD;w&#d3pd-PRD{ZsvR+M{-+hSx9m zZ!`t(H3si*4mLO1^})8rW_|G7Mpv)k`HhXef;WX+AMo;?xxerH-JZJU#d8l{_UW0# z&DRe5*Bg0BtwUx$^JebQ{c+bAQ$lzC@mATl9Up{@`tcSzmavyrLc>Rf@8>?Hz zp;UdmGw!9#52{Xm`P-xoF*m(e{Bz{a`>XGpH~RL7djc<_{~N>BkMfNF4ZY{CuT5p^ z{v3VRm*r*A!@9Q2`8xX>edtGDKYj20759F|S*CK^TQRqsCYbNWB$T$a@HRvgcpP zd6Sk58}?rE=P!PA?VZ)fe_9(E_t2Yfc0PB%-;>dIOxZW3t$tU`OJ8R^|6AzryIwCT zTWGM>zIV>LFz}HV4=-IaDD5Vx%>i$`*;UqX-RSB~=PEv$G3&**N^UzFeG#i4nK*9w zUCHMYqraQ^-h0k9i*f?u-~4&qg==S`H1+9IICs#>Ozi(*?_A)UsM7vFY0@MuX_`X8 zlwO!ZfpRIN7fMS36H+ih)gY)Kuq1_I%eJ(%1qz}jO|RUnidYrblm)G>>sDkHFT0zx zUAIDE3$nWfSuBc(idqqQao5ZL_sk_tLocwq{@;B+AI_)KGv}Ez&p9)5=A1K==R1$m z7SVhrVr8ggT9q-StZC~E?$NcVc8vdFYYm}k$r)YnYF#i!@J_QjQPUiG8m|x;e$VEB;Ws-d4E`&(~T!4&#x~ zKAt8#9qMmrN-xdCiw?YQW!RDV!Cx>m$H1cmCW>cRH6~YyY%E?! z(8K$&=!jGHs8byg^wvcZwNg6|v%x95Fp)6F2nT{E=n_Rq?YxXjHNkWSqE>P5YNF{C z#{&|2ozfZ|*=dz8D0ie_?%H6Sh7YRf7 zV*FOclAifFd9qH)|fcEJpT!Mb__Tacea_BHrb3(j2Wz2CB;+O zGD7J>WOFM^hsZ}LpVV$;vzO~ioex8BS)Qnx)6lBZ%}6xrS~a1GsD{1AD~T;nVCMvFWon*P&2cJ~ ziGF(eKnB8BI*x~7hSOCU*uq&U=a?HXw&S<3^>Ct^i?_hbtgBZP=I5+fR*-Am!2QFo z$jiE3H7_Gao&DsVonO?o1O2>c&CSgu+nFNN_1CIV$|u7zH2V{4+3akcq3xKZ)cL$y zW?1Y9D1BRw3_-{co~wQ7(1`+Vtz(*YzttjbJ)tXk{FOS!amf9PprijIKN7Cb*U0l( zdA?4bub1bW<@pwQ_>)J1c8x1^DAdl$DUQi{N02eXlG9+Vl4ih6n`sJ~tC2Sa9oEPP zE2kXNDBYt5Zx7pJcvls!u@BR@ey?f^O9@@jGDKfgx^kOVd#ke4K6F=O zy1bdwH;KzqGe3GUD{J>}*~=JbsRBpK+_s>5qMgsrcvY`_V?fPZNk#54i~Iqde1yDW zP^qO;zK@l?B5Tz9mj~L%Fk!N090UEnwYXxq*%8+i(%{}{4fw!vs7TX+JSOcvr#>yMCV$oQzF9j>heSZPhVh-1CXuPI&QDO*RhHR=aQ8`042t#`ySlmY#C z$O@)-k8aRWN#q#SOgsoPxy4uyYGE1||iOlC*p-#)r z4sE<{EVAFM@qg~Akty=Av6FQjP6(qQOw*L7>Q@HT*aPRJoVAETt^d|1Mw*aQQs-bD zHZ3>FT3j)v9jA^9R#vy?2+z;tMppw=&0>oH;hx2*wzBWPY~QS?)F~9#P(- z&9>@}TO;g4RS+P}?_3}9Ngh1Jf1JO>G@N?DMf-UVfZKtCsNc zc;(JT^0P{`eHNQS^^)-T*m|6EGh1%m=?sh4J&DAmD*rzRO>kYf_3&P1_PW9beVrJYTUx9yun6IWhd#5wnUq80QUz^O<+8AgZD|0iU+14jVX3ICm z7AQB>F$%v3^)idgDyfX2X23y4xF21ws&47b3){h{URB-RkQep>i@IPYPK`5p5-ij=kX#9QDde>8W-MgOFUp^RoW`DKu~0ol`LmFRBmE+lpKIAOY^B|}5Bpz3hpof0D_2_~A&5+aaR6rgr`L9HO56kkhq%338d2{B=P;@dY0J&_g^6)t@*SZ~4c9p3^>hE}@!*k<+fMpPo+8MNKJuFd z{U*r0_1_}MZ}XAgF31=7$dP2|+d*MCUfdh6(Y3$k>C4KTtlSkvyn6xeeMF};gJ_ji#OL6DME2gZ07VzC?9CfIC(p~u!%<8q(B-5|$VpD}njq7UIIy-z`?ksqjpYc-PvsbXTxQKfu z=;xE=_vYu{o12wqT|P0#oDJ)TiDV0$X)Vf{XfDhz&M%sH8!p$xbl$?PXd+*jSLxzu zp0FI1rbme0F8i{pue-2^Z`GG^7oM8}=Zjiyr903`O5K&PPBCg4+?*ao`SvZqEsMNli?jFg4!zU@E|Uv)OA zCG_+3(e>!TpZg-wn}`s@w+HT2?%xFX381?iUIDn99o`kV7~W&JIDxvF|Md6rIi2+H zQ7o|1KrhxkketFlu=MmD`)$G=^j(#nwsVFc*tfUuxNA;OPyOSMVmY4gg&Q5R?dae! zlyUQm`-FT{4=#w`6~FE3@1hqY!_1SsUaD8O{661Ne+1(>y6?Enh%vv2D@TmK!JCA5 zEn7B?AirCPZxP}|#2RdmK}>pv3GyL`Nk7ef@E1ql#ld(NcM37avAA~- z(|!kpbR}Xc=K;jXKe$MUY1}8h8A949#KeDNz7RJOF(%n@bi9}^O$$bh=d-wPaqt+r z;;Im1CKtCBG3FIqys$(qj9dv6<3hpyTyQGA-EPoqpJ7`wpM&FZ!hE`##?LkM`Ma^VvS#Cr$Gt z@BPVO&O7}ZpY3<}q$#g={<%JBW*PMsjL?H6*36W}_jn_aulnG}cjWeHYY>hdf&vC`?5XXz4GB&KAg zCQh2Xa&kge!ip8~D|y@Yf7hHh56&BD$dBlul3I5=;89!0`Re|GJxx^#(GfCUf>5gUjsL*94RHO@c|gsakH@ z5^SozO=+s0rJ+?=wj-%UlI4>cBx8}(@kwmCEd@zEpJb6VA!+85$avdABrSYWhh#RA z1*R<-N#9|$FyAMSc>97vjeJG$vk9E}QJ`>i>SjYDJ7Gm9kb=2p+Y^)cU z9F533za(SZ+BO(ko2rkPsvFO9#qyv4$$d+r%n?Xu@q z3wGR`9>MP237uD2^8a_(v(slTxT^MJ&rZX;w>|rMx;VT&`wXmh9ly6dJI#$adv^M$ zAXiH7_UxkF^la~+3q<4bo=w?NZdbUr{d+fUzqb8*H%-5`{ku%b`!h|yUVSu)=*u+y zdiC+6beCy*x9ft_?roReioPD*{B_x-ufz^NrCs`Pbe7@z(Y#f#O{(`BrI$9^$ex)q z*@arc9|J-X1Wn)qa#j26%%zD#@lvSO2ZhQ zevCdTaVj>{R~9nzek|CtrT8%y*5)usF3>4#WJ~P8Z{J0InTsEFKS~~PM;^3CoYW6Pg-^o>pA7GVPDV$Zmqd2iNK?&m6l4_yljh2zt8CXZ zqhMeCwl$J$_|K5N{oD4a(>MeAh)>=8kLE!r>k_Qor!vZo_%%PJvJlrrt0<{gSR#-U zhUMNS>-e1=9KolMTcd1~w2DpmP2J*{q*H9FRcydYcI7&kB6*<$KVBCiiE9+ANEKEp zg%xb7l_oEgZgM%&n5vBhm8d@~-g~sY-%Td&02xlZ$zZ&YF9@;mc}sH`m#fv=OXLJbBu;8LSY4J>B}tBo>oSd zjlEk1e_f;gxPvo%h504yVEeKcZ6iC4sV*2cH>K|PwK0wlhJEIT4P={&Qw;-Ym`uRP zHjh<*V^NA{UWa=s>a4w&d$tfPgHo{uJy^CB*hsMjw_7EdyVQ1Z4W+PP zLCX*7pc{?)Ljl}~j%e{Tey$^u_6{{DY^WzF9&JC}U|kS0oT>{#e+xo{r(MA2wD#5K zm@7BJV20|?9f()WIauZtEM)rHy|%JAMX{a(MgYZtAL)a$z)?g;bV#C5r6X5$fK?bo z3bd7Lxq*PNBQPnjfXtSzsaF)~2ivC+~g_ zyTIP2p2n{Y%wH`LozdzGfM{G1omO1XpuajXY77%V8xg=ciwqozL%0oAaIrWBr&9te zA{JN{P#1KYJ$B$#8)@Wn02(UdMnkfpa(bG9EvPJ>`HOsCD)}3HkcqJjzkz*W@Ri;e zJ^wSKr^7CD`7H?FdX_pkg)@lBk=7|)`|Jz-obOq5ehtj=idS;PwikGgy+Iw`n7sWb zCvRsM{XTn%pXG#JPc86f=9ql=KwDzF#l$B;M(Cd9!3VRXKptMTiaBDDTEC~QOh)+j z&uB$qLCfTr2(sK6RH4_7QkLngv9jf*1?-@*^e0%&A=z$?c6n)A%Am3jpJ4SZGRfvq z%413P8rcg^Y8DQX&vuTI{Y_>VI7+#bo_4EQ&W}dl97Iju97F~q7WR!S#S`K z`<-q1C1W@?=D(4HsG61Kw3rr*mCbaz+u*oHvUe79u;G}p>dvY=XE~$qj*bm`$Y#mX zWGBUpYn-FsKisTaG0sn~KVY|wVf^NmC*3l8etN*853U;h!psmG01Kyt(X>5eD~pc) zU*s3YT_3+N`TJiy_$RWp{_)wrpZlN3IV1Jgf1Uw0n{lQ^rRuiU1wF!W?|uOyDC7wT z4EVW<-Y8xu`Oadlm~6r-ULx8eZ;uUaWke96;lp_UrmzoKyr5Ac!@8+2TJ)eFunLK5 z`z=FMIUf2!JMc`Yb_eA6vmpm;{4W{)VG~|w;?=RKdEhD7;OMZ4l(}k@aa)rZKO5Gm zBDUy<7h7QCugCseFb;pW;S{psQC&}hiuAW0c6Eao4mM>p%L0wvdt0HWo543dzyu8Kn*HpY@ckNMEy?7zJ#%QCd}f*UVR> zEcW1z3Hl!!U{~lpPz3w3!P$9I!sv%6$!A61jDaoiMMfH!`y*d|+lx8=s>eV6 zy7Tq#ZhiA`zImg%@UAB^GS7?Hz{vN%j!s*;?%hWLBBW0s2qt2M`neNX`_wy%-)p*% z6c)Pk8AE5o)Ke4QJycj&KUT2Y?|rugYb*bFA))FA`D0%dZz#!7RDZUz2w=dW_w(9z zO_*5uo^0Oyj=_76J$GC&=l37?MpB5R!<;wYy;NNL^j{x09KN_IYWm}-y0|ic^ z_Y>p+7|ve2a_a=g*{qV(jERpLymz?45d2?f2)5up>xUs&qWy!&5ahP$aP$6u;|TgO zHtF_`6ux*wCbs~kgX4M|N- z`O2EZx_Wz9cA{#PMgAU%C6h_q#)(Tf@%yT#8BkZ9N$QH&Ck)9=dd13`r-w2Te_DgT zUD_(U@87~9Lk~!XHk5{+w=X(i5BK~z?Gsx}mePdG<*)p_DCfQrzgj-7D1P~Xw5P&n zUU9MBFhwa1G(Qzf;ec+DrJ%u#Y~mev#L9OccVRF9OL5Q{y16cbh>ATlw`&Tzop^$y z9-bg-@Ufxk^O9if|A3zPXM#DGUHZ}Dz@!xqDL)H(A@zXkwI+GGPUDIiyfEUpdu>p- zMgkX~VT1Si&(M7y^72u9&cp5hyU1j=)XrS4KYyV^ow6GE!5wxc`}vwUP3g}cQtI%P zf%A?58+qp7!n|nteT>|STFBEo0%dx0d9GcPdtdqv`>?I{*d=Z6!CG3Yv^=yqktv_2 zlP1EjxpWcByfAjffHJ-Ma+TRJPgg$wfYVd4TytPf188_0!T~+A=T5*7lCTRQU&-rT z@)rvX`ISLc7S=Xx><9Y6CmD4Iti6>R?acXKp?ZEv?ITLn_ej*4XG%}2!!>R_bKin? z_qgU6k;mN)l8`E?L=#3dge3ez$is?#`T?(c6fW|!I!iMv^^rD}UnVz@!={>b#7PJ4 zBF5o3F%B!hIFu%Wac~dK4Xd}ozWUAr`QnQ47N8JAYTP^R1CCe@F>*tAZdfymeVeqh zdmFM+94@dAIT~az1kvsX44p8*PEod44rvtbu-vduSsOA(l75$?18O&En)%s^m1USZ zT<1ZuS)5HjO*lMlf-~z6G&^ORovJx?+JknPG4fzS_EWEJV^nL|YG>ZbWU}smH7DFU zi)l$bZV0tu9el)cW(mhf+yp*iVK+Xa#G-g-ykSk5IW6v>74Y-av zf4`K&uZ3o}M1@pE=58#odoD)k)DFi>;kdMSvbGUp-|(Md`#j|61^2M;yjoMqKU~4h zdKCy3W{A=HEYYe+ERS^jIdgJ7-$$toW?aoS^e5A>5~HQEeO2n(mGsc zP%yvzV66WFvvd-gk>3*57N;4S);?l*n*W^(z0|zC*N^UOQZtd%%tQM*`s>p0w;H?J z_LY0i1fA8ZsWuT*o4}yURZ7R*RgOhoZE?9~z$|PU_<6%E>0zxi;!b%q z9Z|{BGA-j-r99WHeg%v}gbIv9cuiB-6~i#3fksV6PH=vs90^s#Bh{9MZ{2c!Vu* z#2JTDtIKwDAVWSiQLEZ7r9I)efih230_|Y}@#_i&E6XqsAs!^-`4X-zUd5MW7|{TO zx;4M|%#~koUHL-558b+T$>je_dp!IFnm_Ig_RUgU%#yCO^v0sW02WnK->U6ICo=67?+NOtyomvWzS5 z#+fj|Gl(Wu1LdRe9=44@ zyb#N9EZi%T7>4-)a@bBX8?oTwm1h(n4}orK`CGBjv!9rM0_6A^nW@J@_ERJ$Hf0jz z#Dctpg=}j$IqaiugPiK{HWqJYA`5b2K2Bi?z#{4)_J#6)gvFB|dMY3v1=&BbjKo6u zIkp3Gnk%q44yu=^XFueW9u2v7J>P_!&S@Ovbe_fhF35?MiHCfsm;60JKG#Q1J}5~~ zmXDr)LY@dYg#;{|eiSqT*M#axGO<2%qLKx9ijRCcuD8x-MvoACRuT*^X{AaKYlc2fU+CvLmNEh9TMs z_DXjMCYL_D_03>-Jr8&pghI+IyB?szw_M(wp0}DL<4P~I!Y8X2Ug5LlCq*oL$`a3S zH_W1!JVia&p>{_Me0S^*hUoc1cySLsUyAO9dTeU1DqUb3_^WXh;^3RT_Y1-qFJI5o zXaBTA-Hm8z!~$`ugJ=h-*M!8%Mk(@d5WE#^2y#A$l8auHXcL6c_~b5z~GRLV68i+CLXD z@(*5)m@8LE-!8;yh>2^^A;x@T+8D&JJB{0iW5*adjmAZa^@y=a&I&OiE^{7K@7>OK^@U&(u76D9?Bm5xT6m2hqE&rQP?@-mv$*%E zjJU1mvCL;{Z{6KbLJ6RQ{`WY5#FT`TZX5u8!UCTf!6)v8E3hmz(VCciwm8Uw?2;|VWmF~z#PYC zoGawl;CZzleSLBOPC=hV&}V@@bXSZs!DGMQ?U4KXzC9ycSEr!QCFm29)OTi!>lBZ~ zqTvKMF$h!`rq0X(lux|6G70Or7TB*>4uIbu8LlG;-?ukae?7bUhjY5`EbnP54|{y0X7&~}PypD}&&8MOF-VYfE<1b65W#XDR`qjrd{PfXdKl9i^?VX` z_w%tBEqv09Buws&1$+{g`14Cl)mxm<$d`eQTk1Lej`N&QZrWxlfUuK0z8{@K;X`ETamT7EXT?2nLe-^_oy1~w$YV~qF= zzJm%w)WJt>eB|Pz20n7~Q4Js2xX4(5{qbpiqZtc6t#8y}!Kd}{J%6uLiO5b zALo)TFseKs_`({TwW3(817BE!vsi?*5%|IyoW3F~Mj#7oaQ=#Lii`zVUx@V*Q}v@x zQn76w#E*KNIny=+P8)Y5rY*1Akf+DfCX4BQ-ZHl39muHu^6HQNL+JHA{MB6_{|_$P z!c|~tE%z0CFJ}Sx35VUqFcvL{0#nvS!jC*&l+@Z~oqq z3$Da|_wPa`I1muu$%kWrLhFVizQXU_*QDO!7N^4)3g(d3PnTS($5pW;_8VsyhAC6O` z@TyT@QW(1%4rLjJ9hA7deV#bh z*eW+N#5bUHZ&t%apL9K6N6gJR$wJ2(S0z5S5Bv8bSLKEpLe17?D>jL!nLwV^AOnY> z5obm#;5i6Bb19}CklMf_!u1VMkDi@-e9F-_=gvg7f)sH@w4b4o!h_r;YiBXz^}lte z@OJShnVMux6+Y{}HHH~tQzvWYFva0pXEO9vc+P@ezB|mes_8@uwZ@y7f%I{A%?&_} zJZ9Vg)c!Mon!SW!Pw4fMhFo?xwX$JMjw714kvF;a+iPVVs$|UqW|v$3%RpNqJQ9>m zV(x9QAK)ACvq6f>v=`@g0FUr^K|;U7igxtT>?oyOXNcVz&}h%lY+q5Tj~!GoV$mp# z-IX**_VE*JXqzlLVU+BcEc!_}6Ob8R7^Qhczi3eD&l}l*<1+h`qf`SY-KuN|D2>U` zOptK4^@Y&ir;mY-zHRIGz_xxaZ(DzClz#Im*w*L6#{g{W?|_eim_SX|c9xY$j)>pX zKOPekpi{m)CL(Ex&hKDrh|TZ*K`fhvDOquJuV_J#6 zK4IY6l(3YooE8nEWcWi!&}nge%*o5+Cv z$Hk`f@ntdJ>l4$}3E%zM&qB@%KF~h+iS}nRlLmd@7Y?rlfigcEV@nUr^$Wj)(Q{Gt z&$1e_EurC(6ka);E5vPPGT^x&h_TtSXV(6uOnDg783sNmNm&Y&+i&okG zRjb{u`W1Zu3V(1uFjc$5K6oI**pRaPsYxME+&=?PPZ}gIl%%^0giW7p#p(nTTlTVZA7q`iW8TiXK`Yk&Ieo*tlqBn)_?!1E>>NgK9Pur^G-vuI9kS^VvE8w0bG^@lG5i+|ukr^`QZsk6gBu+XVj z1g>-16oDI^9g4tboq;d00)%jn)1?S3aB5ndD+D(N&6}Rtf>x*Q{+<7^hXYh3@BZC|XZ!be@Pg>?p!I)V&z|_E=+i)ST;Op5(7N&uf3j`_h;XRs z+tk$KYJqpC{j%uj&(^(b;7t4v8O{|vxpdTL`q{5dYrXAJgZ0}mS@5Bz&l7$(estAN z!Ciso>-#61JhXa>kJ|TiCl@epuPuIuw8c$^&^ z`yy#t5z5f6ROPL|9R$pCvL@szv1WL z|F)ll7TmM_Fbc)mzle;&z2=z1F3o=nqaeN%X6)8)n=vWyudz#hX)B*GB=DZt+&!-H8Mg$Uj@|T2Mqa0p z?`Gw7I{9wB{Fi2VokhN>K>kacysk#R+bOSWkneWMf7vE~paU)?_I4=pbxr2L2N(sH zSi>b)K2gLa^n7A1m#`r5KnE&o9CO7T*{VySDkVLj`&QyV;IUzExmCvTSKQ$dW0;;G zi>tAV-X&Re_Hd_U9H0!RJ<4fM!&m#;#J>ZQNT(#VH!kCVbgHR*+u@fEkKFcR>$cT9 zSQw1_R9wa{&;~^=gKRbh8~m-uVjtN(X7E0uGx82PBj)UmJ-9n*vmhX51;YC;K#@8D$OGBB1PjmqB=2VN$3&~3GP>xH9s5ptB$~%G6a7QzuCRKeA|bx zPj^PZ-@^d-d#Jsl^7x$;cuCp_Hn&pWFOEW;qRs&$ew)INJx~4~4tziSID69(=S>r8zrg+~S;I2_@C$xJUvv+J z<-B2}7rAd42FD zf;mjMy;YpTpvzl29qSG_N<0dODAUuH=$8hrTETyP{{lO*^!u^13{jW$q3KovRj_jq z?W~WQP(Q&xeBUzJ*i+Kj3r+ri;ZMcNfHHgF+!((aCP7&xVMgN`!KS%`Y?{9#&SQ=h zoW~~OJZ=W(VIM=BM=&^#P6arRlyYz$oy2+kK%9qUELl9$zFOIX#CfoTiSs}Pa30wG zfWa9^oW~W8^MHBur|d##h$Q_kM+eky(lj*gJQG}cS9?O$3>S)+r-WuppkZ8Y*d5UY z-0!%Im1UT3P|rcKxf}yRHc(vqD~&C0jNLYT%#(N2q5Ul)ry0rqCU`nC51ct~$liGo zF}$}7Yq%qi^On*6wk6y_E;U|_$0}TEROP8&jb{%l8GFT)DnHtc`83(&lRZede4(v8 zN18bACH=gY%=2F9luW)t|4uO!39w5D%z-4fUov`pgd;bGiyzl6EY3x6{= z`)PqL1Or_dw!=7ht2RahHey(f(RSzizg<=yJ>V6M+)8cZf}TlB-0B`*CGn>wSMd2w zb?uFD=e-)RrNFH^(n0VD8%4OrjQ1us9`#S^EFbW!03zKj`KocEr|p9J2$*=`rs!{H zq*OI^-3LyWJ?L~t5Y*_0k(yCxv<=PfpjNMY%5t_-UZhhH&lD_c@Sl;68zB3fM)9dv zdrc{>aikrf+es7P*X~z0#qs^{scW6m^`55sz+j6@y|zJdA06LF1HmJ!8kUu54>U!# zcvXm%mbe@@Um;CqPSek!sZ}3!$ra_fE&ctp*yZ?M=PcgKgiF0-c>8ZMgT8PFXShRg zEUuAC+rbXHr@uH;`sp1F(f^$3lH9!2&$PtM-?1GZ=o?1J-2(sl{MlT#bly{;sy**%2r(=;{ma}o- z!2L?@Zs+a(7gvnLJ!>3<`#m}k_q)y?_u~P-`RxfSh+%l6BlK0(GP)V#m1gT9vz&y- zSQGBtp>*e#IP|#9*U)WVr!Kv-J>isrGEY-3v>xhE(49LY8u}fv)F;H2JCV5_E+TiH z8C<%sJ>mR}_yLRM%aob?gRGThm@T-cM5bmC)@8)h>?61+{EPs#l+4Ax>tdh?bA{#C%i*h~O~S=rILnEld5stv zYCXl8Q;o#XET#*Ju!cn&LCpJWd11hLXRA%?R?{ZVU&~R%;1)_mo4&8n)MzA0$3m^n zjD-Tl#LT3i&!=z&8!1gTz9z&Qs1PBLoWe3}BPQk^ED>1fH7OY}(|6OU?XJUucSD?< zn3#tkr*st-YLS$m0)3`^^Kq3=E<$eM=9&MS^ zSm=1g{GE^!i*ptWy)ohB<6%3DW2JJx!{R9y@+injKiLb5`Z=Zta=L#;L5}xW9{o2% zPUm4F@7tUI97nC)RTZH zj`tAcN~B+foQ_-6^Dg9+{vG7r=iwyebnVGmo6IZ!`;gOl_!H!w^8o#q1Ua!%-tqwK zOnScb(L=V?f(ar+rj1;EAe)MX>Pa%OK6D|{1$m;6JOgslpNa)l;Exyi=Lz|z`s80E z$Y=P-t%BU-BhL}!xB1A|2=WC!awIthXgH1+_tLl2hWfUb_B`SC>fNQgPZ!R)137+~ z5TDfL=p)zHO1KC9$J_5m=7!=dJ_~1i&6y~1&QZKGc`T>b;u$+xC{3`r_7vDRIrJ}k zZ{e(`mU&89#v4(I>XsL5;GMyU9%1-1;rSwb*M2#xSLXK&#qhfbhvPX^&z^!McaLO} zCzBTfNS}dn+W!<{D(77xK8TpgcMEBnFX3CWa4$7DWt{rv{^_a;=-fIi$70Ti8b#u z&8584wCy-)t9e6~;aN&ESv>67#L^Mp@*^lkRpPV+?X{AE7*>3n-{ z7nvxollSyeqLgE-u9EtW^kVK_hfFa;&t3J^h?%EEaWDg1cGck2A8+Qp26?GA0 ziIcNdCMBjMCS_)2>N0ilE0UM5n4FcB8b5i($`uLAQ@RMUf0rKgTnKmu!{>1Oa18UlOHp4CkfUAf3LV1$S_F|Vn5G&2FgPVT`D@g7@BSPo=Ol&lRr?G`FpC@c`O|4Rc!!Q25hTDBZ#nLj#b16yM^&hPpHmJx%2a)tTP<@1mp#X2TUbXY& zRS_K@@94#VRS#-Z-EOis)5#&g>Su;!OPfF%{Tb=c-uUn1tk$Dm+_Ck;Sv^Gc_u{PR zC7N*X=~(p~{Ab>r)eE!}aaLc6rHHMcFf`BU!TuDyc%?h|L8NcO>KgL*NmyOO{#}F> z9wWut6!F!)mil(>&&^Z16I$0$exHQaHSFJ2{xuL<*QJjpH+?zPxwh-sRX={B*NxB; z8i8=OyZhBC!`O#0{kr(94D9ez@>%4c^9G-FgUxM%Gpw^i&FqeX{|$Ka5Zs11eNJXQ0TJ+wv0kUx2nfPb36BaJJ${qg z^-6}7hc~a}Jv-G_k)wZV{IGV3_*C>R;tS_ich7T6F9%7UP$N*;1^##bd zA{*h#13ri(Q73)RCl%+|V5%%C;QU;*k>im*{X3ni|)a7c9~;wo*m3b=(?vyeL# zC5nwW8&3Gts!Y~YZq&h1l41jurGVoUy!|MJgQ=(^b>tlBZAsLp67s%<(!I$VDSRsx zI4f~x3TqV>WE=K@iyF`WR_iKAZl?EC!8TcjJ3@AY`@6yY!T(axe~SAHWK795+jv)C ztYlC;IhZ03UHae)HSkFl{G~bg3q9xdO0WLJ68s6);h#zqd{H0F`R|f{4)0I4E*D<1 z)IH=pDy6}gx?eJ_%s8b1uB(hd(9&9^7WEkyIsRhYYWS-9x=r56xgGmN7YvC}V`nUC<_x(G`=mpCt}p*x2aG9jfrZjt#_;{dls4&< zEawyPp}qbaEl(mup+tz>ySpB zlIV|3{3v;bg==XlF@{Ek_#d?+VLJd6v?{ zY-4I27O5cs67~gNlH;%<1M_$J2SdSad9hh#`dU`iD6_|ok~PWPDWjC81cQD@Kw|^E zj+8&4m(BPvL$meXQYLaxg{fwg>|I&(z)`ZJGRbb@v~~}SSyif8G^ol{^HP9elA)$P zz!)=cP}v-g&8kK@eX?2K_04820h@I@&t?sT-;?8Dv+jf6lUEL-H6^9y*{Xq~etfN_YN2xWKkO^3B34{^#^3eBy^@AM#y_yyP_=U4 zQ;mjMj3)MBlWbghR*@g0T>B_j$nBkJ$3jDxujek8G0z{gEPA?X?UTZWL4Qk68u&rd zk7d)EC)P#(Wnj%`V{EdOrr@)u?4A;-#o0Y59Oe@e{2F|GjSw$O2onInF=C~W*t<}U}?j)L=d z$+lD!t{Cf>`O1jXO4qz&q4OHgK6A2q)jXL6N1BZnahJxG2AkY77Rn-mf_}wl%rC2^ zZ?|p#V`qS0gsuFM^3FV2#63eA_elck7pb1nyCe(GFOol#VLUqgiYzJ4Pp|(Ad3t%H zrXpPyqt221uW?_`{|nsLM<12^Zt8OnzVp#nPc7N`=G(H8Xesl?ha03#+Kg!YkfcPL zUpIBFg>4!WgZB&gb8WvjSe~UX$JTDD>V~)qruqHtwY)RRmboO;O;wSgeyiS51BL9v$PS$2tXD^wACGI;ev(mITJ# z-(TqtmQC4R4zP^gCsI&VpO=N>wI!wb3cS2|UZ9?Pi%BwF%p-#@gnDybdnPOx%SZ}n zX9RFv%U-+_yJKg1a|*ERaLlh6nGNeK7F6IDUtL69v0YE;iuC&){hgnNGdH5Nsyh4Q zE&eQbG<*dPKeQGVpx2uebTM=4bV|HjrT40QhUbqSl}K15`7;o^y=oETXTdhU0`npl zZD3?JY-h2c0(b7~UV$^|$58emz82lH{cnegd~vL$zxZ?0#}_Amp8N;HC#fxqvJ$H6HuR(a zg)bUvm&%X6@7(Z&K&VY0U3pRRo7l&u@0||nYv;}nzqz=}2VV1VTaCGw?~8c$af9{s zsk@#Tl>U|N?j3WUxno$>x6|hy`fB5b+Y}EU`f&2=;}uUd<*a++Md`@DU)H7FDlh-& zUd`0;!LJ>;Lq8Q2j7w--LRgwpaE?{O0kGi#4xLec;hUg*Bk2pE&pZtaTm3RMc4K16Us0ttTPA^_y zYMx!t-hScal4C6gPo19?5c|`yMjzw+i>wh|t8%PI)g$cOpskGNIVHTm%yEXA68-f1 zU@$_g#wz6D{3i@GEyOC5W8NbPPYSq(AKZnvz#Np<&*xx`xjDElvtfnTPsZ8#MO}Gu z#kv4L5B7&T4w9`78l{W~&(Iu5u4M~W>kJ*IEu}8ETV~(l2=E)NKn683L?Xi!WLSp` zUm(L7WH^Kj&ryb8WEh4F(~;o;WcUFY?05zkP!0`&$Pk(wAvE917kY#VZL=7^{@z|R^TEzCKUrW76S%6u zs&O1T(Yf})j;hA56+bU{SrWV7J?wxx_AN=QOA^~GiEVKYYjwxAxrZHhXDQkvbG0T( zlOsqv#_Vu?C5B6sd4_0MATE=RROXAWu=rS!S(MtJx{Q%`_ ziA{SHAsh?SL0(J@OcFt2l4AS1F>N&=jt>G1x)#S$rSf%h%JZq;=XW@x(~?WTU4!x% zM3hGdD@(h}CK+4u{$%hcXTV-@l-ZaI+Iab|H1gjR7}oLZRphvX&cV$#RSU6Kt#+pB z4N|%KPs$`)d4jWiz&;+Y$+hdZy8Tb>WlUgD;DLe-ZI5n$d3Vq%$xZDx;%RJ=O4|XV z)bx%4Z_JfcUeHD>-e?=}`vSvyzMwdbD*1rz%}@sDh@_m=mX%IJ6;HV*mN_EZ31B-e zmDGe$Ee#P%+Li{UtoW01I;$wsR}OfCuS4rVrF8I+X|jvV3XMj}*iU;@_V53dxR}&`O*x0mDl1 zzfE5nVyjcfgd9lhIAW=9O7Z(bbs$musd=Y8P5K3BtlEl>BepcqSRap}EH*+0hknWi z+GsO(U(<9pTz+d&vhK*E({7hfd-~D}uvcrCtr8Bq($+L)G%Ju$P0sMwwkF7C=rYX= z8qjaqK=|-^Wx4T;;#ieE#LjAW%@{w`U1b=K)jfXWWyj{vL^F|XYCxvo>u?IF?;eg<8N|2>@!OLK=4Xw6-QAvL##$ES=1=W$n+e|q%Fu&u+} zpNS6h-^w97vAWvT&N2&+=*%(PRBzd735$;%itJMx%JYfv332!_23@`X-L)$Nc7`|{ zC}E-h(vr9JsxLw=R2d3UySMx%#Jb0n875~IEPzLyUpogJJ>HrSJG9}F)_~;)Xs>{w4@{7b8Q1& z(i|SBlMde5;B3UsoUmiSa`WMVNf5f~XVe(*93Q2%L_2MZvwUr#VjNR9L~i#OX-Z%TI-=)|%dRKaEvmf~|aY@MKT?(_gk;LmEF|20cLnt@j8aMOPtS}=B1p^ z8%yvNkI$QD&Rlfd?6irz&XdIJ4EFFkaiKoEP7`>YSpOv)uk)k)?a&2w@H)1^Uc8P9 z9%DMxEu7DrQQ&o+>dxyphggW$c@gC-atgc-oXug3@Y;cLd>p1S|;C$Y2x|uFs$1%^+jn{G9)5-a~;qqxjUgt`e&l?a& zmLV;D@j7&p!RxqQRo&8=7q)|eZ?4-L^1@zVv2wQtUcBO!zb9BHlVBa@y@WOc3t^hF znJx~(8W!yYF~{lz{yi|o+G>kzg2f~P`Mdc9G5CTM8s{lw;gOPTWYV$FfMLc$f#MNZ zYNeFIn2&tKg;XP+gLnn)Bm~Mwfow)8j};5CC-er57?O*S6NB;~7H@VX7`mw*Pho)> z6_;O${6iooyUIE&9!3T7ILJx=Ygk16ls^MA^=oNSGfAg705%1_7D0y)(`19I>B|5?a?hgW{(c$j8D zPW4#@xu-sme-Akw?*ou~A8)9PXMuJ=9w3xU#}x%R)%$74z0bom$f@3MLQeJNjtlzl zhMYy3zIpC_yz3#Sa=(V$Q!esvhkQ8X0l03_h{fY=fSexi$3jlW&FPQ9_q!pd<`54# zRz33HAwl}dPmxDI@*fxEbA9BWK~8$CK6*MK$F!3RFc;(XL&hRA)rVx_`KJpME66AL z$aRpD{xmE&<@|9W|0D?Mc&1~a?cDJ~J{1YlZ^YuQKV6W|_K{}@^4opn3k3O{KJq1k ze6f!lNoJ`EY!|Kz?$xt&P5Whm#Hn?!G*A!DfO;<19|@RV*ldYQBS668HR9=p$iY!A#i4Cz99U^QXmQx-ISoHy)`I;wR|(Aw2HQ&%ZY}E6=)oVvadG ze|6TxSviGSnbxALiRQxm;{2kCw^>)`PfX8Rp1&fiuxKJ*m{;lI#lMO_5)Ylf(1k?; zhvQpMo^Rov^75Apd3;-)AnvW%bu*mi+Z`|RG4dAF^xE>e>FM6|y6@_J`2T-UC-G$R zE%5qaCvjhDgV&EciF*sp@G56e-shs{mUxY{(;Y$=#dmla%Xt51Ld>H~JlE8#2dKWV zr=N;<`T%`-PrMV!DHzb_hYXP6fA=r~V7UogJH=waC60&X=Q?rp-47hn;DJIs05QheI0<6R72>X7BW?d&i2p9c z?~oAN-$0DHMci)%`HP52|1LfqNB*c_6CPKH7{hEFapbfg`9`F4Bw`ZD@Q=#-CytlW zokDyXG3h@cq}zm;9BN=_j@ySAbI!PD5o4+_?S90V)5VdWDa;k(<_p`?h3(UX?IRFl z>Jmp>P%z>~oMa95e-klrR!<|wTx8l#A-xI2${Fc%B)QDS@hosgz&6o})(W>0t= zYu@SAK53eVdT*!m?VWxC3GXzmd#6i$w*TE{JI!6a^FQRX{d=GE%Rc#u7xUi#Tc7kC zpY(8_`cr%G-v2e9^1^(!i{KD9)OhuUqTF}56Xn7n)WaS<4NpQR?6b3Hh$1bVYba(} zUREB4Niky=fF*Y0`~cE3f+gk=M{H3`Z{u!vD#}wEZmxD6FOT^S|3AQMiS?&}POQ7{ zRHA#G|3f5KFXJ9}VBB$aa|Ol(B8-Tin4H3P1zp!F8?VzLnZW(W`lLydST;UBL6^kk zu>`KnDa2@;Ralr`*lqs3EIBhPIdxKIR#uWObuy@~l?j=d)=b^xq-1M+azaXS7tZx> z`vY4z5;q2d3-=ENF-^~1w9xYvg=^)x=)R{Q>eI&Z?-hvk>6!oER zr0!7+!e%kquRky+`dSJFEEh2r9GJI0UfT7)Kb}hy!{?=bnL^vBe)aXqb6Es^7ET+( zu%iWzYm5+c!=SJcQGfoxT!Ow@VHcaIPe@}7&hFCIJI|#>`55PzSPWD+rr&*c?$zQwI zTmUlluBp1yRQ)Zuui`}++t#+t{u9?!1?N_?tM9`8gWxDkgH=t&w)-10szEy)F;zF7 zr%DQ5pdieszQ{@71d4^{s5TLyf(NJsP&MTGiQ6u4Ni95=MDL0OG$$3S9yAABlA}3g z@qeqwCmMFSqv?l48jNG|CXw!=Q^sRh^p??cxZOx3V$nDf$-_JKMIu2Bg2=A6{kw3RYrui7OCODa{op{? zrH`KcTN+XVe5ivxx*F~JP zMKwl8wu2#vj%c?>o|EV*3oIZo6gCT>0iq&GKo4jui)*1%T4bw)szMJh!k#)42}c=c zqa#j26%%zDSOffiz|n^@qCGnDq{OM%P+wWd$O*I1DK;o8fqEp{D%S(Ka1tt!9IIGo zs$7>XU0)#l8x-RH=UDQbc8K^&ZAYL`6-KF4K`s6Uq zMMoZSM;^3CoYW6Pg-=__<3~qb&`G!)kwki&esF*YjzXy@u~ilqR2E%zGBcyVwY+VO z#Noqt3Xqhy?NO(32J{i1x+7XSLIq{PvkEhnQEpT!Hl$P*;<{)RCG`qR1aclUsJ&qh z>;kVNpF(bpvQ5$|HdRT};J`$u*i@_7fR*gZbuMy#0%E36bbdk}PCTwou!2qG|3tdU zAX^@ofydi64SvmeX!RNm}iZr|Arc&A=j!W^CGAwt}fot_tFf>vbVF z+?d>OV`5Bgg}J?CdWSobNuLJDpv;lF!x&yG1=f&OCY|P#dLW5;!9XQo{{N*#eF=Dh zOZ_EG`#pF>gFAmSy(AjO1k^G?O6d)+P1IYOD>r7N>z1O&SVLWLSMSaBey5@%!1?vw zWz|*|rzqBQpdN5BaC_*<(R(Ln0|-+TckjS$QRu)sBvByhj$G9NR$&k+&{nSH1_J7| zwTg{^0<)!S>J>#gt`A39ZRq4Xy?r-X(3eKp2p^19q*gI-}JW z057^CI;~M>K{`4yY77$qM-hBHiwqVKbHs`jeIs#fos!@$81_@ZdC}C<_INg`HqyxD z*ifP<;zq-DC3FT{#2}*IvjweK&by&Axze{brL{Pw?q~uflXlh^-qMr?WTeKJT4M~a zF-~bWPQm(q_ta*`)V7}6xj_v8=nSg{ppyq0rbd0CP5z-qeF3PDr?u;W69G&C2Gn9q z-D;cyxP;?TaLc52M|1ihftWVO)Z?I19BFT%CXT6P#x&e|uBJ4gIc-LeM&Uc8X?u+1 zYUwQpz#VK&sg-gZl3~gLM`~-&_2-D9FEr{e`XY*2jZ=0x(soEu?df2c-s+1k0@$Qc zcQV1Cls<0r<*S-;8dJ75O`%iKMAhCZo%WUktWwHxM=CHK90kfckHakS27`3!PIIs; z1vz&(A{g1UGRM?i##Fi@M!-7Lj?)#K%KTiXzM@gA16yWMU(p3$#7dj`b6aq3gZyiN zK1c%F0&*m-5QPQ_Ht7_|bH%1u&uG5sP=BpapTpI(s5`H!fBH1KcJ8TfIk?iLxE5$R zVyEYlf2g$i*C%URsBa6_hcn0I!$WLY(mI*`HTOc9MN%ImOJx31@k$Q98}Z|VOpGP) z9Ltg$G#dIN&f6m|)&*fkf#%)9IcEb(dm)Wx18s@z78A8f@=BMddlsL@ zb-t%JOA6%SRjZgI7O9o@A(j!o{WHp@pq9z`2O~R|K^1!KC}kNugOvr8uF25UtSE(N zFuzQ{dCCEahU{GdrC()eoXbm@nS*3GPwGv6ciyUeF~E^NbC7(tbCm3FGQ+@8O8n4J zjpwa-(AOt(R@*mo76az&R-QS#2!CMBV9p)_b5_R~j=>*TYN<^oOPR~L@Pb>cM{8nS zZ1b}PZRVGi=Vv^f>SvCXjU3U|c5ajaXWg=A%y8!1;~IBJwk!$TK779InaZu``UnkyX8()?bd-DgTKio9)wwUB{ z$7VgtXpYvaLRHms%ALw2?UXwutn;{1A9mMJ$;*K+A5g4Xjv^rO8f8 zAJ;fX|LSnFu56s2UjGKsSAO%#lWv(!Zo(d1HTs2_A-3vU&p0JuxoXPFqK7m8YfM(o zwKG`>&wW(z)obG)|HDV`?|<*RA0FWdk@edGYG%lp;y*nquZXWPpnc(IDLB|V?b25y znDF`ye;}zMRR=9{{NSX=#)c2wj?%CrEMCVbkz6HE&S1IS9jmkGwHqbXC$ z(obnz&<=b;soliy><5W1CgIWLQa?Rb=``4)=RKt@W@LJ7W08jb)aVP)kC%vgN>`+> zzvB!KaoH%Xs$RIa5&G#^Q3p_D2 ze(l?!?#{1PJ^u06ov(j)>zjx3%^TH)cRi7jd0zB^HTa{8uTA{~1XI7xsVbio97LJt zO?dFoqpQE>5g$09Qa^VhYoB_-+R8s(NT~Wj{@7Q=8%i=1)t{{_TBJ@m^nPC3t_c$> z-;>Ro*D-kSvFDB}#vc4Ae*5-B~9OHN+i<<7`$*YR1Gz4dThW!42(b`oGN$<>S8Tha1YR{k`a)YPnez zWMuw5cBnsK$crtaPf!=(laH{8T9%ieiFeFJD}KH#C%Hf#*|diMLp^5d0q~iav_bu>ERB7LnOOrHB z)ARzQ^um+^7Nn3~C@nXWwqSsQ0a0;5NlJ^wEfAnWy-$)}1vI*d6@A?l5$k2$3M|&k zu1Q<5LRTxITM*rHkws;-D(kZQy7K*>nMs zKhI;2e{*g8o3#!-?_#N#KY<@5B;&lY;Wd&g2Xdd}-Q7!}Df1`uokW;ezdjQU!0=te z&LL%{6>`p;Oc?fAI_Si-1$1H(hlK7+YJ)~dqeOD{U}I5e$PnHsOys-v5&EUwAHr9P zUS-{8)HitcGBVz?2gwCa`wVc}i~MGN^_?)kdlp| zGdVZSm1%K>-6JTt92*JE3zx)Xu)3yspfB+xPVKU3)~r>nU3Ms8baiR)T~{^0Q%Yg0mjnALE@Ic3Z5}k!Sexc^G{Yy@wD-o?p=8&Gw&aVjz=KtsN@5y=7sQ<;hPtY$plavrptjc++wF;(lS`@!(Qyb9kuQ0)*z%CI)l&!Ehi+rc zLr|FEWiQa9SW@|FlwDiCB6K@+XHbW1+2Zou#oHV=l41?dw~!6+Evi`&I(#9s)47nd z$(*4oNF|Mmv&JF2Zgj5jRDWH`4O1^;?>gQUvVYjnWoCMbBG3v{OF3hlJQ zH%SS6lQ^^Bo5U1HzDXA2fryo_CUplkoP3is`QV#GI+;2XVJ(Yi0x_@epxP4F(D4cv z$q75er0?)F@_?Zx=rG7saR&1I59IDf(# z5q|119CRH|9}oOG=yd%a9Kfyx_!ojs3);7E&@=9rLpHhTUJl`)`ugd2igLO^3&?@| zhd@sPO@aGhMSi-kJ)qO-dkpAQU%#AJL8o*o=)v`G2A$eE19W*1|C^vwd6Pj0CNCg| zFn&ZQeTrcEH=-O{A31~(90z_1V{!2HK|!=vNA)C{zdqD}<3#$zKJ;|Zsh*Q?P&bnt z;wKyFbYIyxDBn+?ARY>rrAZQ*CWKOt%2XFOo2}B-I*F*e?yle<%^%N5Xa~HA( z=!0Gua&#gLg#+Q<(|W<}H5hcf|BeW9h#?3bs4E7-diSbMKb=7Z5Ma%Z$>$qfxTsHu zh1`zRG(gaef(IQKtAT0)T4-Xh~Gzy zVR=Zq7!y7g<60`|q+!12anqFlw3z>h7`qS?e!C1Y$yp=PS0E<&*9+-X!c${RP92XJ zV{$6tYw0?bm~Ka9shk$XR8Er^??Oy+>&5go#F!&es}O4t6Yxk4oOKyu!dYL77#Ota z(PC^wj3N}Q7$f4-2~zh4@~w7Db)WQUa3%vcgW$!>Nx`3{_ka$J6@2)iIN&*W*C_bqHDuxCCBkLmfGwh& z60u%7R7NC`G#X2Kg~9wfc*Ps(xKg-`!ypzcua__+2Ezfn(}gSMiWge2SRF*(C2_!A zqCBf8&jWcF#uyzIyA&hzy5+%ez(%oO8-!~a2K^w);VBqPOZ-_BkH&%V7=c#mLSa~P zGbt#ae)BZtFbszp;JUzXG^!9CB$w9Xq(gnV!H@1W!RtZoH?wQMPxH>J{5GQEZ46?( zZwH#N3O3Qw9!?7GRFM+~9vqyfE2w?-Jg5RiFFI)ek)|Gj$bzV&>uc{c2;Lh2AfB5I zuMEaByueL#+sIySr0h**BeKoNHVfIc%PlMB1`<- z9Rk@daC3;7=q_i=6kx7FlAK(K4jY2I+;O&>MD*wAq8nSSaCFg#e80Df%XD->68x9` zG>$H)1iDWKAaZhaLFqn@E}ldEd2lqX%y{13jxO$?`x6k>)CB>AHSg$x8Yj?h0HuF{ z^#4Xj7rRg|{@w9TP0cGXXdlmFRoMn6a}9tM9~ zL-hv0K7j<|Az?unFdn-9vuA^!{bu~^Hv<|jKl{yqLxZ!19)tJtsesV}C+y`B(eQ*I zV*B&5-7-JMRd7LYnvFQ#LB15ayR`uNo`V~K4#g*4?WY}D1|9>ZZLA1aXL1QRvD*cOcBS~h`(4! z&EX^y@i&Gbi?~Slt_!_M71>Y1V}vs<3Wn^P7K=-;A|bC0`Q5 z+<9pXb9}5WX_@FZBgJ@Mj9Qnx2^eM%{AP?ZK2)UEjeb#D^k}lmY~=Rr9J{09t*d?) zJt=gyRFhk(R))uJ;j&`3Co`3~)+y46yH`KN`?CnWCx81$sTFP}SjW{y7xH#!w#=^| z-n#NGV1HuV_xsr-i?=blt;=$AXWMTToKd`~v3r^+3 zl|+L|E@j>mU2I%9p+9sX|Ls%XZH{KclEM!>kbP+4y7~F``PZ_FA(H45nI&2&bFDX; zsVf-stFc{aj}|ztWvuCsN;$?`lpZ2=7#XV?^1z}ZF9r1nxZ^v`lce^oybq11H|+RD zjHIqJMhi1^lHc9uUH9&D8oib)EY_7z%e+!rl{ab1!;+SlBVW+z9o2cSjAP`jSIQ11 zv&+&JJ2@qnWKCL};Ha*s^p@pIM-Fw3)|E5*^lgrZPv~~5#!JR-VsyIoa5~JHwRL! zCA{!hm1R)IH7cPfQqCyv&?(n(%2i$3au1ZZl3uO`N2qI za>ZMpj(_~mUuL{|O#8sHl_~%H>x9=gue|-n_$MA&X8Ffs-#_vC#5_ssDR{Q1=G zyT0c!)RX^}@cJj8e0lz_Sx>)n+wFBv-1F+|0%rE6<09m8 z#Ayci@q~x)WfLjun=uMJ60&IBntIx^YT{=8asJEyKrM%A#@r zm7Zf>&d52O^8xN4JRdVE4w8&SsLEga;uZnQ%;y8j{G{dt%I#tJ%GM4BNau({Q~Sk} z&&pW7H1GiH{Gz#9Y2<5)TOofD(FVQ9Ko{tvo|>aS16KTTM9|b8exnNv*nlG%7<^%; zAwf@>2!>I)vFaF(2Vzj#YHrQgmcmFloKt&v-R9L%3mK^q=i)tn{J1HBk+2|$40okp z%Sc(0j(|q^-Xnq238)L9;{Qa#1v4OP$ZSVPpm@GxQOy`HWR^=lqByv?&(1Y&QE|HCJr9RG0D{9k|m zwPE_dHuOPr2Yb@^r{9ytTgR8&ocM>2PM>>uLd1LTt(jc2H1YMfigViH=kGaKl+e(R zLyh_$R$2f%9_&}+AwOV!-T7^gRIhm{=k6B{wwycnVIO$>K<+h6qN9qGoVyMlY41$r=PwQhv)Za9~}SLSo*o>!$Gk0i}YLlSb7?2@FIap(emFjcAC7YP;pl=N4k!8H_;`4`VZ0=xr9<_$9|-@aj264~9gWO6JwtQj zw{X+ZnUVKU(KU*-3$p%bC_6GL*%5l6X3HO6_~TQ5-SYhXziEGCbL!dB)iJgm3vJ8y z{Br&5fLofzw0IPTez zNd>^PyPqCEXNTc{Cw|V8*$1A?zi(%O`l&_t?JBFukQ$$f6!6Z^L(a&n+uRF=)=Z;* zE45_4MN{j*D2$6gK=Zl^fF&%)xBf!g@?Q$d2`stT7+B0qzp)*|8VnXNJOzep!SE6>3<1NHV7LJczXgL8 z3~zwpS0o_}3`4tOIw9pC{lx*8I+V2B4p z4j9&h;V)q5pgMrzS}?ps3<+5p{kNsro6o-G8GqDJmj^@pUgplM7#lY|cCSq*JA0&Y zvt-J&GpzEALAiaawxeqO`Hthhon>5yZJ{#VSe@=|XA|CL6FS(0Lu|rfHsJ#%q0^Xf z6w178!pCev7n5+pnsA0m_>9@(Dr<6;d0k~~va$|YX+(!3V($#I@+x!nRc58dSZy&X z7Z|G-7?lf+)eAcck`m@i5-gI0g_49tk|mX8){wH2klXAbW#u7dTu50>$h@H)wxOB7 z=rlCu4PB-0OnR;|TsF06U!%=heRgP;=B)d8bCn}u_flfm6&9!1(6+(W;?>4ZECuuD zJo6uT=3&I_Xdz}hF^|y_^M0NgTmQh`7wal~_Lf+U&EoLv(KvLaiyVsc?uc9LiWWt_ zC0gD%*){x>Y`Ddpw1k!arE!5gt~>84t~KOc0=YYwtY_`Adl$R1N?g$1=nR#z$$9&X zs@+>go?u5E^NgBM^9A%hH1fs;Z^UnIjcaqnliQQUIv~oR`oTuU&Fpl{Zgb38s{2UL z{&-S7%^3P{lWVFT;&-!*GrcIR!l=o*uhaE#N$n#|>?^32LFXN+lFwbr-lSey)aoe# z0{&xbs&mUYqh!ptT@l}t%aaeBjOrk1W7IWSUx_Jin-%$#CEDYT9#*gsxe95g)aQ1E z?VRh_1Sc8uR8C*q;hBvKD#x9XkKLI&4z)Dhq+@DLRizHyF<;1gPkHmQ?klhSwYl;| z$P?;N<2Viv1BbI;44;VCM;QYnEtdfjB#B-~`1W5OLa7~sKe zEOIe55hR8gI-zbtNaF4V`BP3+W}kZ_a}qt2owg@c+q$;g%RCUa zLv((#=y=p0BvGmFMxjF+N63w*`L612T##Q-@uqp}n>|l?UF}zF=%emhG$Ru!_1wlc z;~i+mG3_Tu9S&;7F8Ljv)_KQT(TrPF65TYu8E2HnycqrYi&0+&n(;=d%_H6OAUBKC zNDJXR0PiAnG}vnBXwy?I5G@A$LF9u}`x?2jX!JUD9CktcpF#a@DD_c=^$7Hm!7BC%jnDKmIyLG5r{ZQ$ugIt(nT4`(< zdMUMKg8X!2@%c(?;y%rBs(>k;Do~eaj98*5Q?=O+y0wm+(%7R(4Pc&1H^o&`5$ANB zE!%vFRIy`uRI$5NU*N7IBw+q7$xxl@GRx057PGZf^k{09q|wg1I@6!eH)@wCwo%=f zXvd7w*do5&3aA=Qwbl{)G&zw}jVq`c=kvY5sq(?bG7NN&1A0z`YwGdu1HG_YxoIJ* z{r-Jk%jg#T`+TW+jrZ^4n=1Q~_wUpFwpZ})Lo8f&GBb+&`*hZ*Db4ZA&|7)WG|XgcQ?qr;gtvZ%=S0q!~u) zzGEkeIHsJ{~W{qs3|zo#cd4By`bL5$Pp-I+Pom8Dq*r({zm95vjv9sYdwD*NcR zNv?FuNVhGSCa#yNj4++Xds&J%bk_UE!C;TquiHj0bs`c)-L~o~O+p{tHuB@s<+_*G zZF@wen8rwyEJO$2jC$8?W0Y zTyniM{^R4)w?AHVle(ekCB^57yl$H}`Z3aNd(^MnM$W=K+F4Rjw~fOb{F!x>sM}_( ze2{e8no&th<*x+Yw&XDA)43k)rQ2q$e28@01ir1JZkzO10o}GnNL^$b&Fi))zv)M} z4VZKqH!=40`0?o&$d8Y4Fh4$DtFt9vatU7uBSwFId>W+!CNdx8(nl@}4hj_01L61M zL-x{17wj4p6r2bJTee*ik^ zvuSX{2|@I8peG?c7IZdFX*M<9|rp4pi_PQ^&}e@^l6i9#^Zx-fW8HEYG=}o@V7Iy=kGu#pD%>q zqw@Xbz61JLq{&u2UFVm79&{>~Y_TSWSnKJ;o)4%y@nma`f33|vov;K#fiFuV>r)rV;Q z_NNAaQ>172p}!-_p8-0$nwLZThe48F@4|p;PW}Akz8pnA(*H{%MZgJZnLWA}m%{w_qyE>Q z_nm&->)eJfGFf6dyf#XZFF#l83fPm}N%2dfPATNwWw z2ecb`<;?yS8>zbeJj!AL13$~X8TzfmV7j0EJHlaNq?vn>Lg=86^dJ8tGlnj?)INHn#830?^0x(kst+Ih`l$W*8=~LHW$y_5gXyK_U|m6ap=pS* zG)Ntf7|W3%$zmLj7;BEyD8yJhrG|?1?{WXc_k|cAMT|97>OsULXTM1QJz|po8zG(g z7-H-Nr@9bhIgn~cOxKYQN=i>aOmc@Hrt&mmS|Y|@B9r8QhM4${i}44DHK4a3##%G= zCB*m@F#UeSSc9gPA;y{}wMfjrPRyS#=4T?tt)-4djQxbv@6d)=BTfGsVyxv;KSfOX zt{))A8kN_ZrTXqg8f(?mI+2eo0!5Tfod(Tw26m(aTHGrB+yY7BAO-(d4YObe0cRwcsu(*nw#AYTmu%vf|9_ z;uXscX*rY9vN8?Xg=yI<43lz-S4=K0&d8W-vjxMzY@#x%S*ur68c7f!J6X*iT?)EGp5Ocf}K7{P>eAa ze*=cW^o;HFApwE#02I2=FoVduq@J-?lxO9o0m_9B8<-ZDa@;S)2;v}sCWeFnQ7k^Y1RqSOYj6nG(_4gh6Jx|>>FJHZOZS8P+306Va~}%JZPlg6WUKUZ)#-&bW_Jvm zH>>6;CN@3ylv(SJOm4N97C1H^cYSi7JZ+X@0bYQ)c;@528zcC$adV*^oZ)AS=RfP| ziQXMVuMZ}2?GW(sfD@RfKMfBM%!uwTEwdvLelMDR@dx@hf8S6I#}Zj})f)}UJK*uc zS`9xycLWUIcN$d;3oGYI%(LNzd4l7If>!b+0Bsz&A85>*vDY!}wY=#~vK;boAj#S3 zn!Xd~6-dTZvCoAgRF;NAZH-}ZU7U)j-;wAd_NH%8asCkj23%-y3E+lt+ z%fxz_3RhN)*VoiR>4fbX&zrr!=CAqlavx$`y2qMLEe_SzWBzMuGH1%Y-yPCRjA7xG zhPu;ikI8)BdO?}vn(i>~ZaL@qE-H#We%i>}itO*!YV41u-)h#3aO<$?E-uCFcC`6{G%T%*fZKfA@~mdSMUKc|w2H zOKg4yOyRT1jCAaMCF5N6mPPMoUCpQ~4HG0!p7k5{-zXUNx73H~$HX)@ZFglqbikUD zcy}?g)zuuyrEjh?7NyNf@-nXWTxN@1_Y1|zTg|BzYbQxxlu52-$}IT_wtlSd%Xd68 zrgAkJ>))+A5*yGRd1i3?``48Tx+BB)!2bTm_W6%|bZ*VjRrlO`@Qbe=Te|Jl{qpkT z45zLA*!!HYTBUWj)qGeTrId3xDoLVc{HOK%O9fZ`{yWMq(sp1g|?~Ml&a4x^S+;!6iModFic;oWnVb z1D5YI>pLMHWg00xDoYh}a}vX}NhP%B4LydKU_176Jh}t*Dpi~$rA9ioLOQNds!8eK zq}r5jPC6vT>TnK8DS@b;@#FvDw%EyF(jfTpY3_0!KkofH|9^@d53;j9m`QfjD_O;4 zIGN036^CeAvPz%n^19qF2HA_9zZziTd6b5Wb(ccDy^EQYb?ge@$xq; z;ZLp7AK(hJG=FL>P1#*rzdby%N}(BEQqov2sa7NmFE8n?m*`7Np3kt3`HNXVPbE{p^US-=}7w#Hf@OG6cydkaA&>)$qh*M0;cG2&2;F`#``#Yj-_ffw2RcG!@ z$yS9(V^^!940Xl&iY|H4-!m5#8N=grj(p%DmS59SthklHpv_EslxB(U{u-%6Gg+>K z&Gnf4#;0x9y0V |K_7A(MJevrBZ&&z-lA^|n1xW8hpl9#`0D0n@r7^ghRZE{&q9 z)2Xw^s9-C-%WK_s+~AxZev4IEY$zRf%=8QbOqP7PS! zyLKDod*p8!tCO@$PW&mZNT-wWSQ%iDU{c)`X@QY-3ruN8!_c;m3~lQ|4sY|RKd>IO zhZHv!cSvtN*b%a-u~_Bej;7a{8exk)Lv_G<(4&z2uDHbIh3W0JI?EEpRMp4yXfZYx zLqFnZ`OKbY6pyCSWHCsM`|*f|OfbHwVkYG!iw6xD(XhFigApsi_`G+vhekq-BYj4OpH7vnJFSz9qMI~mThJ%WNV*M*f7cYZNl^K zj-r*eWEgxxW#SaSEX;~;ePgNi{Zf77!6OFiBAIv(E&M%1$=~dpYnqoeUH*jL!fZZX z)g^J=sK{4+n;CCoR^5@(YSm2eZroaDC8n043Q1-9K`4R0&wmxn@pGy&qN%A@1m7BJ!}U+C;Ztw z9N2r}>4ca12=rv6sZJw<==2efzUw-0VEG=96D!gm4Wg^YW9WN=I7J_vqjvwnL%guJB79OOyh1;p)dggb@Qr<$u&dC+PaaJAyGGy; zFA8GdfeEE6R}`16TvZHn<+gQYJm983zyiOUQMPf-GTPN%#>;{|?A{WJR~PZu_bM;2 zOA=Ht<|eT=Wj5H*;_1r~^+y00JfK;#|}P1EDtt?F8Cb>aQ1q=sn#q$jT$HXPqK$5DKpX z|Np1LQEY~E2_wOq**g%OLM@K|^2xD1g=0A0T^w@J_4J-okleA5k(BEsI*n2Vivj$c ziY*Do`xkoKFI@1K6TngA62d^>%cuB^z(@7qgC9R(7Wgn6@%FqcMLwzzAN+h4mvXaW z3vc_I=&h&&)|;uXA;x~x^cN6guRZnGh%xk}(%_C+AeF{8%KtNBqTh=c<522C#F$&A z(|AR(5iu@NuwsmePk(_}i}8)$XhB4B2ruB@f7*aF?f?7l-z}#7?TV~k_<$s&iRKS` za1xw;vrn3OBsjnCe*erq{4m8_N>=#?8Zv|P2YN>@V35Wzwu8r zOxn>{Hzo8^Ol-*zO=te!OH)~Kinq`T=o$^Zr`_ClvgLpvx@Tk;<0~Q;yNPf9<00&QSl8f!p?6*#bR04%%9#WY5-e**(IxGQU-P8QaSJ>>#K2 z-a$_8cLzCK+(F*>P+<3%uXaDX$HDu?r|@F|W6Wjk8|(4V{*?R1pW~g0GhQL=8*?(F zbc|8f%;~E)y2+3HS{PSqtIl#)Z){L*WUJS))miX@-B?|Q^AgwXHA=X!&oU^>OI&2S z$ry0{&N$-_VK31X4|mu{xy0tAgwFc#{Ymkia1AdpRNLV)J4MM^tJl?4!{2>5tVHU` zx%N8jD{|EkwJxx)$a}T+#-B=xKMGMy;>Sq|#~g_VOo>N5@tsNVXzx+p-cY@cQEV)y zn%u6cCimQ2^+vODqX)((tFuy+8(>_jM7FV9xv@lsT)RQZ(ax}|%&uHt*MI$+$@TW( z`oyEK{)+nZHxg8Heq$N?pBpcA`RSyDw|xl*9PvkuBT(UwZHc@q@bIHa@n<9ny}g0s zF32)gb(y_-{Y8ygn0O`$YS;e&OIYlL(XubQw5za{ z4afJ4?u%~iDpclc)6j8;cNqi=Yf zY(~3l8cz1+P3@A!J@11Z)Ep$+VFc9`FP^lBC&+4-#62&W(dA2E@~1boOoItibU~eL z+C}wWKz2LvJbY;-1EHtA+Aq-p0YjsWzBR(uF%w$HgsWtQ^irJS-=of?5l4-QAJ-=y zbHvlD%Ece@B_6^#y;F&&90R&(@7Vb@{=E0NuysxGtQb;Gcx+)x)Z1}5PBI$a;$ zMK2nSha#{dDZZ^|4CF_W_3mnW35hB%#|WUjBSm?8iEEv;x~xRWp`M8cBzoSa^uWVl zeK;77)rVue1%iX&hp$7vg!W5~IhN`>N-%Vz{``#u)ttZlSW-OjAOjCsb=76r%8e;X zRQqmJxSU3EjNVx#)pn1vtoHzpyGV-fk|d%^Z`b!70BbOb*!9)7@e=_J+Irp!V2NyP zgL1urAHz{r2L}0WhQ&yD>Nt8T@u)Svt3Hui3wwbWor1?bT!P7{0rcwInGdY--AUTB z0J(VMyKU&u@DDtgHAaX)7$mKPf;j~S{)FH#I6-IG2rSbriTHwHKl3G=PNI>v-`1$P zgJv$*?d4FbrrBgeIkkWnV{8H>bKzCOnAV}-_ByiV)+1I{(#VuGI?M{sQDX{?cULio z6orvoMyJsru>(YNnutp4QERr48)aC{b?qHn{W#$6-7?Z_-N^h z<_^`t3g3-SggTQ8^zp|r$JesLch*bd7CJA9TPXP7fm?WRks|NWnvtvSXJXX0#mzH2 z=N*b!(0uAD-JWhNx6zp2(JKzaMvS7Yub#YCdSpuqY!RXwA|V@ z9xT#&9)+O0df3Y`38Q(e#xwubFmxs}CaV(LPr8&bkH+kf{G07p24N7c9MpbgFAT!u ze?4*Un`g_8%)7AbqtkzX=`2~^d-<0IOstkU<2GwsIVpq3K*Rw=rkdk){?9eQ8MHe- z7d~gx&qS+vRFq!NNQ^kA;B}j?NJ(R)9zMkoj9|&)B1X>P(PD{~H}X)U7hjtEKVz%% zUs<5QZ#=AbIm*}6et$Au#`3>GaSd<`M^u#xBYm6VuVG&_dF)q97~@bC|N9xZ1O3Ig zgEPZ<+<`}WrI(Y2r*v`Bh?F|#xF)A2rIT}NQ_gd_koU9gy8mq3b<@y?|9i0q-gGBp zfZKLp53-Y0f68#$O&J=q8@A_~)AJ1Ny7&yutk!lzOjJgTVczD=@-ZpNSy``UJ+g1| z?kW4yhh^+*-1G8+iv6=I$t>OIEzh@aS-rJO@(g|((zlB+^}3Ymjhyn1#r8UYC0nv# zxxJ&sc{+Z7efSv@;F*|-63!$ge2g{GyZ9hN`+mxHSV^DyIF`Ct)4`~GUbef1-Z2}C zZzDK~mM`S@PVwEB#~ql)#>iqP8KlM=LSsy^TXWO4%0iQwotv2s(k>JBPbVSf_fOUN z_`-s3&K-l|4rULGBtRW1uH4QpJtRNAeT-_@BvaF~q0PnfbT9nUX}2NkF?Q)u`SGL3 znrv!%CA9gIRoOMQk8c0;s9~$GwNyW<_K0P1RK}#Z9qMp>W>W`~=hB2{W_EUPd9Kwh zZpF2GY-ZP69~yT0&aKiPvPxaydBY2AjUdhj#$cski?1pvd<>~j0Z(8dJi#FmPmu4M zuXt87O0CUx7^~u(a?OfZMN-pqWFxFeCT%(k^C`K$nfvlfS9#v>g?u4w>0cc`b*@3P zD1H&ETB4I~=D`Iq0=VEQljaN)F`(Whi89KW2kX7B(7$(%^FGgmOQVE{tn?t@>Xn!y@^7*c? z5huXDHDfL*g(Js~@ z6YP&TH`+7-IsY@I_*qz$X}@& zuF^5TYc_#rpWX3l%+jK{@|;dt_L&xcC+(5H1Kh==&3i(UIzxEeMYj}vly7N#%9L>4 zH$v#6>zz!>FzxP;Bvp0Tv8TF5E*aTn8f9)CHNh@e_^KOSqnM&O#+03WH#~*>+tYjD z$6ypJQH(Ya24kylTYc!RR9VbUoTzuDx`x*Iw%Nh}x9AFaZ(EW^I;k^#tI4n`_Am?n zmf>&qAkguvG%~u2)E9|@bF(C9kTz)u!0J$k7C4c}~`p(}7{}I&) z{70UM|F}Xmwa`ik2P>zTWhitLV4={ikQ9!3v&K;mXoKaKUdo2mj&y+fsadC;SI}6Yh)u zh_3kjL&Kt|J;&Jzr+4pK(Zb#IL6zjO;r{ywU_jdEItn&SliMtc7-o4>QaM0Bl1S&& zijTgsY<0vgwR}0=XRxe&+1ag6Rww}QU=-`Sb;*j^IAs;yH!6qGkqc{A zA+UCJz~z0kn7!ZH>a_v|({9vet=d+f?S!!`phk?coUR>3+k8mNWJoizsSPnxQ}k}x z=4eL0S|?2d%E^sujkwlpj7Yy_8xxz7c9v;$xwO(LhIADS*NFHJJQD%@2fB73{Ks}> zwskwFI!H4D!w~-CM#R7#H2K$W<1lZ~_wsxkG?!2xP@tIRsl`M@n24Ari1~=;BYxK} z0O!Oa@T^+mj_xf z&Z8D|DwlNE1Lfkro&Y@qbP9COe0}76lE-;8;S_ECBDL?OaUQ*zGvTZfSt4f z;U40qUZ2Yb!V~;7fQ~+e_iRA^zXNsjsZzhdjsbWs0q*F(vHJio{vGIzzEvNf$$t!j zV|MV0PkcOu$2{==r^0c_@y;O#{{y9Az7i>Ae5T~0{Bn`O_2eIvJH(i96qMd3#{QZc?tjOjjz&xn{rvto>hPai={ zbu!|hZ~zD4J^cI5G@lUO!{1ID#k9Zuk<|v0BjUzr%g^vTd^WDBYQ=r!BCXdqrK1c ztH1A|XNkpuK=XWx_-yfnKL5-k1%g-P@uz9cN(ZfnDEv?y$J=;zDfs27@IcX;1TPmy zkv{-;A@-L*S+;D^%*BiRxeU`G$}x!~H!6bnGZ6aT(qOm{R=l`N#I1Dokrxmwo(zTy zVUh&Kxgx(83$x(*^&{_+xDbmd&njN18ztaD>d<~-Q}nv!!R!Gvit_42d3I5rzg}2V zmiW&pruSaQ6X;7~4=$t;8H8rw#$Zg62y0PVyHcPE(LwbK!696UlgkJqCL|hicua_z zP68GI)UXI(-V_S>gbH54c_RUl`>WiLFOUUO0GrG@G9Q4Pww|00oWe*zZxjgdBQQ2# z1`1@p9x+Roh3=oVkT*N92$U3&vY4kV1;rpzERy>|YvwP2NCDzOHw=i!ETB$EBtblY zIw?2yf`M!|R$piU^$j7*?T$}PPz0W6_R3o=WPxwuy*U?r5f7@6gW zt>WEtsFBz%HB>oQdC34K5=#6g5?tl>UMy$mI$pRPEZuy{Tu$;M_E$BMd>ClBe=kq3 z;V44ZEZ6OFrfft2rc*@=b6$$TQhUFbC)7}_fRe!_WA;~dA|ckc3#Xq)6GRB!rC-5Q zM%7@_ygiT^6^Md~hKPz<UgBQLPT{&$|FQ>A>#PxN5XBW z(2L1M2}Js>gp|-g zm0f&0RZ_t2nY%d~5uop289sIMshy>tZI{IwJ-_}sQ0o&L=`*kMR(9iZFe)hlnAM1bj zlJ+7-iuNM1^mCZ;#@{&>%eypLx&r2LpJIoQRhOmbjaf!;@`AXUTbQ?LfG7L~tt+Fe zjQTOE3d6;ABT}L(iUM{c-u}8k7jJ9sQV}M+mc_SL#FzAGT5)NgraSezB$u>^3`q3r zwKTMn8@gWZvHyy9_IXWr@}ZbW=9{_8M$kR4#^sNOVbYdcN zFp6=0J=a{PQY})qJ}G6~m06WWt33Qbz#PT>yg7=fahc9p*j144%63>{tHtC+w@JH_Frrj``H!UH*YVExIE1b_ zq^iwSb>T+lER0kvi9b0pq2;-n6}d}2rg}??!-!QqqFEkOD8on3SQ<2{s+w7-6&pJ4 zVTsq=u~P2QJX6Ijdczzl4QHH-D;c9ablt-eheP+gPNm5=?jFg=^W#)?QjdI6P42EI z{Z3xr-=Xrh?y_UWrK-7ldSM4T=l>bTW9((xnRw)1Gwwb3?e53EPkr^xHS2EtVtBNt zQpUV;a;3|sKhI)TSK$e(%C~#B;2eJ(l0aW9HjR_9fnR$1sDI=xQWyijd<>)RsQ!(H z6MsoDfPd_a`T#${4Y-!%dEKhmDe`7ZDI=#}R(!}C`9b3`u;M3`kqA}! zCv4A1c%PztzNWVO1Rq=7#fCx^pN4(AlO zR)wSaE3AobWElpZ>d7ueFMP;WW75{VNQ+hOQ8lDVExM3}#*phdNyu=^4#~{nmIg^k zoTW(;5^w2}V8h5Q4H;)?l!lDAbV(~GSh}SlITnvBWU9q03z=@|mW5nv3Aw>72}!VY zOF~jDU9w6GCo8g8x`sS;=;_1C!auw-^UfplltVr`Ir-)Be{#$}_x0o7C%pdFC($MM z-}9#@iOdT zK(QUZ69Gms0+W*IWX#E`d6S$SixDNZ8%8vkmsF@3fKD8hohBThCXet*Zj?Q&P za`oDis_oA{QWM61*%RJro)y|G`WIe`aS`DU>W~;NK#wV|jb%o~UDWWTO zX}}y?pxd5N$7Ys*;Sd-az;GiNT8IID7Pr99;&%91%(R2ygw?4lh_2vJ);c6lgTDj( z&wziq5(UBSVt8VKZus<0yY9Mca~^)lrmuYVh@o`R9$Qz#ioACh%=@IYP4=6Z;n&*d z`=(ZY8RPAWY4*gldSdo_V%oaKxfU8+pKInz!sjQ2&oPA;*uv*H!VBud=ljCv91l;) z&aTW(3CS^3=A?v7F;q^;4w>5Ug|&rKKh;sHFYv`|50{OrbMCPjD;HW_be1Wi3|WL#wCpevkVpmejCy2t(o0h_yCpg8K626~k+?h9shQ^; zIUST%$qjQYrH(FG76DR*bNI%$*yLB7+E87!V6k!Xd%ZIr7) ziEhoJQ69SiF83U%78ZCR*eXHEJLFfSY^YW&>8@Tx{tyAKiDH&lE0!{$*HKMuD0y3| z&OL=MS(-z5oT||Imb2RM-&>+yAX_WDjM&oOuML0Q9`#$l?Ul?W?6fR<*iFe}&vsa}sgco0vvTiv-=2`%r__9VbSr@z(wThP@K1Hof3f>k z1IEOSS8?C6CV1Gh9(NvFh{nu+t!3Wcyla-aKSYn{Rn~3n@CLK-xXlB1jE@VgbRE@o zwt7QJL-iB7O<@}ds$@4YW$I8k3G9v@c50hbaU`j5#C~b&p%czyexoh#8D~0YZr&S` ztJCuJv4^2PmIbI!(t|_47wY4gsNz;6QGMR_*XQxpCGPy2dg|jreHv@)$tj@VfNQ@5 zy*A;>&ieY%pN$+X^x95^q+{YJ>XKN?i#UY&Y75a++3WrJ5bxlsJ7S0e~a4IT4VNUtkfnis_sGy3`L>VOmN~7g^4Z3jZ;f|RT4HpYhsVx*AM#Tp)9|J737+M+uK-07r+XU;rGQ zbibm6Y2w0m2}n1>(XGYxz;>16w=N%Mq4V*xwOK}_o$zl>IAVh6(rf_5GUwE@+W%Ef0WzPw?mFUj-Q|5ebb+zFru$_0N1=+xFC_9ejoKIjubr;v(+ zmm|miFWQ*+iAK%MmrFN@aFa%`4~4!=p=aXKIK9Bn1HsM*5CT0Yy^C-X{owP0;UI;# zW5X$!5I~U#?yY*65D5tX_oDa$#SQ=_>mm2p75TsGeN5b*^BZOgRLBoT>1CGbqTGIQ zd%4n}fpq>H->W81sI#W;CJ+0mgOxZuOk9U}LSx+_Z_lkcx@b9O> z^^L&0ihwt}cM$1JBcCa`DE}SdI_3iMe+;hA@G-spun;ZEVPqPqR#zp>3#YeVn78v0 zU(qG-Q9bxD0Iu)1A|KVK7hfM-Up)pM;Pp};MT{Y5`Xg-3}pGo9^_s$ zmJEh9ED&)AeiUsl3I8t;g1ssbXa->lLR((09jKg1*#?#m!T7;-#cOXPbcHa+u3I)K zGd(S%IJ;u+qW@6*;4eivetG(l!kP;&D@SttVKDrlU6k`{@d5*0PVtrFDPp!? z9O_rNvW&nfB4ydKf`aSk1+p2KjTHhd^bk7w$P=hN{|Cbl>R_jdf*(KF!S=2npBeNI z@-B%VB)d-(to(m;Uy`sE^Pv62s`t9(!SI7#QC^)Wj}zsINg6Xt{O1&p#-Za0w9nOp zA8bPTwC-+5W|+G$aL@|hLJSC0Av&mjXii?&2+?H)0*#rjzZTfA*|p!NdFPQ`sTn8- z&U_*&CgEiECK!|wk%O)d$QCeXn>uj{?3_PG2UamhPnT~h2d3}>P;WAcdCPj$8LAX7 z3gAH=4d-eiSwO>WdW|Hx%3)Hf$77MJJHXGHYd4)2SYTKxh=s;cK_qNTZK8n}_2J=$ zD|tX&5UV#J4VI=hwUIP}9HJsu_hs!0umX~}iRukjqky_g+3#ZMKB?BDaPs*u;O$65 z>2oDc*5ZV}&ou86)6D|*j=U0)N1|-x&940x9*NMxW%&hLe%}NzS=zU+7?4p=dx5_$ z$mCOPe?E}tl7iZ=dEOo$NF*BNnU?jG==Xyplq&i`D*I)@rgZXwbPvFWwwY;vh5w_5 z;7a_37d(5@Eb?Y_Cdix754A=0#>|}6@{PX@fZK$c_4Z^Ggl}6Y47x!Gx4;bc!x3(m zl()Wk-AY^O$~%gSdM3y9mzEujmpe0@AA>IoFEm=1wHM?JYLpm@ghyY}zG>M?F8| z<ei#uAM(Cs%LBf{i<#>+(<{~0g${{>#ow-{5{g?pJ%)}uy)l#CXQAzw?! zMbBTChnJgK$Bt^R@H}eBmS)%%*WJ?G7{JTjg@wQ+@p7I^nDFIO!sYI~YVI<1mM z>H2fJY88I=~hT>sfcfV^o^%`A%|q^bQ* zx*oqp=tC9Oq-0u2F;r<3f7bBWx`YF{?A!@tFs8nz8a7y)E9wt=1)ng4+*LmEb z>g^tEUO(hvmFhb<%{cXII~M(O>pzX{f4}h;_y6hO`Y8=(c(Yg9vclKj`Sb4IpWXFq z?kNl;~^6vC| zesyqN!kNs82j8=8_{Fj@_a6E3o0m!_zWV7m1A_a0wm0>kZEwniXY_wBwoe50c{81i zC0Vt2l9Rg;F0Zm$-0}mOmXQX(ud4#U`b>cJUH5*wfnAi*Vp{sgzb$%OBik@NJ*v*L zxwG@^(WOT}Zu_kBz|!{4=C@DJicCxy!W*W_+?_u8l?6`KPv-lI_B5mAi+LMVG=9+D za?L|2m4zwy?M`tur-ZAwGGk{kw{iwR_dc;mXId1a^b-ANhWnZ48gFfo&6YpkJZ{}) z#=TM)V935pIppvdzTxJ@IE8PlosziB&>!%bRs8w;LwsWed8oMbPDw9K@m{FF09Fun zjFz8;KdmEj$$Mi|omnPtQ>gTVc{;-yCwF(WTmu~7Vts+mkXFZ9mm5spHmj3+*e91{ zxI(2H6kq@jaPe?3Oaj9%!O#hY-+^I07``P20RI-pmuA;I`^@8NAm#3`Op2@8a%)yh z;`@upjw0a`;dm`FA5eGaG?bf`OuS|K<@9H`)(Vz3ho|6nO)z5hL zNcYOSI=*wXC|4SvF^za$GNMtEvez`C$u#0M(+IC*M5`pFO){cgGE;dSaCEtjh)!z@ zqxJv+m@A1nYHiV}@6svbsw_-MPN$(lIwBM2U9QYdg9Ru=Rmhz1EKR-T2+VTDJUbN( zxs}A+@HKxSAc9pE&l$qy-AJ~&J``Y6$fKjP z72}3xrO20uRj?YNI1Q`@C7GPj`d8=561#FIXyBa;_7+3A7w5VX&p6{LZD8QzYp6;! z!9qwplZeE76%fIR-M)}!V7jFEJU7x60!&wTWf(VCQgt@Uq&~%}&)6k)Kc=hLQ<&ze zSOARK|6%W2z@n3~?4hnccP(Z-pAp(NVFlZoX<1>6R1B`<47y%LOH84DV zg=R=;HJBEe6{#6k_c}Z@QuN{@FPRniL^I=>me(x*Yn^ju7)X2E|Lynte&5&r81~+4 zue0{rYd_9D=d8WfO+A|hZqcrx?XF>?x^^mtobGW6mY}JyJ`PLb9tb*S%_9~P3vFc? zTZAe4%DKi$JH1)QESxjMZojOPpbFB+|E3Jk?c=c{XZ0zFp$V zi}C5xnK*sxkBr|fVy6+rc$mYWgVl-t*H8ybh&otRsDlOCPP7hI0_tFG2OX@^nPwd< z6DSpBNP3%VS@xjn)X8u5&vrXUqW+dU7qqqNPzS49p$Dz07~w7TQIi1lP3{=vptK(AYR;zIZQbs%0e(jxd0x-LgzQ!GZYB38`sZJy2za;7f z{3q~oodaHe3xPjL_O;Y{`5>lK31Ck522PYyx$od23PD5C@5IeIO1MGfQaVaT6Syaw zLI`JdbN5ME#&(rp29Z)e2g<`7wM0DVDN*`Apr;gU-!jZ+B)M8y(v z1Q}3|hJ=^75S#UsDBe&{$rkPns0fa{`O4Qi5^F>&Bs~3`6y5`Lm1tfY8C|82Lp${e z-|K{5s>PJ9Qa7WkloffAINMrZ$BAz0rgW8fuZbyLB~VaOxK~lSN?^pS*}aVI6+0`w zbYpgoVEIf8*L#++hx+an9frJ=qPID2 zXP2T`?{0!ux2^VZBC@Qy~{j;j=<;v;VvGlsNz5S9QLm zw=aV)%Megc=_!aox1|@qVPJR~?$P)yBOZQ`w0!GOK^k?3dJzc005N_#+Ya$mh@UbO zfHdM^xX$3@p-$iUB7!O=e0E`XyR(GB=n^oRg{5a6h9#D;cQ z>o1*Q;8JTi;C};fZ@|ZI?OqU@+v@IFVy0FHgI8sJi4wcYtma{bhTAN|WVVv*oLV^~ZEeDW#z^;6lV_ zIC+>B&Yxq`%&OvtsNnR2{|EJ<2KCA>G@=HTqZ`0q^N2M-A%O0;fl5%8uCa97fJ-dJ zv~JbIy6%6$LYh_oS?Nms*L0|6GD;5g45GBCsDHsYKh5FK(x+MgYl#=Nl9_9wV}xVK zho6SUVR96R`ge?hybQVjM4yW6!Byw}eRDk)J84P-cLS_Xu-sAinpx**JmiB4W__w; z1LeaGmRHK(-AfD}@hIBXgl2r(>qK^_ppk{M(VF|3V2`=EVr zHw@YdG2%T3F_u?BjO8kb;hc96>gB>ELr|v_V_S$}-$D7wgS9ml^^!n;D|RCjXF?3? zYLFaaK;@H63=x&bPy47xW!B3Wg?XshtXBb9N^i<6H@wfG9+kO2a+o|sRG0|=@fvej z4+-mh>Y)5vgYtI=<;8HZ_4Ubv@@a$eO9x&5$)LPhQHs%`w3=#zN-WF6??j@7YFe`J@URd~$awAejL5KYVOlWp7BMb7EHo@ln?6n!Vr}T{ z|5r~dlF?f-!Q{hW&chs~_BgnQ!SH+awEoTvZZo|*piqy`5it4n7@0$AYIatkHeZt+ z5=#k7mt!5Ct0mLBlTY6f3xDke6*3)VP zg@0@Q=+gfGzon-o$Bi}wHT561p9!_>TsQ|G&aSu=7?JPdUZ|Q(&e-A=r3ZLsU%x?JIEX2LLe0#%8T0s;6)% zk9rcy^cmbkK$D5G0|(v#6D5$8ENV@t?!zncDAQqv>m+SKt2^Q2$$b<)XmHJ=YH~~{ zKM8~5CVpqaie58P?=JY01PwPuq8%t%^ujo#w zZt2DJ*LF>KuWhCNCm7nu!HP?U>ryM5UvI)C$!on8`$2W-NgpoZP__*qpufbJ`vPV= zk!<4HcpuPQ;`U;TR-w+?S~J%sitA=8u3IRs+rZ)A0P##~Pk?uKYvmxG$(>f}SY@Wd z(fuCy64uW#Q7r+mB=J6|J!SiF9V)Y-QD1Yw99cX_)zBtgU~Sh6IkXPedPX9cYp{;| zAw8o$m_)xz&qzw!vZVFI?dL<&W<#e|&%WZB+JXvb%^#bX4v`qhkEPQR4BD2g!IWm&A{gwpR{Hp)G)4%F}&*x9_zjs>x zqW9Fgd(SKvU46!TY5voPZEDJE_?I4Wzxu=W_Ug9RbSg(KOY$eU-BZQ8FQPT-o>?|} z*JMY1^|T%%i{O^}k1Ah+@}2mki8J92Z-UVff!=Wi=-M}-a%G($M#qVSKXAI3P+8O< zK1o?UaxL_?dg0oA(YMCIPE|u9W zCk4gETY8CCzu&#A-*1yG^z}=+f4v{L<=~~S_I-Zu=UU1l*vj=bH7zW{!)d1iT-xCy zB0gf8YT8|P*b6PMS1RJ0bStR0Q}|{HOrWh6h(vmVgfs@w6LZ=OF8EY*7B0^m9T-Zm zO^`>DdaoG^Q`GQK$2>U_%I&8JgFT^#$1*vTgAKMT%U_`N#Ppa4JuyQZhol|@@tT@0 zQq}Y_L6B&337?@rPs`<(KKK0K3mf}`DTM8I`BbA2-+%q3@AQ9L-wD67{f55N!n*zN zeQyunbTd9(C4z_8mFbz9{L}(C)1gXKlF9J)EnA_}Wot=1ZblYq^9!=_a>=ORkYE|< zm!7T3T^bZ63k{Y9heZX4`u_oYW_V(xAXS&2SD2TYlb4p2tu4rSoO0nX8DB&t;(MsL zyu56%dp1DP2HJFa8vKJGDP1xcl!)V2#v0d3^3#Z8vYHa<>@bnL08)z4FG&ga zkC)SbX(Yeam!D=7Kmz`935VQn{n}p&k$ksQHgu=^ok|({USk42b58qKygD_rcUA%#)5W8w}h})be$x%U!eso zmMlq@t&jy%?%85MpGPHWwrS7JYWhfqdKpu}62{@$3X$k-)aK!ew;i-!K81&bn1;^j);06KrJU2H8~J&JVCY9?{T6qQ2j7p_uBs|!Y<)NZ z@1W1o2ev-?a@;oSMf+WnRQxixY_}J?!Q+|=fV&9${i3-w;6yD@1)kenpIpF~3D2mZ zsU`1gNkjMNU{l9reg~-`X+K)d+$3v%i{L?x65C-Rv52Q^5fUDhvqe?dX@!ev$RbCx z|1qT!wP2jUb6?pmw-A{`!sW=M93N>&f)gY|BnCoRm(j!uK*b`*(w9UhZmV<>N_40S zB^QATlO_fX3Q6{d`)re)nKeBkVUej z3x*j(OlZMOs-MSBw_|hol!Tk08dg-P^V{c6s_GTPX@`RsS*+~prqkW_-QA_=#?S~h zrPvv5-74@**4{1N_oirx&88Atxm@KXWm;h3$l90KYzAP$Y*sr-g0LJYx%+_Jr-F!I zM7d9=!dFG zWJP7^kHN;3Nrv<5VesWvt4&5x2T0`o@W?c9xHs(OkoNuI@(d#%jocjCX&dJ*vv`Wr z1z9}BH5!}W({Ap_7!yaTjG&^{jVfvt!lF>&G6~-WG)qdr^qdEno|8@nZMEbyu&~C} zbm>z{i8^1|eo~Sxr<_*G(3I6h;dD9JpQ<`82R-k@Fu8afS&}|mkpMn&k<1dbzc$qg zMn#>!gcyetrIVg08cv)YXv)c9$hpEe3zL>d8-b6VHd91mKDU{$pVBNoNrFaM-6(UP zM)Jl>IIXt`eg+>jR`fl5F9}=$YEU8(7p@S^Rfs#(wI*;<*U6Gs9(HFJsL@FszLEx= zl{+xsx}j&s6oaoqm{AqMFcKC+r?-%#A*fu+)ymPUp{Nub7}hBOewvh1UK6t#wQ7SL z21cF)#zPd22blooVI$7Nb1)AVR7?_{gGwMQC+YXyp<;=58S9WBlC0JXzrk%7t^YC) zV$gwTVm>PnPOz`RaS;zc+#IRkhXG^U>!%IM9Kzz+Zz25d9MCzr}n`X;*|39^ns`TmZ(JN^BP{`iES>VEkF>H#Vw%(p7a zX@k`jf0iQ1fa)w?3i~EXwt`KsWS6&wPUAb541#t1^_0#A7Hx#J2v%E4p91E6Eb6q`Kwb?oYyo0%%@IKULx{0_H^c~6FtHqB zL?xLRA}ZeuG3rm4znAX8Jgha=-#bxX!ra~rD95~6j*z7C5K)1I{|GY&+*4TRUmTS0 z8k9%fL2G>C*Jl{NZ9xg8sDsUkOh`Q^0n|UcS+XL75SP%c)+x1AcSjW#u80XW=Y7nap|F2t;JBx|F8Z*Z!mN)1hc+?IS*s^Khi%~hc`h8W_k@F z^nL=~%IK*A<{x~IXZno>4AwuWVd%IpgHHvM4W@x5z%6+|_$~c|MwomU`bN>Q4koKL zJsR5o|F`rHj6pOmK0{(q!@m1B=>4jlm_CM{nxY1KCZLD<2S#`R#u&nYCjXY57!}j6 zb@a7_1p0xYLqT9Km&p`SkuUt0P$>{J1gs4ANKH^bKF>6S(SD9`4~Tn442Xk2q>J5! z@7Vrmc#xf#R1hR(CuS}r`t8Ix95!?VdCE%4MM#*f#0bF_3|LM{;)1ak`l~xNb`q+U zLfVWAe05KfKq2^?v$EZC2T0K6;C5~;E^@yx7J~{GGztkQ5=3EK(b*kVN@=q+NhH7+ zXLL$GijhDdG{701Qbtn&%P&chX!Zpx#5k0tfZQl6F|HO5ZAv+fCEU?TfJs`qYpW1yXu`#RLl?76C;SjfjK?AT~mtu9~W|dTkTpudPBj(_i@5g$@kY z&O;h&t0)ZGjuDAPW{W^jWa__azWFNDqJ*OM{-TBEtJGLzXzGNb0Ze5AoMsA(fO{QH zqpP1rG15S$R?$V>{YALVp_oFOQ9!;IiUyF^1Dqz0ML@oarqRdHfZnY^8kG0QwRLpi z9i|XwxDgAn?s~e2z=#&eb}T}H?4XN;5YhINLJk`m%!Rul@ihr%lR_~efkZVX(2!C$ zBq)X-U`VM6$_5%zill8AHA2DfHKc@>{L+vTl75IGCA!vMF{I>Y&BPUo`TwFJC7QDV zhLp^9j}n!zIZ;~gO|0xG;TvnPfmD>0u7w?oCM{c=@$1%)pnsY0hv{eKf)nxV-(AD+ zqrW1pK&MT&dXE0R>=V}dRh_VxfPK;*(ys~-{!aa>zx*ElWygsq^=wgi9HBap_&%)2I7uF{_&zK> z@(bUGjl#=9dC%|Ah7od!En8{RN%s$h?6_aO?UR4Ijh4H{4ck0o`Hs|!+p4;^y(Sk0 zut&9Jb-DvGF^Xtf7`!EkC^)c?{Q}XQe*m;LOqcR)xa<<5+X?9rqaqh`Y<%3{^&>9f~*6V6*(;Cv}bdfpbsO@i+e z|Fb$b{kE5`25$T6+prJMiJwi)^1J&@@WFLitLC}Cyd_oj@2x+-d~loQhacw@KKs?h zJx~5j>D-L}$>ZRqOW)r4CgSyftXNg|^3xw4)c$a1TJX_D>FoASLVu(9qFPpwngHVt z9^dpHk9xSY6JmI)AqPm~g%gH2w-zthdBT1JG-aOA@!^03Wc82*O_>gb6Nj|Cu#h_S zw2tD-DO@a<`Mg;Dwn$IC5a2>yoxmNcCI=vtu9x9sDZW(!s$i4pkl-~ykU$!P%x9|O z8hdM-Os7ZI4kuV@C_|1w*=Ks-0Ede+b~Thpt!*-8E)E8xO>#g+qF}V?h$^4p>LE?S z4{S2M;?)bZkUtERO(q3plW7@bLD$FKTGz+Qf1)sq@}DT=&64xr2tDmZ(Zu3;s`PB0 zzsg9vP2@$Qp_UpBFGkhQI897cHFC?7R3>hDvZ|BIdsJ1!<1J9_;Z0tk+RrOrpfd4z zi&T9)-&EBtUU{lY&*v>uHS&4csuup_Y*jm-m!s<9^Ac1>F6Df2IQU%z4~*Sh-U#&7 z7^Kqkc=OR$<6>0}KSMR2amF}R{MF5yef`5gF_{_$D~zYMef0D3qxny)UI=Pgnvf5Z zCzf39UHQ^9etqlrp$Q9vKU8QUevB2LI+_vJ5Y)G3=G9r(IKGv6t5)49+Is5B2QkTy z9{j?%{fT>{wp@zt%$mOVnJd}@v9ZC=oVpPe+p%QJC!;&ve|mfGCuCvQVt(~e?RdYA zB?mv&tbQTc_9fop839jCead*TFKDd8SGfgu7jCJ%diDL`v#AlhP!N6W>+?|`#r#}* z>E`?Qwia#u>S44*f9YEN-`2H)8TVVdR{x8BBlTcZDj8Iz#+4GY(Wq3ZUON&@6a62u zEj1d}H)rl{%5UUokTu$ts?GNY^HR@m_uIAyeMP=>-oIvMz^+jL&7o*>s&142MsI&` zEcpsM;Ke=u_1*!m#s$2VAJDKV;LVnRx6TK=!yfal_p9JrGM$SiMbNio`HW$Qz@_9& zAMH%PoioFC&ayqEa?#ERyfiaZJ1g?gtckwyjJHXdsI?-xCf+0y4Zo(UWwpxIkt2zH zZg>x%Y>`}sn6g{tS`~w^Y*qLtu&n>eccEXtX`uAq1}MK-tW5om&r2w;H5cmQ>01H%g?tl;l2!()f4G=y9gb$GdA~*m7_@-=(1%xL7;VvNj8xVd( z3bugY0tkM9Far>F0K!xa@X!K0lmi7s7y<|ZfG`ITb_2qEKsW#hPXGen4iH=cArKJe z0m42&SOy560m6q!0TG4*LNFjKsw25)xL!@8gwnB)T}->n{PcYdSxLLgtnY4kEk8o! z@o9ESOhINx4?Hu9-@f9$&Hjq<1*J0fN_QPcYE(+=3{q9PPMo0=Yjxr!I`LASI8!ao z(uXd$U2ET=`>cl(L;+<;oYijZ9^7@vj9i>qX?C9O4QH`Zh`%0slT5j83 zChQ&y%$9=gIC$8U&p1}0@Mr*|TMdS&@ZtOw#+U64(X+n-V8A>8D#zIYP$rOp_e@SS zBFHNt4ail^cwq?QOh%lBWtvu_`1v4;GWhp2id{UZ^f^p_itzfDawLABQKPDyIy6Fb z4O$IpL7~ck@DCBb2H~pPEyzGB62DC|FsVycha7Ts!b(7fR#U{m0+?*BR1Ju;%$>sDh48`@gx7J#Q1s_xqb_&bLIax? zQ)vSEX-dNh+G@WS{eUWi%zi)vxIc!RW2c;E^XzFqpd#82XleTUOS;PUsLDYvQO#kK zEZP1gz2$pTFpqkQXmzZ?hH|i22WoWnWT~_JhvN*9jguom0jt@aG6Ob_6V=39WHtkK z$W?fJx{3rny%IiXYE?RBAJdETXAB+Mi(Un%8;Gi9=yR~KN&UWyy8VpghJNT1Jwu0H zH~Sm}17yRZ{G?!j%;Z2BATu!r$lh}6Z615Ehy4Y5w#=3gB??1!iKM25_u)=Lxxb=Q zaMC3B6sUr7rVQKv`y0_f2*)efuzmCQG<;90- z_nIl_UenvJ>qW)rc1~>B>K{iG+S!BqO5KQ|*K66L&xUyifB$Mw+{IE#{BqF8{8T=9B;Q$?QzE&? zp#;2x0|HKYOqQl1yoCHhy?3uHsnK=|>JQ6H14It39VuwThn; z%02C1ADYx@KRaCAXmbwC%somE=BcRD`U7LxO)khPb=u2)vysz6j2aqQ%Qi`Kg+&~w zp@k4Z^HyI-&b>f2Pw}#Z*cneX?-0{G>9Y}6*GE}3Pb!)np4JzlZUjHBu2iozqAO4t zKTVQ-tj4pz+moI=s&b-X)UXV@GGlOXR}fFSXI$G87j0JG`-JwIie7aOtBu>6Tl9|L zu#^2aYP^>2#qJFy4eG}$?%sLs`zATg5cwFcTyp}A+Zn;}DHykV%j^4BXJ1aALpyRs z2fHdhjHL*^$PKz?Gd+bmc+kV!O5C^$!phorb$`tJ04@9JyohCM`C!>EWxZVySoX`d zU+(?x`4R8uQyx{-=&dzO+K|~8s_szRmC5H)v$~ra3ih33q~`qvVNJrfJ3odFxyMIC zhR{J(Z=c3Ix)uiAS(1F8?)TSN(C?2M`ORlU;pfK$6JZ@>dmLHgNTY(l2Jh z^~zr10aMinw4YP-rmMDxSsa$YnPLxEZ3b#UWMFrl)!RdNnc^2MyGSoA2PMS2Q?R>? zA2Z!0b1weO@d>N$8V=pnHB6Qb-PK7?vhLx~U48sq=q}T!@7bg1?wVUc2*+c0sV6es zRkp2f?F&^M{oVB?cGp?`a_p{q^zw2WyDL%;-Nlb_d|})Hs=IVyT=_++yM8uz*FCQG ze4DnvyCeeWuJ8FGci?>;ZCJ8P0NvG5;tt(av*u{mCscQpzUxJlK8xLzu#xGm`hf7( z(a{C{-4%u16{)@m-9=2Mtw6@(@-OZsyIy3?Ev%RhYSv`3P+uX31!`{bYnYb{p`)YW zhLPz=-7w^ipfKOWnIN35yM9LWzEi}iP*_+p<3KU<@EOs8(1_KTZy`FI&NaIV#a+}i zYhDY}OzGLJXdI_}XWO(_@UF5|NZ6M&j%$5q$9gJ{%HXRSdF%v(80@{f_W~uv+V*gM}*g-&uO+Nn8&M_*o|UdQNMK&E#{hNt~}x- z&Wc? z-SLjzi}^Tc<~?YpU>m)fY{h2!>Em>G2kzZ+>cI1GH_{DZQFq`wTTVA)9`C@U%YL~| zUQV0C}YWn4ta|bkK!#5PisH}Ego|C5ASXPaWo92Hz=~K zFOzrK%EaT<&fK8<$;X8<%I%#^u-O zXLzOA#--W={S4Q%*4B%_vZS8hJRuwW41>AJ-T=?N4q!vGy^{Dm^p3I-=szQD2cQ!G{i=x(`$hifI&VBK7_lyyDNiQ7jiFxyJOmi zus+9a%E%OGR2Bjw*Ml|BhAExE-anDOY@}~okM!S1`d zNNTJTkWx$mQmT>73E6J>K0s=s6Oih81W8pT0;wZDWOb18MIhBY4JG+eBFLW~WwR?t z`4ZRnU2Xew=omQ>g*M3sg%*IKc;4i*U-X6(@c)?28O_nY09I7CTZS*tf6r-KTdmh) zP-*8F*3@kOCw&ua;(Wm%snhPZTFpWn48g3VY`2rXnbkq9A8>=;)#|oD741oVP7Bto zvYA<`0)GC+mA$JqA^cX7#CZY#8JqcOM~Tpq{_8ez9w2cXEwW+0<;e!ch%C?H>SFWV5$+g|3^14cTLpn|4$m0S(FAih{~@20?k{ z0&nv1tm)ZqeOSd)&KKKioAXLnb%pAu8=V(aoB)}$Ugb`Bcc=U%(pUI=S7^g@6Tr^^ z+;E*6`>wX`B_p)-J?A@ZwXBsWfeFozX1hH(8d}P^!&Os{{Dg*tSFbRq%=T1KZ;-a9 zO2T;{jqN%8u#rSK`g|r@Wg@htI*i=dqEm*#ROUFsEl9XePa6U)8Me*<219+o>L_b? zl~QNNXKbmmwun1mvnpz?YDT}vO(l^o?64%6Xf{!*hm9ASVKwqE)JWhgkeo+~hM|55 z#TULCH``LB_(EH%X?S+#mwe&588+be`+Tp%&8uaa)-6-ZpMmol~Jeyqwc2wnz z9aY_JN#tHp8`?<)AJHuL-O7q%p)QYr(b!11D8ErWe>0qpfjmvGPrNzpkwDV}?WmRv z>)_CKR7D;{p{`v){&731+*(0h-;a9nCDiz%&yg4)hO-SMmx2(KT~t)Bi-#Y|S;fFH zcEU6Y5yI=;@2n{NK!Ugia6A`c18uRK3jz3jfaCcQ4}iOx@u6Ns)`)}hwA~O z%hIw3vhk2!wmKTrf5eKi4*Bp`;}4yRR<>HhXp^nsILEESpLJg7Nm!R2WVaRJ81muw zAiJ$MnDUpQ{69G_RC5AXx%>Cc^;pjL46@sL@lzTP`JjT?9_t{xt-)t#JmhBp-XOcJ z>9D}U_9tio#ISD0PJ6r zK_L)>l0hsg-(vg~G#am~W#R%R#`8%CmqUz~l1vN{l^+j4Jm+LSm*IzbXoLA&#an=f z=bFs@g!gL9oBJP+H(=fz)tvRdBNz-OzXfuLy@-kLrYrz~Y*lnfH!uGF% z*3bcW#(~GhEWBELecM7nf8R2)KUk+9be=0LEHpfvLRZ@=lV_^ptbFODMTCzJP1C>u zu5oD@VHsgEnI=6lJtH(cDs)`>lCW`>!&@*$9&~<-niC`xLcslKBx>0_BuJLg1)U6z zIgfiY{NX+t!|$~pYd-I7rq`{b&ql%`q^Afm|58))(w3#CW)*4Z6*4t7UNKwIk70y$ z1p};ERKW9AFx?*-7 zzjlV69_YbT#vq|1`aeT2M_ZVgtI2^8m^yoM%4{nPrg5J#7kA_6p$w3}#t%G4z^#y}cAYZ1CXr zN*H?nG+Ck>=vjw{v=`-9xJvg+`9(4G@IHXS25y$t;UV0zKg&?2Fb4D2%g{41*Ehif9`e_;lDcm) z(Ef-SFO=P&?5u*q!SotnQ-HxdD2n015$Oqw=|^(t9&-_e$Izqt_d)cU7<%UMQpM1d z0=);%kF>19^t=o$MIHMC4JR=fh)fJURSFHO0eZ|3??s5|ssg|o7M>4{S1bWyXB*>3h8U_rR-#X7( zl}R&E#n4LuqZvrg9H4(03>xAK5zR2&BCJdbzf7n<6ymBU;GF`@4V<P+3lh@+A1p@rOhv7j)`(7&dF*gk3g!NB#CsdDs!;k2YCZYNf zu&g|8GYkp}3oIQ=Ebi_T*7Kf#3Da-Tc~$~t%=t{h`pI1h)o`ZL{t1dk0@6qU8VS`O zQ)CjWKb{6PtEPc*YhNG}4rCIerbt%IfkRyh9Lk7va`pEVZkcI?-`BARQNn*mSMPT#Z{0tUT>WiA_2Go-vt~kL0bve>0F|FLSN^fNDhuN%vg)6|wlf!i<>>@k2tfM& zDa3<+Xo^~BWs2H-hIMU>0K0lNWBMBo;H|im@G-Rt(-OLGxO2a7Ov2hZchJ(eHyHBn z#I8#R6WQbb4k@!(>HY(m<49O^64ZTGZc#}Y2+^Rxt!Sp<3o^Dk% zjUP>96--{fLX#a$P>VECpv_)Fz;0$qUVhFjZMHTY?50Hj07r;Tl81#N2$J&9a6%p~>(4EcNPX&~`8fyXoZN;7;u15X|VPi5e< z2f^_jJciUk@O2D4XApcZ1AlrD{6hv_F$jL-A@I)`_~3SZ%fL4dqQhY}Q-j-O%fPn{ z!gqQIz9$3UIS4<1fxk5fKK3E_;S7AR{3kK+!F*zW;*B@yA?3K2p^D)Cje*C+woE*P ziH9-qC?+01C~uahnJ+UR=6*N#v$pTfd}M}~GH{1M@C^*y zYY^P{5cvLwz_A~Z#RR5bW-{@7CSJnCE19^Oi8l_)zdk5$mPY`?Un~=w+h=Z%ng7A@ z!{lB9y!tUeh%CYU{A&UHMgsef+V?Z_ciJF1KCD0fTmAjt>c5AL4-(pEEyH%E|K~96 z#Af68#r~({!1UjLI*%VVehx5n|LFM9Tk!`;OZcPxOl@dp&j_4py{nl$67tqto7q;k z)WDg6%3tnv%-fH6Vs?H2piCdIubFLiN2CgIYcy~JGkftQs^s@>cm|UUoI79()c<e?VoBv9|9JlR`ZU{~`Mh`{9B5clpmDY5zG~$559@ zp)|=hwDgz$b9~xViWw#AdJLD=a22%w96y*y!|#l`gI}Fkb%ec;lji=V!t-Li`{5GL zF0T=1<(^;Gd!8$CKT_g;R_}hY+4Cf%>+LUld0za>xx@o~Ypg7;{L8sS!S8i0K@xWI z9LZM7{iQ(deYnTtqQdit#=W=1<7U16#U77q%^vOb?(OyV?Oq<&y)b=N?Rj3|2{tS` zSe|E%9xWxFoh(_UPF=amPoO6&3+pO%63X`hShYwH6lEHg12a%cba=UUX*`dx$gX<# z%NozK1U1gRJT3!G>`EZzPMA3tVn50RtAv&4MnPY>GC{D?2*xrhBm4wK;6{PyRd`;j zch@(2dcK}66lU=*n^(>aZIeaFm)nTAE>MJaCrbC`D%?1-i<7 zvNEC*=f$s%SePs=EYEH)k8?flznHUig4M#x-!=joelal|(Jn|QnBkgQoU0V_oOE$MJmCB7hcxLyMu zs~o;nIoyzoFUiF@a`9EQ!&OLk^1qWf+>|@O!N@-F*dh_%(u?&`jDs(3)Q;AeGB_=# zjM~SFEmKA}Du=IAMmBOLbZ{(oYMRBDWDehT^7}}KOEU3QnFG+gOgI3ki$onDx5jMd z$eUUx>??_CS4QqbQZXMXqnkLfn+-Ah6j6=J=zSbH@ab@g5Z&m*BbqlQ;%`*q9Kzw- z8u1Oe!zI!oMqBmSn74+u9p`PWtA9yMbk=W4h3vh2b9mreLcIlM_3+0+^XwVRZ~ z!NN`_Cz`k{5nl&B2?~4TZo`=M3Min6QsC zv9Wnr2TFMO?&g>dWmG#LP>BvY0Y$CufYZ(KJjarsHcaSHM%F*VYAm85XhpQ&Xq0zc(%XX(Sb$mruZ`W!&@)k(%0Vq|IL z>slwY8-NE8`-F?i;q9#xfQK4oRE=_YjWW7R84c-u%`t6;m`>URl43#`C)U_Mx)eB~ zdPp(!cn*lSMtr@Ke*wA=Y$Ww}4UA6^0*tG6Wz;%lG{}K!Adre0*w?=@w1`ea%xPs5 zVZbp{XNW0NP5`S+rq&72*PS3(6*&n8yHc*Kh+Q`&Z&7Zp$z+lvH&%>`PAj#)rhZjQ_~g(56t3U8|~1FGER&M=2vUf zzQNQ&9AI=^XvCQXTA2q<~OBD;%z<#J6CYz%-OQ+y=PJ!8B|gXJT842Mo44&cqHw3?%j`Cv=-fCNoeC zI2v)pQo|Aw&{;TESrfaPJ&5>Nn5t!lD8?SvVE$(~fMG0{MBl2Z+D+nbVS-qOL1RfV z*dVsv0ew5H5TvJ??8Anc&c&5e4rU_rR zX>pk*_4Ip@jDhds)g(c@1N1_@g|=iyIoH`|M;ZLPP*z{#;*?yo&aR9*O=3Fa&hnEG zPi^y==IERJ^S9jUK0Cb*Y#b2w9ggH|IJU^)M3ZGvY*|wxWmf4c8>gP7RabTVaH&-4 zV``aq(q%@=#ru<#$(3RE?7XMlFXQug{AJ|2f*t6zH-aTuLpXTN>JJ{QwiJPo1DJhL(XE3&ro}Def1z0~h4|8z|&%EG6 zV`^AFSD)SXOx&8%($bQWR!(Izcg4ApRKv#x>V1B44&ZWyPB96jqphEhoo%L%y={Y! zgKe+R7+XKzDBDb5FWUxRXWL%ip|*abM%reM@~~|f^{8#{s1de)qy23&N4wcJjP|wd z9X;B$!)TPm$GJ7CK^ooxQ`y2WKRaq+x>^w3Il>{69OC&TRwTt zJVL|gm5*sTQq4X&mCHGQq>Kkw6`y!4!bO$B&!|%26;VqTY8Ug?wVA%RB*$lNSRy>DyRyY85>jN`sHq3|%UJL2LYQmho7q?y#F` zshi}2sCTbu<#N7Dv_!^}FV_}-9!8!Dm0ov~EOR47qJ;M(d_I3=+k9If#v$_I9mfBh z-Koa3yXC25xyo3sQgdW?%2SI4%T<-j@01rdqS3%1r^eo6`K)!pA#c8r7h!enss=$Z?CZeDpsaG0nzPEUvY-Lo(m@&?yHd%@ ze4!x!PWdW$cu5cxr!40m?6cdavTc&vW%t<~>=U0iiZArp!S(|-LN};=NVZH2clMjG z714fr2hB7$`Cbdy+lg#wjl9e=lMuP6cb#`rV`ZX1Uz1v$v=cIxf+nNT?2lHzMJ@xe~qll00R z{!KVsGVw3S9Bz>gu=TpqX9pWIxRt=34fa%H8u~kh05-~3N(3vUm8oD3QdhakSUE&9 zka$0xU!nOW$hO2KuEaI2#2y6xrNaHR#{Fp)^<3HG0TRAk;@Jhyj38uu`od)ow~UvGG^>S&AYfpYkKS!lf7cOY`=) z#hFWq=Xs+hf+oau*KUb$`u1;%Z|EMdD_89+o=Pm`p!T@l<5}Bzd9uDF zCkgdp{(7+~bB)0(V-vyB1Gf6(ut(;)iN4*$F_F!stNzELd5_Dw`m3IQ zbeExC+h6tKGajPg=PXs<+jCi+@Pei4kLrf-l}-IscRXAP_+7Wsx1obeQe^jE!a?|C)ZU-iA0R`8V{^;i8pRDHO=C%<0$ zx8}~ViF$LZn@!gYCH=$;3?-iml*jrnx95xz@$>t|;>SND6@A?=^M#__lca^CEK>be znvyOv_RDQ*XybV`@q!P@bjtM%_3dUdj1jx3i|bn79aeqd!qsD@7Y#ibOe^)@*~lid zvYiS(4ttF?j?ekPr-V)S;+5%!$3^_2L^h8ZB5(2^a~F}%ac!AFkZ=EXi1e(ljSJJw z_l7NeO4gq2%H(zVS5tS{M#WE!3j+xWBE)ZY`mtJQyN?&}{4 zB|n%pm3!q_###DJXs{9*OwAu6YQ&OVEoY&@S8f|31OU|$@0%huSra{Kv_xG24_sM*%gvyd4H`m4?Xsb0A_G+RrD zhz;i~b7k~;-kS~;TN!?cpJz7K@IFZF@c2ix-IgfP3iA+k*)2`9TlrjF;9HWb!VfnA zf2UllBBjZr;KQR3hD_5!uXkPhMs56Tk=F^=n^TOH@!tkz-vnJ998VaO-b024K1s0U zkj4*|dN0R1JEuuFKWGZ3nuO!!$43xq{H%*Xop9?KdzhX}h$tL@h^lWaN{MHq(Nk*N zgAq>eu`(YP<~8=#Au3eF|2S41!s6;7N5T)h=DN8DZbUB3ZJ9Al+>uPM^^m55a(lSPk?zsZOa`D%xVWozs4F4! zV*up43Zv{BHX(OK&Yy-xft^nuYdfEC#JkGLPcjqYI<|jFsb3je?ANf#&lu`o?&RWU zV7vI0vPFJ^P$^4#O~?u9+FYxepVn{zJU$MglOsiKASgBdaZ#o;SOC@I#^B- zS!z|Alj4h{y@f5kIq4wx5?d}aIxq+TbzvyjpH|PHnT^mHW?7i!%x01k`wUD{oKnS` zV}Ww!GRa8#|9u|UhsNuV&FfkG9DmX-(74fErKnHUa5?Q%wjQAW;m8u5(Y zK88kY;=~XfItg7MVUl3bie!>?oM;)7?BYy}>`%&>WF#kC#Uz133X|;ROv>y}>X@XI z6RPh|)-cH`PE=h#u8~PX#f|;Arv79*lZ4AU`=MP-5-RRyl0c!4NhWZ{5j?t?#hl0n zS~MKjG>t3MW1==alZ26AVv-jeAJ*gD2)qH1(Q?`Eh=G>uiBq8_9yi-En~HR z{2ehT74FBGJ#?g0xGBX)bAU?daGa zcx-OYv53cyMqK^)%+w=A4TsP49^QZSXi;MO_iwa+@83~t(@|U9e&+nqGimLvZOyLn zrrKjU4e6qGBQxqkWd?I78;?eY8vtqP4xp3_NJgX-4oG!cK-#zLsg`EfhDRgMMFY~phKW5jV*shJ z{BBw6+khl}u6xa}7+>$`)7*nTy$-n4eO z?MKH?v4gXO%ko>iyM1~N~(Afuk7JnIPAC!mr7FoqeaivickD z>f5ts&5oG7`qmr&eAJjSNwL!*@NiAFYNNfYlTUnuUq#&aU{q_KyW-gy9sIJZy46H_ z1esjuC(!@s8-h=NOi!FQJ@z_< zbE4fzKzbyR_Mt&uj!EyvUk)#GI_;OVi@Tz2)67p?SrLvWU0c`*PA~0#SF%3D;F-pL_bXUg5M;*Wkz{m0ku zJ#lK+(;ZXBe6X?gR^Pa3kJx>8>*l$Cd;Yy=mB)wIC!RVH{YAI-z`uj?9zA;fX5G)V zU*E`zzUx1C%g2Qt?_FtABOH_X`^F5ZU*cnd;S!d%u*@gEJyW^cITC2`3n}-PCBM6DxUaH|9IY- zZKwPfynfCi$5Iy*0sGm0!M$E$=UXaUgj|!*wu!AFe6OA<{c7*)DNxUfAHqF;a(VM;`Ue~GPbdCkOV;>*XL;^v{qDeqqQYSZ zzragg|9d??zCXQpMf4{}3+{YA?d4ftoeKRh=Cy;DqOX0XC4Ic&Ubb2O;v#9>Cc+@u z+VUCCIBK-FE4!v@k#`!qrlO!>$=OTr&h@i~?WFf2OUF+9DZ4DZJ;P}eS6T*r^v`Uc zNQWhsT;|0uo_T53H=i%Mahn>Xr-Xj_(_b%Kb@nM&x+6BOy#Mv8zZK=p|Mc0wrrIhi z^I`G5ihSPtR8AZ{FQf+4lfrjJsmj?^4GTZnv-9W{S^CT&;tk$AUmFv+A$anOv;8$a zeZo`APR_LPdlg5G>f$!1)?1B!OGXCACzsf*w4KwSs&BV*ejzOD%)V95OQ*kdtK9JF z)OY-|UwFmK$3`Z6*WZ0ut0`b(kJ@HacId2UuYGZU_2PHF*gE(2yqUGnX@A;(^t)Ae z7Eb@*SYBLf2Dal!s}YuqLrmdp#)9<3W!@V#jMzKVU>U$i`*^v}2FU2?B=;!XWDVD4K} z4y>MR>l!idwPi2G4Y6GqnSXi5v{&aIo4@<V{@=;NxX9NVua_ zBpQzInpZ{&#)BRY^e-qJB!KczWh%UnR>P}jNaLBcRV3I8fH=)FfmBwB+@jokYBtIb zx3_0{tAsA0FH7CL9%-+ckzF@~MLc)qy^_l1Q}^(XI1uN4tHTkIpS*x|GL?xN5Ez)Ky z(Cspb2QtYbx_u<&m6`N|Q#ZLwgQ8@i;Ey>hDmc_%le>!4Mhb0{*O7iPA*IHBZNgG-=aIrS(*O_)fIDqMc8yb*XnJ3V zERr4G+AV4mDQC;WL>s)0$s#`n0C_^hc|InLdqiXsDZ*M!dd0Zb#xnRvg2Vbx64a%k zY3X|(FUWdg99Ru{FMw|wPDqHx*gqj9{2Io>szxc;4A5j7J;MMH%p zx{{umx<|l_BwAzyySgEMwcv67N#hXkYEQa=sY!|0{|hits1xd?#Gc#yOON(lEY*Xt z)Y1~7y->s$1*@FtWg5> zW_)em`f}$dJQf-c=CCBa(i%sOfu)ei*R~45#&9^8+vJaglsgY3CiLnmYIP3CjVocf z_5)OH8w9qq#eVSu8|tjl!wP;#FRG@Q9pD7o_>4RSA2CtZEy&HbC7KD{jI zD)#eZ((4RE+&8&k)Xuq7UE{PXfAnGA$_Z(z7_gjtr!fFb4NIW#5ESYi_IYU!iPA+Jb~!eT)Y~NU&WDMMl?kPV1!Zj|xi_$sZk&kYH_2vQFv(dDg`1 zQ$v$fD(I6pMMZ7hRdEtg7u%M5xwOe6#P4MsxWv$TL*ISsd!(j0!cMW zzpO1e@KKPmVAX<(D}aD9eGL$1gG@VRc}GneH0TCFL&A3lh|Tr|QGPpAoOq4hd7O%E zk!<-pAVwH_6>R4n@_LRuIHYS4$!+0PBsF`$Fmi%nM3#1o4IUvf9|_m6C3DCmn+kiO z&ome#raBlSx#wr|Gn%|~EqWJD=s8JaqV%++H_#yCy13PZ5oJFg1_Onpi?Fn0LA+8e zG)w#)r){RDz1&tgFG*NB47-e5s_t`oZ+pP8KvsyV*{Q|EH}Uw;d2;AH?~pMHF$;X~ z4w}=x5<^gHJ_z9x7-6Ta<}|*qgE_qh=bwh8&+tS344$2^%5O54W9-ajePd4?XjZQ* zkqC!MgLx}`46x8p@BS9>y>UsQ!g7*cFGIx=?=sy_E|DwemlVD`q~V9m58MqMMEB*{{JOfAq z9Q92QAK{KLY4P1E{3(`Pl$)YktZAj{Um>;COE_i~y{I0$fG1|Qpd6yVq&7Xj{X1^*7< z*njrW2&8AG|Nq!~|G22C{D1ro12ZGSh>C^@I4COq0EeIAuNr=6gQ6m$VPy;`3Wb7z ziq_WfLxHrSA8YK^7PMCM2;L7r611Gr@UChJ(vVxA8`83|IPR#yAyFJkce|H~@=8NiAEJr#c@^M9`5U&H*DRs2rozgjoAJP$Gd z4B*Q0>;sOE%)&z8a(zwEPZw~~^J?I3y`lVPSw6W9R@V1N=D$b9KNg*q`t38o!6NF1 z-Gw=g~oW4%&8`x&38!s#p=D*qf6eva{FDx8dp_}8oO5XOI@!mW%ypu+8pKdr(Y zjK876s~G=Kg*P$&g$i$DoW=^J9$buHrNVm{k5=LRjHjt^6O5Mhuu6qn7%x@f$&Bw% z;aQA7tip?cPlNnF0G|#jk4q0Q|KC*n&jOzTzP|&vD)>(Tr}|I8gC13J_q%@J)IVne zr*Tdm--dvh@FgmIJmZBbd=BHctMDAgA5h^N7=K2E?*vZcR|jzAxYP=q^!zvAxOA8E zCC2}*!ruo@^MoOIh|{w{*4riEG%m#gm&ZxkR5SvWw*b!s9>M&C#{r*&_y*u4PnMGl zoXYbcaAkSQ7=K2EH!$u};Vq0GSK<2^zo5dq8TY{?MVaq8#zRy%6_UysqryWNPgmhq z#&1yJcE-z8xP$SXD!dAK9P)hxc)UVy&j2U8dJi~?>~6A^`uSLGJ%#`KJJsAhmGBcLvR=_s*Z7#h>V%KS_&!rg#2iF-g{tbe7BjBq~Nx zSxwc%%7hcRr9J;%e<0q)x45g-6-=)igKe;8RD$6MkI5Sc;lqH zs(Dq_WnNWvS*~W?;xy|Pr&+f+&AP>@>c+Wg)-7JMZt$1Q%8;O0w}d!di8N9~=4E9s%~_hZG&3(_$?}{Oj3If{ z$V=0g<1i^jM^LqVLj2E>urw=YuoPsLCH1D1oSbZ_2r4WlK~km%ENRmNmelD1OZxPH zC53vxvj){BD^DC~wCgXmL840AjK&UXOWqwBi8|wm#X42Om+VWfe13nv;xq zrk3Ug8}ne%vf(OiTARbuw6*!9N2@GPW6mUJiDL2dJA0{@nbiP`#}rNRq#x*Inu-is!S_p}@k~|cVMQltNX1MqBPBHxLxz@IkEWkFAVN$N2Qby0GK-{DEk(uP zBeqy>sevTMNYRDH8k~*htuFdTm23+iOtgAUNjXk)UsqmOn75{+7+;(7 z=zQK%I$eB2#roxi8`mzUL%icOM7R%0TCI^NpBAY&7HRfsQLJ1)BUZu~)bwCQkbv zcqbB{GFrLBBxv80c%^%iwC|aDrF)VUs=<^&T58}ML~VL5HfZNE>q@y`!9g-e#fpQJ zv2s2lziBA5mtK=R5iC1sfnHP{E9=_b%;KDbCAdLpdJ^lQduf6aD=S~k@1b|*mldz( zPgdv4{IUvF{Bc%o{y13!YJLwTNb=)6lpxhN&P#pcywo?&OMTy zZ@icK#(UIPk{|C;Ur7(~9`$8@FZGT0Qr~zl^^NzaFX!u}z6l=nmCBRgrM?MqB~sr} zy!m=vwNRT5i;n*pB9zM(EJiiq)<&^(;VnVduu4u$f~;bX1X;%(39^zs5@so@Ccpjh z8V;As-C?ALN%Uv{#$%PDuCR>3Y$%F)6@ybe-}JaZo*8JZVPv|;O66i?q8GbQ^kVmk zaYMa)j9Im`!5UQ? zPm-)6j|5pq9tpCNJQ8Frc_hec@<@>Nq)wPAE6O8bkb%m!K6nv9+jeGp=u&E{nHsvJ z=3JUCuiOom&i0Ffxh-Fl!LtKsvPttdS(?U52j_<(U16ca-CNurGgL1(5`#QhR82cn z);lwS^ZfT~9cooe-D0L}I%>g5o`StDcd%#=1DNTSAtq_9cQA)kTdn1e%sg7~;2Z`m zd9d3$<(h~1-S2(6x&44%SL=HZ_5l%JI{s>ykLw}0`H)6|_)74%p7}_hVvzlXX4LxK z<9n~3zE3}hze~*5CvgqPTUcw{ZMa+Hr6iJj5PwfMOXXxe3&JvU&`zJUK>99Cf%q=a zAM;(QoWZF7`#*zkF8E&j8GLKO_b~HuI}Fr^3Wsn%+6kZa!*+mTPrr zPzNZ!;YY7xnh6?2nO6jz(mGUKhQ$BW3>^U$egJMsEnf7gs2L+EvEuh$DVGaVNbQ5R4AFk3=a}{~?P1!@w2P^WX&Wf?VrT)yKSMMAgFej- zpeV1|2}FpeE;dnF08#wOdcp1lwIG)S#ERNeap3Lzmj$1e$#BmeH z+dwe}n<+n}nX5pDfl@vgRLztRcnx+?Jd?%oIRG>Yap>P10_qP69+8hI^+yoV{)p1J zOnSjTQ4d62z=^gnbux7@wK26Y1rhmaZ>xOV#p2vO8_sjFP4X{Tu6tEvkp|BZ$6sP9}1^T@M#gj=f2viJ; z=W={8$6GkQ1^t-PZ7>Q7M>w9#@#P%1fQQ0wI9|nZns3nk`#F9u$GbUx0tKM-5Hucz z-*NmB$9Hku!u6r?)eM7hi7kpVaVZW%k^PqXLO$)UZv&<9N6>NjYvK5KP)hIS_+?y= z3v>$YEbjx{Lvh*f>tx6u7vL1^oPLqg5kCjxqd@+cNQZK0#f37yUlpgl=gRcosp8~& zU75Z~6{mTWGW}XroSsL@^vSC93#hj;y+*}<8TO@2pAY>g;~%T;k5;7*QN`hDT>Qcy zE)>ek1F~;EWt#Nz?y-odTmc*;>k4aO8hjpdR=UXrz$nA<`}emAZt})WkxQN_jLxDV<0!J)d+6!O=?2zg*FX#x0%RIuUg}jZ}IFa+69&y zm%5AxhqU`;!`hPKjfD^_M#+=v+O>siV>Xno-CRQM&&ACZif??ZJl+!^cMo-kl0FtA zRq`@B*kYwGl7i=FV&#`|jb!ClWQ}Cc578P-o}a}vn6$r(duLp&kt7#3T`Q4Fq3{rU zC6>hl{#|FU9;|$6zY*qV2oqvwBv~y3L3tf(wIUiP{*UX##6*iFK0c8^1c$#kK4g?u z4ERpV%a2_P4)Daq&x%b*Sd*V0KP$N)X#Ueken7wX{g*%CeN%_Wl=xi3 z<4XCdG7nMt)RQgwi_leq=A_p_I+?M3=+mh3hKR@-A^b<$JqWp0&a~zrZYRAh5g*g_T7c^EXh(R_Tu` z_aRSCx*<;)I6F5am#?sdN=N!kPsvGfCks7f2nbe*2yK{uQWnYJrKZNTNUMCJcV(^m z(s~00xxPItujtD473EQd)%B%y3<}dFBJ}e7n4|O>Iw&agSGldsQ-5<=9=$hG2;lj( z6qC+2kgtidJou`v5UpCRKl%NlnfpaD=EtPJGSv4mr69h}%UeU|^lV)3j;q?2=htUB zoqh|e44(CMo3hBJE}uMKcd?ND!BY8(@Pf&&B1-XceZ>*Jq`0C|El++wkd2}Wi*!`q z{g6jxL-WW`<#j-!Ppse-D$wC^>4 zO=aHZja%VP9py_`@`tcI3oGj!UA zyiU53%CU=7-QAidjPF-^%Rojr? zA`E0p*QL=jfwEsrZ!_g?0MA;=yCSC){FS9^N>Q}(!iuuejcb7o6iM2cj3nvxQ1Si= zjCKU4m2TcxDQw5)Ye96QEKbs-N-CWvuPrRtygt3KVhxVZqx1IM8svS+g5q_@?KL^w zeTBk`cPR9|U?Utbi*Hm6E})&~Ks{c41m$mYMRP&Np1A;Ccg^V%{$X-)I{zxAJ((bo`R#%fL zx^uX8-pw~}xw&|%oWsr64wgZ})6o&+jQCp2MlP=+A5pb5KGPIz5$ju?KgxQ~Vf;FA zRFY9axPkGdDm;(z>s2^?f1*&J!gn)Xrovxfyjq37!g!+!f7=WG5##E5ea-lTDmi+d zOsVVT&-i01{t;gI!x?W=@lR#EU4_r^!k@snTL0HFt}Z9FCp~x47C1EVT205hw(@i-r@zP?+_H!{M3$AL_4=* zHq#rJu4B5DX(LlQPmY2de@YdX^%2eGvoV$HC)YG zgXT3kipQat=&>v-7WGrnycf0-*Qef&gpegL|HQ;=liL=hBa^`SRn}N-ysV z^6MgYAp&bw`*HVBAMDgboaQIS>IwIybopi&g5qY~ud54~=w})e?z^kNX_@bndjHT= z-{En=$)=D+{&6)8_NHJ<+Jc5BgfVfcXYA&t;gJWkQkGTk?yLRuF5i>|hGiH;Xn)Jt zOOr0qZb4nM5NOgDkh^!BC=L(tJrUzh*uqb>hM%k^H-0Cap+`HykK(#D@N7i*nQAZI z=*w})w#f(whvh|jIQ*`3z>&Ooo_Vv;1^;~TH6AL|;E3{YI34dL7xJM;^TQ$Yh%Wp@ zL}-`J3T8T*+ezNX^%Xb^oz6wqS5?73qUag1s20a}R~8waC};TFx)9NedFYvl&=akp z@Nj<$-p8xqu|E7n3mv+CqBRfsPqFxxO;lxHZa%V#A&JwyOGVs0duJ7uA=w7%PP%I1L_E)>)|J zs6|9*uPz)#dbc$Y8aSs56DmaSkL5xG+%%Sj)Ne-h;d#BKzC6UZy$X)f^_$v^6;^V` zo`k&MmtE)=EaxIZ&-9_C!cRCtdt1Yuo4^@moF$l0i*3pESZCyE^P>YuE|+7VSVQhv8)YBT|c7!cM{+sdo8Ao8O94>zgU} zs-jw)V87kw)|h0yIFJ0@4mi9FJz*OMJ3ny!mrxpx% zCWaVqhsyy+ZKBn9doz5#)+QF!Z*duua%;E2DiDP`1K1~D)bj=ax{T2*L=q5pMHlgew;)ohXC*OOw(pq@Fs3@y1x6~(L{K4pSC5xqV^mXCA7@7M* zPqd(;g?GD~$qC=LaBq=|UWTC(BYgd)min#eXhHSct!R1-cgV|#ffQTi6vlQ)7yh{p zzHFP2yWWXfG}VK7J4V_l3^Mibr(51^bOavKjXUk4@#=_f+}RZPrVTvN8rCllZamhd z5CaW*;>d;z*cAMgqERwIszhb#AQMepwyn&AC?*w?>^3BI%TlACt&TCh(yuP$wNJDkL)CATA0?=X{V zWVn#;FvBbS-@6U{t1i=3YN&+9laLf$v^c#rP0n!gZL@imHVHDByEf7@+1oi*&N z!whHAlvfL?*{id`vvpVJEVy{s*OBZ>nr2`=c?h0WNw#!>~kq|_UW%_@34L5$OU+ouT0A)rX(d z*^a??Nm?@ewrFePJF)Hl-fuoD=6<1{G~hOdu?@b${ee3r1M4<8_f_ZmI{xag!U8`u zJg#%b_gH4XOV&3GKW7(|%sp5O*D7P1^{|IIb#QwzU|lI>QGFIOT6_c4+ho4bZTJMu2iqHH8rUb40K0-$ zn%(g3%oT*FS%cg93Z^B%srE70d@b2bGrZ@d&3Q0wtgCa*-r70c`Pb_$}d(#QF5_gz{5A%MYH|@s+F{wW!n2b)kQC&hk)Z>@Zl@C+*a;VCQh={fTWDhKLOo^LGyOSr|V?gC;Y2 z0XF{n&a11P`v}~Xpv&v$9@ATCF!|JC6jD%&VV`B0FQS{E8`_3_2i!W$b@gujH3zH1 zU~J9$YmUHYdB@fJ(&qHamdS=%OV&shE1D%P&{$-vx@&sj10@|kQZV4mg66f1Vc9SY zIOs%QJH*^w=C9E~+-A^TUG)>p?@r;#K;K|teS39-Z*M?S=uy!oUBO3E+N+x-hP{El zi2{9=&A@vKeLEakXKS_u9IR`#)(z>1O|jiSq~`g|5T6CjK>;Hh9*?aXQrl@7xwGCm z$uuk>zp9}q)v`D!ydc%O*!1X-1Hp?!!lQm|nTt28MvEZ)9`fSGoBSAmJB}L@pjaG4rRdeH;6SI?ICA_zHnXhFfy740^qO zwxw>Ck9B{>ug5QJ{^8>xBl^}ioG&vZgoK1dx(=*58ocblnakIvW!A_4Fm(Ll%XJ1n zKf^7S-4%PMJYM(b%a3(!`)SA!gJFoU>4Aj#4_g0udE~73-mo0KxU?uMtHClPE?JU$ z89vH}Kl15gS!*2qy$IIU7F)hGWz-PIreBNqy)iQKz~%IJ&zRo*c1A-&gs%5=Xz^W9 z`QP5T*XQv&Q|CLYt7}qy)}EB=ac_?8BDj7Wd3A7bLeVFY5@)_H^8CGz+?je;O-)U8 zb*H|*!*}z^31Y=(Om{~9IC845uW7_wyJfh4ROC?qqR2r1w#Z@r=OU;1M@^jNUo>&D zf7`?e|8o;Z`bSN=%D-sR1pl^4VgBbPE%lF@JkGyp@)ZBJ$z%M_O`hl<6*YPEk(L%~ zdit1l2Q)Ha_Cg<1d{k8Aec9O|K_ge~b?z80JZhRc%HKXU+P`7yaN>5%zkZdFZ}8hO z{pdnp{pq*s{BTFr``0H0XXP5!Hm9WI@9z5cx6UJRx&s0J{zVV&(HZvbDKs2Q^06)u zf^Hgf>U4m8<2@G3ju%ATU;D?Ai9<4c0#Zx-je)_N4QsFWeRhb&omqe*PG|rblhsEwsFu3O;N0 znlYz@fOCHcsx$~&gI5`0C%>MqU-O7=#h#SDdun11H(j;f_N&5{SC+TD6IXU`JMyZG zo3iRRUD{FEPBX4iAI$i{XG)zZ4N!APZeTOagEomJWD;^Qp+#x*oK!EyRj;Fli`j2q5HD@ z_uGb+^bdWb-+a2o{7L^%Og}IY`bwOKlvvGpvVV)INSXN!m-)Pn24R}~wAYyL=)1}u z5nL1z+|zs29erU3Q^F4QU4;o=58hMoB32!URRX;G;5EFb@2Y_}xcu-Qyu0;Xg;!3z z7~YW|j!EoMUHHmqbJj6Eo*KBG^C~F> z6Si4D9GHv2f3JS-b2ie<4N-nKwG7hCCP#f4UW>}aMGr^qCd`eS#CJD%g0o|8Y{c8p zmgf3V>!AnR&?lTj_qj+pUt7$dTg`8D)12g-ZP-7BVV}ATpIC=ov<$=4>$Co$n3&;F zf;rm->#%8U1C1h}7(2EG88?U2=V305x2=}?QTc;~56HQK%u~>9b#Q9+=+x>!DEw4P z=&}6JJ9OfEWnUOHe6|{M?@)4thpBZwEhzm@)QgEIeDM8y^%nJ1hh1n5JK2KQI^p2{@(3;{Il@5H2b}EQQ~@a&o{30L_^xk?$oEIC#7W#q&gR@Fx0*> zkeZZ~mOGH@x^A;U|LQ<$dQzHWAk~@iOGB+9bxBfMk(_GT=Q?=50} zyY9K}7f;R%`F7$Ev$z1iW$ushZ+5t5WRwXu+}r+1b;LCD&O0)Ed}z(m8FufO#TC|u z0cZE$c1^AATYbM%%*pZA-xsb733x;H3_s`5^5+jZvL1@G2o?zI`R2j{qYV1}kvbm% z9|K(XOn&mY*&$hzhL||(^@Zw+0$+b7%ct$*Qf^eFIq^J^XfUU*SO3 zc`L&Lraa(l66o8~oJX&I;ef+5ko9xF8fBjtvkay&F(;y~6%UwGHiFp%|yM@Jbtku@uP@=wnthx{;c zND$Y0a!Br-)?)+0w_DqPaD)<@)mSg+NcjjCH* z@Kx2(gqA}N+e49A+=>^A%kJ)Q#bmT_JGFk;`|H|>wfEa}PH5io)(gMuK&N;mvYMOu zy0x`m4BPpu3?DzqhL*l-xIQdk+5^7+Qh~zv2mWq$$dXAzf<=u~z3OTWJ|q@sY;Ljj z$f6MzHtTO^wx{Oz{wmTY7NmEA-ha8};e#i?Ik~BQh0lN4eCg{E%<8&5wbpjuY-htn ziVN??KVsYQLdKD>dzTnjULA1JZJpu!&CksYxj4~ne@}+xR#=+{EUan{T4Mh|OLT2@ z{P{prQihEyp7M?BuG+r5`vtD}C!bV*XVkyrZt41W_0xiPKAPdj7XN)VO0%o~e zBD`!EOu;tEZ3_Pg&)sKjTkN*8+-p$bZn*$0=Q@w9a8QMh-BBhML~eon%f0@!tv9(_ zAim~+SP*v$7k1LF5+53I3fm7zSHjJov>xIW_LUK|En&_#;ehKZq zWpWd(T-0v!+n14PShBa$cXdYQGfQ^gUU#!DIB99l?dZ*0=ANFGn{RzYwuGQNAOCdP zK{Cy^bK4K(H$Cj`D;NIY__4zo&*gCy-F4OTwwaADeWEMwi>q(l$O>{kG-^_D-^LLS zyf$iLSpM}W--J^>n~b%GBQY%DpYYDK$m2ezBICZ97I`A|l<8uV{Y}56;ex{?8We2Y zUU#-;=P;XSuNW5vYvhQ{DW{DVF`XoYjClWL!SItHbczuEOB=uas^d5eKq2Jf-w%u* zVG~s>3CX^#I%0@Llqw1N>uW8)fmu^3g@8s!o;BOY0jt9Kz68YZP&o<8kplsb=-I0717n;h$WOq8vSfSu_V zl5=P1e4WHjA#MD9p$A(g365kb4uz!e(Qh3obxhobTzuY12}p+!1RMRgGyU|elJPpq zRj|;1X^;OD+HIMPdntzCu;)CfAA8YP2oOI30|{s>*eulkM)0vALctla>{WA7|47J} z09?HN*OY(*K7zrIk;o)d@QbVApUOuk+=;Tpg*Qiz8IBjhA(O5<x+bd5#~jsme^g7{lpQ02qiTJEqiTEtqKt7Nx{%LJ`q&?umaqN}e8dN)zFM%$S9Mm7R1!ks5m#1y!m3*0+5_|(+9#ZWH5R^X)6cQ; zOJv;3mypoUmv()k;3rkHK|iZaQcc?Eb@`*Y#R3jG`4X1klF{JwKEA9SeM`hu%p07Z z!k51dJn7`iPXc>e1}>f1QuD)B2kh@{`7$N+UB3KD2=3;~BYmOAWCmM+!7|bLV94iC zSd{ZYA-kaMw*g0bg=`-?`a-;|*4IA7GI8f@Sp8^;F;|~dMT`fwnBVAOiy?;c-g5q}(Tm=GvF*_4^M_tM zeE7wTuB2zWlBOOxKIF*p#;)V14<9e+8hx;1bh>NLI~&?yOf776an{;2$(Y_10!K)y zr9zO74(zFM?eRIV=K%ii*pu3^r>1(u0-;D}%zNURzWznWCWkt!zpqQPu6V30=*7=R znmcoUaiBW)*`>+BW4{|>T=Uy&`pTXIQ`1XeipzSeEbAX&I&1^en5UN}C)9#z{a#4Q z1XBx1N&r)HA(-~v@{0ov?E%c23uxI?=dI~cBTJx*-Yd7Tdn4BAO zhNrYxHeBt0?3q?a^l1OT6tuQ%80-JH?AG4sQT`uix4L$X^?&u<_Yaz!Umm^p%j0|g z>%`T|0yej&PHU(+I%46XfX)4>GcJjjS$;{6J@5DFOD}x3o2YoGp zPelE4%Twq7k`VT{>F<5kS262+(i@u>4k=7P3G{b~FNt@&FhBO;Y}**h_|<>qz4yf* zZ~NexJB}=v_VRt57yARdG z+VjO%#k0Skvhty~D#QNx+`(Vo`f}qv2cu2zXBI3^o~q-F9$8+{96tKZl8ev3_w;Yt zGVCK9L1Qh$zu)_};_oSgFV zgh{E+*s&i@PYBW#R@OzPcg066`EAgv(`UZ%>6gX7S{?qu$K}6CwOt(mtyIR2&03&; zcdh>upS@Fl<4t?6eJ5>8)ir;alJ0lcBOgpz{pgm*=1-q;Yg^EVuU!7_)tg_L`Cp&E zuy^|8zZK~p`Loj+w&bc8bcOpiq+fS>bY0P;KTHXIds)2mp-<2L>D77BFC1R;{f)nS z<*D=Mp2|g*oBul@?8o3|53hOoo-M~R-g~Hc=0A(WpYQzpOZRNAy!s8iw!b>>sn=V- zo%!RuJ6_m4`_G3fE`7B4(d8e15ckU5C*SyV_V<4+v_wXvK00L6uUChp-Y?V!J$&G= zel3$Gk00&R)UbMdflt%UinetpKE-nEU)vtHj9=|;?`!-v)FpJS9dW;JNL^3xyMHN( zOdht*9Vy8c{L7D4fAyVcyC0a)R8LiIJMjy&DVpG^`?g;GV%uw5N^kh^-oK*C z_v|ctzH0cI1$U2~wdLZa;cM;pO~}}jux-S|;eEa5ve(BQuuKf=>opx+zc95R>ix$T zWDKdl?*7z~BeS1Kug?DCT`Qhl_S^QCe7^G!o|3ya{m=K$Um6wg^j!xYdd7Fhf$>M9 zrcYg*{jjwzQfG+RlK#gJZNlNxrb!VQ&Xn6te+bA+TiMWd)1RMz;_yS(HAhF8?-~E} zlhdc)6EpwUIa7-J`b{HmJ)L?mcz@YbSv&kk-Sw*VzF7~fTm10MO=pi~#j96;JFcF%zG?Oa|JipZUMpVl*u=tFtB#kxGWW6i_debG(GQan zGIx%MzU5-n^1T_q%)Z)u@6->UObqyH+1Ne$*Khy+AK!fO+1KM-P9Nil=|%mP19h(* zEL@(vvGwB$!Dp}E>&Sng@R{RNa#~$GCahm_BH@+~pL_G=CpV0pvGH%&+y1rXtB8XQBPM6l zO!E(z_11#Mo1CEs`$E?R>*h72CD(QCP8GjRS2S-5kUpDY;W0iSm7K$4=fgUypU74_ z7Hd;oY4djL=N+lqU0G(l&4dNa`Z8==D$~=}7fbz^Bg5$#k)EEcqI@U{$cH zeyg)S4%W5l&j8)ik6;fZ>Qa|S1<=FT` zUp&t=(Z?z2ds)0C3fo#}E67o7j;ann*^A9cVV~>5*M%&@(&+3*@cAq&k}HBwR6oR$WGih@g5bfOkrax+0 zzZK=d`Zo4iH4iuZg%)7(L2Z8uKH4Vl7Z+W5Z8nvVA5v%aqMCYq#GDNcAL$GT7)#6J zTa%45u~d%s#l{0{U5l#E!@9HsOVGHcJ$lgp;Q zpJfV;do*NB1bMnIXM(FT4aR9ReDv2{&RetBL+@%F;3j5JGT;g-UZ z6!M8+p&w>iwn+7}h%OT>QTX-E#`V#&tZ{Ib5I-v>Zc6^fZI-gq;*FJs<)s@o7MGP) z!efVpL?UyN0`~~hrde`QQ&NNpCjZRcmZ-V0H7)xNnrg<6oM5_ZF@SjhE*&)aG>wQ4 zSkiyQn(UL%*&A>$AT7rhA8=2^JJ#g409f7+(EoC7yzkoqu7H&IPM0$!v9rAn|5*$L zS%0=WYT^pkyl`tp@of{HT{EpBcFoW^50CYG`njQp_uai{$KCJz?wyHuKX>HrjSsfy zpT<}~n>UC0mq($G8Mo(_HK*a*C+uuicW2Gn&_k_(w66ubWbpk!v|ZtSEGf|zW#bWX z`vE!>K9u9zdRlT*C%p{kTcrKpBYo4R)9MqAIl+#h#oR(mp=7~Y(DSyk?k1sPh zLxktQGkm(V|4fZDEXh(+Ep$}|bTw3WI4vQ~J3jCYq4Ucqj~jQo;5mN2#c-qH%(pKF zWZ+_F7m%Y0U-I-S4&U+aa;~)=+hnZjHro~oQ>ZTV+s=H8Alw8x($_BX(LKIdREMKDMV{{Dt`A{%@?(Z<5DTuQB+FYXl>GZ4)P%gheIEUABO!u~GV1 zYi(fXn1*U(!uq%=>*Y>EdP@-UUHe5~=cCI!8|3m|CqHv(Xf4Z7vMC$9aR%dBLa86k|O(T>o3#ncR5O zkY`pIJ~1r_2r&9~SSFUgne)uhulB4XzSbczEj>_hl*w_hrOFl*(BFD}!z#mXO&hH@ z`G3{bkn#=m+pB-s_XXd#8d7vSEFlf)FJ&TPYpgaHt{HVHviAdPL6*&8GDPObtT15H z5A<~7&Q55&>(dQm9_bBuG2p(w4P)94e-xMd(4Puj0i}oA{R-L(dt*uu_tS+?i=+p2 zXGLvEdS4>yeSxTVTFZdm>l};DU-#^b58iR?mPO~Oov#nMzy7Btl!a%xZYORq+!RcyO) z=VxFbojwVM9O$&$T6)-(PY%ct@-0~M2Oa4<->tvBS^D(+p{J=U9!&PJ{T^zB?d|j# zx!2aJx5dQvthV?b@Y}hlBMfFV0%l~X={47e#abhSd}|*n8g=cEoq?vv#jp`qGi+qz z=^Vq_{SjpcoWc6IlR@nnA;*HwO|P~329Ifq7wUdGr@k{?7n{{F;(*KG@-v|EY-qgkvC~q_x>%1sJu#>@ zy0aWg_%kf*n4(Y9QXBg8U34ZuzD4>iKjOz}0ZkFVUrr}F(pUFopzu8g+z zzpatA7-(p<5A86Xh7>VuvPk1)oH=NGUD@T}$K(er zuc``hY_D$6JwrZLDHP%Z`eF!ykJF;r5+uA5DE+P{9dR=GEXIj8;x7v66kMR=KtBe( z7PKamP$>`}g>ZB>`q8yN26JkD+G-+L(Eh-2mZ=a09A|inxCzUID}mEq`&8hx?}YdX zF9uF|=CW5aY_$211az+EEF?%#JMe|8=rVGLX;G~}z;G{lT{uFg z^p8DjBHwA?q$jzYV}m3=#Xka%Vw~is0-uKXL=<+q0^b0f%CihO*xYjNVL6+CE9Lx= z`F{mmS^nd|NiGG-hss0C)js%YYGI7*g>ZV%j|WcmT!=rpeQD|b8sPNX|F!rdyA%1* zK+AzsJ-6bI+D*j4zY#dKOB4R+KA9gIXGDEI0Zi5p$$y;rT`K;UnEyi+|8eH;SMh(z z{C>K@^8L|Cs5}AeHEtWUzyP{CUQo zQsHki{+bFu&G-i@{CmdFtMCzMT++j36+V^mQ5fr$m0|_+5-AsPM-bU#P-gX568|k21bRg@4ZYZWZnWql!a)9|s<< z&|3m81SD2PW@H3tJ{H-{SC!S0_8(E+2L=1 zPewc%c$5M^2%N@;6~L9_!`HxxuNwFi=BMZTRWSNU#Ge7~Ef!Iep=!YiT-ojc z7!)P~e+c*_MZU4Xsa~%Er*v7LD}bX538#UhIuecw-3Xk`6PxTM4b z03fUejf8#T-D&(b#Kpsil_$Fn`k{4<@;BHbtL&l2^IVyMWVJs>F@;V<9q{HTLRwxH zHF#qrr`lTFF)IJil6xP?X}Bi8w&!rKrHN5_4`=s5-uWeO*|L(PV`W5c5%P50s8wCb zwYFyQ;k2=o92P6ibCo5y9V^Ml`3z($Ic!wN;jYmW($r_HmKSz8Uqz$F#H!RQIk1XV z`IeTH7^_k(^J+R~kJWU{9;@k?Jxgs7Oz>ic+I-StLi4njaSu8s&TxkZp^D$w|LFE#cS3rUR5{FO|xzZs=7&K zNYJcXLY(X|Tydha=h@4A{%FSkk8lEGg6jo;64x@*&uo^_SWpQKfB0V+YB(!jbYaA4=l(GRN7;NuFn1 zs~8k*r*#_l;AZ0jY8rK-rcozq8g-(kQ738|b)u$GCu$mXqNY(NX{tF%)2Nd)>z4Gh z3{`cco2CIKY1?Izwp}J^+hvlrT_$PUWs;;6wYkoewBi8|wm#X42cLVcWfe13nv-m0 zrk3Webe_9xxJsKIoVm>5Y1-O+(mX(x=RTo-&=gCSiIREvPaMQ3*WCS}ztR*;;bTF* zPwA(0W`dlpHy4VUSu3CQGgTdlm7b&_SmiUpQ?!RA%p8y+rVThz9CWkHCFyy`C9B0N?$T6D`7tt%%RmUu9&~vEhHZs8vTL=Yj+H}kaYB{qGt@!kxH`MH#AG7 z>>8Z0cHi)lv9fbWEZV(8Gjq?*p~dDNHl^-|w>FZGT0Qr~!w`bzTS zJ?bmzA>O0D%zmA+AK~JBqh&k97}u2~pd` z6XJh{2<6fVi&4$;wNWgecuSBqtdbLxAgkCTLDsQHf~;hZgjvd}$#0;%Zo%bpcNnQ* z5DxV^%G%utwF!lO(IiBSF@Y zM}n**j|5pu9tpCVJQ8F*sS{?(itW~AyOGm|`JUunsOrF+=JOt%;@$;+AxGfCCQYieJ_gW#ka6@rrG~Vrn=(WWa`2~3UrR9a_GWZUG&y(n-6{1LoTQFZ_ zgW_~#?8F)z2&aH8dlWp<^CVn&2{d1)_ehuh7xy9k{ao7dHaN)sjBk}-kMy{{F;#q)#!(@-k}u?(w}>Pv7Mq z#Gm~kDc?ScYe3$@TH|iR-6Ag~k=%p$`zQ0Wp7Bwh%SlWK#CHLIbDJf(S1M;P>L2kl z_~wGo@H6<nh6?< zcseL_w)h%Q>=hW50E*B2qryP3=OX$CfnMN_S zFb!cE#MH!;ltFSXp-@EonVw_X%e04SH`6YrE~agu(2Jo36#op(_z(ItH-MtNW+y16 zSApW6p$z}Q{>(*;I~dQUMBrJB+Zne>)SS$?mGLN0w4>R=cnIS`pcr<{CdMgK{4-nv zGfdvx4@%`Z2TFJ^C`{4Z!+1C2U7!eN7vuXGC%@s;E>2Ktk6cjfH8$HpNv@4)GE*zl zD5e&sAxwjqnn0-?1g4iz39((6o@3g}w1;Uo(=Mhirfr~NyMR(Xn>gOU@hXm&aooZ2 zT#nm0ZsWL><53(B;dl_o1&)*dQcDfvA^!p>?ui|(a#~mEc<+z>WHjZ049>wtxjt6mE;P@pNFUda# zO8ND2yqn`)9H()W(%U)S!trK~H*nm^@iLAVaXgpfSsb@hh~p-Xw}D~| zHdB5`!#R@T@3PF44+d2;f(;rJ8i$CPe^QBe37$8$Me!*L6EC>-H<701`h<>B~#j(2nXA__qAL(q5>-sJct zj??^t(k)z{deYZ0!R@EDisCR7*Lvyx2*@9XGPHqG=mQ;xzZQL@n$768+xIm}S zE?S5ne1Ll>-p28jlpf#|>>R&H>4=|$@liOBbkd<5T5+L_?^neiRq^+!;=^#W^8RX7 zoPNWiOutSQe?uj2nks!P>aM*14=Vn}uoGo^rHbFIir=J)C#&MJCwp-jQC>XYSKvWu z(yP745~Ff`P=kN)vcZ2KSAGo_wBODd9(eyB_;4VX!gIAjmA!JkLQdi@TUuY_1y0lY z>L{maeG!w>w7>1isoI|$<+>=-OoLV% zWW{T5q>+nv#gz$}X&_rKOBie@KkpNwp#0Lx5$$iPgE$o*gO%T8z45ql$*-x#YK>~0 zQm(9Gsb6b>Sc6S!SM60h4R*Kr$oAl+Af8=o@Isy}T5f3irs%;T?c8DK+$GY25;=-p zyS8v`%!bmno3VQ2`N5Et$6FHQ-lNs;q-`4D5O>mej3e}kQ_%bXt^6*p&7u56tVAi55$Iymgku@9-DLlg!ff^S97mt@t(T3aqiS z*2T?Ch_}w1xi)E5Lh`KqHHrC2iHX*N{B<#@8aGpgKHn!EA6Ku)Gb0l|>uLX}yR3xN;xz&E1fv44j=ClFL_E zLZ$PpZx0y)f>k0y8|JZ;MHI?MO^xZgR{2D)(pvSUbqfk|eS275?v?8+%A*Ra>r3k) z6edeV=;e7fN9lETP*CWva$A|F{${c~djF(gty*aaB zi-oiYOXbVmDxE!}lug%MUvbPYDXyqg%WL8H3fU;iu-HfSZG${28=6N>B5|@jv3<4V z$?q|;y*OFke#q1A9|gsgYf9G^iqc6w9lOL45EqxP|9S~)f;=|y0Vc&2+Jhgt5~!Bf zzD~jy@jcEB|4yE`FVlT0m0ExQVtI0X4?~_RsPso4mGakA=55}%6>j8FzH}wOi4DoZ z%IbkUY7ZCm$3w#)lgY~~EW&nQ8d}7l?r%{=5>D$o6fSL)mTE+q z(VB({3n6i!QMbY0C;A+9+bsN1pl1#J(R0IszY+NRPs0j(1Izv#6$j+9YYzt9m~!*# zPLgQ9+pi)JKPD6-Dc4IGgk&@xx8FU#$KIH1-xWxQ3)ma&BqJ9x?2T`UVlo=vT8x~t z7Vr2+RcXfEmtn$`QRf#!Gj`1#CvwMrq)6yN9YRotl)Qn0r>scHS)P@Fyc_=_3CL(X zsLryn)86|QcB}ziyJRq zem}GEYkT7%d*caN&IqWDu`wj)v;@?k(xS3Y&NojyEk95za@^sl7=qVUb>#6ISI^RG^21IEy9DC8cTDVLw~qpDh$u%-^&*zht%`4$?wJ zVaYlHXWgwUE#I)bkPgZ#EuZZHY();z#(*oPDcOoEus6GE8}eI(fo$ozv=V&NrtBBf zYfiZvz_XU}uE;3`e`V>KQWUMcu%fJV<62+?MUwX9BT0I1RJ@o1qfNb*|9&f{k!IExu+kxPUeR1NC?f5|lqg z7R?16hk}V|Ak&ddWxwS!I4*JHOnBPmF2559>bFbx>QQQ3g3UTR*%q55Oo&aQO99ss zm6B#7$rc|+5H4+T34$%bIuJvWkji(kFbER(l5SqPg_D;tz4J%`F=dGqKDmi)pa$hr-8o!4@8+Ag+*~|W&f(^32g@Mg^oA>E#Mfdr za(NZ`NY5~udM#o-%kxHA-#Lua`nEFM!1zKHp2v8$3a9T^6jrP7-Hg*&9?I|n6udf-uS0zW!lPGn){2BkXihqO`{&2>BtKy%^__Hc}h8O+>#?|`2 zmT`4C={ZXe+(ll}X%0h4^8B05(4ydj=QxExrX!e!Go7J|%leedC6_~Pce$PAc9q*v zZa0~}#(I$3L6#%yS&qwkl=UXZ<@}Gb9GUX8PO6mRe{s%+xIDhloJ|>SV!hE>F3M2i zMW6JYgMu%=7fCUk@xpkZ3crW(aVosU3;v=PoZ69!XybNS$TXYj%}h&~Rx@o>#UE3} zWqr{81PXJQ%Jq}$BbQ%Iz3IIgvZDBpYDKW%4mB9pUh zdbXgL&E!l#Tsfu5Q9MkiXHQQ4g<*unUn6K6cMu(uJJzsbE>+Mrb~hqj(mI zi5}~+V7XRI`MDDvwaDo!2Tgt4Qx~^pq>C8Uc%w@88g+P08JrOQe=L7+ZUeDXuB*hA zEG)+e$FNp`cVS&>n(I^|0D3Pj2(U&zxaY|y{`)U?F8%15FF$^*^zyzSzb;}IBJgb5 zhr5URV8dSqk35)_vaEV{U+t%N`KBx|EW=9tt`JfLI zDnv((<$|dkhl-ovS`&x2>*46U(ovrjBA(ygY;?gdVHiA73N<*A9X`hcd*PBYKlCUZ zkxP!(BSO0d{G^wW)AkCS{Z8k=>#M5Z7gF>HSyYST%5g%w6XgtlTNfgFZzp$_Ct5>K z2;ryTb-gA-Y7IQv5q2csOZnlEGbyWnJ5GS7 z@{1Kwlw7?1B#wN)((TRlmC44fIH$cx4>#`Hs_M6)B5*xl1V`=0O1GNlhM@HpR6Umha5H!ad{YBN??$qhaHuvd21mka%Z(J}r|U)Y%x@ofC+uy0!f=|ugGFdXUM)f(6p5q2Shu1`3^ zPp5>RlMF`fo8D4i*<4>1B>IPi>g>iXMYWq?nGV$V2%HX}@H&g=kuw~oLUtZO1}PRk z41O~Q%$Ur;3iqS+HRHV$@v>Pn^vm$D`}%oTmAdPpk>hs_+y45Mx!F5xz~)QYmJkhMXY4D+IL&xsDD0oLVs4nHXZc9WE9e zwTV{a?ajt*xG1XM;xZ=X*20%TIihgi0Q=;NdcHtXvpy+Tf4i%8j?l0j9$HPt3N(S1 zHXbLlggu<<5Oc34zY^!%%5>;c1ZPM|&~HwQ)`i_wLz)HuZl~4q|ICbr*3E78TQDf0 zn~42I(Lux!HH=RB_im-+aJizazT8rugz*QX)0Hfi{08X4doeQig?iXLeE!0nM=p99 zhDwa^^_yDix1ys3)x$Y+1;$Tu?rg+BilfjK#&$>-{<#i5e4CKF-icZ?)q{CEM%pM0 zGWGByT;6PS1Rm0jJMA)KOgo|*cQyq+c>_&$>sO9!H3-T{vbqEj?tbk{${C_Wxt=%j23l zy1#EoNJ0o9EMkzw3xWm(4FQo&8wlFq8gVIFEdfNa1wlYW+uDS%TC2EJX|*<37qqse zN`18TsbQ%_LB*w(y0qY~b)i=KSljA*=H9tU2%&v`zt8*r_uh{8eUA>PjYRqXsw;S2!Q z-GFKh`0`qj7T}d*0H>bdL~Td#^a!P)o;A8e8C|FJTBVGvgIu;ogdm~SBBDWbUFQ62 zJGYy3zAh8pmN|n=8rbEU394Rkuqmcq2Ouet^+;6gVP*6|_UH}z*!s9A05qv*E1;gv z*9jrutw2oxTNwbUvkB)1076Z{PiLzU)XTkgE&^m}=iXI|x-=r9ON21EJ4H8Sw(DOK zb6Dwh5J8#5Lg_}OSG_W_ogGcwps<^-6Jk`H%=vb%=sqB@v~!;VtaG;rbbhD`k6At1E{u4^r&0(u$_BF?R-Nc0uXIfmI2i4WGMjA zyQL`#AT8<}B8|$?1mM>|OXU&bM`F>#TxcVt(RFAJHEO|MiM0&>YXJr-(nd!htH~R9I@!LLSc-Fi)uN09oEqEKcuck3 zuic^>ROxrSkp)c7;8npP);X2Y4%W`q*6WfvnjbVW@WAi5+gRGL4l?>A@;+zyS&XZU z)z836Rjg`?X#vcRCNO)l z53_g0A&=@JMbP5eVBRXx-FEI(Xg=^gbJKu-f)T*40EK52pju-EK~z-Fw*DK}A^=SM z9QeE*`AjvS1u0`TD7}nLG28Vq?FiY&YXduGyAs?OfeO{LAUCp_O*wX4^g(@8o9+5j zE_z4pd=ET|!S}JKIrUrsvN^PiP4%hUf2|VT?4%xBa2|My|IXV%ixPIM5uUH6s9wel zbq4RcT8Ex2@N)n$hn@kth-^~ySR=Xt&JVpol?a{!*g(t~U80ZO0`M&G$g^Y5v1O<; zxlZzkIA{*%n`+S`cue3iR5(8dy3E-)U=@2zv(5*ct(rZi4Y1l92GlEKIvLNzj;crA zh&+~ZONc;YAzx*U>1^;J5&#nhI-Dr5ye(&#>I@wYJVXyPROv?119(78ZcwKydIs+I z7O~Tb<4!E7(^YUfg%RFoD4#UCx5d@zs%eJpPMnd%0+{n8!aN0iJ9H~iRFlHyk{Vfw zLqlksVx2?rzKIgMan)j>TgA4}5(j+~->s}%JDBero?29q8Bb0U`=-UqCh@mAG`dfc z_)6a=V_{}hNfN|oAW!bk7m)KxIc@>lOW?n&B{fy_P03WND@X@e)pStgeTR`LU zgp=3!Cm)We2=`-kUh!VIQkwekt?hQ(-ijZq)#-}k?dDyg^;k1q@d&v7avR|89-etM zfaXkP1>9b<<*oRY#l^)sT@$;!fwSb&AWHEO!P_JARl{>g|%0B&l+pwOtEG`oG^2)K9=48X`~)bwS*Uu`^~7 zsa*TgVU5Qt?aqwnu&*31v4^{gPQMi4u1@C8tB#9HUDfjNBW;_U)hHAQGB<2waqBl` zaL+~9$;J`lIi5dW5vmrgCdtzMl zsM2T@%a_PH!pN`Xl4j4U6hGk=;eCD`pUVwME*Zu4-~N@n-SfxOsh%)Rmo8pK7`}-I zK3P(_=Z}Q&*5~2^F0s^o77zU7{a|+b7S@c7ab2s6hqqSsU!Zs|!|>HK!wGrrQBU;( zPw`dZt^LBKi@EO6Vwt^SaYoU_F!HQia@SM*swW{7s=g3&x!k4AvjrfGP2|B^hTE7o zjO>^v_Av&11RCB`^Bon8!FaK`>`3^BhD_y!wFvNQIZOjP)LeMu-!t&gyI8|3Fz^Z$ zJa~B(5xnJMUY?eh-6<+E@D^)$FyzXkb7hW;NnTN1+SAe$vQ%v-RcqL?C#5Mxyv6GB z#ZO8L>d=U*-`Np=+69%^g_PKNX&XlT*%(uyk6zU@q6%K(%E-N$`jjX3Nqqa+eESHC zdzaPnieOv^BQ#n0G7TGsPx(|;Ar8~76tWy<138C?7+|-dw_9~nY@H4|&nN(ugZ{aWf@XtvD7@(a(+xWR z?d;gS3S^ntQu{fE9+p|GDbIyzQ7*OUq0ujfv2hhOcLU@*6^xB}FdHhYF7LMh?4WSm zp>?b`BI7(DMR#PPBkgERa!cX-JK=oY$h|6aendLM(CcQmBMi*oRRUwSyE5ltwdO`4 zpcPMaI>7hk@+LoR_7kC^N80ufx&-_^FEjAjj-)tUfJaX z7QUf_v9~t@{)3@)Dq2wb-Xq~Px7VVzUs%(Q@m*hgRHNEt%Dvk>pMS@k`&I36O|Ch2@6q}EpUt_y)}GX8&AE5K zozK5(&h^@TMpI?Z-Fs|4{~nVY?os^&mZW7bYn5bV<$F#O9(ez4tD! zsnuNccTn_rbJ17lf7ehaH)(xr)N9V%YLk6Wwa$87)@&~N_{sP64fD)JFFo%m{KZ^! z2NW$ax8#-&`|>Q^iac2$`%GcvY$(p2b5sX=19kcb4 zaBs9k%~a&cR$`jFad7C;*cS$<(`AMUu2S5_H^L7d)o3;asBtUSzM6ZYfs`j2u!}f+ z-#I{EGk2W=JAwYQhVOX#wg4Sg_-2OwV-a^_qMbeV)*rYp`3R-!IReT{?#}I02-2tu zIqeOX+z2%J!vnA6w`6xGx{_2y>Z({{gH}ySyI*u6vSX-jCTRyx1adn4@i9`+|oHQzLJk4V&F#cO^s-qEMdU#BH#@BiqA?lF&j%GA=lbL^j;xm!#vvE~!r zOm88%p2Mdf58p!P;8~J0ObZmo`VRz!uQ3%6|C+jU=w77o%oh$)6=7PS;;r1$2K8`L z3mkjiNmYbt0k*yo9<)|-3kXZ;iZCrOQ1FsOcw-%Iftanc-G@^ZamPM+S2~BP2<-y7 zvNX=HdQ_3Nq`HFC+|8y3x_gJ_-wkz)MHIIy`hVITQF-X9!_+w8&>C|Sh3&K(kZc#p zG|{HO$y*wK2pD`lP!(PLX~5u+A+clPp$lF(WGK~TZ9Ug-uS{~1@q{O%br1VpL9RI@ zIJryKGRf2jEKja`syX-`u1{xhsbH32bMvKN9_`D0uSq=$8%VKyWmSFdsLEr<1y!r- zhC%&yzox6u`@s`TwVd`)KiAh-Ij--u_H)hl%i%0nox2!6*qJ~-sHQGiz`h(^Baft- z4SG#N;=21F`3swRe`pblu(D`Q2OMxvhH}wWmaueqHA_Vp>30nDv{kj=myQk4QV$Ul ztWlNRw^O<*DCdTbnvex-TdIq8pi6-?lu~n8vz;R*?CE+!DRW*ibhG%VBcZOcgtQSQ zaT6>{$$VsgH&AQZB(71_|54n}O+hs*UCPS08eE|ibRjts*AF_4ZBPnSN{fiX%K5o< zufWrVzfXfM3nL2v5vz$QR_Q;@d+%m=nt_1y)B3rL5T%iz3%cl19)6qZ)}xf`*JRu% z7NJDh=u-NB?S0ZP1nfYkArih-e*jk%(PRO4PNfRr=cr}KUg#=I&_oxcvIspR#MO%< zXdMnXWIBR)6Nqx(>Htp{m;gEqe(@+rX(wSxD_o`GBnYeRf^@~w5<8K!cAeB94=Qza zm+I}@rNwqaDNin8N$&93p&c7Gs%NLw4ia7K?1!VmW^&r>_=S}Lbxz zQfMkwgQMx9TcnezT3Q^v>a6e+nQk*U(@{iq$GlGGG*juyj?(IgFM!GKP!WIR#VRRjP zGR=5i>l8~f9%RQ7Y&r@}AjZ)a_Gl7EYuPa}9PMC_i8MzQI2y?gSK}y1NXF4y>=!c4 z(Oevru;p5FvXPN0lD){rc0qK#jvuW&c7QLv`vjn4{Vxldqcn z?>G~U^FE2APmRv)INH|beU4#J2)SgSc7x;&7)+|&KqRHrek5$`B$Dh@@GOKW^clg`$(c<(!PDI(dHTsq?Nf!ZKFfm#>$rSS6a`fwRki)cqAA% zp2)5RXEI=~lgso<+L=xgPOh|RQ6-R#8aEajH`+CBY=r+CHpVw>EY`V>BQjaMlpSNb zx+k0);;q#^Em6v5e3&afaK}y5l>BC+F8Sjrk?vlP9eC* zFtsXx$#eIV$Z$O{E!Yl{CIXWINeTz1>I`72fA!7A29Me)k(Z)@X-@5!uBu_cR8ab~ zr0G*&lDv4*NA$1B|87d%7*rJ5zNeov?`6X^#1som+sc9IajvoSxNp=dqC@mu$AHTn zvlD+Pe($vY-n0(B_TDs?I0KnIKyYqPjV8oH@O@g1A=^uEIjN>Iq@UoYq#EPfUV_6X zPdD?m*=N>dpWpb&g#lBAOKKa3RurFc9X~<1q&t4Z6Dq2srb=Qo9u!Za`$Fwq^$^G}UGQyYtaP!>ca{&PkvI?gv{+nm+ zhyV5d&W}o$>^~Iz{cW~;)UIaP=-`z<0RQSVkEmJUDt>BGz~~W2e@;Cx+2!NW^Vy9B zkz=pzp^W4H%d<3Oz?Zid2tV_GzjFS}wXnohVqX<7qeMOcY{^QGn4zU&x6>jp?HyAL z(db;@+cPVZv^#!_pIA|~Ab!g@zoJ=-RjM8qGO%A)Cx6|7==e10>22d29Lir@r&#Zrv?D>6 z^u@{$ct8aXOT} zyS(SSvqo1aBTJfA#Z%v+^Q#vN>CdFF&=@9+hmXLpNymG>%${P?d%;>%i*ocT_UN{v zRRy`c*ZHtuS)L2qlycciigwAI7s;IA`(d|Q6eey)`xIbFtTEMhzN`{` zs)CPK_3YTg=(|u%Teo|mhWC0VZxq`1#2ckW>#VsNSmNas!YW`<`BH6p3Vbk^!1wL) zW!1W1^trWD^wwMpv#gH4g}WehfF zY-ob@%h*4QV_>PWu1Waq!t&hY^1NJqK_;&V_E<^E3k>C+C#S(iAM}OuS{3>jMStiE zBc-s71#SH}1Dm0AzLz>-^O4UTmhXJYR9Fg)-U6S?)B#u#_#|G$E2^G4@llmCvViZa z)E*x{v^55;5kiIie7aM)(@XWRh8k0+91RA6wbE$%c=X(O}`WCZW&^Er&0SF$Ys~d~{oy@|*j1VO`Gb1k__Fr0(60=hmWRQul@A4mVr@?P= z;9mMCg~9ljnxt!3u`iJ<3={smB4=_H%)y^r74!DrSE?&f8pzc zK29H&ADZqMv)Rjj_g=@=`gbOjzH{Q!6M^sSZF^_Y1_OIH^aYO4?v8>yDLiAm<;l6# zO8C|Zeiqf7GgQXQWybCU!m%XxW$v|y2ZV_bDQf}Bnd|htJe8#PExU2zO!b^6 zJLkg7YZocT6G4az{gxB)&4JL3qoVlu5a+06luBHs4}37XM{MU*xfYDFQ|vzQW*%e{ zzsTs{Ap4`IhRdM}bmJ%j2lI&uS&=OY;m}YiJ5;83YVxemK_S>4bJSlpaT5$;D0kk^ zPEA|ekJ+RRM#p_s} zi}>EM>I}(h?QEX*u3Z;@xa^V(`y;qBvT}~Yo>|M}Zq=d^aC2%(3p4Xhh<^H6r53^Lp}<0!ksst&SyiDts>7e79*Va2&u zC)`Hu{F3A@t`O&A&LD1?Td}6fbx+=qqxMT<($ukjeD0IFp$)-$F=T!NnOf(1|29|m zL0o(HVh!oKJFWdEWZOXku#iW9;YcVsh&v9l3?8doS4q65@QdRn9zHH6_Y0fFt0eA_ zW{tT!UOqvshBotf4jm3r<}Z7>>?SZEo9+aL>0r}#Sx&1l6#=Znl}f_b3<%vgV@>wku4X5s zI$lAKVsoUO;xjNK_+FWv+jd0_TQNMeV=l>Qv@e^`-~(>t3T{LecZ&2rp|SumN53hv z-wO_9PW*sL;3LLr@R3DVrgP^V^viA3y0hh%#C3_1bK+aUdKt&vvnq@zd3IF0N;-9&0F&^B{X;Rov;1>@-O~xtKbi01BZRm+$R;aqcwb95m+H;}t6wrA7 zp~K=ttk7Q1bf8!t(v$~AI0hbe&f=LyYhCb6uY{w@C>!APdGysR}I zrcTSc?4gnvmg!1aTl*JD$mO~U*3SO;z6>FJHv=Jn;hGtZX`|uy7RaX);19XH8q-l& z34c=jdyIGp;k-s76+(2c4h}VCF2skf&5#GxB`$+9sLw)MO9+x6_5&UL#`-s)qYd_m z&JQ4n7NDcO^#bVp(PsdLei7(!MkwJ8bW{wYBRP+O9ti1CKp$*D9{>+Is7A~MI{Y)q z84Pr|g~$XV%4g(<0Ugz+0O*$WQ2`x2%N0OJ?-quC3g%yJ#Xk?|B=Btmx*z68gc6`5 z{hNS}>_N#11{`CcqqevRbOs+7*`XfOf3c#s0v**KouOe_{|?OW21Jt_kpBSa=*;CH zpraqVqjFJw9N|Gm<&LxDhjRUaJ_zV@fbNg^QGLb&9m!b%bjJROo(got_a4yEeT;lP z&{2CF2Ko>S`fi}3`>z5WwI^i;wHB^_Rv8laX!(Cw@dpDP)yIR?vp!19kIwe9td9oh z$iK${oza&M_9*~5>Yir-9odP}3+lfP%U@z8e>dh|X~q97(9v_d6X+17+ZW{j014C{ z{{lK=PgL%&n7|33T)xvggusK*ny{ zfsXp65TG;tqzl;UYoL=rR{`A*Ld1{gKLUL)q!$9+^j?F0k^{=1`cwfOSWNZt#`K+5 z^l(f+Y(<}l>1V9y^DzCE75xoNe`ZDBfa&fqc(JU{UQ8cqMQ_G*g%$l0rq8sZKf?4Z zE4mPjfb39gMGpX?9O%_R4`b{DcAE)wJM=R&_NWj6XKTkPsa4aR`gt; z4+s7;Ku6Cj@boBnG_`%O710B`79_a8WQ*`vco(FWK*D;`5>h%WDQF%WBov9BR|9ph` zc`(kmLdKk9jSWfVpaW4;;80x}iI5`M!Z@_SJDdgyx5Yi& z3h$bR2ckjHZSvbjLhrLS!>!QJG5k>9{51MEV;}ki8H$@CQHFtoXU8Uuova*-4)3+4 zE)5lKv-$u4nUnTvdWr@9BO}2C&%~VEV=mUhmTH`P)-7v3B-NJ0@7G_hoFe}|~X*P8W zx6+NSL%2=d!sQI!xy6Cby^mhTN0Qs})bOzXMuO$h?35HZj#*7VO>xtwC(%!@6%Ak; zZLtmyr>)tGn>J@JGHuUZWZIy;$WcACu{wmlr~Y&sjI^>griS*A^EXh93?J0Qgjk2o z&1CgH;@XPAqU~%Q#%;6OHl2E;O{X4d)2T<=bn1~doqD8Arygn3sYlv$>Ij==jhw074j5tEFC%RGWrS_NjIiyO5w`s@f;Nh^yN;r*(u>^F`xr0odF;6@ zuNY-zIog>=*|OZ<9p}zCuBA`+ES%x!?b^2a=vONv&vaNnGq7UBL8W?OFfu%hzNXiE zA7d^GbejGM%iLlKaylxUDXcHpMe71B-|M5S9vW=m2pcl3U=w;s?bYC;%mS!9GteS) zAHzUf(u`2RP$G?a>TfWc^PS``57aqLoM@1Oio>t zGh#~GtFWQL@@&rG*?l=L##8C(y*3~OtnX)Po-o%s$ENdIVtO!f%6%=dUQBI`;UX-t zUQBs?6~{O*jbUNKgRwMg7iMaM&Th5v;T|TilF4|nbyX~#7?)=4#eI}!>BcmRZ9ldy zv9}vrbJ+G`Tsx~)pN|fVwHDCZi>)~rS3piok7xgJ3BU%P%|r|>fq`zRZrFMi0O$2w z2f##IlUO(TXzhX+rEbZ^0s*o16AF#Uc(uLVVn0bVAWRlFi_Pt?}_YbHhO6Q z*Vk;X9*YCEwPE0`ZI%KH1hflUtPs!zn+F+YpeM`X>1j=G%J5Le=j!cBCVU(Q&- zM92KSjDY!j83FV6p|89TedT@VEAK;Jc`to&xqavx)`z}fedrt3OJ7=kSTB8PJB0Pp z7xVX_Z&)AthV`LuSTB8Xxqavx-b-J)KH+`n8!peHpB;;tYM-kNwp~0t?7t9Uxy*pY zSPhkJQ(>v0uMEb*R&s`iGbZkp!PvN024m!28Bvz1F|##1$H(y~= z>Ti}EFdJ0Gdes5v^q!gF3iU3))|$gaQ(tL0c^cV=-;eCW??*DtVp5;>vyn`zSkswC zG10MEm^Lxdu^gsJOmxiOhu=r^VfKhV{63-&eIx!GXSQ03z!tT3o(RT7y)qaZ^~zw3 z)GLFrQm+igOuaG~J6UIpVhq(QqlbeszTR`vZ`*f9^|B@1R-VtZwR&Zdj$HQ=!F+fm`TynkAom}n}r z=jwzt9h*3!x7a?GC$NBC%|6N`fy(N=K7sRTJ$o-tOiV!w6j*wXB?@|0l5V+1L4B1o z{}+Nb<7Z_M|1hg0LNc-!7KFh3nFyJ;Fh4adD6I!aR|ax7Q0uz1XH>o|8%l_uY3jv_%&KiuY3j(H@S2o6y(T=g*P-s4Gq+ zF0)fQabMJPR>Qs=#FqenS1=#02SG4=^j#ER7R0~Be8`^E#qcHS?N@Wwu+cu54e*y- zO_$q6bD8Ch*Yj3!-=TO>7An6P{v6(;`LUe|Vk)jDVuB0t-G#r2nD6iE=??mb{ug|) zz~}K_@XZ6hKd?Ty9nAWm%E7e`+7UjR`;*2w}TLKOYF;8-EBKk3h-&0YccbF!~gP@XbF2K^?)~g-Hi+ z`eO)@oDU&HayCFX82DD;^lNnfXrv3ue+fd^qZBd$La1Me0z$BH$Z!aeTrPxA-lRW3 zH&os|2ob##Ld1U#LZt5r2+@59Aq2fc>M-2^p(B*D3c?WhR{|j_cNv5n2xsB^u{d7= zA<7>KA<9Sl2~fGn-l!ZEgs?Y&!WW0V6(Y31${#}Dp+XWu*baf9r_tUE3UAyGLP(;$ zMpWntA>xPaN?a0$XnzGtqx(?E#~}n%8igd>hxZzZw5XDhE`kvDE{Jj=glABc2_f9e zMSGY)Z>|D|kvNp$P>MqmhY}o$amdFZG6s_K1S*BXZXDjiVJ8kdaM+H+791LJSPLQ8 zg=>Hi{&B0}Kd`5$0z#;-NDCp#M|;QMA2%2N1OF3cV!8&?lTjwn)tIirbOjxXA~9Wt z=~4)x9YrLjOE6swA#^(;KBl8W;UD)2FoVmBx*e%94hbAS0jELtbwY^B>wpmHZN%w=I9-d=2AoFk zPQ;IXe}njoa5@*KH8`D&(<+=+;Is^Ve;K+=u}0h9N^`uAcS`^)jta%ltLQpFOongfDm{nJ`|$o5dzBpP>A|vWEc2H*#U({ zprg=$LoE(9I8@+}#32L}|8y{_2ySGqY@BAsKf7_785dUIG-@Ywp}oH7erDV!!1>HL zF9fHVaotVK&y3@a<1{mFO9WXWFhCs`1zjxgPn6a`XNs=fIA4Yg1J^q^t;T8e-beh^ zIF0bPP&yKv0$p`Dt;T7zhaBZg;169ooX*8*f2KY-y%48caQbVw2i-4*#zPkx%b|2P zPNU&DB_Hb(i}ZCSOt_>WC=HIn;ELV=erKpdE$EG|%@7WRKLbvq5k1Op$LXsOALyhd zYAFu^{8PjaX#-9>g8YF(Eup|^Ey{;yZd@KG_;BS`sL0})tbd%NnE>`*XtnwKI^`2jG z8EVfjxD2)Dw;P6P{k@5yTYvRpz~QN7NxT@*tTz2ute(9?`oWV2@G6%$5!?{yuk;u*VIYy=_b(*E&-9!8y~w*ugV?N69JI4wT7 zT7ClUi^oK#!8dKJtXM4_GOAmwzS~-}wZYc2oq8^S*e_%RmUtbl$v-dBd}F<}HCGpWff_u<`Jw6sBY7*^SUU86c0^K!O|JyaI;+ED7t+ zzm{LUdu3XF8}60a`_pnSmfjz@d$HL5!rd3!++G<>6%%@AFAQWf&&my*%&< zJbG?VLr+@*M_9;Vyam^w&=C5-}7k+S)r8L8oE@=+r*G9p8x8oo|Fz4r{}k1Ti% zQST{uoe_0ttV6;dTrk!n(44rhOZ+OG(~fzVG{{8rQtI~sh$AJXAfu=N#puf#=bNE# zf%hM}7b1|ol6sG1;Bx_uAX1s!jVMH#Bw~&r~U05E%C8k)cAmcS zmHQ6g+z#?AFI=37#MCb%3)K#_PeR=EI8!#!fgAxY866O{FrGw3R6zYuQ^PRFR{bc* zW?TBA^#gP<`gUM>2mfAQN*+?!T3@s-fvzArAUg4Q7bl56^hNe7SeDz{eode%bdWUTy! z8UHg*Q3Q)_NFE<1pr~%pJWLiPld&Jd+_oj}Af7KU{!)SENkE?M=Ob-lL3+--3|!-s z6mE~N)E-3B=}6Z0dl}1P z^c}XyqB3;U%6{nUPHK8V%92G(0lpmSmtc8ECYDEHV?}~I)E*?*4|fecTqY$YBNH~N zqOOIyto^Sdlcu9}7IY=UI|RvNE@)rOK~n-DpesykgbI_uUnZ0heai_$ zq3WGCJ5`kfRd3rLf!e7mU*xOa9=QRWg5px?o5e53y)w56NmRXK|2jM{bRzC0x&TRH z<$2XRV>?upk*c?yUZ-TJkc?!Ip{o3r5|dc@?Ib8!J*o7!f?HNy0rDqEKRd0_*b9z;J3smoGh%siR+YfAx zJYnu_Bs}yv6;Pt-;;?)CQ$qDNhc~wgiQuFE{vTd=$V;H%Cy}2IUps_O9Bz&5$EI_CF~WCrun0Zh52I_FG+#&!zrshwWI1X*A1!}M94q^GLSjt`C!9f=v zhfX+j!y$v4Jp!j`Za9D(@AbxW1HyV1Y+59Umxn84(UFSK2x3rZ1d0+6r$ag`8nP5& zazuitLLN>i!e!_>qr{eIH*Hb1>n+@$S`pup#`K9+^b|}->*1Cc`ksWY6f62FOh@bGme+nv zUtvW@XM>=t%!+=z5Bfz+x7OfZGv%Mda+nYg?`S10{zvvf?=GgFxnb1~ zbFkh1u%c)6Vb3B==i>PhQ&cggJ6q9LW4fOe-Ova9Kp%9}j;M+%+%8EtoQ=czI9!Uu zN*u1WO7F5tGxivY>o*#QjDCzhO#Q9HzU;1px=QgM1g49b|C$K@5JBxnjr;NQJITt9 zeYMB`t@i%E)qZ{X2MPLF+7RzIAZB1ak=n?AQTtPN!0q?HeUAI`pF>#g|I~l97WIRu z>H43xGc}-@J~cRruo%@$9|UR3q0MxQS88xluo5!UmMlof$WMn|f#@J!(tJpz!%Hyx8L{%;U&FZ+Rx>a5J>nk~N1ZCq6q3!K)*DdVtOI8+bwC`(usoB^`pzyP)+x)8Kms;x&NI?t4w= zOQF|0T|n69K4t*>JUHB%50H*F<07V7DHoF$=9!x4<)1ps9y ze18PAZyg}S1IRr(?EFHF6EIw=aRU55z|y9X?9Vj#wEZ1=y}EokoJ5Z5Pbp$i^G2T^ zK_DDG{&%-mmls6xmcn`AnQVX$UshDU3={##^GpB;=M|VBx=B=X(8ABVljRFlI$2|F z%nE=-%$1Zc0rdgt+)$n;p%a(OM#%a;-7HQwERqPqY$ZuIU>g$8vxZ}7Rm8i*mu z8L0AWz@TA($sq!bm5N}?yIIcn3Gxm)mKvS=ZqpemmRCdD=>c9nAC=BShtnHOZlHB4 zBMC=Ews>3qvcy_oLc;R?)stl1&!~OINw{g z5#q`6f@+K_j{xRXyuwWVVt}sHfWB>T_&rpfMN&wRzThgz&;0;wp02zP;5C}v7yv<` z!pr#Og#fayEnlkQA^U^D;W&Ia$DM#9x$o3?Ya5V1w88P*H9p|OW)#mFr{g-GGc`UJ z0L!xhTG;S-RDt_HxX;; zMG{_7Ee|j?p{3$PL@_#yAJ7R~eCbCIszT8TtR+40WwbYRe0uQ-a4t3?L7d4+zzx`k)i% zZ9iqGXGTE3`MKqJWO)SiKhQhsh{?&@*>=UogOf=G$&+CM{si0<1(bJY~>T zLJwcQ*igO{9yD<|fCA@3|B1@tK}QNla$7jtQI_u=7GTF#LFsHQXi-%T%*&ytl|m;| z4*0cs)jW;UQP#jKM$})mu?F6V11wml3pGC7Oy`FCx;VsO>e(Oyesu%-Jz`*Yr-<0* z3%xzOJMc@&y8gA`#;6}&Dx*pV&IG#L+$ zXb0$Yz_-FS@O9z726eUKcw*R5$~0ayOtU1FpGNqy<=C z0EUkuI8oaXEIL99sAr8XQAXDRD7!MU4szKV5rQHH$o2*ips@ei&h18U?4sK;XOKw) zj9fE8q*HM9Isog4tVg0^4+Bm-d-Mi8)4gDQ9Iwzhyc79m1O`mJ6Q@ql5S~=0%(Q$hDf7wGyym&&{BDX_>oxj zFc;bgwa9g74mE1QUx~d9k)2BK4nVBe0R~8H3&7jQ#niLMU{res?Y;#V8W?PQh%kWn zoowGrEX6s%3{ge`UW#pNJf_<2*KW}bs`R_v$O0y3@T%Yt>zvAH2W#hQ>vhQ-%?}zG zc;I*3Z7gkA2N``5d7m@Sti3Dpobcv;cNQ6PP{bn$oMKDF*5Quq{f#FPNsgxR~|kVkcqB53h!FmILUZaeoXG#~h$xoN;ZK~wN6 zK!aHYXv$bY5Ea$4t^dZg2mrA@2R^TlISe%c)EZ^X2Bnv=DQ3GqrX3;7cx_Z96h*Pn9HJ8I{9;86_Dj77~4HX(r}s9kKTPu>1&mFQ+C z_1J>*z*GEp-VR!nuw#wzd^JV&GG?eVc-PfB^kjjb19&#{4A4bnlcL8O(G75Z=nbkw z@D#vCUe4$eee4#134uqR9ea)~L!HTWl1Icrb2#5riypya0*|4>`7zLC&c*?&*khV? zKH!km>@jVC5#BJMUK!KLcqVpKy*G|D;RrNV8#pa%OlN}+kpS2v(BVXZ4=)a)UZu(KB$rw}_oi9Cu4-?VtyB>q;1M)ye)U+McKIxD%7B#6&Ip4^`=Am^2G+yb_jz<*auYO35_ z0fy7DgfmHO{KlIl6%%i637F&(IPuv7PGz^FHdma^A)MM=$mwb>o6U|UOQPNU1- zA7B0FPY$kK3o35sa>FGONr16&)*1Jyjn|&PpqyA9_NSx&q~|4EdwcGy zJ^!#}*)s9)UfX3$uC$I5OJ{(aI?#Jr9;=ORCH1*+I+wHc!6+c$1(-p_t z&AUYFv1YpB5pezGHo)CIJo9P*&6&yyxV>h}Tk$K4i;H!-CU$uPXUU~Ol;R_TwE=&* z4drn7uCXf8MIa4u6l4ZC32FnJ1-Al*38aBhg3LfaL2aO$;8tLNfpqX7LFQl|LG9ov zf?IQ8jn}nof*$zUpZc44|f%veksCToy?tA9T%6n zs^#HF+BP|>Q78~(ZrI4;)^E({*rKC%huO&#&WixdF)~quBo2 zzmm6m{&+go6Q=3X#j6OzH}SwHOG@|rkr3YcTwK5<>0EDrLJXphU8}o*d9rMIK#-NWt!+SJ-i%`KBj2D~Bj)Z^I@T{;F0Z%Q5 zX<&z%3vc{;2Ht~q?rjaPz`!e1@ZjZDMDUi2d3jo1cBiPwz+0^0!H_GD&XqX=tWHr~ z+SAe$vQ%v-RcqL?C#5Mxyv6GB#ZO8L>d=U*-`Np=+69%^g_PKNX&XlT*%(uyk6zU@ zq6%K(%E-N$`jjX3Nqqa+eESHCdzaPnieOv^BQ#n0G7TGsPx(|;Ar8~76tWyJu)4h803?Hh7>EM)-9MW*vqR@| zx5np^0j9~m(0nlCXpFnf@{7-Fsaor=tQf~%KW$9pk)IY69`f-$az_2=;@lOUXCLm1 zj2&@=g4%p5s_FiJeh!-HoTA+6K6KvKr_SUZer4;~x%YgWwOnnTD}jzkCkTc6>NUn; z+IW8_9T{+P^|$?Z$|P?DI`FC0>B87wsyySD2PCiv1?*W`{bJyrP{|o{?hBuL7F*uX+FrzNzYfacq)@-2P`UyO%0BWR>vLZ*>W*UP$9YfzQT3k?yH`+*K3 ztkAWvFB-HX5_6G4MBUXxAKrEmIZF%Nns38i zoarfiU;?w>I(=WG=E=JO3W9{}j$i&F}R5vn!>V>hxGEOvT z<%tShw8OArBJSEmI}Tm+skyUWlXaMjp53}fUz4$pV2Xa_ypM4BdJYFENyKdZbKeb( z>OE7@hpYQ>l?Tm5w?Wa(=AvJpf4!mGTy*8gVWKjNq7Ti=m(@-*Y5nxX1wCuN$-ZIv z=Y55t=A!HOU(t}}qW}D030Ha8T=Z{H^igw5{=DGd4ebnCece@u2IC#Q&MZ7%ultUt zJYl}wi9Jln%`=-t$~`X;{%p4S9O2#Rai1z|W+$eYF zX&yI_Vc6`(4vt4nXBfcI-#%e{U*9zkYpMO!K{l3^<(mI(*iP0+F8j*>9fh=RTzzx0 z{xu=DFwxE)yU54fm%N4KdX50MM4r>9p^^)M4(_-@e-4=QrmSV6tCae>Vs58m=>tm zmRs7O8ID_^?&`6zT~tLB_*rAGX{0Jby8z)lXk1#Jk7y7p@}xV~y`q6I?@xg9kcgo4-_(Ea zdcsZtadbf`KRAvXPq5UGK=p)D?%6vI)KYao92ynpX``gRM=3{BjITf`@L7nu$`bw< zp$TPiw2&g$t)9C`(;LtM-X=pHO?fB9&K$0f=|rMJ`wR+YsBqu&yPP|SbOyRt)mB8 zTMH9ge%syhTTt6ZhqjHCE$6Sao=Xm0RGFm61NU7Id!F<`Hg%k)axnNAW;uC!@U zC6J98Hx?T=+BI%$g#Q~h#y4y%*13)&GFiNo9b>w>C!8DNt<^m(QOag~m@7VT$4%6f z{AQyr`Qs^(?p}`_cB`*;OjU<~Nv{4dSN$6>wJLzgbN7_Ua6K?B*bb5=0+Rtr z3J0d@3}C8%_07fxkJ>4bm!g4bPVJbks$sxXQ2Ml_=~G~mym-<_^smYPZc5!4R2131 zr=K(LWy3YZ6bnq-%7N)|uCesEZ`3NHL-bw8fXf}T6Mrav@3j8jv<|-Z-ZYmu1DQQQ zaBfeHCd5PVeOiqn+e>gcsirfepWvsY8spnug2N|IH}kdGXVzq&-}uRe0aJxbY8!`E z6rXV&KS8*pJAT9yDyp`R_;8>7^+Wq_PTsYCz}Uaexo@6wrR3?QL-{w)Ccd+M#jE2z z1`!){_S(D~;bZ+*yAT)mh2K#Gx&@B^aQQvX^2gJrO^+D6{L$|3rx=o7h}+>De6*@k zz1GRYH6Wo@S{DDCgs++99k*s`8@J?k?s9@cy1&R?d#2@(Y;;Memw0E>Jr@^8ma4?} zbhQ)zY}X^h@fpEEt-E>O{gIwHYx3y36wm1vS03pzfpn6G__<8@JmE%oiR(G(ggu-k z&Fhkmd9Wf}&UiH1sa!wU`?>g?P@mTlnmMG?4(YpvyKa9U?sGZ#)XlE^sM`@omW+4E z2q!0&vsY3R#1;F;hHg$$c%p(2|B-U)=PzDAyJtn)xM5$eZFAzdm|+>383+ zyO#NUb$86!)6thZGYD|}9e0TNduHvz( zvtxD@ZX4{EsEy0gCfr(2*CJ%^<`Wr*CJ!{UL~E9}XUMPI z?B5M);Rg!?c^O-}u+z(INX=)1SWl=~ugM-`bT7tHa{==St$&5qk0F#vkkrgNOKg*i}``^-r^_D$B2(f8jc; zx&BbQjr5;uYS=M6AkulhDV2Hc@>?HFyLWN!{l}D(p5;sP zChsa(cHvDAx*^sseg5;Ze;4M={%*|=py%r1+EqtlN_p58Xj!J+)cb&B<_NjnmBNnfm-@$uA;>JHgG7Pto` zZ%;V3ZtNtfaQDi_O?$4DG;TXB4fda;-YhE#U~&Bl1HSl9L9|}sQx5e8|8rrAa(YGW zoMZcTv~H56C-oDp_TRB{Sn%rMW8a@1l-kwJKl|#LBnRn7$ZOQswzxJus*}ziG(2IV z&T*+=MyX72 zsZpJ+yK)8|S@G-{ODN4H8;ZHk{u4VU%!w$y>hbiceQ#~ zXV;h2XI*Z5cf$9d&bscs(bazZcSC1>GVajwu>y~XSvz0-AikeqPGsJV?UO#5d1Ch7 z*Df6R<;wYxcmI`h(>H#Vbg}HO-& zLi%$lEI5Y!ANJlouBs}HAKr&^I2`eCJR<5b0S}0Z7w~XL#X1Pu@s5`YE90Ulm|O%@ zw96cB0;xsi7*kDQ;}n%MLuHLMO`%XRsYPnW*bU1}%^JFn)6Mt$?EUP+W}i*XyzlS# z-@88?p1r>7+0S~`v!1>8+H0@99`h^;#*P^eYaG5JTlHv+Np+^p+@YU&q+&;TiQg?I z3|!WgV7gL?o~FFm>qZ?JN-sxGJBAcFhTuJ7Z-yn#+ClRbFf?{3Cv=UYfnHhRCDwj@ z%8T@VXvUG=piS9+x8(aJ(flXBBsYz>(mbk2zfBkotf<@UuFJxUa~s}s*KKL4oIuo_@;3PSs-+sIM+vvX-{K? zP&h24H^;cVwi;upGg{MT!XOwkJ(D)09?A9{ulS>;b(^6N#4QxBCaHdQF{FV#5}y_o zt&N)Ih>dnc$4!flotRU!#a>ceP*k2*T3lFEP*PlukQsIoiNZ+=!WT@QY+pVrHB}gE z@?WsS9+?tT)x5vMR24pKtm%%00A>QX)M4^z42&}`>OJB}_K9!rF?X2LmOJCjcZMBx zB)*h9dYFvApJ2j!bwFdv}#@vj5xU#Eab5}icb6LSHW1n0#xh!VY z;295$_I-Tc;KTcO&ad5h^v_4f?c8@{XVI=^{o}Y63`V;T_AiaZIp()Dv!p2v?>ymW z)4JNL&IZ4_CxGU&V0H}N8;HIuyoKj_BaZPqB2GKN356Hrc&DD0+}KW!xH)!d-uEy= znivP39$JI42ZvJ-`0{n{P9T4a8~S~7n_*(theG2F^QMue%96^{OG~caHrmHvUNfr3 zZi|WBO=0buhv#&=?Lj_G<^3gGd42M`HV_FDa9DOeAH8cj6C;2!Zf9|$YWD8$9q;HYK z>8vptNED8DjvH?h=C4ogbebo{MCxN4)dB6J>MKzQ+vCQJ7ut>K%~q7V`m=!chr0gZ ztDCXjY0&Ge=WLBb_0_smhjV+oY1`0!fcCR76J%gf~ zyJ6r+Q+7vlh0|*8-E&?23gaJ4MUET&zv!$_{Sx-=(Z67L#_(Ews;<^!IMUHMx3@RD4)I{GY48xHwyn}09_ZWIVNvRCz3szYKN5mrO> zefh($8ni9I6tNIK($)kYDf(!+arJ?)l0)twee8SI*15J5)^k&;9fqJ$jd4QF&#$_7 z*z7^3s>&PE)3Qyn#s3ocVB3Lb4DC+e`KGEXsL2df*}Z|!J~HX(6kSZl!N5ap#x`Fg z8qbNw3y+zcYSCc=&RQMSUJ4`p10HrlaZb~C9nR@H{6TZ<(l`7_pQLXm6zO~9 ze4@h)y3YfI=MQFYuC$s)+M<0oM^xiNBaZ#uU<{{AinwjCOV`U-i#5Eam$fL|nkk5LLb25I_^Ck6E5(fG$3@zHh^d01;x_!lZe*)+vOup>@3aMHma z7x@v4n=r2UGjN(?ZwF5EO^BcHp*U%2>@pTOeY`Epi2^BYb!75H-CsG6`DIQ~3x zFc(f-_Mr+O<;(I5fs;OW0$1u&1Dx7-FL1iI$o$)x{|OcUBf!JK*9Lqn^HY60fYUYm zW8i2$NzN2Oc%ShflsM}99m^jEC6)RF-~@z;go(hF`dKa!0EJ`51iUc zw%cOhq|Z9w9(_=5K5){z3OLonQ(xd@|GmKFcBFQB3^<7JGVpQCPxUNlm3fynp-vXTE6DG^2S3OO@DV>fV z`J-qD6XFd6r*Hmm!jJq;#9@$s0H=Cxz>n-C^Pd4ucD@5YI!@;Q0XUWWFn+RqXei!> zg(Hdo1^kr!Q-Krzn=1YV%zr_}zl!-UtN7i_e+5odrTqJte=2aLKKp^whb{Af%k?$E zKAphH&MSd?><0bMvivP7`9CrLohts(IBDs;eF8XGMEj8ZD1c=5zX6x+N%+;we*!p6 z=&|Pt;8dS8z-2wjQHvP=w+gQYPJZl!RU5byx=+kq?PVD5m(AE)B)WPGj)?_r$Q zVpPh%#P~)PZbf0F53PZz(af<|GtXmYFDb!iW9vh(}EvFp+EdB(q1;co$_e!?K! z#OdB3+wBr?x-P{4m#>pFsVESYw*y}QJdF7Xj|Dy+=|bQnPnMGjob=fRT&Yh9<4>sY zddAyScr)WCRrmqMFRJh^#(mI9QI>m-ahnP!B}va{6>eiZU4=Uszg~sA7%x%b*^F;f z;T6DRQSO7l;}mv#0yz2Ao4}#6rybiFKdZvuWBex-{w?D{xMwNlSRkC_Pgda*7@wuW zos6$g;VT#~QQ@V)!y&&8_*hwg?C$~&m4qj-uWXlnjJK)q4&c$?KM9=9SJ|(=0#5$t zJE*TeMt(R9PCEhk1mKa(Pxy4;lwJ&+`bV;yT;Su7rZx7)EATqtB>y4cb{U797T~1! zOTckS5arPQ`X%60uj9a#^*RZBBJlITCow4V_wRS6iU>&Xe@LJ@Pm-$pJCexRvj>ahF z&^oDESQ%J~{U<_NQ3W-4qookmTHMj9Xv|W~Dk(&_Cck!^?g6!lR>kU;HRVgO zsbvdEYsrYxMMyMEzp#s1)s+HSYl=t6#p2v`tFjak7i9^a&`9zcK7GY1OfG3ARU<~S zYd=WSo-tZ6&*gFzjT#-JGOrXHDMl61nM+rhmU%V9pvP#2L66Z4gC46H20d0Y40^1p zx{?mDs_IJm#%k6rRlUY3w>ZtZ#i{DXrD@hJUR5_qhj`7p#mCCAx)tj+d#|j_t5$1yYP?p!b}tFaCAvi^ zSZz5&I-63LFJCGxd9A__C{c?wI$pA-7q?_iFIcjt7c3dn3!c``9&*e$&H77ikf5?Q zqcQ#D{6cUI6-vPSAAfL`^d%YC3hIX5AA1D@RqWFU|mS$#wSJ;s@+`DHi0H4^jpfO^TNb{DtU;szR0b_axQH!-h`Okm?-+LMhj) z>67|Ih#skDf?*y-X0@uhXzHAEEh+V1HqH8SPZA{EObO|a@J9OrIXy; zTZp%pd-KRHLQbw34u&tb{e~3!N2yUcGe@%(FXZY`1cXN>xk%B z?PKIn+?vP8!KVA`6)lIF);vZIH?2BG4mPcMOmct2Nka{+Z=b#T4K`@kMh;M|SqcUm zB!^UtI7kKeby@lX2q}w~9+SM0=os1L((PG#&Wjnq)G@NHJ*E-+9NIOB@v^d8tQ_LogG>CevIRUi^LrVA`Mr$5`~%cCc7XcE z4p86N0qPs;RbMW5fcnM_P~W%#>Ko@(UrBzPSA8Wr#Cg@1`3Ia2eC&GZ+)+IFdW|{A!*|*)9v}B#h)@n&uozW`TN}mD#XuRdg;jE* z<7E?jWym)6%8-rhl`&0OHTmg}#|&66&j}+nOoCSfFdm~6^$Wuo%m!7|qZpjy{iMeV zc^9BHhOxkNtyDgSB@E#A2?O|jg4`^g>Pvo>Ah(Jdmm9@{vsvUe@!%{+ZW0g9`~&!X z;s9n(9Ki1r2dHo2f8)%mp$)dE+IbRX6M1FGHuB1ljpUUfTgfX!Hj`I|Y$tU_l58li zjD8L(`+EOD1a03*^0KAWR!JJRq~=_lE{728FP;4tig`R=lfnB0&}5VD<+3!5kq#~o zD)A_W*7LjPY#C^zLt>B$^Xhh}yf-PH%l!4R4z;PJ(;`WB9kt*@Z@~i&cd%$L2T1bB z5VN$#JD5YNt(LhKWYK^Jm(Xv>Lwagir5y7R-}^<;B!2|``<16pAu6x1pgams+(Ojq zg0h_4^?6bBv>#Q1SR9BU61BKY6qhajSNvOweXKUDQ$XS_;k42GKWtw4SrRTh51OOX zd*#dVeNQ9*txR99d^z6l&5|6id^!H_K;_HvfCtK#;{y+rFUJd}d1KhT%BT0UwCT1k z6?7F=oz?7TY6MpVFq#{Zc^|#yy?j}=laOk$Zu3bCFkW44xD)e$h%X(#D&}K71P>qb zXd}M$_^o9=vZuJo^5$0i-f6f?Pw%I9;dhDoPD@;U^5#|h?J({Xc`1wJcHsATlcXox zSrC@6p2UQW_%70q`F=^yAk_b@|AH?Ce9!$Ce5=9t0P}G>^wo!y!*&nmmf^L2NG&Ml z6wIsu#k>ERH-ku`|vxT${4qlrNj|asxj^QDon9C6LBg!VZ z6z>^xA!fb_in$C?6iNwmA{IW!=_f%+&cmQ2XBX&r@ZHYoo2C4jR2Ry>4is~rqUM7_ zzbGdtY#bF0N^*^$C~x5ps2i2{IVj;hpu~Ryl=M0ZO2-`lMZKe18E*z1jB<8>M&Yjp zl*-)#Y5-lq`Lj9S2}=11pp;MZTB%&JHI4F2TY6rzM3koq! za~{OF;$fgj(i|p{jshiqUle6$O7kr!O~(;6F$EFRMC~}P5z1k%hQ&=vf>wZHPK2cd z6z8CY;_%^EqYD)EHaeLmGj%YHWNK$>V`^n;VoJs!IhUXm(O#zKnD#L3X4=KHlW7~% z7Esv5*bIt4V-xCr zZA@E0#dZOudNy*pp3@baF5z@Gr!zV2;ak`V!bX}$VR!%o_x{1^EoOW}%gwy$)&g66k zr=6Tm=5!>d?VPr9+QjJ=P+Ws8R37rME~EIplZDE`Mb$#(fY;~(#XVWPKAS-!k%s*( zHc)?1@Q8dw>3jqc{f{VJm&q>p6YW5>4LH$erf#O$Or1>aOhH6`np8?L^yQoZoc3-0zF#e7T>ujMH+zZV;#Ce%u8a~%wr2b&eTmbzaoW!Hq3f$2&@{+Ix_&?&H*`Bjxe%^?vD#Dt)R{{FmWh%HwClKFaim zs^g!t{0n0dvPuI#S<4)KrD;8X%Ut4ct~`jtpSE$7wbAB{q5Z=6{eY4ee@sB5UD2>Z2-Nwyt8r377U?%p&Hv_tL9j zPH4aI?8m8iMXP*aIuMTsmjZukjJK$U7Ujw-M(4H0bT!!ew^aWDG7WYwM;Jg6?^e(j zt!xZ04r%raN3UKl4Gd8v)zz!>R!0{Wuil8^An$j4Y&@P5AYUxhmlx?}F>=MJDPHbI z!7~N#*Tl*<+_x5ygV-Y=pxn7m($YcOfQ7ay2$rAC&lY`Rt^X(5Kw-MD5=Ug`8- zVp+&@hw$ngeEnu1Nb`-*Kf^XQW@@6t-nS|DV;l}7W5xg2Pe@3x+vDP5l43>nZ2viP zmuAeGU0PaPN{feN#U&=>Iui48*2Lz<<-|Kyt;tJXwc3%eCN?kL5xY7!Cb}5+KzV!f z`_F&I^QI2BDe=CB+n>-%eIq-5*yw&q&(H&HJq1!u7xTzz$P~X(rtcJJ%gQRxt0o-{lpN`TJ@#z2HNEMcC)ie)#5btMY zt)g{$iq?A4{m+j}tj|ZB-zlG1oc6A-$CX76wSGO^UvJ~%TQP`6`qgh1pBEYJBV1qc z3ctRftXwUxnV$z_rzpW79m(s4Jkkx#BWH<1W&2SKa4mWA^M~v&ZkBfr^0d#7+=B8| z#jEpJ<*Y1PhKLg&ZLFU?Q^Fb{k6pZvNwJ6a;5(}Xs^#^pk?{F^Ol#q<$rEQedRA#t z+ix;Ayj__i_a#odRZ7kZ1aO%)6UCE!!^6aud7fJ2W3;Xe;|=-TO9h7(3gq+TZ#V4K@; z(zSDTx2qx9wLRb#QHG0T&@;KK;Wbgr+=kZ{qU4N)wcnMGgP180Gk4k?>&9yqG+cJ+ zXObcd8om>GYuYwOem0ZdEC?@=tt36R(~=Cr+y=uKS!PXJxdlgGh6__c?Vk;vyFF!$ z$Q|>pBBL91u%QmAS$&G9UX!|fS;kzH-SCbiU~WT)y2yrhSHp*_QhCLKhEK))g$-xH zi~70I@C&v_QR&D_z5MoqhVye9UO`R~C+|t=|Vx->I5SO8oR$3LP=6T2MTHf}LgrrxkB3Di^k5^0gp_QC37yRt8V@ij}PD^$Uu} z9Z%Hcbk81?6>YAt_naaGU>2XK7@Sj(w|+HHuSXw2`E9P~E;w;$GcgTdI*h3tzk4dD zC2m3J|7;+rpGQ3-2eV@1osQ|r&X`1DY)m5U3fPyZlrA zS$qTwgCK!->ELTOarP3XH{Fu8Xxa5>hMBkZKhPO2w{SQW8op@RGO=%jlu{!_aB5=f zt3l}`PYGAeyy>P*Hx*2hOStK({xV27Jt(e=d186#%WwzxzT$k+HO+eI~ZTD!k=OMHWmIi#%oph>jU8LGOn)IzZh>+ z$9b+z0n@+Gx!v+5(w|GM%bQ%l4G@lJ$_=U2bQ&UFCL^+fAk~u^r@gkmbmBmeaBw zWxL5~x%}fSN2c7ZlPaV5PxhgEmVABrMAZ&AvfaK{;p+#mX9eTF{9Gg#MdR+YSycF) zjN4Us^8h%#f1pjxPwhx5I=NluF|P07Bl!p7+2rS55AZ8H)P7=rpU+=fJ4U$;)E@t*+WY@h`wiqDc2q`bL!Or)Ea!Ss zwaI^}{mBmhU(e%#{O2k5i~rSs+|WtZ54)c2e{E;6BeQ(Tl%;~AH?w>!(#kH)a>c!L z%F-!m$jsfiHa)Lw6=o08LcpHhOS-VUbP`w=c@XN)ELYqL#Z0f^Sg>3r=KQxE9ks|Q z*Y@lBc!o7SmXUU*s;)Px>;aS61LpM481sKwe*e)?Pxj5JCh}gCJ(LetCo!=~e_sY*d{Cn}`{Z`*j z?@sMB%r#nLr`@BgF^}^#jS4kv&vn~p`^>s$@GQg7*q~&SZN7hORlTb*$euQ*{*S__ z*jZ;>md2qG9T}-hDtDZ&{^Slr>Kx+|Tuf+w%jiqvFVSp4U6T-C(&tjRcP!A22=U!v zV@^3kKiCucUL}R`JLL{Ob};l9_V*xKeCV0V&{J)}J$nL9Q7rZlp-c=|SSpxGvBzK5ayu-zvoBsaMIYCfVJ&o8 z7hPXbf%u4GWW@YxEZ>b4%iYj3^mUz0jABk<9Z&5EMuhth5PiH75$i)wHPfQ&r}hMZ z;k`Wph)0On-ol}f5B3BcI~Z~#X8`>XnKCh>ZYx$qC;i2WC^Q!je-BHb|I*=2b>+!^ zo3UMsw^Y<^K}8UPJs$zf{mMNd!|kLwY7rLPqYH&fZ+IEA9$^|wY;_w^eMDYw zt}C^PVLtQq8(RFz92AZn@yN@&>Pm%P!G10bOR}S-LQiF*T|(U(5D+xdZ<=62Ew&`r zl{VKU;t(vT-a>1kZxK#r2ls|qE+YJSTX1g<8Z_W!bI2*(7!HvxhfY5OhHN=dI(E=l zITS{{SBGWd?H6cyY+8R_(;4cwHlgjR5$?T=O828h@|!(w;11Yk7X~{Etq+_g2lUGh zfAw_8nN)GD_{xy4_5{!h^9Mt)#C_+UfX=Xxi(#~XDm(O})X;O<5$o-BP%Q^RN(v2o;q_xccBeHzqf5APi?6gy;tL_Jo{5Y|(>glkzY-LU7a3_N#2X~$lo}KfS19ioMYhUAN-Ol zBDAUrfn&wkqF&N+L*X;8=7f+b5Wf@Fs0_vFf65tr;h+>#0B3s0H+zDy_^!f>YV01!}=icY@9DR)ieLu1;|H-P+{01v~k5o7(&mGpn(- ze<_j(X8`}?ojTq@R+Bz4Q-5n)^$ekYD~RLUFany@PL3>T|XQ zZcNwV%?`121i!#J>$%!=XWMkG!U^L?(oMD^@xg$v$RG7~-7<$CmWoFxcf{I2ppA=- zi2gq0Ul~Kba3a31rO;_PpFQL}_7Mr*I^-+o5Cn4WMRaGxS$A992s4a8_0t5yw7nFj zouU@(*UhX+o8F2b@oCAe$kk_CC^Rxc$RD&ID*V@7#$E~!Z#nN60+~{vlQW)>?al-3 zGxk>^Xh`yY5|#2I;@0bD?y64NpE?ZzKKAPocR6FoCxRLAN1zE}3?nczqSyZm!I;G` z%!L^g`sDL2BLyhwGG0VL`fQ7E+Cs6Ydn{)i+WObbcrk7C0SfJrg3{a4M(;;RY5jEJ ztQf=i6TwQwIfk4sv3!AuBwfbu5#G4hg1SKe!Y+z=f3ANObO_Os+@==;GL1ih-&l+nj?c+@M~e;!Q`H_;BMXMeU*qslG3Rky)Sjfe*KlL2d_ZH=v_!2 zOhJ=%fiN_%WIfzSq|@@J|>4eubzsI}qKOD+p23`nUBjxR!vR+9%-i)#Nixh@O)+V^`Yf zw)Po&t7mjkq?^&Z^fUIR!Hp@%&VC(olbiISW2a6(P(AI4w*I1vUdR~oIXp^^ccai; zJTDO88||W5eev+G8!eyqh^H-_2WRmwc{^%RqfcqW`PDwn%a}1k;9VcL(wPN6M=)<( z8E}axv|GN-ww#6Y<7&`o!C8QbzlNDL)hQ1mTnSEjeaZ>FgDxhY*!_f5G{=xnGc4cW zG{I@;9P%x2$B?!wcIdC{s0@L#HR-QBf|%t8uh^e9qeu2kcGPO}M)FwEEwO{fB45>A z*>f;NNJoqmTyUnr@>(Qj~ldBR{RY2`;G8ufFVd&+ge#~ z=rJb-9}|7DE$B#UYh{zfus6VvAkb^ixp+>YcZb7joK1FfN6j8b&7gxZsm^-_RXx4H z<};_sY93bqNKDP3>UPtxZFTPPrXle;74`YE>H z-ofq?>nei~aAc@`d4^H1*H5?CO!ILZn0tTtyrv&N929tZZT^sW#PJE>1AD18Q-176FK}O>sVZ*)gvv)cEb9vab zH($0N`(|-|Mn=7TP;9a!_cCIX4Sn#Fhci}X_x50O>}hu9I8uiX%HD9lc-+gwA`V?n zf8&hljjyKG$A{^9J_;_lBQoc!-|Y2y!)E?1O>(C ze;grk=IA2M-}T^cX5CR$RaIHpuCF_2*!bR9vEoywxFdcVHpyTx1*W*{L;WKo2K(nn z1o*c^4Dmk~G1)(I+%*6Eabx^j#)bKx8#l~9a{NgD{PAP`TgHd@pBul}KXSrE|NIG~ z{97iB^FKFX!iXcy&DQi;qgu0JjqpkHd`xkXk-2!sehAe(;m~r|4HbsJmu&>ghYHq7OHY zTT(RpGZGqi(~c+VWQFaScB{^+%tHH9k=_KBL_Sr~Y_oMt$}4 z9qm&aaT8BV-j`pUb;)JiNI4Dl#`1U+x{eKg0ikbMX4!!7uk(K5Djn+&dWE4|IgS5c?tP9Twc#zd~1} z#PV{R<-C(F!qoX`t+L#HdZa5XC_gNyyJzI>r$ahYLtZ^S5*@s5Jg4A6tTF(j1bFtr zV|e%Jk$q2aIicNnb~`;1kDPcgygerro!Dc#&};XjnsSwYJcM{^$t{RJb_g9X#4@A1 zTT^>VYb7q8(-340*XLF-R2lA}xYHrV87}^N^(p(DWSQ$DeQ#{;XPFJzbtQN#DiH@g zva2_sZ`>$8yCD*s3w>ihJPmDXsvEu*c5n{z@>FIaYZ4-%ia4?J)~E z~KQY=k=q; z=%Dgl7oCNU_vQx%bA>wAZmkZ>x~GRKBxJv~?5btK<{$4d_zCo$W=3ex(;sD@yD!2n z*pcl1@={m4Uv+1M&PTwQe%qZB?%Wq^`(WH4lQ=}aDdn-%wFi4A&vgq3~nV~)GmVBlI`VcvJ8Ex%9r&9=-OM`NGnvtn9b&CcvI%X_)m zKOJn0>#O){ZC6z5R(h%ycTZ)4UmBWBR(^v1$syaCSUusT@vWxXhvps$d9%oPZHRe- ztjLbV?uq_a-P<(dAxA(CcP&lTUQxj!>cShQz-VA*S9k5~TIsK;3%m-{FEX933BJneK>mLHs8yvGSbPg&3s z>-t*aLP%z-+ve(&ffTa1l!eGJm+ao6Acc26-E$Sp7<^qwK8aEYuy%YPiphM%Mg|7pyPq9Sq& zbY6AfPOrexmc=w873IPS}>ozk^1_lt_o6$g&wv^>BD z>bbJkb^U<{I##cp?Yg@Ax6tp>v(C0d?!>u**mBO({teH%lNuIW@NamoG0A6UL~L>D zy?z3HQ7dk?z{&#|r}b8`*$6Q=th=%Cl1{vTI0@L6zBan#XMDU!3EI*gSu*kstOJlO z@&L$o?fv3Vc%V}}iAb;`;)%_bVT0_VbK~MF*aB-`%=o=QECop_W&KT#r9LJ%*qsDy zOHY}){E}dBV_)3T9yu_wqj{XNl=vTfzC$VWmYFt3#Pz>9eFsXRlSL|}p(ncmrC@W@ zKXXG#N%k5a6IIShz_#?&$(d7i1~;+OmKHuU_{IAL_h~69xWk41-EF`j~DCC!gCg)^et2IPaP} z?8~m7RnV~K&S}lnu^f%wVXaQ$U7+)&!1TwQ0Si*4-H)7>YkBu)A?SMEJ>)c(@a|c+ zWx5o^{(wH^l2p_mEEnx&PpR3wyUKFT9^g^S&AT5DafVquhcyq8b_oq)-hdO?OC-IM z+||oG%IcT%?v=gOylcs<_r1o0>aXS9s|4Tcq+QF3Cf`gCS}X5D!u5I6)O?Cm zu}FPfo21JsbElJSIK5TBNMbzc4oHz0J2B^0FYTfUth}4APqOoFi++ZKcf0jhCim?+ zc{f=fpTWD3kjcB}^jGEg?UwMaO&{y-+im3CCjIoLKHg^DMZv9oyls8EoxF>~y86&= z-bKMZybB4vyz9~@2)-E!GB-7|e_^$Yk#Kt#HE_w50 zprh^DdmU{jpK-K}_y+qyF>Tk{+eREY^4yf8*A^a4y!mkA`PWX)dwo;Ot0&LB`rP5e zo91?Y_ju=b6OZg3bYyo!=gE%_pUmwX(Q$A@dfV=!g)MNVX7;*RM|GOyOm7GQfs$!S z39`|l-BoS7eGctDg#QP3&pNofsxoknkgxO0`s0JL|*F4+gB#^=EloAGc-#&=*k>;%)O#}_BZSA%KoUPxL1 zre=~952mI(FzsJ=+o6LaS{5h2Hyunjwp@9-aWa_7Yrn5)|1+3uSHBTr`Rk&;x99Ah zSdrZI#PA`0H#DCirW7zeQU|7QOWJB*51qC{=(fDweZ~9T*U$ZD)$iV_{(M=t$^H4V zp{dRG!YlkwJh3M`YJ~qgxqF%mNBh6ObWcyzaQ_dN?rGaT+W*Bj-s&*93yS9xMAbwJ-qdE!`5$?EnA*Ad+Rrk zzq7bG^QzQ84w>?5V?)N>0V4t<(pw_8&HBz}%3cwide@R8#+vgbTZL7L_62qC>hC_* z`MhIhP0VQPqwSv$9XeR&stJ9oDZq66^f%3~Uo&Om;m7^n{$bVJ6^mwG6nWn24D_>y z%(n-`MuiQX|5WS+??KFum}7x z^0%8FJO566$oo^?{Pc9$wDXBCZ=5$MFCH4`?+_mjZ+~WX%mYiEqp08)f5>|CvuAHP z{>1G^=1hL!?)Gnb6Bb@Q`0H=Jdhb7>FP+{J^0$ju9)D~4`#pKj|0k+=@!^YKHT}H% zvo8v!e?Rfs`(7&#d3N8|4L85AWyzWJ+-1oZ_I`SJ{{uh95BcZm|J-=>)E^!^)o_1J zgwFVsE^yD{Q@?*S>v;M8)}qAwKAC=-JN(mKwnyt`i`86mBz(elHx7SBmoxpr@DH*?OU6HQNBYe42#o4I9=_`>w2Lc=q&xvj5$}kX4Rw&`zYT3;NjA*Z}{M$-T(X~=BKE4CK~o0gghLf z%Zu+>@My-?52pO}mAwBPPgz~}Y1!{*EpP6e_WNU>6#RQd$30JP^I!6J*=|?Pf4%hB z&cwFgnPJWHn9&(?{t%p?uUJuZ`{8$w$Nnwl(U(7Y;g1KZ#kndGYbL7C-eu z%A=piZl1{D+5D8fOKD zpZT5jv47TvMGSJ7o|^dJN?~1Tcy5@`&^<1Eyikx_x9-uE4|V?T!JU)*!;ii4x69wY zc+=mK{&eB^n{!;%3&w}db*I)ZJbmlYIaOb0dr~{+eDKpd)82mR{ZDSXYK{I-dGby) zNcp_`9(#YSs)wAHC)$(LWvDeI@EHfedD8JBen%bt=rXDQW0@JZerLq^MWF;c{20aD-!%4n4Iw! z=iODa=k1!Z;zZ4%#wQ|geSF@c$SHw44?Xgh;n_iHuE1<-?q3^5&R!IeSev%=h5$qB zlsmHn?=jdq>a2%*6VhwzU;pit8(z3|P~7-yPWMDEUH8JFkIpUKJNLJNBP@40{xm-7 zx9-?0aBAshzcDdp!I15_i671C2s%*mSVpb?@H<{~+&%5yH47g|+Hm&7+^po}C%(D= z(C+_?nstv*ZGGU-o*47Kz)_an_J53z`?lqSpZ@acx2OJIaLvQx@}{jgS^T$@hwI+_ zWbeB_j*nkJ_4_7r8H!zch2^eEZ$Fw~{$k1K-TIeq{ryxV3LK&%W7p_+-?L&zFCG|21#qOkC2u z{7<=WuiN$Hb$hdO?#+ARb1n&=fGc0k| z4w|QcA+bX_p=%rs^r{LkulDOxUZnRzGmi8IZOZn$CEqWJ<~{i(xoMoWBpXA#ew#1~ zSW&mxU6+Ly<~F?FuG`X7IfY)g_E^4c!`Pla7o(M!)q;r_`2QY;*}{VHzUTEE<4Fua z(%7WUWr%u zRWvPG@J-_ovOwrMagI+IO^u;3LMR*-(wk#kUR#YZ)ETX5Ghq;nm7YnPQIBN%j#vCq z)4I*j2jkh8SJgDs_zn%Y;sx4)RJ^23J|GUV@>uLFLVlbztq0ZA^S6YVomr7`EVb0n- zJAKmqE4jDck12EGX@FUTv~yedDZG^?y&YhK3OH2Z?QO?m56 zORyxRoj%00Z<6X~7egf2Bk@U5(b}kKj@W2NblkM)*oiqsTkIvp1x4j~rNxCs1trDh zc}3-R5{be|3c?{wo@`$}D>YRZYw};P!ycIuQ`Nk`!&DVMY^>>yg#cy(xYS|tX$*`r zFX}zwNcM?u?=g3n)0R8q%y)(zbtJzA!2Xt5|J#%}!|UcYb81|Bn>#h3y|o7a?8e-T zf4H)%VslqLb8}h2En}ZtHMuNi)!-QqjP`we-{8ahch0ZfdGyam$L-vAWM|Q?X8q&1 z7SLqP!TzO@ILG|9W|lOi;aw;EY+6@))!E=z_XN;97R-vl`vTE-g}3l1OjDEnj)>C@ za6;k5INqhFB{$MiL_&^Tn)f}-kS4~Vrw8ev?7`s_guZ;;yA#OY;)Z_T+-8{A^`X!> z!@Oyvsj{T<^wN^6w~h8OnAeP|vD;!IcUukmTbqaHbi3_AK277SmWl7@=)+4)ZkzD* zx5iHv_nxV8ha}poDuvE+b7y_!LATx3RD0ZDqxH(Dj2pJKAyWKoyYU9&nXjHR&&AHR zP9Vn=vE%7s9I@g(daiby&<%d7%i^3TOr*Ndx12e4LAVign879T(J_V$hgc#XN&jYIX-x>SdAd%J1d=&E>K z^$O!y>;?P6Vy3X}P3^-b70s&DjVdw)JDT!rce=0lb6@m1ZHjihH&p)z9GTp3qMN&6;7C(;M{|YKYVO^0UHuBy_F?y$?D^-fe)73px1U%y|2(zxb+(JFkl{(gSmU-~RoRV!Pn1r0 z)pzrZ+>DeklkrmPq=Qqct;l=@neHL`!;b_8jWzlPRb|@)AJ6UjkZe2F9~K%B(fo3Z zeXMZ~vYJQi2;5-{UTmsLUGU=TR{JyN4(kqE5YoCUFV2gdpOJw!dD6V8qo;nB)!gml zZ#Y|ZAS5R8A#z+{ z^v>v*?v-}KA>VED4~D>v0^vsXsvb*qNQ@)GYN)<1fB02{wgs3X7Q#o`n&2ZvA1ybo zJ`h%N$Q`7Qeb3rD*LK2sZc4So5HzYWPN@0$Rrd~?J;+p5c|&?ywn?`5UjiR&JMfI5 z-RV2uRCNV4nV~AXH}Kg&IeiC~920H8>60|tonx22v2HocY!t)2SH&&ypvz)*1bQ%WozD2S*v?! zWQEPXwX$CKC`Q`EEe|iu7eWYPn&wYu>>7M;K|Y<1AGv%6<3tU1t!4rNBu~!ese0VqV1fEZ`nL#0~Qf;MCsYeH2u*4-E4#a5}yi zKWaA-2mcGe$zJvN$$mnHq`n8)`SeiT|jIKO8v8Kd0iK#{562 z_^)MtTH{fvPa*S10axmC2XOkJ#RZ(sGqD|EpND{xeQyBnIlrL)i!6V$O8#-?-=X6F z5;&c=Ex@tsk*^0xc7GnYY)=!)4FOL4$AH6B9{W!PNcH&$xU47HIi2xuRrm_v$QEd= zRQY@%U<31q0$0k}#{4lV{)ZT+wH1|eo@0Ea3V(y~G8KN7@dg$CGvg1d@DWgs^rtl> zmE}e=eprRiVf?fTzlrgGtME;X)3@zP`FAotR)s&x_%s#%661?i_({g|RQMN+-=e~e za6+o@-6}kk@yAqnBIAEo;fokQuEN(aeqM#&&N!{bskFmx#)rcvmH3|-pRB@PWjs}d zf57;4D*QXf3stxUPEK~HR^j6r|D6iI68L2B{{{FIQ2Dx4!2Iv3_$z@=1>cvz9SZ(d z;8f2r+~}d2=e&CrIGvvfz~%b_Dfl7d3sm?e##gEEp%6}TwyN++jNh%o(-?12;Wq-O z>(|S`mDi=sz{zg!0>`dL|GOCfQiVSTobCyJxQR!~{J6fo0i3Q&Q-RCZ$)T{-IpB8S z^MHpjKj9`AWjxY11DEeR^xiibIO%f_a2)EW6lyiphi7Naj#+@pB1e76tu2bPt881@dF5uzd zuLV9<)*t(rD=ONp1^dc&sbc&k6@EYPXdHh6IGwMueL8`Y|LO6NK;;lles~`E1f<6S zk5u4RI5Xi36*&2467UG%8-b5we!_16Zb$ll;MA8F%Z2<~fRo+fzx&H5OCb0J^T*?$1O}ap~TU5 zrEMi>FNERQsg(MOVh~+k$+iF5F#TdTifnQ;p8kA&S?airVh*jCnuRrkr6_?Sq!oWq zgEv|Vo~^|lt%?IJh4GPsgKP3@M+hHKn`l*(a1IkRFuxQPTQ-oigp9~7LZV^%1!&Z& zt`tIBQ+)(yEY4lGDoYWYQI_Bdpd>Hd(^ss*gz9RO2{R-I!OiZgHA*i_@%IoT_eInr7YN zRdtheh}W!Jd~Cnq;R7tT-S0%`fBA`y*9sNywMw&cxo*+lvF>t)bT*|fU%pgYY+HpP zq@osUbi8CuFK)@4Ua(|OFIY0D7d)+>JyZ*m_dipmHb_ueo6(qlawNOHJv(9 zvu=t1m7}VbZ_{+ZL~XxJ)b`6nZNE&^_RBjqITCL$tqrOfA5pMxc~a*T3(T) zvYh11Nm`cc@67#0Yx%S`hqr5M^GUZ>`5d7biT%4wa*5DN86&YjlU!rZ4PGN#DyVN& zfB6_?4AP`{xj2pRh#E3gSIi{UiNi)t)DYSi8A3y>SF0!WNf7hIPE!8^We%yDVqk{; z3=|bnth3ZIYz}E5d}T;PUDOTz547`gL@U=6l$PXTq1(K?tUOvVJ*xok*TudTuZS-# z%I+T&u?QK+=wB=3srQA!HXf{zLXR*8#3N?9aKku`8>vv~1& zvHI%^*5s8J6z0J~Ii=;%C60n*NgRg(QB_vbOA&WLX@dR&^NLoB;=C16tbfUN8MlrHKz{^5)v&;8Y0ZWt}S_);M;n6J5 z%cW(FXmMACPxmu~N~rABUdkw)n#=R@>H*4Ay0yfj?blvqdb_n3i?&y@f~w0IP%JC! zCBoaQy;x+oAg7jky}v$G&_5JSf8XT@w&HbKJzBtd{ck@EYCRNd@<+>oskM%Xj@3R! z4#ur{j2v#dzh2RD#9+;1Bb!{h`%2GmF$0)7Mz*!bG-7{3yCyMSwwF2|F|zSJ zLby;byEDIRcs0Kq=G%iazidJeF3FFTgM52%i9c4hfCp!OFC#F&ml2qMfcnM`P~X@A z>Ki*iePg}q%jFJG-?#zl8#h3G0QHTJT`!$GiYHpHu>{q*q;iq?xc@?gayWv|6jg6p8^w^sKpC=yRdS-^ zWfOa4$Ts%Mkd5q>F-=)D`KgY_0$4APHKc|~@M-|YW0azPVR(Yspo)5Qf^)o|;8-E= z0<c0Dhl1 zfY}oV@cYC8>YMoAIJ0WVf-S0co%>l7=m*ITxqPVFLS0Xa9v_9?#cg@IC=F*`#~9EX{iagNuVk z0}o($&J|C;qJL*l%9l#&8^RdCOz~Xeua04;kC#q~B-w3Lr$kbsx7>k-F<7!!+b4NM zh*=ur7|bA5Rbv=qK^6^Uu>5{Q8PZeAD&<&)_!`giFN!AbBe37EJZ%b5d4&b#QFyo( zqE;7_<>ao_@odlWf)XSil>#*=SPCp4savlaHIlDl|gYR}u-z??Nq`FZ4b)cBj6g3|d z`b9ZGVdJQ1P?Bo|MR^N0!QadQ7Pf&X=YjJ~8eg!E0j3xL7|Fh&Xp3QhBWdhG&+{L(4qLyUF z9gIhUq8%-E#%+vSL2=o!m>8!*@n^gQX1Khi7nJll2TFJkC|uFf&3G5%ouJq(ZHyma zyb+Yz#SKdBkqL^qxfT~F$#pVKX6j%X$<)r&#?;Ex1WN57FujCIi0#7k9Mc}A-Aucf zb~0^a+5#%J3nd?VPr9+QjJ=P+Ws8R37rM&Z77olZDE`Mb$#(fY;~(#XVHK zKAS-!k%s*(Hc)?1@Q8dw>3jqc{f{VJm&q>p6YW5>4LH$erf#O$Or1>aOhH6`x^7u; zpuAOaTJHa}aa!&dKE!EiC)!@b`Ax^m{k~w%m-~56PRsqeOUy6#<4$o}?ziQ_A1yFI zD~v+hM*Jw9jf*L5^c@4G9b_16qz0ukIK7b5O`Oihc})4qa0=R9;&cY5XLH&H9@_5W zbP1=Y%ldG-n$w+}J`M#)z7>r}8=W7N?&b70PSZCuw9TXX4iP+YOlMFUjv~h)rT)th z=+J_4Xd^lXzh+L40;T*ePJfC0F#&F&Mf4DS^Mhk3-OTAxkUz%k7Mz^^hVqf_f%DP! z81hl1XWN54W%__BoulG^Sd|`vgO$e@s?y6<>6xl@l}g@tRsIL4Hz3beuHyd`{-(@N zf_;?fw^YZEQRV-j%I_B(ULGLev8R4{(&M|=Frsn{P=mk!(7^v7S00}93h9nFkNEbR z;lAhmz6W(#3-1vHRq^sD0;WOql_tHZRJ|q?`2CgY1)&V9UTev)*XuYr!|T1Etg<*> z%Z<=~Ornp&(*gqx2WYTLt*}fr+e2kqRe`@YN+K8YYa=rK`7{O@WQM-B)MAp<`SrJa z9JyY41I!8Sx10Sq6>npeZ$}5>@!(SEPK|*U)o`L*NyUh~);O*PTmLht|Dc!#yT?7` zHXlF{@3TW&wDKhJ;*ch^aQx}@(wGp%LS4N&Z*_EG@#>8j0P=pX$HwD%Eb>XAI*Fur z!vepcSGlV65>oJbEv$Se?wzZAY3!Zr{npu=$NT-aH;?uU@B#T&dgsV`rfcMp24Wms zo>Sv}w9K)P=KQhaP<++=UP6o` zC)SZ1UF^BN32%P?`OkR1)ZsQI-p6pe6I!V+WXBI1`ho&IGY_4rjpY^QmFE{x@O3Zyapm6TgS#M4xp8qGNY*cJJ!wbw>~Ftras+G+i3ly| zZ&DF1=toVBZjhFKVhCuh`qKCUZE}6PSswYsFVt6*M-^7rm&PqBZfll0ix zZ&TQ>d`pS9{Zd&TJtxvOl>5_CN?M~p-Y3fP5No;&HSo4y37-#5Or7Wtll|P_ewYqW zZCP2XXuX}HwT!FlYvTU&XPn=S!8hgRU0;tYi)`xly~Og`SO`T1B>fOyo1PE7Hm};${kVoy&1N-r%p`XiS zW##2#x+`5;#7*sgu5}V#&+=>=BzY1lwl7;mLdJne3QIMj!f5Ova;x<1r0X_8cn{|W zowgbH(Kd>Ibl|NQv2MI(LBnMi z)|kb%py4}_x2A1lJk5PGQC@W6+7ALJ^_u-O}l98E_SwX33X>rWTQ=R;O zpS{-}hGEdo`#bOZ`~NsilUmuEd|?Y-B2_WHg-x)SQKm6jy9j2hVpG0zG| zi3(?5h6z(aE#C~v*g9ndFCG7hOF}2wpg|i9nY|S^++iqoSM^+Mfgol2w~-axv-XndZGILOG<4Z^>2k@nrmZ(!GF2Wai85`SN^2da zoHkVN4TMCs3jGJ2lO-%YOPR-C<_Vv*P#iOlt3^y(Wj;$=C<_Js`yV{m?Jq~SpAL$X&UjB#-CNt*h&eDMuFx{(hDuZ&+o7yZIzReiE0zX4>ktSp}0g{vyn+$t_sU zVGp!*TAzG*PZ+|voMj}xZFtB1S)h=aqgO;RV$Z)*IOm_>{*OD!fl#!dHRGnx&9hgtzB8dZG>|* z$HO7JAR)VgAos&O7H{pD|1szCxZ^}WPIrb-SzhNZ`kuZLK+3!eKVwcO2V8LbJ^XNe zz>UdXFmUKlFiLx0&@q@%5r=y`iwmh7H^4Ij=l)pgT!BeTNYd*jrRd|6xsmb76yy*V zsE{-XN&3VDVj-wcNaFNKy51O)xHNVK%M2NDEJ!CWT*s2le?EVcgqUlMT+pUTthWWlW1S^jKlQfT*4>srRxIJR>-*+GnWtkkhy}4Q zUyN8^mvTh?(mYMKVzZdu#rsGxeF5XsUK6gzEsVdwji1T*OWgSM-ieMCZv1VGzt)Yv zm+?2d@n2>9d)@d42jG9g`0nlcj`1II%SXy?g52BX$N0P5q-4d7vNa~q|-eOC5iXr{$>{qcL#eNg%+e{B)KZyB=dKTlN9!0&0ak2apEFY1w+dQFhF8@hCbPW^dn{VCv zVF}Zlls)%|rxpyL&r-%$xyjQyJsrc``1dmY7&pFs0RBq@@TniE>Soq2wEr6&*^I7a z^lnD)XY?Vr`15XYQ6CAce$yBg+b6b1tiL-QNbhB+TMYYAJ;g(O4i@8Aqtt)={XZMO zH@WF?p#Jzz_4j|O{|2%TE!yX*L*|#jEoJSbW|RF=|C1j6Psi~<_S3}d;@`C&E7b`< zs-Nre@Afl)W3ymx>^#op?qc8CSswJ#dy3I#@QwNS& z22SdeLVh&=ox}3qISJ={<`_ng$ozgT=N9v8s**ILheCdH?8KtKND+MujA}NUhvdJobFS6%0}LAXp?2g)d{KFB^An1-inY2 z+16~UcA8h(_CaZ~z=Yrwg=UstLV2~RHdt$%Ui~B&l8|=Nq^b>!ZZ#X`mTl{{o!TNZ zOqb8aWJ3Nep_fKqA}>Hm9p|r*W)plnHr@u}duQZ`LX5+5iH+vYuJ&dh$9Hs z1N}YXWLd;dUe9 zIIy(+y9g3K>_}DwgV2r)YjeW1TZ;&cd=2(Er~S^QrKP|-dL< znQX4wh@H-<{(M7RYR;d20$ZD3>GZm)k`$ly*pEC<3V8AjrBxfy5J0Nu0f5}6#0dee zrJAD^kzrku2vq5CKV?<}cCkoPwHD0>lDfUBSi{41=1EsK_^i)Y!6+akly zMN;^B^xCSDI)+w~nNvHq|E>>*4fmpi*83kU3qMjH zejHe#P3Yxt?6}`9;d@+*4f4Za{OuB$C<=|}aI^XK*p0r9N-xc`5m2k%sWHKNvCsJ7 zCIDE59oLV5oqu*EQv_710zj}lR%pN6vLj$K2eQIR6~NvAEs2Ya6Q8VN${{Q3FK6b%5|Q zYB=p^Kd_Y&knozKs$y+bGUgx5PFJ#6+8~6kC3~7~26!#McsF)7GMNsTHlLt%C4I%(O9>WU7FVTU_U3 z@joCL@r8rtt9HqV(*|J8`X8?k?-3_AHrE+Qz&W!a0J}Pkd5;^>)1~4bkHBn?YX`eX zxsTZfm@&=6>veqT0JXrFbx!h~7LBBlJ1YM|xX6|!@AAJu_9)d#=Iea01w5eHfuR8a zjdQg?a}W5=9Pq6kc)hAZz3Qwb;4H#Gc2@^n&<6mRxd&*?z)iQRtbh#$@O&yKOWjSd z>x4$IPcpT_IH?h!@5Yoyq)II+f;z^A(oHI$yno*z?;*H%)mdEt@)Q6}PC6mj^*o+E zz(7*=QC3r40}j1(>JHnKeTGy3ckGkuQO|%=oD#Sqs0lEG0kjM>`tJa)%)=@dnhDb6 ze21KXM>^!^05ES+aosAymhMuW)_Jaf#pKtFq5BE4W6Hj=REIHipE0FFI*B{YV-la@ z)Kr`<;B1lVTOf^e$boQwp+|+bp#Fs&gkgWCZxbYdUP*CCdEkZqxd9EjTc`SlSH*Xz zwoY}iM|Gh?{)IWhspW^@HtD6PBO$U$g4 zYE>8oaQu}`t*}km1sDSLo}s%GQc{U4?H`yg|R+xBP|K8n5YfYUSYS$Kxw}Z7qtyo2#s& z6#+?ErPX<9+Bxco>@?jR#iPE>!E-bbF%N5};K`~+3m+Nemk_1!(=Mx&4UXPjfq!3C z)Yk?F0p@d1g=~(x?X56LjGFt?uIM>|qh|m1ovfy3khMsiBjfzr1GNjxa;a20Nn4TX zrQ4tJaMaAYUqAN^>RwTOwn(0&(P*L_&5Mr&&uu<=`Fi8*s>ELhMa{WfA@}x{->%)Z zX7`xKE8e;MSlfo*e0}9|UvBjSNz-=d{&{(D>U(c$k6gSl&up&N`X;0Z`ChKs^-kcf zQ;(T*EInN~boF+9md-H5*RuLy{=7E_M>k(iKYUVg_`>+=q)18E7h(BZVzMsWz1!>Y zyVIsw%gV~ryq291+Hv0k{Y6OqYw+;k;H11SqXo$7jGsdssnh?J;*NpOuiMeKIyWOr!PY-FdKqDh3 z&Gb?v#>7P5KX0B!J$UhMYh@t!sAB98KhxMazv{7pByE{?^I|Sb?p+ysOI-0ToMs^_iV#@P>~K`!M;PRJLWGUf&K zIytu?X|WG%<(XL9m%AiOcN!w^D^EDoIB|vkk=({Z^X-QdN)Ly0tOyDIN*S|HxnYew zX_8v!tzVN{{Y|3wXoBWqNG)@BXSKx#w_U|Ts&3F~txsuV_Rp1>+Dfy%(rl6HE>&ih`m8ort-e%Q(nxn* zLp~V)tJjzcueb`YP;1lpUz;aa+a_&m8DEPFxiMu=o-Ol|_dJF7Eeh{smvc8X_>|(_ z4tHs~stpz?ZlTujRYe$&UYXh|JgF96s@#AF7?V%wqSf*@dj{<@`|Z~cD(D&XW{>I% zyXwoHLAV9M&Cs{}y-0yhg{%7o+>R8f-gKzW>S-dT8=%H=)u!%YrpVyD$l%VdVVkY**&cHDK0Cb6VGqm!|>RNhr>--5x9{(B8gbI z56u*t{A)9?(o!0LEY^&hFyNHY6|SyjN@E!&&{P1ZVUBL(VaRHYxM?H&GF$+5OQ-D7 zlV)y-@m^x@qnXu~sv;j|KtKrIpkmJ0xoI;aQpRD&mi2K;c|lewsX3GYa4nyg+nze z*Q!VgKo=$)5?aXmH9*ApBciAW`z-s8=ft@!=d5R zWw`$iBal1XUT4vw(tk(2xETe$-qqEc*I5>Ru0H&P9goTp=srA}HXF`LBGZc7YVVIS zR!>(vFn?ako1d>(_i}i|n@7wSKUumdNkY<z_%~boHi=e<8%{&fc8oJd>n3*_(Rz3n6J@D)*xI=Qmxgt1SYxiCce-FBIbO5!Fz zy5xms%cVa@>p7Ijb^hbE2PVjEuQ);OpWeMkr*Vw(RkNZe=YH5!l#rokMb}(=hf02b zhL=nz`n~+ccj!8Mi{5zX6#}m3Bv#~Yc{?$4VT3a70cX*{d%w2mA95D`YuymJaer^o zhf#EEZ_&>#Ki|~VTeR=QJ5-xpihh0ZTHWs1&Q{-Y_-k8tu2a8>>lThs>UxWQZSQG| zwzufl9$hOpzSdjxuPFLJZ%_WR;;p8R@flXJ)lH6{ZCT5mnXlPg_Jfb~-QLp!q}M9t z#l32Yl^@e6zvJ^2=J+VzVAjpCp-b-8wayNT;oqm6D?O0B|7(l+p=dL! z(3!%b51T9r8FpSHjx*k>C)LSRq0b#NZCSVV_IPvI5I@`DXbE2tE-}PhSKb+Y`rd1H z*#0Xh&pV3jg5%arc`dA>Y*ejRdMv67lYXpQHg?CH>~BlkCN&}i_iT1s1(PwZ%`(}&z*I(eT_ z(~e9~gq6-w)@&+nG%T zZW?sxqA$D`sVqh&Xo;RUo71nKR4vI6YDRfGYGW2u-4ks^Q1ITcm|CAThMtpgN_q!O zhq7kgx@y~F$e(G=8hQU`s@#sjdcI#sL>K+@r}h5LP%H}KkIm_^Q+72i;v9Cyu(ry} znqS2$x5Zj;V6$98L|t@9ARY>RN6$DQGkR$xG1Wma>Up4bUSrD2V=BBe>_u#$x*iHnGPp4N^cMZk6Hbv z2!d_!%asa2bb*=$JEhlYS+GGmS;vBBq}QkP2K6kMB26;0AaYp5f|sP`yxw3D3u>eZ z*4|((3)V>|)%D8SSr7#`_R2bXgKaE`(>i*&oh*ogyI2r8^st~wI)U>RnprJPZ4gvr z9J)MfDC;q0tCa;|2@a7PoZiiXwxPF24r8*x=>`_G4cl18f?xV~*?WW5c|!NYR(tL5 zAPXKS3p>n$zj47GEZ7klezaFst{r9Fq4^pLi?QzD=4CfLp=|Hs=6RVg783O~naNi> zYV#ym{ZK)0kuJoG|qhL&jIsYI*wNwexQS;7n$4;;2oz3{)v@@+~XL(uBbS_Wg zllkOz-9598UK3_5`?{Po6^BpZZQ>_$$rA!MhVk|0!<3!#0t|EalYXv2*uCniB?NyByB zwbw$Zr1IyAmggX(nQ=H=_4gZIZ^_y@rZlDFnIQo_x7tsV&=d$gUIn2aiX4>(BT~0< zokKtDjQX@QJLBUm54~?IT+peo7A^=h*tLbj{f<6UZ;2b~_fdAey)e}8(|Pq>aYOt* zpI7hL8tV7j;rCk=*7Ha1JAZ6v+$Y25D%UoqU0Yp#BxvR=<=RWl<1g_+vv=}iFL!DJ%i=J@ zeRJF86=#b!ayiM`*;SuN??2M^vTkZcd?*0w&j$t$l9(zY-mmjle9(Q-e(gP-Mz*$f`@DCCN|FPQ3~lx@ z1^s2u-_-ZShu@LjD%1Ku8T03LPoMoLDg4ve_rB_0lX^D!&9yUqbCXa5=@$NBans&u z@sG^Yhfu+<{gV0KH!t4#!84oMr(gTZ{Vf-JCd`>J==+NoPW&_CjqVNMub#W^gZC$W z+LinAKjT*2c<9`Py5Dww^KJg5pT{hG@a>ZD7tj4rbH^(+y9NjD`XIR4FwIes;{W=& zHMd`Ld(d{7rd4jLxGsPF!<*)O@P6|vA1~SY%|*$UUGuZ+B8I+Ips!QSh~K&^c6fA! zZp`*ahkf~j?$)QPKaAKb$(pn)s`w^ebz4gB7Bta5Hs}ZS{f*rA-CNAlrOhQNmiDLo zgwWFVrv%>qxnd{C#U-GoN zR!;dXZI|zO-eH!nW?cW)*B9!Zdm?=8k?(Vl&)M{F z)w!O#o_iwVF9%lr9lCw*ud5nTWj6iFQ?xdK6R5UWZp^B_EB>lP0vVA zNqJ@8L)&zwj2S5@u^V9Z?mg8$0?@b;rI1<&bU_nPK6 zbj;irmc2jN&-l#aJx`7`)Hj-v{I*Vi;OJ;&WQNsH9X_{kg4*#yN_mDU$f6#R7TfYs z?U1OkH@{GD_QI(4x{^xU6Q+hSgSI{~>;BO<&AcULO7rfA_b>1|mf&RoUY+t-)qAIQ zfAZ_-39~l`#oc}}X8!JsKOY&cx^L`+r`G;>hoF(dO z$Fn!@wq!k!`^>R13+f$}BUjvTJn8li_q_GWQ-z`9SAIHg!!PT;jclzBx@I2k75|3! z4>sHnCMv99t=(bEgC$d|jVTo^+tT>=)obcjD}`67ScptirV$W4ydjqBym>KODAual zj8nHsr?!`FD=G51Q-KA|sv@{D6-mh*Mq3rq9!M`vyLAC8bpd$C*ke{Ds$0pI0ZV4h zSrN;1HS{_QFSzzer@Th*jwZMF1h2FB+?nSyk$j_kCR%A7w#b4dV4rnZB`gI_eN`r2 zs%!8LylO*TSuDMh?Na^Vz}lZQ8>^Y{e1WqD{-3}yTx1yD2_4LmAHxDAtzGi}0dSAE zXK>)y(Sr5ODZiFa#!_Zui}LOKs-i_z#YMJ~JfBiaRf(pm#9kG0cs`tg=q>2UT6$q6 zybMg##=zBu+(VAQVX7?RL>C;C!oQY8EZ5A%Qt6~!c%^2JW(~n>^HQJEy1BD2)&`IU zB5vpXfFj9#hSm^K;mGiwEct>;8`fASHyWoxAy`X2X`Eb*Xv?;@{Ls>>^{5ZlyWx9P z7byRT7G&{~ZNC98a#Qy6i?D31HjOyHrloeFnNqyioCFQGwpsg)0%B%=ZcvKS-NvQS( zb#o=$17E#ZR<(NO3-UvQCBnBg`Rj7yjM{~{#cSZB>B`C|%vzDF&46#_RZ{2U`yHGs ze1;gyzQ%NZofuo3yJBrYR&nggRhe+yT$V}SrWUytG$X4xn~E~7Dxgn++^exhJ3qe= zIh5osb3Kdyv`33?I`AD)Nq+8{^*MQ2#hGjJH|Cl%jM~|`>v9VWMcB4dOCN7)*9q;@ z@~{co7<`7baz$LKE@7N*Tw?0DgfUqwH)xAi<*zKsEnZc)GQVh5N$$!LEoF(qDHr2- z}}eZDe>j@eXWY}sKFx@Tjqc<6^u)*3a{FrMCA=V?Yb1Nq?Rsa ztJ1hYpQyYy@?BlZ+hAzlS4#gpB~f-z=};OHTO3xygqFq%{L{*_&F`2j-t+Er?~b}>Py0P9ci5$W#aw{rLvD~?aSXc6mHzInMEE=Uoyopz!h>@7s+jwJr3t znxz$d!w1WZJO({Io(5Y6Md>%-X6g1{t|5C%4E)vZkd5j1oU5IzTsKTnRwVgiUhRy{ zpUQ%Wtu(=JKBQCh{^f(S&cxOGA z>5euHdc8xXpUI7(w$L}ASz1oOu$Gy4IXXvX*6~e}8^d4g7<8W7EvpUMG0{u^>`Qm^ z8vy)6Cw#XYMWaS8;~(M&%k-m0E4Wz&DQ$Y?*!UP}yw2v|5>j1;LYO|56ur_SPq(X4 z?y~RwTORFr$6GSFKrfR@)Mqrcfl`~qpfhi6QEUz^PmFhGlMSd zTuyTJzT@njP;iXG(rPc&tCbh)Z?0Y}e?qZRzr^oCTeaaI(C-=PE3&<^x2p}3O0A|g z{pHz+=xfU4^6Q3NithSAmu=Q-74p$p<8G3}5eRy^b#n_e-gc@mWLKB+CFT9yg&_@x zK1o>g;NNo{%2kINy|Wv0yT+|L)I$NzhNK;m(`?Cu^nL^K7%ZF4>m5ryr1uKT9cO3! z*GoG$UA+B{v((QwYtFF>$)1&sly4qfZfOj9rudoz-Ww)oo2Nu7;?;-&u^)Ck+#>@|3|zFw*y7vH&5D{J%hZZt+Hu|+qHUOHXk`%n5Jgi8f2`ID^JRic9aT|OF(l=y zTgpoI4{2DDUuKn@9%|C)HkMUNo*q`JY1~*=EqR{sRO!f7Vslhv0zA{aNdk*Y!~h|i zPREZ--pu$!Yw(L<-)y8n4tp_jH-nPwdj1P+1aOcX9giR_3UneS^O2zBe!^+tZx22Q zcMJHG2k{lr9QP^s%J|Ul2?BfeQ>1Px8ks==rRj38b+sD8k>cSrZKGpw4@bTxY4-F*h( zSgZ?!KN|dxz`uscQ+@Kmr*eM--?iMW;8Q=1Kp~Vaw)Z*kX(ibJKK7+`@(+TKVz?#X z$1y(T|0DQ1#B0E(y+hlWtVn0&9&jz3J`P?m^QYNoN|GU=zQSjp-PY0Dl z`C~bpdk=idmw03^e7WFX1fS}^06**_EAVl_RKv(qkiN0 zkk^AxdVUx`I!~0p8GJJT=kXKuLo4DXO#Yyo{8lFaxtn|glmFRG{!J!N`}(=&e}c)6 z1>dzk-!u8^-Q?A1Bz^R93;1Gt70^#KA~ZeIK7phsvAt>FQ+sRN@?Xs4A9a&o4?c?K zUI8B}=kuZbYrrSH9|B+0C-I+P@+ZNE$vE}-BKXvvi{K;Z&HBX0Z(#{Ziee;4Dw z?Z)57_@BD*+Zq3RH~vY+_r;v@$X{%yWRLZ82`_1{5_2StQ)@-e7deQflu?LI8MJ~^5@;; zeK2^(Lr#hdx;RhLyp#++PT>;4hiN#+*KF`0H5Y11Nh>+O17~Qd@cA(z>j3|#J?B((TM*EeCPED`RoH9f81{HUCV7}{8!xg zCmEmiZ*!IZmGMuz@q^JRl>e`8{8+{h^68sTI^)wKifjH$82>sqehK3*aN}=d{M+65 zyBXi=#($0Rce?S9f}eo;?*Ts%RJ2<;l#e9tbMVon&VC%h_&>VwQyAYLI(L0{B$_U%+>5*G%xKyg)p(P(O?L-^t{S z;JeB{!1#;Z_|Jk*_OS~5B$s?X1E1{V3GiL}{U`9pg8vHm&iifXFcLRo)UH$DQ@U86 znc!mxaRIo`M{@)|8e|5a=E1?>)BTGmzYKibLU5y8`M77MV<~7B>=VyUKW#*uN78lO z`nCT@*yCJ3(&ptw{GI_epy`!y$9v>cX!q1i?651K3-T;axP=~M#|dECo}|aQ;X(@# zKmu5}M|sbP;RDuYoEvI5gBTiEUO>qfH6`pn!%OolUNL=u9X&NyfYkO_eSkWy%Dz1( z(*@H}%)tr0B<}muTda%9g_;S?h!^zQhviY9@t)Av#d2LbbzHogdIf;1csE>WR=S&N znXE@Z_IQtg?C~A}*%LehvL|>1WKVEwu26>rx8@4*n&d)u~Yl#!)?>~zU>$KV1k>r88^O9K39NW6y;D8Ckh=?x0uv_KWsMv zm%j6~bGOH8do=0^9*uf}N28wL(WobQH0lW+je3Gdqn_Z=sFOXaIoYF8CwpvL^6xTK zx4qvy8ep<#yG-_Mm&u;(GTF0TCVRHaWI-wJ<~mW(Nl3ZG?;h!%tYV^@<^*G& z=t*-|+WTEJTvwa!Tev9E-?Tl;371weKPR?g|C=o_V^psn%3^3PO}^rYE7_Q5CkE z=2BjP1^LT!OY#eIq2sLLl5s`4{1l-ChS}k%443M=z(~02u5Z@4E0^&ZU!iU;JA1M| zVqhY_zkF913%)Kc`;gAdEm>Qw=lJRQ#ktwovUNPa>F1j9H)O3`HU7rz z+l}J~n6kzdUVVr$=$HY=nDB_yXOIn?so2Eyr31@&9AZK#!Wa|7{2*i1BSm{0Kn#F` zi48c;u3jB+my6f;tB&ztT^qV>oU^%XwWTtajXqoKi8qgs&Iv|Hb50z2b&<` zd9)2&jsAmeU|G*&ja7bNLt9Rp{SKUK|FJf(tZ0Wc)cPay^uOTrS)LJ2V3#cclc@h0 z40M>6a$ligX?@pd7}L{2gh%;tB8a%BGsY!&K1T#j_jry74c@n2<3xmKkLQTs;BM!L z(BK}=N$IOVVcCY&w^v_%7H&MZMuZdhSPB+z1WR^Vy%7rTz3uA-&T=hYSitGe85b|A zTLe1fO}C!fjpQv#FkrvxTHKzkDgXm7#*?M)b;~H*tXW zCiZKukbh#o_6mAP?AKlgJwJDO4mo%2?N;u zgaPb+g4iw2<_mTFK2wX>Cr&=gN9+# z-Ij@%M%|4kSyWNK1W`x*5=15SOAxixFF{mOzXVZF?gWM zER$z?=D4~2%RdLX*awAtuT;-qv_J57$W4LVkF4A)<+luSpD;Pr554U{o#@z(euT?O zIQb!t;<%}$pzwc~dIu={AEsJBuZ0T;`85)q4GMpaxO7nHYz}Q!1iy$ONuY3P7!nQ& z|B^Vu!KQpa28G|q)b~K)ZxTmPSnyMs^Ad|c3rhJs21@zt038jvO)P$gkUo{#Lg_by z!cQe`7AWc$rw2t}#Ek=`eC41hZ_Y1h8h&%towpwp?T%|?d^_kM zl(P*q4u2J(RPF{)8R%k`K8>a8K`DI#D5aB6Hd}%07=Mhyf3c|;UYH?mIDhK}=m6a+9 zS_%q36&2wpVhpPCKyj|z1d4Xc^^B%4s$(>UQ7xkyM%9ce7$s#;K9^7_qCJeBVYG|U zPDVQzZDZ8IXagwpBDaI$PhN+A(5I>z6!leEK`Ffy6o2v}{Db|e@)+O3_=_kJd^6*l z7+)_?RSM(l7(WIS{ixD1zJ~GDpqO@43dW~G@h86oVVJzC2bAh_29)?+pfE*MC*yZ8 zej6wbm4os3Gkz^7^@|mh`eP9&{Hj$ZP|8=&XbPh`Mq?P&GOA%z&8PyD`hjEg5*oqx z3!`Tk?P9c((GEu275q%27Sq7>=fyM1CPS;M7 zr*ExDzLdp_Slq(mi&)&m;(8X>v3LxNYgk;(;v9=#g7H%RXF#dEE*9@#@irExd6m)| zS=`Rzbu3=Z;#L+fV(~l{U&P{O7T2?Q3X8|ExR%A$EUsYj22jkwDk=|Y*h7>522Dlf zU{Y04Igpi`KyeM_=Vv8o4C2tgN(1T#3K?FGD2+!D-u{Tvyi9t*AFl_Z4)BTE8MQKM zVN}nkmQfI1K8hwOoG2cIYeaGJ{^!puF5Va3&f?ThbY!4YNM5|}Yh`iqKJOnaF5cHY z$l~IC9L=9}zIfmEE9_AP1vsD-I@aPxak_5M0ry5et|!IdplVRMg~jKvcms=ngKj0R9T==+%w2-{h_o~3uNcnQuQ;cw*}EWZzM z4#h>>-d&Wgv~r7B`bA1dT*L`Zg8oT|;!%%)Yka?3{3P;oO^;ItdJcG5U|2l+Q@#5Npi`xjx_TTUs=Gg1A0bhiQ z0t3DR6$J)-0VfJv;q{^@a)p-7D(smaDEtcsNJs`}qUCsbjhpmtY2} zOaG1@NV3mrhS<4RSXdIPeD&oIQ4%fs9cxgW>&spi@%&o1kEF|+Y1h}n1Iak~0$Qx6 zVcd7!O>BhAs{~IA&>qD44&tlk>NFbB0NfT5#S;1tP|sP5T}k7#pM>DP#30WLgw-g5 z-(9vWciFhYRm;|54XXbONv1sJJt2;s0Y@OlI9`Es%%{Q4aE14%+`uorT|EV^Am;jR z{0d_IU$)ov`~OK`d6 zugAFT3s}fn3JBlM&@<6MN8TtQMN1jr5aY;`p2ztg@iQ|^a!X4nBpjKU3#KhvAjWzr z-E+}F`BAaeF~WKvo?orR7mv(Lg4Pyelz+NmfuT1}&yRG_a{(Q+j)7a00gueg9NL3t z(iT;u4gwij#RSve({YgeuZEI9H@XQ%R{i{)n*nb!zrkvE2a{v&RmCTC{m z=4CD~&MIULcGsUZTFB@O%g@g8V^MnM$`ivx$*hFFQ}ApQ%g1XGAPyBy&uDdslU&_c zeD{SLO1k|w<3|Unn10^)(K$j+2>crdVbRYwn`(YBRen+uYr4mKCUP{@7}al*HN8Pu zo}uhaHBuxBA)}&E@{L!#1Hkr*TLlDr!@~Kdn(s4eelu9F<4VH#lZErP4l>n93|ptm zObBiDt&vbcBMe)nD=HjohncoYOD*ab-kcWy+s@p-x2O9lYE(B|@#t<~#G7;R7@XC#To+@XcCYI|obU<@i01-wFKs z^g*`A2E9Sg5~iBZ`2s5(B~#uY194$oJ3zsvt&@dHvUB_Q+|7oCh6VF8YJSY9xg779 zQ+YX{;ym)6Q~6^+#YqG*wqDQYKr7qa8`M24!%B!-c)#&Nnxsdrz9j}tB+}Giplo2!nAd@ zV(VNPUkgD(-B&{0PohX;s{FBJurm+A;GjpDppRP(OANOeGMBb+X=tC9mi_b`H)Yzq zc{k3xPHW_^KKyk~Ys^}?a#e}wgpEDQwETUEcGR*-+M8D1v2xY=l>*0)>pczm(&387 zD%0}UkADk~^#tb8--XAjna1O>wyH%u*6jXxtRr3USmOme)*%@Fp}#Ub)>^CYA7F(s zJ^~KxA7F*`VgCzYg_w1<^3cP}1+czF$1>r}PAmfr~xm_Th+$$)xn@L3Oh9w0wz zs{jF1f-ta#s(pYP;}NE_oDhDS4TSmvxZCE)@XmVw1K8cNEc~<+tka6!6|q$%4|H3M zJsbf8%46nYH^yQomLdKGX6R|2r0hN@yteiiW6JU|Tj009$-Nkuxrz--u>bIp|? zEdRj#h57v_Fn?td?j7utXZ3DKR&VAOgdRTaVr;k`Umj6S$i>)j6JW=ds=M-}08rjo z&2F=Zg{&_fcND9&4kTHEmy&+u1bbLQB^W+A?mY+Q;>ZEP#DNpp6mYy z0PBAcfK{)Rml1LB;_5Ab3@`Wo2$ED=Y#!%ozP0eTw%(Ac;43Ru8W zjDjMoPbo|~rT<_A>Q{4C*s*#-d;hGA-_^G}{A9gq+?Wh9SEdZm}II1?(61w!dJfFKnbZG`QT?+vo zb()~1DS$0~32)lrGiATjipv>5!*%S6(+{Qn>nwt&KiwVPUPh4do!#L;5_3)?$?BP0 zY-sE9f0B7g>i(F!{+PS|gL7Arj?C(M4p7leo1b7dR-VdVF|%ylzfvk^a_n=1RgJ6> zKvbhGey8!6!(*u8b)*wRH8N(KZ?ggDsgj4Z(FZFm4{2kYWsze>E6Xgi6?MLbL_-lk zRudzOMl0{*0Hd0frk2zoqxr}qA*$M!$4wncxTzx`0$oA`{ zfiLT7<7cQl^uCf68S~S9AGn)g7*uoytA_6w75S9HWIPO{)g6&#+AY($mD``H4jO&g zcT@VqQC^l!`P(?{*HJu1>0@2v)!8ANe8U~6L2d0#irudSH{Vb{yfyzW`|9Dr%VzM| zUzWYe#m?ds2ggSmX022SNUL$tQA5+VZ?cC(`GowoLehA7F;}p9TV_f0N<;PXphubw zZ7&smg1@FR0Z+9uy*15rBp}InQrmJlmizJgLDsl?|FLFJTG9ikb%NZ|_0m1BB+S0e zm>C#U-JGEH*XIO2RdMhM5m)rX#}y7B33R|i;V;wb%rl?mqW8_4FW+6*7T3BvTHPd- z%;)yirX_uhmi+Hwc-k*o)sZ2~+D!Kc>PJ?*b9Th8&%aB2^@Qra%>0<2&yRa^TmFW{ zVUIqTY5wOUzdicquB@Max#`KLKmPusy11&XZ|1Cf<=j(uf3WiVPbQ3Zq*cUgKK)0m zEWXwNmm*qtIaeCdqB*Gb71qEur~mnsz*iv6QJd$#O~K<#=@A9G)9Ri-37dq{8j3Eu z+(M=hel>4BMxRw5geO+1|bacLK)u;RH}Pw~y^-Ssa^ zc$`5i#Z3k3m|qKFa^7B1hyo8vPugC)&lvnw5&hK%(U%l0D4=43YvRkEo zQ|x+gzeU#azbWRb4e7GLz=~?~^<6`rJo5BWpW!cjkUMcI!HC$iI?r$Vz;Lp-?%hrI zwOmYS+cj?QJNBT(KF_@J(YHT+>YwoRp@J96x81bgJM!TSz|~T<2$KM{`U8{T|1nGg z>bnhE!MFG-*a1^&OF0gx0geml*u(gLZKr+si7L3HaxQ(O!U{5bq@s30Ik$AALY-XB zlWRV*kZn^T`8Rw zpAb}M-`3fA?)Z}9pS6A6d2mU4XY=9H(*q-7h9oDyn*3nW3kefnnOm;l{-^fVC!bky zZ+#j(6-ONkZj>?nK%{=?viB2?1}eB^hM^NiB8hA9pU%nmD$~>j%Tx9gbXpaDUYd9v zw$``B_{V$`lw0Lrt=C%LRnGj;KUCdh;P%Rz_15NrtdQYI&de{acJ1ggo%r&T= z=@G5|6Pe_T(F*fKgY`9EuZwfkT3wx%0LL{AzRl)B&7>_Ko9_yqKOr<~m4DrYqGO!$ zm{xgAuRLZ^9$%z2avp$_*O3;l+m{-%%!ygl z)+h;7OLeof=T=rbEXo*7Tai&O&(fXHO|_WI8fnw{g5?bdt&i&?CkK{)UA}Hi9ya5D z9}o#C>(sUNwSQ5RB_rSAlJ+1q4}Bo)9lu4JCvEl@y6#>rwvTTLEeP4!bv!|5cquo} zt8kXYyGXykX=jt)b8*I@%WmBqxBn&O(ptLY(2=D@e}N8`&FsZI*v9RUL{89o>CL{u zh7fatm+q(`SmI)9v&q&n)XKe_vRLkwG~0W4*drmsSJvwzgQJ(V+KaFq{z1FH*Kl4F z3e-6Ik&q}|X^gq;h6;PVHnPQEB1I0qfxE2V0&oCr+}#u=TNbnInl$a)+S)){v#&uH zW1FmqnM-F32l_(|x7>I8yUG*8^MXmN2x8rvyS!|RH@7No(60xS0SZ0h2=Gb>eqnHA zSBweD>qf>q%3@?Y=!_m1e%TBd{yWPzCpOv=?7W_J`|V5ph9_j3lduE*;W0uTEOLM| zSmZL@tlDiF%?-c>7`{6#WPekvA;DbH>6JZ*8>ifF?kX=EBpVmDU%O1LmeL-I*gqb+ zomN{Iaxe6+h5i?n-*Koz_VG>wlrJ5!>{j`;5Lg6(mmp9A0ksW*S_3%kS|sJE(Loaw z&&An7ah61d)3rXdl`4N^X*n(xA#pr<+C;I35s+v-Y9=};vt<{65{u9jXHMNzF7w2 zbmf-OvL;8q%{sL5T)M&z@Cd7-Yi#Zqr;a7zvh|~|jeiPq%r*No(eD1`4NVR?7b+{@ z^+WE6m}Ah!bToDwS{;VwThPEBv@{a>X$eN#$L^;F;KwmZi(`g$kTTOwhP zW+j*E_s}Sdk*qG=-pFyEogF4$ID_7_W`C%>~O9zd8JcLFWIXR#RV8_5#LZ zKw6aFu-I7=-8gG@YZncZF743TDD91rdu0dom0t1+GkW!$m9N-ZvYfWSjuA=A5{*56 zoAhOA>!M_LHTpDFR}R|oq&D(Sb$Z4li$CAWO`Y0JCIAwEgD1w&k0|Vs4#R!6CEvN0`)Jh-;xq zZ5#~iHVC|-|0JP;hEppIryL9?d4ghJoH0c9(auQ!@`6JSIn1tzMqQhst1#qi?WLEL zrRpWO%CA!(s}W?2!7xg*U)kSt^_5+pBNTYcN->>xU1q+3(1)uI0uEme)NRQft32+zqTEy|4k`rTr z6ugVcQypC8p8%iynHSQ>AkTle>C`1-Vyw0tw1c7-riHW-T1kd zI~RP`MZ8}G-!8~31)u7{&o!VtAI~c};M1f+d5iVroh%TiJ!>BYMIV1dx|p6ZZFc&6 z{tI0Cf^0ME=z^{ZdZa3@89Nm<0doSHo zl3%c9JgZKx!p7yGCFIiOu1RsTA|Z7^U1kc(WSMx@rl3W4eY&3FrqE15qplJz%42MI zoo2cz)m6+re;11qKjRgw3f9(p{D;5Sb!Kct2w3bGk$n&1)3FFYPv7xA!lwc!Wq|Yw zmg5Gbd&>V`EIkM`a1h?SxgEhQKG1ivmQQH(UcM~W)A{{tnvI`|F`e*p@SRMK+QA>< z_pip@?`aE=@GO&~_V9-XxgAI-AjcdW)Gq!IDsC1i8aQMEi__eQc`5E3%E7!AcaqWf zL2*wO*93~WJg$+^hgdp&4@K$Mvv?w?KjKth%7?xurFai2k9jffG$@tZ21@BwpmhEc zP^zbJ)#SoS?^I8^PLRA66j{kFjOrQHG77?{mq193mRtj>LYvflFLK-oq^r=tA{Kv_ z;%JcQ_XlzQ8x_%>=vjxpSrP5;pDZrgYY2;j@JAW`lf03|>3WPm=Rwy}*Z3T_`1fw{ zVQ%N|bxVKTE&i5U98S!FS1WDY<}%TUeD|qQwL^-(UUK+o!Fe72@A(nyQYIv5=@9*h-4v9Wla!K^ zvuydYgxrMO?9}Cn3A*@{q}=4J#O(N-oSf`sf-mv^sULCYNEiSPEwgViPWMgXkJ5jy zA8{$h3LTUmh7osZw19hpp=Bk$cwEho*ed43POzggj3s8#hhEK(*v?L-dr&$Y)Hs)e z>gsx2&5yW;(Q^wWcU&=C+D%Ec!J{iduHLzR={?kd+1V>4^{EDfm>hBia6$P zPCtg@PJ$vI=Q9iCPe0Ntb(c4O|L)Pphn4(@=>tUG8^`2WzM)G&QLu)ddz-IV1;Er1w2X>pcH$y_Q;hcBJ#181Wo+ z-*aMI&WYjA`3`Sng>tZ@D3o&oET`PoQk^sWwqD1d^Q!Zl6!DyfzUTD%L%*$0;m@gp zK<#4utHy?*KNnx1cFPSc<8PSd%tQob!q5V*S2G&%EQm^?*o1YA7pCbb8SZRNimQy!4g7}(%wd~!gu_dF z<)7%so#FcWVbZ_j%H8M8K7QP@aczPH{ab$A^nLsPq#rkZ)AWZQH~C3*^m_R6K9Ya< zasT1RE&0Qb8_tHcN{<~1+(f)eZaZefI@A+cjka^^{P{PRiR#W))H_Q;STxt>VOOS zfI^F^r$c^Tt-5GcSyL;dliQ7{oGf*B%ajURN~1A#pJZx1B%_hwW{+S zatM6eAwOqUbz4+ix9YnN`PnYjX`Sc#S4@7*7`oq>vcF{tN_QAT_Zd?jTd8ZGvPfn&6O5*=?J=tAB3a>jS!V zs&9Bze1~f5R2O?x7dqr$m;+8*RMZNTWk0x~FLh zx~vTXe4t$jAgLt`GF{S$6B7MV8@e^64qf0;8$a-U_kEA*G++9;9@2o*7(&~eUk23t z@eNA&XZ8Mne1r0zn!AFyL-LWnR{92I3%)_Q_Y}=wKIARiX<;t6LApZi!^9q8&6jq| z93cg!NBJn{TUVZ{;C*W8Ieu`3zD}!bt%y`_@hyutq}2L0-w)4P!$a!W!CuSLI%aEz zH$9|HYOd&#a5cD3#*)I7eQ0;_KD1uE4{e$>@a(_iLwnGg#LXGW3GT4)wtZ$=ptWXB zw_U;oy|Bf+v|>p8Ow+SowdxsjLe$UKKd=7tc73o)He1q>My>__7yVIV{vChRvp@Yh zdHK_aR{lKkeDa%1bG%~H8>X+HGRUA@=<1RBTr?Kw&?rsNO%F>sJwg=YjE_&$MQQov z7CikS^+Snfwy-=yYel-~XS@|sFDrtyl4FgWo2nkJrd1hYamtz_O6f9yk= zSk5KEhZJNAoJZkGIt{L*Ni9~{J4#zrY@)11*%aSmF|{j=@$rdavbW6sr`mN3cEE3R zE_l->Br1d7YBO2N6S8ym-mxbC&XLdNT)QSdXVBzFLZ=lyx`6j6J<@jY#F^>7+W#BA zqiUJpJ1R4%`}>aWS|R$5*1~r*Z_Tb*JHnH-US(WzV$9qL@O1KlH=jZ}L@~sqmrLUL z$q0U34RAoTz<0EZ<_bEpwD7J69V}bG`)|=CErVa7VN9^J*R^m*TKo4AE+ z4DMSHga6uG@<@t%mkj5sB*-oCAGx#d_Qx!(` zR^gIXYb58*c)K=oq`VRt+y80!|JZvUxTvc1fBeoLW(F9T0Z|6|<3-Sh0v!+#0&Rvt zMa3G;T1(AA!LU#f(9q1CVfZU*qnT0Lwu4z~yS0md)+pPW5mHjB$+aS_b|^C~bE&M{ zw$0!Bx%bX6;J^BOKKuE;KEGG@#pT>{&U2pg|2gO0d7k&tHxc8-I<(zFJ=72Xwpfol>rJ-$%_&9s(np4xk-DAy-SUCcvu7A2`%6m6qu8~|xoPwGs0t#wHYifr4DK=HR1ud(L<#ja80YTwVywsw; zkKHKfXa+&i%@f3TnWt`rJ0OVqpphuwS9gi2*Jk$j+UrKX*Y@cRd6ShvqogkV9~&&; zRNsmsjN=L`lt!NplNeE0&skAqchNTU@SRHaTlRbj8)8jY9Mu&_;zR1vHAl+}BqKLA zrpFyEEm#!4u{J&QsJ38{po5l;F$oDJzR#3Sv2?&7o1T{O>? zC4=Bj5VV7!8UzX(9yS;d;${(bj~XB3ngdIh1J}WvZe~ ziR?6yT_Ca_)n?R@t|As^pu-&^ozBf$`UdWsw+T#!{&o7`Omnn=2FNru^d6@}L3Zz` zu4J1-njkxfQLkGuE#rtz>uR*_!pJH7Ano-u^)x7$CZnq#I;7pBtP2;CozHkT+1Bb! zX0`6=PK)tU-m1wxk}TQojcgKaeLXF4TKQ(uY3y`xb0Sr-Y}zXRIXz9WIB=`=`r7Ha z&fr{Ebnby0ayxQz6M+IiLS=4!QX5xr{3~LyL&7F!i1b#jj`aH$>L}>Zl5S~IgfTlp z$q6PX+Yc0&C+YVEPQR378mIT}r(ZfmT6$bpI%H2Tn^k{e=i(0c%-8E%Kh8vZ*-6KA zi=bm#Aeu=!rY)pns)UZI1S7QZD0}C*fjXvk(lPbScbvsc%_5au(o)_WU2D)h-b!H# zX`8%PV+%eE8C}x|8C|{DJ=3A)X3HG2?ucILia&hLpgHCdleTW0bWzBdIorhMdCaSg zE}GS~u2^=GegjlD8=<;6q_*g~JPXO3_IM3R65V=>#}WUVC~(RgcDvNhGzY7xapKsMxX63!I^2`8zLN`pe) z>sC7sjNl}MVZ>R3ZgwwUw%X#MgUgnJvXwdPcZiD}c_N813v%>nOmztVnT+iY*{DFp zu;IHOjd#}likGIh_t?y*4+I>ZWw%dIyf$WDTXKN2omn4dOF;7~Y?b=;mJ51ly&fj5 z*G4J7~S`szKAW zkk)HN5k%@%38(dXkhESOAI(;i)+;mOLte1HQ>3bCRYhv28}hzo6aQ82+8x1sEY?m| zZi1j@l{br%#2*FJb%$q3h6ZVLd3%P$JLFtXc1s}l^tb5Qx9qPgMbmze1d#YX-4Q1> zjv8ayR#SV{P;mQ4H6=;R!2r_+P0Um>MtEO3OWGLwW&yw+a{#i@3H@9M zlgAv;&$U87w+1S-0q;ORw=G2ySv9wQY~McRLiL=vvT=&G6ytEnqM{JUqCT17`4YR$ zc_QtY!Mrr;D;9j#lE}J=M3z?i!M4^2@$w^Hofi+lc!;Asmk!9l22mBmGv= z|Mlv(l0I)b!s(aEvAF3cOM3Sw{oEXc$HSk2n-#)|o_=^FeXQGX)0?B0eksDKtR=Xm ze&H1eC;p^M<8Ns}SBaDE!X|r~ID8O}e$-d zKMM1fhxBksmyK2>;^8fizkco-grg5$kihlR3%aa+?jS9nMT6CE2gUR1M}yTxNnz;{ zMcY9s{nWSy#SGF7{m-b?4$5<&YVDxNf$FuKBG+IF4#R%k{6?g|+<7+F(sOkRdZZ*HxXY_Y zI!Mp;gg{5-96&cn&(-lE&9;jdsk~RBBR$t~f9J?9Qn?4vP3F&yS%e8n`kyxmZmi&v zIt_)tC%DfG?!$sxDY&=6#T7dpE@Vwg7F_%d9Vz&Szy-^c<7hw3{gk7Edk`*UR?1%l zcZc9UB)FtEOYtiN*DScCH%sCFLVbweKi~$!C46x5?-%?J3H}Dbzd-QcD)?^@{G=yJ z>Ay!MDE&FOLnamfFFqH)}>bvXJQomla$%T(}zb zVbMagevrPb1&u}5gSbgw)~g?9AwMea)o%k&PT$o#F6rHe^k2Q>_*ubkgi9Bx*HOIp zdIJxBUe1QY-@kZJJgqtY@lw?+p$j0{ zoB{$VZQ)3Pa?3W~FQwp6f4x4V;tv3`KA&{%9TR5#o9B8F2^oLb!^vh45S2sN)z z+Nly$YmWy{q*i%`V*2$f2~XII`x_?U{?eH(gY`em{vIOIjT2TW z{FQ#s?4nQ(ahPvRE}4A9Bo?oxKb~_ml5QnYpyQ!Js;ASa%q0+OH=MmvwmQja=$d?l;-m?K9g#{h-xmv zgowiCHVZrk+d3&zrAa+8wRtiii*tK;;)@-I?7O7*edg6H{ydiB)!v9C{p>8{r3*#! z>aZ`ihy45E#Ywn}a6f>17w*?_pTQjf9qVk|OL3Fl_1m}uv9%wC`wraeaX*Rs9o&O- zuW2jH;VAQi2al;I3Ys)rkf01t&rNfnhYW~j0ri>>QV&wUR@F}Na;s*!`hbqu&0+b( z{D9{ZYxy94oby4tL8{oQ+V9W`oc#2*7^#MPD3F!{|G*;@NXxr_;64hZ#l%0b6@ET% zehks`A-x%)%*)sh_|aCaei;k8e?TdpknejwA=mfZV$q*Tm7b$(w;;8*9SWNJyO~Sr z>t;w>j>wz-vijzR+kn#zo%3%9sGHY0zX40hjJhvWwe&i51)cM$O>(ccI5pk3kS{Zu zOF%76Bt`3RLD9OI?*=|9Kao=@ALdiS#t0r5&ncAm$78J-7|*Gb_bYJ^P$&21!6}pv z_2t11V!>&X_eX07MRTg;{UyLsHLwI(S5YJPmOwv{M(?j`?xiUhNKd$IJs4+@$mxeJ@wsm-;CjYz>84@9CA+!muilI?9mf6IY+hWP`n2e1#t zwD8?5!_hne&*=OxBZ7b5Td33}Zr%3uQ{TP&>swAt{NnF_U4C(|I-m=&`2K~Dy89qgf0F$| z439&9(uYG|aS0CnW`7*|Y#xU`5(4cP`-NZZ7ecy4BTgCOpmlk?HMY;IRW2x*8%UG< zlvkx35C4O>r+6*+1&7`S@cT9TL15&+=m7su=>QWBJ=rfv-V^K>!gXP!70+^t^v=+K zx@Az#|Hcz~lGD{cX%GF@PR~%P|B_Xmzr51E-FPE3-Ww%3TaD3Bx!)nlfxbPg8(@{t zZv_Brg0Epgz;Lz_b~0+62fB-aW1i;nC|xTUIK zeeiJ`Sze&2QEXU_z=UKe8~Tko^b}VMp^_@=j4>Om$GxQ%Ypzv96w7IgxX3-x) zWFwhi(^9p7KyMyNpymb+2i+R`Rci>a)jxB^c5zVaIJn?!JUs&w{Ubx%=~hVKxZ{pN zD-n*}0ARUVjuQ+r9S!9L@>Qj_6$<$(Gc1F;aj*ttvWUfL8<5Gz83IZ_i1QG@(+S%m zu!`}4mvaXZ=;W&v4aCaQa32ud9h_;BR=%pBVHI=Q5cgRtv`)zS;3~%;9CyZk=!!jV zi3K!!H*em>#=h^0xf*8teF}nIzwCh_2PnH!@v(2XVh>wmj_XGNB>qFxg~}gt9O&<& z*nw5RxgQF7wWXn|yrHsmu-IG}ha(^k7R6Fi^v0e>YgpqxG{ha($9(3B>4uRMmlr_p znOuK+D~-H*r`#L^%EN|GrUnO?#J$l9;Q0_Ffnnok)Pr%B42^s(W;?Ltb@H_>^3`}K zZCK?b9D2aaS9o#g32fenI*$iL5fr^-t<#pnG_C;>KhA|f7wF{Gmy~}yEvy(1AG)~Q zt+5|c3+Nik(cN0PS<2ui0OQSp&{^`DK{>4-GSy)VbSQ zDs>#!XJL53-0x`p$38%MMW)70p(=~CFnZHzdL(Na4?Q%5)Sf3-0)v{T8TtvDvz?*e zVEt`pYE~3#Y9x=U6Nl911CPE_>M{e5-d(7Ed{JIsp~4X;-chL79%xNBSe_2FB^C~m zPHkZehHy4DOTa5_WEY1^{}AEQKjg)w-vnIxlZEQ`1Hh%it+ z>Po37q|{*9;v*F<|%WpW+U)PM- z{B$GJvS4@uqo~}>0mt9c7pd5#e5E$jiNY|$b|lq~+*73fG~y42#}CSf|K4EuR4YK) zM_Nh(8N)wEB~}mHdVSqUiI~w=JtXkRIT{hhd_5gM{BJz$V68i=9up#lyqljM{!#kH z+6kRwTMfl`y3brMu)FS0O{IyQOV$O3?F=X_U&hV|8&&w@^7yb_>MiFbudB1W`T$}7 z?>EKf=0!g|wWxaNTZN6$1rvYw=G{6CBeT4DHyc$jQR3trcGknayVt1ysEn+yombMX zW2859)U~pAgbfSd{;=Uo#{Qh*k$~P!JWT(wn`bwVWQG7iU&6Gp^TWpEeDv0n%Amj7 z*44G^hJ^^p#cfaIk;oYD8?w@n_J@P@-yDdy` z{At(eO?Rg@7OA%2cSiKA`OuK4gHHKW{2B^h+s7}+icj0{qbLiXCVWYRlnW;x(B;SL zMzh>6ru0=s6aJP+F5+y56!1FjieVdq6!asU9$sM2?{n`09rOq+RlmWxgXs4 zLK;{qt#6tfYGJbQjQnAXbaIF+mJwO-%=2$dPR~I&{A%35&R?LeW~6!~ zX5mNi-m+W(DQ2Xe{Pp>}4POHM9>4Ti$ggbbw$<>wc>X&^92G_@0#?4i4i;D z=lRckFsqf3T2NRPVX(Byh@ULNNl)a#m6)lBI5?kSy2Ml+BksX?`djt!Ta96Ev(%v| z03NS8V3s0awmAUi0-{mFO*=$&!%c0Xx@ePA6cA^!hy#*L4spN@CZ{-HjOnyEV64e5 z3AoYJCJD$jxg`NN>8-mG!@}dk!VUR}`FViy<^On-s&Io2sQeM8yxK;`TIUVZp1S23 zRp;8@HGjMNH-D0ZbS(SsH=!dR=_vd5{+Op9;moIG4|m;Ydi$@dUirr|d-nXr4-GAz zv!hD+=aG*!sUHh^Y5VN&w|=khXgl%mr)>v>RNddbP&#)18Asc^xHsOM?^wKM;w}5% zWUJ@IEqjya*n0Yt?0@I1d*}#04E&$H935YyD@{;zWOlSk zVU(4SoarUR|A=XC-IcB&4>3$~^Rdq$6>=)xE?nIkBrZLu8^ z`6{w?3gYd=)<>3ec48z+VJD`wrP#vC=E_ES_9+X^q?m!Lh~;&Xhe)Sz_89o4%t$pN z_Em*G1Vxujm7(ZsHZbmGB+U78(=rlW|K|PV?+9ri{r$-(vt@_NAhMmUQ}1vEy!MoN zieM*J8?Q;#T2S7ZZIY60&Yl;GERq}tqpOb=E1;?$G&0K&E>!ZlJe_>*cy^^l4pSsn z?Myc8T4`J;KZfefhFy|bS*0yyS`1cM9+|(vwDGKhi#!mbA4dDQe5sDL~wZ^-0lIbRhK) z79HNkBuE;EN9Jz#HP2P>e%c>!NWu_lpmMZgmZnghn2OEkBAvnBWv*c#c1aCsw!oSy z83;l^FdPIKAh;Ipn!BmUAiJ5Lv71YOET5A%)a;a$`743o2k);MK86*mgqE zmD^d_(zYUXz?&i5^KyDtg>ujL(sQcW7Gl#jx?;*S`9;dpW@2R_R$X6l&u*UWP0ZYk z;x*+nbu5hYM!8sZv2Ia- zC6zZfD%Yuuy6KLxx0#?`lRQF+V=GLduq|>XyH+W;>qA@h+=P3{b$iIu<)NSJT`Y?9 zxmuPWt4BRq`M>liZ};sX&p1LK;Olvg%6s#WvO{e_UpRvJ^2V0E-51mc<4#|@8m3aa z?zzpF+|{Aw%4?lKMnvaf5cVoK>*b^3RVPy2H50nUT+vNrJg8SYZx3m=tDez|%qACm zf4uaWa@UHaQacVU(8|o)nB#wNMgHg-s?`8H-<$~3M8o=;FEma=;ySBX_Fi!OoVw?R zceN%iwu)g1s(TCuTI1bK@hzk5I+o`87~FH$v+96_N|*z-;iw05#J-5>`k+qC`X|ho z{)VKoq-UKGjj26prLKJ?r)zHQnN@4Ba0G{02#QizUT&)i5#PohG#_E)plPw0hwh8G zPu(U?mCdc6pxBpEH$wWHeuHb7tVYvTIt$N(OWPWKXcO;0lb85_l$>2aT zc#)cVMTXY%$14ZorK z1difLYQ)IPbJf5))ugBq#r5RrB{r-(qC6POn%iO}!*|p~nVi&>nt)&!jMA|c)osC8 zZZKZk=u{6QPf0TcJ8YsH)=#Mpi&5umX_ZDvKTnGpn zR@~{Z!2Y;TA15BEDIQy^k0E<-SGQfJ#k35QSSpv~zGQhd9Wfb4u1K8Y!=u z@nlGw0Yh4`u4hxx(4P3AS}r`xuM9uLvo%zP(^Q6!EU<8Onse&s*c*Q3uu%AqmYM*Z zyzm)=h0SRWytxMkyd2+sUbvo$Oh6|oi;xwvdi` zd?)IGCHXe8-qTgr3|R$xXEJGA+crcLMcru+j!4GAEuuPB<8j?0-O81BEJlMh8A~x% z)A6LzAm*`lPmtdaZmM~ZkFmDkDjN2Jgnr{%xv zk#qgQ#G)R(^=u48f=Kzar}l$Qnur+~kRv)L>1DK~*emHDRHjJLC@L?bg3PgmVq?I_ zPNX{W?`)BBvdA6kSC6}-`CL76sUA5(Jv`ydUEy3kL=*XX7w>8{kV}koTmzl^#hlDF%4DSybJlTKwM)Gb^GTys zMO6N?J3#-4cz#4xk^5Ccq+)(z)idr-@*-3L^=GQ943z;&=I@mixj8DRTZxaMQD|#O1{4B*eKM=)%kjW9{b7j|q z;C2wSfuIxwr$Nvc@cuTd5)Wn>Li9F7?KFVqI4ugx)#Y>RvmnwtV!+203NnivWNsqs zBeEZftd+=SlH^YUnP@1;U>*K^Np&5_I`crbnD(N70U3-V_mOotN)-t*h{5MeGz}oz zY6O{^$UY-(_Yt>TkQK#&%%lRDlgLgJ*^fjP9|p3`L^hQ&9YvXjQ>IOnX+C924Uz#e z+2fSy%^3bmk8XlSDR7eon$3#3J9R zb~{FiETMd77z|J$qOb!ck;-S8 zCGAY5B_Ik@*q~868?Et}jXk1lw_!|onsPc!%nQJ2l__*3E5|05?DTQ0ku|o(7Te`Y zHtxdas~!u7S^g=`HP;<6C&S2}XK|y)8UyS7>H0<73VaV14lL;;LF1k^>KAi?OKFw4 zSC1D;p2;~6juJm&@iB4b{NRf1PD`AwzlWnQ_hZs!)Gy@%D~U-(Ka+1vL2GqK9LXXV zw-Ige6Vn!z=yfj8BkFIZHkIf-F7T`i9dlMBdi)06HmsScS_c-7+zSmJbI~sE`pAZL zhbK$s2Tj+G5w+)g!fU20#~9l4d&BFe$BePI=WoIJdGy}RzXQ@-*nkljgMq52X+jeL zGQlVK1LsH% ztR^zrC>lqA%n$)GJ;?zb$pHt+f!k^3K1XD~BC=$V6%7NKDHvq!b!G`aF^X7*nSz(; zA=0JXevnjNz3<+b3x}Un9HvcQ%(U&=!`pS(15Vpv#_o^i#aA0aOYf-IM&eyORb#um z!?XI$dV{jlBkBm*MtBD;0^UKJL4Vwa;czR4LsbyQj0-cMaBumj$lPyp4~F7MLh8>~ zF|wH68r>1L&44cnkwJ0X&Jf!(6}D$;qrSM0J&`JXT1PKOLk~Zt2kOTLI+`qGO%d%p z?hr3@)NGa(^#sT3Bv>8VWd8Nyf^C9YS=DaYg-IEwn0n(p_naW008EA1KBkI6dr~q> zdS0eXo9<1THx&7d59+SYapxXY0rpDgK??TzgH%gQHU-c|QjQXdX>>lYG z`hZ2Ld3z%B+_WLX8(%Qq_?QWzXF6 zx@`%$kWZiTJ4g?S&{+|t3AtUXl&%^0$W6k@9eO{j$zH*&{1epSzioHy!W(PA763|M zCucJi0CqqTgZk))?=(A^@a@=K?&8{4TutqJPteXpYF|%s0lzEIH&0M+*z0ZIraLcb z-+)usJ&-wtz$H|1!G3j7Hq%x`eqt@Ss}am!MAFm zN}7-{#+)1wyjz~PeRyR0HnFo^kMB=Yu%f7gUbIGtTvA(ixLGn(shM-&FOhlrVO%FL z!_Wzi64BeQQYXAGo6mQ`J-g&Jo1-I1hP@|=e`{m#@aZD+Jhmy!_9Vex1bhS73uldC zao}ESkW8tIKM@??LVKt7cuO#lAUyjl(>^xrTcmiymd?Lzyp&~pq5nPH^=qZ*xd4=> zTrzaSQ-LS$QWzHS1M)6vuy+Hb(bQn++YRLB=PZJG*}-s zn5T9b-i0!_1~X@Hd)AjNPOd!pC&%+|4e#|xT4WUc|~=jRpg~ zau^;}6px_VSQ5TLZMwrZxby)Z*IHSOZ~mLZy)_B<$1A=`#S$bIsh86d?RsEd`MjXv zwPL43y_zOhswj-xiaT!_lQkwFgiZrJ#JE@Mx{|T(&el~kvI81O8OLkfC(3=x6vvBi z)-oG<>n)Se0EUpmtRs?Rl(m9q#NIrnU`#;H?v+OKb!&;;Ym8m2i7Z&y=``bAZ1kMK zKJ2>lZu!0#uY~x(E60b;nivu0M~2SksXw*s1NNU&cg}OapQD+6V6(~1_J0+!KBpGV zx1_$Wes(>C-Q$Mg_*helZTX~9X4>8Q!<*06s}&ep+Y;UjiPvgN)j`Z6UhsLCdF!3( zbgQUIWPY5n^vdGZ$S=LXW?5K^v3AVtu!SA93_ENY)@2@B%NFu)SB0n`lrdR0hbkzZ z_skHkr96din8pME4T=M}S;maT7bmAoGHQLU=&K0lL&Kea8%~F8Vx9R7ZtTDDnPVyz zxyP{DWnn#Q#QskgaAI3)&|!Ql!9!7SJGZ9FbhLxiNK4vEw6ucmpcS--Me=3pGTLy1 zUPqr`+HDr>J}LGBt*;Jz%-B{GQM3Grng8;F*uAu@-bKsmZgq=mo0V2m3$3O-b%;Gr z-(Q^ZI(*>HlAhS+ib0X=wCA3K&Gf9j#&Q{bA@Wf2^Rz18uV_y(P6TD^2)yj4S@Qdq zMop%T?{&04ei*Tm>4+7Lrr2(ZEu+{QXeq&cS`_B6$QN1T74ea5dTmf4Kh4F!n3IT5kfha>GU+6Fb#W@R#3 zMxTH-@7j!ZJ56M3h-_jwzFYN9L9BW-V%difyLGBw2GAI!?RX4nTW6q0a0V1WV;(XC zG=|2&xx@=N!ZCa;j&Q`6kR$HvT+f%V594Et@+r#q*1&G_5zF-mEad{*!qKya+iAeu zV2vt^DjS95FNWhci3NdZnRePI%|p+c#~A1=D7sd#yly*(^CImHDrH`LD)jgrC%@8wy9$HJeEJ4Og6`qu<{ zDuX}08{zaL!|k{!otHnE531p>#O;sM@}m%5Gbo(!2FUtpGwu-F-txpCoXYtGZvT7} z5FU-N9k{7(-h3w_oZ9YX+)^Q&>SaVYeYZS-o66hd(Y}&ew$_@^SD3k@1E3GUxGVeBOntVc1f>va0ew1FqxCe;}-m zFL)rJ&gC0^;JK1lX!?G59KP)b`p2d9`>FLWbN*$2k$40ju1N>?0MBJm7YOIj4eSH| z!|D22`p zT3o#7t%vU%Oh4S8e59{@g(JI2_2jP0;0To=;xU1a>N|kWkKa~AR62QnRPQU%y@ZHo zJ9s*(|K;eC5qJ{!xL0{PY6tG}mT#I(zCpIpcVgzh10f4BOb)??98LM1;M(BgFC`8C zAa_$n!o@eh6fs=L`jihLkRjVsUW7~OAA?KbgaknDEWsTEm*}AV#<{1kpkXaYIS7~X z`@P^c!liV@aEV{O;3f*L2rm9ozD561xju!9p^)+ixKys~g1bR*9}wJo;NmZ3mf+75 z{HcN)C4>hE{ys3pW6BA^Jt(-l1oyXaDZllCyHaqAg!mbP|3<+bEx1o%p`&zL;bM(X zAw5F!-!8Zl1UD5fmZ+3K!T)dcAJM-Jm*@$Ujojzp5?!6(UoH4&3jRrgKUVOE!6iOt zur^Y9IvH-^S0Rm8 zPT-OAd*x4x;P=X_a1ao^PreE9aJXwD{!{!P1b-%;@#njggZ#9I_K)udrN95aLH=h4 z`R^X&-#^GdZxH|KgZv*3qAwcc_u@%$I8?r+%^Ny!SLF>IxHfu2FTdR5OjIm`e#lhZ z+9>!3Exle&SJ)KzGr_9w=jGR5A%H8LH-z8j{g)49^)-kW=jv+5vG#9D_)Uvn0V!Zy z8k(L-NFAH0WBV`v=Tw~z-Zbt%o-;BsST=RMZd@iu?vIC6QLo&niGn48+1Yr02TT zvcH|n<`OI{O|y;m$vhU8hOn?$8ZuRv5bB$4iHP9|^-UuGs`O)GDFjR`I{*9{m{{~F ziZHQmCen=)DzIDVKM40s7KL5`6N`X}`8dAn^eoi#%)e21K2F0m3m->AmpRkxi}Rgm z`xb(Hbj<=b5TAxc6mzBx|9F1B6K!d)<(Gzs4&u{jDb44~ z7Ed>75Zz?~nm+JC@nDE?t)usqL_o>%gJx2VVCrD;_*dNT;r<497+!NG;a-LN3EU@e z514bR+PA$m=5d#h4Z5YUNyq1>@a9+8R1TaJi4S-Q&jI3s}sZeCro*8_$IY&f%b!{33DiDrMm-9iA^~go5TAzMMiPXp{j5FLPDK zS-Bi`QGxBO2G~WYC3j%%9vWRuE8PWk->Pcq9NeDuEYUE4D%mVQy3rKqW2q%Ojn*PKbI5`@IaGVGe2RJ#JtK#JF zcv*UlA50ErIakR1#H$^hE0Az#NBw8`Y6rshjGob4mZ&o{Pm+9JkU--^BuY- zBS3Z@@B`T?Xqw+u&}0PA&I5oT17Ot*)ZGWOgMpDvD7cK_B?bPYHw@YHrK@fPl1>-8 zSWzhY6p%kik>101?Zu9%woXN@bLG35J~*Hf>3uyyQ7{at z`}B;eb_OP%uM2_qbQP#0J*6&ah8WW8{kjn{_>3G}&{+K!Vf}Eop2zt+q zV|l#a8w>D@lkqXffds+CeHb76z7?<(Kn98FiO0FWz`xjugM?-GRTG5772!O9hEOdB zCIY}d%5`!J9ms8~DwkJY4Tj?vyrEz4hJL{t`agv?Bpu1TE!#B}??D%T&5T}15H^GX zWR2^IA8}kC_hDo&*0IDKb;TXUGa=yM5b-M@>{JvGJk1JoLq(}%jiRB-+>ogO z`iy*4OFuSQO)SuG0Qch|Se%%nMRDLs&_(evT|TH9PT)u??G5Fn#HzX)cs=qpTKVcy zTZOrys#I=4IRRayxrVsILCC$a@3)2k;pl)XhT+hHjzZ(P=nCa0saW1n4v-yAv}Tqz zlsn{A1Es4u?r3k!`y2)nkbr;_bT#OrHK>9`UJbCMtcFXtowCLqD2jQ9Yl;scrHf)t z1MjIdq_Z`y+Z97X8+jQ<92Pkx7JxU|8!EN(HNbDOG^}9=vIn{Qp9k-Z0jARFR_ei1 zqB*t|&ITNZ4oH_uXTxec!3?b`m9O=}3<;=1b`WszLxeFz4>&WP5Qv=e+;)j&C*dxY z<2d=tx5j5&-<|4>?dHZqPcLmtd~i#dk8k`672T?%efh%bqZONU@ztZHZmFwjw9>Agp=OJ4a4o}O46Va^)KxKtoP;q{EaotV zegwu)up}+O*n%)k*p}`vOJ3CQ zh@jj4z?8a6q@K|NxX+XwNh6t4j~rAmN9QGS$UZ}U2*^wB7~3k*p+FYdiXc}{Rm{ok zx_i{W|I&JJiK#Dp+G8W9wfu11g#hy%V!dfyV4&mR>sAg%=#{$s&b)%7s&wN?w&P+l z^DU5pQZ{|rys0xq@mAr&TeB2_b$P8OZN!aP_NN=eM_+v2-U#6F@2!g)V~Q{QF2MQY z-J-TvQ`apsG%gND@eeXObzR=E>jM@+n{4N0K#YES*s0&FU3pm$BiD|5+@DM2%0=PiGZ)O3PY#e;@W|pu z?1VnBq#r<#8n8y6)T|JR^mwEcPW$P|iCGNez%%6o*rA(pD;TK-v@HBczRiPgTjbZ1 zzdnD-mmds(9Wr%vNm%ZO6`ubKvR!gLmzaK_(IsvPnJyNyh~xQ(t0*wXP`uyH*^c5Mjs*!&k#66W57Z*mTu=V`{Exn}i~UiN zKB@~3@aO-qvM5N;Boi?%I^(^(Nz9$`J`?_{U>r3L!Z-?uF~P*@dcrdrYq}r~$TB%3 z0XZh8Bw(V+A`O^kYLf;On!2O`Gk|OqPRK^J`37lNSiVV}2Q;IAkvm89t)F$~*3TrV zf4_T4_FZG&JaeO4cXrh)XV{AD?!~VhDq0g&eDfpk6`Pu#mE88hz2E)o9CuLs9ftbb zrX89S*f?@WllsLgVHw?V=cad$RNkmfex%{+%E+CMKJn(?&W%&VZEHAD$>AXxwBP>g zhm;dXmaSPIu_pKmfJoP5vUBwvPlWFI+xKbzJhJY0uaw;X-i+V<{ugYdj{n=(NQIaO z*T6<9v}1vtwp-@>D&Hu+Z&7Jc#ezzF&ooUnvV}O1tISYdUIxJR!rN!Ct4b;=mn>h# za%!inc2QZ;vb$5Vb!lUCW5#8VNlPkPwwf(p4kd_^iseg}Eh%4K1qgVSSl+s1DRD85 zHQsOoJ3G%{0FfUg62k!?F@QXBX4Wv}35sLmYxGu^LOfKKpxCPE#$n899ZtpTN|(-9 z-mTL-jMM7pyrGn@$bPrdFizQn6YS?bGOoiyVY{;DRss3weZV7?zdNqOjxbwEc3OCg zV*__~{qYaGKI=I=ue;~K8>c3RjZ7MvnYlmnk@VeZ<6oRvLq7ulr|^w3z}p|+sFU!G zwr|x>jflypzj1@nG4Zn}51FR0%&{pCMBq0_AHI?7Y)z)Jhg6_o%R7~U%@6R6x*QJI za597S;v1Qo4p?P}vIgKAt&iB64t%35TX0Mc>~17vrCSI)y_G>B(Pyn@T_i^?6ZhDQ z*4uIj^`IVr47JvvgGzB4lcs1SIZn$B>_ZvCKEg4xqq_DfZ?-RuakOF{QM13kh+_c0e1lJ;D&RmC2aQXw%S$)Rv{7=g#vUrnni8%o5=C zMW_E1yd~kM4i2bn!F@|AO3F$qD;E?kE3R0+qEL(y(Jrzpq*C3p_ zyt1Em5SG(Dz;cR+Dpc=GYhg``bq2>9<{EvgOKP2F3lu*EsHS^>x8b+`bnAgu(RS%cN_C%>pT}kC*_Mh z^1D6qQjdIzM}Ch-es5cAlx<@9vpZE!++_K|67qv1By(+%TOO*-eZV7oC;EaY=DZ5*4?RP67?U^t6y?j_eL>g~*R-q1t-I>1ZUC)=I zDI6k`gXYt#Vao9qmlRKpVP#!v83MWF)>Ve`q()%49Dtdn{hoNX!?4Pzco{%LrwM@K zy+0X3Os=7s#U|VA0!dIz@%UP^a*Se3K$wu-ed^H3y6Kj(cNzJg)WKXCSu(SAB*Gl= zOIS9ZbY-<4s8?39!4-OLGCxZO>uPD+{EpaT;usU7nax!rdY)rmP#oF*trxY7GVQzf zv~B)QNstT{o)-czug%*q?W-~EzhdH66&Yow3w1X+oK#q65fUlHJ%6%BbQYB@-7kcVeWcX5s()F=nG3f?oq84xJOJs?vY|;oC`V7q5DliqL5H(76riVOwnocR+=#I_Qy-r{WO5%2n*dEou~5x z6CJBpeh^p2jTq5N{}E#rM$B%Em^O?U%W-?Fa&nPUTWBgCOGRX3OVdA z`v7iYNdP#|J;wTsg1U6R4^383E>k!O?`LO1mh1Th8KFh=$zN96d#P~G=?!Fh4{#+{ z+y9oF7$GMXx*T!An1h&r~L3K}d*Dng4SXt;oI z^sO^iJdK8nGZf|0hw?Ruk672M;%Xqy0pLr-g|2fUqU@a#*qFbsZV|)AR5!ite#wf^ z&&sWpcLzQeW*Z3vqzjV!b&CUcT7#x#ZhI;|zF<|pLK-v@8I@zy?sx!DFaZOhV2Wx& zqDl>M#a1zuN?#Y;GTr*%*$>t48*jq20JPZ{GL}Ct-9KLay;~KTd*3#8c&c_gOv-O6 z2wb$yGJL0_@8hPC;Vs4gs?|H3Qzk3d!8;SR!l#QH33d!*|fO5jfH zOcm>~-9fX@pt%Z+$1YEs!DzK{4Ne2SP3};;JzfkJ8pUqExE*RY*BNe%cVMt^gFin~ z`bdoev+Hr-eIyMPS8$_vI5uxhjG}@jUo$uP2!UXNrOq;%#+Vy}oJp{RNsJh;4%?j? z$*tH>Z7_E_?HHq{ox{5Hn1HebO{#7O*xuM)mqrHB2Na4*a1=l2Kb^ga%#laULjgaT zz`jA!_<*IK$Wv#TNZHN_;3gbFZhh;C6o*SFu)Gc;BTFLA$}Ugtmpp)ad&{tB3I|nY zR&@chPA9uZQ?Bh4sT=e$(iNIcYZuF+`D4)T{C+AQ9lrr1AO?M`r_QGC#MrV8frz~h z17a2kc7g!sES9u`z#i}(Y^yQ&A~8_XsB5E;#1MigCk?xD8c$9dPbX8li74{rg<$VTWQ`tLAX4S?KeiO^EmHaqIsf>~S{{u83X06=^i+ zXVvn!BGzMa0as-9ANvv`^S@0#lSXqh z;C8e>)TjYHvQVwoWOXGQ(oDSy#bStUi0KdjlQ;>OBz>Cx0d;(In)D^7oZpYcVcY`` zEtW*z9su?S!c#7MWsbLm^7y zHWUCfV1LzU4~eQ-RT{wWUxxZN28S5+2rAk*Q?JJ`Qitk&$ye`Ls@{V`Ok=p}P4pm7 zOv!Q;a6Y~-w=Mz_;{^4V2iiRx&c{|B=R-1UPT&qjrA7bK!UOHOX%*?1x(rKSXdOWkH)1=fd9j;IBo~g7>vMUx<(f za@)NuU@C1lMNY=5+GNm8H-*eLJzSCyQDj*mX6mDBNpd`U13QY=y`Wh&#ZziM4i?xp z%Il;qeZ-G7io$0C(c`lhvhD&jx+v4#t9aywfM6pD4cCg~(l%7$gwv_a|h`mkpPDfhkU6~78YGX#fH!)tL?c4mtkj9V1 zht7SdYn-wgBX|G!2>gah=r6ueVNux>8{$JW_TkLIKt{7nEe1Q!iGVE9kbmHJ+xI`rpD)l8xbpsgA^`O zfrDEv!rq&<+#B*hHjOsSf1nNXZ6vI309o%)!cYiCj`limJ4R$>@c==19^C5ZE0F0} zkcna-)Ah8fXEj)WRApv7N>Ow~=u)J_OkH&fM;=u^iw z;x-+S3caI1rW*oojwWzBo9|v4RZV0?gdDM3@nTBH9pDz9LRA4T-0?7UpRy9}FL+BV~AQO$R0R~4j$a*${+Ydy>fmwV) znVv@#jQ3MbCn8gJ1Tu9z2r|zUG|2e`wA;lnG`146Y*M!CPFse2sVe9V#kxlqVMII!7xwz40bB@vqeC1$ z=i??alMqfWVNmR(k36_GA(Aj6o`VZB4`z#mLivm6=sJryvi~4D!i}Kc8tLUt0v=?t zL*LM72S(w9jX=jn6D`b7IP3>6eUd;iumkVIS+`Z$>y_ zNsv7t?K`~mWS7ap{|s&~A1cpp5l-do!tGzq9SEm3dIPrgFU7%{FD$*c8UJs{}TAK2>0@*_6$ecQ@&)^=pUXWgctgS zQ+f0Vr*bSrxPSYY5KiS;fpGtPOAt==twXpJuDAU6Al&jb!f8K6VcvG5 zACA@u;nWuX;q?N4sskQ*KA>-ghuWWTI4FOPKf>uEtclZbF?Q34W-!)78izG84mO4O z8H4@!H>$P4b9OEveO(y=WT$p3i_J2ynHpM@O)|L;G8Q1-qH00+{>k}B4LH=YuuNMzng?5u5QTf z{|a6Pdx#|7#f#p0TnR5@kw8cF5fLHv>tNNxPeVV;iKfxEnPGX~;igg}sET}t^k76+_LDF@*Wf%~Z7R>Q^b zQ7NP02E+Xpivqbla4Gy5xI|wsxYOVgKf;S3ena5mn{3K==ohSSDLsO_8!oa=`8{0X z(*hTyDYwFlA;p)7cm~le@<{e5Zu?`5}$o=v23M0Dfl-D?l{36 z1sD1jDG`ESF8KeBb_+o`;Yko5+Gk)5O|c68m4bhU;7^51`3x2OQn*;xQ@%%kg5}Wn z;SwLh@S^s)TX3hsrF6892!$IDm)ePtUdVk9ornEJ$}zaahsF`P``}W$Z5G@)aB;=X zz&{HApTd)%{YfHrAUmmisFR)+eq8g(k3R6)ZQo3ObfDMndL?KG|KVPan%~!w-#b53 zg?R6LUV}J__s;()Aznz%>=OJZg#ZU=@#ni}|L5`UoAV2M2{prPn_*D(^w+!+V zUK{>=*KY>#OBfVS-@W|lClB&JJSe>vNpnk@{DUb?=VjGn*6SgV-d$QatQp?@%;OrDS?0AL-2qqUkk^=A@K7E{MrP5f|vFR zrQT<9N8zUTVE%2D&y2=FHS)*$$do1`Uc|r0nurV+4MDoml-xV6umr*P(=Re8zttq* zAS45Df);WZJF8zI&i$|z1x=Dm&?sQGte88$LomY^U?BkUpq$z~QMIp9MDN6m<$f{a z1A}O;loI^H8H(`XF!-{Mwf!irin0ADs>-SRcIB@)b9vrcKGpeocIt`GXY&^Hur$9| zmCkV&0=VaP>Y&fV_#ocgza1?G^W)%xLsA#zxkvQ58juYO5S)4<)yXAm>KRxMp)F?k zWsk=zLJ7P~x%yf8!?OLSneg9gLW{wCKlKD>y}ui50ED5ceFhI#u-q?b>X_Oz0yrM3 zS}WzcG2m}p=9lj+Y}2S@(}A`TTF@L;P&bN(|X$4|0z)=U!TZ3)inRHs3;K{GulZDC`9J%Tk(ZhVS~O3OQ0 z5NZ!g=rkE-S~v9CK3OkKos2Wr7zU&J7dz*{r`eMks$}KPhE*2sG<)t?d%tt+Ib*Qc z1FoxCWZ701G*p&1RIm-1?uH6`!&MKK$C>sAL~$P2(Due0A6%FgIV{{(%xTE9$X8dx zIIUrYqv1Y#L#Dc6jSeTYldan70{H`4IpnP0neYciai57aL|I|?H|vt%Q1^020}RG0 zTIA-CgQ5{1IYVJk+AaFU&iNNRXAD$FLxo1ZrW)f)vSO#aQb(gVv!$U5!T1YD^jyPufGjR)<1Pf8v&%SBIW)hA!2G_Btunl3gpw={9CF(wwawx!uNSr!9AD zN7jyxT<~m>?1jO|1I*LeF?Y&znNOa?3t(hMsYUG84Lt z6Ship?PNZh-DS+$YeXSY;2YZ|6SmrN_ZqU>j5qEzMuVW;7~N*fuC-+|wK*>tqj%VH zS~_wsU;cA_p-VlXy`IpokvpSW>JIJIt4=d5#;i7!Q=+HrT)8_svfGW>c4PEuV|G^u zD#exGkW(v};22be^QZ!&>a&NQD-XSdTeoCFZAaF#TvNP+Vs~V@J94^=(T&ClEw*f` z1@f{@+$yoi8H1{qRefp-J@1x%%&5L$HV|cYmq_n6W_5L-kElnsqC1Rene1*!o9ttY zYK2)|)+Re;QGLy-@bHB@^nz1%uTF&)hWBf98A}B8pc5VtRS6o4s=8dx%v7Dzsd~-S z1($1$V_e^LcjUBixwmyt3-|^@8M}>{ld0ao%#Pl4ili7>oU%RUEPB3)3D+%U311At zZHYt_;EXCO*v@&Gz?Pb9ocoDAAHGL2Lu&Octg^EtY--r=ux5iu9^^=)pTR20{z;*eLjTD>LE!hD1KTyC=QQ}H%z}dWJl8W+Se{d9V*aVPX1&+Si`> ziFTQfWT!MVzf$tT4=ER){@~Q}_ZC{}6z^9b+N17tk3#?A&$;Q-)D12eB+?fHOZ?2+ zviVOF@WIk?mLx$e*5i@h_AT*YG1d4|fOl;Ryo|DGUaLsLa&PnC1VhX(4kXC*^u?R| z{D9;Q8}W%p2S0s1fgNXfZ4@Ia$Fl;r)2!&#sLDrgGvQ%|oSbn2>qG#w+M}L1ze*NK3majg#^#5b; zU*Mvwwm)Ee?u=XqK}AIzyaft60xI5ehKr)0j+YcuV}_ex2qU0kb{S>>QMAxZDZ7lO zX9d~0Bq+j>KO7K@w1~7gE*NDIB@9*S$5}*6 zhANu?vWF_`qbwSIr01;a^BPS|WUS`ADlpRX3=RkSS4GzA(&v1i-sEZBi35YTe|}z* z^*#;^8s7AbwM>juUWlr%%(#DxY(&UVb{z27gu|1LMf8h2R(<5fc_o`>m2Q3G&>O?I z9z4G_cZUtl^1pRPP>nLWo)Ih|Bi6bM?Q8mttCf2BZAU%V;M3e~`uI1fAEABaGibvq z&I4v@hpfa#KX(asaPPp*?<~(PE&drBX)~nx4Ns5#IL}e1!)E@|T6wD6zY=yIspr5x z>L#2^t6tT=(oC8}az-_5Dgye+;#q$}y^w5+Xb1H~w4a&wL9ugY?lPv`O>2T49p6g| z@VO$dFfV0QUTQWDkfq<5lATwO;?xm!I0L5Kt=7I@mg=dwWyAQeRQtrB{zVzB@tLhT z0dLk8jQ3n&-&R+4$@4@+v*yvde&XE&%ct86*dDB-gG^Lhjm;t{&B;v|w#5>RZOMxQ zaPlt^TW13*#jts)+&!?${Yirg5fq33YxbF@>M}{`wK(OWH@q%*`eeA=Z=d)ZoOU#P7?D&=+lrVos)hN1pKKh+Zj&jdo`8IZ|mg z?6fzZuU+UacYlAAO79N?jm%K>d7GzYi6t#kx?`e$Nct@?rg@dvDQYL}+}Q+c=6B`|SNLC+gJC6lP22k0jP+~1}% zEjTQkCNe0pRp)zqN(Yq(DAPqaSAy!#_L`yoqX2PK5;7u&#@#OnLzjqOj`xne0nT#C`Xu$&N5HbYF;KEl*9XVLibdK!3+F{jv|m$erM5%5|AC6P zP{BX>A}6~1tsnMYdtXzj`#vY2(Ov;uy;lXD57^4j2dKqUy--CS$BB#?o)#S5Kw-<@ zv!~9P&yV@$ssgaZSzBW8IbFTnb`7UQqGg&?1KF7O4b*iWMvzpY8l3y^I0XJ-dOaCTs_uVtc*64MQ! zt^N5je>bo9&#SJ91NFAb$CSFDYdX!3c1cEPLSs-#iO=Zdof5+`(W~WkWMs8LJW3sp zV}_nP)ZdC~tzw^zQ)K;R4Gv(V!qN6-fk`|1Js z5gz(n`7@qd@eHL7mph^(Hwg@ApC;|Kq=(izG#%6{c{-#|E(>j^xr<@%I|AMFtS1Hy^#Yj|Aq*$XnGzKR^a*|Bu#H|=Mk z^eD`cPpUWr5l(HAcsTMSe9#s4iEcqS-enra>9|jnc887?K5nyJ1Z`iqg^%h2%K72H z4b8rSJHPsqNh_yEupA-8WLpVbVzDpx6xeZpfUrBD(?~)f+pN&W$(fq)N%=o*JWNQl zEjjGE6oNWP$zeWBKz1dkw%wG>_Lnp7f}}X-PDPc%LOTk}v58Yi_2!7qU9D{eXv=~i zFxSlz!uCbJiIH{#wRiumeT%V3rZYQU6i#jmp3e3a-p8;a5!LI?;(MT7kz0YMv-tTO z{{iquv6TBLhTv%BORh^hUYDpR`0Y1GKArm#W2~&ZMAyOk$)%i*%E6pt-(QD)iFurk z%F~X{h2IV!-r;mqF6KJncLIpsmxcUM`IvLiO}8@JToZ);CEO2?_SJn437}62r+sm7 zgDwD~KM5!65GYWeKXLyffapWQ?*PR7GJFw-vjEY5vVC(D9?Zjk1vA=5_Z=Ydq5Kg3 zEQc=xV#o>K%l&HsDL=~rDLQ~6CX1ml28~p)N-ii5P;#o0i=C$j(sZ6 zlOF}3H4ix(9=1=8&HPy$w(reRKgIx0``{e)={)y4>L0pZh6iA7I{p)VEcagpgxBfL zbnusT@Mm`Luj$|?dAjne>fjggj-*3R=?L!7b2)-L^d64juDUXpjaAf_xp?{Bo||@Z z|Npl0tE;XpBPad$Z1^I}MYP{5n(f~b{%Kr(cV@RJQZsgZ6r*wM_sYiEfcy;n%gxMQ zu_oVGhzo;KB8<_Q6URqI7&FIaj!oA@L`O!ajmwM}moXu8Tslk}Id^__-1mhx!YZ&x zO+R|x_f?rK(5X@B$vONq_i#KE{(JX*-NQRJ;zv!OI!8G3gGOy8J`R_Xl5Q+CI()=G zPPb6k<~MUb1-Yj@Gm*%Cazz}8c!Cs7U@tEU|B+SY6uv)ZUn;~q@WJQiV`-(YHtooxH-tc zH<6La3YZ&`w6`pTeO*2!G`b3AjbL5k!@`x_SuBECqXZ(F(*u!#h$6ZpLT1$18J22A9olu2Ar>G7xGTJ${NnByQf&jLQsuye%VN=|o4kS8d zMXZbw%v6G615Bf+ux}2VtU?kh3e=33c|%Ai5j7RDVM0U=nLP@ins&3zqj7MyAL^QPFig?6kXTA)StkDGTsk`=E_KT+KrYyCBtTcG+FLsJhHsA%&nHY8qsmPofw z)nhUSFW=92^&tvnriPq0kMJs$$dTykS|?5gn=Y)qWg>{ZEg_Czw}*Z^EK|ih;{-V3 zM6{0+;EaD(8^F@>b;fa8tojvA#7Wng#j1}$Amky$Nq1Ho!uXLXCIKhd91`-UVYt0c z9FB_%W!m08EnyR>5GR_&SuMnYu`ArpaIXw@ZJtDU2SZi~zt!s|-XUA}ZGne-1B5akfY%ZE3xqnUD{2Vk^qw`7 zm)zA_XXI*lT`0&)?&@wQMGd?z6yzm$m3m1b1GVtFP>`40RnqPW6piq@P>`40)p1UW zCU_l%7=lnIbwv%KoZho$@{+sy6aES8oAJwqg1qFezK4GTg&n_KD9B6h>QVd?C5@!ezslU zSp>2~iiA#{r;;2Z1PZ;okc@^I&~xRug*YlZaHJE5LS!uy`$?JtyT)4RBuHQc0L!QK#-Yy1Ra&fYEhd^r4C;d7Erc)rMukE7Gr9fKSx#ohD|3WURfpG|j1X4u- z0;asj$-AkFyaK}6f&~Pd#8uqNcsNqVK@xWQ!Fh;9=W3J@ zlQA~6dW*)vP4~cfAh*g$Z6v8;RpZQxdxSg*E2IEt7B|Hs!daFSwJW-HBB|mY*k+tC z(|W6@a2hNLqW7aSCP<*rlb4Hywas{OR)<;W6Oqxq*`S9#K&(O-lY5n-!dNGl4LJVM z4VzdT9f7e%t02@?kw z_01&Alw;pE5-gB}enKdbrd^3N-Iquslt|-RA}phXyud_myX;1H$jj`Cd$qcX88T26 zamglC7`3`hal>Ge@je%mkuwnln~e9tUgVsa6?0*0u~(bLND7zakI|h(jT61BWEJx6 zVPuDKX2lFecitR3Eg~#-xgjCYM7~S?z04)G&~mcunKys!W}b6tyQQx|yWR zjQkT7j3@iB#d(5sVq4pwgv!b}354r&ig}2{wGlG1N>?)G>6EO>m5g~hC9}DbF;Ayt z2VBXRr&F?OPR2^fJkp6i#~eKX%YF?fK_}tEbPW)MvyWgDwXRH<=O!kNu1uJxBaOzOGe=p+v~adEP|0#41XkQC|n&6=35j_{scgJm|qLsC>|%B8oxo?&QD=@hKPhS zi4N!pV|;i#2hIXohjZA2of(Ud4zaG^9R8()j5kN;2{`z7v^RTmgdXh9(snr5id~zX zmXU%F`KdV>>7+ycukg>#EhxnCeoEm#$A3*~fhi-+hGxD4hGe;ym}6f77|oZLa4&Ckp32`$+#d_j%J%%RkP2@~vb`?9GTRlKF{%~+`od(7Pr3HqK>u_?;Y2vUM3SG5g z;G3B@u#o>vTxkxivYP)mjW_6Hn34<*gkU>8>8K>bkvNMP?Y1t&4TlJE>UVt+oh-y@ z!kf%K(lKS&uM7^fi-TZ{^39viP2y0aDPZFob};e(i>LAE+~;1Ud8PFI0IFqlI?DGC z(~y6dhQvue@qflNWL>nxAb!S+?Aw+d;r4BZ;Xt09>YLjihHn2bbo(DPbX(31-Tu*u zu@l3^f7rME&vatN$uh0ycvX@pY+$)?q*(ibDOwmYVN$uS>{F-3TQ*xWTE+NUgJo|* z?a|_Le4v3*@29*<{ArUcoi8SZzVm#sYI85k>Ll2>wN$G7BpDW4n4ipwQ^u!p%DA#u zOhJqlwCo|v(YZgvQl#Dt(V#cIL zcGT7F)<3Tr*jOKfZB;@3fyye0O{oi+5r0^}eMiI4VgKv%&%rqVyp5fI4juXECx4H8 z`J(p&DcK=Eel_~kmhAOQ0w3R%qW@v{uaBR4)cDVzZrlI#`~MKmKVSX(jqow|oy|Kw z@t#Ak*I&Q>;a3Cv48bK!13vmDOfl9TgKDQjjk{Jfq&^@&xR zo3JmAI2jUTKGPL4im8Sd_Fgw=t&zf>V#)>V)y@sb7Rk(Q1c!^>6DiGD!)t*D|AKjn zRY(`V)p)?+VynF!!S`=B!k{g3U?#lhrs-GqNY!ko9hl;r_G?O`o7UwV^Mc5^yg%=rk{@Zy1sRUllu>4)mC?4ktn^GytJ1c=e7e~&u#C}2JeXVZ8FGg z%0`FH+67wqZOQUQX0d#L9_Ckq^k#`XRBw~W!}NACT`P&#S4!nm^o>&aRDG*dJ`>h! zOB40AveG1dlT1EWUn!R_)gP9}FV!EDmoC-U%H_-Tt@7b1`s?!26uns?U#YKF$aD0k z74bRxMumKpzFFZPkmwnw^N&;c>f&JdwznL%Z^eCJ1UJ~f#2Ls?am?!(7lS{U?^qQm z;}Yu;>x{mvIJO-Y)2>LXkAvY(;q1zojlp4$6H?_j%#NvlV+jzw+I>J9d8f&ZplVzvf->en$Rg{~tTIp!?dTrFR6K z{OI%RFOK$k=bgL>U0dTlFme4akL~*G`|CA7&wlxf>zdumM?77==L9c%l;_JI>90ts@0yjd*dsW_jR*(q-PBD7+4?& zW@_Y&%sLR4h~O#|T-kEIXiK5VZ38YhO4w*Jx!q-w()B{>js4I2dS9#bzNGQV)%ajh z*{b)BR5c9x7ZP5IjH{T*HOB28_?B}see4kY})Xbe0T z9N17i=$ujUUL`IpiJe%*{@2t;~IxJDs{pIE}@{Sg&@1#QCb29|uERSEmNIUhvU+p^#Cly0Z6e->?5yrH@K@u>RN>?Y4xgn7>T z{=7QrUC-E^Q;&-S&#q2YEASV1iz3yq1V8R#Ug3Xg?Q01JOGIkgkvj{rHw=9?ZB)V7 zG>^%<2gci;S;*}EUT8dbv1NL%u>acG{i%?P3QzQwN4wqWa4d9;Fq=j-)jT3mn4l2i(!m*n>1+O=^&+|K%9uH-Y#)!~WI{^?i;7BVpZf>MvPA6sw;S?_L)D7&==#306C*tBq{*(lg(vky=gxV*+n}G`@fa@hq+sW$o_A#0d+*b@vw>t zuX(pFs#LD%8_<+4Gv^O=wUhSN21KWG&~!F@4rEYkI~^k~xwcWY@3j2ve)Wv9ffgwY zPL%`)j14iP{Q3j(%$>FG*BFaRZ?}mwFuCOpwEK|gy53x9FT|=n22M~PHF@Anxf(`# zbuX-ro$t|%!l%os2gjr>H!X9|hq=)zvOE=S@wG~nI*qc_RFm23(X9hvRLISpnS+wz ztaU=AU6zQu25`i@uGFV^OwL8Kxjq^%shCV9zIMiIW^^UlIo%-^U)xw&TIa~K4>Gl5 zxFgS5Zey#4o5tq`yt!u(vwCIrLfU(b7Qe8uf;HEEGi6^^ua=&M$wg+{?0oO2ffI&( zC2~UyGv*kzLXUV?wR-L&_|n5BCn; zemZ39x1qMZp}TvJ+#4}+U+T!GEhGPQc;vwgBM*H$vby)Eh{HSL$NI-#+7a`@j>Ok? z%>HJ_++J^|$;>10!r`dy9|UA~NqEax&yv%$McnmW5;uQ!Yj>$c*Ae3#*PHsuDqwqf z5o`~KMOLYkS7>zAO$Li$f1RvuzO|R-&#*mQ0o%iiV0$=h0toUzUdzpcMq4f#3phAOar{3txmN za$Qi-h0)r9Z`OG>*k9YX+}xn{I-~V!FnC3bZ!R6*ET7O^I-yw}-CP>2l1>b;PHdJ> zYA&7BET62hPPWUZs;pBRZy5UhXz2H|q2I4sPi?S=9P_t4|Fy;bYxnrCt@CfN`!|UC zG^qPDX!|r6`b=5WT)IdlU97S$R!Nf^Q;q%7b)K0<&n%tiN}Xqp&NH{JUOu)_KDXa^ z&sWrn4b{e$(k-xsjNfmS?dcbhUEk!9TB#UVc1M78T(jo7CE#Ekg^y>y&8PAEu%7+C zNZ}1y*jIiU&sey7^p!B%CxjiR4rzom;A zs}sbwLDUzlDqm&44fI>1ILg=_U~G%S8LM1k6*QXt&ZpmxiR|T6Agmko~<>vO`X$+q~|$9CR$b)p}2h)LorEtwcMBBB{;G2gKD4POwO7 zZIYPpW0e;#SuW34Q9^o8+}`m*qI6_sLkKf3EuMwD7OeAROCt`Pp1DsVR~;T4V^X{v zRb!cTLMHDUk!qNN4Bsj03zN}?YZpWwVSC(}4QG)bjOUsIVZ-?nu3y+EUQ*q#)ANYP z@35A2!sn@PgAM1z`tb9zFtXvSZM;`mH)xrD87$u70vfX6tX-SkQu^otIkVy1(hI$& ze!D@ihI>IhIzKg0VQSfwViQprel;KxY&h>P4y;Y>M>d?Pzy|-(A!KSAT_4$S4tY81 zfOUyk%4B{(4w;9|)?BRhzLy3GZ@-+^n!H!mdHYjVibpN0UFtp}y}@S2eIW;4Q8t<@ ze^FVMz_`6+p&DXeu}iU`vSLm1_PU_Y_XdS9?9v+ZasMRPz9hTVwZ$s~>cWbTBub~* zv5eBF>%GJ&baTaZNb^Sh9oMByn$`VYjw&xnc~{ydP3=HPQ}opZZEu^=he=aA0Mb;) z*X{HiF?PUk9TQ=B{b;X|#sNQR>(sbU;~8HChADrGLGAXE4mY-380{6lZNM*DX2AP7 zG0OL@f6i;Iy$@dMEtGH4wF?@*=YxC0)S!^xCS8$dU6}aKiLtXA&LrqHbm`41di%G@ zmquKat!kFB{Hh1O9CfW>l}#qMYA&j-O{WWU=HZ@{z=LkMFemxts2e4@2Y`g3;~NS{ z*s!>IxHS3tnYpOSKLyKvtWK0JF`rG;i(o1E4CW$Qw{OQHzs;k)GJ}IOI+owhDZjV( z&3Vn-_p{Y~S$=g1*DlodZJFoi?|Ir3TN`A=^(1kqdik}3<1~r3uP(Iq{o86F8%(jS zK@e8$Do53;D?fO4r)T~*L8}G1)i&^|XIr-*8IL{yWl z<*FEi_tLTjh-Dp#SjIk-ftnbTcLOFPS#;&jak9a@jM$DQi-`S@E48=y_{B-hrP$xH(agw7;y{)#Bx_^1e3tBMA}bya zvTu6VO(rtiCQ%S^vlH3cA>|vxU!5!amdK1@AT#!@n?hvC6=p_O8xOK8Lr|_l-*@YG z?ir0-nfpP2jTL6xC3ClLGf6|yMA^=g{j++1^j6Ve;(rig4_!92(G9P_|A=o36WWJV z{9M^j)%#nwni*O74DdfUw1sBX!n}Eol;&9XusK#B!ko6>LpJRVslWv5a>xUc&}~CP zG4XmRHFOsyUYKv44t?x$=o6BW!TEGO*phR$z*$d5pL;TH^S&ha{R=lgRR}}GoA-uo z-oI?tQ#tNW7oB^$WY%6y%UIk^r1Qs>KWyI3@=)(}pNhJ+!LmBd)1sg2f^JxBUW2~z zI8$b}_V)HTTW*c??maR2Gtt z@9JVIhJRhJ7h&|B8rRgOO=eGOca3iDK^P9m&h@q0TO_k+d@&EkfT|{A^tU!|-_tiW zwXZM`OtRTwwAbQ|Hh9CXoYVMKxsHZ}7TpqAIvZVr^sVUsO3_~%+_HW366zZ7p&5EQ zP5-G7(XAz8ghEW#)se;IEE=Tlu9V$!Wo?742)Vc}8ZC*ST!_L#ig4#u3`}xYOJ7ok z6w^rc0!Av!1RAN3HRGT+hYS+3HVs+B^dMALSL=O!h?-3R;*1zPzch<7d)+W3mK9}H ztP?u9gkp;u?u{Z#-jhXJF}^|!(PVYISt_X-ZnuW_|JpeE%VO3oRm&lsn&2C>xUpMD zLA(#58g--hCSJ{GRe6Di( z&~a>KV;_c`*h%;IntJHtal@V-W*ri~DUaz~B5#{Wv=8Lwhy#1~^%iwt9zegT$F+XkLk zU6;S2*E7D>R7kiJNr)w`t6VTOR!{~-}XNL?wkDf0F6zqnIoz-SyknA zVX^TTLT&Q(RdQC?-?e_1UqSkdbkFNoED ztWc2CPvpFxVBa>?S5j=DtK@8W-<#tlqb^DnM_o(~Hy=gicsFF*J3{4n(*g<3 zh*W(7rVwj2w}^*R7oZ`7(DuHLu3_WDHaGUZ3?tg!m+o=?z8;|-XE}dgqQN$GSUm+kn$-(%7>Vg%?g)ZuKFRN zms9(+^>W(9LN8~Zf?m!xUTN5A_BobbzHQNZUpAFdPsJ;_RHmMQmRaocuG*!|U+OKi z`LB_nqo3Z9D75*8vuN{XH{Rx_SVm0}6f@`D@JcSKD&0_FTg3xiIy&=m-qB5SsRKp4 z4*WuO;5$bhNIJ7WNvH!qxpZ{bh6^1XGh%(&$~(I8Gk1;K!&VPBTwaNNm(bDOcmS`Y z#)rR>&#x@MT*5lKtbQ&MN|y{_J@6eQp=n$~jSt@Sq92oxJd>7SdNCZ` zDxsEYaC50cn%zPjGW)qmXq8Zh40A|ANnAq8U623Jhe^mh+eJb(f`lv+NJ8Tr5?XfV zsbzwMq9Gy2*mZ4$@Jd@~wRpLNztXiccdrp%>G`s@R%YKVywZf-^h*64uk^E3mrL0z zwYz4xP6#EWz9P)l?WXmj{mXSU!?mjJFdbe!$ZdvKw;_lt@rB};2ua;-LT4s5+%zE^hPCN@ROL zrkGDt(@>C!`+&^m4zjFLke!GDSt`xXj}X~XkV$ENzK7=LtsWp#ZUotuSdg73va6Kn z8s*7w=~NkRPplzZ>n*XZNQZLLxgsWS}FAS;dsnSBT)x{VS|09h`PO$3=D2xQg=DA6QJbOgwv9|YOHnILN> zvRvXek+?lZiO!)!Z=pnq>;{od9}cqpM7Ds)o}ol6Ph`J9kYa=C^ z4l+Xo$Pyj~*})``-A=cpj`0K8!yuEs0kYr~Aghi9SqqW8Hpp6tY%P(UphQ0g*`7R*wN3z;@-dKYnNv$2N#KlXkth$p{bUQ-cLzGW z%hpepkWIqM2|DVC&>izbAGr`Le2nnlyeH(`-sE%p)6YF++Whq0vkuVbiJ_vX{@_#Z zl}c-&dVkr{h%I$cEjkt}H2)aX5GyQJ>U1Ju-WSHY-dCXsF}QuFYGPgQQCbOjilJFq zsI=$?UXu$?f3$&gzw<%&h zKP@<#b<CxF#dpyxLT@}$R%i3N>vW&_#+~AaC8<)HLX}I~ zMjhKNxaHQ0*?N|>x>CLfpIe?XG}PL#X!<}KmRZ~f-%vuKJUM{xKH~#CZa0)JDa&wA z@Mc5#2sR*H#wV_7>kG;QEYL6lgMrpZ>0qJ`FAVOR*}uxkL|?JI985CZ9hrO2(l6Dx zv+iL>KBUK5N|UQHik$hdh2KpqY@zB~*{t9;HeK0#3$4pO7-E~o6pD*znm=ES3zn&b zCR$<%YrkvS(UKu7u$g0b}!m3!ATp*cLK2hl$N%wdi&hqsE1ed5k2V1vU|z zDmh*I&7`8*imjMS%Cg);`m%*?zc#5z-&U5hKzlz(Mcq$n&JokRwpLgz(xQ2C^j32| z3p_(h%e#x6FYWgF!5K>6?X32&Ki)vcVUbBsp{Kx{e8<7{ao5W^fxi54nQu7fHAK~{xqet3;J|_^Jj~2a`<(UJ@G?L19UWvy!&Y6{eVW^JQ^!qG-)6+(EwdbWY>u7Mh^`8U$ApHIsld?kv18OL`WBJfX89`Uq{kwNWL zH*udZE?_3@gY`~8tTs;*yfi{~&93m*(lq~~N)I)*UIjI_ktqtMDdXJy4iAr2`4r$A z%K6^@(mtw4Wdr}fqMOwKy;iVHW-2l-bKhKIQSK3G4*5KiDBiBu5A%;}#G1=rs_l!2 z0f;zI8S}#6m|Aai(56^}0x8)7#Sfn@$$3q+B`#E$=zj}+4YHR*dZ%8!v5H$n1K7n9 z?Ln5)&==gXcnH%)=*1H^nt`5!v1&j`{H$vm)h(oBQ_8d}n9l!alWuirxyoH+%{9gx zOIK!{=4!HSHMSZdYk^X2z9{&J?3`9!;#O9PLF`c(6GFKJ($OSpFS9hK`3hfWbcxrB z4JEJ2EBD)V-)j>ZE?XMsivs#3r#9HBEBRGBx^jqmp1E>~B-4gV`Qww(J-tcYQ?4>y z41L9;Bh>4wD#QC*j+eW!Wr%Ii_gc;6%S?~6K|L&gwGO8qw|L+yx`{q;-KQRq;9D7n z;uc5h#l_;GQ5Z3cgvIn_l24OgWkOQpPS3iO65%t6z263Pz@F9O^w6TpsjA*@*QgKU zON)GGz}RSXkk)CHUi*{@f$H>~q5%iYwY9#FV`2CpdMNBWSWjAuQ1^rpBhnMg?Bh}` zY>i^r6uCXIxD;~&%p>Xs*v_i-lPNz@dhwD<)mIx;?+OCDPM;E!7ig!BrRwxjou8nV zn1f-r-m5MFGZSc|pnAka!r=CGa8oj6TU=BQ)l@{H-fN-u&0%_=F(0W^+z==25x9Eq!K4Z}%Z6w&Rznfoi1UM5kyA z@U(_nYJV-FWt(d&Z!H#Y5*r>BnJ+1VRY(tAsrdtGOlGe}gH77|jJfZvx3{8QW|gpZ z`6KPdX|j1rzTDR9{q4a`eS-F|Szn=mo=)Gh-mHc70_$m}=U(TVl|&6hw5$PonTLl* zTZ`QrL#1`FJRp4gZj~?lK33Jhi~Sp$14O(?9S+`yE;oXj$KNiD5Sqs$&aZ#>i*5eJ z=s2PR4wzfbo+XjZKEZm@57Y!V`r-{FTceaAb1CK8J6Z*ekoiH6q77%$XLx#IzH0NC zK3$pF|J~Ytl4pF8uVmyaK`-_6LQ%iGV)=A_<WWfaykh3XPKaxJ|y5*=;&rqAt zz4oY}y|LfYFL0M7@O^wC>|aINkaSUknDs}7DD+3W-j{_PSsi;RVr-<)Hl+bD!f+6c z+ZuROXOiVTVEFos*E{E%&&$v6H_r&Es`QmgA+{Fl6Jsq)6cbuYVJE~(G4i0h_rmjD zO6e9qk>;WrFZXqk+iF$i>7g5j$mF3@4#QB0UK5Pjy+4*6ZrQQ2r%rg{J$zi-Pj=Z4 zg{!m{dnc4j7aOFDldWi$%b5yGvWTkJBpgv~&Y=GOLgsQoe`9)IT9>>VEu+qQt+=xK z4f(eHBGwq|XtDCM_!D)!_MimAK%oY`Y;mBn0Nbi;quC%;I|`CAxUEsCPBBS+e9eRD zxkO{odu+hwG@+wC`C^BT)-Y(FvV1Xmk6LfVNVUc$-Q$fn@og!qbj@;<2B&i+sSi`7 zOL*)dq0;@D;Ui01Guj*`_c`nqb9z$0xSf*Pnp*4xJByC7)$N4UU;Kgx#!`EoRxVSl zRbQ;b(&ifLW5uWFH3VJJX{SU|9eeReB&%b(uOHpE%snh!Xd>@v?=3TbEk|p(Zm>xX zw`v8gQ)W?ou_QMo0_h9%lVCLR6X$6RF!AsOW0pIr7=kPTL0y$CGMh6CD@r4NW<*l zi@x(^g_F=ZYuzzx3MjW|+|fCojAb*U<5G+hPwCyoAH78rr>1Sc2ot9(v1e#Y#$Eo- zEg8>5$%ah^7X!Fd#=FOaVuEAy5hge^{j;48l?{ub*hf zb&}9+kWkn{)qLZ$65D-P*gx=`;uzA849zvFmsXRda5Z-&S5 z-h3^{)na;Y<~}8hP`2t|R<^2Ol+9eaSebP{>+B!DB9zS@%*s~%w6koQKLxA%5tn2t z+hWxnD4Y3yR<_!WRJOjU!Rl$OZ1;RQl$A~U07IL%0B!7>PCG#l(&Du!v^XJ~8eYuG z9cXw73X+~zv_)Xp%r~X`c+G{2U^;fajd2Njm&kOZ1NC4_b#bblC8PAl$ng#Cizt|6@58`yGM zkH1UUR>J;BaqlCnsyDD|mt{Dx;j|aKiZ<}7{jlYxn)K>dX!X68R^L-;^<7PQPDY-^ z;mC7kUyvC{bAB`)ri~QGft4-;);JniZ9gi}mlStB;wny3iBhP%Q4&pa#E$7uw(Chf z{v2`sD^&5;9IWe$$75Y@B4vByRy)-GM0WR3m{+RLlYO$YZVJVHlyv4zLp9hxeis5S zO{Ks_W@hV0qyja2W_3pG1Bl*Adt+jTp>#ug-@R1f*9$q^OgW544x5HR2&QcyYlJPe zrDgqlArJSn&jH&|sMZ7n3N;vk^;Hz8c@UlqGl}%3>gOdNiri50E;2(Qv9B&jMRV%68Q#U@P&p6(2_^?o!0Hl8(KY zbnNQUkZ|-aWM*F?p7!0qF{(LPd#-|Zhmjgcf@xUhR2DX~i<`)T@PuM-Vl*$BP z@$C${cf!Wp0_=Xmiq`;JJqg&N$AE35z5H2(J?^&ynOTQ|G)+b^MNa@*J{ND~{4IE) zu|HD&?*Udc4cIEezDw9|2`l}L-t2wAYGQ!Z>;cxM2R1o`DuajolbyOUU=6XrHWKz4 zVeciZH2~N>TY#;c4y@rxU~A?9dxfyEgMbx30Br3HU~dq%WInc9O%IKh(r&k>VDC$D z8(MwrC}`d;Jp@X1VlgUnRwxQpgU@GW%LzLMox|l_mPocsZ4QdBc^a(tEkN<#Bg(J+ zt00`m5nVeM3Dpqx$^vBL$51L@0y%t1DE zPg8~$fKv1?#y6_&BOf?NVS{pEGF`H+KS3JsVPnq4n z@ocsQ7Wa81AnS!1^uy%H?%5GQ*vhiulq7S129AEm;UO|T3l$*UFItOp1>{}=axmcg zfC+%#VK1D+5goZ;(5eB4;UQXf9vdDV!YO~TcoaOG?2jcNJOq9msubPA!zr?f)0+_H zN>A5Jhazk(9*XDSZ{zfjcc6b7;VOjf!$Z1CqNj9^BYXt>B#YrZoYMUW;goOEb_Vfq zqW>A;-td2qhpwk}@NtI>h(B3aa^*h&;Uv@E2$#9g4@NkhBkGHAis#^?K{#C_I|AW! zcEb@KkMO?mPeM519pOt6u7;oPpLLZpT}4jexgElHBb?IPig4F_KFj$(if~u{bqJ^Y zzkqPp{GUNMst|KzD}(Ywo(l+90#caceUX8U4|q70*){w!=TEjb@KfLe`Y+(2dP4Py z(r5e;{xuJ$vbu)DD_V{WiIGp#>F+3RNBeJ)qsanX6#fw$NB_nPrgxaRpw0~7q~SWY zyflG`{Y>eMD#e(eZ(LvCYSztZQm9k%b4Y2YYGeg zJI3ug%TaqXcb!qRH+a|M`)_Zl&iQ^itO=y3uVPaOf=f6I>Fz2M!MojnRC_bi^y@S*6J$k9008Gbc&esDjbQ|kUSgb4WLLkbfYD*Aa>QZvaxd&v5@n4%0dG2PFG}pJVVQcn%O% zBD|9OZwI7&&IF`<_5q}PT*Dww@GU^1-^Tq}947McAVA8;B`_gAP54KAUI3(gZ3iTL z9*0RB`T*iD{8tbYeIx#n|2X&G4~SP0ZULn93jpz|!$)!aP!4@Lyn!(sKf^!auz|xD z05NX}e}wz*<1mYd&*T1R4hM56ZT-vOlb&T#)>?thHKO+37iLjw;_!?_S5rK91{m&0!{ z>7wv=IBWpKD-GYt{e>LP=P;Jz`*8n1@RBJ0+Z;a6;Z_ds1tflY?x*%een0M)asPWL zH1RnLNce}je>3+lP3BO= z;U}1^QusT7#P3<|e}KaR4p(seH13b&eh=>d4gC$p|0^Kzqj@jp$KfXc>F47-ob3Ei zJEQ)IU>G2pY`6~~wV(HdbwhYPAca2#NOYUIe--!7isuPP<^2IYI;wK`SwL!E zdpO(%NOW1;AJ1VBAl3`vv_B46=%eD$jl*xz2U2@{gTn(H-U$dd$bf%@pUvSU4u^Ay zzJT$y0fME%%%OopEr)6j0T^8ln3iKDL3i_$y;3tWPi`goA#;a4!=>cMyELs3@bEHw zqmJ?EB=EfnNJInl0O8QjxyvNLiEjk(60^@Z7K1vJObHkmTgM`P6)ojx`*EiGdF z*l`on#-)#om|z^Anwb_k)))~zAuVl!(P0p_qdizOZIK@BU8KeXM^}(Eqt15a?nGx# zj`Tm|9DWQlOfP`0fw|vn50;ZV`8oW6W|!Zvw+aKe1=P9)my)tDK6#_mIf_G@tE`-*C_gQIIeky*{XIL^2F^6jB0M2-#swbLtm~h8|1-7!AO` z?9``-Lz^CoUe6*HBK+gUaE1_dcX+&pZt*08?&8yH=nhY1?G8`%ygNL}vO7G`-8zyF z$%OdOrJ2IpYKzj7e5m}lwUP68-WEXR>ki*j{;B#>{wSZcq9f?)sQwV1@<}&*cC3?_ zD=|EU!ve-lc+BOxl^^C<-QqDPr1emj^1~dDrQel&DQaR$c2~bz&_I$Mi34`5KQ5?Ff71Kxu6*>~NGI%&pBcYh-M`y@TzPf& zoAT$Hesu>Ts&^#wuId-{AAIV{Vs?B#6pz9jOUNPGBM~F|KBY?rPp2h)c(4A zKmYFg$A&g)!nAe~Ekk1H@BStGBb)JpewY0bf5HC9KBxVW`8V4i8PcHF%`4t=$@EULChX;L?DT;|iS=ib#kDD#V}SHJmr^3$)sV=8+1nx$fSnk1mkB)X6_L!sP)y)P54NJ5rN z)AO6;dW+kMYtoP&a*lakZD|*vi_SzRmZGmJZWq!tQXwRZ~LX9Yy+C8)GlGp01xa zDX{m(enI6IE>%XKXjQ%7?bdLq)UCcGS?xV$ivQE~!K;fdi6;*7-c;}LK>4O`42Zfg z$-4qkKTVw<<&UUULe$0`-Ww5hh@$|^f074Y(GnNPl%A}Od-P>{pK>H8oMnfZ2HE4pe_EXx=D?#rYe80 zSB+&G_pL$Hs44zJs$*BPs6HjVUeF@dI2LuU^{7%wQXkR_tNgAk}$L=Kk zH}4|F`cf&0w5US>##z+Sk)Cn-^O}IuV`DXqUEJmwUD@t7Pn!Sy36l&O1U%gHLpH86 zyWN#+s*0V8D`Kl-CpOhvJ`X&z$E!t0SKodfJg6mj(8qOyL~mozqOs5I{FHsx$&cb9 zS?N@pbqX$(t*oapd$n4a6Vm<%8e_@PUWdtm_%3WG8gjSd2aU0DcqmMdha5rTZ^uI} z7D)QmoC>%A@CO?Bxg$Dqv~OaD@KZD$kmjp2G58tbQ{bmCO5YJ44IZQ6FUAw@5}t|h zNca!oL7(ZQe;DB!`0aScxP-sP!%6Su8V(ZnE&Mbf%KQVBb6s|RMovaSL5eXqJwGoy zJ;jt`T+jaH;k28JWg4IfXrP znV+$GO-4Z>UFeunkhdm3E#r4b6*9o|9|hf~Gc&IsmZ>Oa(nr+a6XRbbhd3Ms5xD>7 zK1$EX$j!(%7G|XD^YaSx3dVG!Yr*&F?&a`%-&)UX9HqVawe=j=^}Y2#-Pw!lA<9i} zt_S*?UL7?Cxc}t$;37=!(Y(Er0o?$j0nrq_Yw!<0y=kv2+MM_8fTYuQ=wuSf4}@AJ z^nIWj54q3r_<#pTi;j~YIERi1F}f-*eN9dV zy@R1+$Bfqqid6RB_4inf2HptvAHTd!BMNEtk$PMnes9+E$V1-_^HHCWQ!`L*MG~qkdBzcj_Yl|D|s= zBM;>MU45&Wae?lHx0zP77y5Y+3LX5s$@QdfwR1iy-stH2C=a@c7X?5c+^xQ~l@wQS zi2@KAkgx9e4F{djUkDkXGLY`(1dsPKU^)CW&(h-|M>LM7JKl`Ai+|J?QMv?aUPI8; z5r4uH>`XsLU0!$kC7`=?lwNoG2}-v+{**rDkEGU_{*&a=9e;G=-SSreZ^Ywpl$NWb zHq{*-pGmvrPx_he%17_JyYf*r>n{F(LO<%NKchP7>L_pB$(L{|Tq1OoAFUs{%RlK) zyTg;-sk`(Y`ctY0o#|iu_Q0RY-d*}6kM8jFeT>RX^}Mt8Mf+mA!w=;6uJRuUJf-hw z{~hH!s0aQ*z?1yCYTvYG>aKih;3>_n+FvlocUAr&9N$&?Lpi>y@&nzibJb7YKx4(< zzoehM7a9Lu`bm|bpDc0eCu45XPx`v*CxZq3B*{Kvh?40i{YXFQ=g?1OwX zOh{$#10|La%YXyrBSWnDAyu%8usvk+;gBsCLhk=Ir0ve$?V*nx4t?}O=;JV!K$a5r zhP-FSoxZ)jLw4nRtD$WS7d_%Dn&SR!%wDzmQgL!{U#ZyBr)-v5tuz$*Crj(KqI&6` z-nb+k3cSDQR;y}T1F98e#iFvavBOm=nP!SQyx5GWZ)f$A$;6%ylnYT47D~iAQGMFs zNg>{d>i>{di>L<<$Rrj~*~WMw>gYq()4}DJbOtX^O7(mqQcW#N7ox^KDWp2^y;|I4 z-)cX|Qk^kFh&p8?OZAdoNcF8}DnpQA^PY_K9U-c1QTeMV>(D>5sJ^`;Z=XHAEY0xprTmu$J^#f|V&wFNtSLht zJU9Hv)w^S!yb${5m9L!p!v@m-bsI>d(BA%c`bOH zzo#s_X@LwCS(o|iSdgwMyDSL_j=TS){^$nYDc*rMoy8-Vhcrk}WXD6!fQR%%jBecs;XR}AEF%O-^%?t942rW%3*&FZ*ck+_*@G-y}{&LX<4pTYw zz#{j6PA>Wceu5`BoP%)neR9!i4x>2S255d%E_$BB_c-j0#jxh2TolRSj|eCKJopnn zmy7P_@JKjh!d{hx8TnnMN0la8rrzY?3o1$cq`|H0uV4xiyLmcw$;N009%(s1|zhl8*< zq41x$e-Vd=IeZ-Ws@HmnvN+Up7|mfBho=aB*Gu#vhyUcTKNkNKJ`T`6*j==M!xuQb zk3%|hL-^esHUZwqb{DCk93Z%eLnVi;9DghKzYmyv&|P$z!~GoI&*3@_4?>xsy5KJQ z0e*t9+@H>21&2d8{1nOsd%TBeC5MwabmQ5puJK%*-!;MF{Om#}gPDtT z^SjK%=oF)nBcvIJkC17FdHL%(;~pYnXkWm-Aui18Aw8iy&ZMw?or&jW{!T)ZDJMJ4 zSeTuc8?z=mC%wlAsm8QBSL8#o=?jeoch2lNLOMRTuE2-B9yw=b6sBcm>w1c#7T8H;#Dn6qY8%=*HN zp5>aGQMfKI|IQu@ZOX_^$0=aWzGuE2=#%o&dQJmhqSy2+{sQDAE(0IKXJ_Z+WcQpC zqF;a)Mjw27enSNr`D-)sZ=0XgqeRx2a`KGn^E0s5KBHiM#wsJuGUTr4G1^`0vNNb| z3e~4eaxQ3R3+b5a**Vp%U zx}a&_(RD$@JD(h(Q%Tar#3!Zb=g(a@H+F6k`n?&qCCw44{rn7LT9y&3sqDh_s8d4w z=h1$DgqyndxNPH!+`Ixhi_v*$+7aA|!C(QZU3OZ=Ox}C((F9+OEYuPcboDv zSP$L~y(qf?J>uNlxD1LOg8>Ef9ayxdnQlz$o*>DXnvv5ji-j3Qg&?>sHybT>rqHEL z$BJ~0aTQpn<DY&oo&gV?OkoGyJ7DrNOc}JTqB9cO$l?-{Gs}lC+cBrruM1fR ztTTZw$S9ExsIC%1(@M#p?KWK{aT5VCcLsLHHec9((;eduBo5X**oC=pI*Us_gVX|C z@a+&zx!g=atlL7n;@sIWD93Rvp13oO?r7Ny!08=)LdTw^%f{d=| z7R*guiD|ckz-1u%f7tsLxTvc2(KRzLGvF{YAdgW22Smk3HliW|>cF63nIfW6S_}e; zhKhg)YB?~#V49AKh2>*VGt?d&v(mC0z!J@4XjU9E8$=BsB|b7V&HJsr*P6WtQ0ts~ z|M&dvZU4mi_IiBld#`V;J$uaqQ1DyO&W@83L*p3!*YG-E*`fYVaqZB9()-`X_*n97 z$qsm?Rey?I+W5bk(|9_g@K;of{(*c_`DeMMxc(bW8nULi=uvd@+flWSb&ulKvGsqY zav2iaZ}@h=b^Attiv9N8{#)e0<^aqa?7VrL&YsNs;eVo>zNgJ%V_rM&pqKs4c3z!B z^2(l;f-ER>vHMr#?G?3J{X8SxRN9Z=A&hg~H0 z8V7-Jq|qFLJz9;DVJD7M({ej`k0^ftiEVm05J?GXcMt)Wj?grQq2iInlm<3)VQi;; zA3F(Ll|%OZC(dzT@v|n@K`!G!^uv-N*4R40&;cV4!((Tuqeg_ehkxN+XV0+Mpgmmc9$|7r&1Dh*u{bMJfy%PhOt*(*x5E*q0pNws^>MzEO0Jv&#dzcl<24 zeH5pC{_^*n2M*PQhJ@iqfO=P$edumAa19&LNrQ(B4IMO0GkAJ(a%kv~uo*MLLZ=TN znv$Fnk~}?RP})$(?>WQc5_q!4{s)h+*e{W(F~FWHkq6JC9(Xk}U72$caGMqzdyl)| zKm5HteEr$)IfwOQ+pFQ(6+Fg6%8LTD51!8 zB@SZVC9tEwDEU`X(#({Uq_n)0v`lzwCwY3?b1E_kU8O90$PD-}eGj^llIBgHosyJ_ z9~T$piI)ft$s@hzSWEa!1GhU$G_V1 zn=*rsuq}P+D7Lqi=vO<2<+t8Li12qs+g?O|DH+Mx*;pZM>9a+%Jr>iBPf>vVY)>C! zfA+&y+R~>d{N=$jPkb2wA3P36Rh@?5|ZmxegDVH)Y%n#k|n zUN?MxJF;hOJlnsVpwU0e(wFBi#OHkBtBt+bS!F8Q^4mc0)l>QiK4o_ya~?6%iT5A8 zr;rV1Y`@y#qj8Q;1ePDY+KMoV3k6J*w)iR&*q(ZVpl%w=FH#E`y^v!22azB1jU#x> zlG7HSbQ0SX!YFeE!+~3vJ{91@v~_AHKh|Eb{dI&-N${x|Z18;mf=>XXXP-v z-E4=p=iq1vKHE}OQgMKOZF&~e5&qMhQi)S*W?+3vn@G<<(ngbh0I1_CvzZnD{ zm0tq86jOJz!sgA4bB zGIju#0vwLB-!vf_rN}A3HZux01PCVr2_5kn_C4tFf0JrmV#E} zdffJ;6z#E>i#jv??uq=EPdM+K>5rffZG-#K`rn}bz7Mk3HHlEj`K@U6S&`RHNDEHj zwyn^{=A*rh;aeCM`7pTQ-NB)hHjE#%XbwPVHMGI69-E^9#(iueZ>GHsaI*I-jg&Ub z4=!((bP0j)P2CRA7T}0d#^N^YGt3U&YZ0`D(y_crdnwZHqhtQs1MQ$=a^tb%*hHQ? z?=2n;G9Cr8j@i+gq}u_qUu_j7eS5za9ltqV0J0Z??9pl}Z%Pv#^9JC@Fe7^r%h$cd z(SS1wa3KcQ&GDZB9>AsJ@OT2PjW9mu#~^4OY6Jbyd&(omDMSVjTz7AA6yU6>ggQ?O zGjxgs$8Sv$KpoJzShV9FjMk9Xg3Jm*Ddiq}ey)Zr4;U4N++tf4nz}KJBH4_tvU3!5YZD5y;#K$nt zo+36bwDo=32Gi*Rbe7JZ)oPgCr_}~J#5{34vod;6yGQ8-$G5xl1Uv4`6oSvSk8?L5 z#!=m1`YB!f*whVZ)Qi~Ih5eqj6-Qgf@rk3^2Xw1q_@H=hGq%8%(b%=#1$}_~P}y{0 zaCdRwA7X(+9K*4a8;8|D9petK?ktIqw2q0NqOK0OvHi5Alj6WMHHsW*IZOJpym&$k zVPh#B1IrQ1sU!LDV;Vbdmz_;^pW=LrwP%)28<8QEmksD?8$<8RjNWl~9*%zk9Ope9 z< z*tU*7k9p_pf|<8HJMv*{@3EO9PH~dZBbVyxGL$445u{8DC!=$>yfWY3D7F z57v)OBw~2ScF>kr9P@tdU@pe}yhyym<9-M^1EvAT40g_Ca}ZpHV_qf1JPR-8v9f=3 z8>|y9?ss@l?f!kAdy5b3xCiqMQnI#8 z^9Vc+h4EOyfLkpw)cL*$5vt|dkva}iYU6gbWfqTZjaGRyG zgTv@Je+56L>#wxOdcuFK4h{Qe30;;4-`iYA>0E(}w>7irLxFy2;fc!B}P6Wnu;rYOs#1ZQM7J(tY5!NQ~8$2N$;llm+ zZ9>@OnK7aoK>xf6mfbxrJr@T^`2zfH0?%5<<3~BDfmP>IQ`HGDr zn11Y=prh5454vWgwBK7C19>{c6&;(mOQq2}uq_7wpCtEelS2rY{7~<~>ejFYtxom^ z`{;y1`148I_(|LAp)J4NeUT8>+fJ}{a0WVHt-V+R>nH)NSDj!Sk;9sSoqO2%fSsE= z!>cmP+*oEsXej0vY!T)st{iv|p}an*4VCjpe^t)k33l9qczrVh?W1!#_M;o!aBO9B z2u}X&`rOuym0MdqQ2pFn`~=8hG{|EVqly*86^;fJTtan)0HxBYYGO#^2Vz0arV_-g)Rvt&<)*0F0G*6uJJZQ~wC8@mo; zX==|0of}yCe0b{=n!nO@9Nkl*YXTn!y|pGCti*b|ZxkHAGgAQeEd=?Bz}_MDErz`| zh(Wi&=jnKKZl!rsXOIu3nUy!Y7st|!_ir56Ui`VH?b?rxBg7v`zqRg;>vA6$tC6f3 z@t7*+UIqIgY%Y!QH%jo_$MOs~XZc<&C|7S##1iAIQ(*tTh3Y6o~6tRp&Z zBdqu6c(~tL7>~xghqdL~L|c2oHqpq~7`G;;>q?3ff6}->>Bjv!D#vSIEC;+MJxkWd zcwLHl=HtckV|}FkJ^&vtUT@R>@H>%vI_ksnK*yxE$9}T3;JqtWzm1~q4zi|WwUrCD zxeAy|SiMlYrk~VSSY6}2FfXtJ8snQKH2>4y?gM;|6i6=zK#aqKC`QQG+Sf^C(S^K(NyHb1t}HY9iOygTn>7^`C+yRVZS$L*~@dkOXUSWv^Bo@Cy>Fl zRgtjfVLxY*&))1O)eqf&=?1vZ_HbUkHAQs%oX9t%QPhp0;V$64+a2v`evj1wjuEZj z33uH2NwDL0$cZ2)yAAuLCxW58IR)Lu?J(cn1)VSJVQpn2dpOOzU@w0VtmpG{V9(8K zXJZPCH^osF*axv3I^rMi4Pk$NG~cj3WB4YYGs$Of_LK6B^?tU8)9R)k($#!^Z9^fq z@B)5UX>WT1AHe(V8&e^7>WyFxVmLwd+B_0?g*Gg&o|i2Qubm;bx-fFP2=i6*a_#Ml z5%Ah!{w&}bV(3Vcn|#FPGmH#K9z){*qsNEH;ARqnIn48saO-p@M+ zvcR}#OvY=!yA!py4KJj(;&MEX;7^;#7veIz&qr}%+s6FUSccoMZRx%k{iN}U&b#cG zDhXQMUF3Z^rS*P-qg=JOfA56tn3HYmchNhrpWpc@YRBE~+S{SO-v8hR$c6f>{WFQk z>aEc``oJ><9P4gOg&5acd)s&gkHgt4V^d@dY`5t0{SWMTh+WaS@8%%w?J_Z1y;#7w7NTPbs}vE_jVHtr6p+d!zJ|l}V-X*;aN#RF7@!lG{*24OSXY-y8c0hQg{rU4YGO%)>u>k8?$m0{s2>0X9 z*8#W>+YhEEroZQd)*F~FEMEhxPcbe$4wXBWC)O2y#(>Lc?4a=m%b8z}Wl3e+Q9o?U zRF1eGX9qO4&`-yGR+`(hzChcs_KoxXws}646{SxvVb`CY3_slSSjrEkn@<<^18N6Y zw$ztsdp;kb&M1`T(Uc#G3v3?pLzZ4zX1|Xujc?ee*D3?Al`T7>=Unbxtx*aihO&+vg5C-fwy?9t2SjP z`1YoTJz;3$iT8%_=Y5?Bo&!oCN0dTLbAkNS74pKK9mT5UjXFm7}MAs-Wz1? znE&x*jp<-*jMe=*A6Bne&oq{FcS7^O^yWX?b+lcKFG0@#{sfDQ>XvWYRG$#X?Dm1j zp>rnfgK7G}joG6ndqiILy(3IBj(v@cEwFLlk|H=xeG21i%QKBU%ST4WyL$@n{b}DOX z%ka#f!G-C)0JPwEi`Q#SFn^wdIU4qM85^Q>V42wH+-;v@9oKcX$Jy9oAFCgGk7bAZ z!-kwECkIx?tUox$N80~}Guo5xN^%at$Zz|R{%z+&N+VwfSl=}FrgI59mSJB5-&aMP zOxb#n1?;0b?4N!Q`=>NNf&D$O3r1dyOvra`xY$E;FV;qBzk7?vfe`1njel7=On;O!>y^NqkS`MseW1;npPBW1J!cT-+Wpw=XJSVm^zD9iRFlo)_TA z946nQcHCVpx|Zz3`rU(Miv4~IZ_kdCDXYH^Yp^U>nD2*Y;rR<|GgKaI8wMZjB~m+J z+j#HnL3E4l+z0+J&y-HO=Lo#;zCXm`{eT&t^(l;-k5}k~CeV9IBlpSnX*-W_dgSy+ z_rz~ai3Z)ldR+%=QlQr{20QM9Cj(su_{04DXT+9+zCou;g^=sQx|7aB7zeI@knK_1#WBipKIFbv zfcxX;wq#$8p_4uXr!+n2J3No-`!Ku@tHW}7(3td@terM2Pp}dC+?8M6$j-M6Pi>z~ z^LcDr_ptHp_#gefr!cA?j1RsS<#6AYKX_?k`Ge@?+X;?Ml!k|W7Xi!U-)Z;n_M`Le zzcVK8OKlqa3ZGw$??LuWWr6LR(hcxEBu)1BM0uNN+{ZZ$#gBD@pUKnj5;Tj@?ni#SzX3f9pa_NG z|L}zYOu|8Y69a$v+ZW802>;^|m>T#7J6DqlH}*bwY4gM`}drcwiE3 z_%%($zCaVrob8hXr!$RB&d!O0!;f_EReJc*BskDzQo`u4iExAyoZOU>F%M2M`Ud4`tU--nwyS6zx4O&f4%fk5K_@8hDZxg_o5Toa1J(ZT9 zmO634^z0P)k!Pr&R6y07WVr9>^foGoDEL)q<{U2vA%vqDaC#4ZDF~0ITLABW&CN-G zAC?+3*M9a`IF`nEhKBGN?TN@rn=>yrjjd;C3`c3e0rS&IKyh}|+*GzUdr~$CJ30dn z1Pe!Ox2TK^QfFs|9Eu0x)GbTo!FV+z#}e3X)}yEep?vGpz7=ec@P{;qzE^A$aA6 zs19Y5gV4so5l$1q6o>}w2(V~4=Mpv2B3gWTfFkdSc;c$uiQiuvyGa1vz9h zrqjNf2nL^S2<`Aj$+)HGk$We3O=C) zB$AbtoR8@tRu#@1un6UxAlWknQ&>}H56?o``Pn&Xb0(){;Ul%c65Aft*XHClO3L^d zc4`S#%p2h0Kr0;U7@a?gxB*x_t7ACzil`==QZ{RD&gA3_IQ*{7v3aa=vEzrMb_W_} zrzdBnrGiV-gAvj6w3)N!I;sy3ISv~`T3+TX_IxF~>QcxFl%PJ4?G!jp51Ry5Cibgr zh>)q-3G*gWn?egR;ce5jI5vWiSDCXJ1Hk6wSpEQWU>zQZVOBRxZ|-zHdK%%ZY;r)G zZrCkg!erZ#uqMerAuv5TdlGY4-jX&IZfnY8<3$k_i{56)#FdZ0B7`ZCsH(!4gM1yQQI|2Ut;3yGWDN zLBN9(6xxOu`1wZr@sn-BP0~X|1v48xyA;%D4@dS{29908g!6qOiMm=_K2Zu7N=}*` z39;aX5J#9}2*_YwTIgmh2UjWCAhLg~T;{?LzD==MhlQSmH0uvlKY^cVb zl0~JaLPU&9gI}DSn=>jqB{?&VO$|oj)83#8^u*+4(fRRd@Y|Ouk81rtkW>CW#NQJ5 zza;^@zEr|r+fNlKONURq1`dKhHT)Ui57*&7!SJVnKP~*_!Ji)f@Jc!i{$k-T4*teG zrW+p*zjUY>7>Y(G!+Ic9oik6(1_O0ZZGSc6+Unq*seSO;C}CFras4Ob<&1qblQ4lP zvfuYiMY)4Qv?Ddzz;P4DF{_!tFl`|3FcCI84;&c!e00cQ)H4H)b+%7K_9LVdaQCMd zz>ygl5S3DJ@|m2KAJ{*>zm6HNeGf8$@h1YrU}5v?K+>_JW_Dzl!FWgf_GI1x7bSyW zV>A5@TQHe^dQMJecKG9u<6rX~Fmv9#nUI5J&dMGDQ~KjDILZwJfx%LgJsTXf#uFDX zgmYj{Q$ra|Eyzm4s$y10YJ47udd9pgHKB)5ot-On&(s0xm{|~Qvv7zVz*7*BjiZ91 zxUmhz5G+fJJa^BJ3H zTl|1LfH=tmYB3Tnmq>`VW9AC!Bn|e&9aSU_YMB%b40EOzm*Cseed5 zMYQ~o7WRY-Mu}|a5;Pwj5!inUqbhrI&Uc5jkFu%sw0-O&5Rx6PI(*m>?;^)M*h|{h zKP|7R~XaP~00Q2jkf0JQ$k>bD5=^53Rk{21^5)}@Alu?!z{{aOEdP=CID z9yZQ{`cr+WAJpJamSaBx)j#lhR6XtZARPZY{T;s7_4oC+1pb!5-x5G-kU`trn=cj` zU-@Nx_&=@3xE>VqaNYl|`2pkV==x9T|No^w&VS%%1OLCfXns)oA9Ah@8LZWWhiPFu zH5c}*07S6KNsDHYqTCP-E`nP$!Cu6)f?G5TO+Z?%1>j=vN%2t-l91kl5_2t?7$9p1k|^8tL=?g>#wf&G!Mi?D%vcLA|KTr2Rz=T=D`mD|090d&JB;`zfFg*2M|Sz1#S5MtMa0F{_3ax zuXcDq`!iM_W@`+8E%6|nZHs?PJX&WxGXx6o7U6W6CaCPy?Qj0}-O};jkNEk=Pv_m= zqjaugzQq^-Uu=9I815ttVCLD*&|Xr|V|7%W(-^TbWY`)(k*ue)w2Qyf^67@)QNrjo zouXshLp;Nzs;68-wv@)2J=MC=rEj7xA<^ezm1^6}#{7|-3l3Q-dLei{QQ@&I(UvJ7v7cG*Sa`dK9l_^sXwGyju zO@ZHq3SU&{cO=>WLWP?x%Ku2R?}=o8zr9}9 zg_%$*1xE72Oj#CFDD;v_7F9~}gH8G9TRq6FyRE?gOo7|Cj5cdPZq@!R2DtS*0&;_L zZTBxK{2KIbHTpL*?((bK|*i$g9P8YTZql(|_UOXuMd9dzQho*K zL`poIMsYDy{!5(vT)p^Cocwx=9C!ix=hVv^wTfm(76ikA1*<4>n=xWTdu%tfibjq6 zG9!wsK(= z<$}aeo7;6luZ0yY`#-?Yka*NZ`hzuM&I7?GYc%Ws)647^`cD{giy zTeB`4=qwdQl8zYN!7?rg) z0yI^x1H ztXTdRSUUkz)IZEN3c^q7BEZIge#{7;a%^Tcd86%N-K!(F)ehUM8)nvZYX*XAL2=#6 zMc^P2MWW#r&fOTB2QC_sq6J9Gl(#d~qoUzOwP9}q`^L!qqTyw=VfD2UAc0cd@N(lY z>~t`eaYUKOAVE=zMz!LnI63I02`PR>D|91Ph$8kIBfw`l6D=5429Bcx;~#cZR3&aw zD{dnN*mg!0<0)XS_3~Q=3EYAof!qMNqmln?6~ACnG+7jAg5npA0vwi&4DAR$2_Zt) z?PzU8Ik-c?u&P?jvR&^Pnl&iVFx&V;FgCl9@Ewm>tJB|BM}z9$R`-9#>eR2I#8A~( z)E|9Noi5c2D&2CL*hu)d`SIrTzs>LejQLsL_z8zQ36dk1a^zZX(5Sy?^g9=YbNl83 zzv~rl=NkPWZ>+2Et*daW3-G%VfZcCx{RPOw5wl1P%%3o1>ykoE)p3?n?snKg@F4dl`f?rzMFHDyEgt~P~2 zh7b9FIc6j;-Ixmryw;vnvnv|lqDJ6vgSAhiZ#!bjC9n{ip9t*3Vg%Murui1rLXd#c zv`8b#W|ma>u@YFSz$Rj$KP&-`RrrElz7Y6d5~xf|RFKBw<%|IsF`J6ZK~6HfOr&|l`T|w~kRI#0!9u3UI1DjaB4mc;wGUYr{GG7< zy9t{*5XFWnPoUCjaf*k*xiVCh0Mn>nhHd>NCZ=hHy$peWM>D(?13viB5Og8H?^v}T z-YL>{hwYa$5ScsLB9P*MY=M9*$uq!~jw!ocK%4FlTNz&@`{BUeh=VX}M!~MsDXs6N zYP|CRF&W0X3HwNq{GAPzB(GAU_r0F%+kiKGV3&ytWzY-emrHm`@;3}oN%HF?c@P8j z#vx2Zg|L=eC5ePvh_?{y0H`<3PnU!yie6MnUPPsfGEG1*1icO;@D|w1!qeHAY8*C? z7WkbBfITs~k);PN?B*&^ctmS zjZ<}4FKN`kWUWVXjirB0QGot+7oAnwxlmtdlXfmruh&F=IWQ{kRTrV>(@N>AX!Nvl z!>mGEP-mwt<(jaggQGN+E(L=EDtpPE3>>Q}996DWj|v>CE*oX;B|8QsmhSR+iqIRH zX&Z+|?cMJp7#d~!*rj@C@?NW2)=TO0Z9cGomZ{m7u0sM#UDc_@PMv#hD}w);iYm;W z9%IW^bSjE@T4`{9F>}q}QDvIj2RaAUJdSFjR=C6Q{Jw%{QCR^JN-e@V!!V&{@0iyE zpDe%oql-u5%+iaQ;=xKS61bSH&z$g_P;>77NZnY|pu3#{pT1utc2dR}yvuta=Z|f^ zvtABPzJ9-V)~2P=LV;6|RWx+W#2A;g_eZY2VQ+0P1geGO)@(2J=yiW-;LI$inYVkN zRB8<(nZ}Al9%_Tt$thOr8KiZ7i|rf{6?k|2xv?v4{qGmXcJ}C6Wl)Aa!I0N|hoO0M zT!BE~q&8@UshMjT#zw{qjvr8;xH&!@Xm(3CuHDvWOVQ!`#m?q!BeVW+=_6Gekibb} zLlPLr?{tr+-FuGxorKQ+D&9uE;Adt0Q1tmfi7Z8k9a+LGSEwG=^3vU4FaAzpNol>Y2&t8 zMKgexKItzXRT*~1zAR{dIjD8Y#AnT9bliA5^&w2FjfVYgYx;BhN7s3|V7@!t~efdaDhKy7WNJuSF}7Ob{HW83m+uy%5A0 z>C)b@MM+!y1F@aP4P2nMs)Wtu?uNi19qKbtg1IQ)Ard;NwZ{?yyLiTF3oLyE;-IIy ztPzx;E!(A1wf5Vi?oKIAC~cxN!w{hDc51uqFtEA+Zl&o+b!WRwigc)WVri-&013Lj zC3Az@b3#$!`9h^s1II$|gccd8#*96Q=i7-um&xmqT0Qr084 zgp$-=YJ+Q6kb-5p(x4PbEe2uF1Q1uC!Mm@>RqC#FTNlu!NNO=1F+-oYm^8ITDNNro zP-y7e*Eq^4F~;W=cT_eZVDM~jr;0|=dh-|QNs>*v)2+SQ8%o|SKg=ygbV6W5{waq#x&N7K>cqnJ{oo zfZiZhT1!g$3WZK_6NYFFEBlHBot4@#UIhl1^c^8VgQ}fQCb+LzZ`jmV6kV*;P5`RK z{R5Y6@2eAmWlmaGy#?H3*B4TBWHzYe9RM!v^gOJzcujf!_>{DC5JvFZ(U@ts`ouJC zg;H3_-Uin{17yEBN&JCpfZ^M|F(JiDi}weUN>kw$E!ri!;~9-UpCopI+Y3ys0ev$` zoB_ALu(xjKhm1z`&!^dT0nYcBA(k9Z0-Vm1#nsSE+%HBX1s!@#E)+Lc0VmQiWevla z@H<|rORyFeiItYmj~GyjQ(Ve~ zt`1MDHz8r=2hsI9B#_p>Pz=rl(?vtyC~$9!_I)p*vk>fac0VUDJ%jLv$uFnkP#_Hc z2rE?JR6iFhRG7E*j5Oc{uyUbODfAq=Lah$+T^8jHG^I}Kva*K(MZfEN7|%9<6!n=> zim?PuKjsf19toyb8z82J z7CjdbhaDvLljzJ*ND!=CIFp%Cmd@@y+hdKBs;I$J-nEz2fUdu*1eUD}o&4udas{sS zh2r%6Ah09-jQLRUQ(BbBN6gNAc-EA}uKg}f<}T=bcJLLau}*E`Yx@31{7YU#8L_^vy75LBjG`9!M5o1>JW7d z5}efc$$%!FN{i%6i#K?65d?;Q@9y8?(y0)_UFGNNMm5C6dc7*_1_LFBeB2Vr&f6ms zeWPysqy`4+Z@X;?2#nD>3n0!JRAm8=>6W+&$|`gq8-<{AC6n!m!qbhJ21y=%PHD`6 zM|3dT8{nVOEg3fJ>*b4JAKWa@)k+rWB{}fqMk&cMNER{w!~S@-nv}oKl=R!4)ao2B zb$(Xr9Eyxdt;GwKk_9SLk{U0PGZT-C543dJrgYt-bj@h#bf86k)*^3e>2xDb(E|JU z@H7H8>#bsVaPm`};tK3gTk)f#16sVHe-4_#11Gb*rRuEgrAD9h3eU^}?*^OCOO1X9 zqx`;T^ns_I@cb1XNdnNI_q|X64;1k(z)P@g!8`}W&s>w8{qEL0ZjKJFj}ES?e*A7t zM5!@+MeXD8qdx0iF#A6Lu!b_hho~OL%j~_gwNQ6%1D&-Nz<;j2SKrHu~$}L0avws%j3t zD~#AC!jIPQGrZcDn|)p?@Qg0-jxKNmgkQkk3gu<81!xvNRwf)!FYE@G_Z!11Ys2o= zgjMOnj@CxPV>5VG_h8JfmpIH;p6Fm*2ip+M$)9&|q?QN=aKaO~dU%fYFyt?XwiYL; zi{mWCaeAKWVberv$}flKtdi_o>#$B zr2`rTJZQOy6#Y&CgFG=3y}+U<0B@GT6LFAggVz5@qwl2xKiKPOfQ_w2pE|ri@_h-U z5#@hE;6Hir6|4MKy?ib_bAl&@S{OpnXt`-n21KRS#jXyB=}~lehu?-DuMYa;w0u?4 ztl&F84>+)5R{k@-n_f%OEcVHh-12Z`adkl|nE{WVM*Y z24&EZl@i5vjcWRk*g^sRf`h^DtG=m4%GoYa%=;QuO#!CavXW=r*65J|mIwMnYZcuB zN}q*n2sy#2Re9-K`WgeK7=u&@77nQ4+P2R}OSitNggW?=Nre9isVJtQr#_hZ21&!U zGLum(!ta4dq45TI%;S#x9F|+6d6$Z+Uyb*uAx@vcnhm3jUonD@`wkMaOQ=no%Dj?~gMsMmP6m=Q$@Zpe68 z>;=D^4Gbl{->O%CuXYhLa?Xvs8M?08vMb6Xn8;(?u`R}eG-FU4QQFN7=OxDPIiA)> z?2?r{=e9;GFu*{d^F`i%vd6jw6)?Y34V3)$c8Dr(NUYGAHJS1Ep0Q}^=h!8>$xGHh zTr~|yr43Z#SA%6Qazgz{E`lMRr$ZS2DeXThx>>wzU(?}3*6`w}9L}Qlr|RFV(R|EN zeFQnsoms6Ip20|2>J4Bu=}cq}~hb!|aU2`IyEo$H$nJ&K;S8^Kro zBnu4EPpFzB{MX3e)~HfB4_q});v3Mw`Pdcs>O&0bZTF%*3-uSPEj%L|9chy`eoHLa zuvyNS!L|jhNEsI}e_`bN{)sPX_Vd(}qX>((awc82ME^|<`iwK$+z~cuz;_hiM+ydC z>Pvuc8pe0IyKk=MC|I$Wk$2hB%1rljLt^*)edXfn-CwqsQ}bIA=atG_&O7ph6F<_F z&f^Saif34~jico4t@`TfmiIVHqT_AS3QCFo(AR4V*LBj};feOCf*wvuM6_tc6HAaZ z>g+Fhrze6yxNcjw6n@aj$m=GU2;DO68c}R^{q`|g6G!(GlY#CUN_X>s{Swb>8h9Lj>lGHQ{>UCaw!Np{ zSZg`Jarnm+;PA9P`n+FT<1Vg!n;N8c!pp8c$xO^U{SVEXwVIkJ4>jY(aqG9dsZ)YM z=8vC$J>YFH$O!+<-rEyYPYxv!!r(W4TBmOZ$S!ky{j|sVvbXp;7tO!^zHpM*_?~!- z1!=({s+!i%tA5rbDCXR6+g|;$8rw%4!7oj#YSjnxqRWB-i8-46U=FPNMQobn^LDN( zA5tb| z)pEn1OsZFsul%*)vSeSo_xJWS z0r%H9?>DZhEmqX3By{FEBwN>~aiQ^G>fF&!nlwA3rpHG%HR<%xIn!kX3Lel zB{{JUQ`&}0nc`A3&Kig35)k10?+Rqf>embvc#4Av)8qZxAce?HGRDA2*m~lXGI>FQ z@!+-_U(}iEcM9}Z^3EKvR-<9Tb_EsWI@T2|xe0vsJf1u_T@^g^s?ocgM1NVdSDU<-r_gtY zPs`G5un*t=YTmWZ$HE|W6YBbba-WHL&8$@*<_Y@^ym#&92dC)p!-+kA6*!XLpGl}`@AVf=T6 z)K?Zj!#KJ+vi~%vMQ$FeUQw&u3P-xttb9whY*&!e5V@F{;*nv$+RF*ggqsqBl*3eU zU=vJc03I>GJv%@s_yTRc4*M+PC{4F z8SxlIT;rLi3uVe=PO~>Q9qghmj1cG`iNTZ0q0ufwwM7esC4u-J@{AoG5a(O$aemX1 zo(;(Tpo{8dT#pjNcVB~fLu+$aqUy(B-Vl9O)JFVay*q>9M}Q41`>TW9)WR^1jJI8ayh^^NR&IE=r}u#9PsPhVY6_Th)=k;SF)--I z7+-aCBpqW1CD zeQ^3Qc7#Bnyc-Df#KrODg21}Y8c(1Tp%(X^=X4;Ks$eyWP7nHJrNn#ra)tPP&StY$ zj(S3Rhf5yU^nZ7q>J%48z8dH47jR{&J@;(cohTX%Kd{3psNvd*ne$(%)`Mx$yzl1w z&C-G&?Xfj`D{Q9d_EMh!U;TPZkD{0C)4*3dy-WRN5q3L!YZBPmVmFU@ht|IPc~^B| zxLwAk8OtyGivQq9fB!=u{XR$f$;SpHsv}o~urWeXx?%YXJ;g)i_O$%{uYiCauaU(2V8-!0 z-9FmK2ySFJ$>!zZ0`@2uT+j5V9%8=JeO0H$qn4)+Lj(pWplaC+?XYDPEj=R?!v6I^SM;I`X8!$9!+I3A` zCYJ+z_;`49`aUv4TCOkuqRD)yT74z2?f}H4N}l=so|IFBvh6aej%xBKE||y3Xn)0V z_voW!V6;9N{AUFCk0PS0UqBs|y=LI(CTxaV2Z9+c1~Z&F_?0geC3`ttZhd3)6VgFc zlo6YL9}K$8;dHrbIpC|O_%bJzF!&CIs8P)l!1vR%SC;#i_;adhdJpgoq4-X3sAz?( z-ga3gHDq>Q_DNIzb4{~N$-Ei2{5??hKPelMSz*{KTgQlm>MKv2z5dz-X1Fthf&8T~ z+@Z~{fGOVP$e;K%3^$YxSN6^hX1MuoQiC!Oh8s4o>8!CagOgh8N5|cT$L#8wdFU1J z$~_#u9zOxTVH97)rYS>Vn#~KfoA#=G-TVTYsW`6WjXncWBb}$V@Oe2!Rh-)PEf)R5 z6t%*hL|uL5i|>>;iTZtXN=7Ax>$%=E}?l-Z! zf7P}7lyS1RICp=dY}HETNzVHYEZHCkJW6BomAtWc_C7nkvWX*c_=}(|j>O}an?5eC zSi;Hv;4Lth@9i==^y#V>dY2?{vY&VsD4Rnmi|`*f^4;fEXE^T}zp1-lz+O&98TUX& z%{&?X{8CO)3rE0&+hDKBJbNv=2Lznv2)Mdxxm>)C6V1fmfq?lO0k=mE$X8`>v&eYY zKnMpM0Y{blW+zK|1iV<9Q>0mFSJLrO=S~a$BHHPQ(G z`A>j>WbzE;vmSl{mCxJf>J0w^QH+IKewU9pAuf#@Z_oJGFAY*Ct2fy*{@N0kHzl>l z#3bXdY7%^Y?z%B*F0~-rka*V}nlGcK|B|N-shB)H54?|N{)5*~ix^l5?67-N)1LMS z^hzHVJNCogx655W@C~}Ka^}-(!z@l3H?@!~Flu)l_DhJ~r**=wCLz@OwaE#^Q{^6O zKYJ?JuW*NW*_azWS1TG}!w>eZGNT)-GhyR^T|!>T%M07rpx4_MQ@N4Z8>T%ruwgzO zKf-^~xOcNvce$0v_%O)wWV5)vAj#&n%l*aOxd3qE#Nl;vqYJmD8+iHLsb$IQDEkf9 zZZ62WR&Du^GsN_Wedm(vc-he9jnjq>G~2}x;qN|vK)6cJ+fZ8B`@1J)nVfbd$JXwW ziL>a25~RhK4m-OVVP}W#5nlWCoJVmZFI_mfIBR2V3vVf&IAY)2Rm-p1FJ-ag%AKU0@L$2TWFTRaV~Y<0#X#S#%10UiDs-T7yi1wcj@ht!~^ zhHIr;vMyF5o)oes?7O13{EMz^b0b?Sr`^=t<@wXvgaM(d)7qowk>pF4D=raEN31a{+oHoCe^+Sz;xA`+Y0hCeCQ%3sEX=$4B7wk5% zY2+lBPH%F`SoKa{pZ>B>cw{`cZdcEe2+k&SyN|4M)m`GY8UFRm`Dcq87jQOF_fFP3 z2i1qTUB37!`&#vhyfnhLYuYZ26?XZ^w(X|hCxK~dIlo=ish>}(f9QQ6LRgDVFeco!+iuJTvpziumL>-kLn)9sL$f3v8mXn_jTBJy{c` zis7~!6!ZG2f@KTn>H%`}&%DMC5I@f?j%&}liaQy9rtuB-ld_$kGBv_(2Rr{aTx;1^ z_-3sd_IT*xIQ_ZmMbk6S)5URa^n@U-eV@$@=oh_{A&3 zr{or059$xq-T^Xnd@`0g?^+gRPeXu=1BDxF&EOe!GBT@M^mSmG>>52cGGnj)CyfoZ zxu`Var&SG9%>~mWn=gvT2b4$3Lb%NrlfTc~eqtYoM+!E0BP*gzogm2lZMB0pp?-(rK}pz@U(0jkBo6X88Y!So-}rL z5;JjvopeAc-#LG|OaS4ERf_t+K52yVF}lmzpNQ$W2UR2`_=sh9)| z-0Lr##fy~l(;xwC#tGoI*ZRrCyvH!LUqAJP^mlHq-~ar(8&!$J>{+=Y1Msy_d{^>L zE#5bKx(W=5E;xfe%PFc~YR__9Zk#`|T(E(2NZaib?uGYBmV4sRfd+2aQG#XbSB4@zGhafXKK7jH=;&@p!ythI zP0*217pmOUNDMbH5K?&*^w5bv5g-x1!TJarRR&(j;E|oC`3^Rh%$HrV;;kONt zaMYgMBrtjj42?`9M#Yx~J--}Tt4M*>EWNk>ol$&B1{b<@*$+tI>zT|YTXw7}z$ipw ztYdtY#O!LQFPM$2_3S;?VE1l)MQld65_9!O{Z0py?wnIOK_Iko?8w8%?_h!g2_~^_ zes3ih7@RC6MW%5J`fAA_SZK3HndC<}N~F62Cd7t6y_1imuBTsooEuVklWr=H!`mmm zikMF{D@A~xz@3Z1+xFAZO zI<_5bUeDZO!9F?fkhdcxOMk(X)G|g5&2(F)F2pk7C|SKf;)VJic1i%rrTjy(8fPSS zBWO!vwqC8Q-V2o2Ew=KW-=JV0zIOg;+baGE1|l57KqHpybr&$VSZToWfD!4+0sLt1 zdf4Rl1q?)qgZO!SL)1P#%cY^4hlDu{bnmAd?{wnF&m}jz7;^=NWI`MaR5>Cw4hHIP z7favoByPu?`GNYe->p%=Q6^~u^X$Ct;VKx2F)%2Fspo3bKOMs3^R4d2g#tqXH<0hh zaSle?ysG;^N3j&&NNFRMwJ+_@bD;K_k!g-%iT}BG8?oHDS5>{APi^y|?qQV<)P8zr zkoY%4{7wF(2J8tFCj9|NYGa zaX^6Y?=zRmoPl9S(P!h9HI;4-t$pBhq3Uq<-Mcda# zF$%)d9Jt|Q(PO_vf))@YF0h)@eFK`(xY(tgZqzpRfyWm8u{J~ypF{l1`*(34YhK~f z>xnO%bY1mM7OAwr-B1{8EW8_BUf9-mtsx>g&O=1zExMt3E#3`{YuKcr-e)#qy+OiEE|RRaqf* zt%y1DUW==_BHh(&sds(X$^GTG)TIV@LxnuN(wMK!ayk4a21SEdaAky5*ky;#s<47ZTdV9}r|0>Th^UDyUT;|Mhw&1@W&XPy?FHLJ2#@rO;uf?H)rksB$6 z_x__<0Y=stU0J%d0iNFy7Gjb;PZ4mOz{^I!$pv2L2zbRNzr>YZAs}G*g@F11?-l~) z7WkYJutUrh_?#x-5v%MB0lzKqvk@>W%4aSCL84C*5W3AE;3;_9l7Q!u{eK}~a|OIt z$PNMBS_yci(f788I(@H?V;KUk3qRXplHx^8HdCkIsiNtWiBsqF&Ly`q`q(QUG=3ruPU{2|z z0T^UlXFJ|1(iSXMO4t-cf)m?FDKs#XQoS*>nUun4 zRfHjUpR|>ff?^SIct9p4V3jdKNk9;_ihzJjO+b)NFaaTCXb6}tSr|q@K&B-i@D@uz zkYpSIf!;&{g81|V1R~Q32zHi9K+uqZf-bL?5)drPOiP_7mlF^~Z6P4wt>oHPaSiqo z5Q~q1ptlAB8jN8!0s@9+0-BfaYoQH_6I%%g%0k^(>jO|qKrnkH0f9&r0YQ>#3L3+M z3E1HLyoP|ld>8>MUEa_V5EzOjAm}ZQD@`PzN))0eAjmhJfS`*^0s@=YRRqLlPry2tjaC8zk+Ho> zimc9%erLzUw<=(Y6>Yuv*7nUM;SClyZ&r*jYC1cs=;Rk{vzUf>hOT5A!c4J!`{vhQ z>Us&rsbn!4-A>tNvkhVTd7EtrLGwf0aJSbN`PL7+UJ-mhd$%NG-@p8;ynb42ebu)` zFg3eIl5yO>faE2guU1wm}V1O%zX60p*FY9ax_OY)ov)y0XWq!i4(oPfYf zB?0T4pW917Jh76|K=}<^w`Kx1J0~G#8sGha>)d7^TmQX z{OZPQf~gDZBpHnZyH~CIX^GW)^G(6j{4Rk`b`8dsSL2 zeE+E8wqUBMSyB=X6V)PS4#?w8o{5DN zl-1b?2>F0|2-`rXxTPP$VgQP(NvX(tx*(JwgLh&HxV7iBLIS4rOsrwR!;=G}gx{x0 zArU$e<(EZl1kd&rta4$xI%ct3&LR;zb4`!#^%4Pb4nW%CJcP7`DgFxvSw_$JpsMF) ztkzeGJfo{43DusX1;Yu4K6w>>EC?Bom6T!zM%WoBAmCQN(}Iy~DQ1>{Mi5sFX{)$n zARq|FNe~B8!sB&`Un8FJA1XXb!@sRZv7a!IKR=!^4q9X1PCw1;Zz_3!| zI<~DmvDCR6X$y|!OTcWc#E*b)SY7;ajtP10@CK0vm-e2zEYc<8H9=3+C2(QYTGsL* z^lAtQ)~qEUp0)`H7OE#8gr`gbf?*p7h^HU|LQJv{5PYYKfH?FL5Kn^)xO-i5nKidd zLSeT(|fAuiX@}YiSAXuRxY(p4!SRxy7muA#&aP-Rc|g^ZS{U@v~cRGAeW5cTY{>F zj9F`)+;;*LjCRR*`pKSEzXrc*o!tK!;ndwTphaP?sv*l?wR*qvtZ?c-=DK7YuIX7d zq~B{+@5i1KPW>>~CF6&)P_PRZBteUppoOqk)tkZPR__7H!m00IoKvrERsCwod@34&u46Ic>k52+16W%Bk23y=@~natm=cF3$2sQ|3p*!W@S9(?o%~9 zZJIULD_bx%;fQlaKebPlbM+x_r|-~IrCyW~Rp$oxL#^ILHYhj=1?h?^=j0Jk@H-UT zf`Vo!2#B+KJ3T3wsvO~*5vB64auyu+cIrJ3(KHQcnLdvNVGc9ouwY8>ycz;-?Uf;1 zKpH%LGn#-n8&KH0X+2pGqNv)71-E)3Jb+}+66vRP6EEI%!Rc%yH zf`Um<@GKPM;eyFf@C+2phJwAgU?o^n=f;PA>X?k&FF2gh(@Def$y`$eYQ8M`#w3uO)_P|ky&B;T_=yP4Vb*X zu&aFciG-7x<=<@IRw8;QY{(Gb+~Pj(H(GZ+ztK&SG|P2PSlP?*vuYcsl*f0IZ`yM5 zR3`d%TSJMis@FH6zD1MzeAH-pJMB|9$@mGbbHgO^#ACIMQ*Dd<<&8C-H#3#r?cHM1?FjBU+_!Gj zj*E?P?~b3KkYqo-b5Yoai|4J(*zdOQHW@z-dvmyN8UiZ9{X`S-s3Df_g?!Duhy8i$1o53YOfH2gAMNL?OA|T?d+6oH)>m})T*`Z_w~9N zMBi;c@89S5{pXv9-jL@#_srLMt@AqPhMaQSHO!&&lfA#TSAI3>kfrg`z5A8~cFz3d zr#kht4U2kO{B_OteI^l8b1z?2L%I!j;P~%-+b*dbebv%f6}4|^eGNzcrPY9{*{wHU zG6d4e%d6$H`u@PII{3z{h}Daz+Fxqc#B#r5`l&z$5g*+0oW z=Gi27xksXVL0Y1F(Sbzw(&vfpWgbcH6=_NCl?RgCtDh&i*LWnmH>4%IHyucJZ+)KZ z-sUmg{Ylz%_ZJ7IyQ(>I&u)XNq6xCq^sqoWGvX&AO4uUnKHb|Z+{^h`sI9cu-dRR1 z+upV88Roljx5vWh@q%5ZVFX82ZZR;1MLQ+jSspye{xOPCkuljd6L;KNQ&P#Pt&IG- zx2H_Zj*p!YF{xI`yYkewv_5Bqb6L_}&r}n$kkH2QldoBKuL$JVR_*NVk-S=%J8M)# zOntnJdmA#4j;M1e+2t)ev^;;VX=HqDZFk<0mXf16XFOf}_hANKhF_#JI9bX+gBetf z_m02}GS9>xz#6!pKO?My8eAl2J{Y7E9pr*vRCf>Z)3%MstamIL98)Nc5#uuT5HLR)!?Cw3^zzLSi zI37(tOv~2s0Wpi)SWcA>W8HIlJ4u5|M0Sajf-{{WmsxL$ni@~IDZ^TYMZ4jY5A$aQ zxur#C-5IH)6&-C3k7nC#-{8lsO?)|F$biNlla8fNOx~`2cg5|F{|o2J8yd)*mE<{oHb+f!^GIrk9?LCdNt<%{9DkJ zt=E2d`Qq3ekLIfxKIWD_bV3%bJq5g`Mm8ras9dMyZx@QBa7`thzA3YTSs>pC(zG9e15vx5t)LspG4rY;D-Ec||`{mup7uS!4EO zFTAy+d&inI^KIk#T=I*%*`uoR#`fiss`Jw0tx0}VWIpT9c>gJnl8zsVJbn7%%q?D` z)pOq2?r%&u9=<+t=9}VLsW9e1m=|R=-pl;b*zlac8 z-r4(=tgq|zsbD86E@Zu(Y!SS!q3<7$=w>`pWiGfGHRi;XCZXfd#ox4N%)c3RqhtNN zJsmgv94{^2w&&;Li{q~6p1VK)ZqyBRUG~v2!~M2cY#SKf_NxIE4ty?)Q#=~govvJM}Z_WJk8$i~Kmcayi?SY>KEXwQV>Lw+3gMNCM^ zulrB$X}tGh!O+F0Z*=&augt9sv_3RK9+h*{sM2F)<(a>T=JH%emem;f8eAXV+s2&X!sXWUg)qb&b8B@2+%dDGQ4YEm@o0nlhVv zz1&5S;usk0=5p(a&8O+k^6;|V*Sxtdw>YUgO=7ywrZ$@N<#pY2qf>?l$qV>LAII_- zrMx{?Q>N}7+nD|`yU=Uxv*$js-(2lUDC0vdzTp7OQS9yxZZWepVMFLap!l-6E0#kr2Rc9+_I438SW$U;*!ntSKhs%nqZyE~rj+;nilo_UnWe#3H5#VM;#B3rEiEY-^p58 zw5-4t(4a#Xy|&eL9$r}>dQeh*ahKQp^NmyAtyx}E9x>^ir{kfzY24y^vVq)3GR zo9xrLM;+Ph@$5$A_YZm&S|1qG zRp0I=;dO+Mqf$qmH*u(CyFIzba}$nOU)K8Ac_SmWaGl&ec;n6`uGP> z`F2TzVy}O7LR0Nwsq;53jcUGn_M4NAyPtKgUVl5|v$uV>u7CLYaNM3NZ+_gp{%+^O zA`A28tH+o8*)M5sy zfMip=fTCKmPi)S%X@2>#^v{yVbC2d`z4G~k=FMB)dQK~OmGttc*Va`JQv;{$iMzFB z_q1ksr}B`cH|}OX>S88+M;a~P+}wA{)_L1Tc=V-t%?~dYygzuN#JPAjwv6Pn>^#IBw)L>S`Zx zZq)ej&QX$0Yi*aw%)&}N`Cl;o$nMhuCzRB8pXPBYbGOIrF{h&QmWyvr$yonTwrFAO zl4gM!84Cd!b36O1F}lR)g< zI?!AfKW{^+Q*(31{Ftph_I7hx^~2nNE&Sd2D>4>phIPxNS3chg&PFu;vS{I$`PXmP z4*7P-jlCmQ;3S+sb>7-#N%I1Kh&*z$W6+o78&2L?db{z{g&U`q*#D6A==UK@Zalny zc#Lm97}GHwFOUB25kD$6q-1TspU-oZ&m~kxqt8I(A8}lc|FXshM zG9g8FJH0!%hs9pc7+ko%TOH~)0to7{zq79Q-;O~bef27+qy>hPVZC7)_`7Me4-_Ylpz>)F?~0K@;QUGka6Zi*~P#_fK=#x$e(1-ZA;h+1ux~aW)jB z>>3+)jOK|GncF$3#bg2)ZPE}#UE4mG#+2KbmwX}X>7eB#cijk zpx{Z&Q<}N$%`UW9#*t;YMD7Lt!CiG@`r8vfxlO2hHFwQ{3H>xu=y>ebD|L^vuFYEd zta#)44sqb-El&9z9p6lj8GGdX@m+uBr;t0n=~}NDJyKG<-4yFRc)*GC&ECf&4<2bu zJREXgj#|K_prIbg>z8$S5B+0a{=8cr8 z!|6IS(CPHE^dRp@%P->nzmkOY8q&h80D=qJ)!6*g5f}#GyBP~UVjF#iR*I5+)*XvX zzUCB|y)3HN?qQk2j#1-AFKy%P_FPv=sN2gpQSL^{y7g7r@%<9nati^YEVSuK^R}nS z-$W#R(S6(iZvK(x`$DL=P4k28o2HhSLC?nidGN&fpkE&WCwx2X3drk4Z_?{-CM|mR zV_4qZ#Cfp?CtGGWt}XTGGkzkIXF-X&C)NhVJ9DKjEt}SNoc&ux`0$vaphYiP{@p|G zEx&DEdcI@OkjS1pPXDs#*woj{T3E{$=ouGG*=>zk@f)TL%kN0q7Ctl~@RHYBac4k^ z#{d9$gFFYU>d06))wmyHuhrd)&)+#L0m`qNZ-3bf=461+bGIXnSzFQ*G$*iJ{OxUA z$+YIQ*GHeb`Tp?u*qDIVzsDV2e>dCl_a$3TJ$pGjwg)|dr+jmJ8gFeT&+2iYX>jFQ z8wM$}Zf@sxa_pAawX|{O_YE$;x+iqt<=N}U+uAL8*W4kQ-&X|C@b50qTOSWlR?CZm zPfv~nNbG32aJ`G|i0z+CxqEKTT__0sT=mmSzi+uN`5m&Nx1Pot?bCQ21fggvA&7Q4 zA*%0O>`<~620P*};?J$kpfy-HT|V-I?6B9=0XG_tzeC2V8=K~ri?=R40Tca$Ry#&* zmkO7j=tv4!@~5AU?WwX;N>^TA_weO6aU<7N*cAe|no>I8__H4m4~Ybo2h`%ByP#k1 zPDb`U=kA*+^PA`HqfMS!*E?k1Cmf0!>+}@e1K1bT@TkLA>mPR>+o#@)T2t-fqDa)Z z4=;|J*Zjq++5D+nKYg6~+p#B3r_Y1UG;;lciGS0z`*r*^Iw(&ZdMeZ}q=Ua^25?T( z>8I-wQ#W{xUH|x6*5J+aK>2n|+MZ5%ZEH@KEjT%>5n8apZtGV-mbV1y>*pp78RBVa zF!aY6-Q4d9)?RZy;ZU;b83@_MUX8$V-#YAGzr+PP0vOr@jS_M6{KOVt!e+JgCAr_( z(IQ*tsB06g7#w3BW#%Ju^vN`C;^$0!eIxXPK`DN0yXy zyv$zc<@rrr>ikvpB8J+4GNN&G%)WrXZxj$wrqYjr|CtM z*E3OX{|&+8231~3tm(-G=Da$(-_d?aqZ{YExjl5i7n#5+Msu6%wwId2y)PhFuQgXw zY`GhkDSVgNIvn?NbHCrT%X`FzNVR-?v8ibyqwiiNvut1Ffi}A#HXE-NKl0lf8#QyP z&8C|zkNl6_jLKMQv$@^&ap3vbF>|)sZ0U%89CY*MnE9t{w*FH5ct}U=*w4PV+4gql z#LOpawj7N7N?JUA-NE8ro^v}QWOfraTrS={@avAK*&8P)jq-(e`!>3Mu^ombYs{v( zi()Q%*)%5rFR^HRjQs;L5u1T41thZK2 ze)Gh=@Zm$@w>lfl@>;npXwv+#%~wYSeCv_1{(MK*J+CWsWnhYTzXAI7L67yP9|m0* zaa%eDZ8_Q0NqI-=?n9S*!UzR?8`v|y{o%s7pnHAs(=VtX%{^*n{pasJ30C;GZC`OR zyrTxUCuS1+(H%W)3eR6y$r=Buh9rt9>cRWUz(53r0>3g5;r!V$C zxWLhB*JD+M9HD z^rYtP6Tdz%*Rv=$GO<^$*z=L|e2U>#|Ag4axYs_V?fsH{HVH1xNItTu-D7%C<9C-A zT=$*Qtuf|Y@b&J;T1O06YE>w+z0W@%6Xv_sYDH@FeY=~jVF9PCR?aTI@6Zu5a`5+7 zs}{E0cY518a`>NCMGD&olu2xOh?Di|Wzi2@1UJJ+4zpgfy7+->-`G(RQ?1u-XnEi^ z=;o-gORbB`Z6CUiiXA;+tM$6Q(GUB@-W>huDeIC$#ScAFVCMo>u{DG92pO<8iH$e zT_C(LhJFhU94j~Ey>f613*P0!J(mgx_vL40f&{@s0<-z~*=6~H%M&brqF?F*r^dsp zs@f?$jm?*Ghc^M>Vbj;(#b64jJ8keHF2|<~r)2&(IH4|Rvuf}~iL16DaF+c7;{~PT zB0G!l^gmyx8T4xsobl}fOBwhkgNx3NFJxqNt_qH}8(bMO6gmWs-Fpx+xB!0E6`nDL zmgdig`oNj^@Q$%kEAj@Og9m5pRg2+8O@Y<)d41X=@`4e0A3UfHn#mf{6cPkIe6fzp zwTI*BAV|nK0A7Ir;|s3@fY-LU=TC!k>fl5~IJwR}Uog_&@}C>objwva(A5-yx-zhLv418N)d(D4K@ zD`TEXa;68BoM~dxi<%|NnwgYEC1+$&8Syg`re!5%%Tm+DbF(wDlG2i7bCSjoB~cS2G^Hat6RTBtZ$>@jT` zU2rNsoeB?oWF<|XnDg%+>C^E) zg_mi;85wEB*`YW}5UsA17dCU4%rU(<;a)2!>YkrcUIxJSvAsA^!!PmJzTDN+C1Gft zUmeft440J@>C3%34gk);I%)4~T!jxy7*cal=n>t+n%(@>mpqsz{3IFwehkXK$k5gjQ^F8~8g%WU}41j3JxAN|ev?y~grWcyfMZ#w!Yv73t5eECo4yxAi%Fj` zJ2Pz>ilJh@V683(rm=)s>8Kv)H1q;Kc7RuB{It7809g z!ql(vIDXQ_ASszbstd#nlH!mv53gbH3!zY`LYdv?0*519m8fZyv3rpfE0inZais|Z zR5jcS^3vY?Fs`W(@|2i2ar3NL33zu=f)|U&EwxfH@mDmpc`2#E<}u^>(Gh~ld}S&nqJsxnACFB8gQSPF$ux`q~=;oF8S zrfCs3#P}6>au}|wX)@gC>C?ml%-3p{0%%I&Wy~%b%xSe^g>Zv;-1wcG9DDcMGL}m? zN4}D5@PgIBu|_I0@+Lrhj(m}ZY-BKIl)s6!RK&&nC+F2*o3S2ZY;$Ft6i`iFT;bb> z9YWUym5CgYdC_R3YDp?h+o6pN#se;MUVRNu1>JpEz?4-x3olAboOw!Zr5bkg3#?SZ zSiiIcH$6kAQq+UQ(OFj}3tEB|`? zLxEx((%iR<5^*wF*rw&pqBFeDWx+J#*x+? zG!-KI#MEL*{(+}+eXvx*RjQ-(%w8|SR72ly?WE_40&Abihjxmv zN$w;xqr?o_X|CN2Dx(N`BcTnO@oN^%tp+LOcUc?-Fsuj$vzJQF#~neCC(?U}RWSp8 zz(+%+3E<=B^LRR8v?c z$@tGQ4WAuHm#N_qC}+DQ<}hSkLlQS=n3k4jZ5DUUy`chjKxGvWd?k+%m={gCC~4?v zM)u$y#yP+vj?JOxRxJVJm~8FJPv_KHa+3u)R9PMoJl6rG71tXm-JOEr7S?030;cMx zK#@GIN&XyO^ieHU?t<}76LCm}URb3G*gMbBk`+aSin)n->psEA60;5)^R~7rO-h)| zhDwGrpDomhh>JD($YiR4_yn5tUAIb|k(nKiI#6G0`i9!$o7jc;9 zA&d0|(rGhFs7!jJ^ltSjVCc6G%P4}Vf;@F}kNJ1?Wq1`8cvD$4!oBqrF+!tg9HbSE zO8R=3z8Ou9G25B&tBe4yt-4AzQe_21a0cC@7T!Sm z3pRyu_L+fT0Rat+JFJ(dN`5a8l@6M5^8$F*T%7^|t)sO9XAZgV7Z4#D?M5-tdv~TX;ndAiGdmfczhwwN{#Qy+pFql`LjMfx?-D%mSOosg2mr zk>$Xz9kbVqMVc|EYgl2Q&M7pgA*dV3=1>ZK_oA_;Y%pC|KB_n^=KM^?Y(|&f^*)JL zWT&AXXsi1jswia@maC@Aoj-vLmZEkA5~|66rjSg`G7vX`$jcV72HtFs7}sAnuJoy><$V7wcS~fH^u0*x5ROf@PRnaF=7$bUVMz1pElVnMgtv^qoc?i!kRe~;{o z<$xs?(7I2S91_bcgpjxiNPBW#P)!Zg5kE3Y`%WXRZiBo6_3H2kG(%@^LKa_7Ux`qp zS6&yr_WgifThCKvIYe->!8mLR<&+vw1It4tPwS%B$^fpOUMoOq>&HV}!cf9g*7A33 z46S?oT|e@%9}W5YK&Zb?Ps6roR5VRv>Nj}`;vZ<*;)iXq_@}lsou{a7U9{SH$(!Av zAO5vKEwro>-*(M4q~JFoe9h?jqfz|o1xoEyjSlfpF<2 z&>aW;A`UvKKPrG8C!RsunEJL6L;$a{7?dTjN>E;^_<|gQE{la_?jOK|dR={lR-8J<=h0^syIj^pO;Y@mS$Ud)B z48?2|5F!-x()42Im>e@n%)54+e3|s*yDN;K42`2C0ehsC&hn`Uo7Ba)R)fB;nV9O7 zmPBEq6%V)3YGppH+q7f<$v>Q1PDm3x1DTIJTi0Ifw;b3JjUVW@#Ip?M10|VQPl&PW z{(Nx`PT#)AT;i{n%X!#;pkEmD-@oJsWc7FX+5T&O7El)(w%VNSv0}DPEpgO#VCWlf zs!&t|nu%7wpzFh$ZCIb~^z)2d{lm0Qqh=3|mm*UWFME=}YjfJAxeW%|h)jcfZxVPf zoHV*VO)n%(FEY77dt>SRHM#`qeOh_}HA2Nm{AWF4n1DUMOB*C(NOiZodhhKkFs*P070phYnztDW65N*LdK0@c-ulBOwL1_lr;w!Ydh-KLR22g zkR3@n#ggsT&4w9ywYE??E5d$s&FcYR13? zy{lvn8}o|KlBFl4Oq-vSIz1(O4wjR+&5gquK8t^=#(cZE+8)yQT9v85_D^feBmPVg zq5-HP{4-U&&-;Vx=nlA!6v2djwW9R29XHRsfO3|b-;p%^U`B#YE$7vc>B6U1*ealH zIY*unkRs;>ur2u)eK_JwlTk2@cQRlaUnrDio&eGm7V>$tTgk1_LoG4~zF(%%7)6Z~ z-`l+g`L18G4=;;Tz@U#Nn4H%e{Tnu$fe5X>2d4)r8AU#Utv(X9q5bYc_o2qefqn&@ zT=>$tjHa~D2pM%+Gh>QDeCp&)Esq)eSZ~0I6&!{$y9kN4)V1E4fCr}%mJ`Tyi&)_X#89o1gqFgR# z>=L)O5LUt#hG}_b_o(3m|495jcord$-Y)DUqNHZZRi2!Kj4G;zY*iN7!|x2aCr3>? z5x-_s4Ol>e6VXAWYE??@MAo#j-hBm8lvLFqvMic~4hvp7?a0W&YZHCd`F-M~=pq!4 zBzB_Luuh~@Saw-WifjX`se3Q5njUGaCa{rOz(#5do9NT#@b0e8=2_mRy!SdsYxa0M zbeTObl6X8mPt>qZtCNE_;|!mpM)e&2G!n4Q%k`6JEHL^A7^qe`kIO{TfPzE=NBeRL zmgrbunNs73Dq}IrelzD$J^ZN82!@##_&tD3ElK%<0G;9H1ys%agv*pa(hN4zq|BHx z5R@VObG9*qFZqMy6q(r-4V43KH(3i01oy~daGlfn?F z9Dlhaa?18D$Tv{T;kG>4K%zF(@w7&e(9Xk-z4IDQ_BPruKRzhmS!(z!D@-L%*Bke< zIbPwiv8B?!l$>kN3kfE4qBCrz-b=l2^$vzFsC7UziWv`5UNl+IRqusP=lC3_%g*5J zdFcQio=GsbC+F3noJCt+b_@h)4f2ZuG}6P7U-UycdmVM1Y5iEd<-6BhbH zg?@w2(P!pttMmmgff9UX{Arbaj~X zXLJKCF>xpD5gUd%zn~NMvO+(fE9P9vM)Pki`pMOh9B+d)_D5rY3rbPGn$8xOveM8#Dw$L+EooO^2;oo4PCQgV@dTOwny$P z&BUTWP-WP<7<%?NrgzI2!7_XF1JE7?$)-F`&IB&{%1b%&GIXCyJ6Dli?(@rr?(=3F z^opUc&cH9&Wg~=Rf4QrH2)b-6w7*$%b?P)NcdX!fT_0fMLa%X%fzwfdKz|$oyAgfs z8sFq~0aHOM=a^1!*U{2aBf~}-Z_i(uw1!eZfGR@vlFL}iL!35h&1)}cmsXd^L|sC73wdAU zd++eP&uB$iH=EB+CK;o0i?r`RuxQ8DZMG!sUTi4%cpS5VI>N7&j*XkRe5#`~h&B`X5hP#Bq2oUsa=iJ0emiiYRbTMO0cnv;!0zl>94n0oOAECXsieCK-8kB zs1|R&@@d^d4WLNI6-)GIej5NqBB<5wSl9XaTtqEJzR5IFg7z~gdQ6q`L$J>KI!9}(B z4X15L7jaetar#qE-juvK{FXhd>qe6S)kgbB^VWVywNpv;C$v(clZ!hBsN|Kwv}*^H zrZi|r9$02uz{)W2( zWY~eU+?YxG>&%e>)$3evK%vIEGs%!1J~yBToFC|n`5u%~xp7e_s+-zHK6>3uGM83B z>8oTO{!I|j|Ks%YMWHxtHa^BwLgg6Dms{hOi>l>vN1c^W@56ab)aEShA+5BfL=Drs z{H;|i0W6Djd1rSf@xXT<^_N#^df%oz-c1tR#H#z~CeA$P!<3bXIm`=>38P>e(;PeW zmAN1hR{m0==8;m0{eTixq;+MU$|NUH;JlBn(pwR%qYRZBwG#Y?H1Fr4zgx7)8}uL2 zg{O+mQ*bJ_X*FKR*jq_X5cOc@-0|0Yzl+>bYm90=7)i!-gZ;e22h`9z+@>XVyjRU*o;eNKLHigO$W)% zpx4oIP=O%5k^2Z~U+hKHHtGaO9U__#4A!A5X+rS-z!%%aWB!RxeZXVXDV>QhFgc-r zc+pCiUTu>J*c=%}5CUkkhVT9NJPY!>|Nevg%It;+*wBNT!y_l_cp0c5>KZ5jJ~E0R zzJPC?U50kE&VKadJY^JbKutm8hjlgZFXqsH@1(Csw`jD9JzX3vEQVz4O%o9y>>M@g zxn;A8KPKUD^i1k_RWq02qw^USC+YOqGP@LkZJl}TTZP&qgkl>mFWyZpE&J1Ot>9}e zbDzP2tSZ{c`;@e2J}_9dDbm~EqJd9+gim_OoBGn~EuGrbo5y@f z=S{mp)pr*J!*YXmQ6s)6wMSRW^QMxF^Ie`)Dx+S?F%@dc8U*NQj=$z257 zHo-(OR}nQ>>m1+uCV{G#Ny(ARz5&+|94EX247?e@=F%qQMUX53#1Rw?1Rp8C=PVwR z55MR|alZL!@NlYX(fYf-v$yIAdj)E!XzvYmK2M!j(~cof=0pQSefgZOup`@9JU?w9 zkKB^aj)dqT2Mk~;>fDn4f1TL*BwWsSvrQP?V=sK z)}a5&H^K@*ChZ*9R-Gt)Ap_5qHa6)?0ms&u&AX?aXJ87d-|kd=VBLNtU_YQmR}CFB zw7Fd6Y$&>teK}|%Kvz6jyNT;G5u%v1aZ7dnEVR^VRkZR_4OQ9I+%~RLpxU5@vp0!F z-j4buYmxm>KD}gvMzkt`6<_TvuOna-!D*#g$|k12mj@XzixuBvzlWgd`p(rub+MaD zUo>$Aq84D1(sg`eQ^^gS%ss44`zPB&R7%8K#Q{2Fx@bB9!6Nmd+$~MDZPt2+_PDJKM?=5CVF7y(8=`wc^z;9t zIFS^bu7P}**seISn_*%b$U}PmqdcVNe>TqlTG~wJW3&}zxI9URmf-TFF0=$?Y%3t?I+I&<0owwf%?n!>eo6pheQQ5sAuyCawy3uWlU>iljd>N^?%O zt}bXBY1T98wX6F5dhO|dUh_Ll^VwM1) zPTdbR{qUy97x?R#Ua(M4GshZ1U!LLYs^T(hITYI5T4ytB>!F;s55;ZSXY?E@K*Oeb z>_E23d;_($)j$JSDB#oUjOXoP4i%0bN-`Wt@VzhudZlTxfP3^SEQ?Yg_jq%4dE4P8 zi0~{>BNI4CwLUf9z$G*I5+SF&jB)ro`)WJx_rmHG^1DyX@0gR>{Ip;5ER0!$xGQ@} zzgZNrN2PWoCx5HHtuC`r#WH1O+fB^P%nFKu`Fp5^lB*9!oXJ;;E>Ss3vLQ31Ne-%s z7_7BiKF;yH(c}#evG@`@(TZZ9G3x7K1W}wCPV+R+qJc6o=qK}=T;@})b__gW$PS2V zG@S5N0?4)iv#qvt;v{CiH{>&`Hvyl~dgERsOA7g}86W_J{Q?9jRs7Ah9^`IqaD+PL zO)@Ntxn{y`V)$pm0)=CXxF4)kWbv`;N$h&_VD}WcLuk!qYX?@hs8N#TV)W!Bn-nRQ z@9ycgz}CWACFU5J7q#cL5wNz`+XTcHa&U?HVeaNwW^RL&d6>gfDk0X#$o;w2rJeZ7 zG#HnTK}Lx0o>YdBh9c(bR{ zo;#S`F9IQ0hj!rabKWTSi+Iu0Gg8!@5iE%-svR$9YQ4~9>8%R0Tto7gTm`{Sd#FY8 zZz;^FIIaOztmtmeJZ`Ls+ySb{9ma0fhTL|(vQQ_IM!|D*{_@};c8|zPTNH#^eZtXP zCkRI;fjqSf1retZ{(i`Kev?5F=8!Da8ivrd_VwAG>~w){jbV`=?bU;^b?wG)JfTc<-YvE_xY49|s~$q~V9h010mH@X$M+6z17(O<8XDZ~ zT6xbm47WUc6zs`)&-KE!f|kS!Q3NV1QMkUR z74UH=0(oZmR65E_mKRFmHd8R=6#vBu`TY6 zM)A>l6t1Oo&Ne7qlbIN=6otaI!UXH)ufUx9U^P0?2Tg86vHgNhd=_(7#bV+>GfbR< zi4~rh_@ogguExZ?9$IIKj3S8dpigYrk$QRNdMAd-QBr&h!bBXY_)?2a zd8SnZvQ5#+T41X2rD&p$n>4bG-88^xyQAr_lISe64z;?Qk*l0m`#X>kqsl zMPGp{R^Mj5no^dM594{&Kn zDzk!kJa~a8)l7j7ULfhb;>sR;x?QZMj8!&WVSlUvD(T~Z@c#UhGIZ(6M8x3JvUqh3 zS7nxmVdm~EX6sw?b!KEHAN*))KCk9-M&(qYq)rOn;95Chu>r&_9gLi^Za!D}Sh%L- z`ant^xuc%JaZ&v;e5-Y_LbMcE*6vZTbY)d5+2mcr)T_0eOS);>_Q^eOcipsI(ZszD z%e|Rsa(ue%oYc-+cmbwZS-=w?j#|F4x9E{M`QAhxt4#P_TC|?@E2R^a*abu=){KDQ_F7U5L!_f(0{lVL@8yCvUtt5G!JflUFuM zH+d(X>8VmYg+}qd)jFzxu?MG^=ZW+)I?k7Zx(CqG=LWYhmP|rvgyAPK-Bxo~YDH~W zfjM(KEZk|O#0{=8R+*bjd!6Xu6JD?EOp74 zx!#amLxLy8m7deIZ=ANhIhSEwUH~(o0I5C))nL+_R#r*WnHx}NHr&pTO|PI^A_M58 z6A#D4FTkIeCJ@oCW_O&a6lk_p+}-rjk}c+3hKp8t(U`c5UbLD>^ML+RDO3nPGKwJV z;M-8=)Wvpd{qef^(}^RxspQZ7Q{+XL=uW0R94%-0G_9y`wYTBC6c++$-+Z2PAaDd^ z8Jax=+5)jW^nGi6^BI;D_rZKM`?ETI^wR!{cuM2TBK7Iem!(^(__XgCN<`Ot0)1bz zUkJ<8_!2Z4bM`ikZz=m51_o$h=$|D8)~enei~+Ux`{=?|RpZrXL}hWhxfm{KUG?E6 z1N2MH5)m6nP%c7qw#)Ohu@0)M{6;E}QLc5diUwZx5$+blJX&2|xvfELAUjta;WFdD z13EExA*ll1h{BiA;PjZbk1ygP=_c1g)}FZlrF%HDARcefg5TNc5U5K22vAG0lRkz>}ASL)QNkzf{WO z{j7_H5E=Eb{l+#Xbl%dCvr2{ou5?f&yYiL&(eAJcQZ229paZ23CExNx&9_osJ}%-F zF&NL^=UI@dfw+bu=W>8|FSsrzF84|u$z3@JxK!!7x!lrTR0R*co#;Q=cpwo1;vqJK zg+AZOd1zZg+#<|3y=@te?7|%-e|H@FRmcjSpzO^-d5daxTGS)3OanS_XzFje_Y>_YwBsHPxCjvaIneIzDD0R z3%>CqqX^<4)We27j@C1J14hRhb>oE7dzwBDFq3|1-RgCJw8ogm*%0h0H9P+`;S8Oj z2_|xdU?Ol}`rZ7{fw_)$U~ZwWU(#1W3c5F)>FXf+DyFZa=xZ!}mC;w6Pg?!t0FSn} z+k?>FUeXn+D}yNgBQS4Pa`k%3m=Jq8i>AZ*Dj9*YqJT<#n2do zsHBRCT{Az?mkbwuP0w{6z4xK~D^qT}f#n}_iQ=d8ThadFyYRiKdWbk`ON;|AH@(G( z8k6NiNxXqSaJ&n|!oUp^!BZfsDeuISRg^q5X}3?ROBUn>Lrc z*YLAcJ{&`qf0xTV-l1dp4$E$~scj7(KaF-e=?JRfozbJo1JZm$=I6Xs3>A4oS*oTY zPbllgkq!uKQ89RnkX(=L`;tYZ8S^(MIK!~mQ?ryGZEu1*y`y;#&u-x=5M(N43hs?O~<+EJ(}Be z4hi-CqNE}RzTPsWm9^jXp6;nKNi)53n z3ssEInbH#Jh5-JHK7_V13%VWUZj4nXl`%gr2$cYcD&c~4N4b}!I_i*Kp)7&YeL2jh z5Ek}Jx<=Wf*lPK7I7ZuWeE;Aw?P!;_oL*HoSJ(2MFb3#n5@pA`eN5dg#oPUyba24Q zU{CV7Xr|5vSN3OX#6;Dc5YOlFFIJ%(ILU&54RUhZnHndpc3)(S@f_7{UogT^kPwy_ z?vd5rgSCWSZFfXTA??(}xPf5goA)r!k^%HmL8SKxzh%YRfliLg4+2=O)yc|TsHbY3 zKQ$>lUNlELUec&V2Hp|A`DncXP;gb+E!o6rV>>>o*#}YBz#71|Jtt=6#CL7)DD!{b zW~PAYWc>zpO$XW+e~;lC!Hqz-jvG1|eEsO3s&e>LjKThTCGgK`bmtLS(zP1p&l)=y9YUVzC? zVKRCPO*_48dy?KlGYAExkajyir==&oBe;n+qxWFkS2^uTuBP42F=&!fv?nPEU@TXw7xwABg!BK532E!ULkWrk@kR&`&vsY=hmpn zPeL)Vt{W?rLO0PL8AT9#;4hv2W&?kN z{AwWvN{U!ro9CODRRhA!3_}cxKGldQ&FY#)IBC|{G+|I$!PBQ}5sidh8>6}ePC4ui zxg+wFie>``PZmIUhi)^jHHN;r!-jcYp4^?uQN!A>Jl|t%0+XL3%@mtP zFidkg!KGHnr%*g)hODvT+|X*m`)03KA2Q}$C}XS4-1N4|E=QI89sPuMQ}b3{G3_4$ zt#aR?^$M-htloDrK?s2j12ffa%qJzxHJlZ+El0}``P}0M!D&t0<*`hqBuJ#tuGq@` zd(L0McSWg3*e?-qQZmU|7$gxWhtMm%dGd++97RpmF7p7f7exs;3ZqPdISF-t?W*6# zO0gBam64teGsrXAw(Y;RN+CW#>qfMHykKsp(ea+R z3=Fq?=@2Z!4aVGH&d6}i)Zm=a#84td?nWxKMKbN$4_ODv+VnA$a(W4e-d!&wF}y`< zj$%IH^s3AZ+RJ2)M0}KgZWx>O z3S+b0P7$iV7phmn;xhDjQ@?`{_3R`HzXK+t$ItU?>G0nAHaZgCZ}vGU=O;@BB7 zfkp+Uw>SU49mDodd(yID&E^3IH7xC(G^S?%8{K~-a#vXQ!U2Mhj3NlMSs~W{{Hzc6 zhfsr4rEGHsUrd4op!IXIh8_b*PCw^GKi9Q43EA26h&PO& z=ndJLJq~pHtRVQeOGahl+!%s<8tiVYy{7(XQ|oLe?2eo$bKI9^tEqD0NBh$L+kIqb z^xdf6NA^TW{ZISIv}15g|FC8snRX1=|2PKP=f2fEr`sD3`_yMi*(8I_z};nkH+KKf z_Ll9mi{^jZ_ODZPB=rBK?f+1hqg8)fm#_cJ{d`~QyYl}+UF!e;^~<6ERljJ*c9;HP zElvEFXBX_%JZC@?V2S)sXBTLA3PUkNH<0@Mj2h!)-_dxTbt<%T6R`WT>;IO%v}ZQt zYVy(7LGM}IS0>}}!C&%sw5f^1>*D7Idq#I2`CFR!Z|7!5nyy)Tn)omFc>YU$9{fG8 z`1d`m+Hw6+PoV!Yt~(9*w6;%w`H#8&594b1thUUK56k?o&)(41RX2{BLx#>0|9K8Z zu|a)pHT-o5md(b$bJ|PXI4rMOJlMMjzl*i90YnwZ2Br}!r#(+fs)P*`xai=%#)oQT zb%4>Xad-hHqjcwisEt@`T^Fk8aD241;RW@y50;j7c_<4);CXluJ~B!#>o$DU5BU*{ zY5#E^NTI=V8a;`z<-@*bZRDbR)O?#peWCk6(onQI zy(q(brHQu9`22!?`inP{s-~Ard2wxti%X3JaD(51zKDXK{9?{{X}=K=!1Ka zB;&o+M%}%p5AH>gj6bZN>+bPz*BdPNF);eM_jY(+^ykGVG~B|HD#kr+`aRijSip;( z8!~k5OND)GI^9;{5-(s=e42>5{P-$dJE8S=dYytSdZCgKv0Gp&GE(=k+F z%;LD>M@A6@`Yv^P2Clbs#aY&|TH5*GKn7<%Rk6xh+>>_G`|(669$oIZTxal1X^$p@ zCa+G?n{74uh0YbkYBReson2DbheaQyquu|Z)%Cz2M)O*NHiJleuol!qMiE3ReCzh^ z(*9$SxoszFpoHqpfzKpK6Li9d`*Q1<=*kWc%=Jb=xE zZ~!hi@$5@~zpa+jK|e*G!y>Veqn?^3?Yv^lGPR?+^PDTC)&R)gTLQqNK08#-REy|8 z{n^eH@*QS&ybvb1`nfE}6;x#zud)on2KY%3mD6OOELi-VZnYV-()Y1i=U!)CEcpto z)vjc)faMMSV*>wSe=w}gscxXlTkX z`E%7{*6+g#hEcz(I#~6?D~1uAoad}!QR^_dY0l5AY7u`pVV?7nwO<@KyvRPMlXXcP zGo0s?^P2TmykK~lN6s78Pr;?bc>{9Zu{wiWhgZhs{K+Z|do%n+YL0^aB+NaWw;(5n zy=G)exO7p@GWNdkitx&fIbX0(k7@`n+mf?_{dlzdsG8QCwd}8=!bkD${p`~*4Ws2-bH8NE zCp{Tmv^V!F_TfpK2;qU;L+l%q+#`w(<{n}HHYq$J^LXyp?BkOcM3kM(t!B4QE{%|$ z%0140JGnZds3G?xdvjcCM9qcVQ|!}mZz5h?%&lSHjpIkwT+Xd!{}~q^+0>eQhFv}- zC6aeL_Z<7ol!8d%-Q4r+ds8YRi63$s*?&!Gh?I2XUSjW@`XrKimV1SLVJau8?Z@0} zZ1uG8DEXf_iwGhKgq|~uoi(fY%@Z1d@e>jBdTc2C#`z)9;`se3C_)PYH9)!uVjSU5 zC4BqCw|fp;v>!}|9|*i6T;O}*0D|ZR-+#e}pa|j?;3#i51CDDhh;v*C;t}BJgW3Z) z${HR17I2is#{kFYbT}#2;AcL(cuJjxB!$I0|bWJ{WL}d3*~v%1|9X z9&jwrQutv#rvi>V(hhLsGrIK2fIGl%XTTk`I6*-l0gh|t!vME8z&8Vq^@#l_pY4ES z{iT3Ix6t`xK4$>OwYwa^abG@Nt_MMU4>;YQfb05`fWMytj_uk5f9u-?=^4Qq{9A*3 zFn>PaSikQ8$97=;i2DML?Li)kdjfR01aN2gZ3&FR#Q>iTIMReS-~k5s9>6`}cM9NM z26zkLSY8R>y8c0WcmcRC;D-SBGf3YngrNOa4*~CEfR6$k$&>5zVYv#xabYk& zPXXQ^ek%ZnZqc`^18^(&{UzW$Esphh2RPRMTfhzL-zQXaM$$9D;h#RA7{Dp`?Ffy) zHBfrIAfE+*W4(s}?yki#;Wogr+(f_)%dG@_AmG`6W54S9{~_R*?>@jO0~{1gdb}$3{z>!|-0muAw{bn7esozb&vA#OoA8@3f_kbJDyYYZS zQwaf77H;YD&jlPvnTP@$NJx)=4Y(!zUJ5vhG+qAnfCDKKg@B6<(vu@K^}htTZa!jv z_5{2eqc*`)&Xu<&z^weeEA-5!}&5AaHM-!8l(Fg z>x2EU7;voTP{0lAxlD_X`Uo!p9Q)xDzzzFhC*U|P@qinS%Mrkx0nY^71-^CVwg8Uf zz6Nl^`Di?fAo>Ab4>-0%m);w2?1!HL*YyLA*J!|T9E}4F#t|Am4RD;F_JCu(Fds~x z0XY8d2e@H9mjd1$@Ib&ZKVAA_z_FfDfE&{1Il%FG1>lDL@EzbVHHejfhidb|ezt>! zFU8~2TXBj1StT%gS#$MGoO6X16u;N!J8_Oo%MCS4WahUHR# zW4V_BH!ODu;GY8C0r*6NeAa6789w;Kd=6;y`4n)&d>R1n2hV2#-rpdfmw;nGZvot} zpL;}U&KRr%9G}y*R|Ghw|M8>rN!s)_Lq1Hu5^&_FLjlM3>F9Pp;5hEFfE$kcHNdfc z3cx+I>9ODb037T0CE)m+u0FlSXv%8=+^}6yfYWjdaGl)5d}acU^V|u9xsLxMz5;Ok zEe0HhPoIA!;8LS9#j>!#_&D2XGu08Q_NFcoA?cHy>~(Z9drE4#2UUy8y@M zboDovXxe!J@V*B4K)|toUjc47E>ge;0N!)>hyAb$aBR<5zzzHP5a3w9EWi!N@dn@y zfNuaC>#M8JE5IrET?IJylMc5Tr>Xx9zzypk063QW9&p2QV*w`t?J*Ta9^xG>>Qu z(=Fip0mpQ&;6DZb>3#tGBH-9BHVlpLl&%ld^BUmT&piOQ)~3gHJpvrQh`xa9`V-sr z6W}Pn1^|xF>Dt8xCXD?M0=Qv6*aMFJ5CgbjKLl#i&-p0*Sio^iFlG?PN0*y2l zE86rw1J2W?$Bt|VoX!_;EJxSRoKH0Kxev>LPeMNZ0mptH1-Nc}F@G`OI4)BGHyoE( zz%gAm;5NGaAz`{Uef~%3^R)PukMONp{K!Xml@>q$5q?>V|L_t1NQ?ja5&owZH-okq z*1!8iO}m^w!o9S3z(;r(;K;Y50N3+vm_W0&=@)*Kewh|u^$}jK#dm##AJgI|KEkg8 z?g`~y1>8&5&rt54fOp5=fZOVD=zm*Ka*#f3j125Mz&*8izmM=REiV2Dp9Z)qn*fc0O=<)%D_kVCYaMqN1`5_1Q#+x*MuREVQf^UEt)jx>=Ir8a6}MKGij-;=-Bw}Ijr(hMsi;duMny%oTU1oP_vd^+ z=ixl(Ip@K9U-x;{dGq=6{r~rT&)L!GS07RTr_hVt)|0nypqKgi4EpGLL_EJhzY6`2 z(TCMv`rCzj%=k)TQgV;S9P|_;bTxXr+$121a`i9p_`eE$G5$Nz7is)5zIxCTEY#_V z=ak0t0Z%;NKwpag)96cF@g(18;`y~Fo)ze2eptd{<<5U8ddc^-=&#Utq`W)OOFa~# zmwIyQ^RULh8@;={Z_)UhJn?^6{omyAe^&jU@c91#y~O(rdUt+)hhFkCir$@{%U)s5 zpMQm(|CxMJkt@+(h5Vu`9$8o-=rMdro5j*@9v-1tN!aAy`}medi3|G{`VgJ zLDgSyQEdEgQvJ0a{gbLM^5{RS`a3=PZ>he{qyHItw$Y)7(dRq$Kz&~EDpTHmkN-N= zf6=4gqWZHQ{XW(I(xX3$K0bAR*E^T>Q=xPZxTbe^R(vaQEjv)vxgAhg6^E(T}Nqt4BYLUfOXldUrb})tT|wihdn- zXFRS$FaCWV|E;Qj#-p!M{l9zk?dWrf=V$2U{@98CBj{HkXK<4w<&O3%)vxvFzpwhu z9{oAh@Ac@@?lEei{LqdE&`Udh1HIUt{J$MNQ%2~w=y8kY z|8ewEo_3qL=!%^AB%9FXQDc=&y0~#J>Z582Q6)JqaB`FX?^-y*u4@^inV1 zL@)Iu@ymF55`7NxZ_&HQ*H_Wsg8oWwj-+2W{^!saBX34u2FY{n7dYKoUd@gS=?N^K5 zX)j4PAAKHv52KfK9RE7>Qg0tY@2#uy{tuvc=YNm-cY6F^qyA5L{Q0bt-Oq;5-|WiIX^rQno_Le5(=bZXq z#o%@4^WsL6&s_BGe6B?={p3#c6w|I}so-MtQqQ~5yZgxw^fDfr&^!5*`g|>VnP+;? zyVHFyda0j}qj#tKY4soR_f9mIL>fh|~{}=R<&$ps?@+tGf8I9*do_JnBFZuZjdUt;QuJM206aO{M z#{Z8V{}S|4|7k?#&i}pWMZOumtUuE3lAl)eQm$?2!>X5#@wmo+0KGdupVast^~C=z z^bD=g6X=;zqVfMkG6MB{U7l7Kd=68^!Wcq z{XgLGzxc43H=aRH^_qH?zK0%F=u2EEg3-f>>c8jF--TYv`+M~6{5PYQ`bnp8-Q|6g z`maIn_CKlqn?3%|s{boJ{uAoo?(zR`^?#SgKcmI8<0YqA|BL$fX#AJ5X?Nns z9Qs#{=VtWoct$jy+tIt@`8oO=!quQ(qw&lB;gTaJKX3NLlY?IJ^Q0%9ZR-DdkAJQD z|A)u_G4=nA$G=zo&m$3cKA%zl)#%;j8dLu=kNxB8ep~%-K<_T^wE9~f|D|mv|F7`)htZRy z{T{KqK5tY1cY6HysQ-sO@jr}S`t!e`clWpVXgm|1cs{Q2{N5AKH`G6URcyI_s{U)x zyYrcR)Rb$p$A2YyDc37K{_9oW?$O_;`o}%`c8&kjp7`Ib{?B>*2h{%skNNi>@(|8Dd$k3EgvJ&%0= zJ+s8^fW{p`YVw;Jn_6u z&8~PpgUMzssZlsOmrB(GRQsS&#mEsz2+|zo`0OdGr^(&XhNq z%5#@DTlLF5dQ0_r9{s(l-{#RDR{g6y`YzQU_2{2c{c(@}^Q!-lNBObhw|Cj1N>(S4te$=DC^!27(KlSKuQvIJj`c108lu5u{4|`RgdPAN1&lRp05+e^2#Kc=Ru-{?i`)MUR^DKIhSAtA5g>w^aW}kN#fOr!m>M>*28K zulMM?RKLNae@gYcJ^Ih1mwEiv=w)7a=BuBhmwBldy?b8zEBY1aPoZa;GXDH=)ni6~ z#-qgPTBH>y5^$-!L@PpW>cNB@lKH+%H|q58cZ{jXHt z=Fy+`52n1wJ^E`^f6}8bQ~ha=ez)q+dh`cXKjYEAMfE9kMt6Dn5TD)OvOM}PsJ_sn ze_r*K9{q1sU+>Xh@CNfd<`{aG=4k(4hhEm}r_i%ii0Z4*%l!OR^zQN4g#KFe6X>sY z`FEke5cyB&Qyo18d=GjlXA*->#+ftjKBoRxp?CWas{gef|55akZV`HSy1zm%<8~MN z%Qb$vzy3S=)yNI#!>X5rR=v@b>rLq0Yu|33BqoX7u&`j2`1->v??_V|BH z{Znp<&Hr=izY4uOKR;3bQjdR9rz!6}=r41X>k9Nz{sV6PG8Fvw!HZYnzoe%z^L(B~ z-+srYnoX4(ckiyruGzYM*QVx%x+D9Kw!QpFQ(ME41#9K@-PJX_@2RTUwPmZg+LpVv zR9Dp8yKz^|j*WM1F{<5LDz|K^-nmQsw(Q!nW7C%1e!jW+b_9Ojxe=eZa|?p~3vJVO z$%ju7a%&!_e~^Mz9zJlO;mD@LM;dBsHf`N>_)u$G-J!PKZAY389oW=d*V?+P;em!D z4TttOgQh;?4O_K7a%`D1?KzK zV19xs%r|uy+n%}kMG11{TkQM<<<9plcz%MCM@-3sTlUb=gSS7@*3epW`2JV#uW2~g z()LKr{<{5*4Ni@1bb9uV-8=7pb;JHP+hCM-pG|6x_D=QPwbQQ`#YLE4s1QCTIZv%d zOv^>J)%R8D*ojr;MtqwwVw%zG>uEqc(%gt?K(DWF(?v|vd3}8wEn*tY<6DsD)Mj?g z_8q&cH!}EZ#AoN`-2qceGzPmdatr*bCbz)19twQxp`g$w56lePH{M>!Oyu8cRl9ap znJH{zb@eXOAw0U=0#lW7YEzeS>XL-V8JNzopp*5EEq+;b5Bu%{#R`JpItBZP>5}s;skxF*tZIb z6I4O5Zxs|LsDk2R76x`6`;RoVHEe4>e1Bc@?ahbxKWH~haY;?h{UX)WH?;0Q($qqS zt!X>h;%J*?KUUXVbHEPgtVgcxS8j2F9#d>;&C~ZwOnv$Gv66f{TO|>n{!(J9#q>YZ z^d-@Wmox&FQrGZw@*iEG7n|A4{G40jJGx4I`&Nl(T$weo#J5+K_|{LUsUJ_RmHMty zrM?}g)YMco29t-r;aRS$F_NwO;;`)Ptys#Yp2U`VOEUY*zIa~&C!O|wgq$C;#p=IFMgfT zpsuCNjwOL(omq?)b8D$V7_T?A7_To|$i8j#4hqe+-zrb0`Vpq7_e7*fN-Z7ol+_f(Z ziMTPEpI@Y9GSwYF22B*XHH`M7=EgACM~7)^z&LfHYHc`Fzqz5g?vcBinwy&z^FG?r ze7LTDR|Dq=4V*F@tZO>Nfx=5jVmEiP^+%f<>KDpy-&^V)e&dlNb&o8V?5c^~@Z{_L zcyNJRC<&R--eF2&H-m3%riZ@d*eco0+_U|5dd7hx+^f`A*R?*l{SaS@YceGYj_Cf_ zF!kERWq#c@@RY!5t-6+$=BE91a=&x?(Wd6b(mq(%uGPVA-#%VgsAIeO@7Yzkpz*6G z?;XBQPkKM^yW7gw+xp-tX>B<2P{Wa!w8_o3dn$J{v^{+I$b*Yy$xL3s(I4{0Vi$GC z;kKp+wC*-F9Ev{?^z=9HfrC?WGd2TC?z^VsM@(l62vc^?_Kge8y1A)-i)3!0tGP37 z*Nk@wDM+yO&G()|XfX=R`r@CZf&$Y?3kv-@sU9B$*MIXOx2gFBiR!SxzYg{8KOn>Y z>$Bd&`-joHa&Kko4S7Hqvx|xgV|rvjn4+MiqR@A*kzZ&E;~!g5qP8wda8sCH6fuoj zRN&XBMTKhhI~LB@8{U8{nFb3m`j;`$oo{||UQmtcJ*>C>_4d_22YMG97ba03EH*_7 zTs;!qp62WQsj~yvv3qM%bHiPAhw3=9Pdu~fJ*+pYC5f7~#DAlxx3&INQeyh6lfzAw zyQ*$yh0&#Akv#ftvGet|H6T4#b=q_BOIYsx?``w-=GH$Qy~m9y*QVwsCj0G&9ypx1 zTzV%Q6L$OI)|VXIzZvwNIUu{S&2Z25%?%GV?Kk^6J0E@vviC+==kwA;-PwD??1V|Q zEa^?Kw=e2Vuz!Kd{O@JT60J35y4I8x1`YbM=mZ*jZj_s^H+BJ;@n1*E5*6D2J};7& zVA75F-@rxk5)?X;XV#IRMvmzHnQy@&dA=hsl9!+dMDlzqBa)Y(G9r1ti)uul;rZt+ z-<-5X^8Jq5BKp|Q8DlZ~o`j<_;{Q-DlIW>kB)>SIM@95Oou_X{bocFFGTjIV?|SMR zni~$(wMC!TxlgwuiT2A8?_)4CJR^|=yNZba?lclf)Cs(g#hi2!bpr3>F%6Sw%NgOeQ5-eyd+yNvknE+dI{ml1tToukSpVH+B+>3NqPt6PI*Im`5q;p|pNT}zT_XMuULuK}yhQvTy+jf{dx`iz ze2FC5gGTi6i?=2cJ$8xsKX-{Fdhik{Hv8^KvERNsQe15B$|F2biGPVBQe0}RCHX-U zo&V-Al4x@nDG6GLBmP^mNTMxSM7LzY)24j@*WA3lo?ROE=ek7>_J8feO$~CSvgz>Q z2b&f<1ACyMjdLg7lo8+EJcVKpepf?V<6-wPluk9?MJ2&mDjDO8w;XGtl122Nq-QUFi=Mm28>}AF|B6Y=JGFBtU z+q+$-DTzWyQ+FS~BnnWu@%Am13z>eY!A#9Lsd?VdGPUOvh*AVRb92@5f>XjH)@VC; zwoK*;KtwmqQf~{de&t5I+hxbwtdmi1NA15&(v5P|Tbtg0iyYA{a-6sCc|)Yktcr2o z{-yLj{%~^Q*%E4TbblNdw{Iy6bZ6}GF7V$I7wDci>TQxN(A{vH+P9Pic|}f7aXkW& zu)$+88nY>Sfo_$fY9}9_8gaaR+r7YldtBgs#ZBYZcif^$YTVw}+Z=D-b}#VX1sCWp zI4*9p7mQQ;m(u%6o0Aj&cGs=4H*W7~u}0$m_E&*--|Kk$x4Zw2w?KEiaXIlXrJlq_ zy`3ceOR2kDuXjPdPY?8c((IbC%nYc_u3KT|L-)&Cxdpllj@O$iiPxJEAFnq}AFnsH z60bL1JYH|=B~Gtf-*~+_0EpL{o8fr9>F4qKfb!}KN%8&x<<-}b;{5~4tDECEf87_y z>jTQGd*XQifb!~2INm>?eRUTc?;p^YfG}pDm|dS~w(REShYsfMKYXx-W9=ik zM_U`}lh(b`)z;=k$S_Za+g{$()>y@RAnW(pZ#DC-7!Qo?KM%GZ*v<3W-A7v*jzrYR z>-wz?ZmTQM#-r@s+4|xkkDreoIdpGb^U;Q+n!`Ny_4gx7bg3;zj_~qXO@qKUpY;uO z&Ah9&&)2xW`EYB)zN8wPz8(+DKQ54T9^wXO{XV;Lnwz-s;6EhB?OENCw%nGyrc%37 zZa?|}@8!q3Pzkn!Z{!cu`)8}Qp>1pZdVibqBDuenkj|rEZ+O>xM$yJo9p#I@c$z4f zT^UEV9zH?<^IojBeBDCxxmz!$-?-C1(s1zbLk*@U#YPufPwp@eG#_nkG(lST)zlP} z2F4!iY2H+9I`j~)ha`xd-Y)-)Lb~*(qeuAH6>Zft@%BS6sbZR)`f%P8HUr{7LtE7m zdhn69M}kwXi+}mo)3)wfpn+A4Z8Up~V06-}Im9c|ZHEsw?XTH?xFtdIx%=DOiMZ3>JH_$??m$$;aJ;(_att3zJ9J|I5V3n8yOtD2s zy4gKjkwu=%g=1d}lI~OVQrz5qr^c?xn#P7^8dTqZtuZxs_>ow3Y^`Y)WWwB6-_%M$ z_BWbWd}?^TmNjR`?%nb)ne3^Q(cttrUcsUJ9hR4HT76^mpV~Az*Q+G)?;LoWNW++c zBO`$6znMAi@S%#jL-ni!>lbof*ZRnz{WUd(vE%P0#GrL%MxtMB=H?d`*Vu1n$-k1} zJ@^{_ty9y1Ljkpnd&&OhxMIe3%*wNbio`$*yYif$}{mQ;b95LO*j!@pXdpQxZ za5B>QcYHqcOl~B<#CDdsT%3bCQY63B_S0@AuD&Hb)X?4*Tj8F$Ra>%E-|O3fzijAS z)4&5%baXnC?GTe{iEoW~AvqiapGUylro&-KEc?Wo&SQi|@60yjsRR{Xn_ zfvMdU_Znuv6dm_4BrwYDhq$+JKQ;-7G5V@yU`)H6moWokh<)G^7|knUp34Np75qFV zFy5_!k8lFgaGt{l#^^jjaoSuqvw`zqv+K?$Fh+WWvnP8bAXmCjw+6)#^AdKDlRd+d zedlHEfVBKy(hiLD9^ZGm1LBrhH2N-gV3e{FM7;uH(zkR2f%>{fS|4fM-_~4~o1dFkcjRDk;X0Xd z8rC%(ZY|Bt%gsA*`0#;d-iqIUOH)~h&e#1i9H@!I65662toZ`q1RTTgYd^Fv@LyCyuRC#GTik52+43O+pv3=+E||6iV-1jqgo4o?CD zH#_%b(X$g%DXznlz_2>)x*H(2&E2g=+xj+`NzT1Dh&?+AOg(n~(P$RVPGZ72haAqa zDOvX1jmiOsr^h;hqE!@IILEBD;BS;@{VlQCe<{Zy|GQ%opM7Udz@{^%%BUhay0Onq zYNE5a{cof6;DmqGwdl!-UzEP{nI`AjWBQ$&_(hlK*kmE&dTtVMw2&|k_Z>7<=d+KO zlN0}=lYrelXD7_ruEP_*g3<5Hv>ok$>$R_~-^aTb3x_ARuseEs5>Up3(Y=H+%K1r9 zaf%~;1<>4j&rkeZ$y|ct6ITHXB934mpg4j#L2)EKLh(x|ZYusC9-;Wf>3@P^W+a~@ z6tlj1&QNsziXNi4W&0GxC}NLM{4yhZ$jabT6cf$DG0OkJIf{ug{vgF~q;QgA+!u~g z0{RqZDaO-vnBrGnpR*J{x45Ge*VG_qDGQ=GO!;4)ruddwj#Gk4S@?f&;1Qjj67AF22`x>h@L zqT=Ty8>fYT!Keo+W@xx~O|BCazgT<@RQ%kC(eFIP&o%xy#m|cfeNI#SJ@wzM#_pGx z%j`!;4cworgJ++n9-gBV|0LSHCnH+$mzBa}>WI(PI=pBk?VqqG&@q$0&aO ztew#VlAyYyj-o#P)u)SfYd{RKM<{;TAlq^>5p#m#=NE8*;^#_~LFXs_?yiH8fO6P* zbe*2~#p4{F_}R!(^z6jX?mas3^NHR1n}d^@xRaBG6-kax9J~AMq{e-CQe#d}%ty)e zWs>;Mm{q#$_G?70FEy$y_O%yP`n|y7>z|vSAVhA&KTJWQFoh<|@h`2L!yNf+V~zK_ zjf;G^vC{rXV`WYJd;i9gTjXcUE%wiSNuu1B`iCh?6ed5+F4n&h$60SIjH&ZWm_^dQyxXUOZa#)};N`tgn&}J$m)#6~2hm#L>vjtGAK3##O!3 zxL*H&W{o(_>h%w3(1_EZ9{++ot>nZnmz!GjFKU5*eevzb0RMohDJYE3itk&-F`4na zo2f~9w0r_G$l%m(T!@lrZhYVHG?`Ez)3FluPN(a+j>9*aw-@AITr+1odDj5G18F+A z6NS%*AmhTveA`2<(U#YjOr0L#JDn5;4slnuT_4eM&MN)WDs;Mte_9b!!1(nfCN13# zx%W*0sW~0YKQ&#w7OIm2ZoUkexDNR?WI$q02l7uWZkU?NFLZ{ff2cBVi<`rgMY34L zB4z&zxgx4Nej&{*3K)<@3G1sUZpJc2C~_*qw+KZ}wRn16ky9c5p`2>*hDz91i=D-J zVf@7O|J>q)-LE*HT8a}^OL0K86ep|}J|pS+@|Np6lG<|eB}si-f(t!FYE!75f<;Qo8j?a;Ifh~2a)N3en>NL*a zRBD_d63vxu^8RZKS7y}FbkarpqO(T0R&6~K*Y373Mola%qv`VN8EguQ*1Z&GS&#ao;jjkh>;8gFrGHQwUX zYrLf_S`ypl9X473b@CrF(L&m517D}~T^#s6WliiG=L;XG^cw6#OgUb0EtCtNsMJM> zk5p>ynQWOZWPhg8clng>RGR+nGo;OFr8~a3Jvg7LjHX;1G!#ud`nAf%oOD>XF6Ji> zk6Z_Mi@EzBvKM{3GB#HWUv5}5Yk^0HPL1hFZ)^fPcDp|cX})H;Xj0BB>Ydpm&LkR83(ia$ z7tWbT1HzTj?OczA;$N0u)Owa|aI(}WbplGqS zZ+1Pe2+Dopnk@*b*@DD1TM)DZC`?>i(NhO+Ef+eAhktDq#%;#6mJ6LFJ0Kjdln1On z(fj?ltT<)!k5X>w6P)?Vjea6C0 zcAd{=Caj%OJ>7JYvrD<~>C44RS(@)tNiiSKTr`HD=7}Bz_}5dZr+J)jXfB#wP`i{S z?)>rR06G9X4P2Y8kZ*Rtq(U`rNCK^~vL62bh0B6E#kWX;>cRs$s z8Bo$l;;sPjx12hoH@IB=P2$4|WEWFY)Hs z{%B`F7cX>5=q-AoGduVX=Ag|n-|kFU^yuc;n_l8=F<#Y(6Gt0V zJBhc@e9beUp%QPQ`J!h)xWrGx_^M}6xWx4$+ix=^%TC+pR)Vj4Mm^{dz8;j-#3A4K z4CrP-TU$Q!nXm!mL!UuW2Gw!meI#G|G>c5|tfBMrL(D+8{)Vp^amKH{%<$(Er_1Vw(2u#*q(pNt>;e+0V*ol%5ZN zdJRs9xbff^oEbTqhW4Q7zCO+nw9b?T%`;^|-Kor3dE?RuDtUBU9~Z(|k)j4IV01$t zH8=$fC^?@5^;V(@!AC)Z3~?nliSuDlZwSW_P;x#F+UyM6M9;utI*q4fd>u3>)woJ> zN*2&P_(rHVDh(0c&PNm1l0{#jj2fH}L6sDJc``0UP$fk-?QtREO70{cRPy-uC7p5v zl{~t=_a+{HO0Q8xPwC@A1a*(-Ry{66+`!NRMmOnkA%aRC32O78jd?+IV;)UI3s{gJ z-)ViHpvH7t_exd}-MrfmF6~0u|NUqAq^Nemc#G3N;w?@!#ao;n5^r%TD&FGMRJ_IM zBypDLWbmtxyCc0^lw*>Zs;z)Ej*`d6T@y#ewA2W)) zFTTVKwCHfvxgvVt?t4GP=SX$W&Id_-clCUdH0nWz@!9wDSyCOe0ZGK2p!3pfg9fon z~w@KB*TcE^8=X{?uD4a8_{Bv32^sBh^oS_vE&golm;hflzL=wXNfOS)q0O14j98&99TMQ><&@vvUotp>=%SlYif` zjxY0v>g$d?+;pgAKiZwGcKqe8R6?Q7q)=#SD3lVTL=e6FD)~Qu#@WZzzBjVo zjh%1u+7A5cuYyXKUnl?fi+@z@LHV0d`#?bWjC$amLZ~Oub{DSf~y@-8o5qs)|CjN5Zm%j?Nw;4BWO(V$lwAwcW*yq%)0psdt zei3`F-HyC?4@XOy`wFmXD<7y8YAAM>M8XsrX9yC7Y)gIJ-scTIBgVN7ZduKrT`qUoO zKL^wvl>X^O!jCRupIF2`vq<`Li-b>=iscuS{|vPUl|Ort@Og`bFJHu7rS`C$OP~2g z?LqC^xk&syY7Z)Z-y-1$7O@X6Vjo+?KDmf}b`g8%MpJP??U%lYJ*@Vi`Yl`}{ARV! zk`2H4qwpq^zuEwMkJ?Wfw-keg>p1p@lSAuH!&=w@AA~LNMYi3|hE^kNLSGO68-1;z zwFe$XU#0d+cn*7op|u(Q9=Y7m%7aJn&w|$_hbl7-tqj$t!qw4z)PpER`kpv2z;uR-5!XdPF5 z2h2o&%+P9AeKQQBZ#1;(Rlf(WLSJoYmBR;!zf|>ws?URxZZ?#7!iH9c%IPYn!0WMx z46SqYW09plLu(4IL6-gxt+Oi2coF#w%*HO`3tEFJ52$&Qp0UY$03@ zl=jRvw8BvGk*WF&)u%)8Uj}c$U*>ISr9knYXPy_m%=e-{2gQFDO8=5|0$S5h{3lf} z>x<~e;I;V4dIYUum1X@Bc?e2;gHZahtb5Qp1tq?ds+aXr^e3QX zYKJoJTGZYQpTgc~Xw}0$b$M{lJ-NjC&vMLe=k zfYuz8d`&CI;7;Tr*bGlV3D*Pr3D<3CbwLT&4rRQxsJsVC_;R=(7D9<9Q|IdN$(GM6}{ZPW6fQ7IJ{=4Mg(CUKU zLhdxQI-tbg0_&*PX2X58s^1Hx{Cf@~u3yNO`6u)Kg z>-eP_TJ!8XrTx!AvCqQuvCkM<)9^gxDMM=BQ z(9XBAP`Or_t;~Y2B>XZc@rK}Yq&I(^O=}j8NIng%Y4`=nr=c|g@1{P-4fl;fStmvf ztq~~s7=}`wK`8YyU}*J2sh2*rpMX*?y@pl~lzQnlwA!J>(*o^Q%odlkjV#Ght|*g;JlRP{zrS z%BSF0@#{CV`rsMl6NXj~l=|&9w7Q_wZ>QnDV^Gp_O*sqw%W7Qo(>NXPYNuB=T?P62SfB%DDosMLp}>7AEQvx9fto#yr&JVLDipv zUq;_=X!St}*9#?FHyp-(+|cS!d%N0O;FqvB8(Ouh-vebns5Z1Jp|oeY+Bd*wv6mWJ zc~H{LQF|8rH1OHsU{QXbq`;0DczzDMPCVNS`?ql=#M=tWTqc)`;qd;YZP*HnfIRKLER> zJcd?3l>GIny&FpUovJ^kY*Bk7{0QOe4Xs-EVdTArRyDNOM`bCL{bHe^l?SCfIZ)Eg zhW|wPu%VTu_6)TzgHp~EDD@UHwB|VP68#L6@Y9CY6g-JMX=qJAX@^nxA@n1L)-e2M zz8BqGeGAQFB1n-4oD?_1|6VIsOzB5qj^|W$O*$>w; z{`;V$)28}nWxcXm?b#}4DKnJwE9`aGnuQY22$b}Ol|#w_Wj~bs_Nm+pC0rMj`JqGQ zHYnq&8A^F;p^U4&hE_F{aOKKU_>a_6p`o=FN_^RBPgglr<+Ft4%UL}Ow95&_e*=6E{-uUip4xNN9)_}y%QCbwq2w#W&{_s1 zz7#0&&0iS`9m76nXw5+B@6(3+&Oq@y4P{=Fb9878LdoArwfDhyVn1PM^}<5r9z*Lm zlyp0x#Mc2|i~X3P)eL34H9}dBHbBWoso}mnDCvcjnaXr!DqN5K+!ZFB87S#Y!Q-Se zX=qKrGW4U$(@^3agc80FNw3?y#*F*8&1K*Cl+R&B|#pz;)aGxmN%>m)28T#wqjlpXL*_#HE}+M%S|0*m2ZDCt&1Nw)%a;=kF@ zDu-`G-e71ILP;kZihm}21NIC|A0Ktb0KJ*gOZOK$-LK#1OhSmuv`!{(Z0PdUPp{U#^oins%p?%*9QBQm z^nelsMCmF0$3 zDcp%%XlUg@37-S&&}SQ3Sy1+|nTGo^ppGKsnDoW@xoT>8~wN;%SEah^Nues)sV~)EZiQ zp!ioo@vnq?u~!&cKwgp;ZYv53j5+v^KyM z$fbr>9+ZBx)^J}Al>BBwxev%Nw9=vEGgTRayGUpLBAeD6lyK8<72&1~tw|{1#+766 zZo-WkT4&((_zxRegOKMdl>>%WAIwHRVQBS2Nv8|SbCpg*s{=|p?aCG?>tVB@)d<7L z^@dh0lz6J3jN3{>s{+0XeL1Yce}kcw2W7lw!zJj$hE^t&@tR?1ox4!$0p5vzN;zq0 zO+dRopu}_5&>B_(Yt@GPHbd!GdGJQ+X|17^qxvj(Gx|(JD+S8)nE4BgUf%D* zZk>aopMesOycY(o33wB-yhjGD(@@%FPt#K&+V~{1M zQr>%n)(EuQQ|$w=82c$h>m-zXpHO=@6#p)jJ7E$29fsC1Scu$iXth8I-v}lBT9}P} zuc5UWN_>UNwNU)RFoIu}p_Kt8o@HuJfj3~6my)10e?IdR@|>YH3&npLN_{WXelzddEzFhTr${ctL_H08dtolrt zi$259S_UQF6t&NBGqVo+IYVm}O1`I{_)S2`-&rXAYRu3YQTwpkhv3cF2Mw)Ls_%z4 zp+9M8oq*EsdJU}}DDfYM($BgKtxhQYti#Z1hmx-rWj(a(2TFK(Pj3zWm4?=4wQo>+ z9=rkjT0<)bUXPq@Xk|f(F9S+^%b>Jts-blz#iV~)c?!xn?>DqgLJ4;Q%DmHSX!StJ zcPEtb++k=PgW}(&Y=Kh#W<#qH+Uu5~wFk<4RS9LjsxY+5AxH3)8w{;NDC2e+Tt|BH zo;0-P2_&+-S1s}kT#GF4VMA*|WqEH~4G?L#qR} z|D}-`CnP<2!8`6%IVM8kmK7`*gDCwp`mh8$DLu)={>h~O!^kDe~{u#r4r=i_{pw#P0DCu@Xrq;^ihE@lZan}yT-UgYP zDq9S#X2=k%Y&5iLq4={$xBaUiUA(f=&?<*g|D}*FR9R?ft%Xwm%qc=E3?*Nsl>bvn zp|l*hCpnZR^;HQomFch%dr0kbgxiLF7TyA<;V$gsP{NNv2`}{_9EP-A+5i-LKa}u& zFc0>^_1L?h*gK$vYge|w>#^5DvG0Krz6$2T3V1R0Qnlwn37?}3!#~o+(xHS;g%Tcw z@?j>t9Ev?d?U$+j3OGh(T>wWQVwzd^iB9tF(T&1i24>1i2S}7Bs% zr**)8g6;5wumwH|8{xgM7Vd%MHN@CRtAbC!3itt74*wCB!d{pM-w$)(`(PM84l`j7 zOo#7ZEys>6%IqjWZDqyf&=g^uphn| zQpQj@ByXWNLedDm0pc6_2iO7me_A_y47R{WVIzD!tcAzm9{4&~1sUUM74Wr?xI>S? zQb-(WdGJb@18;+2cp1!u7EFgnVJd8cA=nD%XzwF%7QO~fL-LX~2@k<>co2@kW;g;L zgv0RFa0r&b0ay(CVFdQUeAo-qU^gU>cK^Nwb|B}%cDN3qEjf-4oTZCpPm1Uu@g?tU4AO@z@I=lZyA7c-tu)Q z=PVzE{s~UPIXDjg z2*=!gnjywr}2*+VI z`VqJdc^FQ>A;=t*)(^KM_rV{)UdVY_S{M92atHh#Y==CzPiuq{e=Yn^xCgQ)NvnVo zPdWT9EQQQ@X*uwD=cF1{7S|j`xaxEN%dm!gYX%+CB$mQ@GuoQA0 zm6ijaLk`0cm%cJl zHTog=RpbHK3;W>=`aXCDxfk}pZul$oUGNIz4k+taJNza37MOwD2xVQWg}*?*2Yv~; z3VsDvz-jd5@LA+iDC<@p{5kp@DESOSna?xf3+U6Klq(hf8w|mpp_hM;C;qcg)`4lr z-Yjhriocvcd>M|xpQ0au;y( z7hntgFZ7L2;;)5ognQtR&{sk6uYjM2<)Zg?qj7u*Ot;PdF)p`_aakHALA9yqNQO1gXC+hG;_4*Cix@sz`l!&1neI4uu; z1~~`52ZrGQ`b;SP>97T+!c*u&Q1U6~4=3O(d=mXMlz1j#8ytu4Mn486o)MAZFnkC4 zA=MASa`gT1G4y@#Y2;q`B)PY=sr@ ze)Q!~>c12=!#r4nJ_kxZ!!QMA!X4<-p_Dfj$~ryC=6?Wr9R3TG^9Nb4dWEF(U-!F=<}e=OF8gf7>1kCXF{o$bSV8f72bwE1n)tX^MGnN45j>i za3_@e`8!|-+ydKS8I=3^m%%-72dsj3LHYOKm9QM%33H&-M;KPXOvrgjS}K%vG6c86 zIrih6i=<6Mi+oK&=`Z7O6C8sZ(2qc=k6|eL$07JK^aHBzhc}|{gSVpZg;MTrDCO>g zrRY1L^y_w*2U}nP`bH@JwNS>#9+;253d%ZA0dIrl@H+IR@K)qJXu%wK4f-&Y_%q=K zILUrc>TMWiL;7;)TG$6yK-QwrMUXiwbRBGgt6?Kt1#4j#Qit}sT@J5CE`^-q*!zCz zNBD$R!c4eU>RJ5APYBAqHOF=io4w!9LO+cx^A>ZwegD8*8Cr>c3`%)NpzN!M;R^Ia zQ2G~hmA%jIhnJ)86Qb{hm%(nBj=l>@eRjYlupP2xwDZ$y@HUkk~iz2BF5t3pnL znNaFQ;@e1hB)&Uf2bB9%iSJI>0xc-O$PTaU zQ+6n8mF3E?GNhbjowma(`;;BZT4lL1tPCk9S?}!d$|1-UdHw*rhkET(eTTAES*{E# zWgV4pvW`l)km@H{$L#o(eM(tB#lIVhe~0Sjyj}FNj*7lk_2tU2GNhbjJ+b3g_9;7* zwaRj3SQ%1Il9(M{*{AGK)+)=DVP!};$$V>vSN178l(ouoWmp+fP7>G-uk2HHC~KAF z%CIt|oTUHr=lR3RK4pipR#~nLD}fy@Ik~VjIXP!-a`N${?xf`8mbRqi#+Kyd#^&VY z%BrQw6G@XvOOwZv&L*WSIg>P!G>T7O^2y}nWLNlsZZkUW??gk@mK z;F9FzlS}%!_AWWWb#loR*Upr#l;q^Gl(Sqr&g(ocIe98&n!o4I>o`9-dFK3Ct|yoF zFHKJFUfRQTeCY(&>7_GV=a$ZM?MgkKnw&h6I?DBQ>M+;-3r<}?Di@sK+HpZA*O}DW z)THF8)ETT(snc9XFC4otIr-Fu16;cJvOG)L@KCY)O9pE}~=_J>YOGmk$zHIn1>iM!kuDzF^xSUXz&GGl-Wm8#2-^4E!@raP7RJ>x!kx=Q8FpmL|_+%w{AdPiD-ZpUjxb zNKHPQG0xvTSM=i3f5oXQi1UhZt|M2Ba_zhF*ArLuaqYaSi|fplvscn%uAHGfQ&&!N z9ldhw%B9JtuN>y@;jA-R^ogt?t|znlvr?AyW}V3DL+Z%tNI9-s?|roy(rbe{{{*8d`qM$u&vIy=(gTyLZirH7QHF)*N5cjdbp& zxtmD&rg5$(ZtCOOc~jR-wE2yl{5^kT2iK7sM{i`r-gt`Zd`<_~GdUwUNy(>k&g78a zoMEm#IlWvvbGp#auj%CP`86F}CvTp*Ic3Sv+S6-?*HY?ree3XD*UNQ&Z3ow(b*Dvh zOYbfGoqIZ$T;%p~om)50v%TqcGwWut59goBr;G&?1xd+c1>*(ONx@nE9w`{(?~#I0 zuBQuzxegQza-ArgETlFHhYC}cjFya*oGnRNa<+85bfT2JmyU4lDmz}r%uv=;l zEMrWS&XqD2%4X0^mQA4*)=zRBec9N{$l1$=xt@C20N2qCV;fSI3~xBIVPpe3YrvxPRxj64 zYm95>tzEa$zPHYD9ldSrHtOTHKCbh(cHG9SU4FKFY4ULSnewFMq4ME!>a6^9d1~^h z@&W$tD?iC~{Qqn4z}KZexUQo7qO~Y@6PenmoR3g1<+%jd2~=HpsPi z+X;NSxApRO_qHCcXSR=Qr?u~xxC5U%2Dx_Kah&VS_Sx;kwtWWc)b?q)-Z_0IrM&YD z*MU0+?_@;X*~7K-&aOLCmdxBSd&fD#b>G!<7xi*i#|~oJahz-aj#E2mg&k*hj39OF z?A%F>?U>oYe6V90&E$?Lu6;XCq952f$o2HjVXmV)$GA@Hoa8#QbC&De&Uvm~RmZDn z$EsegC#(9o4pa?t9j-dVb-ZeV>ul9IuAO&x-Hqqny^I`b0IcRd;cn-FV4zAO?W(a$B*ErXi>RG~0R!?yqsUEFPN*=Br;qT$S132t$a_@&%qC=Z|J}Qcy-04xvG&#gD|GdCf#SMMVq@@rjfiHc+^_Nzau`7RlN#SG zJV+P&fZAtoK_w_I!FVU^EpHvU!W|4BJ?A-)l{=S%vuckM=#|A%fi z_A#|@(E1x!`3{MX@RKT^l0z->vq$59M*HKm+Fz#W&8qyImT!#vBl#`S^ybw59<6UV z$Cclwoc7Z8dk6P@X_xSfOVhhm(#JPd?awYlrvBu8IQjih+jm0cx6_VdcfLcDA~)TX zzeCF}{|-p($4N(i=gDCUvb-lKzm=IrKBe;a)jp*1<2t_QRIcRZJLwM<+8_4w5{<++ z&i$|aUa8@yRqoOB=Tv^L+U2>7{C3HFz}P6I-sIQMICjf#)cEDOkNp0i_2GP%@0Bv% zsK3nJ#(p39l*5MENixMRf=%Q(m4A0BGNw6=Z|P-5cD~d1h~`hu6XcgKhj)~>O3Rxr z+w440? zMaCj>i9H$uIr2oN)3h)$~R*z1g+KKTrMtqT|Q;ZsjM#*s0HH ztKd`~jJdNWVhm2X#KGQn^s#!@fu5Z^`(ge9reWetT<%)7+?^5}Cjjvnfwa$DLmfSEdWd5K&GpmjK7b!pG8xI@#Gq)Id zQsqx+{%bY=|GeDTr`7&eDKF*k)$}@b{^?WscQW5#?^pRV(w~qAR6Z){BM+%;N&b+B zRi0mMk&zOc!()>=UJSOua{kxWWlHYNO54l6-hv_GhUKaC={NA_8$a__OwS>psr}6=r zkC2`3e#*Zy7kOUoue!>}@|`dFJ+13ymdYz6e(G;l^Y>Q`FYB888q{CDUnakKoqyyz zXY!Np7f5=eD$BnU7kNVE?JJBtqw*IuKhAeH=QV!$KAZe9G=2GwoBYaGn()~we^l-A zT{!vuRqf>}|3K5PQu!LSx2XKn%S?QoD$Dl~B)>f>@6z)1sr)&W2UNaU%R8*{ziN78 zD*r~yJE`)^w7jz_ze~$2|Cm624{Lb&&Y%3``xcU)u*%7rzI-oGe$VK9vRUP?&~IdZ zZPfABD(%VqJf`#IpJ-QU-&Fdw{Pt;oPgi+aG4>Spr#k=0-ZPCgXp(*`zvpy6>fB%V zt;2pk^C9Cxe(#q0bjk8vMMuA z@Fl-zQamK5XotRXKMn@jUBcpz_nSv&er_`Q!9UDet(3e^}SBa@%+Ykqzt>jnNB z)&3Y1`EHeWF;9xzpz^h{ej~q0HSdCyQ&EJ654l{o&C^5 zj7_&Zvf70IzJ~uU?I`j6Rpon#N8-D1g9-m^1eyN*qW1SQTAw-e3;BJYdK3Ev+8;hB z>lN|Y59qO8yzOgqZ&6_P&vF|6%>tE_+6Z*%OLpZipP;Z|dpejq;-CBz)a zwbkTjR^}(_>k_Rm`=u!4RVu$n@{hb*<+n=ykq@Z+C5^9Fz8+v?DSK&8T-UKW4}i2Q#T@$|3S_FkFQ6je07@t$E7^j&#L`N$v^UsRQ@{o5cvg_ zAJzO+X?nNP55)c}wXe|j`Gd+A=zRZom3c?Y&hMCp|Bm!e%KuI+|A(b~$a1bHze7?U zEQJji1z=SX>wpI4c8tL*ejwf>r9sNL zMZQ(#^VI(j>c2|%v&44+<4S(N(D8kl%GtLW`?V_nQpaPi%AM+etK+ZZeYeVQRR0H6 zzDoU%sXQX>OZsn9`33ENy(%Bp{`N7Ie?h*bJdbL5hNV9-ANKDy`G1|p_c`_d#8wmk z_f@uE$|Jq=D7XBoB|LJP$~&b0Az!2NP7Qyf%AX=#Nq<1oze@6h|9Z7gX!}*Fyh;4A zzfR>ZYx})l4tNi9Q#(%%cyS2YOtnx3kKgc>SzgI~AqI^%OoT=fzr1Gz{KRl;$yM{lj za=7S-fPnsn@{0r3oLi&xAuSxy$v5Eh<`v3kyBhRTU^JLnk^v7zGpKnWh zT*iL=9wUEA)02-P$WQjx5?`juFG_zTja{1lUvEUdn0LMJHvWIs{`r{Z=abUku|KNz zr>{2hyHp<4@$`iH?~(c-4|47!zk9SkzOM3RTAx2u`P=!%|5qx1M90hDRQ{yq?@3MX zqnf|v#3R2t&EJRBzF+c3`lV`r?^YvkR5?ZSyF=v{Xm|0iQTf|4pHtoejqiQrL*yZq zAIvxYt?Iv%uu{LZTEFWx|BtEtWt#u5Xn6Uav!wTCwf`n;;{S=-i!{HzYVX}>>_1cc z`!&CxPndBF_S>?aqY~-UV%Q=SFKdADLt~2r{RsM*~ci6wG@(Y`dJfZSB$uIUl ztGr$Ehn&j1B)s9WR`4ahdl^@sq?Na$c&EM-)KBW13r^=<*n(&XS z+@$&Yh|2#CCH@hWzpMNGAE?|*y^H<#D!)SWcV4-j{m^ZizZ{iUYyKiC|MdnF{tlIY zyxPe3sVv{smG~b~`M0#2$UQ3W)BHWHa*gKiODcay+rM{b$o^$Xe(AsO*8Vc9>%(u< z|5?q?pH==l?IQlqtN+uC8lwS(ce|R>r(cvDV%4nGwHvM zyoo%mGXJK;mV5s{dtU<9)X_G2LXaR}h>D5|7!Z{zVirI)Z6KgfQBZJewIM)&)UX)B zrd`6K!PW&_X=__ts%ST~wx!m#5vbyhOBJnc!L8V8tJbe-tM$Hf&YW|?A(8&y|KEF` z``qt5VrJ%D=Y8LKXU;mfei&c~PG9d)0NF4{xStDlMaQ#XPgIxS`h7d99*gT=xl;9X zTz^?a)l+c&FwAd=z8KdFFn$HDZ^Hav#C0$oiEqI5gM6x*neVN&xc$$te=rt zFYHA1zD8y};RN_pWKs0Lfj=zk7ogd){u$&a%lc_p&sf$EKz}Xk`=P&%km;ot*xZaO!>>d#E_{>pA+ga{3ns@nR|e zCl37-j(tDi@Z)p(_lSc(fdjwBssGKXCqcfj)CYY}(6Y|s^fxc6D||7BUn+8izl;8`On9kOTMP@Q>s8YYwM=jN>n)o27m) zaPUJp{i)~Z9}eqbOZt%<{m^@(mTefbN2YW4a;$hsY-& z;eJpU+GP8f-0Wec&ZPRjThiBaHXnvJbU!f+-qXjhlyq^UH;S_2M2x);-u5>j7) zc*D)CRw!<|fNTeCo+c+U3JbR~G2?njFK-JQQG@#$=18gs5kfs_wm-t=Aef`T$i zB&|4si^#awHm*&FVO|uRwX>DUi0%fZ7G&n+1Z6^elC^oOD=OD#UDao0+Q93o`n04; zTAgO9I!B#}MhfZ3sDg|PYs01>I~6snRH?e$v<0ekO@10|&<<0n%8;GM8D(TTjmynf z>a^h8xSWh!YY3K5a@1-dD`@oO$V8JW8lfDznQ@VMc{)6L300SBv^G5k4d*Cz+Ja0y z%;D*lLmg*oy~Y4}54sUW_5#F0dRD=%@!Cvig>?k{pP!}HYtrLTc;=*O0&?NMtc=>2DY%;C~C3GVNpx5UK^# zQUS7^5&{DZs?!x_2c%`E>$Ew*L^U&~NSl+cnxV;uOhmAHpv4Z2t${?Co~}s`$j(hK z&>ItZUM;B5r&a zaahItv@8wk#57H@Aqkdx-RT0ms)^}zu-qzy)E))}Y8eoQ*PUVASp)}J6%FE$*u*aD z+u2$}mNGXxPp3iIKUSTSuG8qP@C=gL;t3k&|5Gm3J4gBLA1TtqFke)p)ucjlR_5j| z&?2u>(_D6*p+uDiLll~D5}c~Z&xc9aW-efoDPwSp=tMIV3Mu6zm@3e$WuTI$QU?>; z3=K@@8WN*xj0BJiFcLs^gFb1Q85gZ7)KVPTX)d!stxvb99vB_QRDdc&1M5FDxKMwS zAo)U{rfLjXxj;(xJv%=W#aWMx)a*1LRiM=Y0WwsqI)9Q@gK9J5*l9jloxdP1r%oWv z__(BG%QI(-Y`|hN>Dua<`IAYkEM_eUx~5i(RMs7dU1D}w)>Uo^$bjgQ2szg>t<;zyv1#56VwYADk@RxX%tRy>E%j*< z7HFXlfUTuC82|K%e98Q-7#7A7tGi#g;$Ty8Ezaqdf;o6N^UxeQP|O7_4ml8-E+DPA zm~v4;8W#ssKMBRMQ%}OftT+o?j!qb}4($&rci zyRFi!a^+5$9A4N`8R?vMT88EHW*vn)r*W{bfOHL9)X7cb0I`%O0`oQcLXCdrjCc;M zW#DGO^$L{K$rT=TDH2_EgbSMVh5fK6P{Sp8%nbDTM-=2)FDwQB0U2XRbictSbBv{X z!UEd5ciGz#a4i?B!|f|}K@mEw1VPjionsHI0GI+T#4N7ua+$G+Q@dS*<>F$&z?8m9 z%f(>0{TEjKRtX`)0cD2y%PGQ72`A6%9!K7BF3Hpa7EPFZZ=>6kkulk~aSq>9jlJI9GP%h5{) zrXJ!KH0l{!ugT6W)KK<#5)IqENj6VEY;?pTXLi4QXoChN5zg6(ZA>)An6n1kXq=Oo zbS@@4z9w~pvE5Ii6DW}PbOnk@wiuH>`o37F8qHQi8pdD?YF8z2j1AlBB=0a6yu zp|k=(SFTh6vXCBFvT)AwJb;C8gvrJ;JUI}lO$ZCH+B11@C_3NheijlS0|-9ru}UfJ z0nUQC{gVeVoH^Z)*@Q@KLRdgIIe|9i*n~(~h}B-R;BM07j5Mp1vL4`47S6GX6#x}u za#;@|dw@$>I7cJ`z<7}|{24fw3=jw#>IOmA`z8T0k_z3=43Ju3K%PUwh@yjw%UQxe ztecUAb3GtsK@3w$8r7Q+8zN<)-66D=wjfqW=y7k0L>kf^Lea1Qt6i3l53y}*fLUIf zAkW9UoN@<9Sro=Blw1SDVN!lW)mW{0-=MQN)xtt%B7^OtX|E6Ji(B$o#2Eni(=ImESTF(3B#KM zk+Bf2C!{RMsx)8;IdMEa-nfiI8HiPCDGO&PDJxn5P$Nbb(gRBt&ak8?Z35)u$D`=A z;Sm5namr`m9C;*wO!;zniHLfd1y&F}uwzkKOs-SpK@1a)Oc@KYZg3XPp=1Hwqy^fP z1`wNuld@!1Rbj#11j-qKRw-pYz@;p_8*7F$r~7gl1F7)*~828vT+XfQiHbbWLJ z7CqgmD4tdTbcVG>B89iM@L=VrzyhpxT0WlC(3%qf!evS6C$$M70alg@@?gZv3P45z z$Tb9`Hx|M|tSZiexz3UYF^XHIl#y^N%1C=4WWn7;23q);y8@I80Sa%r-$7c}?6RW5!Cr&`gB@7`4 zB4Z(3`$$QUl~|!V6lBAHvd|!Q+;ieV3NY+->Y4-|^j2GC@Kr8LWNT||7KPI5V#8SP2@AJ1;jtLqB+H-7Tt>pJ#ITel?8cK}$+4_l#z3t0M8?8x z^+d{|FwAk90NyA~Fd`T@6(w?;5E%<$#af;NNm&FAQ=0&}gwex#S6MjMd{Pob#uC+~ zK-&Er;j&N!p@NPqvZvE{WU#GV(h!EJRrRDSoS~%5%mSp*< z!AXSMXBJ}Bqb#_aG`TIFG7>^XrWGVAl57KHHu zf#bX*3t`wYoy8-}Cd4K{KHe5HnN5h4gjgAFHYw!6Hl+Z>rqgXw0f0MhgBS^1C(2on zRX4~;I9^^bTsWo$9InJb2Dh6;7Gzyw4{#|9=cvH~y2+F?>R6ZA16<0&IWlbnWIc%N z0WM|X9FYisvI)bVf#d8(Laaofj3pt56dp2Cwwd9Chm1`T5(Z-3o-CZp(k28#-SSb? zqyl)FP)7C?{-WB`XuVttt}?SYsDcM}`bgV-M6QW9<@R9U)iA_Ezbj1Q=2 zmDz+yS%_8l0N7%UCuam$juJWB%#~{sBDDg+W0aA>Frxw8A-H=oTM(%g2*nKnP^z#+ zDJLOhY{}T7l*PAdE*8uvPpK%E*b*eO36Zi8tHN*(=pn+9C<~R+5UbQu7S0VM7GmjU zSqQ_>b{1ezINGqZ9Dsa0BBAU|7Oh@7WFc1j!h*S7kq6t-NCpt=%W^48W2>VqMmK>$ zHU+W}tDTUNaMBViW;gbM4123gWIe#8ES%#AD*!z1lC>-VpfD%A=;ker@#JX@2ZY4oWSwfCTn*h0l(Zaec7S3g98-k*nTsFXJ zAs@cxfL^Ur6-vln!~e>}xWG^qRgeeaLSP^+$ml|loW_yjLZ}24Y%Du$L8PG!gd5T< z#CqRD7)q;fDGTS=h6UJ)4*7VA?YUnDK-^7R^imduBbxmev4R%pR6yAcHEfh5w-(6cmJhVHT4i{1hj6u`61u&dkZpH)zxH;X4hfp`qi0QpX34 zm#1k$($s2+CQu$C(FCVvq-x~SfLxGAA1D62`8WN^AoSfJ_}mg{jHI$f&up-PA!d`gHAdGUyJ z_{I=nPZ%i(^}kA$nT9^jLO;%=Qg!7=^GQUsa2TJW_))d)|HHLM>TNO%;_|ySk^&UN z_s7uDiocIW)w=Tre)#n?3PYuej!cfEv0*=j(Nx)p?G`H~_mw6jkvt-cMPo|n+GtKb zYd|i)P6>rtj44{+dxA*Syl5W1^%uhn74Wo|hTbLBYcle={8B(4bW~D5gaW=ti1@Vt zKlr2^I^fGy?1A}Z!&{-~MGoNK)gPUhpFavPIOzTDsG2qVk<)U%Mu)UR`gXOSJN{mx z7zGI&_u)IDNWa7w9uW<{Acmt~YCf=G4lX}BZrvFSiXUC2qMWWV_JcRh)MO)3W;qN|(E zBVGfZb6(&P1|WjZ^%3-#iGX(W2cMiHU|18A;P=0J+)emu$D_r(9gmbm_3wOQCumbe z@DvZwFAsi!-`Yof&zJwZ~-&&uwQf!gvbNxAWb0K3W{P z<8DG@9n{_a%=}`Ga)*FD6nx4q?jXB^ z?@qSUJRVr^hq$b&fKT8K?`xcK33yU{A58ut9$eb{7POaeKie^XS`YS@){o{(*#-II z(c);ZqY~^H1$K?x@n_~Yq@6*275r60h*WvQFVg4Z$Bze5cBT4B`_nQWtl5?BueDf# zn5}|gPV%SmxG}@_&r9<@v6+9&C483)J?D1JL&cV)W&Cg+F2j6P7+IMO^b?r0K&l}shyMA;` zTemav1D%VIzxH?Wmu*_EuW4J6`Uz-T(e(5$<$ufZPRpk0X}*^JtA#CIHZlF9c+mO6 zS`480plyrdf%f_5JYo-(Bf8sf6OW2huKg@^{hyN6;Y^Jwt}Hd5(gE@+`U3pg4rebJ z_=Jo*RHyq)+l(Av0+d^+`2zV8=}5&Q)koB3E2q*nvW&k!z($tz+5eBRZ+ zh#u*S^s<#V|Cs$HL9l-<@rum#pkiTh(I@3 zXQ6chS~HVrog%7=4TD}x#tEC$+f0CtR<-Pi%mS@ zlXkubtUpoP5ON*FvuLxNdtm#Q+h+%^AA<1FT4t>S(HH6Vj-BIz@`sO;0oM)bL!UQ! zcUyPiYY2-cLEmG*2GL*(CDdxy5_Q+8tuU8>x{o{#N_+XR2Z8;Bp`PoGcqL~lul*7-CYl5e?Y z{8t*WgXU$aGtz-RABbe^Nv)M>d~3QRSq*R=Qp%i%Q0IM5qCsnAu3ktNv~EZ3)clFp z&ah1lw+-O|e>eD*b@XS?1KOGEDD=4}r9bV9C#}CB7SK3wdziZy;)DnBVh3@vKIA{-t z@wkB?#~dxAQ%O8P=Qo?dzTNQ01OA&F{K*u)k2QQb;J?GcpMv>Aj_JmK9N=%^;3rV{ zQP%j60sQS8{3HrL)f)aNz<-Z}Kbyk81lJY1=`$SgKjPp&N8y)Q<39}WKjz@8Fn>7L z?8bj6;D5%!PowY~t??fO_+N1FGckW_`27L@YYzSbjL#q1T_0D#Z{pzRVthEi?WVso z;2-4R=hOT>y5kD~{|JpwRCg9pxKS|vxxD{^G56OA3*5yNZmJbrl=~l^w!nP_>j3BN zT)rq*-aTi5TTbC_w!#nQ)-yUf8~ zg>`}XkgGS!d-s2$@xgX$C|oqoFF{V?;-l*=4}PKWE%WiEE%w!yFY~IKAzm!=aV(5^ z1t0vwcf{8Wx?ZQF^E;dKsB=^{$5C@&mo_qzPjP-PIP{^#Dg|B)NW}j`udM0A9^iQ zSN`mMxF=Ed6i@L0{XNZd`~_~?CL?=5-mZSMI0kZgG~{$8`w?wePo*nwZ{h)?bghifzNhiGX%%j`tesEp>X%X}}`MT=b%WC0zl zXBmGYK6T~uyXm|iwm$^fpf9zqdzeeD>kzN|s(qk85BdSuh8DxUizZ4wx-O33XbnL? z+|WAEbFifzmeW0fqYWu+i4p9G`)b<0eA?&CysD0$&R_F z#mwPop1}8&EcwxXYbWO-g1n|_*?-z6D4s0aX?r>Hi0XS=csr2oEXT>EG@|-4tS>BS zC|k1EKD*%KbrbDNntxXuik8Mf`R_5zH?-d_DXCZ_?o z3i1o;8+~sIcrxpAByR}FMLbzK-1Q{)x-K0b^e+`Bosd(l=cFMJcd-yNlOc8{K@7z} zEJZ^;Qtp7*BG;iv54fl22KRH_&|244EOKp&@(#9}+v9R{e$#y&i|%!z*rH>Sx+h2J zOvNWP<`E9k<1ws5Xxk$HTmczZA;wVdrR_}S3OuKvSi5IWt=qfC5YZ(jQ4Arz$RFrl z?jIKMbOquGjaw84NC$e}BIR(_`LiK6(R?iZ3bIw;G}+_CwGnk`;+IHlznMBDn@!fPiOr@#y_4z>6~Hd_aR`r4t!3H+J}<$p>U2w zjUUTALZ4I9;~4phwjF(c0G*$3*DuKKv+?x|l#gh;46}#xRhVaCKhE1|zU=@TQ};%x z{=zdqZd4mOPovr_<)IwSm4)J>*vhpNIu>Z%QLG|fNFU?_bY2)qUMrz(P5I~{&Mzp= zP#>+yL^g(f_x5x^Y$H7{;cE{)>56o4>&4z{q5aSS`GdAU%01{@wH` zNC~tRBYB_#_=GS*A|{&Q53L%>qYeH?6%uj-3Xo!`<39W_Gz7}vGz6t{1_Dp*5XCg) z@tX%qL3k4qLrCaWR6uMEs5t`u7*2^$fj&`?WJ^dER2UiqRA6~X9n0YdNzX&v*1{j7 zaV=DkEE3WR1xC&ls318cq!S8$@JAjZ;DQ*C5Y!hP1`vxl(n>%i^59Plf83RKAB z@tePu5&Rpd@60n@WI+rKFQTW%is28*%R?0-{E6X@JZj;81Sv+4I{0I3YKBS#{E-kx zkcUiSL}0d|5tCr6Jn}bg#w7SsKDm1vLY`ERLvCA3VkTEHh@TJ)IkU&`Wxo3?Qd~O zOb*(6H=USFhRZn62r!7avC4!Q=w%3apKB(GAvWZSscpo>S`?Y!c5yyzF{pw6$z6)V z#2}WXlUvYH+l8=nU_Nr^OAbk(1qpgd44zeHX-HWl0X_a&U;$uxFoPL4a^Zt4k)h0m z_e4LS2l{?Jz+wCCE(ceBPx=k(Lfu_|ryk&adVu#t&m>sPhpRvRygV(23rEiuTOM3^ zPyBnbe^2t6sRJv)mEV*9{=4!AT6P}FT=~olXhT1^N89D#(xd0OEe|fdC;M=QQ#bv3 zg7@UVp5Q%=kDlVQr}*lL9!>q02iJamErC$x!h6!cC;I=ceL3oN)32xg!+BJfgWJEJ z;Mjeymq#e0!qggQMvA(h%8BMe?FBbS0<=w+)gc$WrhVMN!h6baZf1MNtZL~b(& zP_(%Y-pmNNq5Y5udP5hy(<9mxIgH5D=NfYHj?18gtvxk~Cv0GY*u$D9pGbo(j}1gF zY|IYt{}I&s831w71ZhPYR)pt4Eu2C1lW5wBv6S*)z~IBR5)0u4mEe zlkyep95Y2zqDfCGNTqhH2KO+00hp}@cWU#ez`m~u8RU+cVMJ)J$>kw*2 z`>f{XfM@b4Rj?Z5c0L5`beRU5V^S;KIM_v$+#yY;iOj)!AjjzSxq7e&6+84E;?x?O z+5L*ryNEKMMh}}YYGKVygJH+!Ftq`kkqZ6I57ST_L5-*q2qV}z2dsp&VHE9RPIMvy zx+i3yelteJOi0TllO|EaITP#{uG5ut!(zP~1s*5IE!}0({n)d#W^m4_CpR-krx2NN z+DYyv4Hc?Do++p2qJSjwa`Osw&{f!+2hLLrx!B&>xo{c<17Dq&2ZP@V4&HSN!j&2y z;2LXau*(*NWkLoz$(dGhVaP|w&eX=c zVUQBl>HqhV^nWD(e`^6ag}0cCi9%_xLJ}526v}1jR{_M4 zHie*ccy(lpeVl_x7P^{O;WDC^<6tlQ*HVqXF?La_ouhpF%G^R6-KRLoR#(PWxrvpN zD&Hjr%c8Et3ahGpn-e3amoD!pzxt|u+$4wT5QOb;1$gL{k@t~ayc(j9BR|#She)q0 zn>-GbdbN2EyP)v;VUyRzQjf!>9v6%rr}lfDg7T(5*Sx*1lzLq-d$e!rbHUrAljlj~ zI|>SGOnSmmA8RUc6f8_J>9hEY98HE4Q?R=!F9o0ivqxj8=e129M49Jdwb!*xecB_v z4y!#*sl9;bQJxpDYT-!$*;L{uFy@(xviSK`ro1e~s<_x>$P+B`6O?3?>r+gIEP)a9 z^g7IQzu4gknq2YrxUk9N0^#+8x97!DufvgE7ivA)yge^$>H`QDH}z@T=V$I|U<=C_~ZJ80i7t2U9nCd$w)ra{%lQamYp*#A*%l5g1wTZZe=QAb$ZX zeOG5aA-zsE-u_$hW-lXB>mxH)li@`4uBluI!v}d;uqeg!Viq69=At}-o*b(BSi$00 zD5Eh|TqRg!eayCaqxf$w^@NlKBkokGCk!`8YcQhO90<-W0f!pN(1m;mJW+6(^2BUp zlAb*p>D9Oiv1;$|gbdKR$>YkVK8H&^Pi^uf7FC%b-KF%922H_$kY@^p7~CLn}S8AMG`?i z7pOcIIgHrs1*sb*0zBhz6|N(lRbwiWkg_0uLOx-VK%2skSFaNfBt+$X?0-i=#g}A@ z-=LyPTi)>ym55mLp3-8wc9&pL6|r%@gU=A7yiE~npXV^Nav9N_!jBwm9;_4ZvOaBUEjo9r#MSG3JzCsciQq?(vp!b@xD_UUktBGY|xFHVnyUZunNu0jKevR+e z3i$7G#ilB^e(|f9J68bRomAQzWeJ}fJU-eVp zd1X{=g^H*scOOppDF+KZLKH(Qo2H&}o8EZk@w6((rqVYj>?j%iVew118YBnU;>Gp(g- zwm!AF;?U!FT3+|qKlkt6K>}f=V_%0_H|XV;%-8nB(EJ@(c64!B-M+pcAEk1`a7*4$63E{bzsa|$%C)!iPd)} zAAi~#UG5bKD@3<18GDy4T*U$t>deMSrOCa*+tWd`BG6qC+%J{rh^^*rEf=}l@yhsu zx`P_Z7_Zcal-+Ty@QrSfhxY9!64wsf7Q%!3^kO&P!49oe^V}6NtJ4V2xC-7{Uss3L z)$#6%sk_sN35P0qZX-rGw64{;D`w766Y~!(=dB$v&Y^Yv8F$6})hWbFhm1V8jO9eF zGkPNBy!Pq7tCN>TISNJZO6`pP12(tvhz*WOeF+co)F48!@qi<7C;8PVfiU9F=vt@g zonS)WouVZ|B1N(Fnqyg%TNq(>duw#`CceOH`c5B@6vcZ$^1{r@C;`#1d3H>Q+L*ec zFA?~jXpazppS+M*nX|5Re<^?M7+x<2%9#^`;`*3Hb#0$4IQQZF=Jyj2oWu>TGx06pk>v&0ksD7F6AF|COBPJ%w8 zTs&%XmW1TB8^`}SYv~k$FtGtx9~iI&SYII|wfZH%K;avf36EJgEo?XQ9JYQ4mhf<# zbmOq%nwh7c?O+d<-Umci)~SCec z{-5I~5s7A*V?>_OVb&$2UR{cJyk|(BQMm0J-ZOI?pA`s++9lENxeH)aF0|u?`hQaj zoW$bFr}B)xEBg}B)uY!V!cn5uZ=xh2dFBBc|B4-af&Zxkph?*J{g+GmcXxS!CXN}e zE{}1VyBx^vl_}Me);EC#_s4tJ$BuB0{Kd>mGVFE-v=Fn|=UsokkuS&^0eP+tQh8xL zKP;;}&nPH{c`K{j083;uf4mX?mG@C63bR{_K(SyF^%nmUM?N@3~x|YX`h!n1|3j)!L)>y)TMpca>pPzA3#$qx&EFN{q-&9 ztsid)OFW zSsu2$Y1|%VXe&RgK^X#t`u!nC`4d`{VGT{85ADLY@+YhA8m39yT3#wUXob5 zBr&C2b$>~bNKoKzQo-6Z1y&WXUKGHTZy;BeaK5CnSZJ1{z!KA>5~Bry{{E5@SeV8N ziswilHIA!_@@tLqtLM3cV*AQN>Y73x+J#o|CsZ^!1%kNRB{R&up0yMQ6R;yJWducN zIV*q@If`3Rh)HE3y=2Zp2QcQIM5hLYGcx8a;iX#Pzyj$uX)0+&BE&n*Q;XJ4zuw0`m#Tnp7JH2MzLUFqG{p%C9qa2f(68!lZZL%DVq6Z zv#>+r`a7@!$C(}OBnp2@biE-G-Z4A;dQ14VLU>gqymHH#5_-#)PcN2wf?Kb_k_%#{ zXP?G232&sh-fVY3T?76i^#3!ij(z(@FJ107I4UrzX5;bw4<1eY_{hy$_t!1m{Nt~8 zj?}E*@J&a_gP`;cO?MW)^|x%~yUm9CH(ow*{rc^T-;N|=jqqUBN`Z@GYWwTHj)WLe zqIg+!8S&h*-IsTjuNoZd0!`@FVPV84DIxsVMnn<>Ltx5%HM$oGMviF9j!O!~lwj(dLGz278i`!;xzEP|=km@ji4;NrSq|tNL zF^{u~j5raY02=f0(pT*}KJB+;H{V+ZdT;bi-ji7u710A)pLFvds_pDwb;J?Q}GdDIUMJ)8;nu9J#wiv|UC|-2< zRC(mt)kd-hDF@}VFM2PZ76pqn(Dl~m?e>xGuSeFtRQgRR(!%tOFx-9GSh$4_ogqTB zDJSJeFNh`IntihBK8bAqsMNF^+P~;CQBn~YyV2A2>$zw0(&7|kPwOvNhyE&xALR`< zn4zPci^Sf;2}03c?&`9sPruBAzb_sb)IO)5h;-JC;-6QASDcQkv_pCsJri6U270=@ zvfkbv=|zOUEq7^9D(F77OUjm#g8PEtP$c+ihxMK=bqu=K>wq3hqqp5|(4_P&KjBLo z*A&SARg_F?Rv6Jfc+M6{+p~-=H{|U?bwR()q|H(e4&SnWx|8xFIvC^wM)$M7h=Sow zhqF()bh1)s^l4CLu~Ll-Qr>E;%3zpy%{v7Tj@k~H`3s|+@(7{(aE`bQB%1L>* zv7SXg`Moi`f<}ihdW8D8gOxT=*q}7B(rOn1xtS%ueHqBx7>lk75S;aM`HUqm2J$MF zyxx%VL8CaAQMT_dKz^PjR|#f~akg@qCMesc_x3Ko6F^md^)jh=EaX=PbVpHN1*w_kE=P`1*_ zwcWnBHRV`iE892il+y5u?`c1doUB8BtcthhqFU*44#|^kb$MM(i4`I7$vfP~E(8)Vy9th8*_q?MM#2!iamL^GxmG zy{D5|v;OkybN7#4vi}@2j@Nu@SLFEh8WAktA%BFweQLnU8SXES#i^+!VtTc>6Q!oc z*;TLx27O^z89h%tbecTY#d`zR<;**vOCi!_oPVN)E}6@h@LiYAno>rk-<>m(eI56q z^!xO{fDEz?WTqTUJJPt&S$UWqCto}TN%IFZP9mH|a-|jQa=x8|Gcj@`$Rf^1lhl~AupECWb$ESVesBYd|r1J1UA!?Mc%iKK9TMSy<)Gi zegCZ&=yaX#{F;5~zJ8j6zyD&l+qwJ*t`h?Mji8ukwE+S@+Lg!e<)+E7JH-|i$S^HPq}o^QsU2nluJm; ze3^6k*R+$@jRz+`c*d;K*Fiyd*$Fr2rA{HQf|=x$ zzwu`{D-Y399!!9){{;qKb<}lsfXmno%uKvz*j}Y*6Qgy_-^Pk2Q9jmM@slfr^VguY z@^AhOr=|v)-}$G3-$TUDv0tU9%X_rLlI?fJitZwZrNqwrSYn*VOv1lbbqe=e==Yj^ zKj)^eXnvnZ0>4LyUqrvkpqjaO03;4;_JMUtw0C;!lI0NjQI+R zU%aMM=)HvL{hD{03!Iw{GaeO8S_UfwKfHD+jL3fGA}`cYHXa5PBu*Gm`Vj#y+~4IZ zMk5iD)r~PHJsX`yMDxhxC7mow2Q>F^yE5<2Nta;tx}o8yy5@5Ry>{G5PdjIfZeF>) zV%d8G9o9^-vqLK-qo=ED|L?u`B;r-sjp92s4esi19LTj1DCbG_`9_gBF%eYjxZbY%@=u!9+|{VFPC z4VM4hyk8}^*kO?TS*Nhn#JDH_t0heqv&7GzDJH2~=~*J>@vAXq?JAfhUhl9gHEsHd zo@3wiAK1I`6_{g3t$gj50S+&+kv4kJ_udcLNIU#_Lz}vd4b)rt5UB1?4~Y6@C0i zuT&xb7@ayYRggORPH`LgbrqS_AAx5&tHCpSY8QUen8>d4yp>zR?E_hT{Dx$hEo^`M zWWx(;1#7GOTTXgL4Pk7RIjWCkXD_}B%u`tA3#S6}AcpygMMH*JtdXWqSEezueC+6t z$#_-`hCw$KojSdDV2QAa9drkuU-7HxEE_}e1@qpM9AyXHnX?c>E7%y?d*FaYKbp@q z+)|6aV4Qa4Bk0FarXL5Ft~lbgw4U*K!qB1LdpEE?Pd?vpSMAP{S9}bq(1QG(6-PXl zzQK}D1#&Y>e&s^LeYKb+-})&?_rTJLV+(v_kV%VGYmf!%FPARlZ+4JQDdXcrSu=D{ zm`eydIfakkmh9d>wzmkcns?^RJ0r=6Gm>e!{&Mf4%bUwf&#WeRMo8N!2g`puFw?30 z^AS8dv}!i5{ORh7_uQ7|PqDM7_^&!YboOYM+w1KeskHz0SK|Z1+@GQO$G((yXH?Dn z)ESSr*-vWyxcSPc02r+jjov5gyxukUBP1?RLx;pS>O6l-Z!u{l z)ZpH)^ydC{dlAtK&{2cSvbH~p4WJ1e3iRL7=*5de!q7z&f)Jzsl$*~?82vV~6LlE9 ztAFzvIF;ZjaD%z3@@3a>_@2BwE!Mr?j@$byds#}kaX+iY&d~^5NV28TTVC|f_q*UL+s#RPhg9mt?B)&Jr-X?a9B zs-Z*ab7$hV2Ewiu%Ge+;4YQv@MFHxfxhm`HRpGH+R6X>-TTsx2iT>#~zM%R`F`2$^ z*qdEkQ+d^O+&D{BxBfA?V~~RE38m_yzxXb9?1-fx6CLhvdY}AdSf+RgAt4P5nzXqr zyYbkae~Pec2Lvog=(9pg@Dibc(zeB=+BL{hQ1Yv>gXlf-1ad>m` zt6Myr-ktaA))$}I;_I|E+Nmz()pyem*Sa0vS>v?K(OBOkKK9EYvP7AIln)*eQoHm0A-WGF!S)fZP&9h z8|I&_F5R>e^e^FESt49cxD>1{d&=k}9%tOwR=9Vd`_F#8k{kypo+nBM{~Qad<6`a3 z3A`)4sy1vA8e#<#sp87y#3i^We7VyUjuCd==}(cHO)nPXVr_ZYeO#)6Siigps7lpEQ2d#b?h0;_ql0vBuaHdc?YlVT)>7wevKi8Ls zw~MMHqciIGu6NAJXotS9ZxT*uE0-v!Vt7Nj3`rdH-K0}?O3&nX9V%PIKJqh>GjoiU zEJFEnS?s z59|H0!ucz*?A-`?h-ru;o_I=&ZBX0 zi^9nt7lCXXF7BvxlCi}gT>K=(IfN~S<6`pF{yhHe#7#AV76MZO7JlETKxCld{3M1?n-mJ$(Z`a>jaS`J57A{7* z{!2WZ;tR|a!zpHJ*Lx|rhz20tD*UMy7hwRlV=@SD(MXB|v?_41RCv7>7h&9*=~mYV zw{Q_eh(=Lln_T~r;G!Dtf#KqQ*GG9|F>P_>TytT+J;v-h9q+lB-`jn<)7(opbA@x; z1)o9n-xdUo(}cAuX3p_fh?d*04xVEtRw>hQ}!=E4Ix#+%DK ziSGtq;C(7T#n)w?5wsn@?+WnL@GVK^!bv*;KJdH2@=xVuy3F|V$6I#4)i+~|-(2&o zs@>*9f#;c02Wmtn+Ov^u5yNzhUBys{OEd3|UCWWg$pM{ZSp-=;=-*oQ0#y{uJmi38 zE|-Ffb^)!pnD}ir1vQ0kY|5dElgGA2v6GjzgGp1 zLV#8?ZVg%W66PQFKL2IR-@l~{7X{&a_^;6XOC2flhNkdJT-;~pzZDnjmErH>VoOuR z9$bV6V)x-oO#=hGTc$SvG;Kil&$15-q=bO+um-gpU`(` z%Hqwz=0BoyjW?J5NPO47iTCNKFkOPbpzZA%Vf}>Zo+*p%!p(o!7a4E%{te(A0H3H! zSPpPM*ZK(yy;2sZP5}DFKz|S5w*meuUzbqX_I3-vcMSvnPXoLb;E}xV`oC)T=_vPJ zx`Ys?wzrLL^%JB|r7XUbWd5U~4iIJl!kAA-%>wuy1Rqd8!Fx=~;<8x){{R%22k>#9 zj!M-foN0TzVb_G}w8fhb{?WYZ<}&Z^`p0}aYNam0_x#&)c278&zWCCiKcd&(TsHc< z{BqhiPi#ifrw&q;DwcH&xNw$yjxn`6d*Q*~b#@V!t8 zfWkBcxYP#$-usLM{5S*w)(<5C#}VL{FZLsfTaF0OI0gaw{e}PwA{r6k4$0~;36SN= z5JkiR1h`8APLY5as}Nwpgcbz&V>DuQL5^7IKawDdFPjnIem?}bG#mj|uR?$Y6G_0I z4hZn`Vg%ToOHxccf+!yPAi!NE0$du0WW4t^NkQ~R0DCtC7?Ou5UNe&vd~XC0>JVUO zE9%E<$|hj-p-_qdlL8UIM=D3Gq7fjVf6#D;Po3;_1Kiq1E9z&~r@Uw0KP$501G`uI z68icL7VGO~hv+i7Xz@#ze$F29%cEbP+WFzV*G7H!f@a6;IRUOeeWVTh^Ql=I4&MDd z=i!H6Tn{U&UuQuZ-P^u-_qU@yM637Td3GoJ_VU~n*N|=}AGkRks50En7c<1zyn}g(I*PE`E6kJi?`}|>G!u30Q{(Ap8f!1le zvZD9GA>zg}aVIut$3M_|?QZ)0^J$(%Uycnp0tN`XzU`N@Ji9}4>z1W#choK~aM(=L zX=J4ilFBR)5^gUUGWiWrfzEFMc?C^PYF#zC^!G z6A~u-SMcJahlCEg7Nn>b@eAB}V%LzG!e^I<)UJPHc}U%-7nX0WY557SA;YS zd}Bq(zTgWhLd=tftPE+M^z6!zmf$y5h8zvPurj1|*3eZUZ3CZO<<>Y*w9D*BECX)+ zhZA>G?Tsn5s|U?Dl+GG*Ecmj^g=2M{GiT4QT{r9FVEd5|1?Z1=n3TdgQKlZqB$P@6FhjGjwb9$dtKlPelz$8`^u#$g+}Uu~8c{ zh9>?JT&u0@jB%Xu=H@%BLq>_G(EVecCNR4~K3KG^iI)~!yL?jc zr=o$1)qCnM8=r0)Xx<&tIIv6^bb6q|jaM^pM9O>iz8-(p|CpH?_G01JKi$1s{NZ;$ z^*^^RW#h8;joTETqYVh>VhEf$Mp@{R@OMG^_yRsxbSAZLyBlq^pKcS z2j}O$cI3{2H&zb(>PMaD^;U`FnnMY<_xXRe;p*O!*XMhk{!#x{_{D%4Si9a{p z)z^NFE~M45@&niYPG!A%7aoeacqTA?13YV)x#iWe%0j8f!8wjMOPX^wl-7w#C2y6^ zDSXiU34f%R@QvD#zTp1a11S=B|7}xt2fg@An#A2D`1FYLLngi}b$4;tGQE1{@=Ea= zO`Ck9)=6G}==R=`w7og&66SrgEox-cvse4ihFCU>XYuy0&VOTB!?v03gf@8R;DM>@ zKGcNkw^V87d{gkv%C~&BN@vX_v{B_1qLDLi$c9kXoN1&>VVj5k^-{ovBRP9lKAM>D zW5I)l_nlWA{B7@>AD%vT^urS;VQ@}(@w1K_vI&n0hd1TOzVJVHJ$U<()4%>6G^QgxZZ2v ztF@z!Oz(Hfy;JTzZTL&oO$HQWYXd3+pPIc+w&a1>g^+LeBNiZXnWr;mMDH7TWXvWmg-Y+XxTtnwS(HvL8C&j=`9;GHoQ0E8gvCN z8SGiPO_wZ2L#*SO=&ggJ<=JC}=rZ=cJW zwqg7CKS8hre|7byWd7ut>mM|K>+9QFQgvX?wf?g|;0@G8*=t`lei*eEq$;Q*j|1rXVKhWg&#-eFRFR|Z0R$K5&Zi@pU*U1*IfI{W!=};e*<$( z+j}h6FMPuG=bCOTD*14D;FN|B+s1l_@OL#|BKSK__V(Jg1(NHc`#DWN{<{0kiRbzb zolq{_8}a;P=aw=e7;Yv?V3+uN*mj_49yui1SNfUq+l;clFL^^CssR`t1C*zGl9|$scQX?eo~S zAyPa3OaCI%`P$G4@#D&`-Tf@$#eiQFBgBVJ${LQGzAO9Jd{99B=NE5zna!?zt* zBwxBb^Tl<|=ix^k4pBA$DYb9#9`^a@9@kaZXzGdcNd<*@lh38zms6%9QeaQbxaXDc73 z?%3h0qGfR-Hl**4 z8}&}b?md3*Zd`qM^auO;9r6F<;_4~i?Y(7QN=2-Ce zFZMqka&_aH<6$?GSA24Ip7Pk9@Y_d|PE2@k@NqLn^*Atx^vIJ^k_g^$`a4@ZK*3J3_PE{ZvOi78E=hv z0d6@E#4dQ30bQ?^I~qNjJ3KPncoQm>Ar(!_qu^B-cqgo8q02SG^(H(tX%xy`qToFY zcxD<4We3p-&sf5Oq?%KcpE(lO z%eRE^T&Y~t?D+#c(d&(#&CQT33*T2B-l`1U!;jcUJxY7atuRHfI7=`dy+ zp!X5seXRSvfNhb{q=J`J+{u@~YD)d#;n82)h5s@OZ%Fv5E%3PTCiJ=+{C`o69`Hr4 z{-_ht0lg6Wd0yO)-hep;FBg`2U2KP!`8b%Umz0Mb zZ3?efP5^^EY>c>~46lT0)ADbe(ECY6pbxy=0xv(+^mRA~QbOP<}~hK-jiFZrl-5l z=Mjq}CC?8n-njbx{r!2_xrMzm^8CdadA)lN7iX*W3p9E$eDOjIpVvrJ!3X}}a|iHg zIr!uUd`ci+Gecu2(C3gJ8lXNyp)J&mRf_RPLM)r&(2m4n^lgG3ph@t>75JtJwQ;dO z-Vd7D&)8qD$%IcW=>2nYRp}aax(a>WBhOOMWVJpOiBjh3(5GC`HxJ1VcTk##^M@;k+YUEgJKVDM zaOclgF23K`_VeL48n2u^d}UJaZOhx*Zd{mm;fI!=+YZk=+SYjd+N99B!+Y!Frz}}< z?89RtR=j_7Mb6q3{tn0~&JZ)sPVj185xfI1C$C010ft;XJV)PDcFp4eyod+yprQ8! zJ*hE3oP>Kp4nQL~8nLxJd?O4@{)F1{2pFVQf0a6 z_O-sf93%UP_|NqUXLU~vPh0A9-YN9;*LoY9hy8)xE%bypy6Y z|BJQrkBh3x|NqP|{1kEcq2iBhP)t&!nc;^+dTaP$p`oIpp+XJ{3W+cxmX=$?j|h!g zYRRRtT`DRnYpKlGPweiXSX5L~u|?(XVp+=;+fvK6Y-_vU*ZZDxXD*k^w10eg2+w=o z_kG^yocH;0&pG!vlWu5?j$RW~Q(e}z;hp3c^=BHi-Egf-pLm_AX}{C(<|W1j0k1~X z*gICG+v0C_Hb&3AE~uuv!kRwfy=Ry=Ei&I>zcw`FGJUsg;ppYjX6rG7-tTz(lQqZc zdHn<**4460_mNvd{N4*QguLQcG`mQfR%bi4HfU|k%Tfko7P|W`F}@!^C1}3?hIzBX zLyL?7?4B!P{z^miT;uyj+zWW&NSeJdIw~8vU)`K*OTO8e{j+#u!`$9Oj*KQxjLVX_ z&f1HSbJ(T!y5qUt%l^b2Ii{GPfcSkI-fKvs(s%T%DwPskboP8#chfwri78zfzMR9yN^|)#boT?w=Li`G^uycq>N}%nP^h2 z320KY&K-++rE{s@ZpXIzuRlE%I`7rJvs{C?*kOmn3?qKC?B|YkhnmXYbOc1dT#U1% zpIF+oQ0v!7O;Buu^u6d(pP`qfJ+95&{`)$pQ7tOl-8S%c$s-3&9eL2d{o%cj?m~;m zoNFwql=@EDov3*3x{bEiwCR^gbz6OlG2JEIYuo5Z?^xKp+;&aqJqz{SPGLr@;To}; zoeMuW5^auaK{X%CTcr2fp`ll}6Z=sX`cZ5CxnqUhC|T`3=+IB0QKP|!j3fU!vObjm z#$%aB9}ivqxb=-E9INllzFT7mq>fQ_`leT#|JoS;$*i=|QoXb4qswlb(RwqLE$$ao zwg;E#Z2u6434sk0nmaG?3=4-s5|(?~{y(Bv1Fp_H8M*$tXEOV==?kgg(P-4wx5lSC zx~nf?g}Q&}N$1+HHM7hnYRO}c`azw>w8IgPhO%S*y2fa|)If}zLYFmmQ(wB)kn@Jr zU2K;c?+`_qzn=Tk+;s-r#T*WD^JpE#YBHtmMy>QDPS zQT+SBUzwy~r{{h?jKqgu|7v`9+LI2a;S;IJG|hb6D0`j-zY>!5H_5*9ryHYd&eylL zx$MVc(rUtM=^(pYrdEXTramyWkbr+<@TH96PAJaMLx`+4gu}vmcf|2tfI?Fjj zM^vAw#`za_f9#Tbk1NaVs&v+6&KQ7UOoXGXF+h_BguizeoII(4>E1(AT~gw{&~XGtMlN zm3JQd#yf8aY8aKg+k4l3gRJ)S<-EOVE*&y9bUQNao9$A)J+iGQ{>*1+D&jNotY0dB zJT}ezt6{FUaRmR#(=>~&yX0$6(;Qh^cx-SMA2vspCQD6rWNDT6@_@^UX_lrCzuN*n z#iOCVd+)4!?)tjD3WHD>!Ba*XiVGt> zL89pi(%g+Fk((YgdmMN+rMM7%4jwe;r;=JABDU1R!T_m_Xg)g?ddP`MkAUYwQTa+qJ2IJAy~Fuz&8vvmq&*dK z85HuM&K2C?ZhRRtUUA4hm5CvhP0F$sTVwu&A%SLZTL*qND|DIu0Gj~j?04pL znT`4i%niC}Ufq93qW-kM*XZNA`^cg=5R5L^Q6r76rysB1qC9XX$2*ZMavozzJ z5my{|W@`84)!p&6>-D3T7@I3XgO1R1Mtlq(&<11}Wlyl%78~!A(z9Lts%wfgas+qG z-WA*!Ub_P$N8Vj6-`1Y5*Brw@s!i3U*ZS4{2N}IzirAX)o;|3}JCf_S`uEeMNp#Fm z;GE-Wp258B_onMGbzmMHYQ7vE{WW=XbwtiwEK@2&gWmP#H70OeUO!!I#PWnay=+&1 zsR{EqHT^j_wU|3~$BF#H&KScYIMsg4IXb9$C_g@&ox}^t;`Gzy`+LRqRG=ticw(UF9IYVDmbf2YUi|s3iGv_NQ zR?f_?&{ZqF&*+?AId7ncp19)r!GT>Qsofv>2ipBf-tMRT@yk2U*V~^&yRZI4_aGjX zf4oN<^NG|5TN8!~(6Fw<}~ z+WpO;K|lP_({kROHm==|EomK*lC)iI+i|I<-9P#}wEGI)?oa<_>yFNtk|k*On%XN` z@3Y!U{uXUW|DDILr(^4FvMEk;p6yGia;tA^)35Thle!~lC-n3d{km^^viY20U^@KT zkQS}K5D^%3$2`CEZ=|?s1zkOcAX!77Ii=)3QtNb2d!Xcqr=cHwzVMh0b8prLY$q0> z4g8MUfF-)tS^lZ!k@t7nvi>W@ZJ%;{Tu9y|`XZX7M!fRq z{bwB+&aG&~_JCr8A#bj+|CZ38yX_8)JhT!|E2uj=F2|-R?fP2DPouT*x6Su7<>9r25*4-HG$;@X|V5k z;2;|P2sL`gNPzZ{SGDPXe$DBg?eR|k${RzgWosbYOU{oyxv^cH_gRvs-Ov9$+Pzg8 z9NjMtU~v3)3I@ju#xUK{yYU?LL~Kpikr7n#g?GHy?$Q3fP-+R)x4B>4<7xMqC(!OI z9nYS>@mg`^KDadV?vyVVNW*kf@__g9V>aLX9p)0->S<2bgLxLsH{-isF1FK5jV4(Z zOrxqWQ3}Rvt{(~=gP&N6Fwt{kj^@UEvm3h_XYR!G&4ig$#w=`|b%!FZBLEYw96wCo zPSDhHfTot^G-pf=`t8y)bE7dC41)y+%|Kl=1HC|79pBMJ^>)MIZ2>tneTzc|s-s{n zCj{0^Gy`p=sbyZw*s0KGv2hY`JtZ0sYiToJ%`^qmw|1I=4wBkID%5W%Q3qMG(qwQh zW_h+SShLa$^aRa72WV>fH?nq+tgXOguy7u%*{4CxO*7D8nt@&x8v4`Q*0*Sj(A-l6Kxj)>e+}oi%nEdHV^?XWdlN z5-MpDm2@^)yBk&3MvIBu&yeV|WbH$;wuh#@DP(O9YP@4AN_y^9BwBR_)?OiNf25LD zkhK*x6>pm6p$NvGBGKb_!kU|`{e?>U53+VEs$P2)ieR`DiMCFIwf@&&ZP*W0KStL6 zgR0NCog8vC5;e?+HN(BI)))kbtiAwiaoBMUm=O%MyGU&%sV#t76RGu)+Kr@UCAE2^ z_ES>3meejIYd<4v!BBgH)Jk`tq{+XALmncvHBcM541Q}OwLVfC(zC6#LL)xs6a64k zf33JLMSH{g)_~RZhA5r6W0PqPrspZH&1vPdH~r0Q+YdAeH`v5oC)&523VptBt3QMF z0zL}5u>6qGQ9&ONU5U^4tT&B4G4)JzWB18ILv6*!rslL+*@%-EuIaeqF~^(L!g;LQ zqYXhd+BMBTi^$*a*;I97Q#EcrW>uZNkJp51FyQ4Z#DHh0apnzc9*J6R+Z9}29pVag zrkLKQ&7`xs8oMjvceLL%1$$e0$KOv6-YxEmY12&hBZn}32@S%I-evtqwmMpM_S(VF z#_AATJQ#XkSW~2-=PIK~>o1P?PGj`QwJYN>D$?#~d(Tz0y8-(nmmYJKJ%(BJIYWB{ zo~edwXot)g6!71Br>|S~ph1rb_Y%lt}|KxSH9U6P+vLNlOJ`1*~4Sw`}6x#x*tzByh*jE2%T)5G!V$nrP z(q@&-I)%!tLW>KcQAAwsvcbmCC~k*~dyX%_Mx=hFShq8At#2&}dHis1?o_vSoBvs? zwQ8^!n;ST=xFoD&)5u&~Xxa4GK<_3b9lQMy$8O)%j*5Hre-O9uStCfJMo{FYE&Q01 zSfFXH_v}Fi9}Fo;we|Mk5$CrP?ux!QBSl{SF}=e;f8@f)LB7x!2P7uDtr zOVhmnIP2|m_&(*>llIOu2i9HXWA%6<(yNW!Pk)ImB6=%g559LX-y^$vanG1{F&JHL z_#!Cui8;M?*$Pog%lcGJmtP&))hu%s&DkT~t+R(l@V&a+9gj=KkKAurYe!pSJ6*1gfl3VH9XOzD?CcWWf2!@v0I*fm`7ZZ))Bnb*-P#A*3NCDrA$)P8ql^SPzHAc-3 z=n+>&oBk;@YR-WjEj6XQFlx{vSmdrk96z`eK? z=T|l-KVTrm9on(iJdekI~7hc936K$=4?c`qn!MS(Z|>BZJ3&xg%1Xwx*y&kuI}Y_4I}T;rL5I)lNr)|&ZE zW?-{tc6K6bdhAoO*;&>zgGcL^m)Z1s?QmV~fpv#$dmKE?<>#9|e}5jW=UFT7m|tM% zmhFwqf39Z9?5{ht;Rbz2WY{0Cem3%T%qz=mL0Xu~h_1_BzJ8uJZn2?g=>hM`t#@3y zvyMkC&VjO&=eD%fPwDQUomp|WW665~Y51ft@0xY~NqN%cBOCA$e%@>w0?lXFHHS#k z^%Gf_=u7Qk-j&Uf{*dQNI?n`T+Q>fx-E01!dl+d+IiGhSHz6n9oAaL-deWB5_F8r< z>3r1d?ZB(=*mwbHb!cPs) z`iS2hv^&fT9+DO}d`4FAE_uP98`->LWtXhrQ}(Ug+#KdD_)`5-*csNRS{u@J2`f6FhKOI-_DYw6LeH+q}3Vz+6SekX<16jd)lf~uDJ!f+UfABA!;gQ6!k+Y} z!me@u{Fd---ojeLJ2JP+3OgV#Y*Xa-cg&1MLQ)m4=-z%yT9voF&Xu;vHd%RFUzC+M zBd?+5w)I=RRovu%vB5tJH%|zG~A*Gq|T=JSr5^*z4N2TJV+-lfw8% zZggV?iOFO~-P460#Q=I!FV6a&zR7#}h4*rEphw|V?`2AeM|#S8nKH#I^j>5P68zJ(oxN5xGjnycT^SZ^43jZe1q&-yQNf4rrprt&k*BOi!+Xa3lV zT$!B_G&Jnp3V38scYK;TCv9e*9SbGq&sTQMmNkzJQ!0b#xQpgq{NmgK)|0ESVr<5m z(1ayZ39X&{|8%S{WZ_K>z2cO9*h zdr9qcO7!paBJ37goC}ypw$8(nHE$Xwh8=;J7=BF4>91+k{ZCRmOlns_&3Gx)T1d@J zYG0Dtcck`jQoD`Rt|n`wHb814r1m`}YQ#FZ-hj!h-w~*FXQBuWTAbTx)qS!7lh%A% zPAAq#$2i0_)s<*Zk@^gA4oYXY>RL6Ihg7c}NEr(g*T~^}*^8>g@Wa~S>*AWq%s70c z-Ri`;(5QcCrnzT*+}U>_8x46b?=bu5!+cSY zb0k0FK6DE@KeMf#8Z7O5M4&3-P<3`Vz>QkchFpdF^iybL{U=htK`bx5fb*R9G8Zpj zAn?;Eh2rUy2k5ok)?G9W{*(@_(C{dp!TPj~mtgJ1_tIb2roVWAon6w`l^D|pXUMwk zfspo7VNIn?{`&Ch-n(|m*NuORa(CgJ6rF|g(_Z?P0eh0S>1o_V60V4EbNei|m8J?) z+qIg$h|Ho(j6K@|dy`(*)im7O8n96Rme(D+U)E3p_b#aZ>FO*@!8g)Awtuj+8XGy% zvhd&+Q|m{AoLg!durfUTmF9tfEjGiJ`__ckNo!7Bn=ay4{6N>LZ_`8T2fd?H+6KON z(4k+IDrGRX*o`TA?hVM)QNNn3pS1_f3Q9Zwmc_b`zY|%!e#6=L?nHNYi}q9NmG6gE znM$0tuzt^@+PQG^;+BQZfW^_DX&=ISNbyu(&Ev1~992Eqc7b2!J^J_;gZLz0eq3eW zy0i$t>3^vXI5Lk0ORAB`%Zmf|2UKI5LHs@-m9-u=v|QBx@!tImy?6f-J>f$%maEWM zoV2ysLq`aA(!O9KdfFK}#T7FZv07=}*FXz8H($`9(cq`hsL@;iBlWqS{fN3&{ZVK3 z?=@JSnJ%T>hv*Recep5H7&RwapM8(rhhJfhwY6;b#lW17aLsJ7buGR}W4MMkAllxg z4TycT0bw&z$7{;sN20Lyvaq#RKdrq?k?R+@e%o}q!1JCr{TH52ap+@S_lpLPJapM1 zn<03{djkuvey_v(Vzllm|2k?vKOBBZqVM{txf+e?>$lXlr&TuqP)E)_~#+@QycCH4RX5BWG{Qf zW-$NalJMG?k)da@WE(IhoQb06ad*M!#@XmKfoWw9XVXF6w|f7+VE4F#Imcl%DA5+= z?1j<#r)-8*zc8(@jd6?)&UoADZk;cCfjN{*Z5e~n&HFaI#V0?R>&$3$;*3W)fYd_L zhR(t(IJubh)6%+Jci>@L-<;6Dglk^Zzt4^yUT1o1Qh{yd-7VEI3!AAMp>Jo6HUwN+ zl(yK@No)(<=p;=6i__0E*wSaUw})T$Z8NJznu+ynh38pj_WT1c^~71piRrVX(e%Xq zw2#B2zn{x4tJgMdikGAv_j@ll&6~T=vte1bIBRF?LcwMKCi=PVd2eCEB^sx49=1KR zwIwmA4kuh<(e}61(|+DjJXwz65o5)3(1|hEh}Q{)|A#(w2Oe8}=v5!1d#yk}JB*$b zP45z#sKb3g9j=TzoRv1a=Th$s!=ud+h(}v*Egri=q?S$l^-q%8_0%typkHcdK+Qle z37Y6#f?J0t;EmePkRkjO8u@oX@bk#nw!kyZK)vrn%?nnYEtWmd=q&PPOvlq+z@}*9 z>qh;ZY56XDqBzO&LmcTWB-?#tc55J)&JELkChTJKu~9<@hws;&3Q6!Un_h%2KM>U# zc`ETyzxGdqG!KZKIZo`%t9fTm3{RHzWry2yYBBH0!ACvg+`DU~4pz5(i!{)ERfPpu zP=+SydbF5q|C%g&bMSusj7c0LGod~1B ztj5G6b+%W$@99T2+HN^ZTP7RQHO*xAF8`XK!nRfZ{&lACP4~(g<9}#F6AhvE75k#y zypyN5;aFD>$O zwY3hA)(lar|8irkxh3Gr8#AMV+D)}PThGK7RX5$Cn{f{|l%$o%YTn*kBNzC4RufC6 zdoO?Q=>`2i&#>VWprXXO>_H=X1FdO3T3;5LVLMHZ=$I8=du8CYSHLvPvkEcs44^Z- zweNy@XLz&GI3o3X#WO|okPbe7=#3gfvn{;osoCB^|ME{} zJ*+!5)#hI|r!iz8#WcNRuVb-&`GQTZQ`OICR?gP8t`esk%{1NEP)yT}GMa7}3rOre zYyLNSTamMZ+ED*H^qhEJ+^9ynFMIc@Z>5SC&vAeK7rw{*aO)yd>sOi>99elH4Zg0~ z`AMC#>}xazOaj91`BO=q>(_(tZpfD=BcINDCqh=|s}~#b4l@h;x25-C8Z-a=v?D?M zRB6tU=8*b1`V}BBJ*xhtqXwaK|}`R9K)U>tkoBgC{{<82X_tm_*>Ui8#mfpSBeEQR8*GrGK;0KUiT@JlL zem%I{-VqfT81&62TFaUjoW^gn4(tm^H_38dxw!S+D_NP1rE9QP{=_O2fBvd?`_aGC z>t}JsvE#{xEj6Wov}gTP)3VU+_cY$Vi@ADX%x~(+C45i){;{WMo1R|TbUr;85U`vQ ztlUzxe&Y_)x^6zqy8_w**)Se-S-{2f0d_YvR&l~uJRPq>PSWwBq9*@-(xL}%O2D?u z^?OWY>xH|!D+bb918z30`POMXeRubkkzD(RcH6UfHr8eu8>)6{F1^X2pQ&+*UaAP~ znSUavDWvx$=JIbbPa6 zpK%ICK=IJLK0oF~eUUWb?C=(<4qJobvuV}|?d@aQxhL_OKs<53c>VR=!M{AV>%1oB z6S$eWai4vvYsd6D&9s20alEvQp4w<*skO;jQ#KoPLhClGt(WG*)R2<$YEL@+V+Q@` zB&wvkid6Fqx~p3YxN0+0lk@x@X!VcL+_6=9$Dw(47q36v$^Vl!{@t_re^IapyKB6c zZ+I`i^j?PC!J@g3bXjl`ReW`D#C@gra)bYIPdjam69&%b1nMt|xV|Z~JK_Ud=&R1q z9%-gp^Q-p?-!>X_JJ1z1*WhDWT?EzS}Dc?2V5m+yt`<#oxDUH2#M?^P0DTnDvX`>h5kI<8HJ*|r4 z@JgbZ&VAbHt-IA9BcJ%zeKV<@pyQ#NX{e(IYV`~ZhdFehvzOF{#=Ui~-;T$#AA9SL zQkdwidmOz^Z=u)eZ`1M6A+kp2K5MUpwZcpAcy@)+z!`{vv&#*6cHCG~w`( zCCo6tu1|Mh-B*4#;Mh$(soF)^$^!(1jFZ~cJ zNw9!I8qEnKdp@|pM1=p9fj|65)Wh}PjT+4i@CCfNp?8kr*HS?i9K+rhzYaOFAj*R< zDVhN}ng2cH^JVf>uK!Pk{xy&%LC+8WAtjmXYm6GrEs&F4E9A6JrF6-DJ>=BJG9X{c z<)q&S`7DGRAgA-kqJF$a^Eu@7Ub_`?c|N~|+yMCr$frsAu&+a=Df|lLG{=$B4Tqfk z@H*tvW%5OklVAP_Io+4iy$W(F&nV<6Tu%Ai4>{#$F&>!m{5T<}^im+F`%=31Ku&rY zkjwq>Ammoa*Fv7k^~wHwkVhbVC*;)5Bs&)%C%Y|>%hUY^@~a_lgWSgT$&Lw?NOOk^ zkVkSk`9BkKYFqz=TrZQaf}G0vZ^)N%IoY`#ax=n~OYtj{cR)_%ErMKL-rquwCZgE~ z`5dlK>3$43T&Zb<97%}fBK!Y@oc3*=hMe*xmG=k8A=3N`f1u{kp9@=;A^Z;Hi)8Y2 z$nj6}9ps4Wv9k+8%I7TO_`8X^LQejwz^|uVu+zlt+zYwfP7Am5 zbI9d(o`c*7*)#Z+=jUy1=MBi^c0S;C+>p!d3_~6R*#-O>@hg>U>Se54dhK{S(;=sF zg+MO1vjlRg-+7QzyOZp!;&zrR?5u~J#(^}*rSX9rSpqrL?`FuQ`lSlG8FKnRXGM?) zO7`JrC%3alVdv*u?u4B3E9K`oZs(Z7&dXf?VTGNyA*XtJ0rD7bhuY5wkW1qLwW|e?Q~%WI*tjd{Uj;dCYvw@i$tMJxAt(E0$mRB{xc(Z2ek0f4 zsnCBKa%vy9Lr(T6UCRIK+|I)aJLkEb7ZrB?3wa#kzXLfgS$V-l5K=vUC$mHLuY#QF zE7Wg%eO=4-BO&*c7kW2v`Q-}v0mv!;S3@q(e>3D%9|e$m+JBHn^AhCb&%<&%5WEFB z#lH`7xj(;xoa*U0$muyC`R6~7lYN)M{-u{Q`+ri{Uj{kZ|A)f0zu1J{2}p+6n}DVy@&qtH); zocuYc(7%rBf2Ytdg*+Jg5&q-ry%KV2C$k`z_xB^*egfoj|2)F&XF@Lb&+oXtU7`OW z*S|@j{}0G%oVpKksXtQt3|_+g`8ecqe=dfc%G;x`pAI?s=VOI^JJe!oJ$ zoa>J$^y|5PK;ZcDwsHOWkju;4#r3TU{f{B1`p$)%`hhr3qQ1U^oZ5c{51m+^|KD=^vmlq}{~YAh-;?nNE@JhC41Nwd_4gH!%lrF9$Z4Lv9&%bwNaO9) zD_FS-A(yAS5OS)=n<1B{o5A&erqJKU^`BDcAA%er%~|}B=d%WK%4Z+s@_ar3IgJ(y3OV_|5^{sg&T4L_Mqy_ow{t{c=SD971>{nFQMszQos$YX zN4fqh3OkQ*eYZmYX|DgFLcg2q4=eQF;QD`8=%45MK~ofd=K9khALnN*zQ~`k3jGks zsoyPuTq-ZkSLZ{HBsFP}Bj{=W@mznELO+x1Z&&EA<@&o7`n$OPPZatNu78I@zk%yN zq|m>Q>p!N@f12z6TA_cE>vt>k`yi+1>4%WZpQnS|&X)>1UvfL&D(vX6xFvrEg^q8} zvmqycUJAL~pRrtj5#)0JuYlYDeF5@mpwut2xt(lHz$m#F0Yrra66|JcK*)oyrHl& zC5icE5OQhUAb-X{PV<9*KyC!dKh%ITAg6t{>0#b>P7cn8oSwV!kbBn4(7zROs+U!e z%iI4QkW;;^hg@DS4|Dsw74}bY`?o3V|DM}_NMZj^-2P(<`~T$nzgFmLlUaVc75cLv zr~G{gx!gZjKu-P{hTI5B{#g$>`6m>eS9-2dL2rbd{IdXZxqpsueVao6QLcZzLcbew z@@Ey~a(})FIr;N21$4$jScO3i|@rzo5{+mg^5I z^tW?;9R@jh{!6)j2;?)6j^xj3$jP5Z$mRZg5OVS-eK(xkpTCBj{FAG&e+F{Of4;*0 zCtSZ$q5nD8zeS<{1LQMcrwQ`uAmx+#OXM=v9v+9>$mLYPWXLK1XCas8e=X#c|8tPb z^S_tt|4X4?&-D!$H01h^LvDqgrI6#2`3-UZ!0i-4K2wsz0pCGR>E5caGaW`~ecl2& z>NIMWKI?>%XVa|2fzHn?k>X>j$84^8CC5IrYZ{kjwk~N03wfE`gl-lhoh8 zft>nP8szxr@lU{V=ATUv8fE%%kW+aNKrZ)B8sy}kM#$y)v2*>W6#9p_zDuFs!u9{4 z(0`umk1F)tTt6Izkmu(wTt5zSd47UcuyyQ8$Y=9%(Ri`|a%vCTAvbb4IdCQ9RNmVa z_HTfk%6m*<|0i7kMTPz`uK$KY|0T#VWNZEmIUa2u|Mx&n_4p6S<@NYB!w6{JaHnB<<1P&h;x4`lVd|W`%w=*S}k#e;3!kU!ngP*MCN#|18&kQK5ep@`cFX z>yXFtd{TS<5^`$Ke}&x01i8GvT-?sf3OgThJ8vuOj6rUMov$FjRFmzO{%^THzSm}){XcO17Zm#6asAg7`qR_dy6g+cF?I3u-$jr^r1>ZQQ2C^OoyPSI za2lp1o_4zta?&$GF84zjKd6xRarsXb^3S>a z35EPWT>cw{d}apgzx|L){fpY+3dpHHe-AnJZ)v=;LvBR)QZyo|{nPtRC*(9vT?ILn zTk_j6uD=oT7%nIKry$3pR8s{xrcxgJZ$J)_rXGK&9;9@?fSml;D%Z!J0R0qzI#eRg z#QbZT7JX-X#x)rg<@@nz22~sJamwYp#ZO7zP`s4TQbGm9yFO(BbvV4fH)!QvxgdST_xiXt(= zghZ9NNj~D{79XsloF*izL`?A!F}rX_ahVu%nMzFSxR`5@yRudEaSslB7Itx^7%f#L zn%N|aw<>LosAyL6huN}cQ+esW1I4S#Q3GXV*OZnOuZ62w3^gy9lh&oL&e)!jowjk~ z_So%fH?FOyD&1AOvyeXQIs+d@U0mr^$X>NEcl(Bw*R0&Ia&5*+(iiWoS(%%)eRJA| z?Q7H4tYo5%E3;Q-lX9&?K>!hj~L&-6Q3`R&pY2NwrNhO*mPbyK>V~IXImdHG&Ov6VbPD~M7L897lkjUJi zwC1BhCaIP&$wwKJSQ#aEqDi59`1E5EE59OFNv!0mm7Jv7ERuXQizL-%k>sOUBr&fj za+S>dp_;2?<`rcO<`4B4swGeMQSxNfk|+Bpd9rHBlYNvtd3=XJ4a!D0pEa4H+FDY4 zw3Zar9+BdsN2Dv<5|X>Bo%Az#x)133U`zhr&U%K9`ae9WvVV*=EH@{lEfimnc7@qnS8R5Ra2QEk-AR0o-5%paNHtGh~h6tywbDxXtjR2J?pVdmB5QK|BI)Ea!{$brgYYNKL| zRJG!!TG&0c!lklmOI0gKDjW4v)pDF_Wj57vXf`q5n@wuDG2_cZXi{o6spZFPVi_`< z)N*7tu`HQQYI!o7Sf6 zSvCJ=d27Mv8W@l7{-@kJaw6^m+_E%GvNM4s?%Gb~pY)nZ$CEm~AdX|e9P z_S$T|klI+fyL?qSH>O&|M3YQCt-P@85KWj_j6~HU@)?tNSllSC-+T^;WsYnE8Ba5{s$KVvfP@488U_CMD*S z)V+m{Ybq=DN*z}0OSu)fhaAN#%Ma|mGGRa45@DUpdqZssVD>eeF;AGzWR{BKSz)E` z$&6WjHe>cRoiQ&{T_l;8F}JEWxn(Iu;%<+)Cz2q$Rxhis{-8eLG5ebFn60WaWwX`C zRM~7*o#>gZK4yAm>-gF7+Krnwt;+O0j9ArMqt(X**=$uGAFV#7$Yv|+gUYU%>SK~@ zPE}oEnNxkNvCOH7Y@|(1QX6SgS!ul^?T=5m&8f^46LRjWk)*25ip{A$1|o||wUJm% zJ{pO|q}oUR4gndxjI@_$sAYy_9BOr8KMd2#du> zkFZ$G=+hgrSM6VUaA(!e&Vp zi`p#7Vp%5kG>gTm($g#!HXpJis@59cHk0}xYC9)=6;(A`j~%EK_lJGAM)mDAi?97P zOQJX*9>0S-E=hVgPUgu(A5R!dqPSofZ+TJO zt*or9sFV^L=UVX&eV^rzcvQVb@?Amo7Q{CPm938N3r-Rzabo6KX{6jwFvrHMNzADa zOTIP;E$Taj7GGP07WF+si?2;Wi~261CE3R#%z}Aw1$~2Q@m@#Oq3t^hcb2fF0GyI0 zRqNV~?3+Tp6)Jl>qVyi$V)Te}x8(5mDC0%gfLFLu)Pz{^2$aN%QBM*p9)6No(Ym-e z#iT7`FLh%1Ya+_jy3CE+(IjMBk&+hfaxZLHhc`syl|*-VHB@gaT__o5^2v;5r=_pV zmfmBD$uP;n={uYTP$CB8-J=roLPyd4n{+g+@{HBUM#bP94(pN^T~n-ORM;o<>ISt_g7$R zpcF0rCewJU@Qi44Vu2kMjssZ;n}2sAO&zI!;a@_S-gOQ>{|z$=w_2?Pv+zxTc~q z6B}$hv6+SML|#>%S+N)WWuBg~u zR=l@x=M|+nB^BkxSI}l5ZFgQFy^6hJ{AiJ|cS2tk#}D?1-~$K?_#8nb6>$ieVDf+I z{$fjzhLHasW61XL-5u?M4 z0oGQeP&&qv|H-z>P(tta%L@1J_l_l!RdF!+pUh4^mN4gxA56B>X!1YVoiLb8i1lM* z$@X!B3CoT8XfnaHd@#WZ0|UVXmGOhggxjiP3H<$|g9*(lyrankyW<9v33pY-k_kG> zp+u^3K9+1BH<)byu|rSU+i4}1y?x?3?8i<%v6u;FwYUiuU$Ob|CvG57)j*Oj19S$8 z$4*v_o#HFDco2$5U#1$}IzGDcG!&1Usu~wt4YC(ZI12_+8H|UOXVhg=%XhRecCmR zsPf`XViff;xlxO0`;R}U*nuha6H~lC=*-k4ho-oA{HZBf9k3OL^sL4hflV`>Ww9D3 z))5X)sh8D)R^g+p6B-9*B|nyuRFUHw1Wr)-Oi8LpWh|@DSgGT^GVUPNkK{Aa#1#}N zCZc;y?vcbv{Fvy|kBLc>q$T-EwfQE(W8&^sqWa*HDEUTN0-x*(PElkqNpgp3v6CdHC}a6-KuMD{pd`sj>S;-?QlynEIY~8Evg9gdEU9s* z$C|_&$v(Z2Jc&1weR?B#5^p5?^hUCxJB?oi{77Y|NG?-2B}HV zibKvacxU2FE@9cY`H*;4i|0d8f6F94sh3RhmNJ&)C)HS1cuUNj6-`PdbJlTlMSgHg zih^RRMHxRklumC+k<^`F9p?o35iThn3a^&fxY?k1j!TMwa;rp09XA7%9p>WEQq}#C zimDg=l&W6nRH>3v)ytPEJ$F*o%aMxOWA@dvjRRg>0Y|)43x-2p9u4(8;-HsDLp_%` z?B&r=&nFIic{C=;>G(Oebm~irHQ7v?rrH=A`A(et=$9wvB&EV^TNaa!ba`S-QcCl< z#>NhTdE!h`Za(kj`SY9v^F*7(8JOA1GUquCCPlMMQkRx--jJOM^F*A)8F=3(OOGE6 z^F*4&A2f{=8=u)SN$K$_P8mW<^-li(7m@ zGB)G1nEI%R^J4sl>HvrnW1bwr4XQbUQ^eV;Vr0d+G2fQq80J=*AF5fV`61Up=T+56 zR6eiR5i*|eWJ?pXXF90Nvu7r#?u{h)K((x%x!@%6Ji|iLB+bDy{Zr=1GxJlooa`Ca zk|$~NG}&Wbq=}uH7inV0H704`o=Mz<+@Uy=FI{lROtMUKGPSg6HpbFUnI!)yikX*m z+U&>bI0dCutt;QtEu1-IDDpT``*)MKjxdsrfN8W z#-pmYHkz!d`jjSbKH32$ak6bq`9ZYF>`9d{Nj{{iP`1ZqzS|?s=T!4g^E)5;x1yD* z$Mfwk>x8yTC)2pCNk=EEBC zdetSWy-gT*8croq={TH{_Kcy=at@?;Izvz4o!Vb6}Pvf(F5Bi*PqHhgh3 zZW8BtCh?QllqzgOUVM*to~itVc)mM5&Fs}4J~$}HZ>ZqQm;l>2V zdXCVQu>$)(LC2L~cJc#s6CF2xCz{=7-lLCmShwRw9L3?5nONln9e3KeGj!u*ic@s# z_{O+nbnN3m#J@|i(8rk?joSGd&C=q%rBzFDRzD){_Ggz%9g_ym;kKP0E0X57T*Yh|(!KEGr> zyE5n)oq$^WCVsyWmJxq~{kim^%lNV3vsC<4?&s5odf_J?#_>5V6XG|}huGjJ3hBVq zg!{+oLs{@MhR=mpi{FgTKcb&D{NkfmCd9YWhvMLezQh^!Gg%0q?XrMfx#+`P@Y9I& zVc&Cqh~Lkq4-di*KJJBnxHnjU{+96j#})R)539j_J$*P0evZRAa{Gtr!)!=CU!&Qf z)hulWkAP)h9hk*w<8mtxn>gb*jhxY(2F@T(`f#UO*c**Oooh7NBaFf@7>n=_NcRW9 zUm|>tQ5fL&`}uwPo}*vjelMfY!|%KJ{Z8;<+&{@EbnyEp`2AM!IPM>36k7QGW=5eA zyc7AT11UdMV3}4^=3p!+1IaH%;A$|JhqJ-!5VnF8-vmvyFuz~2qOReA?U_7S=r2aEDkM$onNPg|* zba8g_`yD*o3a*6SaqvE*L*GvY3Qgd>2sbhcb)W;~bTSrHffUaHHbJk9Q78g`im;tg z$O9=}E@MG9Ncqa-w1QL)6G;9tg7+Z)Tt>kFu0{M%#sWP^{=JCthV<$Cz3zto2%|6z z79l*uD4YYyz8fU{POuU8PcjPh{bS_MHjwmMI2$>OK#G?K9!0!dMj;2xML3&L$O6g# zHt+}-3l@V$uo@h}z_|x% zagg+zL9*8f-j4eXj6xkq_2gs}4ue!a2PpahqIf0%JiJNbTq(NbTV`NbRQ% zq z1d^Qwe!mXHyf53yC>-SX9sGV7Sc&^3j6xB(4`Dl_kPlM2d5l6XNcEBplK+yxV$cNE zg9ec5CzP>350)c7eaIl?dkpg~3XgJ*fRx`MkjgU%R^a|QMxh_1_UL95`oN>m>jKG6 zC!=rzq;%UE3z|U6S0hO6A)nvR8}7O{Uopyc1?^zJXnNq9HTH7B)urG z3~~db5DJzctOv>NMSPed*&PK*e;CZi{UJu-0!aFUAn6Zqx;c9}U7Veq9h~i)t(+~K zO`Hv!PR@gz4$cxzJ7*qe4rdmpjnm3$;*0|+|FN7#kjfhkQh9^GJ>(BYK?B~1@I?$p zpfCc8^$wE$IS}@Q0g(Ld26MnZM!^M=ekVx!CqU9`1)Zq(ghG$84XPG@?<;8oBY zVieASq}LCUUN1=YT;OuBi&5wRNv|Cwz2hM1HG@{LiBYHnN$)U7dJd5Eion}YUOQt! zE=YRWAnDma(n|slL(jxm5DSvtT#)n(AnEDBgV3W7#{>)LbEHXc7$m(xko5Y&o1y1s zEa(AAuL~r-4v_TP!2Qr`Wh`h0Nsm7Nn)I9?=~aRFZr3sgV?hx}difyf<$$D@3El)f z8)HEdNP6)g=@~)NivkZo&%juq2TAWDKAe;EMnKZL0R9AegNz0JAnEmiq~`)j?<9B& z^g0*|+Cb7f4w7CINP2Z(74)2p1yvyFm4T#Z2T3m%ycK#mj0Kq>>8$`s&jgZQEO-cd zM#h3Dkn}=9($j!6j$On$7!<}piZ{wA41xO){{mydIgtAE0HfdrX?%BqG_H0r7PNpg zULEGF;w_pF1+Rtv3Xt-Z1nxpQCPpES%Z*?$g1p=T5> zhO=^yf@GgQ$A2g8UtkmlL0VV!g5)0;NO~v19nkAw6i$GocO0bhHG!nx0Fr(kSO|S5 zqi_(kBV5HOIKW(l%NT_cknH4x}7&v&kAmbeiEZ#0!cp>B>iac2HcNg6hc9Y zuLmjq81_F3aDS9h7y;?|GR!Cpfn<-quYuzAgA~sVZi8MQqtL_eck%n3;8xr}$tZMy zTM$0MD71l;zamg9A4u!MY_JrJ=kmEAr56oekN8oHf}YDqu)jn12SLi;01x+p2~n@CqPQ4ol$57>A7~Cv7iN{bekE4Mv&5N0N3EMj!`(wnZ&w-Sm0Y@zh4JZx=u#nAV|;ED#ii_Na>a_ z3Pm8LYX?{3GM`b%11a4ckkZWrDP0?*U>b_b?W?KuWiZQ8)=w zx*cE^E>AED?I5Mw3R1ewAf?;HC^UeSu9M$C3{tuW83hMO^N2FWf)bF@En*b%K}t6d zycU=Aywkq;#!}f(fK_>A3 zgUgH9yaI(WkkTCiDcuVor8~$d41kobo8RvPDcxR1!3EMhr;D+m6Qp!cG72X^O1B+c ziOV)dp%tWbTR=*;5u|h*7zHOt=^o_wt3XQE!6=k~G;be@8P4Q6S~Rz$k=*lx`5CpaCh}iy<0KIxfc; zg;9{wrSB=EbO%97_Z*|p4^p~){C+P;^Z6b|!39#fU5r8}DEgUEI01@&25q=(V-${a zc?)6Qj@wQhpj31t&=PISektLJ>&$$pGm=TE|Ajg0+Vpr$tauzDcutw*=+@>yvG@ZW{}ctB7o>EvKuR~0QCI;|x=H-L38Zx6 z8HHGo)=Nglg1I228_g&fKuR|hwBRy`QP6{w?nS)ZqjX0=N_Uu1xBybR=lJ~rkkajE z6#76~fAumJ^njGEi&5wVDczHx8J8W5!U>SlrSCZuVVJtvn}fuvW)!$sg_(6ciN`5?v1 z1IcbCNcL8MwC`(W6igu5iR1TU!G*YQWEAFtWG9+Yhyp1ep`3bGZbS{7k z5O0uC7~uEa{62kOJ=y63uLVzVc{?~C@!A-L;~?2>=Jy*w(GQ#lK}x>}B)xo)($C@H zEFQLk6wkyN%jMA^#WV155Ez5>^^C$rKX!i~3gqCnCM z1*x51)UkYyfp~S6J<2EygOvUSet!_0i~Hvog#i$+Rj2%kSra*b2|iW)!kOYyoFyG72^jTcz167=UwzKMtfN zU@W6x1hGWPp35kNg7n@;4;}$Wwb;J`M?h>1We+n7Lm-Cw>>kF%7db0@6}sm{GXE<>x?} zIu9@k{ao$_G1bfNV-$KpOhvML7==!d{CSd5H~~`nt(*rzDt8G;<-nd44YApIj6x2$ z7tgP3#)2#mLr-=lqkuUoD?f;?n{8qg;y@~w5hS~4%Nlfn>}W{!7Y}!UK?t|Krg8Ce zgj;!-#={E;J9(JKzt0f1^KcIMDZ(}$Hi736HuA6m97I^d!y~A~KOsB_is^%YMA*f{ zG(P~%s@~{JZA7MKW=Ya1aY~x`Q_zuEG9yWko2y1v4b*(|)3WHBr z`rtDNyLh+*d>Y|a9&Q4kLfFZ}4zL|zI}hi8Pa({U#5bH+Kt`&45ya9F&f*V0f2VsX%{GwI-3;2m0uZ(|TR;uxin!x`e$vE&opb`85j0P`)2Jqit5I6=Rj%F0ZwdPxJ1pEdZ0>1_a!C`O!d>3?s z_zmj?-v(XaTVN;H2X=sOg6-fNU@Q1K*aE%^Hi2is2CxTof@i>k;AzkSc7r9L3$%m3 z1M|S&f;r%Cz%1|;&<6e=Xa#=_n!rvl4tyCjf~UY}@I}x7z5oV+&x3&GS0LFllOMs| zZKX+s9u&JO!Y$P8^OCks+R=F zsa~kQsa}pit^qLz5bK5Ndj#p+0{IX~@D>#^#b3Be!UEYSVR3=VkeZ)RRcP}BFI}o{0nH|@+K~K za=D!|kKfPX_ibEm<#H338@XJ=If#UD8Q|h<<#ck|Ic=O&PRbvZlk#WeazM1B)8*ys z{jzg%wYtn~oh~y=r!yt#bkTFQIzzNhXNc12PHH=~I$ekEq)w+B){fwMKzj~<`?PMY zR@bBL!*!3gR~xA7*9}0YPv^$p2ERtXK;5w42>xF18}ifXF6f8!fx14uTMvDGuU@O` z()ZxHOYg$pHhnuJ$MtQvKCW-Y-%0DtwVOm{hmzH;D_lKvA;BWu50ciD3>zn4Drq#Ko^+M*F)-x?o*I;NgptOcw{5@glFzEeS4Q+;Y zgI3pKXoalBaNH268#G+N_3`l5aO5z&Azbe_X1Hi@hHG^rhB4e3F^od1GrSA;N5jYP z_gwfOwA|tS;RDd>4R=G<8{QWlsB4O7jzDQ6-1vJkqBBD8*B)^qq9a19YmI1!tTm!7 zB2YIJF^s=s5f>rph&&k?sB4Kl9;wqcMK(ujbq$eCxNeASguE}(jlbt22O(*WYKaQe zU5s?1Rg6ZCL322A6!PK75$JS8oy1*NR1fZsMP0=8VAKU%4@8}d((2q%1Gsia^+Vn~ zy=8i!u5Ehzbd+TJ|6}iK;G(Ru|DSnbX2f9_6?Kpo9~2c|&|yFvL~Mp3Bcnolv$B{` zFep$0QZ%;)1_g}@i!Exc9n1<{e=S>VORc**ysS}DOXja7b6Y5KsimSKf4Xbi|9hV2 z&M=HKSij$Y|1Y0U&u8Yj_uO;ux#!+{?tR|Qxu*~D&Z%99AD!x&Dv`EKJ&JhC)K;XQ zn|cB9=4ma{z~Qw0)4<`h`f1>BS{>pw(`u34J*|i0(`%=rr>2celgkFC4Neu2mo zTK$ZM8R-8ReTX+i?2nL2?GaTGa@oj?b2Ba=*U*d+V1{N4BUejAEAYb+BRKa)oJOwh zh@Oa(5tyYB-AL<<=!#HEYa{C-mD2r@&Pe2nJdLv}vNKXHYl&=)Jc@aLB(eo*M8 z=VpPztdUuuFl%@g+BmBf=lWRk)*@aNTN8^lY4#xKH^;WbLK5b<=5)>hW^v78iS$Bz)nd&2c>7|=R(wx9 zS{v_-KZtN>(eR>?MUe4DojBJoYQTAL;m|^~XrT+|x`p)%<+8p70}BQh$Ysq7S{Ae- zv@fVyP=l~%{>k~h^RWWVKRCY$;c(nY+_^Zp%oW!e*M+byu0E~-Vc)!gd4uy%eqPJG zR)qF>Rr6{P_RKvww|6ee&pkM|X)ZXNW1lOLj?6g?&IaZT&KW`r2A2#ifn@6I^=O;E zMK6&y>6;O6(jU>wWxe{-`aXnB2}cr|6EHIp`VufR6HX)ElW;OYE~_=v8R`vam0`$$ z*AkMq$)7tR+F?MbLP@dDx_iRW;xPijblgd}w)ftRI&ONW-C|C5`O zAz{g;s&GECtQjc>mmNX;;Iby1yO;Ig zd~VqVqz^AUhxqWa5uEFd4MtElo;G3>QW{dQ&Zg9+$YmFd_LM4wLn*^4BPm#ym-jB0 zNV}JxTn<{xdvI<^ZA}H0)R9!I=BdMo52g;`ynlsr1zNwNZbkhHT(wpVUiQ!q}La5pOab!MWSiW5TR9oiklPc*NXnZZV?;=3bnu z(rePuC+SV;kec+7^mBmrTbvfO$I^;(m!%u$)0RG*hb<#`{^6=-;pPQ53hracgt71m z6<`JKArr(L+X%*Aw@idH=wS;m&)`(82*)w_(O41IGx(Zdz^HF0tMC_eQ-wP9c)3Bx zO3IJ=%2|EEcnL}Lvsw9Gyu>4T9fMy86JaZZ$=-s>=dUT`E}(6cjopW>w?(JN>9NuP{hJA>QRB3#4Z zc`+hf$KV$uM7V*$`xreZgCAz}niyQp=ruDqpZXL0)G&U6S^u>%{9kZ`O#HYQyqf4E ze;vzz6{Fw9@N*db9tI!g#qzxj{vDIgNXQKxf5J;-qSwIaJxmxnH?jOhL=SM6dwdwZK?ak45#d#fM1BquJ-~4cUeD-dGI%MY zm(So0sGIWVFA&Qwar4XY(Tsi*gF|>Re+|nYH%ElK7=DE0AM^$p{6{8VO)UQr2CL%5 z`hG(5m-uDyV+`(M`O9cN1E0z84>EX=;r|>f;`15)8CHJ{gKu@$&)|h_`V5}srpMqN zjGk(-$e)GLi(|0VJzp5yOYXnuqKAfvyD<{Mzu5;6amG~WQnF?ctt&ut&N zfz~(3a}%StnyqgtR-cL5hx)Y)wy^o8WAH(mkD#B)=uabhfb$vrFSmR#IFqf1JS#t< z5%V`O{Fh9AyBOT56Y+x#p2y~MGvjyRB;dhc9HSSc7GXVu9l?OHp6y3J(QylSqxIj& z*8jb{nBU0qll>O;M=PVhi|Pk`6T@$(_5jXg@Rx`a{d(l1<6TDI#ORZrAmz_y`9oR% z8_`d69A)dlI)*>$mOmyRWyBB4TN(ap)I)GSgWo0j2EQ)G?_2D8Sj_NE6UF@H3|_&D zu${prgvVO%w%h$R>o2$c?uR7*sIP|Qe~HZ}m0n<bEWe7@3zTnQ z@JVVPU?+oX8T}>(e@5~TdOeKZ33mNzX82As<*nDv@c#?ZPWc>Bfd?EQ{@GG%^ z(O$P5@@dvyvb&?>Ay!`(qxVmSciSV|S^Yf>|DWvo*2~~Zst@h!WAJ+75B2A>`ZL&k ztzmE)(F4AT!3}Kwb}@Jt^%wYc+dZFU^5eFDev9TK`m2}q*VF8NWsueHVDovH!P`TT zAN-wTa6io#l<#BZSF!ex(h(hRv+K2r!OiS?t!3~FlSFzt20zZ`AJ5>=co84R;A%!s z&)_$yztBFn-S!HScNwmabA{@;Z-MiMPqXzne}RaP)d7$Dr9swTxwFLlLGwg>BBK|@ z;0VeO`UVDnOXC4JlfhrmcmTeY!AlvvI~goz^eP$rA8h_vS^p_$J}AKtgO8%GyV(>pAdd22W-DW;1v-E5CukQ8ZuB zUoWx#nmkD?pU?0^wElu#4TJ5(5AwIM{BwyO;BE$=CwT+>9)mw8c>??igS&_x;IA3H zp3x)a96F?o-ZTbxGkS9w+{x%&#^9$Jy|oO!naN*1gX7qIC}%L)`%(Q5Gx)2?BJ5=F z0F4LmuQGT6qj!wK=Slv6f0x0pll%exfWa>?dS@8yWc0pf@HZrX$WO{obR1yxLK%Dy zqc?-Ww=sIL48D=kTf*R9F?xv%{ymewN7;BiL-L3EE@${BnEV}L_~F?i{(6RgjN}>l zH!+y(_-OoFS^l?}d~`7QH?*E2|7Mmygw3xL4F5bE&wCkuH`VF?a!!&)>85 z9cKKTVE8J=&!-H&jM4iSgEfp^=u)x$8)^Q4{xSyN!sxAHa5vp=p#QsBeGPOy2i(hG zGhNS6ehM z;GZ-60Ld5N7Z`je%^$!=8GMT54e)CW&On^t6AWHV`~yD4;9!y;tSN&GzD_z8COtF4 z$EAw=-bdq!I$9ZgJKaBf!N+KP&}S}&Hxu3qUQY4^ndxEpW4O2Th7ZtqqD@+SjHiS2 zOTFP>l0S^`CWf!3@kXB%Gk81r4GkW>o<7E4D{CK*u?fZfh&DlNj}fv)u!_OuG&X>T z^&+0`g$Q=vzkMMWVUFd84uOC_$MU}beks3>;h#cWY>7zk6asJfQPA^-72ww!c0s

r$g7`K1At4;e=c^qUIx3STP(}yEH1AXF1IMVY-^GMUlG)5a{a2)W6-1(VUg9-x; z-8WjX(*_p{JH-&LvBELPuiE4oJentT0kDj)$%Q2~D;@Ktxn!j|LUA1jHV~LRRfq`% z);rU<%dT@Y+-2Aw7%1Qc19wT7MhR!;j#)%SQI`4gFpK$e95Adl%rWZ#c2FwMhP>`o zaxYR@UgFP*I+VAS%H)v0`y8|G`AT!17GN&h8sz5y4lYN-@Rn(5DNW$j5I!-S+nRF& z<42_T@h#x5Wc=BdK7JYaH;Z$W7Ua6|8^Qk#z?_P01sjo;j>m*^mlsHSvJyTj}U*Mj{ahGRFdK1l; zTio%@NW1hVa+fiLh<3-oK6iXG(k{Ii?lOMsih8kb{8;YtWQm`E^WAaJNW0EY;4WkA z5zkLS{oHZSNW1h>xXbw6E9xQMTztggaK@)TT7dqEd)avO?ISq8%xx&SM7s4FZY#;g zC<1TK{Q2jFJq#y|u}RExx?7&pJ!73KfBgC9z1X|3pTe#K?l}_sH0%qp-;I4I_Acxf zv4`Ntb3FDX*ekK`zgx(O8-Pz2c(T|Pc(S;4$3^#O*__O>*c8r_ z#ihWL#iTn%+MyB0ImuVJ8Hf*8^kJ;grtucHG#+Hc=eVUEz;p{`$l{{WO~*#K?je0R zZQM7A=g8Wa#&OAx7PPOBFWOs*15Va{Hu5LhT{?%xXZP{vQufPFe|L)l^H5{H@4Hk_ z|A=|Ar7@Yt?P0;(-itw=@!dAeA1&lPl8b*3yiq0}C6l)b@)XzkVKN(fJ=hQ- z(@`k;;kgAn#>;fVJ?LB`)3JEanIzN6@t|Xp)u{|R?tV{{<$HS9_;s!G@1xim@JG)+r@lwQ~=7gKE^z0v~3q$yCKYCv$Rf~2K|f(1%jkef~}y@3@2 zB35Ob6w#@3)Kiebs*ID+iWMtHWSlDMNfohr7^f;KIFA1BxA#sPYLRiyKmYTb=XXEZ zS$lo!+v~o*wf5fYdq0###ysZ%J+SWZW8Fb~T^KKLIV^LOk85+H10Q}}2XO1L9!k3a zoc%tMg(B_U9Pi4F7lL{JAY-DmN7TwBc=?9<%-e4Tip{`j$E#@NZj z7&1L^VQD9aT`tC=YT#rU#(_$pGZClQCY&tXz)Ac>hd+;j&KXX+Klljj=`UQnVkSKt z{jBZ$ft!LN48$j3sB_PKgrFW^Ws9q-iZ@kHVy|0ST@AAoY-Mp(@#<;;VO?KSR$a4{ z%u6H*aR%!Je3#C@N6q^gIO@N_g884)3y9-!)Xxmys8{_6M}227j(QG{qb|jw{};W0 zU-SZg!BLL`Aog({WB(T%_5Y1H>ZBLo4Cn|R*{c|?*{P3IMUFNCSSl%d^w%Z(wt?c_H)3A>nS_9baKe)RdyY#=r&U}W` zL2!|>0HC=mv0dLM`^cmE#HRurDmKrr_Rxm;v;4+>=nhzaYBRrmS}kplk8PGf z4PjcXB-bq&P-@^b3%+!zKE{T8s7qkeKC~x(O3T29B1ootpx4lm^P|{OBeA9b!#2`r zKvg5#(8z#l#%fmel~r|?D+SVm_5t1pNprEQf3G>m2UQEn^ivXp>Y_n~o%zsEU`&y{ zY~;rl6*USpAdHb;Q6olr#xyynpOH-WbtiQ2ir2BP9v2S#Yd4p6spk zl5Lb@u+9L~bYtA7UNXA?D0QR-kalKzuvrJKd}FKJ8uvwU901G#f@a*w`VR*H)fHJa_w--B+mIyDYE2P~i?0?=MvB3$$UJ#}|%}&S_=~MsT_*D-l;(Vi$+2ejnkg-xt7D-vM0pGllB*qrg?)FSUuQr3GIr z8(pE2wEZV->T0PdqTFPACV)Mj89GO-%mZ+AMAI=x+)T@KMcQm8tgNVDe8v-EtLgqI z+ru2|uN`A|KHkVQFC8^isMe73$~EkDQ4S{T z_D^M7-oEaRdqUgPj)bN=rr&K+ZgJr=8huHd_DGjOHlu*v5#WVf{Og&ldF*)5@sY{n zDtMIT=-jt$ZS-^YRFMc2?o*Y=)u_r=Fg7q6K>{{=n{}a)`?`gg0PTLTZU?^B>2Xcz zSPL>D?~P?dR$MD^BJ%MG*^JnOYx*Jvji17dDn^R8jtmPwV@~|7p%1LM*+~BS{L+@U z5r`*k8~K&nzH@jaEceL^WM~v^lXc3C+~+br1G^%&N7@(z!uSl7CTOHwTr5b4{~zw} z;o@_Wk^J@flfI}G2V=``?hFlKxzA~Q{7;3Zh8dY;V#dK9FuD6b76Ts@#W9006bpX0 zQMcP1<+DoNiUMHCszVkiLKa#>u}WgvkH?)yg}b`Hd9Hl&3!k{#7AKr| zeTjSd<{3A<@H)G(C}GX(e2gu9ALaaG+Fkd(ikCLO=rv6~;++1SW7?_zoqA2TqCa0j zuW6z7z5pJ*nZCpRzr&;l)FuaQUa=N04(Sj3CbK99kU9>gXq>_WgnH{Zg)z&)t{bOV zFvY=c8mBlp#bGEPr|8J)Xp=&@XELBceq!+u9WN| z+BX|_$zC&TeI%o!f2B`p1`Sy6-E840rFl>8v!b|{*U|4PS&8-L5>~dEl@0utcwV`T z=9K&QmuOCrKzRad1^T8R9tJyPcff8(QDw6k&t0TW@9S`!jXTDh3G~7US$v<4tQj$H zKy1=Ce|a~jV~*!*JeE4A?>1+<@JgE34M>3-z`7@?yT8>Q#q83|3H6nGO_j7-JPX;SVr*(`Vqjuf7#V)idDv{O(tfXOa_c%!?vR> zvS$qffODz=N&wDn8dqkIr1-)lD{bpnO55T)B=QZUGZe<_TWud*$?01`@Dg^l-kIWz zs<>4)!GBm;Xr%(-C}#P+y(6TvIlTtjBO}#{*q0Q>2xMI{M~19#Zeo0ENVN0$CZQi& z|N0j4cSJNW*atrgdA9BMnnccXb?W`zkXIhF&KC5oYIWLFy$$)D-zF*B1u1!#`9_W#IR>w5^Pp1`#v=uSGchg1<9K|f&)uUnqIvcdb1!dE_qLcPiB{lBS zZ$GH7|3H6lTGDPuQp~R1vw;>5Eso;dXh3Qoe5dAhHNvE{C4^bwyP{2iz-#wQ0RBfv zLzNR13$%sm@u^s3E;E>1T~-HszgKEXbA~!B^nl?HV5kDad16q3 zAr1^VV5kN|9~k}&hJzG?91M|Jnia0xF^6=K-A3gjskS^_SV)GVE<+KLsdi?nC0S}` zR{y(3<@+9|)6(d~q?g+4Om$0ATb-$GPD{Ha)#FT#%rixHS|g9yB0JrY$2^gFy^$G~ z9z&x;J3SV5OeN(VY*>j!&RtLA=;yrkCJp$rl>1oO>b7Ea$m%I`5yMx z%#FXcglT}=Zhr%sDD9#Yr8n8$wn(C_&71ADK`Y}i>W#2O@G>jgua;>HUAHOhhZZ?w z_Byl{Qm~ta!Q_`6F-V`0cHR_G?h0FG%~zOFS}(=y7>D{hZi|xkBG+v-FJrW zJ9bkNqxdC^?dsD>Ym8$5UW7WNLL0OU_?wa{lAiQv8dH1H%Dson`W!d*ET}cv zIELda1VuSC8230L#EaNt)>j!hc$%Hok%u*RsN2M;vRmtO6^B#m#!8M|uYqUYs#9nkW$C>)}Mo;;((iFrqq z2c=VMTfAh~yL-|CVMcCyRWlpmN+M&F9K7oysvyD2G3K ztv8x0hiC?0j_F)Eih|0axQ8!CUr;$b8GJdI@#t6VSfLzUp?_=-<;r2C_JB!?v0ORY zg357d7GI9N(!p}5WBGEpqe*r~3*~UlT-g}HPY2OK|A8pZo!bi($Op6Bh&5vSX2&pji3uhA5R#_cz4)S{~yEV?IN zJ6tn9`IVc(?3JQrNrOY;yyD61aIH_Qy^686n-rbaJuM$XP=9-L%GVBVuwnT;FxZ$G z{9v;tqf)HNT&2uXDlul=$0HA@@4LWGP7rR4@4~Um&YKna?nMNy?jIVjZ_fg(x z<&xx@2YnOr9*{2?Q**QLCFAJGCD}Ev`0DZ=kSm#=B ziA@&;ww=T_hZ3DYiAGbR+bGd|N|Y)j6Kt}*l<4(fvtI=^{|K-t?gm>ERhN(0RuS7_ zV!IV=x=CO&jHX11t&i9)5Zhgps1Ix%c09)l4uvzW_+aX$P-!|^TVP$)i&AX>~ zig?Yd{#Y*xcrQYC&qnBpafsxTs7h{j;^)0iTnB971lHkBe$qRs-yzn~^M-4`G#a&q!>Ce|P}d8^vzVKH_p)eJWu^#_GLsrGRzkdt_JFi4G| zBt#0i@kH|2Z%USSa%)3^r-%}a-`L}Q;+RG(%i5&pgM>Ao*t2R^=YX&tEmFTko_KCF zlN8gTQ0AWRaI!h&Bg_XP4c1ayr08vqc+QK4 zIVTeBy~eNyb7rdEjmcyBg$BR1_&{KOWTU#HlO;>S=IJMi+VlOs-;{-}HLDN!jTabwunT+<;~QH=xaAe8-9I za3i`yO&I!&7bBqXQ00Wt)4!g6Oa*g#)SfS)XED7F!>eqY32zcchb3?;LoClCu{=|o zjivqU=~U_C26{LedHgXW&@-CItX9P4Vp@6JEG}_7c1nwT!gU4-W`}lN7iK{icB*p9 z-`=6K)n)NZq#nQWqXmOcVtoc_ek!N@?=6BIr#kf!>Mif8T_U8)&Ngo1QhmY3KU$gM z_qHq!1C)bcc`2dZHbeH{1f%R~?W^h?Sj0`|7dcaSRsTj!Lg}=6Puwj2@#2CrSFNmR zw;jNsOi;|3y4Y6~25tH|P=CizG3n1p7D&&_lxg$a%7q52P4UWY3hy*-ec+|%P{}jW z{P4(w@n&n}GyHScsg9U?9%BrAMKG#cN)!c=+R{C?m{x1@%p$A@m)p7Z;6h%v-@SCB z>#tgetDj$mvZGIwCl5aA*+!U+k9pWU^G#uGyA{H9_9>Q}sx z>UULG>v*bPe{uo8Dlp!it8O|JsNZe3{HT6I7D%O$$e?GJoJz~Or|vGPKWE7Y3a=Xo9H?5^EiA=Kd~xjGxYG^y3*-2=Fd|L~&MVm;}#*{|A4z0Slv*1aG? zuPar{MBbOF&bqp`@OAcAKDd{Hm$5Q$qsc^%9Hs{qrDLfywsBvfG~LlnUSr6IwRRT$ zn}6qUyJOrIo#LxhOhICidM!=S-a8jpE)E-0EB3h6n`m&QilVrsxaZnQ*^@#d$dcvD zjBk^nD;e|dLc>Nzc2tX=<$i^GMR|CQ;+@j#^-NQ5y=^8cz!Y(ub&uvE%3jAu#9lwC zU{c7mgX_)KtF}^fuP`pLc632Wr^kwCv57^Y{aAJ9-SBNG9trV+SB@8(jyMsyTS+bY+9|8s z8FkV&>bPxGmvwS2TgX3M6{3Llh__gF8Wm8y_=yo*P5BE?SSE!4Rfz+NS;I`m8z+xU zGGY64(H9!eePcXtjv)h)m}efwiS;*LbIidc_Yh{gY|LkkSpOM9PVZ?6JC1iHxF`;9 z=jK$IfmV=OX<1vDo@UVfG=uiAxP6Vff)?E1H_$7XcBc)iPYS(2^Q#*#Gxii~9BW^- z@^4-cdWfdg+h|%nsBZS|vD0j7quI2l4x#7i{fkFuzzgnd>FGV*IAqC1YwjW}rWYJC zSIX!Ok)LiqPqXqCMSF^Q1~^;B;$c6{mfycRW)>}cucGzw{RoxJL#SvXg?3YD1%*zf zW$_~j?YIG<#mN-fJQJZODRed6+m2A@V#>oL3Oz%i+>+W&_r5{tu0*IVlS12OA@nv{ zD?dZ`o~CryP|Q;tX+3G@XSJ=4IXVv2b%sK}L}fZR;|)Ps`Mv(rX`a~#?W53dDCX~I zo$+f5Wp*O8sQ{tZk4Na$(YSXMEraf+#mX$yjBy<5ylW@wt&i9?6WfevytnF|jZpPO zgtGS`boU&i4B#ucx8ot)+j1RRgt-c}>blPg@D=IgwU$tEgVmU`_i$=?uZlVrzjXkC!reXqae?A)DB$kGvX4+|;v=}XG zon(qZU!!9k%j@lOcq!7Zu=2|Pv?-nr?_uAwMY*E%#VL57MhDp{r2ZMOV@I^f2%~Qw z`8bKqf|Cw%>7AUFK4jp?K%fS00o+`;uL*Pt3%t9lL)b|838RE~X$J~39{RVS(>D`( zH%ad(iB7mFEuhE4pMf(@pcDU#0zc&;nExfv=_A8UIO)DX{2zj@h9A0kgd;Ez|Ca*Y zF@%ooADof)ouEeq@kfD9`FsRtaJmF^6${#aoWb}jgsMk%_aaUy&Oo`cL8teYM{!cV z0`xhcQ~jL88K@tshuZ}D*&sUAL$yHvb_l%@bc&ZS4T8(t3_AJaL07>Ir29M2DWBJX z9-Pl7K^Hy)ao_v6`UGD)==6P#*4lx3pq&gJflg%$rb8cvi+?oeBm=p4z)uI+P9)47 z^tq=f4?}TcQaQAkG(emLSpcjEsKxU-`g{ndwy|^|XeqC>5ex@2V6bYCY2}*bYX@*& z*5g}kR>mdX^t1tQ3G7q<$P(jVOqaF8$VI^69&kD0EII}O+YH3O(>Nnt1GIs}d5D(* zZ^}{ zxJti_<;LOaU9g{?O2O?z zV#L=8m-yU*yA>{EP|9Msl-_i~je|@47m#0yuSam(1-BV42FZo#Gbi~NLlMCs5PgZ#AbkK7EnSP!Ha z;3DgV$-JAZ6~Y;~=(GFDMST~3hyF=^a^cVIf=lh}f=m6&Ciu(YQva~PrT&pExU3Ma z5Zr$BX}Z51F4h?-hv1@!g>Af>yB99?6AN5qp|Fs5bMpmyvf$F122mEGkCL0~=3SXh zaIJ!C6kJwt;Sj&93572}4amiX7P(j(Cl|Mg4guTfJBdvSoFi!)!s&Pv%)$6Zcat9( z&K2-V2=9sTivsv6cit6+`^qA^y!n;$Jeve`W}O@eqFiT zDAQcF{_OS6}!<)mknW~OJSXHLl|DJf1b&dgaphz#{V z#f2)$Mgeg6AuH$z_%VHQ&qcy;{HJlD3h7216dy&IJq_>jiSRRVp#t%Yr+aZELv9IK zF|8MVf+Y!lH~5J{#ia07_*uAg zGtF^b@ay3A07OO!B0WFS97zW~XVXc22y;C5dhXnbxZVO9VyNe?`WMo0c7 zxKSJ*aEclyns`1P&lil#G8`_{2w)>!%l>>^sQD;EuY|c6sLMe8VU4EY@-hTlXJ&vt zq`U(-NGKP@LHCYDd2<5%z}oT11~EUFA=o>U1AM^Wu?6EG4Z-8VSmW|F0+>AI=s$X3 z<7lpcV}!BC-xJT@(>M(F5#kya2dNKOAO4{@NNAIRGNP^g9B$5~HeYu`qp=g`yEqBw zNQsv`0h}Wju7|@odIt5w)ww7r{-1$y#N9ij{)6qmx=~jx9G)9*|CJ?Np&rE;1$_i_WMP;s%~jc`#lL{5J3h%1szH19&wmj8&9dfqK6LuSOW(_am$o z*h6?$8nokT9|ju;_(PZQwEURoFyv+z`n)0-_XcfsCEOd4(4UNg!oF$zUOolWpoYqG81k9!F9^;D`o-n)p+G+aKh@7g5#)(j zuwP4Y5C#w4M_+=$^9p#AC?CM$(SbiPh(8#Ir!|1XlW4q%XJKyaP}{iSzifLY3hkvE z(q8bBJm&lCPvG_#c^n=wi+LQU0)B;!rv-3x3fHb!z%NFBE)tJ$8^a%g_=dsZ5g4z4 z#51tSrxgjq{Ey?SE~{EuT(NRU~IRJ$4~%PFdj8-bG}->jE!DtA^{8*0ksHslk)W!iUp{wZXh%7#i{-IPnJZ4FuF4V7+r4b!a) zlAqRulf7|3*Xe4B00Iy2c~BP0zk9fOb~B1#lW#1L-;w>}*v{G$juywg#Z|@ocB+lO z-gsd9bhadPd*gs01Vo*arm@FG9*ND}0EnJyy?k@IbDgbWGjmKg_84Gx05>FJ`*g?# znu!|aI9jBI8u6^C$hpqduoc?L8wtjTilaaU%C~qV@ZJH%ASgpHQV)gWAwxyo^>@ADdv1@U)~s3df~Srp6^$P z+FnY%YmKRKc{H+rj4`O|@=jeHvdk=IT89A-`pt2Vai@O$u;4-7{i}SR{un&yN!iNE z$}4~eJt@tPI$8UOx13Q#=vyr1#u%pH%+=U-qo7Pb?nTc6-P8s7i{V}n0>-k3uVzgdGX!y=`8T$NWvD!%^l&Dx!k$g1-N`ctKxO9l7n1HX zM_%#s?6@kesW@^M`Um=m_2ue_E{{BvVT|y#efUOLS)UVMVp#aJ(Rc0%2He><)o?Y- z&}SM%gV4X)uM% zcySN#hUVV=Hrw#6+8nP%}wLS|TO(vZ29HfczqrAr!e9T0`02~nsv-$d5UE$Td=2!$lJj_u#R z;FB9am8AaHij_IHO@958sXoKG4S)KCt;*?M{->9VH^-D-|G?X&mTgZ;7QJ`-H-G<( zGjx8lseaMimy1Fh6ZdaZKYuw4p_^~n@t0Str|Od*X!x>vbnAnUy#D5A>57Cs4X3L) z93qqc>%V`Oa{ARZo40E=hhGMW=!%iFZo2sq)iZB?n|3h(e)Zem{enr<@xL3B2;Y;g zgh^EB!bCdvpv?0{zFB<7vhw1prPX-XXqjVX3t{xB!c9kg?T0un1Y~)7!G)d0o0Hu%fVERQ=FROFxtHe@krS?#cpjkj0vZ8coeTGy#{k- zw?TV9tgRQFP|DZk{H5BIuIzyY_QemRci4z_Am`Q^AP&6?Sfa|mq<6SLbC%_#MK`;f zINR&*yx;X{&+*0GJx5QRofVasG%_peg{%iM4yH|ce!c^e?catgl!>^5afLbwS7_gE z;~Y&~X8qJAvwOy;kG^b~%`&HE->Hca4dM#P&N;G_JzwE==+Mq#plbtMp)R-EJBHLx z1Gqw#ZAb00m$NUy722-ZodH~-Y-f1fH0ZlXNISL=`f=;SB4W?kt%lJYyG-2UD&Fp# zMrZ@|079s>haFRj)0i{`KH2f#!l9SR5atlfq)zBMti0Z}I>yb?G=ig;Wtbb`25d%C z9g^sm|Fr4f%-();Id4bAJPaCC;1crJ>imJ9%Bph0m$K^L`dlpm&k=bOjXsUFY6+H6GO>8Bq*$ z`R!?zqs?Mt*tR6?<1DXiL;DL*e;!~Pq1u|Ej!|HGwyc%ZMy#g8W&NbbL56U%odet4 zxjLl}LL;Qt1!Fns>q-de$az#Bu}@=)+0A6mV)SXKM5@bj@N@R4M=7qyC9@KEd9fM) z49=18S%U)zTYAUJsguJ%Yf7uut}IaSl z4#7}b1q>xkOrg3pt(mnfH<;WftPW#~S8AW@3>7~Hh@@4(P}0PLAqxy^!0wWSK{qLE^`tA42A4sUs=CwqAV0E_1x3(24>TUomQVSU9`fvR8iF%#pTMwX< zTC9Kc(lrA}r55W)7)+-#r?2+#s6k{B8+b^uY5A4Rd_Q|S(^AFEHww5$to#YWCpx+z zVpM!S2Nq8QCm$7}5%j&P)Zx(gGFJS>|G9`qP;%3F zdMQdd#padbsxhjfODzMDyWPIQRGHKW?3ANWZ*;BFu^pxjX2pvD_~|3yhqs?LMOeHe zvq~+_g$0tZxY8-LR^=qcq>v~fxjWRVS%!JGioY=Or`6$H9$8Xvb&rP{;OEdNJmbx7 zKU%M>X2YwD++co^6vfrjwj~|$r^ImmJ4;)x;>OxPcd#%h@P?Q{ydlN>p0rBQ;j#;kidUiUc(_dK zWKTn(54W6RyAEsCsP~F>VYk-jkWJ}$>DzmHRpNz!4I+lG!2tW!TW{Tdtzv;)U6&$B zg3)QO22t6<>{nOBEFdB9q`LIh`kNFpXozy-{2bg7(nZ`j$EP@woji^ZJ1YWa=^vBM zZGrYU$l>iEQh=79h52uHntXJL`m#@iI zKy$K$1N+%x2@^%As9F>Nm9xaAEnaUy$9q91RS)t21|v#!FgDK+00cT!uY50|g6lD& z^}#*HD)g9x=rL{RF}8PHEy`KNN`0m4J+k`h z%!0ZMz6~vQaIR5!2xq5tT(@<=w$YYQ4|O3FgBBy5a;EcCS}UObn&i${fg z8C84x&#c{f<5Cm{k2fsB&Lh5V~xSZA`1X|HEyG z(aoiQuQj?ovu7!{LyOuUc}t?(G3W3NitXWX^9F0}RKB%fvd0$Z$rhp0FLYgp4x*zn2OB;v9i_d zp`E^Crr7A!#zS7;EK{s>wepaTX1y%*W8N_<_5DXRETv+icBg2K-35v^vpc5>3R$|P^reMfP;&8i3g?Nl|u(cE08Djg6*xbZ6 zpV*Qp6%E+jVPLb8X6dOs-|Cn(Itga89x7z0qV4qMg_63FQSNpie@S(p0`-JQK`J<%|I20INdx5i&G*Vo} z_2MyDylum~e;RyubAyjG|8s41wu#ioeCXuNI9rs&jQ;9&-lCPM~*g%EoC^4f_%8)b_eGQbazgP*fvE@x8&rIdGG8^hxVTz&?&+PmnY|Y8zzo*V$%J zvPB`>fFr1@ul=LN(Gnt7)RgyT zN~eJwUI96bBul9uzY=AM%kQdJijo1u%=KB>Xz4dQx^`%_*8}E8|D8h($d3}WTASUK zY)Z5ADiq5hwjrh?00`nCK#+{N#yi!z*fi-8kDOnRB%t2|hb*2%-!lNn2^mSF;|tcO zr=;xJjp7hw$b$^+NKEE|1YGiOSk((U#XiEa5sNHww4e|raSI9n39!FvbVbBCHk60( z>z9!O3xk&#^;pVUx~11|N;IH&pYz3gl8Sfl2+Jg{cr*M+6GO5x68IY5R@#>V0Wnv- z>&|vRhp(}l$JdZ7C<@)LXdD?=y2l^WTIq2|?L}QLb-Mx5CcX{$8uf}WeSBi6xt^Ke z<3&E(0Q{2s+dT&`VI?SDnY*~3!!N<(3*ncDlFmsNNISz(Ty@04Y-_*5w?<)_w%D^c zY-{N^_5O*Q9o$pT7X(IPNMi5eiuoHruyLXwVUl%H$c%$q%*?3eB*b}`1B(E2aP^Cd z&XRBH9myw324N1w_Yn+8Mc59-XHh5K`(yFk@Wbt%=QPq#Zn>8YETesv(X%kCZZjF? zSt1r%?k^jsDYmT>Gxf2xBsreEhMhq3Uf2Rh>Fip+n+2wf@+zsTl}Eq}iNhs+eW%x^e>M z=s#rrroJn)$XJ@k+T{XL}OE*qlffZ}6zMR13G6=Uq z`J%0K9F5Em#%1v7M+=~!K^;NjBn;QX<9oF=t;cpC-K@tOXW3cyiS;kP)P!$aB(DJ@X1A3d()D;DGzLOX~Fz^ zS}-pnVSNqQdPfp=K{!%$)giW1#8#mL_`tJ>t$v9DiB1NaC=N2+NV9r&gAE9AW~|TO zrCI%Rift2RDOdX59@AKw{3DU5dK(gT5%SdaRJ0^|)v=-m-TxNVEWKH;t!v40NnxdEFTfn<3;( z*v7W!Y@z+(?e6z&BYGkW=0{-Oql2&+o`MTK`EtCu=ML;;r7sS{Vl%{m-bycdaO?md zz3Sfw7yH(k1_@F5gZSv^Mc8P#V{t+^lh@H7&oCE2Cv_Nlhej(f`qW661V4aIyinQU zFc*kU4|@qnllX7O8O%QcbQZLwIO)Cs|4h);@Y6R%=w=SYzXy7|_l@QMp zpatTg{Okgq((S?-obH35QyrbaDaA?g5dR~fQ+ZF~43wAXe*hiJMy3xZrAfHP?7hW4)g5_{K=(L`qcV&TkBW0axflhT1Oy45JPi4R*7eDda z;Gz15-Yl0srOPS(z)u(tAHhZ6y^45-VmzdA7!T>t{ljlk2Ct4kpte}WZ!KQN=_c}F zgKCOG;FZ800&K&;J@7FOs6z%gIb;DoY(R-|8TSf~190H}cojmrH7JrGCJr(nNQp6s zYhb7Ha3}>s_yQGBQAKa_)>dxfHY5L-IyB|#vKrFRguzli!hu`yabZo(zX3f$$kLDT zBLbDmx1j*SaJfeO2@HuqJk*Rs^)iP-I|O)nhzPz0F58j;kO{7_f~r5LO8NAHT61WE zT&)hP4Lg)GkhLMrG7R}g=?}K45b33jdO27Mz)|pHjDw}%{w8H$Bwl*_yKyRNksQPX ziKR;pqSHaHAhtMv;7I`{523?j}KnqaWvR;bdKijw6uSkWW9#pBhBS zwG;}(e3{Y>frz;&Wv}3Fg*yWNY`BogDN4aT4?#?H!g(P6{eo+SOYsqo1I0)94Upj} zYPbn-3AceEcoLDS1Gs` zP%m`f8Mv6EQhb8{h~O?3+(NjRgHtjDzh3a4=jXVTF1QpA)n6=Jx8UC`_%{lED_lya zK=4B+lICy@#{os>a2()rI1UsaeWXI0aySks4~OGGe!_8pKer7o)gyf@BexPR#lILX zrlgd7xKxkHf_olq%)(Fo098;(?|)+tEpU&eFTicE}0j^yISRvyp6FFFG}hjXI-OHdu8$czdJ1&*`0CVYnfq{$V> z)8wZN3;u^eqi~Plr}095HBJ0Dz7qTaz31d$eep(aaH*nlP&P`^t5*flj5Dzz{{fPS#>g8r}0W;#~VnhVyK$_tL33J&Anh67R zVX~&rqTF&UK)>uP9|YI%Z^fAi6oOlNFv8jbx#Q}J2}X_LU?eiR|BRsA1&}6a`G$GA zqGoj^5GRBwT!5Y!iZlTp1Nz0kf-jMinUlqGhc#^ZN?K)>RaLF6;upFlsmqs@84Q`J zCCjpNQZo!W=_MtGtkm?JWo66K)2Cz%!b>ni@g*Pvm^R2EhQ*14#;KnCmpK|Ctm*Ix zJOMw6Ejl4GxMS(knzD^Gf(Ophr3+^kkx(9T)C%!Xd~{i)wPBToW_qccu}3dJerX4(~ujm*Pp#^DLcIwG@{y_2KHDKhEFq;uHVaB6{KX|E9r53Q5oGZ|h~+*NygVL_R`MpWC1#uM_cY$I(z% zp9JgKqYV-M9Hl|w3e;~O!l@pUa6fChROg*94_|*@|Ei;v+8JG(ao`lQgZj)fNjlHL z4EeLvtq1NxZ2S?dzl>Mq+`F8-pP|3}5IV^}rN6A5DbCv!p4X{P!?pwt&%SQ^KKWWvy&y;Xfl;GFJzuO!4BPFk9In>MTysNBHZ>(w=g{1npb;{>4jpMMLVHmc=NBbF74gK6lqefFp;v1g)4bb!53{BGPhAL{5hAOm3D>dRK<}E8K z5SvvK-iL_*PC*zF?;USKzYX5_<50x~-8lAGOMH(t;(T%3c@g_51hp=%8_hSILUH3} zYAh#2YcHuH=__UT7p zn^%&vTat4~l(XNNyC2u)*lzRmE=leodydB(d&r#alT2mKs#WIRy>wyj5j_my%u;d%tESZj|ToNlW ze`!%My{f>?_uR3p0ec_XRsNh= z)R{=AqxBji`H9l!+RZsGb8MeEr>g^n;_`2rRtv+#LyB-7MPMTP zU8>J2NxALP*t#XTwH?_{a#e8z+3v{pbxi9r$2OXCo1HmS3Z&(nv0Gx3Gp5L1Hu7VO z>by_(Artu((`25}B$;-^32VqkpErX|;7w zkq278g5ARuWvQE(g|R!%QlBElQntsMP1n~l(T3IRBXl{|wo)Pr@x)XV?Bl#lXtN^+ z_BOF@!}A3*qSn~VDm!a+`lisM_Cm#uP%}GzgtY8IR{v71PTdSGQ&XiY)SeD4Q{}zP zb?SuTJT;!-wz2p=i2KtL8$;RBI_ZdU`)l#{VQq^`6J6NU6kgj|sD9TA{n9gx5zej| zlBg#PuGHCTpD|RlV$O~Eq4)iI)m5vacS*IiJsQ=R-4k?=D+tZ*DrzVBwe{S?>@CD)DrhmE1RNthD5@qBy@BQ|l)W3Z2&8qebx9)lMzrI-e z&g#2fI3_J>^xSjD^l+1M33LtVq5Is%gbwYI@eKFWu8m%Fzl1S@%;IFsiJ68(mU~Zu zW`}~M*Zy&^f@RmpF$P9#LlDJe)4efidI=*nf|rFKx3BN%f{XVEM)KF^PcSu$)byNh zBfoOn0`UR~%h0}VKK_qty)q+rGaf6Tf%)yW<08(>#~-z1;abFnFc!g#dEcpxA213V z{6_MR&r)bU!;Ahdv54E3ke1M_iHRz7HHA)`eN1W=&vmPhwMtK*y1{S=3*`5sH{Fz_%70o7+k}e=fw9xd2|96WC zy`j?%d<@xJF34naPBZrp!}5@ajW8Mizg#D9F50dnp@20vDr0hD#=CYJk9BpGCt4Jm zv`4fty4hW>`Gu~n0iD2?nEz)wft>yk6a$ezC<3NC7$ejIGaO98IE5wC!Q4Df;e)es zoT4McVX&kt=eBhl40-8hL$^9EU3m;jfSTs?4pZs%Uzhrn&OJ~Jyya}Sq5N$q23k)j z&5oRO#mS5gSJ{px=|ufFPVMjTl!H?br;ScO-1f|K^J}-wt-I&7r(c_J&y(Hvtl90x zpnC#+oqLBDRt2aI=#CdvHe(&rk&Q)wufuUR?pR9%J(|+`DZWofP$0}37|HaGSl*2Z zciLWb7)<3(tW2_99V7#aS$=Q_>jKu2k!Vwy@fAzMI)x=<(IMq}shC-0nfaOmchLUv z*|aegdVkA}iL0=oFHDS`+PksCyIk4SrzvZoO^>$Ml;Mv-Z^LWCrv0PFkdhFM3w9Oh z9W3@s`=Ec;wmQaTgRJ6?VwT4_9wD8{>7JmtjI@c_O?jk!%k&+Q(GmuP3kiFBo7$p*0YuIabhlgSxY@BRU9vkzqc6QGuX4T%J3{?rd~Cns`hq(; z-DINdlrch_ra3r5=hwr)J7CAyPF*ql?O*-VM z5>{U+e+681P(iz`O7T=GXe%iV>7cjJfg4y!x~=_YS+Qc$f;|q}H;=v2_87OR^2UR_ z){s@UQr#V`l*Bh`6{QUHN6`Jb@r(YC0_0Ok$Ve9k)2%WpPp#BB=-2=Z<1F zpx?o_JExZ=w7YagWmfMTt#0yO$p$2AWj3XD$PZt|MqtQxZhu-tY%3enY|F4fL zvKwE&xbNKC2AApU3T>DFZiID2+)a7__Xv6btSC1EUE~pHUd&cHprnDqHooOAxqgA5 z&bvmf#a3oxtu^v!+YE=I;`-|mZ_KL;28Yyqt$3G)(-F`^M_^i%BgajNna0o-{wk?P9`Sa! z`kW}v;&%N;VM;h>GJNY7mn9W+CDhhNPAb|Xwk~E~YV?v3(@xPf>`bT=DtEJAFdnBU zvSGS3M%sz0;=ZwQ@?EEGpdUUShI3>gFfu-@y?SYj%t0;2aV^i!4 z?Q%b2i*Qp1z(M<8*TKae!i@nrN}Yzj@8sj8VPU~Z2f2|r+l8_69S~;nN21fdO!_8I`%ls3F4_NjJLvTMb3IPN zGY{}@0$mONtvD&o0G;;mlDuDq6MJU{(tQkcDq9^+sX(W6e-AqL1TouiQhb4UXio*@ z^Ff@!`8*0bmFu@SgUdyGCy0J%2>mnADc)Cb2IrIZgpjPFgXU#Qm#)K5my{mS0{Ntl zqXwPEB*hWP57(jKr~ROmf3#&b-7|DQD1G%#2ZHY6zS9$N=!Q++=ESf!@kDNG!eC4Tsqxzj{;wG4;u9K71G_7E z(vYeNnCIdHFIPE(yCyl?S_2v8t4D}=*!sDQl`X!CE_>s^mes)m3}%6^rQrP#{5C~l zvm$N#x#akF?@ug1YUt+FB`-OMPRBx=!-enVLb2ceGU4=XnvM#b!`)B&*yuQg6SD0` z>C<;G$S-c+9L8`8?V+IkX*9<0DHv zPXk=aXEN{R>fus;ASSqcqHN^m+IUxH6vVseT_+)Z%vOzA^XyxMl;#RR-+$43u z-qCpp?PsJT7fiwX<1)yPuoK7x9T#xY{OYjH!&6|Qh(9dYzA^yN|o!~DJ z2>oz_f|=Kb`0p9wUp>UXb%>wrMFz)5b4jpY*qX!$QecQs43LM&s{nb3unCYaC%}Ss zNs$B#^77I|AaJn;DF2G-AYP0P$s7t;R#AH8om|3(Eo{je&O{K%se#>GxZpQ#1@>)a z^Bb|ae?!o9s=)wn8uyRu%*;&qax$}d{=mMimCz5UD#PEJk>LCK05x{{aZE&6*_2~Q8q4=Gt4tY_?i2+0`WA`y*R88PQuXT2}Ay`w0}zt zp+?7@!XW5Je8EC{XxvxYzvUtUh@;XXxY*Pb93M{|{J+xvEvAg;y-B#mzv7DV{p9|w zA|XDH5MMUhfkdrq%|M%8QsfB;gM7!K;Qo{FPks;hi84v>cfqg6HQh{eK|lP76t)g~ zT|lHYrBEf@npy=v^&zS*y8gMx(EUNQAL&Ne=s}(a_H-Gg|Ac)Y*i`Ui57dBtpov5L zY0ST5FUW)aN1VN&MA!>LzHHe4Wy52BV2_ziuoqM_(RdMi>n|H#oo2lFC-f zT{w55P6w{ht^?Ny+s*uhZK1&as&a?<5}Q7a*x!T+;$rz(<8#}Dy-rv|JXelAZ*VgL zwnR9-5b&X#93S>iaeO64&Mpxb-hzE_uqQ%!Dc?8D{V}+Il5jt4gYfrXYGa6tCkcEB zCO(}cflrM0%e1d7QL>YGL@9hakX4#fcr@bf6KHfjHU)8r^9J)K67MXYCFHGS<{;e* z`tq4MT%KX?s1<2&arJ@@J4YOSRS>^Ova@)Nz+V+a*MVLl@P80QF9!Xr!2jvYAJ^$R zfWo z!Oyi5#Rt1ie@CC-(jhxeV}tmH*me3mz&FH>(|-r(f~_Ggee~Ur0(97uF~$YO8)SEA zY&>)Ew7@q4c3Wt?^o3m64%EcJJrnqQ3ShtHO17h70{Ouh87M!-&I29574rQsL$bUq%4Gt+p{3Oh)F^ceU9*JCr8i&*#ab)SPhlOuxo;2+@2VJ_|p z@a4i@QB)8g`~!Tsu!j@iGX>F2%tc3lJ`?vx2Hg+;!2L6siyH%cbFhC_6~qVs0N)(u zBBnDw-`Amh5kY+L5Aa>bTr3Un%}4oQ*DMeQRI)+7`OL*z0(^^*zpx-a_yhNhUBq0( zoXMwqa}fPz=HlD{eMt~~33D+&KrarW7c&>}u8fbTEQnslT+9y8SEBsEHqPK5$j3_N z;-moI>LB`R=Au48Ul&A&%);Eyr?(#E!~7SBi-A9IJ$5~F5o-mWZ&MI`6LS&EMV@|V z5dBW(BA$79x;=<)XD-sbNBx+o3!>LC+}u8NA9KaufB0c9&OVZm9B zlWeE8;`HDg&W75Ek^j66wc!2KM%WeW#s2lcSoB2GIwN7gZ-k$#n~_0vGZOO()mKaq z4Kgg)Zki1?#b~_}h!+b#J|4&|YC|3DF9yQcNFi*(V0=u{;PqI@9WK2gGUxxa_bqTy zR_Xt9XXH9uL{!8Vya56Z7ZnwAhKrJrj%JE^o8e;MA|jBX)%MN|Aez=_q*PXeVNsb& zYD#4_Bc!DMjLdDR+}%N~CD&T==eE{b`~N=g`womFV*A_O-~a#re0o2;Jaf+ToadbL zocr^hbDl1bzH~xy!ShG|L;M?D`FkTRUVVGWtzK~Z_2rp?o8#}+4}?ql(ufTNNm>^- z3!7pF7dJj?B^h1ZtP(coT-=!O@^QGeMJ`^qcF6g;wL#9$t^H}GF6qNKz|pw1G0xAe zeKoj*)4)apL+nK~~+JjH?#V3JlQegaY zZ0;#B2QLEe{`UHFal+2t4K#)u&jWBYKhu_8H}c*a7v{`j z1wkOedMid7CPnctT#AN{V&;0 zv|()J>fR)`y3!!tCPq7P+C=1Nrn=GC`=PnRji##~npEV^wH;u6=FATl&rCNS;lR76 zWwslQwjY`~ZZw8|Xy&`o82h1F=tk4f56!)9d9s5>ICI41X}KG|i^Fs6hr{Q(;l@G1hjaM8@T=U?s0H3#W+iSs3~q6hxz&BRZ&~-tgu0Kh>xQ}yx3lgyt#eCLLqBQS z;Fcykm!`fx@z-wnF1IwB-0)ZfJNp_=t~F?1u5~TE56_Q#H`~-qMFXW*!nnMWKEF)h z=;dfM(3RnJr@g_=@c0OXG2wMWqM_fZcsY7WAI=0n=i{`Gd1o4w#%ZoP!*8C=Q4Ae+c?EhD05LA< zN2c+fq{46o(Sa%w&+rLPMZ1Yx7rUUQ+>q9`}xGML5qM1hUHnYM#Q`Z@u#$S?X- z1&QwC&UMnZm)>)os?CE;YqMcP)MQZwN(xNYm_V5sr#p}0bf;xdYI(MD*C2ahI6GEp zQES;9gS1InwsBC}=*+;X%z7rBw)SjdU@Hl5KwF|MWJ|OW2l2{fnPEP)mOyDjSRw=H@DH*p?xkjdFn`|vG4q6)nm?+qvD($ zB30drR8#lbRlI@D_mXR_&e)bXWyS?rdupcn%BaV#KFFWkYYOpJupbF#NB?m?Y0VF>rN$TUecNITgwg6`91UaT~om0wCFJT1&Kt1pG3=s&x_tAmWyoo&EUmp)Jk;%!-WI` z9A^DgI*fMN%K22_H0nb~Go=hyv3P=Q?;lWTxSjtz|EC{KD8zCbpCqw!hB$Q9czC!H z?0ulnKPBspzT3mK84%1YBq>uHnwmf-c*@;>#c^BD-VC0vQOX(T z4u6rQlhK7_fuR>tOZ$OwUN+SAylkB&ye`eZLoc%`+nqK+@7Bog$&oK)#qwb~n70Vi zu@ZTd&MJ||=wJ>aStrTRS)}q5UAt61UDqR(-wErW)mb{5tU6oQA(PM5S>*C1y8ZHu zCAvfM>LogxT)s@#BOkLucU4}!LdPoPt8~o@d9m)OBBNN>u8^OHh%V=xi9luc)X0xbEkk@?97(Wn4t^OHnHGW_HlpVX1`^1goY#ttEeZ#@F+}r+-;n zzg#h9{>Nu`e(~Mamg{%D z{imzyXO@k9skY&WkoP3-w|~E8YNTLv)m;+iqh;%pXFOnh`m66#zP`ikFsyHx?(x*e z1(SwWJ^j1)%PZGkk3IRtn(rrnJ?Xu>slxqo*7^T$`=?7$hPOHEyddNW=UL}8`gZld zcitICow*~=E{0HNVp9t}YLkmGRLx|Q9>!2jWDIpj$QC9iPi<0H;u!Sg)@Io$@3c|L ziLzF2dwi>2|Dku=`xp@bERbKSqs8{pG zm&fOMO?zf|hV_*NoL$v3?I+H4&m0u5oU}c^=mE+E67ETH`}6*@C{)glM`X?M{nK9PKt~SmV(!rJ`J%kK@;R28UE%z`4zq z(+0mBgI`ruP#jAKHN9ocW6}nD9VQb+Dp;&jN(VnSOjao3&fU^}bev6%B-^URu&s(C zjdNf$q>=qRL1!EaBpw4J5|sl6%I0!sY_X4svpaPh_Ejx=MthpW$i8Zh9(6>waleW( zuRd!}s+KE)Lpt(hY}qJY4m83Kulevn06Kpv!ims1kb%v5G*w)6d84ZFsQmaIW>(E` zlN1Jhs=`C!BU$8M*Cb!L!}e*5p|bj3t4Ix#MxH=>MkLzq4*rjwkA8RxPEZV=gwq{9h~dL;>#N?)plo^{g9}- zG0rp>dc@a{DVs`(Uy|bS+it>zN$l5Nx^9tb{*HJQKxK?||V*I&J!j)f>m7;d2B& z7A?*a*CZ-W=ucV|;=={38J?Y-XNqvtlq=IkC=gsl!`TuG0$;NG_(W=yd46P#De9?! zsO?81w_b^|?v8pUAbNK~bYpJxOQz_T_ebwN6TRBb`upa%qBfZz;qAOb%Sj0C|95Ih0`jlra^J}R>ZRD**j2!cQm1%kUl z@Dd1gAlL(f`5<_M2nK^-JO~zn;5Q)9gW!D-Y$pz0AP5FQY;oji=E0=GR+A#Pr&b(R zs|~9>6Q>z|+V0)v_@Hqa+s61D)A+RMeG(>hR!{1bPwuRq+$m4)tWH)*r-YcNbjqi8 zR!{AePg9wvIpot-=IQO%^h18o54o-%@{`6}6YeF){B2FpI%CkfhM;x!pf*QPn`m$w zGq_DNxJ^GeWnpLaLX~up%DhM=&1ugy49VAeuQYfUYQ0x!y^FQpCH7W%e7k(^kV)R} zFp3A84c*mSU~3k?KdfmOl2Fvz;gxGq46j)pBAwW&zG@2DYbXCn+;8?Me(%?Dzt53> zn+Eo4-%%^d!ABmST{oo)cDKSXlB=hN?8t0&m1%=b|6HK^ZMWpk_tqHGZNuw=okvcWg>LZ?wGw$YjvLy*kNAGNu$W{ACrj{z+PHHjD zJ|dF`C*C) z37?|A4K{MKT4PViV#r3Wrv2AS`-r8wrLZW9i$BOlu4Y|PclE9&IcFocdk}g}-F8?7 zBWt5)n7FdsEJbPerWIBZ<>4ni0>MV^9%HC2cL>?Yr3~wX;v&hEFSWx zE9GR~B!|pn?oyw#`Tm*)3E#lt4?28T*?og3DaP?jZA(1I=C@f{MA!6=vYoa3s4^{v z@o>ok24cT&r{Y1&qxW}iw}*YXJ1mmJE@@#82W7*yAlU`B8CQkaV~hu~q%#~?Msd=?WEeO6=$V=($oxxG(}&Z(F9lxew;Kl!yrv2!@k3NZ2Yh> zT26$ut#LllhGBo#*cseo@QS|z!&Hz-&v?A0#Z4J!;(TJa4f|1JXMuc8jQpJqD*m7+ zU~g9dpTDV>&!_``6CMClZhU$>w3XiW81WlfX?L|9%hajqvXRwP`uE6}B%G72?v!!q zWrn|D=C;eLwHy&kxzBk7wybu*7-{a}kZlm3XALGtOsac$iwtrT0rp@4dmrAF#n+tPSSU ztIfQ8#unT?FEGgaXla@)%z$el(oyxwY$MavS=O)5^aTHTEs$-cX+2>OmTk4O>e*}e z9^c_z_HEc&UT(HFq3W5Jwa-GT_^Kzq>xQc5SXbomx~}r#s-DA-?CZUy&r-bC`S`nh zeJjr0srabp@dH*HEC6mnW7GQ-<||?EZrQL*X?lmrB!;!$Oc_RNo5Sl+zIv;Fln>Vi zt>e}e>3jlWL`Gx-ccEUFqw?Fzv5mB-^O^GVuvm_ zXDr2h;#0ry%x%ktt-O%YjpmD>beG0dqh3Wp+w~N*#5}W@4_f%> zvSI5k%)IInG?RidQtw)EF~(5b7t<}z#UM{t=sd=Lo-i6Slc78GpC_m>!WT*sI_GQb z6I6N41x=>aFn@P$N4S^GaMCLOd`E*<3+&)o>^ma7O{L5+{Yjm|4s)euP3WPZV$~LD zJSGdt%0scOp|JVZ;43NX#AE@nTwyR7+@M0h-F~Jr3dndOAVaon>r?f$D04JI z83t1VT2f1W+b|g^q^nL2la1S@#5RsB&J97T7+>+>J?f335w*AvqbUthd={R$F*YMb zc1g1Z_iBWhR%aRg>{F48J>45wj;tyjWSJ3#8)N0OW#15)aSX`54X{rmGV3N$7;$qD z*}90@jj`{~m0ck+Lk!3a!S)m)%XyUL$ZQ!PyBL9dRrsH6-O&(-RIx)K!1hO3+~M(% zeBl>M!FPx4mLNaDX2Vvkxns@(%c5Ol!5n-kjSl>HLf-<$XJY-KsJ+F9U# zVpKQHs`+{I94XDQ9_Hp)q44XqtsS{(cjTj(V4aVAToSb{A_^0)Cv&5AV&aAQ*3qbE z&qqBki4HHLYnc|Gu!hclA^F4$>6;s~J@+iw{9*+Ry>8wevw6?b*)JA*zEpYQrK;Jx z)!p&96Gj_^t5&#qHGwT+b7)h~&z+rzGztUe>Y^*UC=nge{jj@OzKeFLWC zd{O$8be(VL)XJ|!ic5^*&uYbGo#N|K#WxnkUz!y?9g1%qiYq;e{}y>%ReAhX?eU$) z<8L~TYo#9FvmQTKJpOL=Sdzd>W?U1?RjGEemOURG&xn?EjkF3gXK^a-gL(+PO%z)d z$@eyY(e#m>O4rC}{@>n;_K$02vTWeiWV#a?FB;V}enBZPs?8WF8$tF#Z^EcHHLmF$ zn^u!D|lX zoc6DIQ}Nx}#j<>EbP3b-p#Q5zf35c@^4CeIYkZhy==o%cnlh2xQ#FCl#5Ap)EYcRz zAoY+%Htym&-cI~gQJf@!QXz_oti)YIsW5rmEPYEEX{3?rb&OP|$uv?SX@(J}BS!E^ zn}MWZdJrYE+kCG^Fx&(noea!hVnr(lUDIdPR2Dw^0N=@F8ciO!uZJupPZQym7!pG= zSvBsIO6tcr%&|kiF~nUma@|t19O8i~ds^H$%wvte?>A`;~_HaBl9 zFO=mij+UT{?Zi!9LB~w z?GMY+sYYmL(AqBrt4i_6;tw3bm+btwXPP@Db z+o+PSw$&E%m3%E<$x~?Lf2c>^SIOCIzLMMGTq=3eAik0xp-TR`Acn5V>l!EXVt9vd ze+Otbe23EPs5 zZ|sLdBw~r z4;0BcmBj-UwnseNrK4k)2_4-GmpV`>)PWzV4*b!_8-(5Po%VYSCjx!Q` z-Yj%2&BvK?y%fYX|wrC z+pTn|w26GB?HEOsHo{qHH-BLDZLLNN6=*hxBtuLfL|Z zlsljMelRB?_AVC*weS)$O(qFVbV_LHu@{%}5=w@IoMYGJv3!ws(`xa2l~APX?tJEc zzDQ5i^tCd_GklR|K0`$s=q%DNR-dotiqzqn;0nG-9djwcbGZb=_%_B%CU3+Y_MI3{ zLz+TE-~3Garlfnbb-a0>>aE=F%`c39e4mZocZ}V4g57tT-FJrF_X)f2JiG4_yYDi) z?;^Xelihcg-PghHJH_s6XZIat_ucWwJY3dXv3r( zb9Dw&%^b`*J7`Kg=um80Q0WpyG-k^SL2w8J6(G0<0^A{YxPURkr(O%xCk$v-(~NpD z=A3CXQ8)U6Oz#1*P9nQXWIqvE1IQHfX=)k;GVx%LSv^5kSPilxsUXXx`S}4NTLLmE z&CeTXe%|8+GUY~)ZAk;!DI)udBE4VvZme{=47b*`kS*)(v>wDo*a#ScR%{10EsL-$ z*`_{~4s0pi88Xzg#9h0^H*SEp9m(R;b2m~6->^O610NIju6=&iL4T2h7^$L!a$~b9AwS2Kz5GE zdO%k5J;>4?23gk~AhV1FnS;o#5!p<-m2pe}$O5T=HiOKV0WwDfMY@e5%>-Eqkxc=a zA`E2a$0^cmigYZ7_vi8{^TSa7tiEJszTK9p>z6fNZIFPA!g3OWyveQKN6_MRf+};M6csam7<;sZXl2?X^ZN zCXolVGg|D^P9>=B)_Bw0rjqOVNe9)bogur*O)o>J=g$xYX-T&g;u2?sze-NC^8$)< zXm6a>^stMqF=_F=aYi+GJfJ?Q&lVdv9iYn;Ry$kfOjvA}#|HJu(rocsB4QLSLr|9N zD#dLd?h?1!-x9(theDA$`%o1QHd6Xe+2u#}=%H8fjFj2gr#G=@xIwyyRD9=H5qjfj znceEM;ppJ`h8^OkB)L+WLe)z9Mjh)o+%9UyY`xIjY>_X-=av`sZ8j^GZl7slRvHK6 z8%h+ECr$Y7GbzODUVZiAngY*EUv4NL%MD29@rkS1{JOG<^VE;UV4(3+I+-xB72&}v zht~Hp(LK7X7ED%pIurMaX-KYNhy5vMI;4lXt8?lLDtpsmjeUq%SfiLbxLLtH+;nC0 zI9iu|7Ga&iDHIpdG=DzsRhLr^OKFM4ul+7-;v^BAXDzMAGUXEHZjR0CE^NMuurA=( z>?byh7}334h!z(%>;y>}=h;DQ>g9CZGA9+)RvaBzTvO;78O$wohxAEB`jN7h^K=Y> zRG1-3wpdK_S{uJwq($?z+4k$*7k&^|3W&qW)_FRCkPQEi^5GBl?y1)KZ1 z5bIsoRE}aE;COE!HtQMonL(~AIEVkzyHc>q=GOX53T`YevL==;NYC|WGbF+OIr(~j zQ-)`7e9lF^e^o|6@VuOSgMUrNu;8^h7Y+Wk8N0nDxuV7BM}+%$(Iag^pA(ACM}uC- zN_`;pOX#3#Xk1hQ>-4O&Z8bX@Is7 z*<~X8fyf@Ak#`;qRWv{wX@GXn0L{_>-A)7a1{z!6BW|T2!OuY$Y)^w09q_H@b z#>bsRmQ7@1i7b$~5t)O?%7|uz7M~My-$I% z_c$Gx(1$a8cMT<0=?QDliH6Z9cB^ktagk=L@WhK1)Q8vd9XRs`>`0?;ieQKD$nhcO z`&u3AKdjN>W0<(r$G}wCOIt&f2A$D*z}q-Mwm=bxb>sr9BNt3VKgfM4{#F`u{iytj zcanrJWx7Y;{xNAPzjAy-ITa8j9jr=Jwh13tw6oiw*9w=(N-No=o|~&o$_9~o zpWoA2;_W)!=%Dm=ths`unqUMBLBQe4)YnI*+I-PLm!|0zh{+l%e(Gpd@dv6c=~4Vd z{|fXqNM14NodyM96}ONEuya+KyHQ#E^O@Us-rmP?K$Iv9|C@3zcfhMBxWyCp7XZj~WXGfn73A z2(=PON1dfP&&4^zpZ_|e&AM#VSG_N{>~Uzn(`2@tH?_|fg$&8bZF5jp@{=ac62Z)4 zEsG^9t+)(5BM05nY3iOzl=))lD|U@#*4JBNhnf!8dT`4S>xl0(>htG0J}`bB?j3wChEjS@u(z>n3eou`aH>}BhZqW-M+)yzM_i%OyU^w zAQRHCR-7MIX_>AH_^5^1k1s9q9U<|_=pfBAEIy6O%uptOhiF(6YqR-3hlSx2=%KLh zU_EIqqC7Llj?K@iaZJoLacdO)ro`=8#%jz7FpsbgvmRIJrcrv5bmGMp)z=$UXL*5L zrB8`DcWb7{Q+0aF9>}XD=3v-u^|5DSW&&*#RF9ZQ=sms(@5rHKiz{oPno7vh`7F?! z9<2i!^AU^UnmFw5;mSNxCP>7V8Qer-G54LMN@8OUa}xY(p%=f9i|zf?c3h;JO-Y-m z6L%R$FMz0uc~MOvy+h|<-ExZ4_^^XlhcP6oYfe#ZzwR!oO#en@>p zZwd-K?WVm-PS4dyADb!{YxZ*aj@mzr%eQg!Qf^bmg&JE%A*~d*iy65(uDOlBNPg+6 z02{P^)mzR|`#^>D)uYBAqGUc7e2zW0b@=GvA8hloJm`^sXJmk91hVb?=AsXbuzIPX zKYd*m1w6CHn^=i-c(X^C3H;u_k-KJB8_k9pFz6K2!3uWlR&5&)CJp|wBa@9IRMy_>^K{K0j zM~c=R5uf^pM@CWu&ug<$`|B1h-E6bmVH9r?>vxIRE=9Ns@u4eaKa-}e9MrD2N&}9u z!FSx-gLYY1#kI>HXg5xW)mw6D+n`Ukhj$DPYv5*m6+C(-ea|{=!>#e=qnw`m0sq2m zY9OMeZP3d+H740?^lXok+HvDM|Lwa+zVy2^Rhy9Qe{gevgg2?fL3wCP5~z9n`OH|p zc|6_w_3tsUHOPpLBPpbb?P0yE5PnLz3CqT}nX}W0o zus56pN~&tT`FPV}#pIr9*k|xj zMDO+VU2w`rDcuq%QlDc`xFJ`kC+n2o-fwbDg;>7pDnn&mQ1g(X=?)oUtFlXezRe}87>GG2dE`l-~O^9)*s z-F(?-Y5p(ywml-QG1_Uda$WpKCPTAVf?=RSjb7Fmsw~I0Dr+1!NZH0iQhJa3RjT(m zN&Vrn7pLbEO+fGQAU3D*9qqesx^=Yr5sk{)Md&?jzKUo@ZIw3oq9m?VbCs@Bj@|L!iojU|*M@fFa zX0Ahi;%p{xrTT{|aM%XNPmlFX?t0^Br3(5!Sb<>CQvbwTXhN zbZEMjBeUqlUhp6eYTTX4{M%AWgr>ndZ-@^XNl=d*?2Sb;s7JG^=NU$?6 zl!n=n=lti(DyE`y)_7vp6jEzad!loGH;tPa9hPF8cv0sm{{4qEaq8IiBR_Gvn0Ab| zWNZlP-IDQ2l5F%eaM6Q{CBri{3KJZwA3wpN>7Vszlx%b=&F*?;g{O0i;Fb@EQtRM1 z7qGsCMarfJXbc>TQaBk@bvN>+8pGwSa3u1kt6rdNs;0bYp3JG`@}?P+KwAvhJ-u5D zL@$LiS4l$mKteGKRPzlps;rM-W!F_BdW4ktgBOM~p-b+z1OupWGeQng&e(Wr_V_&(I zoBlbJo4*OET14f>4z5~=yfue&d8-dc-q`9z%EHIE&i=WJeBK=4T;7^r>dl+_<#1*Q zamk^)EmAE<-q^>uyxBHV-hy+(nHgN(9=+7O&iJ3;r-;;MDs_X*R)m}J(YfXZGAN+eRu5UCVkT-=rWfyRkIab%q7t~xh5}} z_nFk*{<5>lcb|1@^2U3^Gc+4yD3C+c9b>HZn60f1$?h*4u(QDz>`6RieB)KK35~>wDIMG;lKs4GRW#QHhBss~OyT|dh zVrP3u6)MedjzS|+ixK~#=#3gyKM37fg#q1JskWW+_7N5*0w@z(+96ME1mWR-eiw)=Ud?JUP(Q zL1&H~8l)F}8q3LKtSf6JB`4L`%3}0viIoOp`5cQy=yDL)XhChD1$Df#U4K$TtMW)% zZgXn$(+mTfEyG}g#pnYLJ%p_#>?vA|e?$9Q)~m4Vd4{qjwsj=Pv_TY+r+8@b(9CdP zUj(*h0kGKRlHXjA)2l+yC+tBAyHsh@pKSKBA1=Vq{dqzyt+-DR_D>Y{e!@C@fvu(W z_*ugC5cUTO`v_rG0l+dY%Wz<0X)ks?ZQx}BvE`rAvV|!~v@rLOHrbVb>$9;$6zo3d(PiMBSNCHxtTs9jV7( zBhJ5rD&Aa-b-i&C*7c>NY;WJ{fZCtP9vTI+Hmz%9f81eDp|HD1XWlVNjs4>r;Mp~u zJli?*Mn51HsM%LG7uX(0@E+P5lR6r?8x`=-5=G!3q;NB(Fas&}0tJjQ(v*oI8?Wa^Qrk??G-Cr|YgFuCJhNGk56L8tU5ZDSFfC3SiSRhw@pmh}OU z|8&IC`aJRyz5sdAlR7<_)agy6PG2~Ns>iFq+DX~28V{@mUt95Ugu*UCSTpI^jih5| z;vnJVok&b$7Ua-522p%NWR(=f5#-&t+_dH-JAt-iUm0`lkT(;^+INKKBX{})Bv1Dg zr8$N??FH~;5~*aL0>g`>KVL_R@fn2G7K4v&60n)i0NYGz^K*nPBWyzn#WERKd^>~g zov^9nfZan_@%_LyPX)H}Szy~~FMlCn4+qvEF%KXk9n+9a(euF8&P9ow8ixW+`+?H` zFtDN-z}6G?EMcz@R{9Sr*++m?rvj^P0M@DlHYbuQgO~h|JG3>x>eGO2C+uay{+h7n z5MUd&0Be~Eto{XHTjl|Kk+5kafE7OutZf#s*9coRA6uwnUEZqL8ph2z!yR<%6-6&bSX@*+mH3N!Y7|O&w2ZC_);# z4g%YJFR-Pr0c%?b?8@;toRPK~84N#+YGYdhY|m@@&*!s?N)@!-?iiUy`_o{w>%UUe z4}!Am9Z6zmLfaw)zce0EUnA^~o>1#OB40_}EN5$qcByf;rWB1{wd!|S&ra`7)o|lr zV@P56Z_p3ZL-wW)0K!I*6{k44=MCWKcRF4o({a8$B*S$!oGYN`Egg1-uWjd)2{N%R!&UigoNn`ALY@TYjsz@O4h+RiY+pXk4Z zzc1Y1;q`Ix|A)X|3Yoa__k(OmrUCGmxzGo}pUx5Ces3;a&h(6d|6ur!g+IyI=|2_z z!EjH7KjEGJI`}hi&xOCMoJ$4&5;uPf{7DX5;qRJGtH7U5^}6yu1b<5Z>+p9?|J(3K z72+PUV?gO4$8q>80m;u+_aObHwKA=Abf2t=`pD2E({{_LH z^6KgjCueu-CqUHcOBB}K?p9(PET+UI;UB??^ly@jt*QQui{#;|v^9A=5%+UNe^e_B zWo3r-<*w$mdhNUPOJ7v7a?NUv-whV3CMCI;W$8B{Z_2BP%ue;j;9`1;`1W!n`!T%^ z!9G|&M!+}{&Ug)%3(m%vOEUVnyLk4OHXh9x$LSBb@9C@2@ETHyRb| zFBvzQ7weDWMnhw_Ep*r{#c|7(f^DGQLg|+?70(L3-21GAQOQh7a^>NvG1wqSKpMeLf~RifDZ zqH?-pF}ApP-Rjsys?klK>HRKkF@(pDV6qS_b!FO&s&zk#RhyUn)s2jZD zA%A+B@e17}=XU-}hbKKT7$f?_Q(sNbDRAx&-$orOo+Gyi&r)Yg4>~>k-ITuk0B#J6 zrAtXLmc@<+#Gdt786f)6*o)|tM*vy@aWpj60*Ed+wiJ-)bOJsGkivTl{+BV3koy!M z(d`8!KD7eO7obLfp#r>yfrsMl1SI-{0<;Kl0U*Yp*hm4Y05KNEIxz5(e=x{ML=@f03p)Y7C?$;FCelUTP)!71-L+f8Ue-#Fhqb#K!`Z@DsG=3zOaSB!45$3 zKO(rB1Xw3PR)D2|M5h;^PJkK#ss$JdNc_D8_jMe8rf`=9=l~>qhu}T}h&f1Xli9!k-o35dk&>VxACN zC%7LHV7>rz1bm9%9xXs`0ba#~g!rBlU(!JQ+xQv|nKa0dzQ z>zJqz{~kc%dsc9_3+}yw+bX!X01gLT1t7^gQ-Eqf;-eDaIka?gHw&;4koeaM?ot8f z2ryf~s|ELH!Hqk#IX>6X4^emrAn`o~$N;tjA}iT#Je=Mv;Oha=XEhQ;y~(Z<+yvpC zt_P&{rx9QzAoUX}Kx$_W^k>w5IsnPP1(4{ig1c65mkRD2Knj-(NOBnsh_{F?X8<9B>`)#~4+2CIvsFBtejQyawdZpJJR-nS zKqMi%n1|Ez1^)#COc!8`0Fg)P-?JfGg43-$RImcn3s56KMt}fBuSh{Vs6|RWB*oZd z6B6nnu}JD*A99z(ivLZLz4%|}QSad)Y4d1D-6k8^u682H#;q?hwkVJ|ibQSX2948x zoEmIPh)#QLaB_Ac>nJgJ+VJ|p(>Wf}r3~bDj-T9`2X5zh`-MPHVd;4qFVQ>4 zYpO^1>wU8E%hjFd=HB4u-sl$opqqP^o13OFuKdTjEsLD}B?FUX&Ne5%e7J>;PAZ_dNu15iiF|Rz0m1@jl8Yfxe!=0i z(3!;H6P-@{7|^UIZ_N{SvGI(GpD>BH&&hC)ng`tf{_J^9oS2ZrljuG3ii-+LDhwrt z;`J3pdF7PwqSDfW{5Y&^lkyW1rWo>8=EWzflanT|R2L-WPDvd_B?s&K7LL&AnWoQ z{9wSeyrS1@#fk+PIW%avJv3g?L+L{|d&}o$e(Bl;+CFk8AC?4!#|mb|uN{+BXC66( z@b7l^Je!3;G_RzG!MG%_<~`j0-`1X|P!0=)aHUAsK>Wsljt_!}@lf&6nA(GIn97T6 z7_Tgl9j4K}I!tGoV))=_0RHKRd5^CsPF)ujk2B50OvpwrU!ooePh~I=o@6i(o{C{0 zJmqyDJjrArJV|#TJkSF^Bp;Fq@uB-S`O@kOay$7@{_p7{ze&E7zk%?#OFva#N*|?@ z%9Nn%L-mL7luo)V)V)q(8OY(uA7;^R!c$!wNPbwR4v5FHm)4WFlpp5UT>Q6^FNGaQ zJ~XW(9=A$AP4o14osWC{##(&9_=9hQr#3r~e7eysQ1M9GMZ+IVW3?GF>-L49AYw|aElju-d*?RSsN{rrxv z|McVu0{U6@M}m0!BaOZGN9Nybes%p$uX>hl%M*o<|JM)x3lO8AB&ij)jd`H*L zj__JlYF(qcBEhaZAxRrQ#QO~+(jC}TYT3B1Svs}QT*`V>>TyN4xuSC8dYg1Ii$AlE z0r$Rl_-^R&U2XAQr}5aJ_o(Ple5LXzV?8!-|5rPF%NfD{0OvE?PwCIyV>?uwlv=;* z^zHAlJ-+|#7{8BC<~Lox>yZyv%-b73F8SN>Lt&&Hh}#I9a?4E;otd~Xvt{JN}0$n^Q+R# z(B+l7*&EZ&_Z)4VH#Ib1FZ7 zyQ$Ud@!Cz_>JfB7w(p||dLegyQV@dH^FiC|d^aNK#+lU!s!o|SwoQVdb|I+m?2mK^ zTDg#m^+H~1j0!=Sz+59@RX)iD^?0Eoc{E}jy@!jnA(D^vPCmhE-R2s^nzk)9X6D9_ zuq{Ek+Nte5rS(BR?;C11Hr|h*Nhv{mtnq8Ppng?@Ue_SjbS~&_^I6~HfBxd38G2pv z=-{oh^5?(&>b#@*oAM?-duYkNnO={MJG<`Hd97ojpPm2ep=bX3%B$jE?l*1y|NDN^ z@n~+hx!*KYIgh*F^k2N!R3sXulq8y%NPvkZCOOeNU3W?yax^|o-F}OkL6a>v+zd+d zoR=|~pw8aQvn+Ds1L(_gO6$|6x3nfVr%mZ-HGLU+tih*S3(Gwtz6>AH9X6XD*6H^IgKG5D+DcHo`h;{UGTPx>!ce~@tB)!zd|p1+}dK2TIv zP+U-6zQRzFU$&+we?@7rVLkV+c+Gt)ve(>~u?}nd6%|FR3pT7NDOj;)<;wDc3RpP9 zvNykcMSj6b!~Mk-x8*XwVD0?{u zb^EZcg>@V1{z~gML2fFp+tA-sUep5k=Rfs*xe`+vd;;^$0YvxWn+%BgsV{vG!OX{( z_ReDZ>bnWhRiAGrH)x#C!{kO-r@rR_a-;8X>TB+GbFU>gHE8sM^kliYhrvzzm*{&B zJzwJWLwo|c=rFlm;sZH{2jHF>{3pCl=sfQvH=ie-;PyrFvw9NI?fKlge*P1I`S$xW z0=U-b+mZKIrEeGJraBGnEp29q%UhjaTvSrvbQY}6Ey&M@Qg!v3{QI#ng4YDof2W$4 ze#dkE7!*jK>#DPfSkEGvI>nq)E9` zlJb*R=B~^w$eWbt)Z$`q*biU-gnCcahx

<)6{xjwMA49;Y7H=|&sk)_GLL>G{8< z$7Q+L|8+gClaF3#Pd#W$)HLg%D01lrgxDy*xkVLuYw`;OpA{>zvlrggixxSYd`M7u zbbx{v@8S0Uc6waeH$jh6r=vl-2I4mcw0vJenu0z(ZWF?xKNKYc*$7DUIvrkmoMlS+ zC7S=qLluqUB}nrquHv~cBHn~2*q`2yWbVu(e)jf<^!w*L6yHF44~lmn{uDo@kEGV0 zUX^4%5Pxb91Myb?Z@}w(C@$BB%3vTomCHcpmCE3s(R;2(!he?DQ^o5&t9tdGsW<68{ay8*;k@3H z>TW`WlGA$zlHN1WsrRgf-m@xOHM(4;SI=T~OGn@3KPLO9!0YnVnAQmmQi({jU0++4 z->x9h{l|2j+qE@Yf_Po$i~p>y^Q&){EdS~BS67lkmydnhk^8%PQB-J|xb*lFiZZ?T zTU0Hn)&vZfc}mgE<{K#=)K|FaGEM$$YNREgsmc^-8rD=B9ceC$tcU%E?U9@JM{YS2 z`Ph}nzPp9DM?JkiYS)>l=U~)ERjesyRbSPv5q=8 zEJT4=BYw-p8uFUwCdBHosXE6S37*XdHQYNQ$O8%fm=9`QSo=QmI_eEBsDD7>y?4#5 z$E zXiW*j>2R3HykbMieXD{wtI3+G2igcNpc$3H*AkidZ{@>SS(pUq%9z$alJxlP? z{4gCa`RVY|Ly$UM7B4+|yfhD~zLh za=OOZfJoC+;sb?JIgVIB)wN>vn%p9&9rJ&+0-O3*WH>Fu2uizK65eckMhNk5R>a-3 z0*3nSmWgst{jDi)nS7EK|NN))QrA$Xm_GQn2=F;X=c<3IC%3b(@q0VDu{dD?>Dhvp z^iK}F^sK?_>L&dV>7ShIM!lPxsubyqoKFn7UHFS`Ej4%f4nTTq0slLcDzs1T{{R^< B2}%F} literal 0 HcmV?d00001 diff --git a/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseCoreDiagnostics.framework/Modules/module.modulemap b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseCoreDiagnostics.framework/Modules/module.modulemap new file mode 100755 index 0000000..bbcb94e --- /dev/null +++ b/Til to Code/Pods/FirebaseAnalytics/Frameworks/FirebaseCoreDiagnostics.framework/Modules/module.modulemap @@ -0,0 +1,6 @@ +framework module FirebaseCoreDiagnostics { + export * + module * { export *} + link "z" + link framework "Security" + link framework "SystemConfiguration"} diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/CHANGELOG.md b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/CHANGELOG.md new file mode 100644 index 0000000..ecd6702 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/CHANGELOG.md @@ -0,0 +1,172 @@ +# v5.0.5 +- Restore SafariServices framework dependency (#2002). + +# v5.0.4 +- Fix analyzer issues (#1740). + +# v5.0.3 +- Adds `FIRAuthErrorCodeMalformedJWT`, which is raised on JWT token parsing. + failures during auth operations (#1436). +- Migrate to use FirebaseAuthInterop interfaces to access FirebaseAuth (#1501). + +# v5.0.2 +- Fix an issue where JWT date timestamps weren't parsed correctly. (#1319) +- Fix an issue where anonymous accounts weren't correctly promoted to + non-anonymous when linked with passwordless email auth accounts. (#1383) +- Fix an exception from using an invalidated NSURLSession. (#1261) +- Fix a data race issue caught by the sanitizer. (#1446) + +# v5.0.1 +- Restore 4.x level of support for extensions (#1357). + +# v5.0.0 +- Adds APIs for phone Auth testing to bypass the verification flow (#1192). +- Changes the callback block signature for sign in and create user methods + to provide an AuthDataResult that includes the user and user info (#1123, #1186). +- Removes GoogleToolboxForMac dependency (#1175). +- Removes miscellaneous deprecated APIs (#1188, #1200). + +# v4.6.1 +- Fixes crash which occurred when certain Firebase IDTokens were being parsed (#1076). + +# v4.6.0 +- Adds `getIDTokenResultWithCompletion:` and `getIDTokenResultForcingRefresh:completion:` APIs which + call back with an AuthTokenResult object. The Auth token result object contains the ID token JWT string and other properties associated with the token including the decoded available payload claims (#1004). + +- Adds the `updateCurrentUser:completion:` API which sets the currentUser on the calling Auth instance to the provided user object (#1018). + +- Adds client-side validation to prevent setting `handleCodeInApp` to false when performing + email-link authentication. If `handleCodeInApp` is set to false an invalid argument exception + is thrown (#931). + +- Adds support for passing the deep link (which is embedded in the sign-in link sent via email) to the + `signInWithEmail:link:completion:` and `isSignInWithEmailLink:` methods during an + email/link sign-in flow (#1023). + +# v4.5.0 +- Adds new API which provides a way to determine the sign-in methods associated with an + email address. +- Adds new API which allows authentication using only an email link (Passwordless Authentication + with email link). + +# v4.4.4 +- Addresses CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF warnings that surface in newer versions of + Xcode and CocoaPods. +- Improves FIRUser documentation with clear message explaining when Firebase Auth attempts to validate + users and what happens when an invalidated user is detected (#694) . + +# v4.4.3 +- Adds an explicit dependency on CoreGraphics from Firebase Auth. + +# v4.4.2 +- Fixes bug where the FIRAuthResult object returned following a Phone Number authentication + always contained a nil FIRAdditionalUserInfo object. Now the FIRAdditionalUserInfo object is + never nil and its newUser field is populated correctly. + +# v4.4.0 +- Adds new APIs which return an AuthDataResult object after successfully creating an + Email/Password user, signing in anonymously, signing in with Email/Password and signing + in with Custom Token. The AuthDataResult object contains the new user and additional + information pertaining to the new user. + +# v4.3.2 +- Improves error handling for the phone number sign-in reCAPTCHA flow. +- Improves error handling for phone number linking flow. +- Fixes issue where after linking an anonymous user to a phone number the user remained + anonymous. + +# v4.3.1 +- Internal clean up. + +# v4.3.0 +- Provides account creation and last sign-in dates as metadata to the user + object. +- Returns more descriptive errors for some error cases of the phone number + sign-in reCAPTCHA flow. +- Fixes an issue that invalid users were not automatically signed out earlier. +- Fixes an issue that ID token listeners were not fired in some cases. + +# v4.2.1 +- Fixes a threading issue in phone number auth that completion block was not + executed on the main thread in some error cases. + +# v4.2.0 +- Adds new phone number verification API which makes use of an intelligent reCAPTCHA to verify the application. + +# v4.1.1 +- Improves some method documentation in headers. + +# v4.1.0 +- Allows the app to handle continue URL natively, e.g., from password reset + email. +- Allows the app to set language code, e.g., for sending password reset email. +- Fixes an issue that user's phone number did not persist on client. +- Fixes an issue that recover email action code type was reported as unknown. +- Improves app start-up time by moving initialization off from the main + thread. +- Better reports missing email error when creating a new password user. +- Changes console message logging levels to be more consistent with other + Firebase products on the iOS platform. + +# 2017-05-17 -- v4.0.0 +- Adds Phone Number Authentication. +- Adds support for generic OAuth2 identity providers. +- Adds methods that return additional user data from identity providers if + available when authenticating users. +- Improves session management by automatically refreshing tokens if possible + and signing out users if the session is detected invalidated, for example, + after the user changed password or deleted account from another device. +- Fixes an issue that reauthentication creates new user account if the user + credential is valid but does not match the currently signed in user. +- Fixes an issue that the "password" provider is not immediately listed on the + client side after adding a password to an account. +- Changes factory methods to return non-null FIRAuth instances or raises an + exception, instead of returning nullable instances. +- Changes auth state change listener to only be triggered when the user changes. +- Adds a new listener which is triggered whenever the ID token is changed. +- Switches ERROR_EMAIL_ALREADY_IN_USE to + ERROR_ACCOUNT_EXISTS_WITH_DIFFERENT_CREDENTIAL when the email used in the + signInWithCredential: call is already in use by another account. +- Deprecates FIREmailPasswordAuthProvider in favor of FIREmailAuthProvider. +- Deprecates getTokenWithCompletion in favor of getIDTokenWithCompletion on + FIRUser. +- Changes Swift API names to better align with Swift convention. + +# 2017-02-06 -- v3.1.1 +- Allows handling of additional errors when sending OOB action emails. The + server can respond with the following new error messages: + INVALID_MESSAGE_PAYLOAD,INVALID_SENDER and INVALID_RECIPIENT_EMAIL. +- Removes incorrect reference to FIRAuthErrorCodeCredentialTooOld in FIRUser.h. +- Provides additional error information from server if available. + +# 2016-12-13 -- v3.1.0 +- Adds FIRAuth methods that enable the app to follow up with user actions + delivered by email, such as verifying email address or reset password. +- No longer applies the keychain workaround introduced in v3.0.5 on iOS 10.2 + simulator or above since the issue has been fixed. +- Fixes nullability compilation warnings when used in Swift. +- Better reports missing password error. + +# 2016-10-24 -- v3.0.6 +- Switches to depend on open sourced GoogleToolboxForMac and GTMSessionFetcher. +- Improves logging of keychain error when initializing. + +# 2016-09-14 -- v3.0.5 +- Works around a keychain issue in iOS 10 simulator. +- Reports the correct error for invalid email when signing in with email and + password. + +# 2016-07-18 -- v3.0.4 +- Fixes a race condition bug that could crash the app with an exception from + NSURLSession on iOS 9. + +# 2016-06-20 -- v3.0.3 +- Adds documentation for all possible errors returned by each method. +- Improves error handling and messages for a variety of error conditions. +- Whether or not an user is considered anonymous is now consistent with other + platforms. +- A saved signed in user is now siloed between different Firebase projects + within the same app. + +# 2016-05-18 -- v3.0.2 +- Initial public release. diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/README.md b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/README.md new file mode 100644 index 0000000..f6e123e --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/README.md @@ -0,0 +1,17 @@ +# Firebase Auth for iOS + +Firebase Auth enables apps to easily support multiple authentication options +for their end users. + +Please visit [our developer site](https://firebase.google.com/docs/auth/) for +integration instructions, documentation, support information, and terms of +service. + +# Firebase Auth Development + +Example/Auth contains a set of samples and tests that integrate with +FirebaseAuth. + +The unit tests run without any additional configuration along with the rest of +Firebase. See [Example/Auth/README.md](../../Example/Auth/README.md) for +information about setting up, running, and testing the samples. diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/EmailPassword/FIREmailAuthProvider.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/EmailPassword/FIREmailAuthProvider.m new file mode 100644 index 0000000..7a871e2 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/EmailPassword/FIREmailAuthProvider.m @@ -0,0 +1,39 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIREmailAuthProvider.h" + +#import "FIREmailPasswordAuthCredential.h" + +// FIREmailPasswordAuthProviderID is defined in FIRAuthProvider.m. + +@implementation FIREmailAuthProvider + +- (instancetype)init { + @throw [NSException exceptionWithName:@"Attempt to call unavailable initializer." + reason:@"This class is not meant to be initialized." + userInfo:nil]; +} + ++ (FIRAuthCredential *)credentialWithEmail:(NSString *)email password:(NSString *)password { + return [[FIREmailPasswordAuthCredential alloc] initWithEmail:email password:password]; +} + ++ (FIRAuthCredential *)credentialWithEmail:(NSString *)email link:(NSString *)link { + return [[FIREmailPasswordAuthCredential alloc] initWithEmail:email link:link]; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/EmailPassword/FIREmailPasswordAuthCredential.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/EmailPassword/FIREmailPasswordAuthCredential.h new file mode 100644 index 0000000..7625685 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/EmailPassword/FIREmailPasswordAuthCredential.h @@ -0,0 +1,61 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthCredential_Internal.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIREmailPasswordAuthCredential + @brief Internal implementation of FIRAuthCredential for Email/Password credentials. + */ +@interface FIREmailPasswordAuthCredential : FIRAuthCredential + +/** @property email + @brief The user's email address. + */ +@property(nonatomic, readonly) NSString *email; + +/** @property password + @brief The user's password. + */ +@property(nonatomic, readonly) NSString *password; + +/** @property link + @brief The email sign-in link. + */ +@property(nonatomic, readonly) NSString *link; + +/** @fn initWithEmail:password: + @brief Designated initializer. + @param email The user's email address. + @param password The user's password. + */ +- (nullable instancetype)initWithEmail:(NSString *)email password:(NSString *)password + NS_DESIGNATED_INITIALIZER; + +/** @fn initWithEmail:link: + @brief Designated initializer. + @param email The user's email address. + @param link The email sign-in link. + */ +- (nullable instancetype)initWithEmail:(NSString *)email link:(NSString *)link + NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/EmailPassword/FIREmailPasswordAuthCredential.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/EmailPassword/FIREmailPasswordAuthCredential.m new file mode 100644 index 0000000..71cc330 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/EmailPassword/FIREmailPasswordAuthCredential.m @@ -0,0 +1,60 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIREmailPasswordAuthCredential.h" + +#import "FIREmailAuthProvider.h" +#import "FIRAuthExceptionUtils.h" +#import "FIRVerifyAssertionRequest.h" + +@interface FIREmailPasswordAuthCredential () + +- (nullable instancetype)initWithProvider:(NSString *)provider NS_UNAVAILABLE; + +@end + +@implementation FIREmailPasswordAuthCredential + +- (nullable instancetype)initWithProvider:(NSString *)provider { + [FIRAuthExceptionUtils raiseMethodNotImplementedExceptionWithReason: + @"Please call the designated initializer."]; + return nil; +} + +- (nullable instancetype)initWithEmail:(NSString *)email password:(NSString *)password { + self = [super initWithProvider:FIREmailAuthProviderID]; + if (self) { + _email = [email copy]; + _password = [password copy]; + } + return self; +} + +- (nullable instancetype)initWithEmail:(NSString *)email link:(NSString *)link { + self = [super initWithProvider:FIREmailAuthProviderID]; + if (self) { + _email = [email copy]; + _link = [link copy]; + } + return self; +} + +- (void)prepareVerifyAssertionRequest:(FIRVerifyAssertionRequest *)request { + [FIRAuthExceptionUtils raiseMethodNotImplementedExceptionWithReason: + @"Attempt to call prepareVerifyAssertionRequest: on a FIREmailPasswordAuthCredential."]; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Facebook/FIRFacebookAuthCredential.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Facebook/FIRFacebookAuthCredential.h new file mode 100644 index 0000000..47ab18a --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Facebook/FIRFacebookAuthCredential.h @@ -0,0 +1,36 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthCredential_Internal.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRFacebookAuthCredential + @brief Internal implementation of FIRAuthCredential for the Facebook IdP. + */ +@interface FIRFacebookAuthCredential : FIRAuthCredential + +/** @fn initWithAccessToken: + @brief Designated initializer. + @param accessToken The Access Token obtained from Facebook. + */ +- (nullable instancetype)initWithAccessToken:(NSString *)accessToken NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Facebook/FIRFacebookAuthCredential.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Facebook/FIRFacebookAuthCredential.m new file mode 100644 index 0000000..1c3576a --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Facebook/FIRFacebookAuthCredential.m @@ -0,0 +1,51 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRFacebookAuthCredential.h" + +#import "FIRFacebookAuthProvider.h" +#import "FIRAuthExceptionUtils.h" +#import "FIRVerifyAssertionRequest.h" + +@interface FIRFacebookAuthCredential () + +- (nullable instancetype)initWithProvider:(NSString *)provider NS_UNAVAILABLE; + +@end + +@implementation FIRFacebookAuthCredential { + NSString *_accessToken; +} + +- (nullable instancetype)initWithProvider:(NSString *)provider { + [FIRAuthExceptionUtils raiseMethodNotImplementedExceptionWithReason: + @"Please call the designated initializer."]; + return nil; +} + +- (nullable instancetype)initWithAccessToken:(NSString *)accessToken { + self = [super initWithProvider:FIRFacebookAuthProviderID]; + if (self) { + _accessToken = [accessToken copy]; + } + return self; +} + +- (void)prepareVerifyAssertionRequest:(FIRVerifyAssertionRequest *)request { + request.providerAccessToken = _accessToken; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Facebook/FIRFacebookAuthProvider.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Facebook/FIRFacebookAuthProvider.m new file mode 100644 index 0000000..d2759ae --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Facebook/FIRFacebookAuthProvider.m @@ -0,0 +1,36 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRFacebookAuthProvider.h" + +#import "FIRFacebookAuthCredential.h" +#import "FIRAuthExceptionUtils.h" + +// FIRFacebookAuthProviderID is defined in FIRAuthProvider.m. + +@implementation FIRFacebookAuthProvider + +- (instancetype)init { + [FIRAuthExceptionUtils raiseMethodNotImplementedExceptionWithReason: + @"This class is not meant to be initialized."]; + return nil; +} + ++ (FIRAuthCredential *)credentialWithAccessToken:(NSString *)accessToken { + return [[FIRFacebookAuthCredential alloc] initWithAccessToken:accessToken]; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/GitHub/FIRGitHubAuthCredential.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/GitHub/FIRGitHubAuthCredential.h new file mode 100644 index 0000000..bfb5479 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/GitHub/FIRGitHubAuthCredential.h @@ -0,0 +1,41 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthCredential_Internal.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRGitHubAuthCredential + @brief Internal implementation of FIRAuthCredential for GitHub credentials. + */ +@interface FIRGitHubAuthCredential : FIRAuthCredential + +/** @property token + @brief The GitHub OAuth access token. + */ +@property(nonatomic, readonly) NSString *token; + +/** @fn initWithToken: + @brief Designated initializer. + @param token The GitHub OAuth access token. + */ +- (nullable instancetype)initWithToken:(NSString *)token NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/GitHub/FIRGitHubAuthCredential.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/GitHub/FIRGitHubAuthCredential.m new file mode 100644 index 0000000..a0185eb --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/GitHub/FIRGitHubAuthCredential.m @@ -0,0 +1,49 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRGitHubAuthCredential.h" + +#import "FIRGitHubAuthProvider.h" +#import "FIRAuthExceptionUtils.h" +#import "FIRVerifyAssertionRequest.h" + +@interface FIRGitHubAuthCredential () + +- (nullable instancetype)initWithProvider:(NSString *)provider NS_UNAVAILABLE; + +@end + +@implementation FIRGitHubAuthCredential + +- (nullable instancetype)initWithProvider:(NSString *)provider { + [FIRAuthExceptionUtils raiseMethodNotImplementedExceptionWithReason: + @"Please call the designated initializer."]; + return nil; +} + +- (nullable instancetype)initWithToken:(NSString *)token { + self = [super initWithProvider:FIRGitHubAuthProviderID]; + if (self) { + _token = [token copy]; + } + return self; +} + +- (void)prepareVerifyAssertionRequest:(FIRVerifyAssertionRequest *)request { + request.providerAccessToken = _token; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/GitHub/FIRGitHubAuthProvider.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/GitHub/FIRGitHubAuthProvider.m new file mode 100644 index 0000000..8e0ff76 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/GitHub/FIRGitHubAuthProvider.m @@ -0,0 +1,36 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRGitHubAuthProvider.h" + +#import "FIRGitHubAuthCredential.h" +#import "FIRAuthExceptionUtils.h" + +// FIRGitHubAuthProviderID is defined in FIRAuthProvider.m. + +@implementation FIRGitHubAuthProvider + +- (instancetype)init { + [FIRAuthExceptionUtils raiseMethodNotImplementedExceptionWithReason: + @"This class is not meant to be initialized."]; + return nil; +} + ++ (FIRAuthCredential *)credentialWithToken:(NSString *)token { + return [[FIRGitHubAuthCredential alloc] initWithToken:token]; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Google/FIRGoogleAuthCredential.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Google/FIRGoogleAuthCredential.h new file mode 100644 index 0000000..bacab63 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Google/FIRGoogleAuthCredential.h @@ -0,0 +1,38 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthCredential_Internal.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRGoogleAuthCredential + @brief Internal implementation of FIRAuthCredential for the Google IdP. + */ +@interface FIRGoogleAuthCredential : FIRAuthCredential + +/** @fn initWithIDToken:accessToken: + @brief Designated initializer. + @param IDToken The ID Token obtained from Google. + @param accessToken The Access Token obtained from Google. + */ +- (nullable instancetype)initWithIDToken:(NSString *)IDToken accessToken:(NSString *)accessToken + NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Google/FIRGoogleAuthCredential.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Google/FIRGoogleAuthCredential.m new file mode 100644 index 0000000..d66b2e2 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Google/FIRGoogleAuthCredential.m @@ -0,0 +1,54 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRGoogleAuthCredential.h" + +#import "FIRGoogleAuthProvider.h" +#import "FIRAuthExceptionUtils.h" +#import "FIRVerifyAssertionRequest.h" + +@interface FIRGoogleAuthCredential () + +- (nullable instancetype)initWithProvider:(NSString *)provider NS_UNAVAILABLE; + +@end + +@implementation FIRGoogleAuthCredential { + NSString *_IDToken; + NSString *_accessToken; +} + +- (nullable instancetype)initWithProvider:(NSString *)provider { + [FIRAuthExceptionUtils raiseMethodNotImplementedExceptionWithReason: + @"Please call the designated initializer."]; + return nil; +} + +- (nullable instancetype)initWithIDToken:(NSString *)IDToken accessToken:(NSString *)accessToken { + self = [super initWithProvider:FIRGoogleAuthProviderID]; + if (self) { + _IDToken = [IDToken copy]; + _accessToken = [accessToken copy]; + } + return self; +} + +- (void)prepareVerifyAssertionRequest:(FIRVerifyAssertionRequest *)request { + request.providerIDToken = _IDToken; + request.providerAccessToken = _accessToken; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Google/FIRGoogleAuthProvider.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Google/FIRGoogleAuthProvider.m new file mode 100644 index 0000000..a2f4c79 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Google/FIRGoogleAuthProvider.m @@ -0,0 +1,37 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRGoogleAuthProvider.h" + +#import "FIRGoogleAuthCredential.h" +#import "FIRAuthExceptionUtils.h" + +// FIRGoogleAuthProviderID is defined in FIRAuthProvider.m. + +@implementation FIRGoogleAuthProvider + +- (instancetype)init { + [FIRAuthExceptionUtils raiseMethodNotImplementedExceptionWithReason: + @"This class is not meant to be initialized."]; + return nil; +} + ++ (FIRAuthCredential *)credentialWithIDToken:(NSString *)IDToken + accessToken:(NSString *)accessToken { + return [[FIRGoogleAuthCredential alloc] initWithIDToken:IDToken accessToken:accessToken]; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/OAuth/FIROAuthCredential.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/OAuth/FIROAuthCredential.h new file mode 100644 index 0000000..c7241a1 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/OAuth/FIROAuthCredential.h @@ -0,0 +1,50 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthCredential_Internal.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIROAuthCredential + @brief Internal implementation of FIRAuthCredential for generic credentials. + */ +@interface FIROAuthCredential : FIRAuthCredential + +/** @property IDToken + @brief The ID Token associated with this credential. + */ +@property(nonatomic, readonly, nullable) NSString *IDToken; + +/** @property accessToken + @brief The access token associated with this credential. + */ +@property(nonatomic, readonly, nullable) NSString *accessToken; + +/** @fn initWithProviderId:IDToken:accessToken: + @brief Designated initializer. + @param providerID The provider ID associated with the credential being created. + @param IDToken The ID Token associated with the credential being created. + @param accessToken The access token associated with the credential being created. + */ +- (nullable instancetype)initWithProviderID:(NSString *)providerID + IDToken:(nullable NSString*)IDToken + accessToken:(nullable NSString *)accessToken; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/OAuth/FIROAuthCredential.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/OAuth/FIROAuthCredential.m new file mode 100644 index 0000000..67633d8 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/OAuth/FIROAuthCredential.m @@ -0,0 +1,49 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIROAuthCredential.h" + +#import "FIRVerifyAssertionRequest.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface FIROAuthCredential () + +- (nullable instancetype)initWithProvider:(NSString *)provider NS_UNAVAILABLE; + +@end + +@implementation FIROAuthCredential + +- (nullable instancetype)initWithProviderID:(NSString *)providerID + IDToken:(nullable NSString *)IDToken + accessToken:(nullable NSString *)accessToken { + self = [super initWithProvider:providerID]; + if (self) { + _IDToken = IDToken; + _accessToken = accessToken; + } + return self; +} + +- (void)prepareVerifyAssertionRequest:(FIRVerifyAssertionRequest *)request { + request.providerIDToken = _IDToken; + request.providerAccessToken = _accessToken; +} + +NS_ASSUME_NONNULL_END + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/OAuth/FIROAuthProvider.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/OAuth/FIROAuthProvider.m new file mode 100644 index 0000000..0561703 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/OAuth/FIROAuthProvider.m @@ -0,0 +1,42 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIROAuthProvider.h" + +#import "FIROAuthCredential.h" + +NS_ASSUME_NONNULL_BEGIN + +@implementation FIROAuthProvider + ++ (FIRAuthCredential *)credentialWithProviderID:(NSString *)providerID + IDToken:(NSString *)IDToken + accessToken:(nullable NSString *)accessToken { + return [[FIROAuthCredential alloc] initWithProviderID:providerID + IDToken:IDToken + accessToken:accessToken]; +} + ++ (FIROAuthCredential *)credentialWithProviderID:(NSString *)providerID + accessToken:(NSString *)accessToken { + return [[FIROAuthCredential alloc] initWithProviderID:providerID + IDToken:nil + accessToken:accessToken]; +} + +NS_ASSUME_NONNULL_END + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Phone/FIRPhoneAuthCredential.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Phone/FIRPhoneAuthCredential.m new file mode 100644 index 0000000..c7e8bb1 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Phone/FIRPhoneAuthCredential.m @@ -0,0 +1,64 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRPhoneAuthCredential.h" + +#import "FIRPhoneAuthCredential_Internal.h" +#import "FIRAuthCredential_Internal.h" +#import "FIRAuthExceptionUtils.h" +#import "FIRVerifyAssertionRequest.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRPhoneAuthCredential () + +- (nullable instancetype)initWithProvider:(NSString *)provider NS_UNAVAILABLE; + +@end + +@implementation FIRPhoneAuthCredential + +- (instancetype)initWithTemporaryProof:(NSString *)temporaryProof + phoneNumber:(NSString *)phoneNumber + providerID:(NSString *)providerID { + self = [super initWithProvider:providerID]; + if (self) { + _temporaryProof = [temporaryProof copy]; + _phoneNumber = [phoneNumber copy]; + } + return self; +} + +- (nullable instancetype)initWithProvider:(NSString *)provider { + [FIRAuthExceptionUtils raiseMethodNotImplementedExceptionWithReason: + @"Please call the designated initializer."]; + return nil; +} + +- (instancetype)initWithProviderID:(NSString *)providerID + verificationID:(NSString *)verificationID + verificationCode:(NSString *)verificationCode { + self = [super initWithProvider:providerID]; + if (self) { + _verificationID = [verificationID copy]; + _verificationCode = [verificationCode copy]; + } + return self; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Phone/FIRPhoneAuthCredential_Internal.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Phone/FIRPhoneAuthCredential_Internal.h new file mode 100644 index 0000000..f260b89 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Phone/FIRPhoneAuthCredential_Internal.h @@ -0,0 +1,70 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + +#import + +#import "FIRPhoneAuthCredential.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @extension FIRPhoneAuthCredential + @brief Internal implementation of FIRAuthCredential for Phone Auth credentials. + */ +@interface FIRPhoneAuthCredential () + +/** @var verificationID + @brief The verification ID obtained from invoking @c verifyPhoneNumber:completion: + */ +@property(nonatomic, readonly, nonnull) NSString *verificationID; + +/** @var verificationCode + @brief The verification code provided by the user. + */ +@property(nonatomic, readonly, nonnull) NSString *verificationCode; + +/** @var temporaryProof + @brief The a temporary proof code perftaining to this credential, returned from the backend. + */ +@property(nonatomic, readonly, nonnull) NSString *temporaryProof; + +/** @var phoneNumber + @brief The a phone number pertaining to this credential, returned from the backend. + */ +@property(nonatomic, readonly, nonnull) NSString *phoneNumber; + +/** @var initWithTemporaryProof:phoneNumber: + @brief Designated Initializer. + @param providerID The provider ID associated with the phone auth credential being created. + */ +- (instancetype)initWithTemporaryProof:(NSString *)temporaryProof + phoneNumber:(NSString *)phoneNumber + providerID:(NSString *)providerID NS_DESIGNATED_INITIALIZER; + +/** @var initWithProviderID:verificationID:verificationCode: + @brief Designated Initializer. + @param providerID The provider ID associated with the phone auth credential being created. + @param verificationID The verification ID associated witht Phone Auth credential being created. + @param verificationCode The verification code associated witht Phone Auth credential being + created. + */ +- (instancetype)initWithProviderID:(NSString *)providerID + verificationID:(NSString *)verificationID + verificationCode:(NSString *)verificationCode NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Phone/FIRPhoneAuthProvider.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Phone/FIRPhoneAuthProvider.m new file mode 100644 index 0000000..e2fd990 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Phone/FIRPhoneAuthProvider.m @@ -0,0 +1,519 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRPhoneAuthProvider.h" + +#import +#import "FIRPhoneAuthCredential_Internal.h" +#import +#import "FIRAuthAPNSToken.h" +#import "FIRAuthAPNSTokenManager.h" +#import "FIRAuthAppCredential.h" +#import "FIRAuthAppCredentialManager.h" +#import "FIRAuthGlobalWorkQueue.h" +#import "FIRAuth_Internal.h" +#import "FIRAuthURLPresenter.h" +#import "FIRAuthNotificationManager.h" +#import "FIRAuthErrorUtils.h" +#import "FIRAuthBackend.h" +#import "FIRAuthSettings.h" +#import "FIRAuthWebUtils.h" +#import "FirebaseAuthVersion.h" +#import +#import "FIRGetProjectConfigRequest.h" +#import "FIRGetProjectConfigResponse.h" +#import "FIRSendVerificationCodeRequest.h" +#import "FIRSendVerificationCodeResponse.h" +#import "FIRVerifyClientRequest.h" +#import "FIRVerifyClientResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @typedef FIRReCAPTCHAURLCallBack + @brief The callback invoked at the end of the flow to fetch a reCAPTCHA URL. + @param reCAPTCHAURL The reCAPTCHA URL. + @param error The error that occurred while fetching the reCAPTCHAURL, if any. + */ +typedef void (^FIRReCAPTCHAURLCallBack)(NSURL *_Nullable reCAPTCHAURL, NSError *_Nullable error); + +/** @typedef FIRVerifyClientCallback + @brief The callback invoked at the end of a client verification flow. + @param appCredential credential that proves the identity of the app during a phone + authentication flow. + @param error The error that occurred while verifying the app, if any. + */ +typedef void (^FIRVerifyClientCallback)(FIRAuthAppCredential *_Nullable appCredential, + NSError *_Nullable error); + +/** @typedef FIRFetchAuthDomainCallback + @brief The callback invoked at the end of the flow to fetch the Auth domain. + @param authDomain The Auth domain. + @param error The error that occurred while fetching the auth domain, if any. + */ +typedef void (^FIRFetchAuthDomainCallback)(NSString *_Nullable authDomain, + NSError *_Nullable error); +/** @var kAuthDomainSuffix + @brief The suffix of the auth domain pertiaining to a given Firebase project. + */ +static NSString *const kAuthDomainSuffix = @"firebaseapp.com"; + +/** @var kauthTypeVerifyApp + @brief The auth type to be specified in the app verification request. + */ +static NSString *const kAuthTypeVerifyApp = @"verifyApp"; + +/** @var kReCAPTCHAURLStringFormat + @brief The format of the URL used to open the reCAPTCHA page during app verification. + */ +NSString *const kReCAPTCHAURLStringFormat = @"https://%@/__/auth/handler?"; + +@implementation FIRPhoneAuthProvider { + + /** @var _auth + @brief The auth instance used for verifying the phone number. + */ + FIRAuth *_auth; + + /** @var _callbackScheme + @brief The callback URL scheme used for reCAPTCHA fallback. + */ + NSString *_callbackScheme; +} + +/** @fn initWithAuth: + @brief returns an instance of @c FIRPhoneAuthProvider associated with the provided auth + instance. + @return An Instance of @c FIRPhoneAuthProvider. + */ +- (nullable instancetype)initWithAuth:(FIRAuth *)auth { + self = [super init]; + if (self) { + _auth = auth; + _callbackScheme = [[[_auth.app.options.clientID componentsSeparatedByString:@"."] + reverseObjectEnumerator].allObjects componentsJoinedByString:@"."]; + } + return self; +} + +- (void)verifyPhoneNumber:(NSString *)phoneNumber + UIDelegate:(nullable id)UIDelegate + completion:(nullable FIRVerificationResultCallback)completion { + if (![self isCallbackSchemeRegistered]) { + [NSException raise:NSInternalInconsistencyException + format:@"Please register custom URL scheme '%@' in the app's Info.plist file.", + _callbackScheme]; + } + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + FIRVerificationResultCallback callBackOnMainThread = ^(NSString *_Nullable verificationID, + NSError *_Nullable error) { + if (completion) { + dispatch_async(dispatch_get_main_queue(), ^{ + completion(verificationID, error); + }); + } + }; + [self internalVerifyPhoneNumber:phoneNumber completion:^(NSString *_Nullable verificationID, + NSError *_Nullable error) { + if (!error) { + callBackOnMainThread(verificationID, nil); + return; + } + NSError *underlyingError = error.userInfo[NSUnderlyingErrorKey]; + BOOL isInvalidAppCredential = error.code == FIRAuthErrorCodeInternalError && + underlyingError.code == FIRAuthErrorCodeInvalidAppCredential; + if (error.code != FIRAuthErrorCodeMissingAppToken && !isInvalidAppCredential) { + callBackOnMainThread(nil, error); + return; + } + NSMutableString *eventID = [[NSMutableString alloc] init]; + for (int i=0; i<10; i++) { + [eventID appendString: + [NSString stringWithFormat:@"%c", 'a' + arc4random_uniform('z' - 'a' + 1)]]; + } + [self reCAPTCHAURLWithEventID:eventID completion:^(NSURL *_Nullable reCAPTCHAURL, + NSError *_Nullable error) { + if (error) { + callBackOnMainThread(nil, error); + return; + } + FIRAuthURLCallbackMatcher callbackMatcher = ^BOOL(NSURL *_Nullable callbackURL) { + return [self isVerifyAppURL:callbackURL eventID:eventID]; + }; + [self->_auth.authURLPresenter presentURL:reCAPTCHAURL + UIDelegate:UIDelegate + callbackMatcher:callbackMatcher + completion:^(NSURL *_Nullable callbackURL, + NSError *_Nullable error) { + if (error) { + callBackOnMainThread(nil, error); + return; + } + NSError *reCAPTCHAError; + NSString *reCAPTCHAToken = [self reCAPTCHATokenForURL:callbackURL error:&reCAPTCHAError]; + if (!reCAPTCHAToken) { + callBackOnMainThread(nil, reCAPTCHAError); + return; + } + FIRSendVerificationCodeRequest *request = + [[FIRSendVerificationCodeRequest alloc] initWithPhoneNumber:phoneNumber + appCredential:nil + reCAPTCHAToken:reCAPTCHAToken + requestConfiguration: + self->_auth.requestConfiguration]; + [FIRAuthBackend sendVerificationCode:request + callback:^(FIRSendVerificationCodeResponse + *_Nullable response, NSError *_Nullable error) { + if (error) { + callBackOnMainThread(nil, error); + return; + } + callBackOnMainThread(response.verificationID, nil); + }]; + }]; + }]; + }]; + }); +} + +- (FIRPhoneAuthCredential *)credentialWithVerificationID:(NSString *)verificationID + verificationCode:(NSString *)verificationCode { + return [[FIRPhoneAuthCredential alloc] initWithProviderID:FIRPhoneAuthProviderID + verificationID:verificationID + verificationCode:verificationCode]; +} + ++ (instancetype)provider { + return [[self alloc]initWithAuth:[FIRAuth auth]]; +} + ++ (instancetype)providerWithAuth:(FIRAuth *)auth { + return [[self alloc]initWithAuth:auth]; +} + +#pragma mark - Internal Methods + +/** @fn isCallbackSchemeRegistered + @brief Checks whether or not the expected callback scheme has been registered by the app. + @remarks This method is thread-safe. + */ +- (BOOL)isCallbackSchemeRegistered { + NSString *expectedCustomScheme = [_callbackScheme lowercaseString]; + NSArray *urlTypes = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleURLTypes"]; + for (NSDictionary *urlType in urlTypes) { + NSArray *urlTypeSchemes = urlType[@"CFBundleURLSchemes"]; + for (NSString *urlTypeScheme in urlTypeSchemes) { + if ([urlTypeScheme.lowercaseString isEqualToString:expectedCustomScheme]) { + return YES; + } + } + } + return NO; +} + +/** @fn reCAPTCHATokenForURL:error: + @brief Parses the reCAPTCHA URL and returns. + @param URL The url to be parsed for a reCAPTCHA token. + @param error The error that occurred if any. + @return The reCAPTCHA token if successful. + */ +- (NSString *)reCAPTCHATokenForURL:(NSURL *)URL error:(NSError **)error { + NSURLComponents *actualURLComponents = [NSURLComponents componentsWithURL:URL resolvingAgainstBaseURL:NO]; + NSArray *queryItems = [actualURLComponents queryItems]; + NSString *deepLinkURL = [FIRAuthWebUtils queryItemValue:@"deep_link_id" from:queryItems]; + NSData *errorData; + if (deepLinkURL) { + actualURLComponents = [NSURLComponents componentsWithString:deepLinkURL]; + queryItems = [actualURLComponents queryItems]; + NSString *recaptchaToken = [FIRAuthWebUtils queryItemValue:@"recaptchaToken" from:queryItems]; + if (recaptchaToken) { + return recaptchaToken; + } + NSString *firebaseError = [FIRAuthWebUtils queryItemValue:@"firebaseError" from:queryItems]; + errorData = [firebaseError dataUsingEncoding:NSUTF8StringEncoding]; + } else { + errorData = nil; + } + NSError *jsonError; + NSDictionary *errorDict = [NSJSONSerialization JSONObjectWithData:errorData + options:0 + error:&jsonError]; + if (jsonError) { + *error = [FIRAuthErrorUtils JSONSerializationErrorWithUnderlyingError:jsonError]; + return nil; + } + *error = [FIRAuthErrorUtils URLResponseErrorWithCode:errorDict[@"code"] + message:errorDict[@"message"]]; + if (!*error) { + NSString *reason; + if(errorDict[@"code"] && errorDict[@"message"]) { + reason = [NSString stringWithFormat:@"[%@] - %@",errorDict[@"code"], errorDict[@"message"]]; + } else { + reason = [NSString stringWithFormat:@"An unknown error occurred with the following " + "response: %@", deepLinkURL]; + } + *error = [FIRAuthErrorUtils appVerificationUserInteractionFailureWithReason:reason]; + } + return nil; +} + +/** @fn isVerifyAppURL: + @brief Parses a URL into all available query items. + @param URL The url to be checked against the authType string. + @return Whether or not the URL matches authType. + */ +- (BOOL)isVerifyAppURL:(nullable NSURL *)URL eventID:(NSString *)eventID { + if (!URL) { + return NO; + } + NSURLComponents *actualURLComponents = + [NSURLComponents componentsWithURL:URL resolvingAgainstBaseURL:NO]; + actualURLComponents.query = nil; + actualURLComponents.fragment = nil; + + NSURLComponents *expectedURLComponents = [NSURLComponents new]; + expectedURLComponents.scheme = _callbackScheme; + expectedURLComponents.host = @"firebaseauth"; + expectedURLComponents.path = @"/link"; + + if (!([[expectedURLComponents URL] isEqual:[actualURLComponents URL]])) { + return NO; + } + actualURLComponents = [NSURLComponents componentsWithURL:URL resolvingAgainstBaseURL:NO]; + NSArray *queryItems = [actualURLComponents queryItems]; + NSString *deepLinkURL = [FIRAuthWebUtils queryItemValue:@"deep_link_id" from:queryItems]; + if (deepLinkURL == nil) { + return NO; + } + NSURLComponents *deepLinkURLComponents = [NSURLComponents componentsWithString:deepLinkURL]; + NSArray *deepLinkQueryItems = [deepLinkURLComponents queryItems]; + + NSString *deepLinkAuthType = [FIRAuthWebUtils queryItemValue:@"authType" from:deepLinkQueryItems]; + NSString *deepLinkEventID = [FIRAuthWebUtils queryItemValue:@"eventId" from:deepLinkQueryItems]; + if ([deepLinkAuthType isEqualToString:kAuthTypeVerifyApp] && + [deepLinkEventID isEqualToString:eventID]) { + return YES; + } + return NO; +} + +/** @fn internalVerifyPhoneNumber:completion: + @brief Starts the phone number authentication flow by sending a verifcation code to the + specified phone number. + @param phoneNumber The phone number to be verified. + @param completion The callback to be invoked when the verification flow is finished. + */ + +- (void)internalVerifyPhoneNumber:(NSString *)phoneNumber + completion:(nullable FIRVerificationResultCallback)completion { + if (!phoneNumber.length) { + completion(nil, [FIRAuthErrorUtils missingPhoneNumberErrorWithMessage:nil]); + return; + } + [_auth.notificationManager checkNotificationForwardingWithCallback: + ^(BOOL isNotificationBeingForwarded) { + if (!isNotificationBeingForwarded) { + completion(nil, [FIRAuthErrorUtils notificationNotForwardedError]); + return; + } + FIRVerificationResultCallback callback = ^(NSString *_Nullable verificationID, + NSError *_Nullable error) { + if (completion) { + completion(verificationID, error); + } + }; + [self verifyClientAndSendVerificationCodeToPhoneNumber:phoneNumber + retryOnInvalidAppCredential:YES + callback:callback]; + }]; +} + +/** @fn verifyClientAndSendVerificationCodeToPhoneNumber:retryOnInvalidAppCredential:callback: + @brief Starts the flow to verify the client via silent push notification. + @param retryOnInvalidAppCredential Whether of not the flow should be retried if an + FIRAuthErrorCodeInvalidAppCredential error is returned from the backend. + @param phoneNumber The phone number to be verified. + @param callback The callback to be invoked on the global work queue when the flow is + finished. + */ +- (void)verifyClientAndSendVerificationCodeToPhoneNumber:(NSString *)phoneNumber + retryOnInvalidAppCredential:(BOOL)retryOnInvalidAppCredential + callback:(FIRVerificationResultCallback)callback { + if (_auth.settings.isAppVerificationDisabledForTesting) { + FIRSendVerificationCodeRequest *request = + [[FIRSendVerificationCodeRequest alloc] initWithPhoneNumber:phoneNumber + appCredential:nil + reCAPTCHAToken:nil + requestConfiguration: + _auth.requestConfiguration]; + [FIRAuthBackend sendVerificationCode:request + callback:^(FIRSendVerificationCodeResponse *_Nullable response, + NSError *_Nullable error) { + callback(response.verificationID, error); + }]; + return; + } + [self verifyClientWithCompletion:^(FIRAuthAppCredential *_Nullable appCredential, + NSError *_Nullable error) { + if (error) { + callback(nil, error); + return; + } + FIRSendVerificationCodeRequest *request = + [[FIRSendVerificationCodeRequest alloc] initWithPhoneNumber:phoneNumber + appCredential:appCredential + reCAPTCHAToken:nil + requestConfiguration: + self->_auth.requestConfiguration]; + [FIRAuthBackend sendVerificationCode:request + callback:^(FIRSendVerificationCodeResponse *_Nullable response, + NSError *_Nullable error) { + if (error) { + if (error.code == FIRAuthErrorCodeInvalidAppCredential) { + if (retryOnInvalidAppCredential) { + [self->_auth.appCredentialManager clearCredential]; + [self verifyClientAndSendVerificationCodeToPhoneNumber:phoneNumber + retryOnInvalidAppCredential:NO + callback:callback]; + return; + } + callback(nil, [FIRAuthErrorUtils unexpectedResponseWithDeserializedResponse:nil + underlyingError:error]); + return; + } + callback(nil, error); + return; + } + callback(response.verificationID, nil); + }]; + }]; +} + +/** @fn verifyClientWithCompletion:completion: + @brief Continues the flow to verify the client via silent push notification. + @param completion The callback to be invoked when the client verification flow is finished. + */ +- (void)verifyClientWithCompletion:(FIRVerifyClientCallback)completion { + if (_auth.appCredentialManager.credential) { + completion(_auth.appCredentialManager.credential, nil); + return; + } + [_auth.tokenManager getTokenWithCallback:^(FIRAuthAPNSToken *_Nullable token, + NSError *_Nullable error) { + if (!token) { + completion(nil, [FIRAuthErrorUtils missingAppTokenErrorWithUnderlyingError:error]); + return; + } + FIRVerifyClientRequest *request = + [[FIRVerifyClientRequest alloc] initWithAppToken:token.string + isSandbox:token.type == FIRAuthAPNSTokenTypeSandbox + requestConfiguration:self->_auth.requestConfiguration]; + [FIRAuthBackend verifyClient:request callback:^(FIRVerifyClientResponse *_Nullable response, + NSError *_Nullable error) { + if (error) { + completion(nil, error); + return; + } + NSTimeInterval timeout = [response.suggestedTimeOutDate timeIntervalSinceNow]; + [self->_auth.appCredentialManager + didStartVerificationWithReceipt:response.receipt + timeout:timeout + callback:^(FIRAuthAppCredential *credential) { + if (!credential.secret) { + FIRLogWarning(kFIRLoggerAuth, @"I-AUT000014", + @"Failed to receive remote notification to verify app identity within " + @"%.0f second(s)", timeout); + } + completion(credential, nil); + }]; + }]; + }]; +} + +/** @fn reCAPTCHAURLWithEventID:completion: + @brief Constructs a URL used for opening a reCAPTCHA app verification flow using a given event + ID. + @param eventID The event ID used for this purpose. + @param completion The callback invoked after the URL has been constructed or an error + has been encountered. + */ +- (void)reCAPTCHAURLWithEventID:(NSString *)eventID completion:(FIRReCAPTCHAURLCallBack)completion { + [self fetchAuthDomainWithCompletion:^(NSString *_Nullable authDomain, + NSError *_Nullable error) { + if (error) { + completion(nil, error); + return; + } + NSString *bundleID = [NSBundle mainBundle].bundleIdentifier; + NSString *clientID = self->_auth.app.options.clientID; + NSString *apiKey = self->_auth.requestConfiguration.APIKey; + NSMutableArray *queryItems = [@[ + [NSURLQueryItem queryItemWithName:@"apiKey" value:apiKey], + [NSURLQueryItem queryItemWithName:@"authType" value:kAuthTypeVerifyApp], + [NSURLQueryItem queryItemWithName:@"ibi" value:bundleID ?: @""], + [NSURLQueryItem queryItemWithName:@"clientId" value:clientID], + [NSURLQueryItem queryItemWithName:@"v" value:[FIRAuthBackend authUserAgent]], + [NSURLQueryItem queryItemWithName:@"eventId" value:eventID] + ] mutableCopy + ]; + + if (self->_auth.requestConfiguration.languageCode) { + [queryItems addObject:[NSURLQueryItem queryItemWithName:@"hl"value: + self->_auth.requestConfiguration.languageCode]]; + } + NSURLComponents *components = [[NSURLComponents alloc] initWithString: + [NSString stringWithFormat:kReCAPTCHAURLStringFormat, authDomain]]; + [components setQueryItems:queryItems]; + completion([components URL], nil); + }]; +} + +/** @fn fetchAuthDomainWithCompletion:completion: + @brief Fetches the auth domain associated with the Firebase Project. + @param completion The callback invoked after the auth domain has been constructed or an error + has been encountered. + */ +- (void)fetchAuthDomainWithCompletion:(FIRFetchAuthDomainCallback)completion { + FIRGetProjectConfigRequest *request = + [[FIRGetProjectConfigRequest alloc] initWithRequestConfiguration:_auth.requestConfiguration]; + + [FIRAuthBackend getProjectConfig:request + callback:^(FIRGetProjectConfigResponse *_Nullable response, + NSError *_Nullable error) { + if (error) { + completion(nil, error); + return; + } + NSString *authDomain; + for (NSString *domain in response.authorizedDomains) { + NSInteger index = domain.length - kAuthDomainSuffix.length; + if (index >= 2) { + if ([domain hasSuffix:kAuthDomainSuffix] && domain.length >= kAuthDomainSuffix.length + 2) { + authDomain = domain; + break; + } + } + } + if (!authDomain.length) { + completion(nil, [FIRAuthErrorUtils unexpectedErrorResponseWithDeserializedResponse:response]); + return; + } + completion(authDomain, nil); + }]; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Twitter/FIRTwitterAuthCredential.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Twitter/FIRTwitterAuthCredential.h new file mode 100644 index 0000000..0ff44fa --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Twitter/FIRTwitterAuthCredential.h @@ -0,0 +1,48 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthCredential_Internal.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRTwitterAuthCredential + @brief Internal implementation of FIRAuthCredential for Twitter credentials. + */ +@interface FIRTwitterAuthCredential : FIRAuthCredential + +/** @property token + @brief The Twitter OAuth token. + */ +@property(nonatomic, readonly) NSString *token; + +/** @property secret + @brief The Twitter OAuth secret. + */ +@property(nonatomic, readonly) NSString *secret; + +/** @fn initWithToken:secret: + @brief Designated initializer. + @param token The Twitter OAuth token. + @param secret The Twitter OAuth secret. + */ +- (nullable instancetype)initWithToken:(NSString *)token secret:(NSString *)secret + NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Twitter/FIRTwitterAuthCredential.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Twitter/FIRTwitterAuthCredential.m new file mode 100644 index 0000000..6772d6f --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Twitter/FIRTwitterAuthCredential.m @@ -0,0 +1,51 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRTwitterAuthCredential.h" + +#import "FIRTwitterAuthProvider.h" +#import "FIRAuthExceptionUtils.h" +#import "FIRVerifyAssertionRequest.h" + +@interface FIRTwitterAuthCredential () + +- (nullable instancetype)initWithProvider:(NSString *)provider NS_UNAVAILABLE; + +@end + +@implementation FIRTwitterAuthCredential + +- (nullable instancetype)initWithProvider:(NSString *)provider { + [FIRAuthExceptionUtils raiseMethodNotImplementedExceptionWithReason: + @"Please call the designated initializer."]; + return nil; +} + +- (nullable instancetype)initWithToken:(NSString *)token secret:(NSString *)secret { + self = [super initWithProvider:FIRTwitterAuthProviderID]; + if (self) { + _token = [token copy]; + _secret = [secret copy]; + } + return self; +} + +- (void)prepareVerifyAssertionRequest:(FIRVerifyAssertionRequest *)request { + request.providerAccessToken = _token; + request.providerOAuthTokenSecret = _secret; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Twitter/FIRTwitterAuthProvider.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Twitter/FIRTwitterAuthProvider.m new file mode 100644 index 0000000..5d738ce --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/AuthProviders/Twitter/FIRTwitterAuthProvider.m @@ -0,0 +1,36 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRTwitterAuthProvider.h" + +#import "FIRTwitterAuthCredential.h" +#import "FIRAuthExceptionUtils.h" + +// FIRTwitterAuthProviderID is defined in FIRAuthProvider.m. + +@implementation FIRTwitterAuthProvider + +- (instancetype)init { + [FIRAuthExceptionUtils raiseMethodNotImplementedExceptionWithReason: + @"This class is not meant to be initialized."]; + return nil; +} + ++ (FIRAuthCredential *)credentialWithToken:(NSString *)token secret:(NSString *)secret { + return [[FIRTwitterAuthCredential alloc] initWithToken:token secret:secret]; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRActionCodeSettings.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRActionCodeSettings.m new file mode 100644 index 0000000..02807ff --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRActionCodeSettings.m @@ -0,0 +1,45 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRActionCodeSettings.h" + +NS_ASSUME_NONNULL_BEGIN + +@implementation FIRActionCodeSettings + +- (instancetype)init { + self = [super init]; + if (self) { + _iOSBundleID = [NSBundle mainBundle].bundleIdentifier; + } + return self; +} + +- (void)setIOSBundleID:(NSString *)iOSBundleID { + _iOSBundleID = [iOSBundleID copy]; + } + +- (void)setAndroidPackageName:(NSString *)androidPackageName + installIfNotAvailable:(BOOL)installIfNotAvailable + minimumVersion:(nullable NSString *)minimumVersion { + _androidPackageName = [androidPackageName copy]; + _androidInstallIfNotAvailable = installIfNotAvailable; + _androidMinimumVersion = [minimumVersion copy]; + } + + @end + + NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAdditionalUserInfo.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAdditionalUserInfo.m new file mode 100644 index 0000000..c6ba37c --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAdditionalUserInfo.m @@ -0,0 +1,98 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAdditionalUserInfo_Internal.h" + +#import "FIRVerifyAssertionResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +@implementation FIRAdditionalUserInfo + +/** @var kProviderIDCodingKey + @brief The key used to encode the providerID property for NSSecureCoding. + */ +static NSString *const kProviderIDCodingKey = @"providerID"; + +/** @var kProfileCodingKey + @brief The key used to encode the profile property for NSSecureCoding. + */ +static NSString *const kProfileCodingKey = @"profile"; + +/** @var kUsernameCodingKey + @brief The key used to encode the username property for NSSecureCoding. + */ +static NSString *const kUsernameCodingKey = @"username"; + +/** @var kNewUserKey + @brief The key used to encode the newUser property for NSSecureCoding. + */ +static NSString *const kNewUserKey = @"newUser"; + ++ (nullable instancetype)userInfoWithVerifyAssertionResponse: + (FIRVerifyAssertionResponse *)verifyAssertionResponse { + return [[self alloc] initWithProviderID:verifyAssertionResponse.providerID + profile:verifyAssertionResponse.profile + username:verifyAssertionResponse.username + isNewUser:verifyAssertionResponse.isNewUser]; +} + +- (nullable instancetype)initWithProviderID:(nullable NSString *)providerID + profile:(nullable NSDictionary *)profile + username:(nullable NSString *)username + isNewUser:(BOOL)isNewUser { + self = [super init]; + if (self) { + _providerID = [providerID copy]; + if (profile) { + _profile = [[NSDictionary alloc] initWithDictionary:profile copyItems:YES]; + } + _username = [username copy]; + _newUser = isNewUser; + } + return self; +} + +#pragma mark - NSSecureCoding + ++ (BOOL)supportsSecureCoding { + return YES; +} + +- (nullable instancetype)initWithCoder:(NSCoder *)aDecoder { + NSString *providerID = + [aDecoder decodeObjectOfClass:[NSString class] forKey:kProviderIDCodingKey]; + NSDictionary *profile = + [aDecoder decodeObjectOfClass:[NSDictionary class] forKey:kProfileCodingKey]; + NSString *username = [aDecoder decodeObjectOfClass:[NSString class] forKey:kUsernameCodingKey]; + NSNumber *isNewUser = [aDecoder decodeObjectOfClass:[NSNumber class] forKey:kNewUserKey]; + + return [self initWithProviderID:providerID + profile:profile + username:username + isNewUser:isNewUser.boolValue]; +} + +- (void)encodeWithCoder:(NSCoder *)aCoder { + [aCoder encodeObject:_providerID forKey:kProviderIDCodingKey]; + [aCoder encodeObject:_profile forKey:kProfileCodingKey]; + [aCoder encodeObject:_username forKey:kUsernameCodingKey]; + [aCoder encodeObject:[NSNumber numberWithBool:_newUser] forKey:kNewUserKey]; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAdditionalUserInfo_Internal.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAdditionalUserInfo_Internal.h new file mode 100644 index 0000000..c8e345d --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAdditionalUserInfo_Internal.h @@ -0,0 +1,46 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAdditionalUserInfo.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRAdditionalUserInfo () + +/** @fn userInfoWithVerifyAssertionResponse: + @brief A convenience factory method for constructing a @c FIRAdditionalUserInfo instance from + data returned by the verifyAssertion endpoint. + @param verifyAssertionResponse Data returned by the verifyAssertion endpoint. + @return A new instance of @c FIRAdditionalUserInfo using data from the verifyAssertion endpoint. + */ ++ (nullable instancetype)userInfoWithVerifyAssertionResponse: + (FIRVerifyAssertionResponse *)verifyAssertionResponse; + +/** @fn initWithProviderID:profile:username: + @brief Designated initializer. + @param providerID The provider identifier. + @param profile Dictionary containing the additional IdP specific information. + @param username The name of the user. + @param isNewUser Indicates whether or not the current user was signed in for the first time. + */ +- (nullable instancetype)initWithProviderID:(nullable NSString *)providerID + profile:(nullable NSDictionary *)profile + username:(nullable NSString *)username + isNewUser:(BOOL)isNewUser NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuth.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuth.m new file mode 100644 index 0000000..8235baf --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuth.m @@ -0,0 +1,1919 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuth_Internal.h" + +#if __has_include() +#import +#endif + +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import + +#import "AuthProviders/EmailPassword/FIREmailPasswordAuthCredential.h" +#import "FIRAdditionalUserInfo_Internal.h" +#import "FIRAuthCredential_Internal.h" +#import "FIRAuthDataResult_Internal.h" +#import "FIRAuthDispatcher.h" +#import "FIRAuthErrorUtils.h" +#import "FIRAuthExceptionUtils.h" +#import "FIRAuthGlobalWorkQueue.h" +#import "FIRAuthKeychain.h" +#import "FIRAuthOperationType.h" +#import "FIRAuthSettings.h" +#import "FIRUser_Internal.h" +#import "FirebaseAuth.h" +#import "FIRAuthBackend.h" +#import "FIRAuthRequestConfiguration.h" +#import "FIRCreateAuthURIRequest.h" +#import "FIRCreateAuthURIResponse.h" +#import "FIREmailLinkSignInRequest.h" +#import "FIREmailLinkSignInResponse.h" +#import "FIRGetOOBConfirmationCodeRequest.h" +#import "FIRGetOOBConfirmationCodeResponse.h" +#import "FIRResetPasswordRequest.h" +#import "FIRResetPasswordResponse.h" +#import "FIRSendVerificationCodeRequest.h" +#import "FIRSendVerificationCodeResponse.h" +#import "FIRSetAccountInfoRequest.h" +#import "FIRSetAccountInfoResponse.h" +#import "FIRSignUpNewUserRequest.h" +#import "FIRSignUpNewUserResponse.h" +#import "FIRVerifyAssertionRequest.h" +#import "FIRVerifyAssertionResponse.h" +#import "FIRVerifyCustomTokenRequest.h" +#import "FIRVerifyCustomTokenResponse.h" +#import "FIRVerifyPasswordRequest.h" +#import "FIRVerifyPasswordResponse.h" +#import "FIRVerifyPhoneNumberRequest.h" +#import "FIRVerifyPhoneNumberResponse.h" + +#if TARGET_OS_IOS +#import "FIRAuthAPNSToken.h" +#import "FIRAuthAPNSTokenManager.h" +#import "FIRAuthAppCredentialManager.h" +#import "FIRAuthAppDelegateProxy.h" +#import "AuthProviders/Phone/FIRPhoneAuthCredential_Internal.h" +#import "FIRAuthNotificationManager.h" +#import "FIRAuthURLPresenter.h" +#endif + +#pragma mark - Constants + +#if defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0 +const NSNotificationName FIRAuthStateDidChangeNotification = @"FIRAuthStateDidChangeNotification"; +#else +NSString *const FIRAuthStateDidChangeNotification = @"FIRAuthStateDidChangeNotification"; +#endif // defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0 + +/** @var kMaxWaitTimeForBackoff + @brief The maximum wait time before attempting to retry auto refreshing tokens after a failed + attempt. + @remarks This is the upper limit (in seconds) of the exponential backoff used for retrying + token refresh. + */ +static NSTimeInterval kMaxWaitTimeForBackoff = 16 * 60; + +/** @var kTokenRefreshHeadStart + @brief The amount of time before the token expires that proactive refresh should be attempted. + */ +NSTimeInterval kTokenRefreshHeadStart = 5 * 60; + +/** @var kUserKey + @brief Key of user stored in the keychain. Prefixed with a Firebase app name. + */ +static NSString *const kUserKey = @"%@_firebase_user"; + +/** @var kMissingEmailInvalidParameterExceptionReason + @brief The reason for @c invalidParameterException when the email used to initiate password + reset is nil. + */ +static NSString *const kMissingEmailInvalidParameterExceptionReason = + @"The email used to initiate password reset cannot be nil."; + +/** @var kHandleCodeInAppFalseExceptionReason + @brief The reason for @c invalidParameterException when the handleCodeInApp parameter is false + on the ActionCodeSettings object used to send the link for Email-link Authentication. + */ +static NSString *const kHandleCodeInAppFalseExceptionReason = + @"You must set handleCodeInApp in your ActionCodeSettings to true for Email-link " + "Authentication."; + +static NSString *const kInvalidEmailSignInLinkExceptionMessage = + @"The link provided is not valid for email/link sign-in. Please check the link by calling " + "isSignInWithEmailLink:link: on Auth before attempting to use it for email/link sign-in."; + +/** @var kPasswordResetRequestType + @brief The action code type value for resetting password in the check action code response. + */ +static NSString *const kPasswordResetRequestType = @"PASSWORD_RESET"; + +/** @var kVerifyEmailRequestType + @brief The action code type value for verifying email in the check action code response. + */ +static NSString *const kVerifyEmailRequestType = @"VERIFY_EMAIL"; + +/** @var kRecoverEmailRequestType + @brief The action code type value for recovering email in the check action code response. + */ +static NSString *const kRecoverEmailRequestType = @"RECOVER_EMAIL"; + +/** @var kEmailLinkSignInRequestType + @brief The action code type value for an email sign-in link in the check action code response. +*/ +static NSString *const kEmailLinkSignInRequestType = @"EMAIL_SIGNIN"; + +/** @var kMissingPasswordReason + @brief The reason why the @c FIRAuthErrorCodeWeakPassword error is thrown. + @remarks This error message will be localized in the future. + */ +static NSString *const kMissingPasswordReason = @"Missing Password"; + +/** @var gKeychainServiceNameForAppName + @brief A map from Firebase app name to keychain service names. + @remarks This map is needed for looking up the keychain service name after the FIRApp instance + is deleted, to remove the associated keychain item. Accessing should occur within a + @syncronized([FIRAuth class]) context. + */ +static NSMutableDictionary *gKeychainServiceNameForAppName; + +#pragma mark - FIRActionCodeInfo + +@implementation FIRActionCodeInfo { + /** @var _email + @brief The email address to which the code was sent. The new email address in the case of + FIRActionCodeOperationRecoverEmail. + */ + NSString *_email; + + /** @var _fromEmail + @brief The current email address in the case of FIRActionCodeOperationRecoverEmail. + */ + NSString *_fromEmail; +} + +- (NSString *)dataForKey:(FIRActionDataKey)key{ + switch (key) { + case FIRActionCodeEmailKey: + return _email; + case FIRActionCodeFromEmailKey: + return _fromEmail; + } +} + +- (instancetype)initWithOperation:(FIRActionCodeOperation)operation + email:(NSString *)email + newEmail:(nullable NSString *)newEmail { + self = [super init]; + if (self) { + _operation = operation; + if (newEmail) { + _email = [newEmail copy]; + _fromEmail = [email copy]; + } else { + _email = [email copy]; + } + } + return self; +} + +/** @fn actionCodeOperationForRequestType: + @brief Returns the corresponding operation type per provided request type string. + @param requestType Request type returned in in the server response. + @return The corresponding FIRActionCodeOperation for the supplied request type. + */ ++ (FIRActionCodeOperation)actionCodeOperationForRequestType:(NSString *)requestType { + if ([requestType isEqualToString:kPasswordResetRequestType]) { + return FIRActionCodeOperationPasswordReset; + } + if ([requestType isEqualToString:kVerifyEmailRequestType]) { + return FIRActionCodeOperationVerifyEmail; + } + if ([requestType isEqualToString:kRecoverEmailRequestType]) { + return FIRActionCodeOperationRecoverEmail; + } + if ([requestType isEqualToString:kEmailLinkSignInRequestType]) { + return FIRActionCodeOperationEmailLink; + } + return FIRActionCodeOperationUnknown; +} + +@end + +#pragma mark - FIRAuth + +#if TARGET_OS_IOS +@interface FIRAuth () +#else +@interface FIRAuth () +#endif + +/** @property firebaseAppId + @brief The Firebase app ID. + */ +@property(nonatomic, copy, readonly) NSString *firebaseAppId; + +/** @property additionalFrameworkMarker + @brief Additional framework marker that will be added as part of the header of every request. + */ +@property(nonatomic, copy, nullable) NSString *additionalFrameworkMarker; + +/** @fn initWithApp: + @brief Creates a @c FIRAuth instance associated with the provided @c FIRApp instance. + @param app The application to associate the auth instance with. + */ +- (instancetype)initWithApp:(FIRApp *)app; + +@end + +@implementation FIRAuth { + /** @var _currentUser + @brief The current user. + */ + FIRUser *_currentUser; + + /** @var _firebaseAppName + @brief The Firebase app name. + */ + NSString *_firebaseAppName; + + /** @var _listenerHandles + @brief Handles returned from @c NSNotificationCenter for blocks which are "auth state did + change" notification listeners. + @remarks Mutations should occur within a @syncronized(self) context. + */ + NSMutableArray *_listenerHandles; + + /** @var _keychain + @brief The keychain service. + */ + FIRAuthKeychain *_keychain; + + /** @var _lastNotifiedUserToken + @brief The user access (ID) token used last time for posting auth state changed notification. + */ + NSString *_lastNotifiedUserToken; + + /** @var _autoRefreshTokens + @brief This flag denotes whether or not tokens should be automatically refreshed. + @remarks Will only be set to @YES if the another Firebase service is included (additionally to + Firebase Auth). + */ + BOOL _autoRefreshTokens; + + /** @var _autoRefreshScheduled + @brief Whether or not token auto-refresh is currently scheduled. + */ + BOOL _autoRefreshScheduled; + + /** @var _isAppInBackground + @brief A flag that is set to YES if the app is put in the background and no when the app is + returned to the foreground. + */ + BOOL _isAppInBackground; + + /** @var _applicationDidBecomeActiveObserver + @brief An opaque object to act as the observer for UIApplicationDidBecomeActiveNotification. + */ + id _applicationDidBecomeActiveObserver; + + /** @var _applicationDidBecomeActiveObserver + @brief An opaque object to act as the observer for + UIApplicationDidEnterBackgroundNotification. + */ + id _applicationDidEnterBackgroundObserver; +} + ++ (void)load { + [FIRComponentContainer registerAsComponentRegistrant:self]; + [FIRApp registerAsConfigurable:self]; +} + ++ (void)initialize { + gKeychainServiceNameForAppName = [[NSMutableDictionary alloc] init]; +} + ++ (FIRAuth *)auth { + FIRApp *defaultApp = [FIRApp defaultApp]; + if (!defaultApp) { + [NSException raise:NSInternalInconsistencyException + format:@"The default FIRApp instance must be configured before the default FIRAuth" + @"instance can be initialized. One way to ensure that is to call " + @"`[FIRApp configure];` (`FirebaseApp.configure()` in Swift) in the App " + @"Delegate's `application:didFinishLaunchingWithOptions:` " + @"(`application(_:didFinishLaunchingWithOptions:)` in Swift)."]; + } + return [self authWithApp:defaultApp]; +} + ++ (FIRAuth *)authWithApp:(FIRApp *)app { + // Get the instance of Auth from the container, which will create or return the cached instance + // associated with this app. + id auth = FIR_COMPONENT(FIRAuthInterop, app.container); + return (FIRAuth *)auth; +} + +- (instancetype)initWithApp:(FIRApp *)app { + [FIRAuth setKeychainServiceNameForApp:app]; + self = [self initWithAPIKey:app.options.APIKey appName:app.name]; + if (self) { + _app = app; + __weak FIRAuth *weakSelf = self; + + // TODO: Remove this block once Firestore, Database, and Storage move to the new interop API. + app.getTokenImplementation = ^(BOOL forceRefresh, FIRTokenCallback callback) { + // In the meantime, redirect call to the interop method that provides this functionality. + __weak FIRAuth *weakSelf = self; + [weakSelf getTokenForcingRefresh:forceRefresh withCallback:callback]; + }; + + // TODO: Remove this block once Firestore, Database, and Storage move to the new interop API. + app.getUIDImplementation = ^NSString *_Nullable() { + __block NSString *uid; + dispatch_sync(FIRAuthGlobalWorkQueue(), ^{ + uid = [weakSelf getUserID]; + }); + return uid; + }; + #if TARGET_OS_IOS + _authURLPresenter = [[FIRAuthURLPresenter alloc] init]; + #endif + } + return self; +} + +- (instancetype)initWithAPIKey:(NSString *)APIKey appName:(NSString *)appName { + self = [super init]; + if (self) { + _listenerHandles = [NSMutableArray array]; + _requestConfiguration = [[FIRAuthRequestConfiguration alloc] initWithAPIKey:APIKey]; + _settings = [[FIRAuthSettings alloc] init]; + _firebaseAppName = [appName copy]; + #if TARGET_OS_IOS + + static Class applicationClass = nil; + // iOS App extensions should not call [UIApplication sharedApplication], even if UIApplication + // responds to it. + if (![GULAppEnvironmentUtil isAppExtension]) { + Class cls = NSClassFromString(@"UIApplication"); + if (cls && [cls respondsToSelector:NSSelectorFromString(@"sharedApplication")]) { + applicationClass = cls; + } + } + UIApplication *application = [applicationClass sharedApplication]; + + // Initialize the shared FIRAuthAppDelegateProxy instance in the main thread if not already. + [FIRAuthAppDelegateProxy sharedInstance]; + #endif + + // Continue with the rest of initialization in the work thread. + __weak FIRAuth *weakSelf = self; + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + // Load current user from Keychain. + FIRAuth *strongSelf = weakSelf; + if (!strongSelf) { + return; + } + NSString *keychainServiceName = + [FIRAuth keychainServiceNameForAppName:strongSelf->_firebaseAppName]; + if (keychainServiceName) { + strongSelf->_keychain = [[FIRAuthKeychain alloc] initWithService:keychainServiceName]; + } + FIRUser *user; + NSError *error; + if ([strongSelf getUser:&user error:&error]) { + [strongSelf updateCurrentUser:user byForce:NO savingToDisk:NO error:&error]; + self->_lastNotifiedUserToken = user.rawAccessToken; + } else { + FIRLogError(kFIRLoggerAuth, @"I-AUT000001", + @"Error loading saved user when starting up: %@", error); + } + + #if TARGET_OS_IOS + // Initialize for phone number auth. + strongSelf->_tokenManager = + [[FIRAuthAPNSTokenManager alloc] initWithApplication:application]; + + strongSelf->_appCredentialManager = + [[FIRAuthAppCredentialManager alloc] initWithKeychain:strongSelf->_keychain]; + + strongSelf->_notificationManager = [[FIRAuthNotificationManager alloc] + initWithApplication:application + appCredentialManager:strongSelf->_appCredentialManager]; + + [[FIRAuthAppDelegateProxy sharedInstance] addHandler:strongSelf]; + #endif + }); + } + return self; +} + +- (void)dealloc { + @synchronized (self) { + NSNotificationCenter *defaultCenter = [NSNotificationCenter defaultCenter]; + while (_listenerHandles.count != 0) { + FIRAuthStateDidChangeListenerHandle handleToRemove = _listenerHandles.lastObject; + [defaultCenter removeObserver:handleToRemove]; + [_listenerHandles removeLastObject]; + } + + #if TARGET_OS_IOS + [defaultCenter removeObserver:_applicationDidBecomeActiveObserver + name:UIApplicationDidBecomeActiveNotification + object:nil]; + [defaultCenter removeObserver:_applicationDidEnterBackgroundObserver + name:UIApplicationDidEnterBackgroundNotification + object:nil]; + #endif + } +} + +#pragma mark - Public API + +- (FIRUser *)currentUser { + __block FIRUser *result; + dispatch_sync(FIRAuthGlobalWorkQueue(), ^{ + result = self->_currentUser; + }); + return result; +} + +- (void)fetchProvidersForEmail:(NSString *)email + completion:(FIRProviderQueryCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + FIRCreateAuthURIRequest *request = + [[FIRCreateAuthURIRequest alloc] initWithIdentifier:email + continueURI:@"http://www.google.com/" + requestConfiguration:self->_requestConfiguration]; + [FIRAuthBackend createAuthURI:request callback:^(FIRCreateAuthURIResponse *_Nullable response, + NSError *_Nullable error) { + if (completion) { + dispatch_async(dispatch_get_main_queue(), ^{ + completion(response.allProviders, error); + }); + } + }]; + }); +} + +- (void)fetchSignInMethodsForEmail:(nonnull NSString *)email + completion:(nullable FIRSignInMethodQueryCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + FIRCreateAuthURIRequest *request = + [[FIRCreateAuthURIRequest alloc] initWithIdentifier:email + continueURI:@"http://www.google.com/" + requestConfiguration:self->_requestConfiguration]; + [FIRAuthBackend createAuthURI:request callback:^(FIRCreateAuthURIResponse *_Nullable response, + NSError *_Nullable error) { + if (completion) { + dispatch_async(dispatch_get_main_queue(), ^{ + completion(response.signinMethods, error); + }); + } + }]; + }); +} + +- (void)signInWithEmail:(NSString *)email + password:(NSString *)password + completion:(FIRAuthDataResultCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + FIRAuthDataResultCallback decoratedCallback = + [self signInFlowAuthDataResultCallbackByDecoratingCallback:completion]; + [self internalSignInAndRetrieveDataWithEmail:email + password:password + completion:^(FIRAuthDataResult *_Nullable authResult, + NSError *_Nullable error) { + decoratedCallback(authResult, error); + }]; + }); +} + +- (void)signInWithEmail:(NSString *)email + link:(NSString *)link + completion:(FIRAuthDataResultCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + FIRAuthDataResultCallback decoratedCallback = + [self signInFlowAuthDataResultCallbackByDecoratingCallback:completion]; + FIREmailPasswordAuthCredential *credential = + [[FIREmailPasswordAuthCredential alloc] initWithEmail:email link:link]; + [self internalSignInAndRetrieveDataWithCredential:credential + isReauthentication:NO + callback:^(FIRAuthDataResult *_Nullable authResult, + NSError *_Nullable error) { + decoratedCallback(authResult, error); + }]; + }); +} + +/** @fn signInWithEmail:password:callback: + @brief Signs in using an email address and password. + @param email The user's email address. + @param password The user's password. + @param callback A block which is invoked when the sign in finishes (or is cancelled.) Invoked + asynchronously on the global auth work queue in the future. + @remarks This is the internal counterpart of this method, which uses a callback that does not + update the current user. + */ +- (void)signInWithEmail:(NSString *)email + password:(NSString *)password + callback:(FIRAuthResultCallback)callback { + + FIRVerifyPasswordRequest *request = + [[FIRVerifyPasswordRequest alloc] initWithEmail:email + password:password + requestConfiguration:_requestConfiguration]; + + if (![request.password length]) { + callback(nil, [FIRAuthErrorUtils wrongPasswordErrorWithMessage:nil]); + return; + } + [FIRAuthBackend verifyPassword:request + callback:^(FIRVerifyPasswordResponse *_Nullable response, + NSError *_Nullable error) { + if (error) { + callback(nil, error); + return; + } + [self completeSignInWithAccessToken:response.IDToken + accessTokenExpirationDate:response.approximateExpirationDate + refreshToken:response.refreshToken + anonymous:NO + callback:callback]; + }]; +} + +- (void)signInAndRetrieveDataWithEmail:(NSString *)email + password:(NSString *)password + completion:(FIRAuthDataResultCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + FIRAuthDataResultCallback decoratedCallback = + [self signInFlowAuthDataResultCallbackByDecoratingCallback:completion]; + [self internalSignInAndRetrieveDataWithEmail:email + password:password + completion:decoratedCallback]; + }); +} + +/** @fn internalSignInAndRetrieveDataWithEmail:password:callback: + @brief Signs in using an email address and password. + @param email The user's email address. + @param password The user's password. + @param completion A block which is invoked when the sign in finishes (or is cancelled.) Invoked + asynchronously on the global auth work queue in the future. + @remarks This is the internal counterpart of this method, which uses a callback that does not + update the current user. + */ +- (void)internalSignInAndRetrieveDataWithEmail:(NSString *)email + password:(NSString *)password + completion:(FIRAuthDataResultCallback)completion { + FIREmailPasswordAuthCredential *credentail = + [[FIREmailPasswordAuthCredential alloc] initWithEmail:email password:password]; + [self internalSignInAndRetrieveDataWithCredential:credentail + isReauthentication:NO + callback:completion]; +} + +/** @fn internalSignInWithEmail:link:completion: + @brief Signs in using an email and email sign-in link. + @param email The user's email address. + @param link The email sign-in link. + @param callback A block which is invoked when the sign in finishes (or is cancelled.) Invoked + asynchronously on the global auth work queue in the future. + */ +- (void)internalSignInWithEmail:(nonnull NSString *)email + link:(nonnull NSString *)link + callback:(nullable FIRAuthResultCallback)callback { + if (![self isSignInWithEmailLink:link]) { + [FIRAuthExceptionUtils raiseInvalidParameterExceptionWithReason: + kInvalidEmailSignInLinkExceptionMessage]; + return; + } + NSDictionary *queryItems = FIRAuthParseURL(link); + if (![queryItems count]) { + NSURLComponents *urlComponents = [NSURLComponents componentsWithString:link]; + queryItems = FIRAuthParseURL(urlComponents.query); + } + NSString *actionCode = queryItems[@"oobCode"]; + + FIREmailLinkSignInRequest *request = + [[FIREmailLinkSignInRequest alloc] initWithEmail:email + oobCode:actionCode + requestConfiguration:_requestConfiguration]; + + [FIRAuthBackend emailLinkSignin:request + callback:^(FIREmailLinkSignInResponse *_Nullable response, + NSError *_Nullable error) { + if (error) { + callback(nil, error); + return; + } + [self completeSignInWithAccessToken:response.IDToken + accessTokenExpirationDate:response.approximateExpirationDate + refreshToken:response.refreshToken + anonymous:NO + callback:callback]; + }]; +} + +- (void)signInWithCredential:(FIRAuthCredential *)credential + completion:(FIRAuthResultCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + FIRAuthResultCallback callback = + [self signInFlowAuthResultCallbackByDecoratingCallback:completion]; + [self internalSignInWithCredential:credential callback:callback]; + }); +} + +- (void)signInAndRetrieveDataWithCredential:(FIRAuthCredential *)credential + completion:(nullable FIRAuthDataResultCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + FIRAuthDataResultCallback callback = + [self signInFlowAuthDataResultCallbackByDecoratingCallback:completion]; + [self internalSignInAndRetrieveDataWithCredential:credential + isReauthentication:NO + callback:callback]; + }); +} + +- (void)internalSignInWithCredential:(FIRAuthCredential *)credential + callback:(FIRAuthResultCallback)callback { + [self internalSignInAndRetrieveDataWithCredential:credential + isReauthentication:NO + callback:^(FIRAuthDataResult *_Nullable authResult, + NSError *_Nullable error) { + callback(authResult.user, error); + }]; +} + +- (void)internalSignInAndRetrieveDataWithCredential:(FIRAuthCredential *)credential + isReauthentication:(BOOL)isReauthentication + callback:(nullable FIRAuthDataResultCallback)callback { + if ([credential isKindOfClass:[FIREmailPasswordAuthCredential class]]) { + // Special case for email/password credentials + FIREmailPasswordAuthCredential *emailPasswordCredential = + (FIREmailPasswordAuthCredential *)credential; + FIRAuthResultCallback completeEmailSignIn = ^(FIRUser *user, NSError *error) { + if (callback) { + if (error) { + callback(nil, error); + return; + } + FIRAdditionalUserInfo *additionalUserInfo = + [[FIRAdditionalUserInfo alloc] initWithProviderID:FIREmailAuthProviderID + profile:nil + username:nil + isNewUser:NO]; + FIRAuthDataResult *result = [[FIRAuthDataResult alloc] initWithUser:user + additionalUserInfo:additionalUserInfo]; + callback(result, error); + } + }; + if (emailPasswordCredential.link) { + [self internalSignInWithEmail:emailPasswordCredential.email + link:emailPasswordCredential.link + callback:completeEmailSignIn]; + } else { + [self signInWithEmail:emailPasswordCredential.email + password:emailPasswordCredential.password + callback:completeEmailSignIn]; + } + return; + } + + #if TARGET_OS_IOS + if ([credential isKindOfClass:[FIRPhoneAuthCredential class]]) { + // Special case for phone auth credentials + FIRPhoneAuthCredential *phoneCredential = (FIRPhoneAuthCredential *)credential; + FIRAuthOperationType operation = + isReauthentication ? FIRAuthOperationTypeReauth : FIRAuthOperationTypeSignUpOrSignIn; + [self signInWithPhoneCredential:phoneCredential + operation:operation + callback:^(FIRVerifyPhoneNumberResponse *_Nullable response, + NSError *_Nullable error) { + if (callback) { + if (error) { + callback(nil, error); + return; + } + + [self completeSignInWithAccessToken:response.IDToken + accessTokenExpirationDate:response.approximateExpirationDate + refreshToken:response.refreshToken + anonymous:NO + callback:^(FIRUser *_Nullable user, NSError *_Nullable error) { + FIRAdditionalUserInfo *additionalUserInfo = + [[FIRAdditionalUserInfo alloc] initWithProviderID:FIRPhoneAuthProviderID + profile:nil + username:nil + isNewUser:response.isNewUser]; + FIRAuthDataResult *result = user ? + [[FIRAuthDataResult alloc] initWithUser:user + additionalUserInfo:additionalUserInfo] : nil; + callback(result, error); + }]; + } + }]; + return; + } + #endif + FIRVerifyAssertionRequest *request = + [[FIRVerifyAssertionRequest alloc] initWithProviderID:credential.provider + requestConfiguration:_requestConfiguration]; + request.autoCreate = !isReauthentication; + [credential prepareVerifyAssertionRequest:request]; + [FIRAuthBackend verifyAssertion:request + callback:^(FIRVerifyAssertionResponse *response, NSError *error) { + if (error) { + if (callback) { + callback(nil, error); + } + return; + } + + if (response.needConfirmation) { + if (callback) { + NSString *email = response.email; + callback(nil, [FIRAuthErrorUtils accountExistsWithDifferentCredentialErrorWithEmail:email]); + } + return; + } + + if (!response.providerID.length) { + if (callback) { + callback(nil, [FIRAuthErrorUtils unexpectedResponseWithDeserializedResponse:response]); + } + return; + } + [self completeSignInWithAccessToken:response.IDToken + accessTokenExpirationDate:response.approximateExpirationDate + refreshToken:response.refreshToken + anonymous:NO + callback:^(FIRUser *_Nullable user, NSError *_Nullable error) { + if (callback) { + FIRAdditionalUserInfo *additionalUserInfo = + [FIRAdditionalUserInfo userInfoWithVerifyAssertionResponse:response]; + FIRAuthDataResult *result = user ? + [[FIRAuthDataResult alloc] initWithUser:user + additionalUserInfo:additionalUserInfo] : nil; + callback(result, error); + } + }]; + }]; +} + +- (void)signInWithCredential:(FIRAuthCredential *)credential + callback:(FIRAuthResultCallback)callback { + [self signInAndRetrieveDataWithCredential:credential + completion:^(FIRAuthDataResult *_Nullable authResult, + NSError *_Nullable error) { + callback(authResult.user, error); + }]; +} + +- (void)signInAnonymouslyAndRetrieveDataWithCompletion:(FIRAuthDataResultCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + FIRAuthDataResultCallback decoratedCallback = + [self signInFlowAuthDataResultCallbackByDecoratingCallback:completion]; + if (self->_currentUser.anonymous) { + FIRAdditionalUserInfo *additionalUserInfo = + [[FIRAdditionalUserInfo alloc] initWithProviderID:nil + profile:nil + username:nil + isNewUser:NO]; + FIRAuthDataResult *authDataResult = + [[FIRAuthDataResult alloc] initWithUser:self->_currentUser + additionalUserInfo:additionalUserInfo]; + decoratedCallback(authDataResult, nil); + return; + } + [self internalSignInAnonymouslyWithCompletion:^(FIRSignUpNewUserResponse *_Nullable response, + NSError *_Nullable error) { + if (error) { + decoratedCallback(nil, error); + return; + } + [self completeSignInWithAccessToken:response.IDToken + accessTokenExpirationDate:response.approximateExpirationDate + refreshToken:response.refreshToken + anonymous:YES + callback:^(FIRUser *_Nullable user, NSError *_Nullable error) { + FIRAdditionalUserInfo *additionalUserInfo = + [[FIRAdditionalUserInfo alloc] initWithProviderID:nil + profile:nil + username:nil + isNewUser:YES]; + FIRAuthDataResult *authDataResult = + [[FIRAuthDataResult alloc] initWithUser:user + additionalUserInfo:additionalUserInfo]; + decoratedCallback(authDataResult, nil); + }]; + }]; + }); +} + +- (void)signInAnonymouslyWithCompletion:(FIRAuthDataResultCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + FIRAuthDataResultCallback decoratedCallback = + [self signInFlowAuthDataResultCallbackByDecoratingCallback:completion]; + if (self->_currentUser.anonymous) { + FIRAuthDataResult *result = + [[FIRAuthDataResult alloc] initWithUser:self->_currentUser additionalUserInfo:nil]; + decoratedCallback(result, nil); + return; + } + [self internalSignInAnonymouslyWithCompletion:^(FIRSignUpNewUserResponse *_Nullable response, + NSError *_Nullable error) { + if (error) { + decoratedCallback(nil, error); + return; + } + [self completeSignInWithAccessToken:response.IDToken + accessTokenExpirationDate:response.approximateExpirationDate + refreshToken:response.refreshToken + anonymous:YES + callback:^(FIRUser * _Nullable user, NSError * _Nullable error) { + FIRAdditionalUserInfo *additionalUserInfo = + [[FIRAdditionalUserInfo alloc] initWithProviderID:FIREmailAuthProviderID + profile:nil + username:nil + isNewUser:YES]; + FIRAuthDataResult *authDataResult = + [[FIRAuthDataResult alloc] initWithUser:user + additionalUserInfo:additionalUserInfo]; + decoratedCallback(authDataResult, nil); + }]; + }]; + }); +} + +- (void)signInWithCustomToken:(NSString *)token + completion:(nullable FIRAuthDataResultCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + FIRAuthDataResultCallback decoratedCallback = + [self signInFlowAuthDataResultCallbackByDecoratingCallback:completion]; + [self internalSignInAndRetrieveDataWithCustomToken:token + completion:^(FIRAuthDataResult *_Nullable authResult, + NSError *_Nullable error) { + decoratedCallback(authResult, error); + }]; + }); +} + +- (void)signInAndRetrieveDataWithCustomToken:(NSString *)token + completion:(nullable FIRAuthDataResultCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + FIRAuthDataResultCallback decoratedCallback = + [self signInFlowAuthDataResultCallbackByDecoratingCallback:completion]; + [self internalSignInAndRetrieveDataWithCustomToken:token completion:decoratedCallback]; + }); +} + +- (void)createUserWithEmail:(NSString *)email + password:(NSString *)password + completion:(nullable FIRAuthDataResultCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + FIRAuthDataResultCallback decoratedCallback = + [self signInFlowAuthDataResultCallbackByDecoratingCallback:completion]; + [self internalCreateUserWithEmail:email + password:password + completion:^(FIRSignUpNewUserResponse *_Nullable response, + NSError *_Nullable error) { + if (error) { + decoratedCallback(nil, error); + return; + } + [self completeSignInWithAccessToken:response.IDToken + accessTokenExpirationDate:response.approximateExpirationDate + refreshToken:response.refreshToken + anonymous:NO + callback:^(FIRUser *_Nullable user, NSError *_Nullable error) { + FIRAdditionalUserInfo *additionalUserInfo = + [[FIRAdditionalUserInfo alloc] initWithProviderID:FIREmailAuthProviderID + profile:nil + username:nil + isNewUser:YES]; + FIRAuthDataResult *authDataResult = + [[FIRAuthDataResult alloc] initWithUser:user + additionalUserInfo:additionalUserInfo]; + decoratedCallback(authDataResult, nil); + }]; + }]; + }); +} + +- (void)createUserAndRetrieveDataWithEmail:(NSString *)email + password:(NSString *)password + completion:(FIRAuthDataResultCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + FIRAuthDataResultCallback decoratedCallback = + [self signInFlowAuthDataResultCallbackByDecoratingCallback:completion]; + [self internalCreateUserWithEmail:email + password:password + completion:^(FIRSignUpNewUserResponse *_Nullable response, + NSError *_Nullable error) { + if (error) { + decoratedCallback(nil, error); + return; + } + + [self completeSignInWithAccessToken:response.IDToken + accessTokenExpirationDate:response.approximateExpirationDate + refreshToken:response.refreshToken + anonymous:NO + callback:^(FIRUser *_Nullable user, NSError *_Nullable error) { + FIRAdditionalUserInfo *additionalUserInfo = + [[FIRAdditionalUserInfo alloc] initWithProviderID:FIREmailAuthProviderID + profile:nil + username:nil + isNewUser:YES]; + FIRAuthDataResult *authDataResult = + [[FIRAuthDataResult alloc] initWithUser:user + additionalUserInfo:additionalUserInfo]; + decoratedCallback(authDataResult, nil); + }]; + }]; + }); +} + +- (void)confirmPasswordResetWithCode:(NSString *)code + newPassword:(NSString *)newPassword + completion:(FIRConfirmPasswordResetCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + FIRResetPasswordRequest *request = + [[FIRResetPasswordRequest alloc] initWithOobCode:code + newPassword:newPassword + requestConfiguration:self->_requestConfiguration]; + [FIRAuthBackend resetPassword:request callback:^(FIRResetPasswordResponse *_Nullable response, + NSError *_Nullable error) { + if (completion) { + dispatch_async(dispatch_get_main_queue(), ^{ + if (error) { + completion(error); + return; + } + completion(nil); + }); + } + }]; + }); +} + +- (void)checkActionCode:(NSString *)code completion:(FIRCheckActionCodeCallBack)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^ { + FIRResetPasswordRequest *request = + [[FIRResetPasswordRequest alloc] initWithOobCode:code + newPassword:nil + requestConfiguration:self->_requestConfiguration]; + [FIRAuthBackend resetPassword:request callback:^(FIRResetPasswordResponse *_Nullable response, + NSError *_Nullable error) { + if (completion) { + if (error) { + dispatch_async(dispatch_get_main_queue(), ^{ + completion(nil, error); + }); + return; + } + FIRActionCodeOperation operation = + [FIRActionCodeInfo actionCodeOperationForRequestType:response.requestType]; + FIRActionCodeInfo *actionCodeInfo = + [[FIRActionCodeInfo alloc] initWithOperation:operation + email:response.email + newEmail:response.verifiedEmail]; + dispatch_async(dispatch_get_main_queue(), ^{ + completion(actionCodeInfo, nil); + }); + } + }]; + }); +} + +- (void)verifyPasswordResetCode:(NSString *)code + completion:(FIRVerifyPasswordResetCodeCallback)completion { + [self checkActionCode:code completion:^(FIRActionCodeInfo *_Nullable info, + NSError *_Nullable error) { + if (completion) { + if (error) { + completion(nil, error); + return; + } + completion([info dataForKey:FIRActionCodeEmailKey], nil); + } + }]; +} + +- (void)applyActionCode:(NSString *)code completion:(FIRApplyActionCodeCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^ { + FIRSetAccountInfoRequest *request = + [[FIRSetAccountInfoRequest alloc] initWithRequestConfiguration:self->_requestConfiguration]; + request.OOBCode = code; + [FIRAuthBackend setAccountInfo:request callback:^(FIRSetAccountInfoResponse *_Nullable response, + NSError *_Nullable error) { + if (completion) { + dispatch_async(dispatch_get_main_queue(), ^{ + completion(error); + }); + } + }]; + }); +} + +- (void)sendPasswordResetWithEmail:(NSString *)email + completion:(nullable FIRSendPasswordResetCallback)completion { + [self sendPasswordResetWithNullableActionCodeSettings:nil email:email completion:completion]; +} + +- (void)sendPasswordResetWithEmail:(NSString *)email + actionCodeSettings:(FIRActionCodeSettings *)actionCodeSettings + completion:(nullable FIRSendPasswordResetCallback)completion { + [self sendPasswordResetWithNullableActionCodeSettings:actionCodeSettings + email:email + completion:completion]; +} + +/** @fn sendPasswordResetWithNullableActionCodeSettings:actionCodeSetting:email:completion: + @brief Initiates a password reset for the given email address and @FIRActionCodeSettings object. + + @param actionCodeSettings Optionally, An @c FIRActionCodeSettings object containing settings + related to the handling action codes. + @param email The email address of the user. + @param completion Optionally; a block which is invoked when the request finishes. Invoked + asynchronously on the main thread in the future. + */ +- (void)sendPasswordResetWithNullableActionCodeSettings:(nullable FIRActionCodeSettings *) + actionCodeSettings + email:(NSString *)email + completion:(nullable FIRSendPasswordResetCallback) + completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + if (!email) { + [FIRAuthExceptionUtils raiseInvalidParameterExceptionWithReason: + kMissingEmailInvalidParameterExceptionReason]; + return; + } + FIRGetOOBConfirmationCodeRequest *request = + [FIRGetOOBConfirmationCodeRequest passwordResetRequestWithEmail:email + actionCodeSettings:actionCodeSettings + requestConfiguration:self->_requestConfiguration + ]; + [FIRAuthBackend getOOBConfirmationCode:request + callback:^(FIRGetOOBConfirmationCodeResponse *_Nullable response, + NSError *_Nullable error) { + if (completion) { + dispatch_async(dispatch_get_main_queue(), ^{ + completion(error); + }); + } + }]; + }); +} + +- (void)sendSignInLinkToEmail:(nonnull NSString *)email + actionCodeSettings:(nonnull FIRActionCodeSettings *)actionCodeSettings + completion:(nullable FIRSendSignInLinkToEmailCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + if (!email) { + [FIRAuthExceptionUtils raiseInvalidParameterExceptionWithReason: + kMissingEmailInvalidParameterExceptionReason]; + } + + if (!actionCodeSettings.handleCodeInApp) { + [FIRAuthExceptionUtils raiseInvalidParameterExceptionWithReason: + kHandleCodeInAppFalseExceptionReason]; + } + FIRGetOOBConfirmationCodeRequest *request = + [FIRGetOOBConfirmationCodeRequest signInWithEmailLinkRequest:email + actionCodeSettings:actionCodeSettings + requestConfiguration:self->_requestConfiguration]; + [FIRAuthBackend getOOBConfirmationCode:request + callback:^(FIRGetOOBConfirmationCodeResponse *_Nullable response, + NSError *_Nullable error) { + if (completion) { + dispatch_async(dispatch_get_main_queue(), ^{ + completion(error); + }); + } + }]; + }); +} + +- (void)updateCurrentUser:(FIRUser *)user completion:(nullable FIRUserUpdateCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + if (!user) { + if (completion) { + dispatch_async(dispatch_get_main_queue(), ^{ + completion([FIRAuthErrorUtils nullUserErrorWithMessage:nil]); + }); + } + return; + } + void (^updateUserBlock)(FIRUser *user) = ^(FIRUser *user) { + NSError *error; + [self updateCurrentUser:user byForce:YES savingToDisk:YES error:(&error)]; + if (error) { + if (completion) { + dispatch_async(dispatch_get_main_queue(), ^{ + completion(error); + }); + } + return; + } if (completion) { + dispatch_async(dispatch_get_main_queue(), ^{ + completion(nil); + }); + } + }; + if (![user.requestConfiguration.APIKey isEqualToString:self->_requestConfiguration.APIKey]) { + // If the API keys are different, then we need to confirm that the user belongs to the same + // project before proceeding. + user.requestConfiguration = self->_requestConfiguration; + [user reloadWithCompletion:^(NSError *_Nullable error) { + if (error) { + if (completion) { + dispatch_async(dispatch_get_main_queue(), ^{ + completion(error); + }); + } + return; + } + updateUserBlock(user); + }]; + } else { + updateUserBlock(user); + } + }); +} + +- (BOOL)signOut:(NSError *_Nullable __autoreleasing *_Nullable)error { + __block BOOL result = YES; + dispatch_sync(FIRAuthGlobalWorkQueue(), ^{ + if (!self->_currentUser) { + return; + } + result = [self updateCurrentUser:nil byForce:NO savingToDisk:YES error:error]; + }); + return result; +} + +- (BOOL)signOutByForceWithUserID:(NSString *)userID error:(NSError *_Nullable *_Nullable)error { + if (_currentUser.uid != userID) { + return YES; + } + return [self updateCurrentUser:nil byForce:YES savingToDisk:YES error:error]; +} + +- (BOOL)isSignInWithEmailLink:(NSString *)link { + if (link.length == 0) { + return NO; + } + NSDictionary *queryItems = FIRAuthParseURL(link); + if (![queryItems count]) { + NSURLComponents *urlComponents = [NSURLComponents componentsWithString:link]; + if (!urlComponents.query) { + return NO; + } + queryItems = FIRAuthParseURL(urlComponents.query); + } + + if (![queryItems count]) { + return NO; + } + + NSString *actionCode = queryItems[@"oobCode"]; + NSString *mode = queryItems[@"mode"]; + + if (actionCode && [mode isEqualToString:@"signIn"]) { + return YES; + } + return NO; +} + +/** @fn FIRAuthParseURL:NSString + @brief Parses an incoming URL into all available query items. + @param urlString The url to be parsed. + @return A dictionary of available query items in the target URL. + */ +static NSDictionary *FIRAuthParseURL(NSString *urlString) { + NSString *linkURL = [NSURLComponents componentsWithString:urlString].query; + if (!linkURL) { + return @{}; + } + NSArray *URLComponents = [linkURL componentsSeparatedByString:@"&"]; + NSMutableDictionary *queryItems = + [[NSMutableDictionary alloc] initWithCapacity:URLComponents.count]; + for (NSString *component in URLComponents) { + NSRange equalRange = [component rangeOfString:@"="]; + if (equalRange.location != NSNotFound) { + NSString *queryItemKey = + [[component substringToIndex:equalRange.location] stringByRemovingPercentEncoding]; + NSString *queryItemValue = + [[component substringFromIndex:equalRange.location + 1] stringByRemovingPercentEncoding]; + if (queryItemKey && queryItemValue) { + queryItems[queryItemKey] = queryItemValue; + } + } + } + return queryItems; +} + +- (FIRAuthStateDidChangeListenerHandle)addAuthStateDidChangeListener: + (FIRAuthStateDidChangeListenerBlock)listener { + __block BOOL firstInvocation = YES; + __block NSString *previousUserID; + return [self addIDTokenDidChangeListener:^(FIRAuth *_Nonnull auth, FIRUser *_Nullable user) { + BOOL shouldCallListener = firstInvocation || + !(previousUserID == user.uid || [previousUserID isEqualToString:user.uid]); + firstInvocation = NO; + previousUserID = [user.uid copy]; + if (shouldCallListener) { + listener(auth, user); + } + }]; +} + +- (void)removeAuthStateDidChangeListener:(FIRAuthStateDidChangeListenerHandle)listenerHandle { + [self removeIDTokenDidChangeListener:listenerHandle]; +} + +- (FIRIDTokenDidChangeListenerHandle)addIDTokenDidChangeListener: + (FIRIDTokenDidChangeListenerBlock)listener { + if (!listener) { + [NSException raise:NSInvalidArgumentException format:@"listener must not be nil."]; + return nil; + } + FIRAuthStateDidChangeListenerHandle handle; + NSNotificationCenter *notifications = [NSNotificationCenter defaultCenter]; + handle = [notifications addObserverForName:FIRAuthStateDidChangeNotification + object:self + queue:[NSOperationQueue mainQueue] + usingBlock:^(NSNotification *_Nonnull notification) { + FIRAuth *auth = notification.object; + listener(auth, auth.currentUser); + }]; + @synchronized (self) { + [_listenerHandles addObject:handle]; + } + dispatch_async(dispatch_get_main_queue(), ^{ + listener(self, self->_currentUser); + }); + return handle; +} + +- (void)removeIDTokenDidChangeListener:(FIRIDTokenDidChangeListenerHandle)listenerHandle { + [[NSNotificationCenter defaultCenter] removeObserver:listenerHandle]; + @synchronized (self) { + [_listenerHandles removeObject:listenerHandle]; + } +} + +- (void)useAppLanguage { + dispatch_sync(FIRAuthGlobalWorkQueue(), ^{ + self->_requestConfiguration.languageCode = + [NSBundle mainBundle].preferredLocalizations.firstObject; + }); +} + +- (nullable NSString *)languageCode { + return _requestConfiguration.languageCode; +} + +- (void)setLanguageCode:(nullable NSString *)languageCode { + dispatch_sync(FIRAuthGlobalWorkQueue(), ^{ + self->_requestConfiguration.languageCode = [languageCode copy]; + }); +} + +- (NSString *)additionalFrameworkMarker { + return self->_requestConfiguration.additionalFrameworkMarker; +} + +- (void)setAdditionalFrameworkMarker:(NSString *)additionalFrameworkMarker { + dispatch_sync(FIRAuthGlobalWorkQueue(), ^{ + self->_requestConfiguration.additionalFrameworkMarker = [additionalFrameworkMarker copy]; + }); +} + +#if TARGET_OS_IOS +- (NSData *)APNSToken { + __block NSData *result = nil; + dispatch_sync(FIRAuthGlobalWorkQueue(), ^{ + result = self->_tokenManager.token.data; + }); + return result; +} + +- (void)setAPNSToken:(NSData *)APNSToken { + [self setAPNSToken:APNSToken type:FIRAuthAPNSTokenTypeUnknown]; +} + +- (void)setAPNSToken:(NSData *)token type:(FIRAuthAPNSTokenType)type { + dispatch_sync(FIRAuthGlobalWorkQueue(), ^{ + self->_tokenManager.token = [[FIRAuthAPNSToken alloc] initWithData:token type:type]; + }); +} + +- (void)handleAPNSTokenError:(NSError *)error { + dispatch_sync(FIRAuthGlobalWorkQueue(), ^{ + [self->_tokenManager cancelWithError:error]; + }); +} + +- (BOOL)canHandleNotification:(NSDictionary *)userInfo { + __block BOOL result = NO; + dispatch_sync(FIRAuthGlobalWorkQueue(), ^{ + result = [self->_notificationManager canHandleNotification:userInfo]; + }); + return result; +} + +- (BOOL)canHandleURL:(NSURL *)URL { + __block BOOL result = NO; + dispatch_sync(FIRAuthGlobalWorkQueue(), ^{ + result = [self->_authURLPresenter canHandleURL:URL]; + }); + return result; +} +#endif + +#pragma mark - Internal Methods + +#if TARGET_OS_IOS +/** @fn signInWithPhoneCredential:callback: + @brief Signs in using a phone credential. + @param credential The Phone Auth credential used to sign in. + @param operation The type of operation for which this sign-in attempt is initiated. + @param callback A block which is invoked when the sign in finishes (or is cancelled.) Invoked + asynchronously on the global auth work queue in the future. + */ +- (void)signInWithPhoneCredential:(FIRPhoneAuthCredential *)credential + operation:(FIRAuthOperationType)operation + callback:(FIRVerifyPhoneNumberResponseCallback)callback { + if (credential.temporaryProof.length && credential.phoneNumber.length) { + FIRVerifyPhoneNumberRequest *request = + [[FIRVerifyPhoneNumberRequest alloc] initWithTemporaryProof:credential.temporaryProof + phoneNumber:credential.phoneNumber + operation:operation + requestConfiguration:_requestConfiguration]; + [FIRAuthBackend verifyPhoneNumber:request callback:callback]; + return; + } + + if (!credential.verificationID.length) { + callback(nil, [FIRAuthErrorUtils missingVerificationIDErrorWithMessage:nil]); + return; + } + if (!credential.verificationCode.length) { + callback(nil, [FIRAuthErrorUtils missingVerificationCodeErrorWithMessage:nil]); + return; + } + FIRVerifyPhoneNumberRequest *request = + [[FIRVerifyPhoneNumberRequest alloc]initWithVerificationID:credential.verificationID + verificationCode:credential.verificationCode + operation:operation + requestConfiguration:_requestConfiguration]; + [FIRAuthBackend verifyPhoneNumber:request callback:callback]; +} + +#endif + +/** @fn internalSignInAndRetrieveDataWithCustomToken:completion: + @brief Signs in a Firebase user given a custom token. + @param token A self-signed custom auth token. + @param completion A block which is invoked when the custom token sign in request completes. + */ +- (void)internalSignInAndRetrieveDataWithCustomToken:(NSString *)token + completion:(nullable FIRAuthDataResultCallback) + completion { + FIRVerifyCustomTokenRequest *request = + [[FIRVerifyCustomTokenRequest alloc] initWithToken:token + requestConfiguration:_requestConfiguration]; + [FIRAuthBackend verifyCustomToken:request + callback:^(FIRVerifyCustomTokenResponse *_Nullable response, + NSError *_Nullable error) { + if (error) { + if (completion) { + completion(nil, error); + return; + } + } + [self completeSignInWithAccessToken:response.IDToken + accessTokenExpirationDate:response.approximateExpirationDate + refreshToken:response.refreshToken + anonymous:NO + callback:^(FIRUser *_Nullable user, + NSError *_Nullable error) { + if (error) { + if (completion) { + completion(nil, error); + } + return; + } + FIRAdditionalUserInfo *additonalUserInfo = + [[FIRAdditionalUserInfo alloc] initWithProviderID:nil + profile:nil + username:nil + isNewUser:response.isNewUser]; + FIRAuthDataResult *result = + [[FIRAuthDataResult alloc] initWithUser:user additionalUserInfo:additonalUserInfo]; + if (completion) { + completion(result, nil); + } + }]; + }]; +} + +/** @fn internalCreateUserWithEmail:password:completion: + @brief Makes a backend request attempting to create a new Firebase user given an email address + and password. + @param email The email address used to create the new Firebase user. + @param password The password used to create the new Firebase user. + @param completion Optionally; a block which is invoked when the request finishes. + */ +- (void)internalCreateUserWithEmail:(NSString *)email + password:(NSString *)password + completion:(nullable FIRSignupNewUserCallback)completion { + FIRSignUpNewUserRequest *request = + [[FIRSignUpNewUserRequest alloc] initWithEmail:email + password:password + displayName:nil + requestConfiguration:_requestConfiguration]; + if (![request.password length]) { + completion(nil, [FIRAuthErrorUtils + weakPasswordErrorWithServerResponseReason:kMissingPasswordReason]); + return; + } + if (![request.email length]) { + completion(nil, [FIRAuthErrorUtils missingEmailErrorWithMessage:nil]); + return; + } + [FIRAuthBackend signUpNewUser:request callback:completion]; +} + +/** @fn internalSignInAnonymouslyWithCompletion: + @param completion A block which is invoked when the anonymous sign in request completes. + */ +- (void)internalSignInAnonymouslyWithCompletion:(FIRSignupNewUserCallback)completion { + FIRSignUpNewUserRequest *request = + [[FIRSignUpNewUserRequest alloc]initWithRequestConfiguration:_requestConfiguration]; + [FIRAuthBackend signUpNewUser:request + callback:completion]; +} + +/** @fn possiblyPostAuthStateChangeNotification + @brief Posts the auth state change notificaton if current user's token has been changed. + */ +- (void)possiblyPostAuthStateChangeNotification { + NSString *token = _currentUser.rawAccessToken; + if (_lastNotifiedUserToken == token || + (token != nil && [_lastNotifiedUserToken isEqualToString:token])) { + return; + } + _lastNotifiedUserToken = token; + if (_autoRefreshTokens) { + // Shedule new refresh task after successful attempt. + [self scheduleAutoTokenRefresh]; + } + NSMutableDictionary *internalNotificationParameters = [NSMutableDictionary dictionary]; + if (self.app) { + internalNotificationParameters[FIRAuthStateDidChangeInternalNotificationAppKey] = self.app; + } + if (token.length) { + internalNotificationParameters[FIRAuthStateDidChangeInternalNotificationTokenKey] = token; + } + internalNotificationParameters[FIRAuthStateDidChangeInternalNotificationUIDKey] = _currentUser.uid; + NSNotificationCenter *notifications = [NSNotificationCenter defaultCenter]; + dispatch_async(dispatch_get_main_queue(), ^{ + [notifications postNotificationName:FIRAuthStateDidChangeInternalNotification + object:self + userInfo:internalNotificationParameters]; + [notifications postNotificationName:FIRAuthStateDidChangeNotification + object:self]; + }); +} + +- (BOOL)updateKeychainWithUser:(FIRUser *)user error:(NSError *_Nullable *_Nullable)error { + if (user != _currentUser) { + // No-op if the user is no longer signed in. This is not considered an error as we don't check + // whether the user is still current on other callbacks of user operations either. + return YES; + } + if ([self saveUser:user error:error]) { + [self possiblyPostAuthStateChangeNotification]; + return YES; + } + return NO; +} + +/** @fn setKeychainServiceNameForApp + @brief Sets the keychain service name global data for the particular app. + @param app The Firebase app to set keychain service name for. + */ ++ (void)setKeychainServiceNameForApp:(FIRApp *)app { + @synchronized (self) { + gKeychainServiceNameForAppName[app.name] = + [@"firebase_auth_" stringByAppendingString:app.options.googleAppID]; + } +} + +/** @fn keychainServiceNameForAppName: + @brief Gets the keychain service name global data for the particular app by name. + @param appName The name of the Firebase app to get keychain service name for. + */ ++ (NSString *)keychainServiceNameForAppName:(NSString *)appName { + @synchronized (self) { + return gKeychainServiceNameForAppName[appName]; + } +} + +/** @fn deleteKeychainServiceNameForAppName: + @brief Deletes the keychain service name global data for the particular app by name. + @param appName The name of the Firebase app to delete keychain service name for. + */ ++ (void)deleteKeychainServiceNameForAppName:(NSString *)appName { + @synchronized (self) { + [gKeychainServiceNameForAppName removeObjectForKey:appName]; + } +} + +/** @fn scheduleAutoTokenRefreshWithDelay: + @brief Schedules a task to automatically refresh tokens on the current user. The token refresh + is scheduled 5 minutes before the scheduled expiration time. + @remarks If the token expires in less than 5 minutes, schedule the token refresh immediately. + */ +- (void)scheduleAutoTokenRefresh { + NSTimeInterval tokenExpirationInterval = + [_currentUser.accessTokenExpirationDate timeIntervalSinceNow] - kTokenRefreshHeadStart; + [self scheduleAutoTokenRefreshWithDelay:MAX(tokenExpirationInterval, 0) retry:NO]; +} + +/** @fn scheduleAutoTokenRefreshWithDelay: + @brief Schedules a task to automatically refresh tokens on the current user. + @param delay The delay in seconds after which the token refresh task should be scheduled to be + executed. + @param retry Flag to determine whether the invocation is a retry attempt or not. + */ +- (void)scheduleAutoTokenRefreshWithDelay:(NSTimeInterval)delay retry:(BOOL)retry { + NSString *accessToken = _currentUser.rawAccessToken; + if (!accessToken) { + return; + } + if (retry) { + FIRLogInfo(kFIRLoggerAuth, @"I-AUT000003", + @"Token auto-refresh re-scheduled in %02d:%02d " + @"because of error on previous refresh attempt.", + (int)ceil(delay) / 60, (int)ceil(delay) % 60); + } else { + FIRLogInfo(kFIRLoggerAuth, @"I-AUT000004", + @"Token auto-refresh scheduled in %02d:%02d for the new token.", + (int)ceil(delay) / 60, (int)ceil(delay) % 60); + } + _autoRefreshScheduled = YES; + __weak FIRAuth *weakSelf = self; + [[FIRAuthDispatcher sharedInstance] dispatchAfterDelay:delay + queue:FIRAuthGlobalWorkQueue() + task:^(void) { + FIRAuth *strongSelf = weakSelf; + if (!strongSelf) { + return; + } + if (![strongSelf->_currentUser.rawAccessToken isEqualToString:accessToken]) { + // Another auto refresh must have been scheduled, so keep _autoRefreshScheduled unchanged. + return; + } + strongSelf->_autoRefreshScheduled = NO; + if (strongSelf->_isAppInBackground) { + return; + } + NSString *uid = strongSelf->_currentUser.uid; + [strongSelf->_currentUser internalGetTokenForcingRefresh:YES + callback:^(NSString *_Nullable token, + NSError *_Nullable error) { + if (![strongSelf->_currentUser.uid isEqualToString:uid]) { + return; + } + if (error) { + // Kicks off exponential back off logic to retry failed attempt. Starts with one minute + // delay (60 seconds) if this is the first failed attempt. + NSTimeInterval rescheduleDelay; + if (retry) { + rescheduleDelay = MIN(delay * 2, kMaxWaitTimeForBackoff); + } else { + rescheduleDelay = 60; + } + [strongSelf scheduleAutoTokenRefreshWithDelay:rescheduleDelay retry:YES]; + } + }]; + }]; +} + +#pragma mark - + +/** @fn completeSignInWithTokenService:callback: + @brief Completes a sign-in flow once we have access and refresh tokens for the user. + @param accessToken The STS access token. + @param accessTokenExpirationDate The approximate expiration date of the access token. + @param refreshToken The STS refresh token. + @param anonymous Whether or not the user is anonymous. + @param callback Called when the user has been signed in or when an error occurred. Invoked + asynchronously on the global auth work queue in the future. + */ +- (void)completeSignInWithAccessToken:(NSString *)accessToken + accessTokenExpirationDate:(NSDate *)accessTokenExpirationDate + refreshToken:(NSString *)refreshToken + anonymous:(BOOL)anonymous + callback:(FIRAuthResultCallback)callback { + [FIRUser retrieveUserWithAuth:self + accessToken:accessToken + accessTokenExpirationDate:accessTokenExpirationDate + refreshToken:refreshToken + anonymous:anonymous + callback:callback]; +} + +/** @fn signInFlowAuthResultCallbackByDecoratingCallback: + @brief Creates a FIRAuthResultCallback block which wraps another FIRAuthResultCallback; trying + to update the current user before forwarding it's invocations along to a subject block + @param callback Called when the user has been updated or when an error has occurred. Invoked + asynchronously on the main thread in the future. + @return Returns a block that updates the current user. + @remarks Typically invoked as part of the complete sign-in flow. For any other uses please + consider alternative ways of updating the current user. +*/ +- (FIRAuthResultCallback)signInFlowAuthResultCallbackByDecoratingCallback: + (nullable FIRAuthResultCallback)callback { + return ^(FIRUser *_Nullable user, NSError *_Nullable error) { + if (error) { + if (callback) { + dispatch_async(dispatch_get_main_queue(), ^{ + callback(nil, error); + }); + } + return; + } + if (![self updateCurrentUser:user byForce:NO savingToDisk:YES error:&error]) { + if (callback) { + dispatch_async(dispatch_get_main_queue(), ^{ + callback(nil, error); + }); + } + return; + } + if (callback) { + dispatch_async(dispatch_get_main_queue(), ^{ + callback(user, nil); + }); + } + }; +} + +/** @fn signInFlowAuthDataResultCallbackByDecoratingCallback: + @brief Creates a FIRAuthDataResultCallback block which wraps another FIRAuthDataResultCallback; + trying to update the current user before forwarding it's invocations along to a subject + block. + @param callback Called when the user has been updated or when an error has occurred. Invoked + asynchronously on the main thread in the future. + @return Returns a block that updates the current user. + @remarks Typically invoked as part of the complete sign-in flow. For any other uses please + consider alternative ways of updating the current user. +*/ +- (FIRAuthDataResultCallback)signInFlowAuthDataResultCallbackByDecoratingCallback: + (nullable FIRAuthDataResultCallback)callback { + return ^(FIRAuthDataResult *_Nullable authResult, NSError *_Nullable error) { + if (error) { + if (callback) { + dispatch_async(dispatch_get_main_queue(), ^{ + callback(nil, error); + }); + } + return; + } + if (![self updateCurrentUser:authResult.user byForce:NO savingToDisk:YES error:&error]) { + if (callback) { + dispatch_async(dispatch_get_main_queue(), ^{ + callback(nil, error); + }); + } + return; + } + if (callback) { + dispatch_async(dispatch_get_main_queue(), ^{ + callback(authResult, nil); + }); + } + }; +} + +#pragma mark - User-Related Methods + +/** @fn updateCurrentUser:savingToDisk: + @brief Update the current user; initializing the user's internal properties correctly, and + optionally saving the user to disk. + @remarks This method is called during: sign in and sign out events, as well as during class + initialization time. The only time the saveToDisk parameter should be set to NO is during + class initialization time because the user was just read from disk. + @param user The user to use as the current user (including nil, which is passed at sign out + time.) + @param saveToDisk Indicates the method should persist the user data to disk. + */ +- (BOOL)updateCurrentUser:(FIRUser *)user + byForce:(BOOL)force + savingToDisk:(BOOL)saveToDisk + error:(NSError *_Nullable *_Nullable)error { + if (user == _currentUser) { + [self possiblyPostAuthStateChangeNotification]; + return YES; + } + BOOL success = YES; + if (saveToDisk) { + success = [self saveUser:user error:error]; + } + if (success || force) { + _currentUser = user; + [self possiblyPostAuthStateChangeNotification]; + } + return success; +} + +/** @fn saveUser:error: + @brief Persists user. + @param user The user to save. + @param error Return value for any error which occurs. + @return @YES on success, @NO otherwise. + */ +- (BOOL)saveUser:(FIRUser *)user + error:(NSError *_Nullable *_Nullable)error { + BOOL success; + NSString *userKey = [NSString stringWithFormat:kUserKey, _firebaseAppName]; + + if (!user) { + success = [_keychain removeDataForKey:userKey error:error]; + } else { + // Encode the user object. + NSMutableData *archiveData = [NSMutableData data]; + NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:archiveData]; + [archiver encodeObject:user forKey:userKey]; + [archiver finishEncoding]; + + // Save the user object's encoded value. + success = [_keychain setData:archiveData forKey:userKey error:error]; + } + return success; +} + +/** @fn getUser:error: + @brief Retrieves the saved user associated, if one exists, from the keychain. + @param outUser An out parameter which is populated with the saved user, if one exists. + @param error Return value for any error which occurs. + @return YES if the operation was a success (irrespective of whether or not a saved user existed + for the given @c firebaseAppId,) NO if an error occurred. + */ +- (BOOL)getUser:(FIRUser *_Nullable *)outUser + error:(NSError *_Nullable *_Nullable)error { + NSString *userKey = [NSString stringWithFormat:kUserKey, _firebaseAppName]; + + NSError *keychainError; + NSData *encodedUserData = [_keychain dataForKey:userKey error:&keychainError]; + if (keychainError) { + if (error) { + *error = keychainError; + } + return NO; + } + if (!encodedUserData) { + *outUser = nil; + return YES; + } + NSKeyedUnarchiver *unarchiver = + [[NSKeyedUnarchiver alloc] initForReadingWithData:encodedUserData]; + FIRUser *user = [unarchiver decodeObjectOfClass:[FIRUser class] forKey:userKey]; + user.auth = self; + *outUser = user; + return YES; +} + +#pragma mark - Interoperability + ++ (nonnull NSArray *)componentsToRegister { + FIRComponentCreationBlock authCreationBlock = + ^id _Nullable(FIRComponentContainer *_Nonnull container, BOOL *_Nonnull isCacheable) { + *isCacheable = YES; + return [[FIRAuth alloc] initWithApp:container.app]; + }; + FIRComponent *authInterop = [FIRComponent componentWithProtocol:@protocol(FIRAuthInterop) + creationBlock:authCreationBlock]; + return @[authInterop]; +} + +#pragma mark - FIRCoreConfigurable + ++ (void)configureWithApp:(nonnull FIRApp *)app { + // TODO: Evaluate what actually needs to be configured here instead of initializing a full + // instance. + // Ensures the @c FIRAuth instance for a given app gets loaded as soon as the app is ready. + [FIRAuth authWithApp:app]; +} + +#pragma mark - FIRComponentLifecycleMaintainer + +- (void)appWillBeDeleted:(nonnull FIRApp *)app { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + // This doesn't stop any request already issued, see b/27704535 . + NSString *keychainServiceName = [FIRAuth keychainServiceNameForAppName:app.name]; + if (keychainServiceName) { + [[self class] deleteKeychainServiceNameForAppName:app.name]; + FIRAuthKeychain *keychain = [[FIRAuthKeychain alloc] initWithService:keychainServiceName]; + NSString *userKey = [NSString stringWithFormat:kUserKey, app.name]; + [keychain removeDataForKey:userKey error:NULL]; + } + dispatch_async(dispatch_get_main_queue(), ^{ + // TODO: Move over to fire an event instead, once ready. + [[NSNotificationCenter defaultCenter] postNotificationName:FIRAuthStateDidChangeNotification + object:nil]; + }); + }); +} + +#pragma mark - FIRAuthInterop + +- (void)getTokenForcingRefresh:(BOOL)forceRefresh withCallback:(FIRTokenCallback)callback { + __weak FIRAuth *weakSelf = self; + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + FIRAuth *strongSelf = weakSelf; + // Enable token auto-refresh if not aleady enabled. + if (strongSelf && !strongSelf->_autoRefreshTokens) { + FIRLogInfo(kFIRLoggerAuth, @"I-AUT000002", @"Token auto-refresh enabled."); + strongSelf->_autoRefreshTokens = YES; + [strongSelf scheduleAutoTokenRefresh]; + +#if TARGET_OS_IOS || TARGET_OS_TV // TODO: Is a similar mechanism needed on macOS? + strongSelf->_applicationDidBecomeActiveObserver = [[NSNotificationCenter defaultCenter] + addObserverForName:UIApplicationDidBecomeActiveNotification + object:nil + queue:nil + usingBlock:^(NSNotification *notification) { + FIRAuth *strongSelf = weakSelf; + if (strongSelf) { + strongSelf->_isAppInBackground = NO; + if (!strongSelf->_autoRefreshScheduled) { + [weakSelf scheduleAutoTokenRefresh]; + } + } + }]; + strongSelf->_applicationDidEnterBackgroundObserver = [[NSNotificationCenter defaultCenter] + addObserverForName:UIApplicationDidEnterBackgroundNotification + object:nil + queue:nil + usingBlock:^(NSNotification *notification) { + FIRAuth *strongSelf = weakSelf; + if (strongSelf) { + strongSelf->_isAppInBackground = YES; + } + }]; +#endif + } + // Call back with 'nil' if there is no current user. + if (!strongSelf || !strongSelf->_currentUser) { + dispatch_async(dispatch_get_main_queue(), ^{ + callback(nil, nil); + }); + return; + } + // Call back with current user token. + [strongSelf->_currentUser internalGetTokenForcingRefresh:forceRefresh + callback:^(NSString *_Nullable token, + NSError *_Nullable error) { + dispatch_async(dispatch_get_main_queue(), ^{ + callback(token, error); + }); + }]; + }); +} + +- (nullable NSString *)getUserID { + return _currentUser.uid; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAPNSToken.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAPNSToken.h new file mode 100644 index 0000000..dc07442 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAPNSToken.h @@ -0,0 +1,59 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthAPNSTokenType.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRAuthAPNSToken + @brief A data structure for an APNs token. + */ +@interface FIRAuthAPNSToken : NSObject + +/** @property data + @brief The APNs token data. + */ +@property(nonatomic, strong, readonly) NSData *data; + +/** @property string + @brief The uppercase hexadecimal string form of the APNs token data. + */ +@property(nonatomic, strong, readonly) NSString *string; + +/** @property type + @brief The APNs token type. + */ +@property(nonatomic, assign, readonly) FIRAuthAPNSTokenType type; + +/** @fn initWithData:type: + @brief Initializes the instance. + @param data The APNs token data. + @param type The APNs token type. + @return The initialized instance. + */ +- (instancetype)initWithData:(NSData *)data type:(FIRAuthAPNSTokenType)type + NS_DESIGNATED_INITIALIZER; + +/** @fn init + @brief Call @c initWithData:type: to get an instance of this class. + */ +- (instancetype)init NS_UNAVAILABLE; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAPNSToken.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAPNSToken.m new file mode 100644 index 0000000..db3f96d --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAPNSToken.m @@ -0,0 +1,52 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthAPNSToken.h" + +NS_ASSUME_NONNULL_BEGIN + +@implementation FIRAuthAPNSToken { + /** @var _string + @brief The lazy-initialized string form of the token data. + */ + NSString *_string; +} + +- (instancetype)initWithData:(NSData *)data type:(FIRAuthAPNSTokenType)type { + self = [super init]; + if (self) { + _data = [data copy]; + _type = type; + } + return self; +} + +- (NSString *)string { + if (!_string) { + NSUInteger capacity = _data.length * 2; + NSMutableString *tokenString = [NSMutableString stringWithCapacity:capacity]; + const unsigned char *tokenData = _data.bytes; + for (int idx = 0; idx < _data.length; ++idx) { + [tokenString appendFormat:@"%02X", (int)tokenData[idx]]; + } + _string = tokenString; + } + return _string; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAPNSTokenManager.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAPNSTokenManager.h new file mode 100644 index 0000000..566780f --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAPNSTokenManager.h @@ -0,0 +1,78 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import + +@class FIRAuthAPNSToken; + +NS_ASSUME_NONNULL_BEGIN + +/** @typedef FIRAuthAPNSTokenCallback + @brief The type of block to receive an APNs token. + @param token The APNs token if one is available. + @param error The error happened if any. + @remarks Both `token` and `error` being `nil` means the request timed-out. + */ +typedef void (^FIRAuthAPNSTokenCallback)(FIRAuthAPNSToken *_Nullable token, + NSError *_Nullable error); + +/** @class FIRAuthAPNSTokenManager + @brief A class to manage APNs token in memory. + */ +@interface FIRAuthAPNSTokenManager : NSObject + +/** @property token + @brief The APNs token, if one is available. + @remarks Setting a token with FIRAuthAPNSTokenTypeUnknown will automatically converts it to + a token with the automatically detected type. + */ +@property(nonatomic, strong, nullable) FIRAuthAPNSToken *token; + +/** @property timeout + @brief The timeout for registering for remote notification. + @remarks Only tests should access this property. + */ +@property(nonatomic, assign) NSTimeInterval timeout; + +/** @fn init + @brief Call @c initWithApplication: to initialize an instance of this class. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** @fn initWithApplication:bundle + @brief Initializes the instance. + @param application The @c UIApplication to request the token from. + @return The initialized instance. + */ +- (instancetype)initWithApplication:(UIApplication *)application NS_DESIGNATED_INITIALIZER; + +/** @fn getTokenWithCallback: + @brief Attempts to get the APNs token. + @param callback The block to be called either immediately or in future, either when a token + becomes available, or when timeout occurs, whichever happens earlier. + */ +- (void)getTokenWithCallback:(FIRAuthAPNSTokenCallback)callback; + +/** @fn cancelWithError: + @brief Cancels any pending `getTokenWithCallback:` request. + @param error The error to return. + */ +- (void)cancelWithError:(NSError *)error; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAPNSTokenManager.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAPNSTokenManager.m new file mode 100644 index 0000000..3e8dd90 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAPNSTokenManager.m @@ -0,0 +1,247 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthAPNSTokenManager.h" + +#import +#import + +#import "FIRAuthAPNSToken.h" +#import "FIRAuthGlobalWorkQueue.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @var kRegistrationTimeout + @brief Timeout for registration for remote notification. + @remarks Once we start to handle `application:didFailToRegisterForRemoteNotificationsWithError:` + we probably don't have to use timeout at all. + */ +static const NSTimeInterval kRegistrationTimeout = 5; + +/** @var kLegacyRegistrationTimeout + @brief Timeout for registration for remote notification on iOS 7. + */ +static const NSTimeInterval kLegacyRegistrationTimeout = 30; + +@implementation FIRAuthAPNSTokenManager { + /** @var _application + @brief The @c UIApplication to request the token from. + */ + UIApplication *_application; + + /** @var _pendingCallbacks + @brief The list of all pending callbacks for the APNs token. + */ + NSMutableArray *_pendingCallbacks; +} + +- (instancetype)initWithApplication:(UIApplication *)application { + self = [super init]; + if (self) { + _application = application; + _timeout = [_application respondsToSelector:@selector(registerForRemoteNotifications)] ? + kRegistrationTimeout : kLegacyRegistrationTimeout; + } + return self; +} + +- (void)getTokenWithCallback:(FIRAuthAPNSTokenCallback)callback { + if (_token) { + callback(_token, nil); + return; + } + if (_pendingCallbacks) { + [_pendingCallbacks addObject:callback]; + return; + } + _pendingCallbacks = + [[NSMutableArray alloc] initWithObjects:callback, nil]; + dispatch_async(dispatch_get_main_queue(), ^{ + if ([self->_application respondsToSelector:@selector(registerForRemoteNotifications)]) { + [self->_application registerForRemoteNotifications]; + } else { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wdeprecated-declarations" +#if TARGET_OS_IOS + [self->_application registerForRemoteNotificationTypes:UIRemoteNotificationTypeAlert]; +#endif // TARGET_OS_IOS +#pragma clang diagnostic pop + } + }); + NSArray *applicableCallbacks = _pendingCallbacks; + dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(_timeout * NSEC_PER_SEC)), + FIRAuthGlobalWorkQueue(), ^{ + // Only cancel if the pending callbacks remain the same, i.e., not triggered yet. + if (applicableCallbacks == self->_pendingCallbacks) { + [self callBackWithToken:nil error:nil]; + } + }); +} + +- (void)setToken:(nullable FIRAuthAPNSToken *)token { + if (!token) { + _token = nil; + return; + } + if (token.type == FIRAuthAPNSTokenTypeUnknown) { + static FIRAuthAPNSTokenType detectedTokenType = FIRAuthAPNSTokenTypeUnknown; + if (detectedTokenType == FIRAuthAPNSTokenTypeUnknown) { + detectedTokenType = + [[self class] isProductionApp] ? FIRAuthAPNSTokenTypeProd : FIRAuthAPNSTokenTypeSandbox; + } + token = [[FIRAuthAPNSToken alloc] initWithData:token.data type:detectedTokenType]; + } + _token = token; + [self callBackWithToken:token error:nil]; +} + +- (void)cancelWithError:(NSError *)error { + [self callBackWithToken:nil error:error]; +} + +#pragma mark - Internal methods + +/** @fn callBack + @brief Calls back all pending callbacks with APNs token or error. + @param token The APNs token if one is available. + @param error The error occurred, if any. + */ +- (void)callBackWithToken:(nullable FIRAuthAPNSToken *)token error:(nullable NSError *)error { + if (!_pendingCallbacks) { + return; + } + NSArray *allCallbacks = _pendingCallbacks; + _pendingCallbacks = nil; + for (FIRAuthAPNSTokenCallback callback in allCallbacks) { + callback(token, error); + } +}; + +/** @fn isProductionApp + @brief Whether or not the app has production (versus sandbox) provisioning profile. + @remarks This method is adapted from @c FIRInstanceID . + */ ++ (BOOL)isProductionApp { + const BOOL defaultAppTypeProd = YES; + + NSError *error = nil; + + if ([GULAppEnvironmentUtil isSimulator]) { + FIRLogInfo(kFIRLoggerAuth, @"I-AUT000006", @"Assuming prod APNs token type on simulator."); + return defaultAppTypeProd; + } + + // Apps distributed via AppStore or TestFlight use the Production APNS certificates. + if ([GULAppEnvironmentUtil isFromAppStore]) { + return defaultAppTypeProd; + } + NSString *path = [[[NSBundle mainBundle] bundlePath] + stringByAppendingPathComponent:@"embedded.mobileprovision"]; + if ([GULAppEnvironmentUtil isAppStoreReceiptSandbox] && !path.length) { + // Distributed via TestFlight + return defaultAppTypeProd; + } + + NSMutableData *profileData = [NSMutableData dataWithContentsOfFile:path options:0 error:&error]; + + if (!profileData.length || error) { + FIRLogInfo(kFIRLoggerAuth, @"I-AUT000007", + @"Error while reading embedded mobileprovision %@", error); + return defaultAppTypeProd; + } + + // The "embedded.mobileprovision" sometimes contains characters with value 0, which signals the + // end of a c-string and halts the ASCII parser, or with value > 127, which violates strict 7-bit + // ASCII. Replace any 0s or invalid characters in the input. + uint8_t *profileBytes = (uint8_t *)profileData.bytes; + for (int i = 0; i < profileData.length; i++) { + uint8_t currentByte = profileBytes[i]; + if (!currentByte || currentByte > 127) { + profileBytes[i] = '.'; + } + } + + NSString *embeddedProfile = [[NSString alloc] initWithBytesNoCopy:profileBytes + length:profileData.length + encoding:NSASCIIStringEncoding + freeWhenDone:NO]; + + if (error || !embeddedProfile.length) { + FIRLogInfo(kFIRLoggerAuth, @"I-AUT000008", + @"Error while reading embedded mobileprovision %@", error); + return defaultAppTypeProd; + } + + NSScanner *scanner = [NSScanner scannerWithString:embeddedProfile]; + NSString *plistContents; + if ([scanner scanUpToString:@"" intoString:&plistContents]) { + plistContents = [plistContents stringByAppendingString:@""]; + } + } + + if (!plistContents.length) { + return defaultAppTypeProd; + } + + NSData *data = [plistContents dataUsingEncoding:NSUTF8StringEncoding]; + if (!data.length) { + FIRLogInfo(kFIRLoggerAuth, @"I-AUT000009", + @"Couldn't read plist fetched from embedded mobileprovision"); + return defaultAppTypeProd; + } + + NSError *plistMapError; + id plistData = [NSPropertyListSerialization propertyListWithData:data + options:NSPropertyListImmutable + format:nil + error:&plistMapError]; + if (plistMapError || ![plistData isKindOfClass:[NSDictionary class]]) { + FIRLogInfo(kFIRLoggerAuth, @"I-AUT000010", + @"Error while converting assumed plist to dict %@", + plistMapError.localizedDescription); + return defaultAppTypeProd; + } + NSDictionary *plistMap = (NSDictionary *)plistData; + + if ([plistMap valueForKeyPath:@"ProvisionedDevices"]) { + FIRLogInfo(kFIRLoggerAuth, @"I-AUT000011", + @"Provisioning profile has specifically provisioned devices, " + @"most likely a Dev profile."); + } + + NSString *apsEnvironment = [plistMap valueForKeyPath:@"Entitlements.aps-environment"]; + FIRLogDebug(kFIRLoggerAuth, @"I-AUT000012", + @"APNS Environment in profile: %@", apsEnvironment); + + // No aps-environment in the profile. + if (!apsEnvironment.length) { + FIRLogInfo(kFIRLoggerAuth, @"I-AUT000013", + @"No aps-environment set. If testing on a device APNS is not " + @"correctly configured. Please recheck your provisioning profiles."); + return defaultAppTypeProd; + } + + if ([apsEnvironment isEqualToString:@"development"]) { + return NO; + } + + return defaultAppTypeProd; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppCredential.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppCredential.h new file mode 100644 index 0000000..57fa83a --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppCredential.h @@ -0,0 +1,53 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRAuthAppCredential + @brief A class represents a credential that proves the identity of the app. + */ +@interface FIRAuthAppCredential : NSObject + +/** @property receipt + @brief The server acknowledgement of receiving client's claim of identity. + */ +@property(nonatomic, strong, readonly) NSString *receipt; + +/** @property secret + @brief The secret that the client received from server via a trusted channel, if ever. + */ +@property(nonatomic, strong, readonly, nullable) NSString *secret; + +/** @fn initWithReceipt:secret: + @brief Initializes the instance. + @param receipt The server acknowledgement of receiving client's claim of identity. + @param secret The secret that the client received from server via a trusted channel, if ever. + @return The initialized instance. + */ +- (instancetype)initWithReceipt:(NSString *)receipt secret:(nullable NSString *)secret + NS_DESIGNATED_INITIALIZER; + +/** @fn init + @brief Call @c initWithReceipt:secret: to get an instance of this class. + */ +- (instancetype)init NS_UNAVAILABLE; + + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppCredential.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppCredential.m new file mode 100644 index 0000000..27d4ad2 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppCredential.m @@ -0,0 +1,64 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthAppCredential.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @var kReceiptKey + @brief The key used to encode the receipt property for NSSecureCoding. + */ +static NSString *const kReceiptKey = @"receipt"; + +/** @var kSecretKey + @brief The key used to encode the secret property for NSSecureCoding. + */ +static NSString *const kSecretKey = @"secret"; + +@implementation FIRAuthAppCredential + +- (instancetype)initWithReceipt:(NSString *)receipt secret:(nullable NSString *)secret { + self = [super init]; + if (self) { + _receipt = [receipt copy]; + _secret = [secret copy]; + } + return self; +} + +#pragma mark - NSSecureCoding + ++ (BOOL)supportsSecureCoding { + return YES; +} + +- (nullable instancetype)initWithCoder:(NSCoder *)aDecoder { + NSString *receipt = [aDecoder decodeObjectOfClass:[NSString class] forKey:kReceiptKey]; + if (!receipt) { + return nil; + } + NSString *secret = [aDecoder decodeObjectOfClass:[NSString class] forKey:kSecretKey]; + return [self initWithReceipt:receipt secret:secret]; +} + +- (void)encodeWithCoder:(NSCoder *)aCoder { + [aCoder encodeObject:_receipt forKey:kReceiptKey]; + [aCoder encodeObject:_secret forKey:kSecretKey]; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppCredentialManager.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppCredentialManager.h new file mode 100644 index 0000000..21c1545 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppCredentialManager.h @@ -0,0 +1,85 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FIRAuthAppCredential; +@class FIRAuthKeychain; + +NS_ASSUME_NONNULL_BEGIN + +/** @typedef FIRAuthAppCredentialCallback + @brief The type of block to receive an app crdential. + @param credential The best available app credential at the time. + */ +typedef void (^FIRAuthAppCredentialCallback)(FIRAuthAppCredential *credential); + +/** @class FIRAuthAppCredentialManager + @brief A class to manage app credentials backed by iOS Keychain. + */ +@interface FIRAuthAppCredentialManager : NSObject + +/** @property credential + @brief The full credential (which has a secret) to be used by the app, if one is available. + */ +@property(nonatomic, strong, readonly, nullable) FIRAuthAppCredential *credential; + +/** @property maximumNumberOfPendingReceipts + @brief The maximum (but not necessarily the minimum) number of pending receipts to be kept. + @remarks Only tests should access this property. + */ +@property(nonatomic, assign, readonly) NSUInteger maximumNumberOfPendingReceipts; + +/** @fn init + @brief Call @c initWithKeychain: to initialize an instance of this class. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** @fn initWithKeychain: + @brief Initializes the instance. + @param keychain The iOS Keychain storage to back up the app credential with. + @return The initialized instance. + */ +- (instancetype)initWithKeychain:(FIRAuthKeychain *)keychain NS_DESIGNATED_INITIALIZER; + +/** @fn didStartVerificationWithReceipt:timeout:callback: + @brief Notifies that the app verification process has started. + @param receipt The receipt for verification. + @param timeout The timeout value for how long the callback is waited to be called. + @param callback The block to be called in future either when the verification finishes, or + when timeout occurs, whichever happens earlier. + */ +- (void)didStartVerificationWithReceipt:(NSString *)receipt + timeout:(NSTimeInterval)timeout + callback:(FIRAuthAppCredentialCallback)callback; + +/** @fn canFinishVerificationWithReceipt: + @brief Attempts to finish verification. + @param receipt The receipt to match the original receipt obtained when verification started. + @param secret The secret to complete the verification. + @return Whether or not the receipt matches a pending verification, and finishes verification + if it does. + */ +- (BOOL)canFinishVerificationWithReceipt:(NSString *)receipt secret:(NSString *)secret; + +/** @fn clearCredential + @brief Clears the saved credential, to be used in the case that it is rejected by the server. + */ +- (void)clearCredential; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppCredentialManager.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppCredentialManager.m new file mode 100644 index 0000000..0e251a7 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppCredentialManager.m @@ -0,0 +1,164 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthAppCredentialManager.h" + +#import "FIRAuthAppCredential.h" +#import "FIRAuthGlobalWorkQueue.h" +#import "FIRAuthKeychain.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @var kKeychainDataKey + @brief The keychain key for the data. + */ +static NSString *const kKeychainDataKey = @"app_credentials"; + +/** @var kFullCredentialKey + @brief The data key for the full app credential. + */ +static NSString *const kFullCredentialKey = @"full_credential"; + +/** @var kPendingReceiptsKey + @brief The data key for the array of pending receipts. + */ +static NSString *const kPendingReceiptsKey = @"pending_receipts"; + +/** @var kMaximumNumberOfPendingReceipts + @brief The maximum number of partial credentials kept by this class. + */ +static const NSUInteger kMaximumNumberOfPendingReceipts = 32; + +@implementation FIRAuthAppCredentialManager { + /** @var _keychain + @brief The keychain for app credentials to load from and to save to. + */ + FIRAuthKeychain *_keychain; + + /** @var _pendingReceipts + @brief A list of pending receipts sorted in the order they were recorded. + */ + NSMutableArray *_pendingReceipts; + + /** @var _callbacksByReceipt + @brief A map from pending receipts to callbacks. + */ + NSMutableDictionary *_callbacksByReceipt; +} + +- (instancetype)initWithKeychain:(FIRAuthKeychain *)keychain { + self = [super init]; + if (self) { + _keychain = keychain; + // Load the credentials from keychain if possible. + NSError *error; + NSData *encodedData = [_keychain dataForKey:kKeychainDataKey error:&error]; + if (!error && encodedData) { + NSKeyedUnarchiver *unarchiver = + [[NSKeyedUnarchiver alloc] initForReadingWithData:encodedData]; + FIRAuthAppCredential *credential = + [unarchiver decodeObjectOfClass:[FIRAuthAppCredential class] + forKey:kFullCredentialKey]; + if ([credential isKindOfClass:[FIRAuthAppCredential class]]) { + _credential = credential; + } + NSSet *allowedClasses = + [NSSet setWithObjects:[NSArray class], [NSString class], nil]; + NSArray *pendingReceipts = + [unarchiver decodeObjectOfClasses:allowedClasses forKey:kPendingReceiptsKey]; + if ([pendingReceipts isKindOfClass:[NSArray class]]) { + _pendingReceipts = [pendingReceipts mutableCopy]; + } + } + if (!_pendingReceipts) { + _pendingReceipts = [[NSMutableArray alloc] init]; + } + _callbacksByReceipt = + [[NSMutableDictionary alloc] init]; + } + return self; +} + +- (NSUInteger)maximumNumberOfPendingReceipts { + return kMaximumNumberOfPendingReceipts; +} + +- (void)didStartVerificationWithReceipt:(NSString *)receipt + timeout:(NSTimeInterval)timeout + callback:(FIRAuthAppCredentialCallback)callback { + [_pendingReceipts removeObject:receipt]; + if (_pendingReceipts.count >= kMaximumNumberOfPendingReceipts) { + [_pendingReceipts removeObjectAtIndex:0]; + } + [_pendingReceipts addObject:receipt]; + _callbacksByReceipt[receipt] = callback; + [self saveData]; + dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(timeout * NSEC_PER_SEC)), + FIRAuthGlobalWorkQueue(), ^{ + [self callBackWithReceipt:receipt]; + }); +} + +- (BOOL)canFinishVerificationWithReceipt:(NSString *)receipt secret:(NSString *)secret { + if (![_pendingReceipts containsObject:receipt]) { + return NO; + } + [_pendingReceipts removeObject:receipt]; + _credential = [[FIRAuthAppCredential alloc] initWithReceipt:receipt secret:secret]; + [self saveData]; + [self callBackWithReceipt:receipt]; + return YES; +} + +- (void)clearCredential { + _credential = nil; + [self saveData]; +} + +#pragma mark - Internal methods + +/** @fn saveData + @brief Save the data in memory to the keychain ignoring any errors. + */ +- (void)saveData { + NSMutableData *archiveData = [NSMutableData data]; + NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:archiveData]; + [archiver encodeObject:_credential forKey:kFullCredentialKey]; + [archiver encodeObject:_pendingReceipts forKey:kPendingReceiptsKey]; + [archiver finishEncoding]; + [_keychain setData:archiveData forKey:kKeychainDataKey error:NULL]; +} + +/** @fn callBackWithReceipt: + @brief Calls the saved callback for the specifc receipt. + @param receipt The receipt associated with the callback. + */ +- (void)callBackWithReceipt:(NSString *)receipt { + FIRAuthAppCredentialCallback callback = _callbacksByReceipt[receipt]; + if (!callback) { + return; + } + [_callbacksByReceipt removeObjectForKey:receipt]; + if (_credential) { + callback(_credential); + } else { + callback([[FIRAuthAppCredential alloc] initWithReceipt:receipt secret:nil]); + } +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppDelegateProxy.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppDelegateProxy.h new file mode 100644 index 0000000..ccae93a --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppDelegateProxy.h @@ -0,0 +1,87 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import + +NS_ASSUME_NONNULL_BEGIN + +/** @protocol FIRAuthAppDelegateHandler + @brief The protocol to handle app delegate methods. + */ +@protocol FIRAuthAppDelegateHandler + +/** @fn setAPNSToken: + @brief Sets the APNs device token. + @param token The APNs device token. + */ +- (void)setAPNSToken:(NSData *)token; + +/** @fn handleAPNSTokenError: + @brief Handles APNs device token error. + @param error The APNs device token error. + */ +- (void)handleAPNSTokenError:(NSError *)error; + +/** @fn canHandleNotification: + @brief Checks whether the notification can be handled by the receiver, and handles it if so. + @param notification The notification in question, which will be consumed if returns @c YES. + @return Whether the notification can be (and already has been) handled by the receiver. + */ +- (BOOL)canHandleNotification:(nonnull NSDictionary *)notification; + +/** @fn canHandleURL: + @brief Checks whether the URL can be handled by the receiver, and handles it if so. + @param url The URL in question, which will be consumed if returns @c YES. + @return Whether the URL can be (and already has been) handled by the receiver. + */ +- (BOOL)canHandleURL:(nonnull NSURL *)url; + +@end + +/** @class FIRAuthAppDelegateProxy + @brief A manager for swizzling @c UIApplicationDelegate methods. + */ +@interface FIRAuthAppDelegateProxy : NSObject + +/** @fn initWithApplication + @brief Initialize the instance with the given @c UIApplication. + @returns An initialized instance, or @c nil if a proxy cannot be established. + @remarks This method should only be called from tests if called outside of this class. + */ +- (nullable instancetype)initWithApplication:(nullable UIApplication *)application + NS_DESIGNATED_INITIALIZER; + +/** @fn init + @brief Call @c sharedInstance to get an instance of this class. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** @fn addHandler: + @brief Adds a handler for UIApplicationDelegate methods. + @param handler The handler to be added. + */ +- (void)addHandler:(__weak id)handler; + +/** @fn sharedInstance + @brief Gets the shared instance of this class. + @returns The shared instance of this class. + */ ++ (nullable instancetype)sharedInstance; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppDelegateProxy.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppDelegateProxy.m new file mode 100644 index 0000000..d97fedc --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthAppDelegateProxy.m @@ -0,0 +1,412 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthAppDelegateProxy.h" + +#import + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** @var kProxyEnabledBundleKey + @brief The key in application's bundle plist for whether or not proxy should be enabled. + @remarks This key is a shared constant with Analytics and FCM. + */ +static NSString *const kProxyEnabledBundleKey = @"FirebaseAppDelegateProxyEnabled"; + +/** @fn noop + @brief A function that does nothing. + @remarks This is used as the placeholder for unimplemented UApplicationDelegate methods, + because once we added a method there is no way to remove it from the class. + */ +#if !OBJC_OLD_DISPATCH_PROTOTYPES +static void noop(void) { +} +#else +static id noop(id object, SEL cmd, ...) { + return nil; +} +#endif + +/** @fn isIOS9orLater + @brief Checks whether the iOS version is 9 or later. + @returns Whether the iOS version is 9 or later. + */ +static BOOL isIOS9orLater() { +#if defined(__IPHONE_11_0) && (__IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_11_0) + if (@available(iOS 9.0, *)) { + return YES; + } + return NO; +#else + // UIApplicationOpenURLOptionsAnnotationKey is only available on iOS 9+. + return &UIApplicationOpenURLOptionsAnnotationKey != NULL; +#endif +} + +@implementation FIRAuthAppDelegateProxy { + /** @var _appDelegate + @brief The application delegate whose method is being swizzled. + */ + id _appDelegate; + + /** @var _orginalImplementationsBySelector + @brief A map from selectors to original implementations that have been swizzled. + */ + NSMutableDictionary *_originalImplementationsBySelector; + + /** @var _handlers + @brief The array of weak pointers of `id`. + */ + NSPointerArray *_handlers; +} + +- (nullable instancetype)initWithApplication:(nullable UIApplication *)application { + self = [super init]; + if (self) { + id proxyEnabled = [[NSBundle mainBundle] objectForInfoDictionaryKey:kProxyEnabledBundleKey]; + if ([proxyEnabled isKindOfClass:[NSNumber class]] && !((NSNumber *)proxyEnabled).boolValue) { + return nil; + } + _appDelegate = application.delegate; + if (![_appDelegate conformsToProtocol:@protocol(UIApplicationDelegate)]) { + return nil; + } + _originalImplementationsBySelector = [[NSMutableDictionary alloc] init]; + _handlers = [[NSPointerArray alloc] initWithOptions:NSPointerFunctionsWeakMemory]; + + // Swizzle the methods. + __weak FIRAuthAppDelegateProxy *weakSelf = self; + SEL registerDeviceTokenSelector = + @selector(application:didRegisterForRemoteNotificationsWithDeviceToken:); + [self replaceSelector:registerDeviceTokenSelector + withBlock:^(id object, UIApplication* application, NSData *deviceToken) { + [weakSelf object:object + selector:registerDeviceTokenSelector + application:application + didRegisterForRemoteNotificationsWithDeviceToken:deviceToken]; + }]; + SEL failToRegisterRemoteNotificationSelector = + @selector(application:didFailToRegisterForRemoteNotificationsWithError:); + [self replaceSelector:failToRegisterRemoteNotificationSelector + withBlock:^(id object, UIApplication* application, NSError *error) { + [weakSelf object:object + selector:failToRegisterRemoteNotificationSelector + application:application + didFailToRegisterForRemoteNotificationsWithError:error]; + }]; + SEL receiveNotificationSelector = @selector(application:didReceiveRemoteNotification:); + SEL receiveNotificationWithHandlerSelector = + @selector(application:didReceiveRemoteNotification:fetchCompletionHandler:); + if ([_appDelegate respondsToSelector:receiveNotificationWithHandlerSelector] || + ![_appDelegate respondsToSelector:receiveNotificationSelector]) { + // Replace the modern selector which is available on iOS 7 and above. + [self replaceSelector:receiveNotificationWithHandlerSelector + withBlock:^(id object, UIApplication *application, NSDictionary *notification, + void (^completionHandler)(UIBackgroundFetchResult)) { + [weakSelf object:object + selector:receiveNotificationWithHandlerSelector + application:application + didReceiveRemoteNotification:notification + fetchCompletionHandler:completionHandler]; + }]; + } else { + // Replace the deprecated selector because this is the only one that the client app uses. + [self replaceSelector:receiveNotificationSelector + withBlock:^(id object, UIApplication *application, NSDictionary *notification) { + [weakSelf object:object + selector:receiveNotificationSelector + application:application + didReceiveRemoteNotification:notification]; + }]; + } + SEL openURLOptionsSelector = @selector(application:openURL:options:); + SEL openURLAnnotationSelector = @selector(application:openURL:sourceApplication:annotation:); + SEL handleOpenURLSelector = @selector(application:handleOpenURL:); + if (isIOS9orLater() && + ([_appDelegate respondsToSelector:openURLOptionsSelector] || + (![_appDelegate respondsToSelector:openURLAnnotationSelector] && + ![_appDelegate respondsToSelector:handleOpenURLSelector]))) { + // Replace the modern selector which is avaliable on iOS 9 and above because this is the one + // that the client app uses or the client app doesn't use any of them. + [self replaceSelector:openURLOptionsSelector + withBlock:^BOOL(id object, UIApplication *application, NSURL *url, + NSDictionary *options) { + return [weakSelf object:object + selector:openURLOptionsSelector + application:application + openURL:url + options:options]; + }]; + } else if ([_appDelegate respondsToSelector:openURLAnnotationSelector] || + ![_appDelegate respondsToSelector:handleOpenURLSelector]) { + // Replace the longer form of the deprecated selectors on iOS 8 and below because this is the + // one that the client app uses or the client app doesn't use either of the applicable ones. + [self replaceSelector:openURLAnnotationSelector + withBlock:^(id object, UIApplication *application, NSURL *url, + NSString *sourceApplication, id annotation) { + return [weakSelf object:object + selector:openURLAnnotationSelector + application:application + openURL:url + sourceApplication:sourceApplication + annotation:annotation]; + }]; + } else { + // Replace the shorter form of the deprecated selectors on iOS 8 and below because this is + // the only one that the client app uses. + [self replaceSelector:handleOpenURLSelector + withBlock:^(id object, UIApplication *application, NSURL *url) { + return [weakSelf object:object + selector:handleOpenURLSelector + application:application + handleOpenURL:url]; + }]; + } + // Reset the application delegate to clear the system cache that indicates whether each of the + // openURL: methods is implemented on the application delegate. + application.delegate = nil; + application.delegate = _appDelegate; + } + return self; +} + +- (void)dealloc { + for (NSValue *selector in _originalImplementationsBySelector) { + IMP implementation = _originalImplementationsBySelector[selector].pointerValue; + Method method = class_getInstanceMethod([_appDelegate class], selector.pointerValue); + imp_removeBlock(method_setImplementation(method, implementation)); + } +} + +- (void)addHandler:(__weak id)handler { + @synchronized (_handlers) { + [_handlers addPointer:(__bridge void *)handler]; + } +} + ++ (nullable instancetype)sharedInstance { + static dispatch_once_t onceToken; + static FIRAuthAppDelegateProxy *_Nullable sharedInstance; + // iOS App extensions should not call [UIApplication sharedApplication], even if UIApplication + // responds to it. + static Class applicationClass = nil; + dispatch_once(&onceToken, ^{ + if (![GULAppEnvironmentUtil isAppExtension]) { + Class cls = NSClassFromString(@"UIApplication"); + if (cls && [cls respondsToSelector:NSSelectorFromString(@"sharedApplication")]) { + applicationClass = cls; + } + } + UIApplication *application = [applicationClass sharedApplication]; + sharedInstance = [[self alloc] initWithApplication:application]; + }); + return sharedInstance; +} + +#pragma mark - UIApplicationDelegate proxy methods. + +- (void)object:(id)object + selector:(SEL)selector + application:(UIApplication *)application + didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken { + if (object == _appDelegate) { + for (id handler in [self handlers]) { + [handler setAPNSToken:deviceToken]; + } + } + IMP originalImplementation = [self originalImplementationForSelector:selector]; + if (originalImplementation && originalImplementation != &noop) { + typedef void (*Implmentation)(id, SEL, UIApplication*, NSData *); + ((Implmentation)originalImplementation)(object, selector, application, deviceToken); + } +} + +- (void)object:(id)object + selector:(SEL)selector + application:(UIApplication *)application + didFailToRegisterForRemoteNotificationsWithError:(NSError *)error { + if (object == _appDelegate) { + for (id handler in [self handlers]) { + [handler handleAPNSTokenError:error]; + } + } + IMP originalImplementation = [self originalImplementationForSelector:selector]; + if (originalImplementation && originalImplementation != &noop) { + typedef void (*Implmentation)(id, SEL, UIApplication *, NSError *); + ((Implmentation)originalImplementation)(object, selector, application, error); + } +} + +- (void)object:(id)object + selector:(SEL)selector + application:(UIApplication *)application + didReceiveRemoteNotification:(NSDictionary *)notification + fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler { + if (object == _appDelegate) { + for (id handler in [self handlers]) { + if ([handler canHandleNotification:notification]) { + completionHandler(UIBackgroundFetchResultNoData); + return; + }; + } + } + IMP originalImplementation = [self originalImplementationForSelector:selector]; + if (originalImplementation && originalImplementation != &noop) { + typedef void (*Implmentation)(id, SEL, UIApplication*, NSDictionary *, + void (^)(UIBackgroundFetchResult)); + ((Implmentation)originalImplementation)(object, selector, application, notification, + completionHandler); + } +} + +- (void)object:(id)object + selector:(SEL)selector + application:(UIApplication *)application + didReceiveRemoteNotification:(NSDictionary *)notification { + if (object == _appDelegate) { + for (id handler in [self handlers]) { + if ([handler canHandleNotification:notification]) { + return; + }; + } + } + IMP originalImplementation = [self originalImplementationForSelector:selector]; + if (originalImplementation && originalImplementation != &noop) { + typedef void (*Implmentation)(id, SEL, UIApplication*, NSDictionary *); + ((Implmentation)originalImplementation)(object, selector, application, notification); + } +} + +- (BOOL)object:(id)object + selector:(SEL)selector + application:(UIApplication *)application + openURL:(NSURL *)url + options:(NSDictionary *)options { + if (object == _appDelegate && [self delegateCanHandleURL:url]) { + return YES; + } + IMP originalImplementation = [self originalImplementationForSelector:selector]; + if (originalImplementation && originalImplementation != &noop) { + typedef BOOL (*Implmentation)(id, SEL, UIApplication*, NSURL *, NSDictionary *); + return ((Implmentation)originalImplementation)(object, selector, application, url, options); + } + return NO; +} + +- (BOOL)object:(id)object + selector:(SEL)selector + application:(UIApplication *)application + openURL:(NSURL *)url + sourceApplication:(NSString *)sourceApplication + annotation:(id)annotation { + if (object == _appDelegate && [self delegateCanHandleURL:url]) { + return YES; + } + IMP originalImplementation = [self originalImplementationForSelector:selector]; + if (originalImplementation && originalImplementation != &noop) { + typedef BOOL (*Implmentation)(id, SEL, UIApplication*, NSURL *, NSString *, id); + return ((Implmentation)originalImplementation)(object, selector, application, url, + sourceApplication, annotation); + } + return NO; +} + +- (BOOL)object:(id)object + selector:(SEL)selector + application:(UIApplication *)application + handleOpenURL:(NSURL *)url { + if (object == _appDelegate && [self delegateCanHandleURL:url]) { + return YES; + } + IMP originalImplementation = [self originalImplementationForSelector:selector]; + if (originalImplementation && originalImplementation != &noop) { + typedef BOOL (*Implmentation)(id, SEL, UIApplication*, NSURL *); + return ((Implmentation)originalImplementation)(object, selector, application, url); + } + return NO; +} + +#pragma mark - Internal Methods + +/** @fn delegateCanHandleURL: + @brief Checks for whether any of the delegates can handle the URL. + @param url The URL in question. + @return Whether any of the delegate can handle the URL. + */ +- (BOOL)delegateCanHandleURL:(NSURL *)url { + for (id handler in [self handlers]) { + if ([handler canHandleURL:url]) { + return YES; + }; + } + return NO; +} + +/** @fn handlers + @brief Gets the list of handlers from `_handlers` safely. + */ +- (NSArray> *)handlers { + @synchronized (_handlers) { + NSMutableArray> *liveHandlers = + [[NSMutableArray> alloc] initWithCapacity:_handlers.count]; + for (__weak id handler in _handlers) { + if (handler) { + [liveHandlers addObject:handler]; + } + } + if (liveHandlers.count < _handlers.count) { + [_handlers compact]; + } + return liveHandlers; + } +} + +/** @fn replaceSelector:withBlock: + @brief replaces the implementation for a method of `_appDelegate` specified by a selector. + @param selector The selector for the method. + @param block The block as the new implementation of the method. + */ +- (void)replaceSelector:(SEL)selector withBlock:(id)block { + Method originalMethod = class_getInstanceMethod([_appDelegate class], selector); + IMP newImplementation = imp_implementationWithBlock(block); + IMP originalImplementation; + if (originalMethod) { + originalImplementation = method_setImplementation(originalMethod, newImplementation) ?: &noop; + } else { + // The original method was not implemented in the class, add it with the new implementation. + struct objc_method_description methodDescription = + protocol_getMethodDescription(@protocol(UIApplicationDelegate), selector, NO, YES); + class_addMethod([_appDelegate class], selector, newImplementation, methodDescription.types); + originalImplementation = &noop; + } + _originalImplementationsBySelector[[NSValue valueWithPointer:selector]] = + [NSValue valueWithPointer:originalImplementation]; +} + +/** @fn originalImplementationForSelector: + @brief Gets the original implementation for the given selector. + @param selector The selector for the method that has been replaced. + @return The original implementation if there was one. + */ +- (IMP)originalImplementationForSelector:(SEL)selector { + return _originalImplementationsBySelector[[NSValue valueWithPointer:selector]].pointerValue; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthCredential.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthCredential.m new file mode 100644 index 0000000..54cb15c --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthCredential.m @@ -0,0 +1,42 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthCredential_Internal.h" + +@implementation FIRAuthCredential + +- (instancetype)init { + @throw [NSException exceptionWithName:@"Attempt to call unavailable initializer." + reason:@"This class is an abstract base class. It's init method " + "should not be called directly." + userInfo:nil]; +} + +- (nullable instancetype)initWithProvider:(NSString *)provider { + self = [super init]; + if (self) { + _provider = [provider copy]; + } + return self; +} + +- (void)prepareVerifyAssertionRequest:(FIRVerifyAssertionRequest *)request { + @throw [NSException exceptionWithName:@"Attempt to call virtual method." + reason:@"This method must be overridden by a subclass." + userInfo:nil]; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthCredential_Internal.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthCredential_Internal.h new file mode 100644 index 0000000..e060cda --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthCredential_Internal.h @@ -0,0 +1,41 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthCredential.h" + +@class FIRVerifyAssertionRequest; + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRAuthCredential () + +/** @fn initWithProvider: + @brief Designated initializer. + @remarks This is the designated initializer for internal/friend subclasses. + @param provider The provider name. + */ +- (nullable instancetype)initWithProvider:(NSString *)provider NS_DESIGNATED_INITIALIZER; + +/** @fn prepareVerifyAssertionRequest: + @brief Called immediately before a request to the verifyAssertion endpoint is made. Implementers + should update the passed request instance with their credentials. + @param request The request to be updated with credentials. + */ +- (void)prepareVerifyAssertionRequest:(FIRVerifyAssertionRequest *)request; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDataResult.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDataResult.m new file mode 100644 index 0000000..9d8e598 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDataResult.m @@ -0,0 +1,69 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthDataResult_Internal.h" + +#import "FIRAdditionalUserInfo.h" +#import "FIRUser.h" + +NS_ASSUME_NONNULL_BEGIN + +@implementation FIRAuthDataResult + +/** @var kAdditionalUserInfoCodingKey + @brief The key used to encode the additionalUserInfo property for NSSecureCoding. + */ +static NSString *const kAdditionalUserInfoCodingKey = @"additionalUserInfo"; + +/** @var kUserCodingKey + @brief The key used to encode the user property for NSSecureCoding. + */ +static NSString *const kUserCodingKey = @"user"; + +- (nullable instancetype)initWithUser:(nullable FIRUser *)user + additionalUserInfo:(nullable FIRAdditionalUserInfo *)additionalUserInfo { + self = [super init]; + if (self) { + _additionalUserInfo = additionalUserInfo; + _user = user; + } + return self; +} + +#pragma mark - NSSecureCoding + ++ (BOOL)supportsSecureCoding { + return YES; +} + +- (nullable instancetype)initWithCoder:(NSCoder *)aDecoder { + FIRUser *user = + [aDecoder decodeObjectOfClass:[FIRUser class] forKey:kUserCodingKey]; + FIRAdditionalUserInfo *additionalUserInfo = + [aDecoder decodeObjectOfClass:[FIRAdditionalUserInfo class] + forKey:kAdditionalUserInfoCodingKey]; + + return [self initWithUser:user additionalUserInfo:additionalUserInfo]; +} + +- (void)encodeWithCoder:(NSCoder *)aCoder { + [aCoder encodeObject:_user forKey:kUserCodingKey]; + [aCoder encodeObject:_additionalUserInfo forKey:kAdditionalUserInfoCodingKey]; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDataResult_Internal.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDataResult_Internal.h new file mode 100644 index 0000000..b90b5fd --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDataResult_Internal.h @@ -0,0 +1,30 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthDataResult.h" + +@interface FIRAuthDataResult () + +/** @fn initWithUser:additionalUserInfo: + @brief Designated initializer. + @param user The signed in user reference. + @param additionalUserInfo The additional user info if available. + */ +- (nullable instancetype)initWithUser:(nullable FIRUser *)user + additionalUserInfo:(nullable FIRAdditionalUserInfo *)additionalUserInfo + NS_DESIGNATED_INITIALIZER; + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDefaultUIDelegate.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDefaultUIDelegate.h new file mode 100644 index 0000000..03cadf7 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDefaultUIDelegate.h @@ -0,0 +1,43 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthUIDelegate.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRAuthDefaultUIDelegate + @brief Class responsible for providing a default FIRAuthUIDelegte. + @remarks This class should be used in the case that a UIDelegate was expected and necessary to + continue a given flow, but none was provided. + */ +@interface FIRAuthDefaultUIDelegate : NSObject + +/** @fn defaultUIDelegate + @brief Unavailable. Please use @c +defaultUIDelegate: + */ +- (instancetype)init NS_UNAVAILABLE; + +/** @fn defaultUIDelegate + @brief Returns a default FIRAuthUIDelegate object. + @return The default FIRAuthUIDelegate object. + */ ++ (id)defaultUIDelegate; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDefaultUIDelegate.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDefaultUIDelegate.m new file mode 100644 index 0000000..d5cd648 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDefaultUIDelegate.m @@ -0,0 +1,92 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthDefaultUIDelegate.h" + +#import + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRAuthDefaultUIDelegate () + +/** @fn initWithViewController: + @brief Initializes the instance with a view controller. + @param viewController The view controller as the presenting view controller in @c + FIRAuthUIDelegate. + @return The initialized instance. + */ +- (instancetype)initWithViewController:(nullable UIViewController *)viewController NS_DESIGNATED_INITIALIZER; + +@end + +@implementation FIRAuthDefaultUIDelegate { + /** @var _viewController + @brief The presenting view controller. + */ + UIViewController *_viewController; +} + +- (instancetype)initWithViewController:(nullable UIViewController *)viewController { + self = [super init]; + if (self) { + _viewController = viewController; + } + return self; +} + +- (void)presentViewController:(UIViewController *)viewControllerToPresent + animated:(BOOL)flag + completion:(nullable void (^)(void))completion { + [_viewController presentViewController:viewControllerToPresent + animated:flag + completion:completion]; +} + +- (void)dismissViewControllerAnimated:(BOOL)flag completion:(nullable void (^)(void))completion { + [_viewController dismissViewControllerAnimated:flag completion:completion]; +} + ++ (id)defaultUIDelegate { + // iOS App extensions should not call [UIApplication sharedApplication], even if UIApplication + // responds to it. + static Class applicationClass = nil; + if (![GULAppEnvironmentUtil isAppExtension]) { + Class cls = NSClassFromString(@"UIApplication"); + if (cls && [cls respondsToSelector:NSSelectorFromString(@"sharedApplication")]) { + applicationClass = cls; + } + } + UIApplication *application = [applicationClass sharedApplication]; + UIViewController *topViewController = application.keyWindow.rootViewController; + while (true){ + if (topViewController.presentedViewController) { + topViewController = topViewController.presentedViewController; + } else if ([topViewController isKindOfClass:[UINavigationController class]]) { + UINavigationController *nav = (UINavigationController *)topViewController; + topViewController = nav.topViewController; + } else if ([topViewController isKindOfClass:[UITabBarController class]]) { + UITabBarController *tab = (UITabBarController *)topViewController; + topViewController = tab.selectedViewController; + } else { + break; + } + } + return [[FIRAuthDefaultUIDelegate alloc] initWithViewController:topViewController]; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDispatcher.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDispatcher.h new file mode 100644 index 0000000..f8ddca5 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDispatcher.h @@ -0,0 +1,63 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** @typedef FIRAuthDispatcherImplBlock + @brief The type of block which can be set as the implementation for @c + dispatchAfterDelay:queue:callback: . + + @param delay The delay in seconds after which the task will be scheduled to execute. + @param queue The dispatch queue on which the task will be submitted. + @param task The task (block) to be scheduled for future execution. + */ +typedef void(^FIRAuthDispatcherImplBlock)(NSTimeInterval delay, + dispatch_queue_t queue, + void (^task)(void)); + +/** @class FIRAuthDispatchAfter + @brief A utility class used to facilitate scheduling tasks to be executed in the future. + */ +@interface FIRAuthDispatcher : NSObject + +/** @property dispatchAfterImplementation + @brief Allows custom implementation of dispatchAfterDelay:queue:callback:. + @remarks Set to nil to restore default implementation. + */ +@property(nonatomic, nullable, copy) FIRAuthDispatcherImplBlock dispatchAfterImplementation; + +/** @fn dispatchAfterDelay:queue:callback: + @brief Schedules task in the future after a specified delay. + + @param delay The delay in seconds after which the task will be scheduled to execute. + @param queue The dispatch queue on which the task will be submitted. + @param task The task (block) to be scheduled for future execution. + */ + - (void)dispatchAfterDelay:(NSTimeInterval)delay + queue:(dispatch_queue_t)queue + task:(void (^)(void))task; + +/** @fn sharedInstance + @brief Gets the shared instance of this class. + @returns The shared instance of this clss + */ ++ (instancetype)sharedInstance; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDispatcher.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDispatcher.m new file mode 100644 index 0000000..78ed2e3 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthDispatcher.m @@ -0,0 +1,46 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthDispatcher.h" + +NS_ASSUME_NONNULL_BEGIN + +@implementation FIRAuthDispatcher + +@synthesize dispatchAfterImplementation = _dispatchAfterImplementation; + ++ (instancetype)sharedInstance { + static dispatch_once_t onceToken; + static FIRAuthDispatcher *sharedInstance; + dispatch_once(&onceToken, ^{ + sharedInstance = [[self alloc] init]; + }); + return sharedInstance; +} + +- (void)dispatchAfterDelay:(NSTimeInterval)delay + queue:(dispatch_queue_t)queue + task:(void (^)(void))task { + if (_dispatchAfterImplementation) { + _dispatchAfterImplementation(delay, queue, task); + return; + } + dispatch_after(dispatch_time(DISPATCH_TIME_NOW, delay * NSEC_PER_SEC), queue, task); +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthErrorUtils.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthErrorUtils.h new file mode 100644 index 0000000..c21c2b8 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthErrorUtils.h @@ -0,0 +1,517 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FIRPhoneAuthCredential; + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRAuthErrorUtils + @brief Utility class used to construct @c NSError instances. + */ +@interface FIRAuthErrorUtils : NSObject + +/** @fn RPCRequestEncodingErrorWithUnderlyingError + @brief Constructs an @c NSError with the @c FIRAuthInternalErrorCodeRPCRequestEncodingError + code and a populated @c NSUnderlyingErrorKey in the @c NSError.userInfo dictionary. + @param underlyingError The value of the @c NSUnderlyingErrorKey key. + @remarks This error is used when an @c FIRAuthRPCRequest.unencodedHTTPRequestBodyWithError: + invocation returns an error. The error returned is wrapped in this internal error code. + */ ++ (NSError *)RPCRequestEncodingErrorWithUnderlyingError:(NSError *)underlyingError; + +/** @fn JSONSerializationErrorForUnencodableType + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeJSONSerializationError code. + @remarks This error is used when an @c NSJSONSerialization.isValidJSONObject: check fails, not + for when an error is returned from @c NSJSONSerialization.dataWithJSONObject:options:error:. + */ ++ (NSError *)JSONSerializationErrorForUnencodableType; + +/** @fn JSONSerializationErrorWithUnderlyingError: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeJSONSerializationError code, and the + @c underlyingError as the @c NSUnderlyingErrorKey value in the @c NSError.userInfo + dictionary. + @param underlyingError The value of the @c NSUnderlyingErrorKey key. + @remarks This error is used when an invocation of + @c NSJSONSerialization.dataWithJSONObject:options:error: returns an error. + */ ++ (NSError *)JSONSerializationErrorWithUnderlyingError:(NSError *)underlyingError; + +/** @fn networkErrorWithUnderlyingError: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeNetworkError code, and the + @c underlyingError as the @c NSUnderlyingErrorKey value in the @c NSError.userInfo + dictionary. + @param underlyingError The value of the @c NSUnderlyingErrorKey key. Should be the error from + GTM. + @remarks This error is used when a network request results in an error, and no body data was + returned. + */ ++ (NSError *)networkErrorWithUnderlyingError:(NSError *)underlyingError; + +/** @fn unexpectedErrorResponseWithUnderlyingError: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeNetworkError code, and the + @c underlyingError as the @c NSUnderlyingErrorKey value. + @param data The value of the @c FIRAuthErrorUserInfoDataKey key in the @c NSError.userInfo + dictionary. + @param underlyingError The value of the @c NSUnderlyingErrorKey key in the @c NSError.userInfo + dictionary. + @remarks This error is used when a network request results in an error, and unserializable body + data was returned. + */ ++ (NSError *)unexpectedErrorResponseWithData:(NSData *)data + underlyingError:(NSError *)underlyingError; + +/** @fn unexpectedErrorResponseWithDeserializedResponse: + @brief Constructs an @c NSError with the @c FIRAuthInternalErrorCodeUnexpectedErrorResponse + code, and a populated @c FIRAuthErrorUserInfoDeserializedResponseKey key in the + @c NSError.userInfo dictionary. + @param deserializedResponse The value of the @c FIRAuthErrorUserInfoDeserializedResponseKey key. + @remarks This error is used when a network request results in an error, and the body data was + deserializable as JSON, but couldn't be decoded as an error. + */ ++ (NSError *)unexpectedErrorResponseWithDeserializedResponse:(id)deserializedResponse; + +/** @fn malformedJWTErrorWithToken:underlyingError: + @brief Constructs an @c NSError with the code set to @c FIRAuthErrorCodeMalformedJWT and + populates the userInfo dictionary with an error message, the bad token, and an underlying + error that may have occurred when parsing. + @param token The token that failed to parse. + @param underlyingError The error that caused this error. If this parameter is nil, the + NSUnderlyingErrorKey value will not be set. + @remarks This error is returned when JWT parsing fails. + @returns An @c FIRAuthErrorCodeMalformedJWT error wrapping an underlying error, if available. + */ ++ (NSError *)malformedJWTErrorWithToken:(NSString *)token + underlyingError:(NSError *_Nullable)underlyingError; + +/** @fn unexpectedResponseWithData:underlyingError: + @brief Constructs an @c NSError with the @c FIRAuthInternalErrorCodeUnexpectedResponse + code, and a populated @c FIRAuthErrorUserInfoDataKey key in the @c NSError.userInfo + dictionary. + @param data The value of the @c FIRAuthErrorUserInfoDataKey key in the @c NSError.userInfo + dictionary. + @param underlyingError The value of the @c NSUnderlyingErrorKey key in the @c NSError.userInfo + dictionary. + @remarks This error is used when a network request is apparently successful, but the body data + couldn't be deserialized as JSON. + */ ++ (NSError *)unexpectedResponseWithData:(NSData *)data + underlyingError:(NSError *)underlyingError;; + +/** @fn unexpectedResponseWithDeserializedResponse: + @brief Constructs an @c NSError with the @c FIRAuthInternalErrorCodeUnexpectedResponse + code, and a populated @c FIRAuthErrorUserInfoDeserializedResponseKey key in the + @c NSError.userInfo dictionary. + @param deserializedResponse The value of the @c FIRAuthErrorUserInfoDeserializedResponseKey key. + @remarks This error is used when a network request is apparently successful, the body data was + successfully deserialized as JSON, but the JSON wasn't a dictionary. + */ ++ (NSError *)unexpectedResponseWithDeserializedResponse:(id)deserializedResponse; + +/** @fn unexpectedResponseWithDeserializedResponse:underlyingError: + @brief Constructs an @c NSError with the @c FIRAuthInternalErrorCodeUnexpectedResponse + code, and populated @c FIRAuthErrorUserInfoDeserializedResponseKey and + @c NSUnderlyingErrorKey keys in the @c NSError.userInfo dictionary. + @param deserializedResponse The value of the @c FIRAuthErrorUserInfoDeserializedResponseKey key. + @param underlyingError The value of the @c NSUnderlyingErrorKey key. + @remarks This error is used when a network request was apparently successful, the body data was + successfully deserialized as JSON, but the data type of the response was unexpected. + */ ++ (NSError *)unexpectedResponseWithDeserializedResponse:(nullable id)deserializedResponse + underlyingError:(NSError *)underlyingError; + +/** @fn RPCResponseDecodingErrorWithDeserializedResponse:underlyingError: + @brief Constructs an @c NSError with the @c FIRAuthInternalErrorCodeRPCResponseDecodingError + code, and populated @c FIRAuthErrorUserInfoDeserializedResponseKey and + @c NSUnderlyingErrorKey keys in the @c NSError.userInfo dictionary. + @param deserializedResponse The value of the @c FIRAuthErrorUserInfoDeserializedResponseKey key. + @param underlyingError The value of the @c NSUnderlyingErrorKey key. + @remarks This error is used when an invocation of @c FIRAuthRPCResponse.setWithDictionary:error: + resulted in an error. + */ ++ (NSError *)RPCResponseDecodingErrorWithDeserializedResponse:(id)deserializedResponse + underlyingError:(NSError *)underlyingError; + +/** @fn emailAlreadyInUseErrorWithEmail: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeEmailExists code. + @param email The email address that is already in use. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)emailAlreadyInUseErrorWithEmail:(nullable NSString *)email; + +/** @fn userDisabledErrorWithMessageWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeUserDisabled code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)userDisabledErrorWithMessage:(nullable NSString *)message; + +/** @fn wrongPasswordErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeWrongPassword code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)wrongPasswordErrorWithMessage:(nullable NSString *)message; + +/** @fn tooManyRequestsErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeTooManyRequests Code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)tooManyRequestsErrorWithMessage:(nullable NSString *)message; + +/** @fn invalidCustomTokenErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeInvalidCustomToken code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)invalidCustomTokenErrorWithMessage:(nullable NSString *)message; + +/** @fn customTokenMistmatchErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeCustomTokenMismatch code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)customTokenMistmatchErrorWithMessage:(nullable NSString *)message; + +/** @fn invalidCredentialErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeInvalidCredential code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)invalidCredentialErrorWithMessage:(nullable NSString *)message; + +/** @fn requiresRecentLoginError + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeRequiresRecentLogin code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)requiresRecentLoginErrorWithMessage:(nullable NSString *)message; + +/** @fn invalidUserTokenErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeInvalidUserToken code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)invalidUserTokenErrorWithMessage:(nullable NSString *)message; + +/** @fn invalidEmailErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeInvalidEmail code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)invalidEmailErrorWithMessage:(nullable NSString *)message; + +/** @fn accountExistsWithDifferentCredentialErrorWithEmail: + @brief Constructs an @c NSError with the @c FIRAuthErrorAccountExistsWithDifferentCredential + code. + @param Email The email address that is already associated with an existing account + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)accountExistsWithDifferentCredentialErrorWithEmail:(nullable NSString *)Email; + +/** @fn providerAlreadyLinkedErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeProviderAlreadyLinked code. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)providerAlreadyLinkedError; + +/** @fn noSuchProviderError + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeNoSuchProvider code. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)noSuchProviderError; + +/** @fn userTokenExpiredErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeUserTokenExpired code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)userTokenExpiredErrorWithMessage:(nullable NSString *)message; + +/** @fn userNotFoundErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeUserNotFound code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)userNotFoundErrorWithMessage:(nullable NSString *)message; + +/** @fn invalidLocalAPIKeyErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeInvalidAPIKey code. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)invalidAPIKeyError; + +/** @fn userMismatchError + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeUserMismatch code. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)userMismatchError; + +/** @fn credentialAlreadyInUseErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeCredentialAlreadyInUse code. + @param message Error message from the backend, if any. + @param credential Auth credential to be added to the Error User Info dictionary. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)credentialAlreadyInUseErrorWithMessage:(nullable NSString *)message + credential:(nullable FIRPhoneAuthCredential *)credential; + +/** @fn operationNotAllowedErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeOperationNotAllowed code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)operationNotAllowedErrorWithMessage:(nullable NSString *)message; + +/** @fn weakPasswordErrorWithServerResponseReason: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeWeakPassword code. + @param serverResponseReason A more detailed explanation string from server response. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)weakPasswordErrorWithServerResponseReason:(nullable NSString *)serverResponseReason; + +/** @fn appNotAuthorizedError + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeAppNotAuthorized code. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)appNotAuthorizedError; + +/** @fn expiredActionCodeErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeExpiredActionCode code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)expiredActionCodeErrorWithMessage:(nullable NSString *)message; + +/** @fn invalidActionCodeErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeInvalidActionCode code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)invalidActionCodeErrorWithMessage:(nullable NSString *)message; + +/** @fn invalidMessagePayloadError: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeInvalidMessagePayload code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)invalidMessagePayloadErrorWithMessage:(nullable NSString *)message; + +/** @fn invalidSenderErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeInvalidSender code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)invalidSenderErrorWithMessage:(nullable NSString *)message; + +/** @fn invalidRecipientEmailError: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeInvalidRecipientEmail code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)invalidRecipientEmailErrorWithMessage:(nullable NSString *)message; + +/** @fn missingIosBundleIDErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeMissingIosBundleID code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)missingIosBundleIDErrorWithMessage:(nullable NSString *)message; + +/** @fn missingAndroidPackageNameErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeMissingAndroidPackageName code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)missingAndroidPackageNameErrorWithMessage:(nullable NSString *)message; + +/** @fn unauthorizedDomainErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeUnauthorizedDomain code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)unauthorizedDomainErrorWithMessage:(nullable NSString *)message; + +/** @fn invalidContinueURIErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeInvalidContinueURI code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)invalidContinueURIErrorWithMessage:(nullable NSString *)message; + +/** @fn missingContinueURIErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeMissingContinueURI code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)missingContinueURIErrorWithMessage:(nullable NSString *)message; + +/** @fn missingEmailErrorWithMessage + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeMissingEmail code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)missingEmailErrorWithMessage:(nullable NSString *)message; + +/** @fn missingPhoneNumberErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeMissingPhoneNumber code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)missingPhoneNumberErrorWithMessage:(nullable NSString *)message; + +/** @fn invalidPhoneNumberErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeInvalidPhoneNumber code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)invalidPhoneNumberErrorWithMessage:(nullable NSString *)message; + +/** @fn missingVerificationCodeErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeMissingVerificationCode code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)missingVerificationCodeErrorWithMessage:(nullable NSString *)message; + +/** @fn invalidVerificationCodeErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeInvalidVerificationCode code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)invalidVerificationCodeErrorWithMessage:(nullable NSString *)message; + +/** @fn missingVerificationIDErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeMissingVerificationID code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)missingVerificationIDErrorWithMessage:(nullable NSString *)message; + +/** @fn invalidVerificationIDErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeInvalidVerificationID code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)invalidVerificationIDErrorWithMessage:(nullable NSString *)message; + +/** @fn sessionExpiredErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeSessionExpired code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)sessionExpiredErrorWithMessage:(nullable NSString *)message; + +/** @fn missingAppCredentialWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorMissingCredential code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)missingAppCredentialWithMessage:(nullable NSString *)message; + +/** @fn invalidAppCredentialWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorInvalidCredential code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)invalidAppCredentialWithMessage:(nullable NSString *)message; + +/** @fn quotaExceededErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeQuotaExceeded code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)quotaExceededErrorWithMessage:(nullable NSString *)message; + +/** @fn missingAppTokenErrorWithUnderlyingError + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeMissingAppToken code. + @param underlyingError The underlying error, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)missingAppTokenErrorWithUnderlyingError:(nullable NSError *)underlyingError; + +/** @fn notificationNotForwardedError + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeNotificationNotForwarded code. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)notificationNotForwardedError; + +/** @fn appNotVerifiedErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeAppNotVerified code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)appNotVerifiedErrorWithMessage:(nullable NSString *)message; + +/** @fn captchaCheckFailedErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCaptchaCheckFailed code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)captchaCheckFailedErrorWithMessage:(nullable NSString *)message; + +/** @fn webContextAlreadyPresentedErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeWebContextAlreadyPresented code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)webContextAlreadyPresentedErrorWithMessage:(nullable NSString *)message; + +/** @fn webContextCancelledErrorWithMessage: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeWebContextCancelled code. + @param message Error message from the backend, if any. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)webContextCancelledErrorWithMessage:(nullable NSString *)message; + +/** @fn appVerificationUserInteractionFailureWithReason: + @brief Constructs an @c NSError with the @c + FIRAuthErrorCodeAppVerificationUserInteractionFailure code. + @param reason Reason for error, returned via URL response. + @return The NSError instance associated with the given FIRAuthError. + */ ++ (NSError *)appVerificationUserInteractionFailureWithReason:(NSString *)reason; + +/** @fn URLResponseErrorWithCode:message: + @brief Constructs an @c NSError with the code and message provided. + @param message Error message from the backend, if any. + @return The nullable NSError instance associated with the given error message, if one is found. + */ ++ (nullable NSError *)URLResponseErrorWithCode:(NSString *)code message:(nullable NSString *)message; + +/** @fn nullUserErrorWithMessage: + @brief Constructs an @c NSError with the code and message provided. + @param message Error message from the backend, if any. + @return The nullable NSError instance associated with the given error message, if one is found. + */ ++ (NSError *)nullUserErrorWithMessage:(nullable NSString *)message; + +/** @fn keychainErrorWithFunction:status: + @brief Constructs an @c NSError with the @c FIRAuthErrorCodeKeychainError code. + @param keychainFunction The keychain function which was invoked and yielded an unexpected + response. The @c NSLocalizedFailureReasonErrorKey field in the @c NSError.userInfo + dictionary will contain a string partially comprised of this value. + @param status The response status from the invoked keychain function. The + @c NSLocalizedFailureReasonErrorKey field in the @c NSError.userInfo dictionary will contain + a string partially comprised of this value. + */ ++ (NSError *)keychainErrorWithFunction:(NSString *)keychainFunction status:(OSStatus)status; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthErrorUtils.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthErrorUtils.m new file mode 100644 index 0000000..5b6f29e --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthErrorUtils.m @@ -0,0 +1,1031 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthErrorUtils.h" + +#import "FIRAuthCredential.h" +#import "FIRAuthInternalErrors.h" + +NS_ASSUME_NONNULL_BEGIN + +NSString *const FIRAuthErrorDomain = @"FIRAuthErrorDomain"; + +NSString *const FIRAuthInternalErrorDomain = @"FIRAuthInternalErrorDomain"; + +NSString *const FIRAuthErrorUserInfoDeserializedResponseKey = + @"FIRAuthErrorUserInfoDeserializedResponseKey"; + +NSString *const FIRAuthErrorUserInfoDataKey = @"FIRAuthErrorUserInfoDataKey"; + +NSString *const FIRAuthErrorUserInfoEmailKey = @"FIRAuthErrorUserInfoEmailKey"; + +NSString *const FIRAuthErrorNameKey = @"error_name"; + +NSString *const FIRAuthUpdatedCredentialKey = @"FIRAuthUpdatedCredentialKey"; + +/** @var kServerErrorDetailMarker + @brief This marker indicates that the server error message contains a detail error message which + should be used instead of the hardcoded client error message. + */ +static NSString *const kServerErrorDetailMarker = @" : "; + +#pragma mark - URL response error codes + +/** @var kURLResponseErrorCodeInvalidClientID + @brief Error code that indicates that the client ID provided was invalid. + */ +static NSString *const kURLResponseErrorCodeInvalidClientID = @"auth/invalid-oauth-client-id"; + +/** @var kURLResponseErrorCodeNetworkRequestFailed + @brief Error code that indicates that a network request within the SFSafariViewController or + UIWebView failed. + */ +static NSString *const kURLResponseErrorCodeNetworkRequestFailed = @"auth/network-request-failed"; + +/** @var kURLResponseErrorCodeInternalError + @brief Error code that indicates that an internal error occurred within the + SFSafariViewController or UIWebView failed. + */ +static NSString *const kURLResponseErrorCodeInternalError = @"auth/internal-error"; + +#pragma mark - Standard Error Messages + +/** @var kFIRAuthErrorMessageInvalidCustomToken + @brief Message for @c FIRAuthErrorCodeInvalidCustomToken error code. + */ +static NSString *const kFIRAuthErrorMessageInvalidCustomToken = @"The custom token format is " + "incorrect. Please check the documentation."; + +/** @var kFIRAuthErrorMessageCustomTokenMismatch + @brief Message for @c FIRAuthErrorCodeCustomTokenMismatch error code. + */ +static NSString *const kFIRAuthErrorMessageCustomTokenMismatch = @"The custom token corresponds to " + "a different audience."; + +/** @var kFIRAuthErrorMessageInvalidEmail + @brief Message for @c FIRAuthErrorCodeInvalidEmail error code. + */ +static NSString *const kFIRAuthErrorMessageInvalidEmail = @"The email address is badly formatted."; + +/** @var kFIRAuthErrorMessageInvalidCredential + @brief Message for @c FIRAuthErrorCodeInvalidCredential error code. + */ +static NSString *const kFIRAuthErrorMessageInvalidCredential = @"The supplied auth credential is " + "malformed or has expired."; + +/** @var kFIRAuthErrorMessageUserDisabled + @brief Message for @c FIRAuthErrorCodeUserDisabled error code. + */ +static NSString *const kFIRAuthErrorMessageUserDisabled = @"The user account has been disabled by " + "an administrator."; + +/** @var kFIRAuthErrorMessageEmailAlreadyInUse + @brief Message for @c FIRAuthErrorCodeEmailAlreadyInUse error code. + */ +static NSString *const kFIRAuthErrorMessageEmailAlreadyInUse = @"The email address is already in " + "use by another account."; + +/** @var kFIRAuthErrorMessageWrongPassword + @brief Message for @c FIRAuthErrorCodeWrongPassword error code. + */ +static NSString *const kFIRAuthErrorMessageWrongPassword = @"The password is invalid or the user " + "does not have a password."; + +/** @var kFIRAuthErrorMessageTooManyRequests + @brief Message for @c FIRAuthErrorCodeTooManyRequests error code. + */ +static NSString *const kFIRAuthErrorMessageTooManyRequests = @"We have blocked all requests from " + "this device due to unusual activity. Try again later."; + +/** @var kFIRAuthErrorMessageAccountExistsWithDifferentCredential + @brief Message for @c FIRAuthErrorCodeAccountExistsWithDifferentCredential error code. + */ +static NSString *const kFIRAuthErrorMessageAccountExistsWithDifferentCredential = @"An account " + "already exists with the same email address but different sign-in credentials. Sign in using a " + "provider associated with this email address."; + +/** @var kFIRAuthErrorMessageRequiresRecentLogin + @brief Message for @c FIRAuthErrorCodeRequiresRecentLogin error code. + */ +static NSString *const kFIRAuthErrorMessageRequiresRecentLogin= @"This operation is sensitive and " + "requires recent authentication. Log in again before retrying this request."; + +/** @var kFIRAuthErrorMessageProviderAlreadyLinked + @brief Message for @c FIRAuthErrorCodeProviderAlreadyExists error code. + */ +static NSString *const kFIRAuthErrorMessageProviderAlreadyLinked = + @"[ERROR_PROVIDER_ALREADY_LINKED] - User can only be linked to one identity for the given " + "provider."; + +/** @var kFIRAuthErrorMessageNoSuchProvider + @brief Message for @c FIRAuthErrorCodeNoSuchProvider error code. + */ +static NSString *const kFIRAuthErrorMessageNoSuchProvider = @"User was not linked to an account " + "with the given provider."; + +/** @var kFIRAuthErrorMessageInvalidUserToken + @brief Message for @c FIRAuthErrorCodeInvalidUserToken error code. + */ +static NSString *const kFIRAuthErrorMessageInvalidUserToken = @"This user's credential isn't valid " + "for this project. This can happen if the user's token has been tampered with, or if the user " + "doesn’t belong to the project associated with the API key used in your request."; + +/** @var kFIRAuthErrorMessageNetworkError + @brief Message for @c FIRAuthErrorCodeNetworkError error code. + */ +static NSString *const kFIRAuthErrorMessageNetworkError = @"Network error (such as timeout, " + "interrupted connection or unreachable host) has occurred."; + +/** @var kFIRAuthErrorMessageKeychainError + @brief Message for @c FIRAuthErrorCodeKeychainError error code. + */ +static NSString *const kFIRAuthErrorMessageKeychainError = @"An error occurred when accessing the " + "keychain. The @c NSLocalizedFailureReasonErrorKey field in the @c NSError.userInfo dictionary " + "will contain more information about the error encountered"; + +/** @var kFIRAuthErrorMessageUserTokenExpired + @brief Message for @c FIRAuthErrorCodeTokenExpired error code. + */ +static NSString *const kFIRAuthErrorMessageUserTokenExpired = @"The user's credential is no longer " + "valid. The user must sign in again."; + +/** @var kFIRAuthErrorMessageUserNotFound + @brief Message for @c FIRAuthErrorCodeUserNotFound error code. + */ +static NSString *const kFIRAuthErrorMessageUserNotFound = @"There is no user record corresponding " + "to this identifier. The user may have been deleted."; + +/** @var kFIRAuthErrorMessageInvalidAPIKey + @brief Message for @c FIRAuthErrorCodeInvalidAPIKey error code. + @remarks This error is not thrown by the server. + */ +static NSString *const kFIRAuthErrorMessageInvalidAPIKey = @"An invalid API Key was supplied in " + "the request."; + +/** @var kFIRAuthErrorMessageUserMismatch. + @brief Message for @c FIRAuthErrorCodeInvalidAPIKey error code. + */ +static NSString *const FIRAuthErrorMessageUserMismatch = @"The supplied credentials do not " + "correspond to the previously signed in user."; + +/** @var kFIRAuthErrorMessageCredentialAlreadyInUse + @brief Message for @c FIRAuthErrorCodeCredentialAlreadyInUse error code. + */ +static NSString *const kFIRAuthErrorMessageCredentialAlreadyInUse = @"This credential is already " + "associated with a different user account."; + +/** @var kFIRAuthErrorMessageOperationNotAllowed + @brief Message for @c FIRAuthErrorCodeOperationNotAllowed error code. + */ +static NSString *const kFIRAuthErrorMessageOperationNotAllowed = @"The given sign-in provider is " + "disabled for this Firebase project. Enable it in the Firebase console, under the sign-in " + "method tab of the Auth section."; + +/** @var kFIRAuthErrorMessageWeakPassword + @brief Message for @c FIRAuthErrorCodeWeakPassword error code. + */ +static NSString *const kFIRAuthErrorMessageWeakPassword = @"The password must be 6 characters long " + "or more."; + +/** @var kFIRAuthErrorMessageAppNotAuthorized + @brief Message for @c FIRAuthErrorCodeAppNotAuthorized error code. + */ +static NSString *const kFIRAuthErrorMessageAppNotAuthorized = @"This app is not authorized to use " + "Firebase Authentication with the provided API key. Review your key configuration in the " + "Google API console and ensure that it accepts requests from your app's bundle ID."; + +/** @var kFIRAuthErrorMessageExpiredActionCode + @brief Message for @c FIRAuthErrorCodeExpiredActionCode error code. + */ +static NSString *const kFIRAuthErrorMessageExpiredActionCode = @"The action code has expired."; + +/** @var kFIRAuthErrorMessageInvalidActionCode + @brief Message for @c FIRAuthErrorCodeInvalidActionCode error code. + */ +static NSString *const kFIRAuthErrorMessageInvalidActionCode = @"The action code is invalid. This " + "can happen if the code is malformed, expired, or has already been used."; + +/** @var kFIRAuthErrorMessageInvalidMessagePayload + @brief Message for @c FIRAuthErrorCodeInvalidMessagePayload error code. + */ +static NSString *const kFIRAuthErrorMessageInvalidMessagePayload = @"The action code is invalid. " + "This can happen if the code is malformed, expired, or has already been used."; + +/** @var kFIRAuthErrorMessageInvalidSender + @brief Message for @c FIRAuthErrorCodeInvalidSender error code. + */ +static NSString *const kFIRAuthErrorMessageInvalidSender = @"The email template corresponding to " + "this action contains invalid characters in its message. Please fix by going to the Auth email " + "templates section in the Firebase Console."; + +/** @var kFIRAuthErrorMessageInvalidRecipientEmail + @brief Message for @c FIRAuthErrorCodeInvalidRecipient error code. + */ +static NSString *const kFIRAuthErrorMessageInvalidRecipientEmail = @"The action code is invalid. " + "This can happen if the code is malformed, expired, or has already been used."; + +/** @var kFIRAuthErrorMessageMissingIosBundleID + @brief Message for @c FIRAuthErrorCodeMissingIosbundleID error code. + */ +static NSString *const kFIRAuthErrorMessageMissingIosBundleID = + @"An iOS Bundle ID must be provided if an App Store ID is provided."; + +/** @var kFIRAuthErrorMessageMissingAndroidPackageName + @brief Message for @c FIRAuthErrorCodeMissingAndroidPackageName error code. + */ +static NSString *const kFIRAuthErrorMessageMissingAndroidPackageName = + @"An Android Package Name must be provided if the Android App is required to be installed."; + +/** @var kFIRAuthErrorMessageUnauthorizedDomain + @brief Message for @c FIRAuthErrorCodeUnauthorizedDomain error code. + */ +static NSString *const kFIRAuthErrorMessageUnauthorizedDomain = @"The domain of the continue URL " + "is not whitelisted. Please whitelist the domain in the Firebase console."; + +/** @var kFIRAuthErrorMessageInvalidContinueURI + @brief Message for @c FIRAuthErrorCodeInvalidContinueURI error code. + */ +static NSString *const kFIRAuthErrorMessageInvalidContinueURI = + @"The continue URL provided in the request is invalid."; + +/** @var kFIRAuthErrorMessageMissingEmail + @brief Message for @c FIRAuthErrorCodeMissingEmail error code. + */ +static NSString *const kFIRAuthErrorMessageMissingEmail = @"An email address must be provided."; + +/** @var kFIRAuthErrorMessageMissingContinueURI + @brief Message for @c FIRAuthErrorCodeMissingContinueURI error code. + */ +static NSString *const kFIRAuthErrorMessageMissingContinueURI = + @"A continue URL must be provided in the request."; + +/** @var kFIRAuthErrorMessageMissingPhoneNumber + @brief Message for @c FIRAuthErrorCodeMissingPhoneNumber error code. + */ +static NSString *const kFIRAuthErrorMessageMissingPhoneNumber = + @"To send verification codes, provide a phone number for the recipient."; + +/** @var kFIRAuthErrorMessageInvalidPhoneNumber + @brief Message for @c FIRAuthErrorCodeInvalidPhoneNumber error code. + */ +static NSString *const kFIRAuthErrorMessageInvalidPhoneNumber = + @"The format of the phone number provided is incorrect. Please enter the phone number in a " + "format that can be parsed into E.164 format. E.164 phone numbers are written in the format " + "[+][country code][subscriber number including area code]."; + +/** @var kFIRAuthErrorMessageMissingVerificationCode + @brief Message for @c FIRAuthErrorCodeMissingVerificationCode error code. + */ +static NSString *const kFIRAuthErrorMessageMissingVerificationCode = + @"The phone auth credential was created with an empty SMS verification Code."; + +/** @var kFIRAuthErrorMessageInvalidVerificationCode + @brief Message for @c FIRAuthErrorCodeInvalidVerificationCode error code. + */ +static NSString *const kFIRAuthErrorMessageInvalidVerificationCode = + @"The SMS verification code used to create the phone auth credential is invalid. Please resend " + "the verification code SMS and be sure to use the verification code provided by the user."; + +/** @var kFIRAuthErrorMessageMissingVerificationID + @brief Message for @c FIRAuthErrorCodeInvalidVerificationID error code. + */ +static NSString *const kFIRAuthErrorMessageMissingVerificationID = + @"The phone auth credential was created with an empty verification ID."; + +/** @var kFIRAuthErrorMessageInvalidVerificationID + @brief Message for @c FIRAuthErrorCodeInvalidVerificationID error code. + */ +static NSString *const kFIRAuthErrorMessageInvalidVerificationID = + @"The verification ID used to create the phone auth credential is invalid."; + +/** @var kFIRAuthErrorMessageSessionExpired + @brief Message for @c FIRAuthErrorCodeSessionExpired error code. + */ +static NSString *const kFIRAuthErrorMessageSessionExpired = @"The SMS code has expired. Please " + @"re-send the verification code to try again."; + +/** @var kFIRAuthErrorMessageMissingAppCredential + @brief Message for @c FIRAuthErrorCodeMissingAppCredential error code. + */ +static NSString *const kFIRAuthErrorMessageMissingAppCredential = @"The phone verification request " + "is missing an APNs Device token. Firebase Auth automatically detects APNs Device Tokens, " + "however, if method swizzling is disabled, the APNs token must be set via the APNSToken " + "property on FIRAuth or by calling setAPNSToken:type on FIRAuth."; + +/** @var kFIRAuthErrorMessageInvalidAppCredential + @brief Message for @c FIRAuthErrorCodeInvalidAppCredential error code. + */ +static NSString *const kFIRAuthErrorMessageInvalidAppCredential = @"The APNs device token provided " + "is either incorrect or does not match the private certificate uploaded to the Firebase " + "Console."; + +/** @var kFIRAuthErrorMessageQuotaExceeded + @brief Message for @c FIRAuthErrorCodeQuotaExceeded error code. + */ +static NSString *const kFIRAuthErrorMessageQuotaExceeded = @"The phone verification quota for this " + "project has been exceeded."; + +/** @var kFIRAuthErrorMessageMissingAppToken + @brief Message for @c FIRAuthErrorCodeMissingAppToken error code. + */ +static NSString *const kFIRAuthErrorMessageMissingAppToken = @"There seems to be a problem with " + "your project's Firebase phone number authentication set-up, please make sure to follow the " + "instructions found at https://firebase.google.com/docs/auth/ios/phone-auth"; + +/** @var kFIRAuthErrorMessageMissingAppToken + @brief Message for @c FIRAuthErrorCodeMissingAppToken error code. + */ +static NSString *const kFIRAuthErrorMessageNotificationNotForwarded = @"If app delegate swizzling " + "is disabled, remote notifications received by UIApplicationDelegate need to be forwarded to " + "FIRAuth's canHandleNotificaton: method."; + +/** @var kFIRAuthErrorMessageAppNotVerified + @brief Message for @c FIRAuthErrorCodeMissingAppToken error code. + */ +static NSString *const kFIRAuthErrorMessageAppNotVerified = @"Firebase could not retrieve the " + "silent push notification and therefore could not verify your app. Ensure that you configured " + "your app correctly to receive push notifications."; + +/** @var kFIRAuthErrorMessageCaptchaCheckFailed + @brief Message for @c FIRAuthErrorCodeCaptchaCheckFailed error code. + */ +static NSString *const kFIRAuthErrorMessageCaptchaCheckFailed = @"The reCAPTCHA response token " + "provided is either invalid, expired or already"; + +/** @var kFIRAuthErrorMessageWebContextAlreadyPresented + @brief Message for @c FIRAuthErrorCodeWebContextAlreadyPresented error code. + */ +static NSString *const kFIRAuthErrorMessageWebContextAlreadyPresented = @"User interaction is " + "still ongoing, another view cannot be presented."; + +/** @var kFIRAuthErrorMessageWebContextCancelled + @brief Message for @c FIRAuthErrorCodeWebContextCancelled error code. + */ +static NSString *const kFIRAuthErrorMessageWebContextCancelled = @"The interaction was cancelled " + "by the user."; + +/** @var kFIRAuthErrorMessageInvalidClientID + @brief Message for @c FIRAuthErrorCodeInvalidClientID error code. + */ +static NSString *const kFIRAuthErrorMessageInvalidClientID = @"The OAuth client ID provided is " + "either invalid or does not match the specified API key."; + +/** @var kFIRAuthErrorMessageWebRequestFailed + @brief Message for @c FIRAuthErrorCodeWebRequestFailed error code. + */ +static NSString *const kFIRAuthErrorMessageWebRequestFailed = @"A network error (such as timeout, " + "interrupted connection, or unreachable host) has occurred within the web context."; + +/** @var kFIRAuthErrorMessageWebInternalError + @brief Message for @c FIRAuthErrorCodeWebInternalError error code. + */ +static NSString *const kFIRAuthErrorMessageWebInternalError = @"An internal error has occurred " + "within the SFSafariViewController or UIWebView."; + +/** @var kFIRAuthErrorMessageAppVerificationUserInteractionFailure + @brief Message for @c FIRAuthErrorCodeInvalidClientID error code. + */ +static NSString *const kFIRAuthErrorMessageAppVerificationUserInteractionFailure = @"The app " + "verification process has failed, print and inspect the error details for more information"; + +/** @var kFIRAuthErrorMessageNullUser + @brief Message for @c FIRAuthErrorCodeNullUser error code. + */ +static NSString *const kFIRAuthErrorMessageNullUser = @"A null user object was provided as the " + "argument for an operation which requires a non-null user object."; + +/** @var kFIRAuthErrorMessageInternalError + @brief Message for @c FIRAuthErrorCodeInternalError error code. + */ +static NSString *const kFIRAuthErrorMessageInternalError = @"An internal error has occurred, " + "print and inspect the error details for more information."; + +/** @var kFIRAuthErrorMessageMalformedJWT + @brief Error message constant describing @c FIRAuthErrorCodeMalformedJWT errors. + */ +static NSString *const kFIRAuthErrorMessageMalformedJWT = + @"Failed to parse JWT. Check the userInfo dictionary for the full token."; + +/** @var FIRAuthErrorDescription + @brief The error descrioption, based on the error code. + @remarks No default case so that we get a compiler warning if a new value was added to the enum. + */ +static NSString *FIRAuthErrorDescription(FIRAuthErrorCode code) { + switch (code) { + case FIRAuthErrorCodeInvalidCustomToken: + return kFIRAuthErrorMessageInvalidCustomToken; + case FIRAuthErrorCodeCustomTokenMismatch: + return kFIRAuthErrorMessageCustomTokenMismatch; + case FIRAuthErrorCodeInvalidEmail: + return kFIRAuthErrorMessageInvalidEmail; + case FIRAuthErrorCodeInvalidCredential: + return kFIRAuthErrorMessageInvalidCredential; + case FIRAuthErrorCodeUserDisabled: + return kFIRAuthErrorMessageUserDisabled; + case FIRAuthErrorCodeEmailAlreadyInUse: + return kFIRAuthErrorMessageEmailAlreadyInUse; + case FIRAuthErrorCodeWrongPassword: + return kFIRAuthErrorMessageWrongPassword; + case FIRAuthErrorCodeTooManyRequests: + return kFIRAuthErrorMessageTooManyRequests; + case FIRAuthErrorCodeAccountExistsWithDifferentCredential: + return kFIRAuthErrorMessageAccountExistsWithDifferentCredential; + case FIRAuthErrorCodeRequiresRecentLogin: + return kFIRAuthErrorMessageRequiresRecentLogin; + case FIRAuthErrorCodeProviderAlreadyLinked: + return kFIRAuthErrorMessageProviderAlreadyLinked; + case FIRAuthErrorCodeNoSuchProvider: + return kFIRAuthErrorMessageNoSuchProvider; + case FIRAuthErrorCodeInvalidUserToken: + return kFIRAuthErrorMessageInvalidUserToken; + case FIRAuthErrorCodeNetworkError: + return kFIRAuthErrorMessageNetworkError; + case FIRAuthErrorCodeKeychainError: + return kFIRAuthErrorMessageKeychainError; + case FIRAuthErrorCodeUserTokenExpired: + return kFIRAuthErrorMessageUserTokenExpired; + case FIRAuthErrorCodeUserNotFound: + return kFIRAuthErrorMessageUserNotFound; + case FIRAuthErrorCodeInvalidAPIKey: + return kFIRAuthErrorMessageInvalidAPIKey; + case FIRAuthErrorCodeCredentialAlreadyInUse: + return kFIRAuthErrorMessageCredentialAlreadyInUse; + case FIRAuthErrorCodeInternalError: + return kFIRAuthErrorMessageInternalError; + case FIRAuthErrorCodeUserMismatch: + return FIRAuthErrorMessageUserMismatch; + case FIRAuthErrorCodeOperationNotAllowed: + return kFIRAuthErrorMessageOperationNotAllowed; + case FIRAuthErrorCodeWeakPassword: + return kFIRAuthErrorMessageWeakPassword; + case FIRAuthErrorCodeAppNotAuthorized: + return kFIRAuthErrorMessageAppNotAuthorized; + case FIRAuthErrorCodeExpiredActionCode: + return kFIRAuthErrorMessageExpiredActionCode; + case FIRAuthErrorCodeInvalidActionCode: + return kFIRAuthErrorMessageInvalidActionCode; + case FIRAuthErrorCodeInvalidSender: + return kFIRAuthErrorMessageInvalidSender; + case FIRAuthErrorCodeInvalidMessagePayload: + return kFIRAuthErrorMessageInvalidMessagePayload; + case FIRAuthErrorCodeInvalidRecipientEmail: + return kFIRAuthErrorMessageInvalidRecipientEmail; + case FIRAuthErrorCodeMissingIosBundleID: + return kFIRAuthErrorMessageMissingIosBundleID; + case FIRAuthErrorCodeMissingAndroidPackageName: + return kFIRAuthErrorMessageMissingAndroidPackageName; + case FIRAuthErrorCodeUnauthorizedDomain: + return kFIRAuthErrorMessageUnauthorizedDomain; + case FIRAuthErrorCodeInvalidContinueURI: + return kFIRAuthErrorMessageInvalidContinueURI; + case FIRAuthErrorCodeMissingContinueURI: + return kFIRAuthErrorMessageMissingContinueURI; + case FIRAuthErrorCodeMissingEmail: + return kFIRAuthErrorMessageMissingEmail; + case FIRAuthErrorCodeMissingPhoneNumber: + return kFIRAuthErrorMessageMissingPhoneNumber; + case FIRAuthErrorCodeInvalidPhoneNumber: + return kFIRAuthErrorMessageInvalidPhoneNumber; + case FIRAuthErrorCodeMissingVerificationCode: + return kFIRAuthErrorMessageMissingVerificationCode; + case FIRAuthErrorCodeInvalidVerificationCode: + return kFIRAuthErrorMessageInvalidVerificationCode; + case FIRAuthErrorCodeMissingVerificationID: + return kFIRAuthErrorMessageMissingVerificationID; + case FIRAuthErrorCodeInvalidVerificationID: + return kFIRAuthErrorMessageInvalidVerificationID; + case FIRAuthErrorCodeSessionExpired: + return kFIRAuthErrorMessageSessionExpired; + case FIRAuthErrorCodeMissingAppCredential: + return kFIRAuthErrorMessageMissingAppCredential; + case FIRAuthErrorCodeInvalidAppCredential: + return kFIRAuthErrorMessageInvalidAppCredential; + case FIRAuthErrorCodeQuotaExceeded: + return kFIRAuthErrorMessageQuotaExceeded; + case FIRAuthErrorCodeMissingAppToken: + return kFIRAuthErrorMessageMissingAppToken; + case FIRAuthErrorCodeNotificationNotForwarded: + return kFIRAuthErrorMessageNotificationNotForwarded; + case FIRAuthErrorCodeAppNotVerified: + return kFIRAuthErrorMessageAppNotVerified; + case FIRAuthErrorCodeCaptchaCheckFailed: + return kFIRAuthErrorMessageCaptchaCheckFailed; + case FIRAuthErrorCodeWebContextAlreadyPresented: + return kFIRAuthErrorMessageWebContextAlreadyPresented; + case FIRAuthErrorCodeWebContextCancelled: + return kFIRAuthErrorMessageWebContextCancelled; + case FIRAuthErrorCodeInvalidClientID: + return kFIRAuthErrorMessageInvalidClientID; + case FIRAuthErrorCodeAppVerificationUserInteractionFailure: + return kFIRAuthErrorMessageAppVerificationUserInteractionFailure; + case FIRAuthErrorCodeWebNetworkRequestFailed: + return kFIRAuthErrorMessageWebRequestFailed; + case FIRAuthErrorCodeNullUser: + return kFIRAuthErrorMessageNullUser; + case FIRAuthErrorCodeWebInternalError: + return kFIRAuthErrorMessageWebInternalError; + case FIRAuthErrorCodeMalformedJWT: + return kFIRAuthErrorMessageMalformedJWT; + } +} + +/** @var FIRAuthErrorCodeString + @brief The the error short string, based on the error code. + @remarks No default case so that we get a compiler warning if a new value was added to the enum. + */ +static NSString *const FIRAuthErrorCodeString(FIRAuthErrorCode code) { + switch (code) { + case FIRAuthErrorCodeInvalidCustomToken: + return @"ERROR_INVALID_CUSTOM_TOKEN"; + case FIRAuthErrorCodeCustomTokenMismatch: + return @"ERROR_CUSTOM_TOKEN_MISMATCH"; + case FIRAuthErrorCodeInvalidEmail: + return @"ERROR_INVALID_EMAIL"; + case FIRAuthErrorCodeInvalidCredential: + return @"ERROR_INVALID_CREDENTIAL"; + case FIRAuthErrorCodeUserDisabled: + return @"ERROR_USER_DISABLED"; + case FIRAuthErrorCodeEmailAlreadyInUse: + return @"ERROR_EMAIL_ALREADY_IN_USE"; + case FIRAuthErrorCodeWrongPassword: + return @"ERROR_WRONG_PASSWORD"; + case FIRAuthErrorCodeTooManyRequests: + return @"ERROR_TOO_MANY_REQUESTS"; + case FIRAuthErrorCodeAccountExistsWithDifferentCredential: + return @"ERROR_ACCOUNT_EXISTS_WITH_DIFFERENT_CREDENTIAL"; + case FIRAuthErrorCodeRequiresRecentLogin: + return @"ERROR_REQUIRES_RECENT_LOGIN"; + case FIRAuthErrorCodeProviderAlreadyLinked: + return @"ERROR_PROVIDER_ALREADY_LINKED"; + case FIRAuthErrorCodeNoSuchProvider: + return @"ERROR_NO_SUCH_PROVIDER"; + case FIRAuthErrorCodeInvalidUserToken: + return @"ERROR_INVALID_USER_TOKEN"; + case FIRAuthErrorCodeNetworkError: + return @"ERROR_NETWORK_REQUEST_FAILED"; + case FIRAuthErrorCodeKeychainError: + return @"ERROR_KEYCHAIN_ERROR"; + case FIRAuthErrorCodeUserTokenExpired: + return @"ERROR_USER_TOKEN_EXPIRED"; + case FIRAuthErrorCodeUserNotFound: + return @"ERROR_USER_NOT_FOUND"; + case FIRAuthErrorCodeInvalidAPIKey: + return @"ERROR_INVALID_API_KEY"; + case FIRAuthErrorCodeCredentialAlreadyInUse: + return @"ERROR_CREDENTIAL_ALREADY_IN_USE"; + case FIRAuthErrorCodeInternalError: + return @"ERROR_INTERNAL_ERROR"; + case FIRAuthErrorCodeUserMismatch: + return @"ERROR_USER_MISMATCH"; + case FIRAuthErrorCodeOperationNotAllowed: + return @"ERROR_OPERATION_NOT_ALLOWED"; + case FIRAuthErrorCodeWeakPassword: + return @"ERROR_WEAK_PASSWORD"; + case FIRAuthErrorCodeAppNotAuthorized: + return @"ERROR_APP_NOT_AUTHORIZED"; + case FIRAuthErrorCodeExpiredActionCode: + return @"ERROR_EXPIRED_ACTION_CODE"; + case FIRAuthErrorCodeInvalidActionCode: + return @"ERROR_INVALID_ACTION_CODE"; + case FIRAuthErrorCodeInvalidMessagePayload: + return @"ERROR_INVALID_MESSAGE_PAYLOAD"; + case FIRAuthErrorCodeInvalidSender: + return @"ERROR_INVALID_SENDER"; + case FIRAuthErrorCodeInvalidRecipientEmail: + return @"ERROR_INVALID_RECIPIENT_EMAIL"; + case FIRAuthErrorCodeMissingIosBundleID: + return @"ERROR_MISSING_IOS_BUNDLE_ID"; + case FIRAuthErrorCodeMissingAndroidPackageName: + return @"ERROR_MISSING_ANDROID_PKG_NAME"; + case FIRAuthErrorCodeUnauthorizedDomain: + return @"ERROR_UNAUTHORIZED_DOMAIN"; + case FIRAuthErrorCodeInvalidContinueURI: + return @"ERROR_INVALID_CONTINUE_URI"; + case FIRAuthErrorCodeMissingContinueURI: + return @"ERROR_MISSING_CONTINUE_URI"; + case FIRAuthErrorCodeMissingEmail: + return @"ERROR_MISSING_EMAIL"; + case FIRAuthErrorCodeMissingPhoneNumber: + return @"ERROR_MISSING_PHONE_NUMBER"; + case FIRAuthErrorCodeInvalidPhoneNumber: + return @"ERROR_INVALID_PHONE_NUMBER"; + case FIRAuthErrorCodeMissingVerificationCode: + return @"ERROR_MISSING_VERIFICATION_CODE"; + case FIRAuthErrorCodeInvalidVerificationCode: + return @"ERROR_INVALID_VERIFICATION_CODE"; + case FIRAuthErrorCodeMissingVerificationID: + return @"ERROR_MISSING_VERIFICATION_ID"; + case FIRAuthErrorCodeInvalidVerificationID: + return @"ERROR_INVALID_VERIFICATION_ID"; + case FIRAuthErrorCodeSessionExpired: + return @"ERROR_SESSION_EXPIRED"; + case FIRAuthErrorCodeMissingAppCredential: + return @"MISSING_APP_CREDENTIAL"; + case FIRAuthErrorCodeInvalidAppCredential: + return @"INVALID_APP_CREDENTIAL"; + case FIRAuthErrorCodeQuotaExceeded: + return @"ERROR_QUOTA_EXCEEDED"; + case FIRAuthErrorCodeMissingAppToken: + return @"ERROR_MISSING_APP_TOKEN"; + case FIRAuthErrorCodeNotificationNotForwarded: + return @"ERROR_NOTIFICATION_NOT_FORWARDED"; + case FIRAuthErrorCodeAppNotVerified: + return @"ERROR_APP_NOT_VERIFIED"; + case FIRAuthErrorCodeCaptchaCheckFailed: + return @"ERROR_CAPTCHA_CHECK_FAILED"; + case FIRAuthErrorCodeWebContextAlreadyPresented: + return @"ERROR_WEB_CONTEXT_ALREADY_PRESENTED"; + case FIRAuthErrorCodeWebContextCancelled: + return @"ERROR_WEB_CONTEXT_CANCELLED"; + case FIRAuthErrorCodeInvalidClientID: + return @"ERROR_INVALID_CLIENT_ID"; + case FIRAuthErrorCodeAppVerificationUserInteractionFailure: + return @"ERROR_APP_VERIFICATION_FAILED"; + case FIRAuthErrorCodeWebNetworkRequestFailed: + return @"ERROR_WEB_NETWORK_REQUEST_FAILED"; + case FIRAuthErrorCodeNullUser: + return @"ERROR_NULL_USER"; + case FIRAuthErrorCodeWebInternalError: + return @"ERROR_WEB_INTERNAL_ERROR"; + case FIRAuthErrorCodeMalformedJWT: + return @"ERROR_MALFORMED_JWT"; + } +} + +@implementation FIRAuthErrorUtils + ++ (NSError *)errorWithCode:(FIRAuthInternalErrorCode)code { + return [self errorWithCode:code message:nil]; +} + ++ (NSError *)errorWithCode:(FIRAuthInternalErrorCode)code + message:(nullable NSString *)message { + NSDictionary *userInfo = nil; + if (message.length) { + userInfo = @{ + NSLocalizedDescriptionKey : message + }; + } + return [self errorWithCode:code userInfo:userInfo]; +} + ++ (NSError *)errorWithCode:(FIRAuthInternalErrorCode)code + underlyingError:(nullable NSError *)underlyingError { + NSDictionary *errorUserInfo = nil; + if (underlyingError) { + errorUserInfo = @{ + NSUnderlyingErrorKey : underlyingError + }; + } + return [self errorWithCode:code userInfo:errorUserInfo]; +} + ++ (NSError *)errorWithCode:(FIRAuthInternalErrorCode)code + userInfo:(nullable NSDictionary *)userInfo { + BOOL isPublic = (code & FIRAuthPublicErrorCodeFlag) == FIRAuthPublicErrorCodeFlag; + if (isPublic) { + // This is a public error. Return it as a public error and add a description. + NSInteger errorCode = code & ~FIRAuthPublicErrorCodeFlag; + NSMutableDictionary *errorUserInfo = [NSMutableDictionary dictionaryWithDictionary:userInfo]; + if (!errorUserInfo[NSLocalizedDescriptionKey]) { + errorUserInfo[NSLocalizedDescriptionKey] = FIRAuthErrorDescription(errorCode); + } + errorUserInfo[FIRAuthErrorNameKey] = FIRAuthErrorCodeString(errorCode); + return [NSError errorWithDomain:FIRAuthErrorDomain code:errorCode userInfo:errorUserInfo]; + } else { + // This is an internal error. Wrap it in an internal error. + NSError *error = + [NSError errorWithDomain:FIRAuthInternalErrorDomain code:code userInfo:userInfo]; + return [self errorWithCode:FIRAuthInternalErrorCodeInternalError underlyingError:error]; + } +} + ++ (NSError *)RPCRequestEncodingErrorWithUnderlyingError:(NSError *)underlyingError { + return [self errorWithCode:FIRAuthInternalErrorCodeRPCRequestEncodingError + underlyingError:underlyingError]; +} + ++ (NSError *)JSONSerializationErrorForUnencodableType { + return [self errorWithCode:FIRAuthInternalErrorCodeJSONSerializationError]; +} + ++ (NSError *)JSONSerializationErrorWithUnderlyingError:(NSError *)underlyingError { + return [self errorWithCode:FIRAuthInternalErrorCodeJSONSerializationError + underlyingError:underlyingError]; +} + ++ (NSError *)networkErrorWithUnderlyingError:(NSError *)underlyingError { + return [self errorWithCode:FIRAuthInternalErrorCodeNetworkError + underlyingError:underlyingError]; +} + ++ (NSError *)unexpectedErrorResponseWithData:(NSData *)data + underlyingError:(NSError *)underlyingError { + return [self errorWithCode:FIRAuthInternalErrorCodeUnexpectedErrorResponse userInfo:@{ + FIRAuthErrorUserInfoDataKey : data, + NSUnderlyingErrorKey : underlyingError + }]; +} + ++ (NSError *)unexpectedErrorResponseWithDeserializedResponse:(id)deserializedResponse { + return [self errorWithCode:FIRAuthInternalErrorCodeUnexpectedErrorResponse userInfo:@{ + FIRAuthErrorUserInfoDeserializedResponseKey : deserializedResponse + }]; +} + ++ (NSError *)malformedJWTErrorWithToken:(NSString *)token + underlyingError:(NSError *_Nullable)underlyingError { + NSMutableDictionary *userInfo = + [NSMutableDictionary dictionaryWithObject:kFIRAuthErrorMessageMalformedJWT + forKey:NSLocalizedDescriptionKey]; + [userInfo setObject:token forKey:FIRAuthErrorUserInfoDataKey]; + if (underlyingError != nil) { + [userInfo setObject:underlyingError forKey:NSUnderlyingErrorKey]; + } + return [self errorWithCode:FIRAuthInternalErrorCodeMalformedJWT userInfo:[userInfo copy]]; +} + ++ (NSError *)unexpectedResponseWithData:(NSData *)data + underlyingError:(NSError *)underlyingError { + return [self errorWithCode:FIRAuthInternalErrorCodeUnexpectedResponse userInfo:@{ + FIRAuthErrorUserInfoDataKey : data, + NSUnderlyingErrorKey : underlyingError + }]; +} + ++ (NSError *)unexpectedResponseWithDeserializedResponse:(id)deserializedResponse { + return [self errorWithCode:FIRAuthInternalErrorCodeUnexpectedResponse userInfo:@{ + FIRAuthErrorUserInfoDeserializedResponseKey : deserializedResponse + }]; +} + ++ (NSError *)unexpectedResponseWithDeserializedResponse:(nullable id)deserializedResponse + underlyingError:(NSError *)underlyingError { + NSMutableDictionary *userInfo = + [NSMutableDictionary dictionaryWithDictionary:@{ NSUnderlyingErrorKey : underlyingError }]; + if (deserializedResponse) { + userInfo[FIRAuthErrorUserInfoDeserializedResponseKey] = deserializedResponse; + } + return [self errorWithCode:FIRAuthInternalErrorCodeUnexpectedResponse userInfo:userInfo]; +} + ++ (NSError *)RPCResponseDecodingErrorWithDeserializedResponse:(id)deserializedResponse + underlyingError:(NSError *)underlyingError { + return [self errorWithCode:FIRAuthInternalErrorCodeRPCResponseDecodingError userInfo:@{ + FIRAuthErrorUserInfoDeserializedResponseKey : deserializedResponse, + NSUnderlyingErrorKey : underlyingError + }]; +} + ++ (NSError *)emailAlreadyInUseErrorWithEmail:(nullable NSString *)email { + NSMutableDictionary *userInfo = [[NSMutableDictionary alloc] init]; + if (email.length) { + userInfo[FIRAuthErrorUserInfoEmailKey] = email; + } + return [self errorWithCode:FIRAuthInternalErrorCodeEmailAlreadyInUse userInfo:userInfo]; +} + ++ (NSError *)userDisabledErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeUserDisabled message:message]; +} + ++ (NSError *)wrongPasswordErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeWrongPassword message:message]; +} + ++ (NSError *)tooManyRequestsErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeTooManyRequests message:message]; +} + ++ (NSError *)invalidCustomTokenErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeInvalidCustomToken message:message]; +} + ++ (NSError *)customTokenMistmatchErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeCustomTokenMismatch message:message]; +} + ++ (NSError *)invalidCredentialErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeInvalidCredential message:message]; +} + ++ (NSError *)requiresRecentLoginErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeRequiresRecentLogin message:message]; +} + ++ (NSError *)invalidUserTokenErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeInvalidUserToken message:message]; +} + ++ (NSError *)invalidEmailErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeInvalidEmail message:message]; +} + ++ (NSError *)accountExistsWithDifferentCredentialErrorWithEmail:(nullable NSString *)email { + return [self errorWithCode:FIRAuthInternalErrorCodeAccountExistsWithDifferentCredential + userInfo:@{ FIRAuthErrorUserInfoEmailKey : email }]; +} + ++ (NSError *)providerAlreadyLinkedError { + return [self errorWithCode:FIRAuthInternalErrorCodeProviderAlreadyLinked]; +} + ++ (NSError *)noSuchProviderError { + return [self errorWithCode:FIRAuthInternalErrorCodeNoSuchProvider]; +} + ++ (NSError *)userTokenExpiredErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeUserTokenExpired message:message]; +} + ++ (NSError *)userNotFoundErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeUserNotFound message:message]; +} + ++ (NSError *)invalidAPIKeyError { + return [self errorWithCode:FIRAuthInternalErrorCodeInvalidAPIKey]; +} + ++ (NSError *)userMismatchError { + return [self errorWithCode:FIRAuthInternalErrorCodeUserMismatch]; +} + ++ (NSError *)credentialAlreadyInUseErrorWithMessage:(nullable NSString *)message + credential:(nullable FIRPhoneAuthCredential *)credential { + if (credential) { + return [self errorWithCode:FIRAuthInternalErrorCodeCredentialAlreadyInUse + userInfo:@{ FIRAuthUpdatedCredentialKey : credential }]; + } + return [self errorWithCode:FIRAuthInternalErrorCodeCredentialAlreadyInUse message:message]; +} + ++ (NSError *)operationNotAllowedErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeOperationNotAllowed message:message]; +} + ++ (NSError *)weakPasswordErrorWithServerResponseReason:(nullable NSString *)reason { + return [self errorWithCode:FIRAuthInternalErrorCodeWeakPassword userInfo:@{ + NSLocalizedFailureReasonErrorKey : reason + }]; +} + ++ (NSError *)appNotAuthorizedError { + return [self errorWithCode:FIRAuthInternalErrorCodeAppNotAuthorized]; +} + ++ (NSError *)expiredActionCodeErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeExpiredActionCode message:message]; +} + ++ (NSError *)invalidActionCodeErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeInvalidActionCode message:message]; +} + ++ (NSError *)invalidMessagePayloadErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeInvalidMessagePayload message:message]; +} + ++ (NSError *)invalidSenderErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeInvalidSender message:message]; +} + ++ (NSError *)invalidRecipientEmailErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeInvalidRecipientEmail message:message]; +} + ++ (NSError *)missingIosBundleIDErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthinternalErrorCodeMissingIosBundleID message:message]; +} + ++ (NSError *)missingAndroidPackageNameErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeMissingAndroidPackageName message:message]; +} + ++ (NSError *)unauthorizedDomainErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeUnauthorizedDomain message:message]; +} + ++ (NSError *)invalidContinueURIErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeInvalidContinueURI message:message]; +} + ++ (NSError *)missingContinueURIErrorWithMessage:(nullable NSString *)message { + return[self errorWithCode:FIRAuthInternalErrorCodeMissingContinueURI message:message]; +} + ++ (NSError *)missingEmailErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeMissingEmail message:message]; +} + ++ (NSError *)missingPhoneNumberErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeMissingPhoneNumber message:message]; +} + ++ (NSError *)invalidPhoneNumberErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeInvalidPhoneNumber message:message]; +} + ++ (NSError *)missingVerificationCodeErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeMissingVerificationCode message:message]; +} + ++ (NSError *)invalidVerificationCodeErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeInvalidVerificationCode message:message]; +} + ++ (NSError *)missingVerificationIDErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeMissingVerificationID message:message]; +} + ++ (NSError *)invalidVerificationIDErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeInvalidVerificationID message:message]; +} + ++ (NSError *)sessionExpiredErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeSessionExpired message:message]; +} + ++ (NSError *)missingAppCredentialWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeMissingAppCredential message:message]; +} + ++ (NSError *)invalidAppCredentialWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeInvalidAppCredential message:message]; +} + ++ (NSError *)quotaExceededErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeQuotaExceeded message:message]; +} + ++ (NSError *)missingAppTokenErrorWithUnderlyingError:(nullable NSError *)underlyingError { + return [self errorWithCode:FIRAuthInternalErrorCodeMissingAppToken + underlyingError:underlyingError]; +} + ++ (NSError *)notificationNotForwardedError { + return [self errorWithCode:FIRAuthInternalErrorCodeNotificationNotForwarded]; +} + ++ (NSError *)appNotVerifiedErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeAppNotVerified message:message]; +} + ++ (NSError *)captchaCheckFailedErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeCaptchaCheckFailed message:message]; +} + ++ (NSError *)webContextAlreadyPresentedErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeWebContextAlreadyPresented message:message]; +} + ++ (NSError *)webContextCancelledErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeWebContextCancelled message:message]; +} + ++ (NSError *)appVerificationUserInteractionFailureWithReason:(NSString *)reason { + return [self errorWithCode:FIRAuthInternalErrorCodeAppVerificationUserInteractionFailure + userInfo:@{ + NSLocalizedFailureReasonErrorKey : reason + }]; +} + ++ (nullable NSError *)URLResponseErrorWithCode:(NSString *)code message:(nullable NSString *)message { + if ([code isEqualToString:kURLResponseErrorCodeInvalidClientID]) { + return [self errorWithCode:FIRAuthInternalErrorCodeInvalidClientID message:message]; + } + if ([code isEqualToString:kURLResponseErrorCodeNetworkRequestFailed]) { + return [self errorWithCode:FIRAuthInternalErrorCodeWebNetworkRequestFailed message:message]; + } + if ([code isEqualToString:kURLResponseErrorCodeInternalError]) { + return [self errorWithCode:FIRAuthInternalErrorCodeWebInternalError message:message]; + } + return nil; +} + ++ (NSError *)nullUserErrorWithMessage:(nullable NSString *)message { + return [self errorWithCode:FIRAuthInternalErrorCodeNullUser message:message]; +} + ++ (NSError *)keychainErrorWithFunction:(NSString *)keychainFunction status:(OSStatus)status { + NSString *failureReason = [NSString stringWithFormat:@"%@ (%li)", keychainFunction, (long)status]; + return [self errorWithCode:FIRAuthInternalErrorCodeKeychainError userInfo:@{ + NSLocalizedFailureReasonErrorKey : failureReason, + }]; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthExceptionUtils.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthExceptionUtils.h new file mode 100644 index 0000000..3ae9159 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthExceptionUtils.h @@ -0,0 +1,41 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRAuthExceptionUtils + @brief Utility class used to raise standardized Auth related exceptions. +*/ +@interface FIRAuthExceptionUtils : NSObject + +/** @fn raiseInvalidParameterExceptionWithReason: + @brief raises the "invalid parameter" exception + @param reason string will contain a description of the error. + */ ++ (void)raiseInvalidParameterExceptionWithReason:(nullable NSString *)reason; + +/** @fn raiseMethodNotImplementedExceptionWithReason: + @brief raises the "method not implemented" exception + @param reason string will contain a description of the error. + @see FIRMethodNotImplementedException + */ ++ (void)raiseMethodNotImplementedExceptionWithReason:(nullable NSString *)reason; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthExceptionUtils.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthExceptionUtils.m new file mode 100644 index 0000000..0adcd34 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthExceptionUtils.m @@ -0,0 +1,36 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthExceptionUtils.h" + +/** @var FIRMethodNotImplementedException + @brief The name of the "Method Not Implemented" exception. + */ +static NSString *const FIRMethodNotImplementedException = @"FIRMethodNotImplementedException"; + +@implementation FIRAuthExceptionUtils + ++ (void)raiseInvalidParameterExceptionWithReason:(NSString *)reason { + [NSException raise:NSInvalidArgumentException format:@"%@", reason]; +} + ++ (void)raiseMethodNotImplementedExceptionWithReason:(nullable NSString *)reason { + NSException *exception = + [NSException exceptionWithName:FIRMethodNotImplementedException reason:reason userInfo:nil]; + [exception raise]; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthGlobalWorkQueue.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthGlobalWorkQueue.h new file mode 100644 index 0000000..55bb1a7 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthGlobalWorkQueue.h @@ -0,0 +1,31 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** @fn FIRAuthGlobalWorkQueue + @brief Retrieves the global serial work queue for Firebase Auth. + @return The global serial dispatch queue. + @remarks To ensure thread safety, all auth code must be executed in either this global work + queue, or a serial queue that has its target queue set to this work queue. All public method + implementations that may involve contested code shall dispatch to this work queue as the + first thing they do. + */ +extern dispatch_queue_t FIRAuthGlobalWorkQueue(void); + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthGlobalWorkQueue.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthGlobalWorkQueue.m new file mode 100644 index 0000000..accac89 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthGlobalWorkQueue.m @@ -0,0 +1,26 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthGlobalWorkQueue.h" + +dispatch_queue_t FIRAuthGlobalWorkQueue() { + static dispatch_once_t once; + static dispatch_queue_t queue; + dispatch_once(&once, ^{ + queue = dispatch_queue_create("com.google.firebase.auth.globalWorkQueue", NULL); + }); + return queue; +} diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthInternalErrors.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthInternalErrors.h new file mode 100644 index 0000000..e09932a --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthInternalErrors.h @@ -0,0 +1,443 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthErrors.h" + +/** @var FIRAuthPublicErrorCodeFlag + @brief Bitmask value indicating the error represents a public error code when this bit is + zeroed. Error codes which don't contain this flag will be wrapped in an @c NSError whose + code is @c FIRAuthErrorCodeInternalError. + */ +static const NSInteger FIRAuthPublicErrorCodeFlag = 1 << 20; + +/** @var FIRAuthInternalErrorDomain + @brief The Firebase Auth error domain for internal errors. + */ +extern NSString *const FIRAuthInternalErrorDomain; + +/** @var FIRAuthErrorUserInfoDeserializedResponseKey + @brief Errors with the code @c FIRAuthErrorCodeUnexpectedResponseError, + @c FIRAuthErrorCodeUnexpectedErrorResponseError, and + @c FIRAuthInternalErrorCodeRPCResponseDecodingError may contain an @c NSError.userInfo + dictionary which contains this key. The value associated with this key is an object of + unspecified contents containing the deserialized server response. + */ +extern NSString *const FIRAuthErrorUserInfoDeserializedResponseKey; + +/** @var FIRAuthErrorUserInfoDataKey + @brief Errors with the code @c FIRAuthErrorCodeUnexpectedResponseError or + @c FIRAuthErrorCodeUnexpectedErrorResponseError may contain an @c NSError.userInfo + dictionary which contains this key. The value associated with this key is an @c NSString + which represents the response from a server to an RPC which could not be deserialized. + */ +extern NSString *const FIRAuthErrorUserInfoDataKey; + + +/** @var FIRAuthInternalErrorCode + @brief Error codes used internally by Firebase Auth. + @remarks All errors are generated using an internal error code. These errors are automatically + converted to the appropriate public version of the @c NSError by the methods in + @c FIRAuthErrorUtils + */ +typedef NS_ENUM(NSInteger, FIRAuthInternalErrorCode) { + /** @var FIRAuthInternalErrorCodeNetworkError + @brief Indicates a network error occurred (such as a timeout, interrupted connection, or + unreachable host.) + @remarks These types of errors are often recoverable with a retry. + + See the @c NSUnderlyingError value in the @c NSError.userInfo dictionary for details about + the network error which occurred. + */ + FIRAuthInternalErrorCodeNetworkError = FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeNetworkError, + + /** @var FIRAuthInternalErrorCodeEmailAlreadyInUse + @brief The email used to attempt a sign-up already exists. + */ + FIRAuthInternalErrorCodeEmailAlreadyInUse = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeEmailAlreadyInUse, + + /** @var FIRAuthInternalErrorCodeUserDisabled + @brief Indicates the user's account is disabled on the server side. + */ + FIRAuthInternalErrorCodeUserDisabled = FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeUserDisabled, + + /** @var FIRAuthInternalErrorCodeWrongPassword + @brief Indicates the user attempted sign in with a wrong password + */ + FIRAuthInternalErrorCodeWrongPassword = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeWrongPassword, + + /** @var FIRAuthInternalErrorCodeKeychainError + @brief Indicates an error occurred accessing the keychain. + @remarks The @c NSLocalizedFailureReasonErrorKey field in the @c NSError.userInfo dictionary + will contain more information about the error encountered. + */ + FIRAuthInternalErrorCodeKeychainError = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeKeychainError, + + /** @var FIRAuthInternalErrorCodeInternalError + @brief An internal error occurred. + @remarks This value is here for consistency. It's also used to make the implementation of + wrapping internal errors simpler. + */ + FIRAuthInternalErrorCodeInternalError = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeInternalError, + + /** @var FIRAuthInternalErrorCodeTooManyRequests + @brief Indicates that too many requests were made to a server method. + */ + FIRAuthInternalErrorCodeTooManyRequests = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeTooManyRequests, + + /** @var FIRAuthInternalErrorCodeInvalidCustomToken + @brief Indicates a validation error with the custom token. + */ + FIRAuthInternalErrorCodeInvalidCustomToken = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeInvalidCustomToken, + + /** @var FIRAuthInternalErrorCodeCredentialMismatch + @brief Indicates the service account and the API key belong to different projects. + */ + FIRAuthInternalErrorCodeCustomTokenMismatch = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeCustomTokenMismatch, + + /** @var FIRAuthInternalErrorCodeInvalidCredential + @brief Indicates the IDP token or requestUri is invalid. + */ + FIRAuthInternalErrorCodeInvalidCredential = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeInvalidCredential, + + /** @var FIRAuthInternalErrorCodeRequiresRecentLogin + @brief Indicates the user has attemped to change email or password more than 5 minutes after + signing in. + */ + FIRAuthInternalErrorCodeRequiresRecentLogin = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeRequiresRecentLogin, + + /** @var FIRAuthInternalErrorCodeInvalidUserToken + @brief Indicates user's saved auth credential is invalid, the user needs to sign in again. + */ + FIRAuthInternalErrorCodeInvalidUserToken = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeInvalidUserToken, + + /** @var FIRAuthInternalErrorCodeInvalidEmail + @brief Indicates the email identifier is invalid. + */ + FIRAuthInternalErrorCodeInvalidEmail = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeInvalidEmail, + + /** @var FIRAuthInternalErrorCodeAccountExistsWithDifferentCredential + @brief Indicates account linking is needed. + */ + FIRAuthInternalErrorCodeAccountExistsWithDifferentCredential = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeAccountExistsWithDifferentCredential, + + /** @var FIRAuthInternalErrorCodeProviderAlreadyLinked + @brief Indicates an attempt to link a provider to which we are already linked. + */ + FIRAuthInternalErrorCodeProviderAlreadyLinked = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeProviderAlreadyLinked, + + /** @var FIRAuthInternalErrorCodeNoSuchProvider + @brief Indicates an attempt to unlink a provider that is not is not linked. + */ + FIRAuthInternalErrorCodeNoSuchProvider = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeNoSuchProvider, + + /** @var FIRAuthInternalErrorCodeUserTokenExpired + @brief Indicates the token issue time is older than account's valid_since time. + */ + FIRAuthInternalErrorCodeUserTokenExpired = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeUserTokenExpired, + + /** @var FIRAuthInternalErrorCodeUserNotFound + @brief Indicates the user account was been found. + */ + FIRAuthInternalErrorCodeUserNotFound = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeUserNotFound, + + /** @var FIRAuthInternalErrorCodeInvalidAPIKey + @brief Indicates an invalid API Key was supplied in the request. + */ + FIRAuthInternalErrorCodeInvalidAPIKey = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeInvalidAPIKey, + + /** @var FIRAuthInternalErrorCodeOperationNotAllowed + @brief Indicates that admin disabled sign-in with the specified IDP. + */ + FIRAuthInternalErrorCodeOperationNotAllowed = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeOperationNotAllowed, + + /** @var FIRAuthInternalErrorCodeUserMismatch + @brief Indicates that user attempted to reauthenticate with a user other than the current + user. + */ + FIRAuthInternalErrorCodeUserMismatch = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeUserMismatch, + + /** @var FIRAuthInternalErrorCodeCredentialAlreadyInUse + @brief Indicates an attempt to link with a credential that has already been linked with a + different Firebase account. + */ + FIRAuthInternalErrorCodeCredentialAlreadyInUse = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeCredentialAlreadyInUse, + + /** @var FIRAuthInternalErrorCodeWeakPassword + @brief Indicates an attempt to set a password that is considered too weak. + */ + FIRAuthInternalErrorCodeWeakPassword = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeWeakPassword, + + /** @var FIRAuthInternalErrorCodeAppNotAuthorized + @brief Indicates the App is not authorized to use Firebase Authentication with the + provided API Key. + */ + FIRAuthInternalErrorCodeAppNotAuthorized = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeAppNotAuthorized, + + /** @var FIRAuthInternalErrorCodeExpiredActionCode + @brief Indicates the OOB code is expired. + */ + FIRAuthInternalErrorCodeExpiredActionCode = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeExpiredActionCode, + + /** @var FIRAuthInternalErrorCodeInvalidActionCode + @brief Indicates the OOB code is invalid. + */ + FIRAuthInternalErrorCodeInvalidActionCode = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeInvalidActionCode, + + /** Indicates that there are invalid parameters in the payload during a "send password reset email + * " attempt. + */ + FIRAuthInternalErrorCodeInvalidMessagePayload = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeInvalidMessagePayload, + + /** Indicates that the sender email is invalid during a "send password reset email" attempt. + */ + FIRAuthInternalErrorCodeInvalidSender = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeInvalidSender, + + /** Indicates that the recipient email is invalid. + */ + FIRAuthInternalErrorCodeInvalidRecipientEmail = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeInvalidRecipientEmail, + + /** Indicates that the iOS bundle ID is missing when a iOS App Store ID is provided. + */ + FIRAuthinternalErrorCodeMissingIosBundleID = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeMissingIosBundleID, + + /** Indicates that the android package name is missing when the @c androidInstallApp flag is set + to true. + */ + FIRAuthInternalErrorCodeMissingAndroidPackageName = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeMissingAndroidPackageName, + + /** Indicates that the domain specified in the continue URL is not whitelisted in the Firebase + console. + */ + FIRAuthInternalErrorCodeUnauthorizedDomain = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeUnauthorizedDomain, + + /** Indicates that the domain specified in the continue URI is not valid. + */ + FIRAuthInternalErrorCodeInvalidContinueURI = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeInvalidContinueURI, + + /** Indicates that a continue URI was not provided in a request to the backend which requires + one. + */ + FIRAuthInternalErrorCodeMissingContinueURI = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeMissingContinueURI, + + /** Indicates that an email address was expected but one was not provided. + */ + FIRAuthInternalErrorCodeMissingEmail = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeMissingEmail, + + /** Indicates that a phone number was not provided in a call to @c verifyPhoneNumber:completion:. + */ + FIRAuthInternalErrorCodeMissingPhoneNumber = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeMissingPhoneNumber, + + /** Indicates that an invalid phone number was provided in a call to @c + verifyPhoneNumber:completion:. + */ + FIRAuthInternalErrorCodeInvalidPhoneNumber = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeInvalidPhoneNumber, + + /** Indicates that the phone auth credential was created with an empty verification code. + */ + FIRAuthInternalErrorCodeMissingVerificationCode = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeMissingVerificationCode, + + /** Indicates that an invalid verification code was used in the verifyPhoneNumber request. + */ + FIRAuthInternalErrorCodeInvalidVerificationCode = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeInvalidVerificationCode, + + /** Indicates that the phone auth credential was created with an empty verification ID. + */ + FIRAuthInternalErrorCodeMissingVerificationID = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeMissingVerificationID, + + /** Indicates that the APNS device token is missing in the verifyClient request. + */ + FIRAuthInternalErrorCodeMissingAppCredential = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeMissingAppCredential, + + /** Indicates that an invalid APNS device token was used in the verifyClient request. + */ + FIRAuthInternalErrorCodeInvalidAppCredential = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeInvalidAppCredential, + + /** Indicates that the reCAPTCHA token is not valid. + */ + FIRAuthInternalErrorCodeCaptchaCheckFailed = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeCaptchaCheckFailed, + + /** Indicates that an invalid verification ID was used in the verifyPhoneNumber request. + */ + FIRAuthInternalErrorCodeInvalidVerificationID = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeInvalidVerificationID, + + /** Indicates that the quota of SMS messages for a given project has been exceeded. + */ + FIRAuthInternalErrorCodeQuotaExceeded = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeQuotaExceeded, + + /** Indicates that an attempt was made to present a new web context while one was already being + presented. + */ + FIRAuthInternalErrorCodeWebContextAlreadyPresented = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeWebContextAlreadyPresented, + + /** Indicates that the URL presentation was cancelled prematurely by the user. + */ + FIRAuthInternalErrorCodeWebContextCancelled = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeWebContextCancelled, + + /** Indicates a general failure during the app verification flow. + */ + FIRAuthInternalErrorCodeAppVerificationUserInteractionFailure = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeAppVerificationUserInteractionFailure, + + /** Indicates that the clientID used to invoke a web flow is invalid. + */ + FIRAuthInternalErrorCodeInvalidClientID = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeInvalidClientID, + + /** Indicates that a network request within a SFSafariViewController or UIWebview failed. + */ + FIRAuthInternalErrorCodeWebNetworkRequestFailed = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeWebNetworkRequestFailed, + + /** Indicates that an internal error occurred within a SFSafariViewController or UIWebview. + */ + FIRAuthInternalErrorCodeWebInternalError = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeWebInternalError, + + // The enum values between 17046 and 17051 are reserved and should NOT be used for new error + // codes. + + /** Indicates that the SMS code has expired + */ + FIRAuthInternalErrorCodeSessionExpired = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeSessionExpired, + + FIRAuthInternalErrorCodeMissingAppToken = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeMissingAppToken, + + FIRAuthInternalErrorCodeNotificationNotForwarded = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeNotificationNotForwarded, + + FIRAuthInternalErrorCodeAppNotVerified = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeAppNotVerified, + + /** Indicates that a non-null user was expected as an argmument to the operation but a null + user was provided. + */ + FIRAuthInternalErrorCodeNullUser = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeNullUser, + + FIRAuthInternalErrorCodeMalformedJWT = + FIRAuthPublicErrorCodeFlag | FIRAuthErrorCodeMalformedJWT, + + /** @var FIRAuthInternalErrorCodeRPCRequestEncodingError + @brief Indicates an error encoding the RPC request. + @remarks This is typically due to some sort of unexpected input value. + + See the @c NSUnderlyingError value in the @c NSError.userInfo dictionary for details. + */ + FIRAuthInternalErrorCodeRPCRequestEncodingError = 1, + + /** @var FIRAuthInternalErrorCodeJSONSerializationError + @brief Indicates an error serializing an RPC request. + @remarks This is typically due to some sort of unexpected input value. + + If an @c NSJSONSerialization.isValidJSONObject: check fails, the error will contain no + @c NSUnderlyingError key in the @c NSError.userInfo dictionary. If an error was + encountered calling @c NSJSONSerialization.dataWithJSONObject:options:error:, the + resulting error will be associated with the @c NSUnderlyingError key in the + @c NSError.userInfo dictionary. + */ + FIRAuthInternalErrorCodeJSONSerializationError = 2, + + /** @var FIRAuthInternalErrorCodeUnexpectedErrorResponse + @brief Indicates an HTTP error occurred and the data returned either couldn't be deserialized + or couldn't be decoded. + @remarks See the @c NSUnderlyingError value in the @c NSError.userInfo dictionary for details + about the HTTP error which occurred. + + If the response could be deserialized as JSON then the @c NSError.userInfo dictionary will + contain a value for the key @c FIRAuthErrorUserInfoDeserializedResponseKey which is the + deserialized response value. + + If the response could not be deserialized as JSON then the @c NSError.userInfo dictionary + will contain values for the @c NSUnderlyingErrorKey and @c FIRAuthErrorUserInfoDataKey + keys. + */ + FIRAuthInternalErrorCodeUnexpectedErrorResponse = 3, + + /** @var FIRAuthInternalErrorCodeUnexpectedResponse + @brief Indicates the HTTP response indicated the request was a successes, but the response + contains something other than a JSON-encoded dictionary, or the data type of the response + indicated it is different from the type of response we expected. + @remarks See the @c NSUnderlyingError value in the @c NSError.userInfo dictionary. + If this key is present in the dictionary, it may contain an error from + @c NSJSONSerialization error (indicating the response received was of the wrong data + type). + + See the @c FIRAuthErrorUserInfoDeserializedResponseKey value in the @c NSError.userInfo + dictionary. If the response could be deserialized, it's deserialized representation will + be associated with this key. If the @c NSUnderlyingError value in the @c NSError.userInfo + dictionary is @c nil, this indicates the JSON didn't represent a dictionary. + */ + FIRAuthInternalErrorCodeUnexpectedResponse = 4, + + /** @var FIRAuthInternalErrorCodeRPCResponseDecodingError + @brief Indicates an error decoding the RPC response. + This is typically due to some sort of unexpected response value from the server. + @remarks See the @c NSUnderlyingError value in the @c NSError.userInfo dictionary for details. + + See the @c FIRErrorUserInfoDecodedResponseKey value in the @c NSError.userInfo dictionary. + The deserialized representation of the response will be associated with this key. + */ + FIRAuthInternalErrorCodeRPCResponseDecodingError = 5, +}; diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthKeychain.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthKeychain.h new file mode 100644 index 0000000..c52e26a --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthKeychain.h @@ -0,0 +1,70 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + @brief The protocol for permanant data storage. + */ +@protocol FIRAuthStorage + +/** @fn initWithService: + @brief Initialize a @c FIRAuthStorage instance. + @param service The name of the storage service to use. + @return An initialized @c FIRAuthStorage instance for the specified service. + */ +- (id)initWithService:(NSString *)service; + +/** @fn dataForKey:error: + @brief Gets the data for @c key in the storage. The key is set for the attribute + @c kSecAttrAccount of a generic password query. + @param key The key to use. + @param error The address to store any error that occurs during the process, if not NULL. + If the operation was successful, its content is set to @c nil . + @return The data stored in the storage for @c key, if any. + */ +- (nullable NSData *)dataForKey:(NSString *)key error:(NSError **_Nullable)error; + +/** @fn setData:forKey:error: + @brief Sets the data for @c key in the storage. The key is set for the attribute + @c kSecAttrAccount of a generic password query. + @param data The data to store. + @param key The key to use. + @param error The address to store any error that occurs during the process, if not NULL. + @return Whether the operation succeeded or not. + */ +- (BOOL)setData:(NSData *)data forKey:(NSString *)key error:(NSError **_Nullable)error; + +/** @fn removeDataForKey:error: + @brief Removes the data for @c key in the storage. The key is set for the attribute + @c kSecAttrAccount of a generic password query. + @param key The key to use. + @param error The address to store any error that occurs during the process, if not NULL. + @return Whether the operation succeeded or not. + */ +- (BOOL)removeDataForKey:(NSString *)key error:(NSError **_Nullable)error; + +@end + +/** @class FIRAuthKeychain + @brief The utility class to manipulate data in iOS Keychain. + */ +@interface FIRAuthKeychain : NSObject +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthKeychain.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthKeychain.m new file mode 100644 index 0000000..199dea2 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthKeychain.m @@ -0,0 +1,256 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthKeychain.h" + +#import + +#import "FIRAuthErrorUtils.h" +#import "FIRAuthUserDefaultsStorage.h" + +#if FIRAUTH_USER_DEFAULTS_STORAGE_AVAILABLE +#import + +/** @var kOSVersionMatcherForUsingUserDefaults + @brief The regular expression to match all OS versions that @c FIRAuthUserDefaultsStorage is + used instead if available. + */ +static NSString *const kOSVersionMatcherForUsingUserDefaults = @"^10\\.[01](\\..*)?$"; + +#endif // FIRAUTH_USER_DEFAULTS_STORAGE_AVAILABLE + +/** @var kAccountPrefix + @brief The prefix string for keychain item account attribute before the key. + @remarks A number "1" is encoded in the prefix in case we need to upgrade the scheme in future. + */ +static NSString *const kAccountPrefix = @"firebase_auth_1_"; + +@implementation FIRAuthKeychain { + /** @var _service + @brief The name of the keychain service. + */ + NSString *_service; + + /** @var _legacyItemDeletedForKey + @brief Indicates whether or not this class knows that the legacy item for a particular key has + been deleted. + @remarks This dictionary is to avoid unecessary keychain operations against legacy items. + */ + NSMutableDictionary *_legacyEntryDeletedForKey; +} + +- (id)initWithService:(NSString *)service { + +#if FIRAUTH_USER_DEFAULTS_STORAGE_AVAILABLE + + NSString *OSVersion = [UIDevice currentDevice].systemVersion; + NSRegularExpression *regex = + [NSRegularExpression regularExpressionWithPattern:kOSVersionMatcherForUsingUserDefaults + options:0 + error:NULL]; + if ([regex numberOfMatchesInString:OSVersion options:0 range:NSMakeRange(0, OSVersion.length)]) { + return (id)[[FIRAuthUserDefaultsStorage alloc] initWithService:service]; + } + +#endif // FIRAUTH_USER_DEFAULTS_STORAGE_AVAILABLE + + self = [super init]; + if (self) { + _service = [service copy]; + _legacyEntryDeletedForKey = [[NSMutableDictionary alloc] init]; + } + return self; +} + +- (NSData *)dataForKey:(NSString *)key error:(NSError **_Nullable)error { + if (!key.length) { + [NSException raise:NSInvalidArgumentException + format:@"%@", @"The key cannot be nil or empty."]; + return nil; + } + NSData *data = [self itemWithQuery:[self genericPasswordQueryWithKey:key] error:error]; + if (error && *error) { + return nil; + } + if (data) { + return data; + } + // Check for legacy form. + if (_legacyEntryDeletedForKey[key]) { + return nil; + } + data = [self itemWithQuery:[self legacyGenericPasswordQueryWithKey:key] error:error]; + if (error && *error) { + return nil; + } + if (!data) { + // Mark legacy data as non-existing so we don't have to query it again. + _legacyEntryDeletedForKey[key] = @YES; + return nil; + } + // Move the data to current form. + if (![self setData:data forKey:key error:error]) { + return nil; + } + [self deleteLegacyItemWithKey:key]; + return data; +} + +- (BOOL)setData:(NSData *)data forKey:(NSString *)key error:(NSError **_Nullable)error { + if (!key.length) { + [NSException raise:NSInvalidArgumentException + format:@"%@", @"The key cannot be nil or empty."]; + return NO; + } + NSDictionary *attributes = @{ + (__bridge id)kSecValueData : data, + (__bridge id)kSecAttrAccessible : (__bridge id)kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly, + }; + return [self setItemWithQuery:[self genericPasswordQueryWithKey:key] + attributes:attributes + error:error]; +} + +- (BOOL)removeDataForKey:(NSString *)key error:(NSError **_Nullable)error { + if (!key.length) { + [NSException raise:NSInvalidArgumentException + format:@"%@", @"The key cannot be nil or empty."]; + return NO; + } + if (![self deleteItemWithQuery:[self genericPasswordQueryWithKey:key] error:error]) { + return NO; + } + // Legacy form item, if exists, also needs to be removed, otherwise it will be exposed when + // current form item is removed, leading to incorrect semantics. + [self deleteLegacyItemWithKey:key]; + return YES; +} + +#pragma mark - Private + +- (NSData *)itemWithQuery:(NSDictionary *)query error:(NSError **_Nullable)error { + NSMutableDictionary *returningQuery = [query mutableCopy]; + returningQuery[(__bridge id)kSecReturnData] = @YES; + returningQuery[(__bridge id)kSecReturnAttributes] = @YES; + // Using a match limit of 2 means that we can check whether there is more than one item. + // If we used a match limit of 1 we would never find out. + returningQuery[(__bridge id)kSecMatchLimit] = @2; + + CFArrayRef result = NULL; + OSStatus status = SecItemCopyMatching((__bridge CFDictionaryRef)returningQuery, + (CFTypeRef *)&result); + + if (status == noErr && result != NULL) { + NSArray *items = (__bridge_transfer NSArray *)result; + if (items.count != 1) { + if (error) { + *error = [FIRAuthErrorUtils keychainErrorWithFunction:@"SecItemCopyMatching" + status:status]; + } + return nil; + } + + if (error) { + *error = nil; + } + NSDictionary *item = items[0]; + return item[(__bridge id)kSecValueData]; + } + + if (status == errSecItemNotFound) { + if (error) { + *error = nil; + } + } else { + if (error) { + *error = [FIRAuthErrorUtils keychainErrorWithFunction:@"SecItemCopyMatching" status:status]; + } + } + return nil; +} + +- (BOOL)setItemWithQuery:(NSDictionary *)query + attributes:(NSDictionary *)attributes + error:(NSError **_Nullable)error { + NSMutableDictionary *combined = [attributes mutableCopy]; + [combined addEntriesFromDictionary:query]; + BOOL hasItem = NO; + OSStatus status = SecItemAdd((__bridge CFDictionaryRef)combined, NULL); + + if (status == errSecDuplicateItem) { + hasItem = YES; + status = SecItemUpdate((__bridge CFDictionaryRef)query, (__bridge CFDictionaryRef)attributes); + } + + if (status == noErr) { + return YES; + } + if (error) { + NSString *function = hasItem ? @"SecItemUpdate" : @"SecItemAdd"; + *error = [FIRAuthErrorUtils keychainErrorWithFunction:function status:status]; + } + return NO; +} + +- (BOOL)deleteItemWithQuery:(NSDictionary *)query error:(NSError **_Nullable)error { + OSStatus status = SecItemDelete((__bridge CFDictionaryRef)query); + if (status == noErr || status == errSecItemNotFound) { + return YES; + } + if (error) { + *error = [FIRAuthErrorUtils keychainErrorWithFunction:@"SecItemDelete" status:status]; + } + return NO; +} + +/** @fn deleteLegacyItemsWithKey: + @brief Deletes legacy item from the keychain if it is not already known to be deleted. + @param key The key for the item. + */ +- (void)deleteLegacyItemWithKey:(NSString *)key { + if (_legacyEntryDeletedForKey[key]) { + return; + } + NSDictionary *query = [self legacyGenericPasswordQueryWithKey:key]; + SecItemDelete((__bridge CFDictionaryRef)query); + _legacyEntryDeletedForKey[key] = @YES; +} + +/** @fn genericPasswordQueryWithKey: + @brief Returns a keychain query of generic password to be used to manipulate key'ed value. + @param key The key for the value being manipulated, used as the account field in the query. + */ +- (NSDictionary *)genericPasswordQueryWithKey:(NSString *)key { + return @{ + (__bridge id)kSecClass : (__bridge id)kSecClassGenericPassword, + (__bridge id)kSecAttrAccount : [kAccountPrefix stringByAppendingString:key], + (__bridge id)kSecAttrService : _service, + }; +} + +/** @fn legacyGenericPasswordQueryWithKey: + @brief Returns a keychain query of generic password without service field, which is used by + previous version of this class. + @param key The key for the value being manipulated, used as the account field in the query. + */ +- (NSDictionary *)legacyGenericPasswordQueryWithKey:(NSString *)key { + return @{ + (__bridge id)kSecClass : (__bridge id)kSecClassGenericPassword, + (__bridge id)kSecAttrAccount : key, + }; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthNotificationManager.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthNotificationManager.h new file mode 100644 index 0000000..42e5db8 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthNotificationManager.h @@ -0,0 +1,71 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import + +@class FIRAuthAppCredentialManager; + +NS_ASSUME_NONNULL_BEGIN + +/** @typedef FIRAuthNotificationForwardingCallback + @brief The type of block to receive whether or not remote notifications are being forwarded. + @param isNotificationBeingForwarded Whether or not remote notifications are being forwarded. + */ +typedef void (^FIRAuthNotificationForwardingCallback)(BOOL isNotificationBeingForwarded); + +/** @class FIRAuthNotificationManager + */ +@interface FIRAuthNotificationManager : NSObject + +/** @property timeout + @brief The timeout for checking for notification forwarding. + @remarks Only tests should access this property. + */ +@property(nonatomic, assign) NSTimeInterval timeout; + +/** @fn initWithApplication:appCredentialManager: + @brief Initializes the instance. + @param application The application. + @param appCredentialManager The object to handle app credentials delivered via notification. + @return The initialized instance. + */ +- (instancetype)initWithApplication:(UIApplication *)application + appCredentialManager:(FIRAuthAppCredentialManager *)appCredentialManager + NS_DESIGNATED_INITIALIZER; + +/** @fn init + @brief please use initWithAppCredentialManager: instead. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** @fn checkNotificationForwardingWithCallback: + @brief Checks whether or not remote notifications are being forwarded to this class. + @param callback The block to be called either immediately or in future once a result + is available. + */ +- (void)checkNotificationForwardingWithCallback:(FIRAuthNotificationForwardingCallback)callback; + +/** @fn canHandleNotification: + @brief Attempts to handle the remote notification. + @param notification The notification in question. + @return Whether or the notification has been handled. + */ +- (BOOL)canHandleNotification:(NSDictionary *)notification; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthNotificationManager.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthNotificationManager.m new file mode 100644 index 0000000..682ffcb --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthNotificationManager.m @@ -0,0 +1,177 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthNotificationManager.h" + +#import +#import "FIRAuthAppCredential.h" +#import "FIRAuthAppCredentialManager.h" +#import "FIRAuthGlobalWorkQueue.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @var kNotificationKey + @brief The key to locate payload data in the remote notification. + */ +static NSString *const kNotificationDataKey = @"com.google.firebase.auth"; + +/** @var kNotificationReceiptKey + @brief The key for the receipt in the remote notification payload data. + */ +static NSString *const kNotificationReceiptKey = @"receipt"; + +/** @var kNotificationSecretKey + @brief The key for the secret in the remote notification payload data. + */ +static NSString *const kNotificationSecretKey = @"secret"; + +/** @var kNotificationProberKey + @brief The key for marking the prober in the remote notification payload data. + */ +static NSString *const kNotificationProberKey = @"warning"; + +/** @var kProbingTimeout + @brief Timeout for probing whether the app delegate forwards the remote notification to us. + */ +static const NSTimeInterval kProbingTimeout = 1; + +@implementation FIRAuthNotificationManager { + /** @var _application + @brief The application. + */ + UIApplication *_application; + + /** @var _appCredentialManager + @brief The object to handle app credentials delivered via notification. + */ + FIRAuthAppCredentialManager *_appCredentialManager; + + /** @var _hasCheckedNotificationForwarding + @brief Whether notification forwarding has been checked or not. + */ + BOOL _hasCheckedNotificationForwarding; + + /** @var _isNotificationBeingForwarded + @brief Whether or not notification is being forwarded + */ + BOOL _isNotificationBeingForwarded; + + /** @var _pendingCallbacks + @brief All pending callbacks while a check is being performed. + */ + NSMutableArray *_pendingCallbacks; +} + +- (instancetype)initWithApplication:(UIApplication *)application + appCredentialManager:(FIRAuthAppCredentialManager *)appCredentialManager { + self = [super init]; + if (self) { + _application = application; + _appCredentialManager = appCredentialManager; + _timeout = kProbingTimeout; + } + return self; +} + +- (void)checkNotificationForwardingWithCallback:(FIRAuthNotificationForwardingCallback)callback { + if (_pendingCallbacks) { + [_pendingCallbacks addObject:callback]; + return; + } + if (_hasCheckedNotificationForwarding) { + callback(_isNotificationBeingForwarded); + return; + } + _hasCheckedNotificationForwarding = YES; + _pendingCallbacks = + [[NSMutableArray alloc] initWithObjects:callback, nil]; + dispatch_async(dispatch_get_main_queue(), ^{ + NSDictionary *proberNotification = @{ + kNotificationDataKey : @{ + kNotificationProberKey : @"This fake notification should be forwarded to Firebase Auth." + } + }; + if ([self->_application.delegate respondsToSelector: + @selector(application:didReceiveRemoteNotification:fetchCompletionHandler:)]) { + [self->_application.delegate application:self->_application + didReceiveRemoteNotification:proberNotification + fetchCompletionHandler:^(UIBackgroundFetchResult result) {}]; +#if !TARGET_OS_TV + } else if ([self->_application.delegate respondsToSelector: + @selector(application:didReceiveRemoteNotification:)]) { + [self->_application.delegate application:self->_application + didReceiveRemoteNotification:proberNotification]; +#endif + } else { + FIRLogWarning(kFIRLoggerAuth, @"I-AUT000015", + @"The UIApplicationDelegate must handle remote notification for phone number " + @"authentication to work."); + } + }); + dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(_timeout * NSEC_PER_SEC)), + FIRAuthGlobalWorkQueue(), ^{ + [self callBack]; + }); +} + +- (BOOL)canHandleNotification:(NSDictionary *)notification { + NSDictionary *data = notification[kNotificationDataKey]; + if ([data isKindOfClass:[NSString class]]) { + // Deserialize in case the data is a JSON string. + NSData *JSONData = [((NSString *)data) dataUsingEncoding:NSUTF8StringEncoding]; + data = [NSJSONSerialization JSONObjectWithData:JSONData options:0 error:NULL]; + } + if (![data isKindOfClass:[NSDictionary class]]) { + return NO; + } + if (data[kNotificationProberKey]) { + if (!_pendingCallbacks) { + // The prober notification probably comes from another instance, so pass it along. + return NO; + } + _isNotificationBeingForwarded = YES; + [self callBack]; + return YES; + } + NSString *receipt = data[kNotificationReceiptKey]; + if (![receipt isKindOfClass:[NSString class]]) { + return NO; + } + NSString *secret = data[kNotificationSecretKey]; + if (![receipt isKindOfClass:[NSString class]]) { + return NO; + } + return [_appCredentialManager canFinishVerificationWithReceipt:receipt secret:secret]; +} + +#pragma mark - Internal methods + +/** @fn callBack + @brief Calls back all pending callbacks with the result of notification forwarding check. + */ +- (void)callBack { + if (!_pendingCallbacks) { + return; + } + NSArray *allCallbacks = _pendingCallbacks; + _pendingCallbacks = nil; + for (FIRAuthNotificationForwardingCallback callback in allCallbacks) { + callback(_isNotificationBeingForwarded); + } +}; + +@end +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthOperationType.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthOperationType.h new file mode 100644 index 0000000..15d3dd7 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthOperationType.h @@ -0,0 +1,47 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + @brief Indicates the type of operation performed for RPCs that support the operation + parameter. + */ +typedef NS_ENUM(NSInteger, FIRAuthOperationType) { + /** Indicates that the operation type is uspecified. + */ + FIRAuthOperationTypeUnspecified = 0, + + /** Indicates that the operation type is sign in or sign up. + */ + FIRAuthOperationTypeSignUpOrSignIn = 1, + + /** Indicates that the operation type is reauthentication. + */ + FIRAuthOperationTypeReauth = 2, + + /** Indicates that the operation type is update. + */ + FIRAuthOperationTypeUpdate = 3, + + /** Indicates that the operation type is link. + */ + FIRAuthOperationTypeLink = 4, +}; + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthProvider.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthProvider.m new file mode 100644 index 0000000..72a00ef --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthProvider.m @@ -0,0 +1,63 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#pragma mark - Provider ID constants + +// Declared 'extern' in FIRGoogleAuthProvider.h +NSString *const FIRGoogleAuthProviderID = @"google.com"; + +// Declared 'extern' in FIRFacebookAuthProvider.h +NSString *const FIRFacebookAuthProviderID = @"facebook.com"; + +// Declared 'extern' in FIREmailAuthProvider.h +NSString *const FIREmailAuthProviderID = @"password"; + +// Declared 'extern' in FIREmailAuthProvider.h +NSString *const FIREmailPasswordAuthProviderID = @"password"; + +// Declared 'extern' in FIRTwitterAuthProvider.h +NSString *const FIRTwitterAuthProviderID = @"twitter.com"; + +// Declared 'extern' in FIRGitHubAuthProvider.h +NSString *const FIRGitHubAuthProviderID = @"github.com"; + +// Declared 'extern' in FIRPhoneAuthProvider.h +NSString *const FIRPhoneAuthProviderID = @"phone"; + +#pragma mark - sign-in methods constants + +// Declared 'extern' in FIRGoogleAuthProvider.h +NSString *const FIRGoogleAuthSignInMethod = @"google.com"; + +// Declared 'extern' in FIREmailAuthProvider.h +NSString *const FIREmailPasswordAuthSignInMethod = @"password"; + +// Declared 'extern' in FIREmailAuthProvider.h +NSString *const FIREmailLinkAuthSignInMethod = @"emailLink"; + +// Declared 'extern' in FIRTwitterAuthProvider.h +NSString *const FIRTwitterAuthSignInMethod = @"twitter.com"; + +// Declared 'extern' in FIRFacebookAuthProvider.h +NSString *const FIRFacebookAuthSignInMethod = @"facebook.com"; + +// Declared 'extern' in FIRGitHubAuthProvider.h +NSString *const FIRGitHubAuthSignInMethod = @"github.com"; + +// Declared 'extern' in FIRPhoneAuthProvider.h +NSString *const FIRPhoneAuthSignInMethod = @"phone"; diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthSerialTaskQueue.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthSerialTaskQueue.h new file mode 100644 index 0000000..cdae046 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthSerialTaskQueue.h @@ -0,0 +1,50 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** @typedef FIRAuthSerialTaskCompletionBlock + @brief The type of method a @c FIRAuthSerialTask must call when it is complete. + */ +typedef void (^FIRAuthSerialTaskCompletionBlock)(void); + +/** @typedef FIRAuthSerialTask + @brief Represents a unit of work submitted to a task queue. + @param complete The task MUST call the complete method when done. + */ +typedef void (^FIRAuthSerialTask)(FIRAuthSerialTaskCompletionBlock complete); + +/** @class FIRAuthSerialTaskQueue + @brief An easy to use serial task queue which supports a callback-based completion notification + system for easy asyncronous call chaining. + */ +@interface FIRAuthSerialTaskQueue : NSObject + +/** @fn enqueueTask: + @brief Enqueues a task for serial execution in the queue. + @remarks The task MUST call the complete method when done. This method is thread-safe. + The task block won't be executed concurrently with any other blocks in other task queues or + the global work queue as returned by @c FIRAuthGlobalWorkQueue , but an uncompleted task + (e.g. task block finished executation before complete method is called at a later time) + does not affect other task queues or the global work queue. + */ +- (void)enqueueTask:(FIRAuthSerialTask)task; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthSerialTaskQueue.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthSerialTaskQueue.m new file mode 100644 index 0000000..edceeec --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthSerialTaskQueue.m @@ -0,0 +1,52 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthSerialTaskQueue.h" + +#import "FIRAuthGlobalWorkQueue.h" + +@implementation FIRAuthSerialTaskQueue { + /** @var _dispatchQueue + @brief The asyncronous dispatch queue into which tasks are enqueued and processed + serially. + */ + dispatch_queue_t _dispatchQueue; +} + +- (instancetype)init { + self = [super init]; + if (self) { + _dispatchQueue = dispatch_queue_create("com.google.firebase.auth.serialTaskQueue", NULL); + dispatch_set_target_queue(_dispatchQueue, FIRAuthGlobalWorkQueue()); + } + return self; +} + +- (void)enqueueTask:(FIRAuthSerialTask)task { + // This dispatch queue will run tasks serially in FIFO order, as long as it's not suspended. + dispatch_async(self->_dispatchQueue, ^{ + // But as soon as a task is started, stop other tasks from running until the task calls it's + // completion handler, which allows the queue to resume processing of tasks. This allows the + // task to perform other asyncronous actions on other dispatch queues and "get back to us" when + // all of their sub-tasks are complete. + dispatch_suspend(self->_dispatchQueue); + task(^{ + dispatch_resume(self->_dispatchQueue); + }); + }); +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthSettings.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthSettings.m new file mode 100644 index 0000000..575bb3c --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthSettings.m @@ -0,0 +1,29 @@ +/* + * Copyright 2018 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthSettings.h" + +@implementation FIRAuthSettings + +- (instancetype)init { + self = [super init]; + if (self) { + _appVerificationDisabledForTesting = NO; + } + return self; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthTokenResult.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthTokenResult.m new file mode 100644 index 0000000..3a06ac6 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthTokenResult.m @@ -0,0 +1,110 @@ +/* + * Copyright 2018 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthTokenResult_Internal.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @var kExpirationDateKey + @brief The key used to encode the expirationDate property for NSSecureCoding. + */ +static NSString *const kExpirationDateKey = @"expiratinDate"; + +/** @var kTokenKey + @brief The key used to encode the token property for NSSecureCoding. + */ +static NSString *const kTokenKey = @"token"; + +/** @var kAuthDateKey + @brief The key used to encode the authDate property for NSSecureCoding. + */ +static NSString *const kAuthDateKey = @"authDate"; + +/** @var kIssuedDateKey + @brief The key used to encode the issuedDate property for NSSecureCoding. + */ +static NSString *const kIssuedDateKey = @"issuedDate"; + +/** @var kSignInProviderKey + @brief The key used to encode the signInProvider property for NSSecureCoding. + */ +static NSString *const kSignInProviderKey = @"signInProvider"; + +/** @var kClaimsKey + @brief The key used to encode the claims property for NSSecureCoding. + */ +static NSString *const kClaimsKey = @"claims"; + +@implementation FIRAuthTokenResult + +- (instancetype)initWithToken:(NSString *)token + expirationDate:(NSDate *)expirationDate + authDate:(NSDate *)authDate + issuedAtDate:(NSDate *)issuedAtDate + signInProvider:(NSString *)signInProvider + claims:(NSDictionary *)claims { + self = [super init]; + if (self) { + _token = token; + _expirationDate = expirationDate; + _authDate = authDate; + _issuedAtDate = issuedAtDate; + _signInProvider = signInProvider; + _claims = claims; + } + return self; +} + +#pragma mark - NSSecureCoding + ++ (BOOL)supportsSecureCoding { + return YES; +} + +- (nullable instancetype)initWithCoder:(NSCoder *)aDecoder { + NSString *token = + [aDecoder decodeObjectOfClass:[NSDate class] forKey:kTokenKey]; + NSDate *expirationDate = + [aDecoder decodeObjectOfClass:[NSDate class] forKey:kExpirationDateKey]; + NSDate *authDate = + [aDecoder decodeObjectOfClass:[NSDate class] forKey:kAuthDateKey]; + NSDate *issuedAtDate = + [aDecoder decodeObjectOfClass:[NSDate class] forKey:kAuthDateKey]; + NSString *signInProvider = + [aDecoder decodeObjectOfClass:[NSString class] forKey:kSignInProviderKey]; + NSDictionary *claims = + [aDecoder decodeObjectOfClass:[NSDictionary class] forKey:kClaimsKey]; + + return [self initWithToken:token + expirationDate:expirationDate + authDate:authDate + issuedAtDate:issuedAtDate + signInProvider:signInProvider + claims:claims]; +} + +- (void)encodeWithCoder:(NSCoder *)aCoder { + [aCoder encodeObject:_token forKey:kTokenKey]; + [aCoder encodeObject:_expirationDate forKey:kExpirationDateKey]; + [aCoder encodeObject:_authDate forKey:kAuthDateKey]; + [aCoder encodeObject:_issuedAtDate forKey:kIssuedDateKey]; + [aCoder encodeObject:_signInProvider forKey:kSignInProviderKey]; + [aCoder encodeObject:_claims forKey:kClaimsKey]; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthTokenResult_Internal.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthTokenResult_Internal.h new file mode 100644 index 0000000..2914f2a --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthTokenResult_Internal.h @@ -0,0 +1,37 @@ +/* + * Copyright 2018 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + #import + + #import "FIRAuthTokenResult.h" + + NS_ASSUME_NONNULL_BEGIN + +/** @extension FIRAuthAPNSTokenResult + @brief An internal class used to expose internal methods of FIRAuthAPNSTokenResult. + */ +@interface FIRAuthTokenResult () + +- (instancetype)initWithToken:(NSString *)token + expirationDate:(NSDate *)expirationDate + authDate:(NSDate *)authDate + issuedAtDate:(NSDate *)issuedAtDate + signInProvider:(NSString *)signInProvider + claims:(NSDictionary *)claims; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthURLPresenter.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthURLPresenter.h new file mode 100644 index 0000000..a886a3e --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthURLPresenter.h @@ -0,0 +1,64 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +@protocol FIRAuthUIDelegate; + +/** @typedef FIRAuthURLPresentationCompletion + @brief The type of block invoked when the URLPresentation completes. + @param callbackURL The callback URL if the presentation ends with a matching callback. + @param error The error if the presentation fails to start or ends with an error. + */ +typedef void (^FIRAuthURLPresentationCompletion)(NSURL *_Nullable callbackURL, + NSError *_Nullable error); + +/** @typedef FIRAuthCallbackMatcher + @brief The type of block invoked for checking whether a callback URL matches. + @param callbackURL The callback URL to check for match. + @return Whether or not the specific callback URL matches or not. + */ +typedef BOOL (^FIRAuthURLCallbackMatcher)(NSURL * _Nullable callbackURL); + +/** @class FIRAuthURLPresenter + @brief A Class responsible for presenting URL via SFSafariViewController or UIWebView. + */ +@interface FIRAuthURLPresenter : NSObject + +/** @fn presentURL:UIDelegate:callbackMatcher:completion: + @brief Presents an URL to interact with user. + @param URL The URL to present. + @param UIDelegate The UI delegate to present view controller. + @param completion A block to be called either synchronously if the presentation fails to start, + or asynchronously in future on an unspecified thread once the presentation finishes. + */ +- (void)presentURL:(NSURL *)URL + UIDelegate:(nullable id)UIDelegate + callbackMatcher:(FIRAuthURLCallbackMatcher)callbackMatcher + completion:(FIRAuthURLPresentationCompletion)completion; + +/** @fn canHandleURL: + @brief Determines if a URL was produced by the currently presented URL. + @param URL The URL to handle. + @return Whether the URL could be handled or not. + */ +- (BOOL)canHandleURL:(NSURL *)URL; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthURLPresenter.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthURLPresenter.m new file mode 100644 index 0000000..d8e3593 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthURLPresenter.m @@ -0,0 +1,190 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthURLPresenter.h" + +#import + +#import "FIRAuthDefaultUIDelegate.h" +#import "FIRAuthErrorUtils.h" +#import "FIRAuthGlobalWorkQueue.h" +#import "FIRAuthUIDelegate.h" +#import "FIRAuthWebViewController.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRAuthURLPresenter () +@end + +// Disable unguarded availability warnings because SFSafariViewController is been used throughout +// the code, including as an iVar, which cannot be simply excluded by @available check. +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wunguarded-availability" + +@implementation FIRAuthURLPresenter { + /** @var _isPresenting + @brief Whether or not some web-based content is being presented. + */ + BOOL _isPresenting; + + /** @var _callbackMatcher + @brief The callback URL matcher for the current presentation, if one is active. + */ + FIRAuthURLCallbackMatcher _Nullable _callbackMatcher; + + /** @var _safariViewController + @brief The SFSafariViewController used for the current presentation, if any. + */ + SFSafariViewController *_Nullable _safariViewController; + + /** @var _webViewController + @brief The FIRAuthWebViewController used for the current presentation, if any. + */ + FIRAuthWebViewController *_Nullable _webViewController; + + /** @var _UIDelegate + @brief The UIDelegate used to present the SFSafariViewController. + */ + id _UIDelegate; + + /** @var _completion + @brief The completion handler for the current presentaion, if one is active. + @remarks This variable is also used as a flag to indicate a presentation is active. + */ + FIRAuthURLPresentationCompletion _Nullable _completion; +} + +- (void)presentURL:(NSURL *)URL + UIDelegate:(nullable id)UIDelegate + callbackMatcher:(FIRAuthURLCallbackMatcher)callbackMatcher + completion:(FIRAuthURLPresentationCompletion)completion { + if (_isPresenting) { + // Unable to start a new presentation on top of another. + _completion(nil, [FIRAuthErrorUtils webContextAlreadyPresentedErrorWithMessage:nil]); + return; + } + _isPresenting = YES; + _callbackMatcher = callbackMatcher; + _completion = completion; + dispatch_async(dispatch_get_main_queue(), ^() { + self->_UIDelegate = UIDelegate ?: [FIRAuthDefaultUIDelegate defaultUIDelegate]; + if ([SFSafariViewController class]) { + self->_safariViewController = [[SFSafariViewController alloc] initWithURL:URL]; + self->_safariViewController.delegate = self; + [self->_UIDelegate presentViewController:self->_safariViewController + animated:YES + completion:nil]; + return; + } else { + self->_webViewController = [[FIRAuthWebViewController alloc] initWithURL:URL delegate:self]; + UINavigationController *navController = + [[UINavigationController alloc] initWithRootViewController:self->_webViewController]; + [self->_UIDelegate presentViewController:navController animated:YES completion:nil]; + } + }); +} + +- (BOOL)canHandleURL:(NSURL *)URL { + if (_isPresenting && _callbackMatcher && _callbackMatcher(URL)) { + [self finishPresentationWithURL:URL error:nil]; + return YES; + } + return NO; +} + +#pragma mark - SFSafariViewControllerDelegate + +- (void)safariViewControllerDidFinish:(SFSafariViewController *)controller { + dispatch_async(FIRAuthGlobalWorkQueue(), ^() { + if (controller == self->_safariViewController) { + self->_safariViewController = nil; + //TODO:Ensure that the SFSafariViewController is actually removed from the screen before + //invoking finishPresentationWithURL:error: + [self finishPresentationWithURL:nil + error:[FIRAuthErrorUtils webContextCancelledErrorWithMessage:nil]]; + } + }); +} + +#pragma mark - FIRAuthwebViewControllerDelegate + +- (BOOL)webViewController:(FIRAuthWebViewController *)webViewController canHandleURL:(NSURL *)URL { + __block BOOL result = NO; + dispatch_sync(FIRAuthGlobalWorkQueue(), ^() { + if (webViewController == self->_webViewController) { + result = [self canHandleURL:URL]; + } + }); + return result; +} + +- (void)webViewControllerDidCancel:(FIRAuthWebViewController *)webViewController { + dispatch_async(FIRAuthGlobalWorkQueue(), ^() { + if (webViewController == self->_webViewController) { + [self finishPresentationWithURL:nil + error:[FIRAuthErrorUtils webContextCancelledErrorWithMessage:nil]]; + } + }); +} + +- (void)webViewController:(FIRAuthWebViewController *)webViewController + didFailWithError:(NSError *)error { + dispatch_async(FIRAuthGlobalWorkQueue(), ^() { + if (webViewController == self->_webViewController) { + [self finishPresentationWithURL:nil error:error]; + } + }); +} + +#pragma mark - Private methods + +/** @fn finishPresentationWithURL:error: + @brief Finishes the presentation for a given URL, if any. + @param URL The URL to finish presenting. + @param error The error with which to finish presenting, if any. + */ +- (void)finishPresentationWithURL:(nullable NSURL *)URL + error:(nullable NSError *)error { + _callbackMatcher = nil; + id UIDelegate = _UIDelegate; + _UIDelegate = nil; + FIRAuthURLPresentationCompletion completion = _completion; + _completion = nil; + void (^finishBlock)(void) = ^() { + self->_isPresenting = NO; + completion(URL, error); + }; + SFSafariViewController *safariViewController = _safariViewController; + _safariViewController = nil; + FIRAuthWebViewController *webViewController = _webViewController; + _webViewController = nil; + if (safariViewController || webViewController) { + dispatch_async(dispatch_get_main_queue(), ^() { + [UIDelegate dismissViewControllerAnimated:YES completion:^() { + dispatch_async(FIRAuthGlobalWorkQueue(), finishBlock); + }]; + }); + } else { + finishBlock(); + } +} + +#pragma clang diagnostic pop // ignored "-Wunguarded-availability" + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthUserDefaultsStorage.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthUserDefaultsStorage.h new file mode 100644 index 0000000..13774ab --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthUserDefaultsStorage.h @@ -0,0 +1,47 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +// This class is only available in the simulator. +#if TARGET_OS_SIMULATOR +#ifndef FIRAUTH_USER_DEFAULTS_STORAGE_AVAILABLE +#define FIRAUTH_USER_DEFAULTS_STORAGE_AVAILABLE 1 +#endif +#endif + +#if FIRAUTH_USER_DEFAULTS_STORAGE_AVAILABLE + +#import "FIRAuthKeychain.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRAuthUserDefaultsStorage + @brief The utility class to storage data in NSUserDefaults. + */ +@interface FIRAuthUserDefaultsStorage : NSObject + +/** @fn clear + @brief Clears all data from the storage. + @remarks This method is only supposed to be called from tests. + */ +- (void)clear; + +@end + +NS_ASSUME_NONNULL_END + +#endif // FIRAUTH_USER_DEFAULTS_STORAGE_AVAILABLE diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthUserDefaultsStorage.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthUserDefaultsStorage.m new file mode 100644 index 0000000..d9f012a --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthUserDefaultsStorage.m @@ -0,0 +1,78 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthUserDefaultsStorage.h" + +#if FIRAUTH_USER_DEFAULTS_STORAGE_AVAILABLE + +NS_ASSUME_NONNULL_BEGIN + +static NSString *const kPersistentDomainNamePrefix = @"com.google.Firebase.Auth."; + +@implementation FIRAuthUserDefaultsStorage { + /** @var _persistentDomainName + @brief The name of the persistent domain in user defaults. + */ + NSString *_persistentDomainName; + + /** @var _storage + @brief The backing NSUserDefaults storage for this instance. + */ + NSUserDefaults *_storage; +} + +- (id)initWithService:(NSString *)service { + self = [super init]; + if (self) { + _persistentDomainName = [kPersistentDomainNamePrefix stringByAppendingString:service]; + _storage = [[NSUserDefaults alloc] init]; + } + return self; +} + +- (nullable NSData *)dataForKey:(NSString *)key error:(NSError **_Nullable)error { + if (error) { + *error = nil; + } + NSDictionary *allData = [_storage persistentDomainForName:_persistentDomainName]; + return allData[key]; +} + +- (BOOL)setData:(NSData *)data forKey:(NSString *)key error:(NSError **_Nullable)error { + NSMutableDictionary *allData = + [([_storage persistentDomainForName:_persistentDomainName] ?: @{}) mutableCopy]; + allData[key] = data; + [_storage setPersistentDomain:allData forName:_persistentDomainName]; + return YES; +} + +- (BOOL)removeDataForKey:(NSString *)key error:(NSError **_Nullable)error { + NSMutableDictionary *allData = + [[_storage persistentDomainForName:_persistentDomainName] mutableCopy]; + [allData removeObjectForKey:key]; + [_storage setPersistentDomain:allData forName:_persistentDomainName]; + return YES; +} + +- (void)clear { + [_storage setPersistentDomain:@{} forName:_persistentDomainName]; +} + +@end + +NS_ASSUME_NONNULL_END + +#endif // FIRAUTH_USER_DEFAULTS_STORAGE_AVAILABLE diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebUtils.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebUtils.h new file mode 100644 index 0000000..dedd1a5 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebUtils.h @@ -0,0 +1,67 @@ +/* + * Copyright 2018 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FIRAuthRequestConfiguration; + +NS_ASSUME_NONNULL_BEGIN + +/** @typedef FIRFetchAuthDomainCallback + @brief The callback invoked at the end of the flow to fetch the Auth domain. + @param authDomain The Auth domain. + @param error The error that occurred while fetching the auth domain, if any. + */ +typedef void (^FIRFetchAuthDomainCallback)(NSString *_Nullable authDomain, + NSError *_Nullable error); + +/** @class FIRAuthURLUtils + @brief A utility class used to facilitate the creation of auth related URLs. + */ +@interface FIRAuthWebUtils : NSObject + +/** @fn randomStringWithLength: + @brief Generates a random string of a specified length. + */ ++ (NSString *)randomStringWithLength:(NSUInteger)length; + +/** @fn isCallbackSchemeRegisteredForCustomURLScheme: + @brief Checks whether or not the provided custom URL scheme has been registered by the app. + @param URLScheme The custom URL scheme to be checked against all custom URL schemes registered by the app. + @return whether or not the provided custom URL scheme has been registered by the app. + */ ++ (BOOL)isCallbackSchemeRegisteredForCustomURLScheme:(NSString *)URLScheme; + +/** @fn fetchAuthDomainWithCompletion:completion: + @brief Fetches the auth domain associated with the Firebase Project. + @param completion The callback invoked after the auth domain has been constructed or an error + has been encountered. + */ ++ (void)fetchAuthDomainWithRequestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + completion:(FIRFetchAuthDomainCallback)completion; + +/** @fn queryItemValue:from: + @brief Utility function to get a value from a NSURLQueryItem array. + @param name The key. + @param queryList The NSURLQueryItem array. + @return The value for the key. + */ + ++ (nullable NSString *)queryItemValue:(NSString *)name from:(NSArray *)queryList; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebUtils.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebUtils.m new file mode 100644 index 0000000..372e424 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebUtils.m @@ -0,0 +1,100 @@ +/* + * Copyright 2018 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthWebUtils.h" + +#import "FIRAuthBackend.h" +#import "FIRAuthErrorUtils.h" +#import "FIRGetProjectConfigRequest.h" +#import "FIRGetProjectConfigResponse.h" + +/** @var kAuthDomainSuffix + @brief The suffix of the auth domain pertiaining to a given Firebase project. + */ +static NSString *const kAuthDomainSuffix = @"firebaseapp.com"; + +@implementation FIRAuthWebUtils + ++ (NSString *)randomStringWithLength:(NSUInteger)length { + NSMutableString *randomString = [[NSMutableString alloc] init]; + for (int i=0; i < length; i++) { + [randomString appendString: + [NSString stringWithFormat:@"%c", 'a' + arc4random_uniform('z' - 'a' + 1)]]; + } + return randomString; +} + ++ (BOOL)isCallbackSchemeRegisteredForCustomURLScheme:(NSString *)URLScheme { + NSString *expectedCustomScheme = [URLScheme lowercaseString]; + NSArray *urlTypes = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleURLTypes"]; + for (NSDictionary *urlType in urlTypes) { + NSArray *urlTypeSchemes = urlType[@"CFBundleURLSchemes"]; + for (NSString *urlTypeScheme in urlTypeSchemes) { + if ([urlTypeScheme.lowercaseString isEqualToString:expectedCustomScheme]) { + return YES; + } + } + } + return NO; +} + ++ (void)fetchAuthDomainWithRequestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + completion:(FIRFetchAuthDomainCallback)completion { + FIRGetProjectConfigRequest *request = + [[FIRGetProjectConfigRequest alloc] initWithRequestConfiguration:requestConfiguration]; + + [FIRAuthBackend getProjectConfig:request + callback:^(FIRGetProjectConfigResponse *_Nullable response, + NSError *_Nullable error) { + if (error) { + completion(nil, error); + return; + } + NSString *authDomain; + for (NSString *domain in response.authorizedDomains) { + NSInteger index = domain.length - kAuthDomainSuffix.length; + if (index >= 2) { + if ([domain hasSuffix:kAuthDomainSuffix] && domain.length >= kAuthDomainSuffix.length + 2) { + authDomain = domain; + break; + } + } + } + if (!authDomain.length) { + completion(nil, [FIRAuthErrorUtils unexpectedErrorResponseWithDeserializedResponse:response]); + return; + } + completion(authDomain, nil); + }]; +} + +/** @fn queryItemValue:from: + @brief Utility function to get a value from a NSURLQueryItem array. + @param name The key. + @param queryList The NSURLQueryItem array. + @return The value for the key. + */ + ++ (nullable NSString *)queryItemValue:(NSString *)name from:(NSArray *)queryList { + for (NSURLQueryItem *item in queryList) { + if ([item.name isEqualToString:name]) { + return item.value; + } + } + return nil; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebView.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebView.h new file mode 100644 index 0000000..28af833 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebView.h @@ -0,0 +1,38 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRAuthWebView + @brief A class reponsible for creating a UIWebview for use within Firebase Auth. + */ +@interface FIRAuthWebView : UIView + +/** @property webView + * @brief The web view. + */ +@property(nonatomic, weak) UIWebView *webView; + +/** @property spinner + * @brief The spinner that indicates web view loading. + */ +@property(nonatomic, weak) UIActivityIndicatorView *spinner; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebView.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebView.m new file mode 100644 index 0000000..80b90f0 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebView.m @@ -0,0 +1,86 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthWebView.h" + +NS_ASSUME_NONNULL_BEGIN + +@implementation FIRAuthWebView + +- (instancetype)initWithFrame:(CGRect)frame { + self = [super initWithFrame:frame]; + if (self) { + self.backgroundColor = [UIColor whiteColor]; + [self initializeSubviews]; + } + return self; +} + +/** @fn initializeSubviews + @brief Initializes the subviews of this view. + */ +- (void)initializeSubviews { + UIWebView *webView = [self createWebView]; + UIActivityIndicatorView *spinner = [self createSpinner]; + + // The order of the following controls z-order. + [self addSubview:webView]; + [self addSubview:spinner]; + + [self layoutSubviews]; + _webView = webView; + _spinner = spinner; +} + +- (void)layoutSubviews { + CGFloat height = self.bounds.size.height; + CGFloat width = self.bounds.size.width; + _webView.frame = CGRectMake(0, 0, width, height); + _spinner.center = _webView.center; +} + +/** @fn createWebView + @brief Creates a web view to be used by this view. + @return The newly created web view. + */ +- (UIWebView *)createWebView { + UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectZero]; + // Trickery to make the web view not do weird things (like showing a black background when + // the prompt in the navigation bar animates changes.) + webView.opaque = NO; + webView.backgroundColor = [UIColor clearColor]; + webView.scrollView.opaque = NO; + webView.scrollView.backgroundColor = [UIColor clearColor]; + webView.scrollView.bounces = NO; + webView.scrollView.alwaysBounceVertical = NO; + webView.scrollView.alwaysBounceHorizontal = NO; + return webView; +} + +/** @fn createSpinner + @brief Creates a spinner to be used by this view. + @return The newly created spinner. + */ +- (UIActivityIndicatorView *)createSpinner { + UIActivityIndicatorViewStyle spinnerStyle = UIActivityIndicatorViewStyleGray; + UIActivityIndicatorView *spinner = + [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:spinnerStyle]; + return spinner; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebViewController.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebViewController.h new file mode 100644 index 0000000..4bf9678 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebViewController.h @@ -0,0 +1,73 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FIRAuthWebViewController; + +NS_ASSUME_NONNULL_BEGIN + +/** @protocol FIRAuthWebViewControllerDelegate + @brief Defines a delegate for FIRAuthWebViewController + */ +@protocol FIRAuthWebViewControllerDelegate + +/** @fn webViewController:canHandleURL: + @brief Determines if a URL should be handled by the delegate. + @param URL The URL to handle. + @return Whether the URL could be handled or not. + */ +- (BOOL)webViewController:(FIRAuthWebViewController *)webViewController canHandleURL:(NSURL *)URL; + +/** @fn webViewControllerDidCancel: + @brief Notifies the delegate that the web view controller is being cancelled by the user. + @param webViewController The web view controller in question. + */ +- (void)webViewControllerDidCancel:(FIRAuthWebViewController *)webViewController; + +/** @fn webViewController:didFailWithError: + @brief Notifies the delegate that the web view controller failed to load a page. + @param webViewController The web view controller in question. + @param error The error that has occurred. + */ +- (void)webViewController:(FIRAuthWebViewController *)webViewController + didFailWithError:(NSError *)error; + +@end + +/** @class FIRAuthWebViewController + @brief Reponsible for creating a UIViewController for presenting a FIRAutWebView. + */ +@interface FIRAuthWebViewController : UIViewController + +/** @fn initWithNibName:bundle: + * @brief Please call initWithURL:delegate: + */ +- (instancetype)initWithNibName:(nullable NSString *)nibNameOrNil + bundle:(nullable NSBundle *)nibBundleOrNil NS_UNAVAILABLE; + +/** @fn initWithCoder: + * @brief Please call initWithURL:delegate: + */ +- (instancetype)initWithCoder:(NSCoder *)aDecoder NS_UNAVAILABLE; + +- (instancetype)initWithURL:(NSURL *)URL + delegate:(__weak id)delegate + NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebViewController.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebViewController.m new file mode 100644 index 0000000..a3ab06a --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuthWebViewController.m @@ -0,0 +1,111 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthWebViewController.h" + +#import "FIRAuthWebView.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRAuthWebViewController () +@end + +@implementation FIRAuthWebViewController { + /** @var _URL + @brief The initial URL to display. + */ + NSURL *_URL; + + /** @var _delegate + @brief The delegate to call. + */ + __weak id _delegate; + + /** @var _webView; + @brief The web view instance for easier access. + */ + __weak FIRAuthWebView *_webView; +} + +- (instancetype)initWithURL:(NSURL *)URL + delegate:(__weak id)delegate { + self = [super initWithNibName:nil bundle:nil]; + if (self) { + _URL = URL; + _delegate = delegate; + } + return self; +} + +#pragma mark - Lifecycle + +- (void)loadView { + FIRAuthWebView *webView = [[FIRAuthWebView alloc] initWithFrame:[UIScreen mainScreen].bounds]; + webView.webView.delegate = self; + self.view = webView; + _webView = webView; + self.navigationItem.leftBarButtonItem = + [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel + target:self + action:@selector(cancel)]; +} + +- (void)viewDidAppear:(BOOL)animated { + [super viewDidAppear:animated]; + + // Loads the requested URL in the web view. + [_webView.webView loadRequest:[NSURLRequest requestWithURL:_URL]]; +} + +#pragma mark - UI Targets + +- (void)cancel { + [_delegate webViewControllerDidCancel:self]; +} + +#pragma mark - UIWebViewDelegate + +- (BOOL)webView:(UIWebView *)webView + shouldStartLoadWithRequest:(NSURLRequest *)request + navigationType:(UIWebViewNavigationType)navigationType { + return ![_delegate webViewController:self canHandleURL:request.URL]; +} + +- (void)webViewDidStartLoad:(UIWebView *)webView { + // Show & animate the activity indicator. + _webView.spinner.hidden = NO; + [_webView.spinner startAnimating]; +} + +- (void)webViewDidFinishLoad:(UIWebView *)webView { + // Hide & stop the activity indicator. + _webView.spinner.hidden = YES; + [_webView.spinner stopAnimating]; +} + +- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error { + if ([error.domain isEqualToString:NSURLErrorDomain] && error.code == NSURLErrorCancelled) { + // It's okay for the page to be redirected before it is completely loaded. See b/32028062 . + return; + } + // Forward notification to our delegate. + [self webViewDidFinishLoad:webView]; + [_delegate webViewController:self didFailWithError:error]; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuth_Internal.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuth_Internal.h new file mode 100644 index 0000000..519ece3 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRAuth_Internal.h @@ -0,0 +1,120 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuth.h" + +@class FIRAuthRequestConfiguration; + +#if TARGET_OS_IOS +@class FIRAuthAPNSTokenManager; +@class FIRAuthAppCredentialManager; +@class FIRAuthNotificationManager; +@class FIRAuthURLPresenter; +#endif + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRAuth () + +/** @property requestConfiguration + @brief The configuration object comprising of paramters needed to make a request to Firebase + Auth's backend. + */ +@property(nonatomic, copy, readonly) FIRAuthRequestConfiguration *requestConfiguration; + +#if TARGET_OS_IOS + +/** @property tokenManager + @brief The manager for APNs tokens used by phone number auth. + */ +@property(nonatomic, strong, readonly) FIRAuthAPNSTokenManager *tokenManager; + +/** @property appCredentailManager + @brief The manager for app credentials used by phone number auth. + */ +@property(nonatomic, strong, readonly) FIRAuthAppCredentialManager *appCredentialManager; + +/** @property notificationManager + @brief The manager for remote notifications used by phone number auth. + */ +@property(nonatomic, strong, readonly) FIRAuthNotificationManager *notificationManager; + +/** @property authURLPresenter + @brief An object that takes care of presenting URLs via the auth instance. + */ +@property(nonatomic, strong, readonly) FIRAuthURLPresenter *authURLPresenter; + +#endif // TARGET_OS_IOS + +/** @fn initWithAPIKey:appName: + @brief Designated initializer. + @param APIKey The Google Developers Console API key for making requests from your app. + @param appName The name property of the previously created @c FIRApp instance. + */ +- (nullable instancetype)initWithAPIKey:(NSString *)APIKey + appName:(NSString *)appName NS_DESIGNATED_INITIALIZER; + +/** @fn getUserID + @brief Gets the identifier of the current user, if any. + @return The identifier of the current user, or nil if there is no current user. + */ +- (nullable NSString *)getUserID; + +/** @fn updateKeychainWithUser:error: + @brief Updates the keychain for the given user. + @param user The user to be updated. + @param error The error caused the method to fail if the method returns NO. + @return Whether updating keychain has succeeded or not. + @remarks Called by @c FIRUser when user info or token changes occur. + */ +- (BOOL)updateKeychainWithUser:(FIRUser *)user error:(NSError *_Nullable *_Nullable)error; + +/** @fn internalSignInWithCredential:callback: + @brief Convenience method for @c internalSignInAndRetrieveDataWithCredential:callback: + This method doesn't return additional identity provider data. +*/ +- (void)internalSignInWithCredential:(FIRAuthCredential *)credential + callback:(FIRAuthResultCallback)callback; + +/** @fn internalSignInAndRetrieveDataWithCredential:callback: + @brief Asynchronously signs in Firebase with the given 3rd party credentials (e.g. a Facebook + login Access Token, a Google ID Token/Access Token pair, etc.) and returns additional + identity provider data. + @param credential The credential supplied by the IdP. + @param isReauthentication Indicates whether or not the current invocation originated from an + attempt to reauthenticate. + @param callback A block which is invoked when the sign in finishes (or is cancelled.) Invoked + asynchronously on the auth global work queue in the future. + @remarks This is the internal counterpart of this method, which uses a callback that does not + update the current user. + */ +- (void)internalSignInAndRetrieveDataWithCredential:(FIRAuthCredential *)credential + isReauthentication:(BOOL)isReauthentication + callback:(nullable FIRAuthDataResultCallback)callback; + +/** @fn signOutByForceWithUserID:error: + @brief Signs out the current user. + @param userID The ID of the user to force sign out. + @param error An optional out parameter for error results. + @return @YES when the sign out request was successful. @NO otherwise. + */ +- (BOOL)signOutByForceWithUserID:(NSString *)userID error:(NSError *_Nullable *_Nullable)error; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRSecureTokenService.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRSecureTokenService.h new file mode 100644 index 0000000..989e786 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRSecureTokenService.h @@ -0,0 +1,99 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FIRAuthRequestConfiguration; + +NS_ASSUME_NONNULL_BEGIN + +/** @typedef FIRFetchAccessTokenCallback + @brief The callback used to return the value of attempting to fetch an access token. + + In the event the operation was successful @c token will be set and @c error will be @c nil. + In the event of failure @c token will be @c nil and @c error will be set. + @c tokenUpdated indicates whether either the access or the refresh token has been updated. + + The token returned should be considered ephemeral and not cached. It should be used immediately + and discarded. All operations that need this token should call fetchAccessToken and do their + work from the callback. + */ +typedef void(^FIRFetchAccessTokenCallback)(NSString *_Nullable token, + NSError *_Nullable error, + BOOL tokenUpdated); + +/** @class FIRSecureTokenService + @brief Provides services for token exchanges and refreshes. + */ +@interface FIRSecureTokenService : NSObject + +/** @property requestConfiguration + @brief The configuration for making requests to server. + */ +@property(nonatomic, strong) FIRAuthRequestConfiguration *requestConfiguration; + +/** @property rawAccessToken + @brief The cached access token. + @remarks This method is specifically for providing the access token to internal clients during + deserialization and sign-in events, and should not be used to retrieve the access token by + anyone else. + */ +@property(nonatomic, copy, readonly) NSString *rawAccessToken; + +/** @property refreshToken + @brief The refresh token for the user, or @c nil if the user has yet completed sign-in flow. + @remarks This property needs to be set manually after the instance is decoded from archive. + */ +@property(nonatomic, copy, readonly, nullable) NSString *refreshToken; + +/** @property accessTokenExpirationDate + @brief The expiration date of the cached access token. + */ +@property(nonatomic, copy, readonly, nullable) NSDate *accessTokenExpirationDate; + +/** @fn initWithRequestConfiguration:authorizationCode: + @brief Creates a @c FIRSecureTokenService with an authroization code. + @param requestConfiguration The configuration for making requests to server. + @param authorizationCode An authorization code which needs to be exchanged for STS tokens. + */ +- (instancetype)initWithRequestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + authorizationCode:(NSString *)authorizationCode; + +/** @fn initWithRequestConfiguration:accessToken:accessTokenExpirationDate:refreshToken + @brief Creates a @c FIRSecureTokenService with access and refresh tokens. + @param requestConfiguration The configuration for making requests to server. + @param accessToken The STS access token. + @param accessTokenExpirationDate The approximate expiration date of the access token. + @param refreshToken The STS refresh token. + */ +- (instancetype)initWithRequestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + accessToken:(nullable NSString *)accessToken + accessTokenExpirationDate:(nullable NSDate *)accessTokenExpirationDate + refreshToken:(NSString *)refreshToken; + +/** @fn fetchAccessTokenForcingRefresh:callback: + @brief Fetch a fresh ephemeral access token for the ID associated with this instance. The token + received in the callback should be considered short lived and not cached. + @param forceRefresh Forces the token to be refreshed. + @param callback Callback block that will be called to return either the token or an error. + Invoked asyncronously on the auth global work queue in the future. + */ +- (void)fetchAccessTokenForcingRefresh:(BOOL)forceRefresh + callback:(FIRFetchAccessTokenCallback)callback; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRSecureTokenService.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRSecureTokenService.m new file mode 100644 index 0000000..69434ff --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRSecureTokenService.m @@ -0,0 +1,206 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRSecureTokenService.h" + +#import "FIRAuth.h" +#import "FIRAuthKeychain.h" +#import "FIRAuthSerialTaskQueue.h" +#import "FIRAuthBackend.h" +#import "FIRAuthRequestConfiguration.h" +#import "FIRSecureTokenRequest.h" +#import "FIRSecureTokenResponse.h" + +/** @var kAPIKeyCodingKey + @brief The key used to encode the APIKey for NSSecureCoding. + */ +static NSString *const kAPIKeyCodingKey = @"APIKey"; + +/** @var kRefreshTokenKey + @brief The key used to encode the refresh token for NSSecureCoding. + */ +static NSString *const kRefreshTokenKey = @"refreshToken"; + +/** @var kAccessTokenKey + @brief The key used to encode the access token for NSSecureCoding. + */ +static NSString *const kAccessTokenKey = @"accessToken"; + +/** @var kAccessTokenExpirationDateKey + @brief The key used to encode the access token expiration date for NSSecureCoding. + */ +static NSString *const kAccessTokenExpirationDateKey = @"accessTokenExpirationDate"; + +/** @var kFiveMinutes + @brief Five minutes (in seconds.) + */ +static const NSTimeInterval kFiveMinutes = 5 * 60; + +@interface FIRSecureTokenService () +- (instancetype)init NS_DESIGNATED_INITIALIZER; +@end + +@implementation FIRSecureTokenService { + /** @var _taskQueue + @brief Used to serialize all requests for access tokens. + */ + FIRAuthSerialTaskQueue *_taskQueue; + + /** @var _authorizationCode + @brief An authorization code which needs to be exchanged for Secure Token Service tokens. + */ + NSString *_Nullable _authorizationCode; + + /** @var _accessToken + @brief The currently cached access token. Or |nil| if no token is currently cached. + */ + NSString *_Nullable _accessToken; +} + +- (instancetype)init { + self = [super init]; + if (self) { + _taskQueue = [[FIRAuthSerialTaskQueue alloc] init]; + } + return self; +} + +- (instancetype)initWithRequestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + authorizationCode:(NSString *)authorizationCode { + self = [self init]; + if (self) { + _requestConfiguration = requestConfiguration; + _authorizationCode = [authorizationCode copy]; + } + return self; +} + +- (instancetype)initWithRequestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + accessToken:(nullable NSString *)accessToken + accessTokenExpirationDate:(nullable NSDate *)accessTokenExpirationDate + refreshToken:(NSString *)refreshToken { + self = [self init]; + if (self) { + _requestConfiguration = requestConfiguration; + _accessToken = [accessToken copy]; + _accessTokenExpirationDate = [accessTokenExpirationDate copy]; + _refreshToken = [refreshToken copy]; + } + return self; +} + +- (void)fetchAccessTokenForcingRefresh:(BOOL)forceRefresh + callback:(FIRFetchAccessTokenCallback)callback { + [_taskQueue enqueueTask:^(FIRAuthSerialTaskCompletionBlock complete) { + if (!forceRefresh && [self hasValidAccessToken]) { + complete(); + callback(self->_accessToken, nil, NO); + } else { + [self requestAccessToken:^(NSString *_Nullable token, + NSError *_Nullable error, + BOOL tokenUpdated) { + complete(); + callback(token, error, tokenUpdated); + }]; + } + }]; +} + +- (NSString *)rawAccessToken { + return _accessToken; +} + +#pragma mark - NSSecureCoding + ++ (BOOL)supportsSecureCoding { + return YES; +} + +- (nullable instancetype)initWithCoder:(NSCoder *)aDecoder { + NSString *refreshToken = [aDecoder decodeObjectOfClass:[NSString class] forKey:kRefreshTokenKey]; + NSString *accessToken = [aDecoder decodeObjectOfClass:[NSString class] forKey:kAccessTokenKey]; + NSDate *accessTokenExpirationDate = + [aDecoder decodeObjectOfClass:[NSDate class] forKey:kAccessTokenExpirationDateKey]; + if (!refreshToken) { + return nil; + } + self = [self init]; + if (self) { + _refreshToken = refreshToken; + _accessToken = accessToken; + _accessTokenExpirationDate = accessTokenExpirationDate; + } + return self; +} + +- (void)encodeWithCoder:(NSCoder *)aCoder { + // The API key is encoded even it is not used in decoding to be compatible with previous versions + // of the library. + [aCoder encodeObject:_requestConfiguration.APIKey forKey:kAPIKeyCodingKey]; + // Authorization code is not encoded because it is not long-lived. + [aCoder encodeObject:_refreshToken forKey:kRefreshTokenKey]; + [aCoder encodeObject:_accessToken forKey:kAccessTokenKey]; + [aCoder encodeObject:_accessTokenExpirationDate forKey:kAccessTokenExpirationDateKey]; +} + +#pragma mark - Private methods + +/** @fn requestAccessToken: + @brief Makes a request to STS for an access token. + @details This handles both the case that the token has not been granted yet and that it just + needs to be refreshed. The caller is responsible for making sure that this is occurring in + a @c _taskQueue task. + @param callback Called when the fetch is complete. Invoked asynchronously on the main thread in + the future. + @remarks Because this method is guaranteed to only be called from tasks enqueued in + @c _taskQueue, we do not need any @synchronized guards around access to _accessToken/etc. + since only one of those tasks is ever running at a time, and those tasks are the only + access to and mutation of these instance variables. + */ +- (void)requestAccessToken:(FIRFetchAccessTokenCallback)callback { + FIRSecureTokenRequest *request; + if (_refreshToken.length) { + request = [FIRSecureTokenRequest refreshRequestWithRefreshToken:_refreshToken + requestConfiguration:_requestConfiguration]; + } else { + request = [FIRSecureTokenRequest authCodeRequestWithCode:_authorizationCode + requestConfiguration:_requestConfiguration]; + } + [FIRAuthBackend secureToken:request + callback:^(FIRSecureTokenResponse *_Nullable response, + NSError *_Nullable error) { + BOOL tokenUpdated = NO; + NSString *newAccessToken = response.accessToken; + if (newAccessToken.length && ![newAccessToken isEqualToString:self->_accessToken]) { + self->_accessToken = [newAccessToken copy]; + self->_accessTokenExpirationDate = response.approximateExpirationDate; + tokenUpdated = YES; + } + NSString *newRefreshToken = response.refreshToken; + if (newRefreshToken.length && + ![newRefreshToken isEqualToString:self->_refreshToken]) { + self->_refreshToken = [newRefreshToken copy]; + tokenUpdated = YES; + } + callback(newAccessToken, error, tokenUpdated); + }]; +} + +- (BOOL)hasValidAccessToken { + return _accessToken && [_accessTokenExpirationDate timeIntervalSinceNow] > kFiveMinutes; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUser.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUser.m new file mode 100644 index 0000000..0dd43d1 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUser.m @@ -0,0 +1,1385 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRUser_Internal.h" + +#import "FIRAdditionalUserInfo_Internal.h" +#import "FIRAuth.h" +#import "FIRAuthCredential_Internal.h" +#import "FIRAuthDataResult_Internal.h" +#import "FIRAuthErrorUtils.h" +#import "FIRAuthGlobalWorkQueue.h" +#import "FIRAuthSerialTaskQueue.h" +#import "FIRAuthOperationType.h" +#import "FIRAuth_Internal.h" +#import "FIRAuthBackend.h" +#import "FIRAuthRequestConfiguration.h" +#import "FIRAuthTokenResult_Internal.h" +#import "FIRDeleteAccountRequest.h" +#import "FIRDeleteAccountResponse.h" +#import "FIREmailAuthProvider.h" +#import "FIREmailPasswordAuthCredential.h" +#import "FIRGetAccountInfoRequest.h" +#import "FIRGetAccountInfoResponse.h" +#import "FIRGetOOBConfirmationCodeRequest.h" +#import "FIRGetOOBConfirmationCodeResponse.h" +#import +#import "FIRSecureTokenService.h" +#import "FIRSetAccountInfoRequest.h" +#import "FIRSetAccountInfoResponse.h" +#import "FIRUserInfoImpl.h" +#import "FIRUserMetadata_Internal.h" +#import "FIRVerifyAssertionRequest.h" +#import "FIRVerifyAssertionResponse.h" +#import "FIRVerifyCustomTokenRequest.h" +#import "FIRVerifyCustomTokenResponse.h" +#import "FIRVerifyPasswordRequest.h" +#import "FIRVerifyPasswordResponse.h" +#import "FIRVerifyPhoneNumberRequest.h" +#import "FIRVerifyPhoneNumberResponse.h" + +#if TARGET_OS_IOS +#import "FIRPhoneAuthProvider.h" +#import "AuthProviders/Phone/FIRPhoneAuthCredential_Internal.h" +#endif + +NS_ASSUME_NONNULL_BEGIN + +/** @var kUserIDCodingKey + @brief The key used to encode the user ID for NSSecureCoding. + */ +static NSString *const kUserIDCodingKey = @"userID"; + +/** @var kHasEmailPasswordCredentialCodingKey + @brief The key used to encode the hasEmailPasswordCredential property for NSSecureCoding. + */ +static NSString *const kHasEmailPasswordCredentialCodingKey = @"hasEmailPassword"; + +/** @var kAnonymousCodingKey + @brief The key used to encode the anonymous property for NSSecureCoding. + */ +static NSString *const kAnonymousCodingKey = @"anonymous"; + +/** @var kEmailCodingKey + @brief The key used to encode the email property for NSSecureCoding. + */ +static NSString *const kEmailCodingKey = @"email"; + +/** @var kPhoneNumberCodingKey + @brief The key used to encode the phoneNumber property for NSSecureCoding. + */ +static NSString *const kPhoneNumberCodingKey = @"phoneNumber"; + +/** @var kEmailVerifiedCodingKey + @brief The key used to encode the isEmailVerified property for NSSecureCoding. + */ +static NSString *const kEmailVerifiedCodingKey = @"emailVerified"; + +/** @var kDisplayNameCodingKey + @brief The key used to encode the displayName property for NSSecureCoding. + */ +static NSString *const kDisplayNameCodingKey = @"displayName"; + +/** @var kPhotoURLCodingKey + @brief The key used to encode the photoURL property for NSSecureCoding. + */ +static NSString *const kPhotoURLCodingKey = @"photoURL"; + +/** @var kProviderDataKey + @brief The key used to encode the providerData instance variable for NSSecureCoding. + */ +static NSString *const kProviderDataKey = @"providerData"; + +/** @var kAPIKeyCodingKey + @brief The key used to encode the APIKey instance variable for NSSecureCoding. + */ +static NSString *const kAPIKeyCodingKey = @"APIKey"; + +/** @var kTokenServiceCodingKey + @brief The key used to encode the tokenService instance variable for NSSecureCoding. + */ +static NSString *const kTokenServiceCodingKey = @"tokenService"; + +/** @var kMetadataCodingKey + @brief The key used to encode the metadata instance variable for NSSecureCoding. + */ +static NSString *const kMetadataCodingKey = @"metadata"; + +/** @var kMissingUsersErrorMessage + @brief The error message when there is no users array in the getAccountInfo response. + */ +static NSString *const kMissingUsersErrorMessage = @"users"; + +/** @typedef CallbackWithError + @brief The type for a callback block that only takes an error parameter. + */ +typedef void (^CallbackWithError)(NSError *_Nullable); + +/** @typedef CallbackWithUserAndError + @brief The type for a callback block that takes a user parameter and an error parameter. + */ +typedef void (^CallbackWithUserAndError)(FIRUser *_Nullable, NSError *_Nullable); + +/** @typedef CallbackWithUserAndError + @brief The type for a callback block that takes a user parameter and an error parameter. + */ +typedef void (^CallbackWithAuthDataResultAndError)(FIRAuthDataResult *_Nullable, + NSError *_Nullable); + +/** @var kMissingPasswordReason + @brief The reason why the @c FIRAuthErrorCodeWeakPassword error is thrown. + @remarks This error message will be localized in the future. + */ +static NSString *const kMissingPasswordReason = @"Missing Password"; + +/** @fn callInMainThreadWithError + @brief Calls a callback in main thread with error. + @param callback The callback to be called in main thread. + @param error The error to pass to callback. + */ +static void callInMainThreadWithError(_Nullable CallbackWithError callback, + NSError *_Nullable error) { + if (callback) { + dispatch_async(dispatch_get_main_queue(), ^{ + callback(error); + }); + } +} + +/** @fn callInMainThreadWithUserAndError + @brief Calls a callback in main thread with user and error. + @param callback The callback to be called in main thread. + @param user The user to pass to callback if there is no error. + @param error The error to pass to callback. + */ +static void callInMainThreadWithUserAndError(_Nullable CallbackWithUserAndError callback, + FIRUser *_Nonnull user, + NSError *_Nullable error) { + if (callback) { + dispatch_async(dispatch_get_main_queue(), ^{ + callback(error ? nil : user, error); + }); + } +} + +/** @fn callInMainThreadWithUserAndError + @brief Calls a callback in main thread with user and error. + @param callback The callback to be called in main thread. + @param result The result to pass to callback if there is no error. + @param error The error to pass to callback. + */ +static void callInMainThreadWithAuthDataResultAndError( + _Nullable CallbackWithAuthDataResultAndError callback, + FIRAuthDataResult *_Nullable result, + NSError *_Nullable error) { + if (callback) { + dispatch_async(dispatch_get_main_queue(), ^{ + callback(result, error); + }); + } +} + +@interface FIRUserProfileChangeRequest () + +/** @fn initWithUser: + @brief Designated initializer. + @param user The user for which we are updating profile information. + */ +- (nullable instancetype)initWithUser:(FIRUser *)user NS_DESIGNATED_INITIALIZER; + +@end + +@implementation FIRUser { + /** @var _hasEmailPasswordCredential + @brief Whether or not the user can be authenticated by using Firebase email and password. + */ + BOOL _hasEmailPasswordCredential; + + /** @var _providerData + @brief Provider specific user data. + */ + NSDictionary *_providerData; + + /** @var _taskQueue + @brief Used to serialize the update profile calls. + */ + FIRAuthSerialTaskQueue *_taskQueue; + + /** @var _tokenService + @brief A secure token service associated with this user. For performing token exchanges and + refreshing access tokens. + */ + FIRSecureTokenService *_tokenService; +} + +#pragma mark - Properties + +// Explicitly @synthesize because these properties are defined in FIRUserInfo protocol. +@synthesize uid = _userID; +@synthesize displayName = _displayName; +@synthesize photoURL = _photoURL; +@synthesize email = _email; +@synthesize phoneNumber = _phoneNumber; + +#pragma mark - + ++ (void)retrieveUserWithAuth:(FIRAuth *)auth + accessToken:(nullable NSString *)accessToken + accessTokenExpirationDate:(nullable NSDate *)accessTokenExpirationDate + refreshToken:(nullable NSString *)refreshToken + anonymous:(BOOL)anonymous + callback:(FIRRetrieveUserCallback)callback { + FIRSecureTokenService *tokenService = + [[FIRSecureTokenService alloc] initWithRequestConfiguration:auth.requestConfiguration + accessToken:accessToken + accessTokenExpirationDate:accessTokenExpirationDate + refreshToken:refreshToken]; + FIRUser *user = [[self alloc] initWithTokenService:tokenService]; + user.auth = auth; + user.requestConfiguration = auth.requestConfiguration; + [user internalGetTokenWithCallback:^(NSString *_Nullable accessToken, NSError *_Nullable error) { + if (error) { + callback(nil, error); + return; + } + FIRGetAccountInfoRequest *getAccountInfoRequest = + [[FIRGetAccountInfoRequest alloc] initWithAccessToken:accessToken + requestConfiguration:auth.requestConfiguration]; + [FIRAuthBackend getAccountInfo:getAccountInfoRequest + callback:^(FIRGetAccountInfoResponse *_Nullable response, + NSError *_Nullable error) { + if (error) { + // No need to sign out user here for errors because the user hasn't been signed in yet. + callback(nil, error); + return; + } + user->_anonymous = anonymous; + [user updateWithGetAccountInfoResponse:response]; + callback(user, nil); + }]; + }]; +} + +- (instancetype)initWithTokenService:(FIRSecureTokenService *)tokenService { + self = [super init]; + if (self) { + _providerData = @{ }; + _taskQueue = [[FIRAuthSerialTaskQueue alloc] init]; + _tokenService = tokenService; + } + return self; +} + +#pragma mark - NSSecureCoding + ++ (BOOL)supportsSecureCoding { + return YES; +} + +- (nullable instancetype)initWithCoder:(NSCoder *)aDecoder { + NSString *userID = [aDecoder decodeObjectOfClass:[NSString class] forKey:kUserIDCodingKey]; + BOOL hasAnonymousKey = [aDecoder containsValueForKey:kAnonymousCodingKey]; + BOOL anonymous = [aDecoder decodeBoolForKey:kAnonymousCodingKey]; + BOOL hasEmailPasswordCredential = + [aDecoder decodeBoolForKey:kHasEmailPasswordCredentialCodingKey]; + NSString *displayName = + [aDecoder decodeObjectOfClass:[NSString class] forKey:kDisplayNameCodingKey]; + NSURL *photoURL = + [aDecoder decodeObjectOfClass:[NSURL class] forKey:kPhotoURLCodingKey]; + NSString *email = + [aDecoder decodeObjectOfClass:[NSString class] forKey:kEmailCodingKey]; + NSString *phoneNumber = + [aDecoder decodeObjectOfClass:[NSString class] forKey:kPhoneNumberCodingKey]; + BOOL emailVerified = [aDecoder decodeBoolForKey:kEmailVerifiedCodingKey]; + NSSet *providerDataClasses = [NSSet setWithArray:@[ + [NSDictionary class], + [NSString class], + [FIRUserInfoImpl class] + ]]; + NSDictionary *providerData = + [aDecoder decodeObjectOfClasses:providerDataClasses forKey:kProviderDataKey]; + FIRSecureTokenService *tokenService = + [aDecoder decodeObjectOfClass:[FIRSecureTokenService class] forKey:kTokenServiceCodingKey]; + FIRUserMetadata *metadata = + [aDecoder decodeObjectOfClass:[FIRUserMetadata class] forKey:kMetadataCodingKey]; + NSString *APIKey = + [aDecoder decodeObjectOfClass:[FIRUserMetadata class] forKey:kAPIKeyCodingKey]; + if (!userID || !tokenService) { + return nil; + } + self = [self initWithTokenService:tokenService]; + if (self) { + _userID = userID; + // Previous version of this code didn't save 'anonymous' bit directly but deduced it from + // 'hasEmailPasswordCredential' and 'providerData' instead, so here backward compatibility is + // provided to read old format data. + _anonymous = hasAnonymousKey ? anonymous : (!hasEmailPasswordCredential && !providerData.count); + _hasEmailPasswordCredential = hasEmailPasswordCredential; + _email = email; + _emailVerified = emailVerified; + _displayName = displayName; + _photoURL = photoURL; + _providerData = providerData; + _phoneNumber = phoneNumber; + _metadata = metadata ?: [[FIRUserMetadata alloc] initWithCreationDate:nil lastSignInDate:nil]; + _requestConfiguration = [[FIRAuthRequestConfiguration alloc] initWithAPIKey:APIKey]; + } + return self; +} + +- (void)encodeWithCoder:(NSCoder *)aCoder { + [aCoder encodeObject:_userID forKey:kUserIDCodingKey]; + [aCoder encodeBool:_anonymous forKey:kAnonymousCodingKey]; + [aCoder encodeBool:_hasEmailPasswordCredential forKey:kHasEmailPasswordCredentialCodingKey]; + [aCoder encodeObject:_providerData forKey:kProviderDataKey]; + [aCoder encodeObject:_email forKey:kEmailCodingKey]; + [aCoder encodeObject:_phoneNumber forKey:kPhoneNumberCodingKey]; + [aCoder encodeBool:_emailVerified forKey:kEmailVerifiedCodingKey]; + [aCoder encodeObject:_photoURL forKey:kPhotoURLCodingKey]; + [aCoder encodeObject:_displayName forKey:kDisplayNameCodingKey]; + [aCoder encodeObject:_metadata forKey:kMetadataCodingKey]; + [aCoder encodeObject:_auth.requestConfiguration.APIKey forKey:kAPIKeyCodingKey]; + [aCoder encodeObject:_tokenService forKey:kTokenServiceCodingKey]; +} + +#pragma mark - + +- (void)setAuth:(nullable FIRAuth *)auth { + _auth = auth; + _tokenService.requestConfiguration = auth.requestConfiguration; +} + +- (NSString *)providerID { + return @"Firebase"; +} + +- (NSArray> *)providerData { + return _providerData.allValues; +} + +/** @fn getAccountInfoRefreshingCache: + @brief Gets the users's account data from the server, updating our local values. + @param callback Invoked when the request to getAccountInfo has completed, or when an error has + been detected. Invoked asynchronously on the auth global work queue in the future. + */ +- (void)getAccountInfoRefreshingCache:(void(^)(FIRGetAccountInfoResponseUser *_Nullable user, + NSError *_Nullable error))callback { + [self internalGetTokenWithCallback:^(NSString *_Nullable accessToken, NSError *_Nullable error) { + if (error) { + callback(nil, error); + return; + } + FIRGetAccountInfoRequest *getAccountInfoRequest = + [[FIRGetAccountInfoRequest alloc] initWithAccessToken:accessToken + requestConfiguration:self->_auth.requestConfiguration]; + [FIRAuthBackend getAccountInfo:getAccountInfoRequest + callback:^(FIRGetAccountInfoResponse *_Nullable response, + NSError *_Nullable error) { + if (error) { + [self signOutIfTokenIsInvalidWithError:error]; + callback(nil, error); + return; + } + [self updateWithGetAccountInfoResponse:response]; + if (![self updateKeychain:&error]) { + callback(nil, error); + return; + } + callback(response.users.firstObject, nil); + }]; + }]; +} + +- (void)updateWithGetAccountInfoResponse:(FIRGetAccountInfoResponse *)response { + FIRGetAccountInfoResponseUser *user = response.users.firstObject; + _userID = user.localID; + _email = user.email; + _emailVerified = user.emailVerified; + _displayName = user.displayName; + _photoURL = user.photoURL; + _phoneNumber = user.phoneNumber; + _hasEmailPasswordCredential = user.passwordHash.length > 0; + _metadata = + [[FIRUserMetadata alloc]initWithCreationDate:user.creationDate + lastSignInDate:user.lastLoginDate]; + NSMutableDictionary *providerData = + [NSMutableDictionary dictionary]; + for (FIRGetAccountInfoResponseProviderUserInfo *providerUserInfo in user.providerUserInfo) { + FIRUserInfoImpl *userInfo = + [FIRUserInfoImpl userInfoWithGetAccountInfoResponseProviderUserInfo:providerUserInfo]; + if (userInfo) { + providerData[providerUserInfo.providerID] = userInfo; + } + } + _providerData = [providerData copy]; +} + +/** @fn executeUserUpdateWithChanges:callback: + @brief Performs a setAccountInfo request by mutating the results of a getAccountInfo response, + atomically in regards to other calls to this method. + @param changeBlock A block responsible for mutating a template @c FIRSetAccountInfoRequest + @param callback A block to invoke when the change is complete. Invoked asynchronously on the + auth global work queue in the future. + */ +- (void)executeUserUpdateWithChanges:(void(^)(FIRGetAccountInfoResponseUser *, + FIRSetAccountInfoRequest *))changeBlock + callback:(nonnull FIRUserProfileChangeCallback)callback { + [_taskQueue enqueueTask:^(FIRAuthSerialTaskCompletionBlock _Nonnull complete) { + [self getAccountInfoRefreshingCache:^(FIRGetAccountInfoResponseUser *_Nullable user, + NSError *_Nullable error) { + if (error) { + complete(); + callback(error); + return; + } + [self internalGetTokenWithCallback:^(NSString *_Nullable accessToken, + NSError *_Nullable error) { + if (error) { + complete(); + callback(error); + return; + } + FIRAuthRequestConfiguration *configuration = self->_auth.requestConfiguration; + // Mutate setAccountInfoRequest in block: + FIRSetAccountInfoRequest *setAccountInfoRequest = + [[FIRSetAccountInfoRequest alloc] initWithRequestConfiguration:configuration]; + setAccountInfoRequest.accessToken = accessToken; + changeBlock(user, setAccountInfoRequest); + // Execute request: + [FIRAuthBackend setAccountInfo:setAccountInfoRequest + callback:^(FIRSetAccountInfoResponse *_Nullable response, + NSError *_Nullable error) { + if (error) { + [self signOutIfTokenIsInvalidWithError:error]; + complete(); + callback(error); + return; + } + if (response.IDToken && response.refreshToken) { + FIRSecureTokenService *tokenService = [[FIRSecureTokenService alloc] + initWithRequestConfiguration:configuration + accessToken:response.IDToken + accessTokenExpirationDate:response.approximateExpirationDate + refreshToken:response.refreshToken]; + [self setTokenService:tokenService callback:^(NSError *_Nullable error) { + complete(); + callback(error); + }]; + return; + } + complete(); + callback(nil); + }]; + }]; + }]; + }]; +} + +/** @fn updateKeychain: + @brief Updates the keychain for user token or info changes. + @param error The error if NO is returned. + @return Whether the operation is successful. + */ +- (BOOL)updateKeychain:(NSError *_Nullable *_Nullable)error { + return [_auth updateKeychainWithUser:self error:error]; +} + +/** @fn setTokenService:callback: + @brief Sets a new token service for the @c FIRUser instance. + @param tokenService The new token service object. + @param callback The block to be called in the global auth working queue once finished. + @remarks The method makes sure the token service has access and refresh token and the new tokens + are saved in the keychain before calling back. + */ +- (void)setTokenService:(FIRSecureTokenService *)tokenService + callback:(nonnull CallbackWithError)callback { + [tokenService fetchAccessTokenForcingRefresh:NO + callback:^(NSString *_Nullable token, + NSError *_Nullable error, + BOOL tokenUpdated) { + if (error) { + callback(error); + return; + } + self->_tokenService = tokenService; + if (![self updateKeychain:&error]) { + callback(error); + return; + } + callback(nil); + }]; +} + +#pragma mark - + +/** @fn updateEmail:password:callback: + @brief Updates email address and/or password for the current user. + @remarks May fail if there is already an email/password-based account for the same email + address. + @param email The email address for the user, if to be updated. + @param password The new password for the user, if to be updated. + @param callback The block called when the user profile change has finished. Invoked + asynchronously on the auth global work queue in the future. + @remarks May fail with a @c FIRAuthErrorCodeRequiresRecentLogin error code. + Call @c reauthentateWithCredential:completion: beforehand to avoid this error case. + */ +- (void)updateEmail:(nullable NSString *)email + password:(nullable NSString *)password + callback:(nonnull FIRUserProfileChangeCallback)callback { + if (password && ![password length]) { + callback([FIRAuthErrorUtils weakPasswordErrorWithServerResponseReason:kMissingPasswordReason]); + return; + } + BOOL hadEmailPasswordCredential = _hasEmailPasswordCredential; + [self executeUserUpdateWithChanges:^(FIRGetAccountInfoResponseUser *user, + FIRSetAccountInfoRequest *request) { + if (email) { + request.email = email; + } + if (password) { + request.password = password; + } + } + callback:^(NSError *error) { + if (error) { + callback(error); + return; + } + if (email) { + self->_email = [email copy]; + } + if (self->_email) { + if (!hadEmailPasswordCredential) { + // The list of providers need to be updated for the newly added email-password provider. + [self internalGetTokenWithCallback:^(NSString *_Nullable accessToken, + NSError *_Nullable error) { + if (error) { + callback(error); + return; + } + FIRAuthRequestConfiguration *requestConfiguration = self->_auth.requestConfiguration; + FIRGetAccountInfoRequest *getAccountInfoRequest = + [[FIRGetAccountInfoRequest alloc] initWithAccessToken:accessToken + requestConfiguration:requestConfiguration]; + [FIRAuthBackend getAccountInfo:getAccountInfoRequest + callback:^(FIRGetAccountInfoResponse *_Nullable response, + NSError *_Nullable error) { + if (error) { + [self signOutIfTokenIsInvalidWithError:error]; + callback(error); + return; + } + for (FIRGetAccountInfoResponseUser *userAccountInfo in response.users) { + // Set the account to non-anonymous if there are any providers, even if + // they're not email/password ones. + if (userAccountInfo.providerUserInfo.count > 0) { + self->_anonymous = NO; + } + for (FIRGetAccountInfoResponseProviderUserInfo *providerUserInfo in + userAccountInfo.providerUserInfo) { + if ([providerUserInfo.providerID isEqualToString:FIREmailAuthProviderID]) { + self->_hasEmailPasswordCredential = YES; + break; + } + } + } + [self updateWithGetAccountInfoResponse:response]; + if (![self updateKeychain:&error]) { + callback(error); + return; + } + callback(nil); + }]; + }]; + return; + } + } + if (![self updateKeychain:&error]) { + callback(error); + return; + } + callback(nil); + }]; +} + +- (void)updateEmail:(NSString *)email completion:(nullable FIRUserProfileChangeCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + [self updateEmail:email password:nil callback:^(NSError *_Nullable error) { + callInMainThreadWithError(completion, error); + }]; + }); +} + +- (void)updatePassword:(NSString *)password + completion:(nullable FIRUserProfileChangeCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + [self updateEmail:nil password:password callback:^(NSError *_Nullable error){ + callInMainThreadWithError(completion, error); + }]; + }); +} + +#if TARGET_OS_IOS +/** @fn internalUpdateOrLinkPhoneNumberCredential:completion: + @brief Updates the phone number for the user. On success, the cached user profile data is + updated. + + @param phoneAuthCredential The new phone number credential corresponding to the phone number + to be added to the Firebase account, if a phone number is already linked to the account this + new phone number will replace it. + @param isLinkOperation Boolean value indicating whether or not this is a link operation. + @param completion Optionally; the block invoked when the user profile change has finished. + Invoked asynchronously on the global work queue in the future. + */ +- (void)internalUpdateOrLinkPhoneNumberCredential:(FIRPhoneAuthCredential *)phoneAuthCredential + isLinkOperation:(BOOL)isLinkOperation + completion:(FIRUserProfileChangeCallback)completion { + [self internalGetTokenWithCallback:^(NSString *_Nullable accessToken, + NSError *_Nullable error) { + if (error) { + completion(error); + return; + } + FIRAuthOperationType operation = + isLinkOperation ? FIRAuthOperationTypeLink : FIRAuthOperationTypeUpdate; + FIRVerifyPhoneNumberRequest *request = [[FIRVerifyPhoneNumberRequest alloc] + initWithVerificationID:phoneAuthCredential.verificationID + verificationCode:phoneAuthCredential.verificationCode + operation:operation + requestConfiguration:self->_auth.requestConfiguration]; + request.accessToken = accessToken; + [FIRAuthBackend verifyPhoneNumber:request + callback:^(FIRVerifyPhoneNumberResponse *_Nullable response, + NSError *_Nullable error) { + if (error) { + [self signOutIfTokenIsInvalidWithError:error]; + completion(error); + return; + } + // Get account info to update cached user info. + [self getAccountInfoRefreshingCache:^(FIRGetAccountInfoResponseUser *_Nullable user, + NSError *_Nullable error) { + if (error) { + [self signOutIfTokenIsInvalidWithError:error]; + completion(error); + return; + } + self->_anonymous = NO; + if (![self updateKeychain:&error]) { + completion(error); + return; + } + completion(nil); + }]; + }]; + }]; +} + +- (void)updatePhoneNumberCredential:(FIRPhoneAuthCredential *)phoneAuthCredential + completion:(nullable FIRUserProfileChangeCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + [self internalUpdateOrLinkPhoneNumberCredential:phoneAuthCredential + isLinkOperation:NO + completion:^(NSError *_Nullable error) { + callInMainThreadWithError(completion, error); + }]; + }); +} +#endif + +- (FIRUserProfileChangeRequest *)profileChangeRequest { + __block FIRUserProfileChangeRequest *result; + dispatch_sync(FIRAuthGlobalWorkQueue(), ^{ + result = [[FIRUserProfileChangeRequest alloc] initWithUser:self]; + }); + return result; +} + +- (void)setDisplayName:(NSString *)displayName { + _displayName = [displayName copy]; +} + +- (void)setPhotoURL:(NSURL *)photoURL { + _photoURL = [photoURL copy]; +} + +- (NSString *)rawAccessToken { + return _tokenService.rawAccessToken; +} + +- (NSDate *)accessTokenExpirationDate { + return _tokenService.accessTokenExpirationDate; +} + +#pragma mark - + +- (void)reloadWithCompletion:(nullable FIRUserProfileChangeCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + [self getAccountInfoRefreshingCache:^(FIRGetAccountInfoResponseUser *_Nullable user, + NSError *_Nullable error) { + callInMainThreadWithError(completion, error); + }]; + }); +} + +#pragma mark - + +- (void)reauthenticateWithCredential:(FIRAuthCredential *)credential + completion:(nullable FIRUserProfileChangeCallback)completion { + FIRAuthDataResultCallback callback = ^(FIRAuthDataResult *_Nullable authResult, + NSError *_Nullable error) { + completion(error); + }; + [self reauthenticateAndRetrieveDataWithCredential:credential completion:callback]; +} + +- (void) + reauthenticateAndRetrieveDataWithCredential:(FIRAuthCredential *) credential + completion:(nullable FIRAuthDataResultCallback) completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + [self->_auth internalSignInAndRetrieveDataWithCredential:credential + isReauthentication:YES + callback:^(FIRAuthDataResult *_Nullable + authResult, + NSError *_Nullable error) { + if (error) { + // If "user not found" error returned by backend, translate to user mismatch error which is + // more accurate. + if (error.code == FIRAuthErrorCodeUserNotFound) { + error = [FIRAuthErrorUtils userMismatchError]; + } + callInMainThreadWithAuthDataResultAndError(completion, authResult, error); + return; + } + if (![authResult.user.uid isEqual:[self->_auth getUserID]]) { + callInMainThreadWithAuthDataResultAndError(completion, authResult, + [FIRAuthErrorUtils userMismatchError]); + return; + } + // Successful reauthenticate + [self setTokenService:authResult.user->_tokenService callback:^(NSError *_Nullable error) { + callInMainThreadWithAuthDataResultAndError(completion, authResult, error); + }]; + }]; + }); +} + +- (nullable NSString *)refreshToken { + __block NSString *result; + dispatch_sync(FIRAuthGlobalWorkQueue(), ^{ + result = self->_tokenService.refreshToken; + }); + return result; +} + +- (void)getIDTokenWithCompletion:(nullable FIRAuthTokenCallback)completion { + // |getIDTokenForcingRefresh:completion:| is also a public API so there is no need to dispatch to + // global work queue here. + [self getIDTokenForcingRefresh:NO completion:completion]; +} + +- (void)getIDTokenForcingRefresh:(BOOL)forceRefresh + completion:(nullable FIRAuthTokenCallback)completion { + [self getIDTokenResultForcingRefresh:forceRefresh + completion:^(FIRAuthTokenResult *_Nullable tokenResult, + NSError *_Nullable error) { + + if (completion) { + dispatch_async(dispatch_get_main_queue(), ^{ + completion(tokenResult.token, error); + }); + } + }]; +} + +- (void)getIDTokenResultWithCompletion:(nullable FIRAuthTokenResultCallback)completion { + [self getIDTokenResultForcingRefresh:NO + completion:^(FIRAuthTokenResult *_Nullable tokenResult, + NSError *_Nullable error) { + if (completion) { + dispatch_async(dispatch_get_main_queue(), ^{ + completion(tokenResult, error); + }); + } + }]; +} + +- (void)getIDTokenResultForcingRefresh:(BOOL)forceRefresh + completion:(nullable FIRAuthTokenResultCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + [self internalGetTokenForcingRefresh:forceRefresh + callback:^(NSString *_Nullable token, NSError *_Nullable error) { + FIRAuthTokenResult *tokenResult; + if (token) { + tokenResult = [self parseIDToken:token error:&error]; + } + if (completion) { + dispatch_async(dispatch_get_main_queue(), ^{ + completion(tokenResult, error); + }); + } + }]; + }); +} + +/** @fn parseIDToken:error: + @brief Parses the provided IDToken and returns an instance of FIRAuthTokenResult containing + claims obtained from the IDToken. + + @param token The raw text of the Firebase IDToken encoded in base64. + @param error An out parameter which would contain any error that occurs during parsing. + @return An instance of FIRAuthTokenResult containing claims obtained from the IDToken. + + @remarks IDToken returned from the backend in some cases is of a length that is not a multiple + of 4. In these cases this function pads the token with as many "=" characters as needed and + then attempts to parse the token. If the token cannot be parsed an error is returned via the + "error" out parameter. + */ +- (nullable FIRAuthTokenResult *)parseIDToken:(NSString *)token error:(NSError **)error { + // Though this is an internal method, errors returned here are surfaced in user-visible + // callbacks. + if (error) { + *error = nil; + } + NSArray *tokenStringArray = [token componentsSeparatedByString:@"."]; + + // The JWT should have three parts, though we only use the second in this method. + if (tokenStringArray.count != 3) { + if (error) { + *error = [FIRAuthErrorUtils malformedJWTErrorWithToken:token underlyingError:nil]; + } + return nil; + } + + // The token payload is always the second index of the array. + NSString *idToken = tokenStringArray[1]; + + // Convert the base64URL encoded string to a base64 encoded string. + // Replace "_" with "/" + NSMutableString *tokenPayload = + [[idToken stringByReplacingOccurrencesOfString:@"_" withString:@"/"] mutableCopy]; + + // Replace "-" with "+" + [tokenPayload replaceOccurrencesOfString:@"-" + withString:@"+" + options:kNilOptions + range:NSMakeRange(0, tokenPayload.length)]; + + // Pad the token payload with "=" signs if the payload's length is not a multiple of 4. + while ((tokenPayload.length % 4) != 0) { + [tokenPayload appendFormat:@"="]; + } + NSData *decodedTokenPayloadData = + [[NSData alloc] initWithBase64EncodedString:tokenPayload + options:NSDataBase64DecodingIgnoreUnknownCharacters]; + if (!decodedTokenPayloadData) { + if (error) { + *error = [FIRAuthErrorUtils malformedJWTErrorWithToken:token underlyingError:nil]; + } + return nil; + } + NSError *jsonError = nil; + NSJSONReadingOptions options = NSJSONReadingMutableContainers|NSJSONReadingAllowFragments; + NSDictionary *tokenPayloadDictionary = + [NSJSONSerialization JSONObjectWithData:decodedTokenPayloadData + options:options + error:&jsonError]; + if (jsonError != nil) { + if (error) { + *error = [FIRAuthErrorUtils malformedJWTErrorWithToken:token underlyingError:jsonError]; + } + return nil; + } + + if (!tokenPayloadDictionary) { + if (error) { + *error = [FIRAuthErrorUtils malformedJWTErrorWithToken:token underlyingError:nil]; + } + return nil; + } + + // These are dates since 00:00:00 January 1 1970, as described by the Terminology section in + // the JWT spec. https://tools.ietf.org/html/rfc7519 + NSDate *expDate = + [NSDate dateWithTimeIntervalSince1970:[tokenPayloadDictionary[@"exp"] doubleValue]]; + NSDate *authDate = + [NSDate dateWithTimeIntervalSince1970:[tokenPayloadDictionary[@"auth_time"] doubleValue]]; + NSDate *issuedDate = + [NSDate dateWithTimeIntervalSince1970:[tokenPayloadDictionary[@"iat"] doubleValue]]; + FIRAuthTokenResult *result = + [[FIRAuthTokenResult alloc] initWithToken:token + expirationDate:expDate + authDate:authDate + issuedAtDate:issuedDate + signInProvider:tokenPayloadDictionary[@"sign_in_provider"] + claims:tokenPayloadDictionary]; + return result; +} + +/** @fn internalGetTokenForcingRefresh:callback: + @brief Retrieves the Firebase authentication token, possibly refreshing it if it has expired. + @param callback The block to invoke when the token is available. Invoked asynchronously on the + global work thread in the future. + */ +- (void)internalGetTokenWithCallback:(nonnull FIRAuthTokenCallback)callback { + [self internalGetTokenForcingRefresh:NO callback:callback]; +} + +- (void)internalGetTokenForcingRefresh:(BOOL)forceRefresh + callback:(nonnull FIRAuthTokenCallback)callback { + [_tokenService fetchAccessTokenForcingRefresh:forceRefresh + callback:^(NSString *_Nullable token, + NSError *_Nullable error, + BOOL tokenUpdated) { + if (error) { + [self signOutIfTokenIsInvalidWithError:error]; + callback(nil, error); + return; + } + if (tokenUpdated) { + if (![self updateKeychain:&error]) { + callback(nil, error); + return; + } + } + callback(token, nil); + }]; +} + +- (void)linkWithCredential:(FIRAuthCredential *)credential + completion:(nullable FIRAuthResultCallback)completion { + FIRAuthDataResultCallback callback = ^(FIRAuthDataResult *_Nullable authResult, + NSError *_Nullable error) { + completion(authResult.user, error); + }; + [self linkAndRetrieveDataWithCredential:credential completion:callback]; +} + +- (void)linkAndRetrieveDataWithCredential:(FIRAuthCredential *)credential + completion:(nullable FIRAuthDataResultCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + if (self->_providerData[credential.provider]) { + callInMainThreadWithAuthDataResultAndError(completion, + nil, + [FIRAuthErrorUtils providerAlreadyLinkedError]); + return; + } + FIRAuthDataResult *result = + [[FIRAuthDataResult alloc] initWithUser:self additionalUserInfo:nil]; + if ([credential isKindOfClass:[FIREmailPasswordAuthCredential class]]) { + if (self->_hasEmailPasswordCredential) { + callInMainThreadWithAuthDataResultAndError(completion, + nil, + [FIRAuthErrorUtils providerAlreadyLinkedError]); + return; + } + FIREmailPasswordAuthCredential *emailPasswordCredential = + (FIREmailPasswordAuthCredential *)credential; + [self updateEmail:emailPasswordCredential.email + password:emailPasswordCredential.password + callback:^(NSError *error) { + if (error) { + callInMainThreadWithAuthDataResultAndError(completion, nil, error); + } else { + callInMainThreadWithAuthDataResultAndError(completion, result, nil); + } + }]; + return; + } + + #if TARGET_OS_IOS + if ([credential isKindOfClass:[FIRPhoneAuthCredential class]]) { + FIRPhoneAuthCredential *phoneAuthCredential = (FIRPhoneAuthCredential *)credential; + [self internalUpdateOrLinkPhoneNumberCredential:phoneAuthCredential + isLinkOperation:YES + completion:^(NSError *_Nullable error) { + if (error){ + callInMainThreadWithAuthDataResultAndError(completion, nil, error); + } else { + callInMainThreadWithAuthDataResultAndError(completion, result, nil); + } + }]; + return; + } + #endif + + [self->_taskQueue enqueueTask:^(FIRAuthSerialTaskCompletionBlock _Nonnull complete) { + CallbackWithAuthDataResultAndError completeWithError = + ^(FIRAuthDataResult *result, NSError *error) { + complete(); + callInMainThreadWithAuthDataResultAndError(completion, result, error); + }; + [self internalGetTokenWithCallback:^(NSString *_Nullable accessToken, + NSError *_Nullable error) { + if (error) { + completeWithError(nil, error); + return; + } + FIRAuthRequestConfiguration *requestConfiguration = self->_auth.requestConfiguration; + FIRVerifyAssertionRequest *request = + [[FIRVerifyAssertionRequest alloc] initWithProviderID:credential.provider + requestConfiguration:requestConfiguration]; + [credential prepareVerifyAssertionRequest:request]; + request.accessToken = accessToken; + [FIRAuthBackend verifyAssertion:request + callback:^(FIRVerifyAssertionResponse *response, NSError *error) { + if (error) { + [self signOutIfTokenIsInvalidWithError:error]; + completeWithError(nil, error); + return; + } + FIRAdditionalUserInfo *additionalUserInfo = + [FIRAdditionalUserInfo userInfoWithVerifyAssertionResponse:response]; + FIRAuthDataResult *result = + [[FIRAuthDataResult alloc] initWithUser:self additionalUserInfo:additionalUserInfo]; + // Update the new token and refresh user info again. + self->_tokenService = [[FIRSecureTokenService alloc] + initWithRequestConfiguration:requestConfiguration + accessToken:response.IDToken + accessTokenExpirationDate:response.approximateExpirationDate + refreshToken:response.refreshToken]; + [self internalGetTokenWithCallback:^(NSString *_Nullable accessToken, + NSError *_Nullable error) { + if (error) { + completeWithError(nil, error); + return; + } + FIRGetAccountInfoRequest *getAccountInfoRequest = + [[FIRGetAccountInfoRequest alloc] initWithAccessToken:accessToken + requestConfiguration:requestConfiguration]; + [FIRAuthBackend getAccountInfo:getAccountInfoRequest + callback:^(FIRGetAccountInfoResponse *_Nullable response, + NSError *_Nullable error) { + if (error) { + [self signOutIfTokenIsInvalidWithError:error]; + completeWithError(nil, error); + return; + } + self->_anonymous = NO; + [self updateWithGetAccountInfoResponse:response]; + if (![self updateKeychain:&error]) { + completeWithError(nil, error); + return; + } + completeWithError(result, nil); + }]; + }]; + }]; + }]; + }]; + }); +} + +- (void)unlinkFromProvider:(NSString *)provider + completion:(nullable FIRAuthResultCallback)completion { + [_taskQueue enqueueTask:^(FIRAuthSerialTaskCompletionBlock _Nonnull complete) { + CallbackWithError completeAndCallbackWithError = ^(NSError *error) { + complete(); + callInMainThreadWithUserAndError(completion, self, error); + }; + [self internalGetTokenWithCallback:^(NSString *_Nullable accessToken, + NSError *_Nullable error) { + if (error) { + completeAndCallbackWithError(error); + return; + } + FIRAuthRequestConfiguration *requestConfiguration = self->_auth.requestConfiguration; + FIRSetAccountInfoRequest *setAccountInfoRequest = + [[FIRSetAccountInfoRequest alloc] initWithRequestConfiguration:requestConfiguration]; + setAccountInfoRequest.accessToken = accessToken; + BOOL isEmailPasswordProvider = [provider isEqualToString:FIREmailAuthProviderID]; + if (isEmailPasswordProvider) { + if (!self->_hasEmailPasswordCredential) { + completeAndCallbackWithError([FIRAuthErrorUtils noSuchProviderError]); + return; + } + setAccountInfoRequest.deleteAttributes = @[ FIRSetAccountInfoUserAttributePassword ]; + } else { + if (!self->_providerData[provider]) { + completeAndCallbackWithError([FIRAuthErrorUtils noSuchProviderError]); + return; + } + setAccountInfoRequest.deleteProviders = @[ provider ]; + } + [FIRAuthBackend setAccountInfo:setAccountInfoRequest + callback:^(FIRSetAccountInfoResponse *_Nullable response, + NSError *_Nullable error) { + if (error) { + [self signOutIfTokenIsInvalidWithError:error]; + completeAndCallbackWithError(error); + return; + } + if (isEmailPasswordProvider) { + self->_hasEmailPasswordCredential = NO; + } else { + // We can't just use the provider info objects in FIRSetAcccountInfoResponse because they + // don't have localID and email fields. Remove the specific provider manually. + NSMutableDictionary *mutableProviderData = [self->_providerData mutableCopy]; + [mutableProviderData removeObjectForKey:provider]; + self->_providerData = [mutableProviderData copy]; + + #if TARGET_OS_IOS + // After successfully unlinking a phone auth provider, remove the phone number from the + // cached user info. + if ([provider isEqualToString:FIRPhoneAuthProviderID]) { + self->_phoneNumber = nil; + } + #endif + } + if (response.IDToken && response.refreshToken) { + FIRSecureTokenService *tokenService = [[FIRSecureTokenService alloc] + initWithRequestConfiguration:requestConfiguration + accessToken:response.IDToken + accessTokenExpirationDate:response.approximateExpirationDate + refreshToken:response.refreshToken]; + [self setTokenService:tokenService callback:^(NSError *_Nullable error) { + completeAndCallbackWithError(error); + }]; + return; + } + if (![self updateKeychain:&error]) { + completeAndCallbackWithError(error); + return; + } + completeAndCallbackWithError(nil); + }]; + }]; + }]; +} + +- (void)sendEmailVerificationWithCompletion:(nullable FIRSendEmailVerificationCallback)completion { + [self sendEmailVerificationWithNullableActionCodeSettings:nil completion:completion]; +} + +- (void)sendEmailVerificationWithActionCodeSettings:(FIRActionCodeSettings *)actionCodeSettings + completion:(nullable FIRSendEmailVerificationCallback) + completion { + [self sendEmailVerificationWithNullableActionCodeSettings:actionCodeSettings + completion:completion]; +} + +/** @fn sendEmailVerificationWithNullableActionCodeSettings:completion: + @brief Initiates email verification for the user. + + @param actionCodeSettings Optionally, a @c FIRActionCodeSettings object containing settings + related to the handling action codes. + */ +- (void)sendEmailVerificationWithNullableActionCodeSettings:(nullable FIRActionCodeSettings *) + actionCodeSettings + completion: + (nullable FIRSendEmailVerificationCallback) + completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + [self internalGetTokenWithCallback:^(NSString *_Nullable accessToken, + NSError *_Nullable error) { + if (error) { + callInMainThreadWithError(completion, error); + return; + } + FIRAuthRequestConfiguration *configuration = self->_auth.requestConfiguration; + FIRGetOOBConfirmationCodeRequest *request = + [FIRGetOOBConfirmationCodeRequest verifyEmailRequestWithAccessToken:accessToken + actionCodeSettings:actionCodeSettings + requestConfiguration:configuration]; + [FIRAuthBackend getOOBConfirmationCode:request + callback:^(FIRGetOOBConfirmationCodeResponse *_Nullable + response, + NSError *_Nullable error) { + [self signOutIfTokenIsInvalidWithError:error]; + callInMainThreadWithError(completion, error); + }]; + }]; + }); +} + +- (void)deleteWithCompletion:(nullable FIRUserProfileChangeCallback)completion { + dispatch_async(FIRAuthGlobalWorkQueue(), ^{ + [self internalGetTokenWithCallback:^(NSString *_Nullable accessToken, + NSError *_Nullable error) { + if (error) { + callInMainThreadWithError(completion, error); + return; + } + FIRDeleteAccountRequest *deleteUserRequest = + [[FIRDeleteAccountRequest alloc] initWitLocalID:self->_userID + accessToken:accessToken + requestConfiguration:self->_auth.requestConfiguration]; + [FIRAuthBackend deleteAccount:deleteUserRequest callback:^(NSError *_Nullable error) { + if (error) { + callInMainThreadWithError(completion, error); + return; + } + if (![self->_auth signOutByForceWithUserID:self->_userID error:&error]) { + callInMainThreadWithError(completion, error); + return; + } + callInMainThreadWithError(completion, error); + }]; + }]; + }); +} + +/** @fn signOutIfTokenIsInvalidWithError: + @brief Signs out this user if the user or the token is invalid. + @param error The error from the server. + */ +- (void)signOutIfTokenIsInvalidWithError:(nullable NSError *)error { + NSInteger errorCode = error.code; + if (errorCode == FIRAuthErrorCodeUserNotFound || + errorCode == FIRAuthErrorCodeUserDisabled || + errorCode == FIRAuthErrorCodeInvalidUserToken || + errorCode == FIRAuthErrorCodeUserTokenExpired) { + FIRLogNotice(kFIRLoggerAuth, @"I-AUT000016", + @"Invalid user token detected, user is automatically signed out."); + [_auth signOutByForceWithUserID:_userID error:NULL]; + } +} + +@end + +@implementation FIRUserProfileChangeRequest { + /** @var _user + @brief The user associated with the change request. + */ + FIRUser *_user; + + /** @var _displayName + @brief The display name value to set if @c _displayNameSet is YES. + */ + NSString *_displayName; + + /** @var _displayNameSet + @brief Indicates the display name should be part of the change request. + */ + BOOL _displayNameSet; + + /** @var _photoURL + @brief The photo URL value to set if @c _displayNameSet is YES. + */ + NSURL *_photoURL; + + /** @var _photoURLSet + @brief Indicates the photo URL should be part of the change request. + */ + BOOL _photoURLSet; + + /** @var _consumed + @brief Indicates the @c commitChangesWithCallback: method has already been invoked. + */ + BOOL _consumed; +} + +- (nullable instancetype)initWithUser:(FIRUser *)user { + self = [super init]; + if (self) { + _user = user; + } + return self; +} + +- (nullable NSString *)displayName { + return _displayName; +} + +- (void)setDisplayName:(nullable NSString *)displayName { + dispatch_sync(FIRAuthGlobalWorkQueue(), ^{ + if (self->_consumed) { + [NSException raise:NSInternalInconsistencyException + format:@"%@", + @"Invalid call to setDisplayName: after commitChangesWithCallback:."]; + return; + } + self->_displayNameSet = YES; + self->_displayName = [displayName copy]; + }); +} + +- (nullable NSURL *)photoURL { + return _photoURL; +} + +- (void)setPhotoURL:(nullable NSURL *)photoURL { + dispatch_sync(FIRAuthGlobalWorkQueue(), ^{ + if (self->_consumed) { + [NSException raise:NSInternalInconsistencyException + format:@"%@", + @"Invalid call to setPhotoURL: after commitChangesWithCallback:."]; + return; + } + self->_photoURLSet = YES; + self->_photoURL = [photoURL copy]; + }); +} + +/** @fn hasUpdates + @brief Indicates at least one field has a value which needs to be committed. + */ +- (BOOL)hasUpdates { + return _displayNameSet || _photoURLSet; +} + +- (void)commitChangesWithCompletion:(nullable FIRUserProfileChangeCallback)completion { + dispatch_sync(FIRAuthGlobalWorkQueue(), ^{ + if (self->_consumed) { + [NSException raise:NSInternalInconsistencyException + format:@"%@", + @"commitChangesWithCallback: should only be called once."]; + return; + } + self->_consumed = YES; + // Return fast if there is nothing to update: + if (![self hasUpdates]) { + callInMainThreadWithError(completion, nil); + return; + } + NSString *displayName = [self->_displayName copy]; + BOOL displayNameWasSet = self->_displayNameSet; + NSURL *photoURL = [self->_photoURL copy]; + BOOL photoURLWasSet = self->_photoURLSet; + [self->_user executeUserUpdateWithChanges:^(FIRGetAccountInfoResponseUser *user, + FIRSetAccountInfoRequest *request) { + if (photoURLWasSet) { + request.photoURL = photoURL; + } + if (displayNameWasSet) { + request.displayName = displayName; + } + } + callback:^(NSError *_Nullable error) { + if (error) { + callInMainThreadWithError(completion, error); + return; + } + if (displayNameWasSet) { + [self->_user setDisplayName:displayName]; + } + if (photoURLWasSet) { + [self->_user setPhotoURL:photoURL]; + } + if (![self->_user updateKeychain:&error]) { + callInMainThreadWithError(completion, error); + return; + } + callInMainThreadWithError(completion, nil); + }]; + }); +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUserInfoImpl.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUserInfoImpl.h new file mode 100644 index 0000000..0022a68 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUserInfoImpl.h @@ -0,0 +1,61 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRUserInfo.h" + +@class FIRGetAccountInfoResponseProviderUserInfo; + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRUserInfoImpl : NSObject + +/** @fn userInfoWithGetAccountInfoResponseProviderUserInfo: + @brief A convenience factory method for constructing a @c FIRUserInfo instance from data + returned by the getAccountInfo endpoint. + @param providerUserInfo Data returned by the getAccountInfo endpoint. + @return A new instance of @c FIRUserInfo using data from the getAccountInfo endpoint. + */ ++ (nullable instancetype)userInfoWithGetAccountInfoResponseProviderUserInfo: + (FIRGetAccountInfoResponseProviderUserInfo *)providerUserInfo; + +/** @fn init + @brief This class should not be initialized manually. + @see FIRUser.providerData + */ +- (instancetype)init NS_UNAVAILABLE; + +/** @fn initWithProviderID:userID:displayName:photoURL:email: + @brief Designated initializer. + @param providerID The provider identifier. + @param userID The unique user ID for the user (the value of the @c uid field in the token.) + @param displayName The name of the user. + @param photoURL The URL of the user's profile photo. + @param email The user's email address. + @param phoneNumber The user's phone number. + */ +- (nullable instancetype)initWithProviderID:(NSString *)providerID + userID:(NSString *)userID + displayName:(nullable NSString *)displayName + photoURL:(nullable NSURL *)photoURL + email:(nullable NSString *)email + phoneNumber:(nullable NSString *)phoneNumber + NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUserInfoImpl.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUserInfoImpl.m new file mode 100644 index 0000000..d172481 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUserInfoImpl.m @@ -0,0 +1,127 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRUserInfoImpl.h" + +#import "FIRGetAccountInfoResponse.h" + +/** @var kProviderIDCodingKey + @brief The key used to encode the providerID property for NSSecureCoding. + */ +static NSString *const kProviderIDCodingKey = @"providerID"; + +/** @var kUserIDCodingKey + @brief The key used to encode the userID property for NSSecureCoding. + */ +static NSString *const kUserIDCodingKey = @"userID"; + +/** @var kDisplayNameCodingKey + @brief The key used to encode the displayName property for NSSecureCoding. + */ +static NSString *const kDisplayNameCodingKey = @"displayName"; + +/** @var kProfileURLCodingKey + @brief The key used to encode the profileURL property for NSSecureCoding. + */ +static NSString *const kProfileURLCodingKey = @"profileURL"; + +/** @var kPhotoURLCodingKey + @brief The key used to encode the photoURL property for NSSecureCoding. + */ +static NSString *const kPhotoURLCodingKey = @"photoURL"; + +/** @var kEmailCodingKey + @brief The key used to encode the email property for NSSecureCoding. + */ +static NSString *const kEmailCodingKey = @"email"; + +/** @var kPhoneNumberCodingKey + @brief The key used to encode the phoneNumber property for NSSecureCoding. + */ +static NSString *const kPhoneNumberCodingKey = @"phoneNumber"; + +@implementation FIRUserInfoImpl + +@synthesize providerID = _providerID; +@synthesize uid = _userID; +@synthesize displayName = _displayName; +@synthesize photoURL = _photoURL; +@synthesize email = _email; +@synthesize phoneNumber = _phoneNumber; + ++ (nullable instancetype)userInfoWithGetAccountInfoResponseProviderUserInfo: + (FIRGetAccountInfoResponseProviderUserInfo *)providerUserInfo { + return [[self alloc] initWithProviderID:providerUserInfo.providerID + userID:providerUserInfo.federatedID + displayName:providerUserInfo.displayName + photoURL:providerUserInfo.photoURL + email:providerUserInfo.email + phoneNumber:providerUserInfo.phoneNumber]; +} + +- (nullable instancetype)initWithProviderID:(NSString *)providerID + userID:(NSString *)userID + displayName:(nullable NSString *)displayName + photoURL:(nullable NSURL *)photoURL + email:(nullable NSString *)email + phoneNumber:(nullable NSString *)phoneNumber { + self = [super init]; + if (self) { + _providerID = [providerID copy]; + _userID = [userID copy]; + _displayName = [displayName copy]; + _photoURL = [photoURL copy]; + _email = [email copy]; + _phoneNumber = [phoneNumber copy]; + } + return self; +} + +#pragma mark - NSSecureCoding + ++ (BOOL)supportsSecureCoding { + return YES; +} + +- (nullable instancetype)initWithCoder:(NSCoder *)aDecoder { + NSString *providerID = + [aDecoder decodeObjectOfClass:[NSString class] forKey:kProviderIDCodingKey]; + NSString *userID = [aDecoder decodeObjectOfClass:[NSString class] forKey:kUserIDCodingKey]; + NSString *displayName = + [aDecoder decodeObjectOfClass:[NSString class] forKey:kDisplayNameCodingKey]; + NSURL *photoURL = [aDecoder decodeObjectOfClass:[NSURL class] forKey:kPhotoURLCodingKey]; + NSString *email = [aDecoder decodeObjectOfClass:[NSString class] forKey:kEmailCodingKey]; + NSString *phoneNumber = + [aDecoder decodeObjectOfClass:[NSString class] forKey:kPhoneNumberCodingKey]; + + return [self initWithProviderID:providerID + userID:userID + displayName:displayName + photoURL:photoURL + email:email + phoneNumber:phoneNumber]; +} + +- (void)encodeWithCoder:(NSCoder *)aCoder { + [aCoder encodeObject:_providerID forKey:kProviderIDCodingKey]; + [aCoder encodeObject:_userID forKey:kUserIDCodingKey]; + [aCoder encodeObject:_displayName forKey:kDisplayNameCodingKey]; + [aCoder encodeObject:_photoURL forKey:kPhotoURLCodingKey]; + [aCoder encodeObject:_email forKey:kEmailCodingKey]; + [aCoder encodeObject:_phoneNumber forKey:kPhoneNumberCodingKey]; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUserMetadata.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUserMetadata.m new file mode 100644 index 0000000..8fe6509 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUserMetadata.m @@ -0,0 +1,64 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRUserMetadata_Internal.h" + +NS_ASSUME_NONNULL_BEGIN + +@implementation FIRUserMetadata + +/** @var kCreationDateCodingKey + @brief The key used to encode the creationDate property for NSSecureCoding. + */ +static NSString *const kCreationDateCodingKey = @"creationDate"; + +/** @var kLastSignInDateCodingKey + @brief The key used to encode the lastSignInDate property for NSSecureCoding. + */ +static NSString *const kLastSignInDateCodingKey = @"lastSignInDate"; + +- (instancetype)initWithCreationDate:(nullable NSDate *)creationDate + lastSignInDate:(nullable NSDate *)lastSignInDate { + self = [super init]; + if (self) { + _creationDate = [creationDate copy]; + _lastSignInDate = [lastSignInDate copy]; + } + return self; +} + +#pragma mark - NSSecureCoding + ++ (BOOL)supportsSecureCoding { + return YES; +} + +- (nullable instancetype)initWithCoder:(NSCoder *)aDecoder { + NSDate *creationDate = + [aDecoder decodeObjectOfClass:[NSDate class] forKey:kCreationDateCodingKey]; + NSDate *lastSignInDate = + [aDecoder decodeObjectOfClass:[NSDate class] forKey:kLastSignInDateCodingKey]; + return [self initWithCreationDate:creationDate lastSignInDate:lastSignInDate]; +} + +- (void)encodeWithCoder:(NSCoder *)aCoder { + [aCoder encodeObject:_creationDate forKey:kCreationDateCodingKey]; + [aCoder encodeObject:_lastSignInDate forKey:kLastSignInDateCodingKey]; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUserMetadata_Internal.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUserMetadata_Internal.h new file mode 100644 index 0000000..0b01a03 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUserMetadata_Internal.h @@ -0,0 +1,38 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRUserMetadata.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @extension FIRUserMetadata + @brief An internal class used to expose internal methods of FIRUserMetadata. + */ +@interface FIRUserMetadata () + +/** @fn initWithCreationDate:lastSignInDate: + @brief Designated initializer. + @param creationDate The creation date of the corresponding user. + @param lastSignInDate The date of the last recorded sign-in of the corresponding user. + */ +- (instancetype)initWithCreationDate:(nullable NSDate *)creationDate + lastSignInDate:(nullable NSDate *)lastSignInDate NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUser_Internal.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUser_Internal.h new file mode 100644 index 0000000..cf225b1 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FIRUser_Internal.h @@ -0,0 +1,86 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRUser.h" + +@class FIRAuth; +@class FIRAuthRequestConfiguration; + +NS_ASSUME_NONNULL_BEGIN + +/** @typedef FIRRetrieveUserCallback + @brief The type of block that is invoked when the construction of a user succeeds or fails. + @param user The user that was constructed, or nil if user construction failed. + @param error The error which occurred, or nil if the request was successful. + */ +typedef void(^FIRRetrieveUserCallback)(FIRUser *_Nullable user, NSError *_Nullable error); + +@interface FIRUser () + +/** @property rawAccessToken + @brief The cached access token. + @remarks This method is specifically for providing the access token to internal clients during + deserialization and sign-in events, and should not be used to retrieve the access token by + anyone else. + */ +@property(nonatomic, copy, readonly) NSString *rawAccessToken; + +/** @property auth + @brief A weak reference to a FIRAuth instance associated with this instance. + */ +@property(nonatomic, weak) FIRAuth *auth; + +/** @property auth + @brief A strong reference to a requestConfiguration instance associated with this user instance. + */ +@property(nonatomic, strong) FIRAuthRequestConfiguration *requestConfiguration; + +/** @var accessTokenExpirationDate + @brief The expiration date of the cached access token. + */ +@property(nonatomic, copy, readonly) NSDate *accessTokenExpirationDate; + +/** @fn retrieveUserWithAuth:accessToken:accessTokenExpirationDate:refreshToken:callback: + @brief Constructs a user with Secure Token Service tokens, and obtains user details from the + getAccountInfo endpoint. + @param auth The associated FIRAuth instance. + @param accessToken The Secure Token Service access token. + @param accessTokenExpirationDate The approximate expiration date of the access token. + @param refreshToken The Secure Token Service refresh token. + @param anonymous Whether or not the user is anonymous. + @param callback A block which is invoked when the construction succeeds or fails. Invoked + asynchronously on the auth global work queue in the future. + */ ++ (void)retrieveUserWithAuth:(FIRAuth *)auth + accessToken:(nullable NSString *)accessToken + accessTokenExpirationDate:(nullable NSDate *)accessTokenExpirationDate + refreshToken:(nullable NSString *)refreshToken + anonymous:(BOOL)anonymous + callback:(FIRRetrieveUserCallback)callback; + +/** @fn internalGetTokenForcingRefresh:callback: + @brief Retrieves the Firebase authentication token, possibly refreshing it if it has expired. + @param forceRefresh Forces a token refresh. Useful if the token becomes invalid for some reason + other than an expiration. + @param callback The block to invoke when the token is available. Invoked asynchronously on the + global work thread in the future. + */ +- (void)internalGetTokenForcingRefresh:(BOOL)forceRefresh + callback:(nonnull FIRAuthTokenCallback)callback; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FirebaseAuthVersion.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FirebaseAuthVersion.m new file mode 100644 index 0000000..c79d984 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/FirebaseAuthVersion.m @@ -0,0 +1,26 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FirebaseAuthVersion.h" + +// Convert the macro to a string +#define STR(x) STR_EXPAND(x) +#define STR_EXPAND(x) #x + +const double FirebaseAuthVersionNum = FIRAuth_MINOR_VERSION; + +const unsigned char *const FirebaseAuthVersionStr = + (const unsigned char *const)STR(FIRAuth_VERSION); diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRActionCodeSettings.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRActionCodeSettings.h new file mode 100644 index 0000000..6eb4c89 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRActionCodeSettings.h @@ -0,0 +1,84 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + #import + + NS_ASSUME_NONNULL_BEGIN + + /** @class FIRActionCodeSettings + @brief Used to set and retrieve settings related to handling action codes. + */ + NS_SWIFT_NAME(ActionCodeSettings) + @interface FIRActionCodeSettings : NSObject + + /** @property URL + @brief This URL represents the state/Continue URL in the form of a universal link. + @remarks This URL can should be contructed as a universal link that would either directly open + the app where the action code would be handled or continue to the app after the action code + is handled by Firebase. + */ + @property(nonatomic, copy, nullable) NSURL *URL; + + /** @property handleCodeInApp + @brief Indicates whether the action code link will open the app directly or after being + redirected from a Firebase owned web widget. + */ + @property(assign, nonatomic) BOOL handleCodeInApp; + + /** @property iOSBundleID + @brief The iOS bundle ID, if available. The default value is the current app's bundle ID. + */ + @property(copy, nonatomic, readonly, nullable) NSString *iOSBundleID; + + /** @property androidPackageName + @brief The Android package name, if available. + */ + @property(nonatomic, copy, readonly, nullable) NSString *androidPackageName; + + /** @property androidMinimumVersion + @brief The minimum Android version supported, if available. + */ + @property(nonatomic, copy, readonly, nullable) NSString *androidMinimumVersion; + + /** @property androidInstallIfNotAvailable + @brief Indicates whether the Android app should be installed on a device where it is not + available. + */ + @property(nonatomic, assign, readonly) BOOL androidInstallIfNotAvailable; + + /** @fn setIOSBundleID + @brief Sets the iOS bundle Id. + @param iOSBundleID The iOS bundle ID. + */ + - (void)setIOSBundleID:(NSString *)iOSBundleID; + + /** @fn setAndroidPackageName:installIfNotAvailable:minimumVersion: + @brief Sets the Android package name, the flag to indicate whether or not to install the app and + the minimum Android version supported. + @param androidPackageName The Android package name. + @param installIfNotAvailable Indicates whether or not the app should be installed if not + available. + @param minimumVersion The minimum version of Android supported. + @remarks If installIfNotAvailable is set to YES and the link is opened on an android device, it + will try to install the app if not already available. Otherwise the web URL is used. + */ + - (void)setAndroidPackageName:(NSString *)androidPackageName + installIfNotAvailable:(BOOL)installIfNotAvailable + minimumVersion:(nullable NSString *)minimumVersion; + + @end + + NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAdditionalUserInfo.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAdditionalUserInfo.h new file mode 100644 index 0000000..4f6947a --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAdditionalUserInfo.h @@ -0,0 +1,57 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FIRVerifyAssertionResponse; + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRAdditionalUserInfo + @brief Represents additional user data returned from an identity provider. + */ +NS_SWIFT_NAME(AdditionalUserInfo) +@interface FIRAdditionalUserInfo : NSObject + +/** @fn init + @brief This class should not be initialized manually. `FIRAdditionalUserInfo` can be retrieved + from from an instance of `FIRAuthDataResult`. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** @property providerID + @brief The provider identifier. + */ +@property(nonatomic, readonly) NSString *providerID; + +/** @property profile + @brief Dictionary containing the additional IdP specific information. + */ +@property(nonatomic, readonly, nullable) NSDictionary *profile; + +/** @property username + @brief username The name of the user. + */ +@property(nonatomic, readonly, nullable) NSString *username; + +/** @property newUser + @brief Indicates whether or not the current user was signed in for the first time. + */ +@property(nonatomic, readonly, getter=isNewUser) BOOL newUser; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuth.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuth.h new file mode 100644 index 0000000..cfc59b1 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuth.h @@ -0,0 +1,864 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import + +#import "FIRAuthErrors.h" + +#if TARGET_OS_IOS +#import "FIRAuthAPNSTokenType.h" +#endif + +@class FIRActionCodeSettings; +@class FIRApp; +@class FIRAuth; +@class FIRAuthCredential; +@class FIRAuthDataResult; +@class FIRAuthSettings; +@class FIRUser; +@protocol FIRAuthStateListener; + +NS_ASSUME_NONNULL_BEGIN + +/** @typedef FIRUserUpdateCallback + @brief The type of block invoked when a request to update the current user is completed. + */ +typedef void (^FIRUserUpdateCallback)(NSError *_Nullable error) NS_SWIFT_NAME(UserUpdateCallback); + +/** @typedef FIRAuthStateDidChangeListenerHandle + @brief The type of handle returned by `FIRAuth.addAuthStateDidChangeListener:`. + */ +typedef id FIRAuthStateDidChangeListenerHandle + NS_SWIFT_NAME(AuthStateDidChangeListenerHandle); + +/** @typedef FIRAuthStateDidChangeListenerBlock + @brief The type of block which can be registered as a listener for auth state did change events. + + @param auth The FIRAuth object on which state changes occurred. + @param user Optionally; the current signed in user, if any. + */ +typedef void(^FIRAuthStateDidChangeListenerBlock)(FIRAuth *auth, FIRUser *_Nullable user) + NS_SWIFT_NAME(AuthStateDidChangeListenerBlock); + +/** @typedef FIRIDTokenDidChangeListenerHandle + @brief The type of handle returned by `FIRAuth.addIDTokenDidChangeListener:`. + */ +typedef id FIRIDTokenDidChangeListenerHandle + NS_SWIFT_NAME(IDTokenDidChangeListenerHandle); + +/** @typedef FIRIDTokenDidChangeListenerBlock + @brief The type of block which can be registered as a listener for ID token did change events. + + @param auth The FIRAuth object on which ID token changes occurred. + @param user Optionally; the current signed in user, if any. + */ +typedef void(^FIRIDTokenDidChangeListenerBlock)(FIRAuth *auth, FIRUser *_Nullable user) + NS_SWIFT_NAME(IDTokenDidChangeListenerBlock); + +/** @typedef FIRAuthDataResultCallback + @brief The type of block invoked when sign-in related events complete. + + @param authResult Optionally; Result of sign-in request containing both the user and + the additional user info associated with the user. + @param error Optionally; the error which occurred - or nil if the request was successful. + */ +typedef void (^FIRAuthDataResultCallback)(FIRAuthDataResult *_Nullable authResult, + NSError *_Nullable error) + NS_SWIFT_NAME(AuthDataResultCallback); + +#if defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0 +/** + @brief The name of the `NSNotificationCenter` notification which is posted when the auth state + changes (for example, a new token has been produced, a user signs in or signs out). The + object parameter of the notification is the sender `FIRAuth` instance. + */ +extern const NSNotificationName FIRAuthStateDidChangeNotification + NS_SWIFT_NAME(AuthStateDidChange); +#else +/** + @brief The name of the `NSNotificationCenter` notification which is posted when the auth state + changes (for example, a new token has been produced, a user signs in or signs out). The + object parameter of the notification is the sender `FIRAuth` instance. + */ +extern NSString *const FIRAuthStateDidChangeNotification + NS_SWIFT_NAME(AuthStateDidChangeNotification); +#endif // defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0 + +/** @typedef FIRAuthResultCallback + @brief The type of block invoked when sign-in related events complete. + + @param user Optionally; the signed in user, if any. + @param error Optionally; if an error occurs, this is the NSError object that describes the + problem. Set to nil otherwise. + */ +typedef void (^FIRAuthResultCallback)(FIRUser *_Nullable user, NSError *_Nullable error) + NS_SWIFT_NAME(AuthResultCallback); + +/** @typedef FIRProviderQueryCallback + @brief The type of block invoked when a list of identity providers for a given email address is + requested. + + @param providers Optionally; a list of provider identifiers, if any. + @see FIRGoogleAuthProviderID etc. + @param error Optionally; if an error occurs, this is the NSError object that describes the + problem. Set to nil otherwise. + */ +typedef void (^FIRProviderQueryCallback)(NSArray *_Nullable providers, + NSError *_Nullable error) + NS_SWIFT_NAME(ProviderQueryCallback); + +/** @typedef FIRSignInMethodQueryCallback + @brief The type of block invoked when a list of sign-in methods for a given email address is + requested. + */ +typedef void (^FIRSignInMethodQueryCallback)(NSArray *_Nullable, + NSError *_Nullable) + NS_SWIFT_NAME(SignInMethodQueryCallback); + +/** @typedef FIRSendPasswordResetCallback + @brief The type of block invoked when sending a password reset email. + + @param error Optionally; if an error occurs, this is the NSError object that describes the + problem. Set to nil otherwise. + */ +typedef void (^FIRSendPasswordResetCallback)(NSError *_Nullable error) + NS_SWIFT_NAME(SendPasswordResetCallback); + +/** @typedef FIRSendSignInLinkToEmailCallback + @brief The type of block invoked when sending an email sign-in link email. + */ +typedef void (^FIRSendSignInLinkToEmailCallback)(NSError *_Nullable error) + NS_SWIFT_NAME(SendSignInLinkToEmailCallback); + +/** @typedef FIRConfirmPasswordResetCallback + @brief The type of block invoked when performing a password reset. + + @param error Optionally; if an error occurs, this is the NSError object that describes the + problem. Set to nil otherwise. + */ +typedef void (^FIRConfirmPasswordResetCallback)(NSError *_Nullable error) + NS_SWIFT_NAME(ConfirmPasswordResetCallback); + +/** @typedef FIRVerifyPasswordResetCodeCallback + @brief The type of block invoked when verifying that an out of band code should be used to + perform password reset. + + @param email Optionally; the email address of the user for which the out of band code applies. + @param error Optionally; if an error occurs, this is the NSError object that describes the + problem. Set to nil otherwise. + */ +typedef void (^FIRVerifyPasswordResetCodeCallback)(NSString *_Nullable email, + NSError *_Nullable error) + NS_SWIFT_NAME(VerifyPasswordResetCodeCallback); + +/** @typedef FIRApplyActionCodeCallback + @brief The type of block invoked when applying an action code. + + @param error Optionally; if an error occurs, this is the NSError object that describes the + problem. Set to nil otherwise. + */ +typedef void (^FIRApplyActionCodeCallback)(NSError *_Nullable error) + NS_SWIFT_NAME(ApplyActionCodeCallback); + +/** + @brief Keys used to retrieve operation data from a `FIRActionCodeInfo` object by the + `dataForKey` method. + */ +typedef NS_ENUM(NSInteger, FIRActionDataKey) { + /** + * The email address to which the code was sent. + * For FIRActionCodeOperationRecoverEmail, the new email address for the account. + */ + FIRActionCodeEmailKey = 0, + + /** For FIRActionCodeOperationRecoverEmail, the current email address for the account. */ + FIRActionCodeFromEmailKey = 1 +} NS_SWIFT_NAME(ActionDataKey); + +/** @class FIRActionCodeInfo + @brief Manages information regarding action codes. + */ +NS_SWIFT_NAME(ActionCodeInfo) +@interface FIRActionCodeInfo : NSObject + +/** + @brief Operations which can be performed with action codes. + */ +typedef NS_ENUM(NSInteger, FIRActionCodeOperation) { + /** Action code for unknown operation. */ + FIRActionCodeOperationUnknown = 0, + + /** Action code for password reset operation. */ + FIRActionCodeOperationPasswordReset = 1, + + /** Action code for verify email operation. */ + FIRActionCodeOperationVerifyEmail = 2, + + /** Action code for recover email operation. */ + FIRActionCodeOperationRecoverEmail = 3, + + /** Action code for email link operation. */ + FIRActionCodeOperationEmailLink = 4, + + +} NS_SWIFT_NAME(ActionCodeOperation); + +/** + @brief The operation being performed. + */ +@property(nonatomic, readonly) FIRActionCodeOperation operation; + +/** @fn dataForKey: + @brief The operation being performed. + + @param key The FIRActionDataKey value used to retrieve the operation data. + + @return The operation data pertaining to the provided action code key. + */ +- (NSString *)dataForKey:(FIRActionDataKey)key; + +/** @fn init + @brief please use initWithOperation: instead. + */ +- (instancetype)init NS_UNAVAILABLE; + +@end + +/** @typedef FIRCheckActionCodeCallBack + @brief The type of block invoked when performing a check action code operation. + + @param info Metadata corresponding to the action code. + @param error Optionally; if an error occurs, this is the NSError object that describes the + problem. Set to nil otherwise. + */ +typedef void (^FIRCheckActionCodeCallBack)(FIRActionCodeInfo *_Nullable info, + NSError *_Nullable error) + NS_SWIFT_NAME(CheckActionCodeCallback); + +/** @class FIRAuth + @brief Manages authentication for Firebase apps. + @remarks This class is thread-safe. + */ +NS_SWIFT_NAME(Auth) +@interface FIRAuth : NSObject + +/** @fn auth + @brief Gets the auth object for the default Firebase app. + @remarks The default Firebase app must have already been configured or an exception will be + raised. + */ ++ (FIRAuth *)auth NS_SWIFT_NAME(auth()); + +/** @fn authWithApp: + @brief Gets the auth object for a `FIRApp`. + + @param app The FIRApp for which to retrieve the associated FIRAuth instance. + @return The FIRAuth instance associated with the given FIRApp. + */ ++ (FIRAuth *)authWithApp:(FIRApp *)app NS_SWIFT_NAME(auth(app:)); + +/** @property app + @brief Gets the `FIRApp` object that this auth object is connected to. + */ +@property(nonatomic, weak, readonly, nullable) FIRApp *app; + +/** @property currentUser + @brief Synchronously gets the cached current user, or null if there is none. + */ +@property(nonatomic, strong, readonly, nullable) FIRUser *currentUser; + +/** @property languageCode + @brief The current user language code. This property can be set to the app's current language by + calling `useAppLanguage`. + + @remarks The string used to set this property must be a language code that follows BCP 47. + */ +@property (nonatomic, copy, nullable) NSString *languageCode; + +/** @property settings + @brief Contains settings related to the auth object. + */ +@property (nonatomic, copy, nullable) FIRAuthSettings *settings; + +#if TARGET_OS_IOS +/** @property APNSToken + @brief The APNs token used for phone number authentication. The type of the token (production + or sandbox) will be attempted to be automatcially detected. + @remarks If swizzling is disabled, the APNs Token must be set for phone number auth to work, + by either setting this property or by calling `setAPNSToken:type:` + */ +@property(nonatomic, strong, nullable) NSData *APNSToken; +#endif + +/** @fn init + @brief Please access auth instances using `FIRAuth.auth` and `FIRAuth.authForApp:`. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** @fn updateCurrentUser:completion: + @brief Sets the currentUser on the calling Auth instance to the provided user object. + @param user The user object to be set as the current user of the calling Auth instance. + @param completion Optionally; a block invoked after the user of the calling Auth instance has + been updated or an error was encountered. + */ +- (void)updateCurrentUser:(FIRUser *)user completion:(nullable FIRUserUpdateCallback)completion; + +/** @fn fetchProvidersForEmail:completion: + @brief Fetches the list of IdPs that can be used for signing in with the provided email address. + Useful for an "identifier-first" sign-in flow. + + @param email The email address for which to obtain a list of identity providers. + @param completion Optionally; a block which is invoked when the list of providers for the + specified email address is ready or an error was encountered. Invoked asynchronously on the + main thread in the future. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeInvalidEmail` - Indicates the email address is malformed. + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods. + */ +- (void)fetchProvidersForEmail:(NSString *)email + completion:(nullable FIRProviderQueryCallback)completion; + +/** @fn fetchSignInMethodsForEmail:completion: + @brief Fetches the list of all sign-in methods previously used for the provided email address. + + @param email The email address for which to obtain a list of sign-in methods. + @param completion Optionally; a block which is invoked when the list of sign in methods for the + specified email address is ready or an error was encountered. Invoked asynchronously on the + main thread in the future. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeInvalidEmail` - Indicates the email address is malformed. + + @remarks See @c FIRAuthErrors for a list of error codes that are common to all API methods. + */ + +- (void)fetchSignInMethodsForEmail:(NSString *)email + completion:(nullable FIRSignInMethodQueryCallback)completion; + +/** @fn signInWithEmail:password:completion: + @brief Signs in using an email address and password. + + @param email The user's email address. + @param password The user's password. + @param completion Optionally; a block which is invoked when the sign in flow finishes, or is + canceled. Invoked asynchronously on the main thread in the future. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeOperationNotAllowed` - Indicates that email and password + accounts are not enabled. Enable them in the Auth section of the + Firebase console. + + `FIRAuthErrorCodeUserDisabled` - Indicates the user's account is disabled. + + `FIRAuthErrorCodeWrongPassword` - Indicates the user attempted + sign in with an incorrect password. + + `FIRAuthErrorCodeInvalidEmail` - Indicates the email address is malformed. + + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods. + */ +- (void)signInWithEmail:(NSString *)email + password:(NSString *)password + completion:(nullable FIRAuthDataResultCallback)completion; + +/** @fn signInWithEmail:link:completion: + @brief Signs in using an email address and email sign-in link. + + @param email The user's email address. + @param link The email sign-in link. + @param completion Optionally; a block which is invoked when the sign in flow finishes, or is + canceled. Invoked asynchronously on the main thread in the future. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeOperationNotAllowed` - Indicates that email and email sign-in link + accounts are not enabled. Enable them in the Auth section of the + Firebase console. + + `FIRAuthErrorCodeUserDisabled` - Indicates the user's account is disabled. + + `FIRAuthErrorCodeInvalidEmail` - Indicates the email address is invalid. + + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods. + */ + +- (void)signInWithEmail:(NSString *)email + link:(NSString *)link + completion:(nullable FIRAuthDataResultCallback)completion; + +/** @fn signInAndRetrieveDataWithEmail:password:completion: + @brief Please use `signInWithEmail:password:completion:` for Objective-C or + `signIn(withEmail:password:completion:)` for Swift instead. + + @param email The user's email address. + @param password The user's password. + @param completion Optionally; a block which is invoked when the sign in flow finishes, or is + canceled. Invoked asynchronously on the main thread in the future. + */ +- (void)signInAndRetrieveDataWithEmail:(NSString *)email + password:(NSString *)password + completion:(nullable FIRAuthDataResultCallback)completion + DEPRECATED_MSG_ATTRIBUTE( + "Please use signInWithEmail:password:completion: for" + " Objective-C or signIn(withEmail:password:completion:) for" + " Swift instead."); + +/** @fn signInWithCredential:completion: + @brief Please use `signInAndRetrieveDataWithCredential:completion:` for Objective-C or + `signInAndRetrieveData(with:completion:)` for swift instead + + @param credential The credential supplied by the IdP. + @param completion Optionally; a block which is invoked when the sign in flow finishes, or is + canceled. Invoked asynchronously on the main thread in the future. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeInvalidCredential` - Indicates the supplied credential is invalid. + This could happen if it has expired or it is malformed. + + `FIRAuthErrorCodeOperationNotAllowed` - Indicates that accounts + with the identity provider represented by the credential are not enabled. + Enable them in the Auth section of the Firebase console. + + `FIRAuthErrorCodeAccountExistsWithDifferentCredential` - Indicates the email asserted + by the credential (e.g. the email in a Facebook access token) is already in use by an + existing account, that cannot be authenticated with this sign-in method. Call + fetchProvidersForEmail for this user’s email and then prompt them to sign in with any of + the sign-in providers returned. This error will only be thrown if the "One account per + email address" setting is enabled in the Firebase console, under Auth settings. + + `FIRAuthErrorCodeUserDisabled` - Indicates the user's account is disabled. + + `FIRAuthErrorCodeWrongPassword` - Indicates the user attempted sign in with an + incorrect password, if credential is of the type EmailPasswordAuthCredential. + + `FIRAuthErrorCodeInvalidEmail` - Indicates the email address is malformed. + + `FIRAuthErrorCodeMissingVerificationID` - Indicates that the phone auth credential was + created with an empty verification ID. + + `FIRAuthErrorCodeMissingVerificationCode` - Indicates that the phone auth credential + was created with an empty verification code. + + `FIRAuthErrorCodeInvalidVerificationCode` - Indicates that the phone auth credential + was created with an invalid verification Code. + + `FIRAuthErrorCodeInvalidVerificationID` - Indicates that the phone auth credential was + created with an invalid verification ID. + + `FIRAuthErrorCodeSessionExpired` - Indicates that the SMS code has expired. + + + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods + */ +- (void)signInWithCredential:(FIRAuthCredential *)credential + completion:(nullable FIRAuthResultCallback)completion DEPRECATED_MSG_ATTRIBUTE( + "Please use signInAndRetrieveDataWithCredential:completion:" + " for Objective-C or signInAndRetrieveData(with:completion:)" + " for Swift instead."); + +/** @fn signInAndRetrieveDataWithCredential:completion: + @brief Asynchronously signs in to Firebase with the given 3rd-party credentials (e.g. a Facebook + login Access Token, a Google ID Token/Access Token pair, etc.) and returns additional + identity provider data. + + @param credential The credential supplied by the IdP. + @param completion Optionally; a block which is invoked when the sign in flow finishes, or is + canceled. Invoked asynchronously on the main thread in the future. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeInvalidCredential` - Indicates the supplied credential is invalid. + This could happen if it has expired or it is malformed. + + `FIRAuthErrorCodeOperationNotAllowed` - Indicates that accounts + with the identity provider represented by the credential are not enabled. + Enable them in the Auth section of the Firebase console. + + `FIRAuthErrorCodeAccountExistsWithDifferentCredential` - Indicates the email asserted + by the credential (e.g. the email in a Facebook access token) is already in use by an + existing account, that cannot be authenticated with this sign-in method. Call + fetchProvidersForEmail for this user’s email and then prompt them to sign in with any of + the sign-in providers returned. This error will only be thrown if the "One account per + email address" setting is enabled in the Firebase console, under Auth settings. + + `FIRAuthErrorCodeUserDisabled` - Indicates the user's account is disabled. + + `FIRAuthErrorCodeWrongPassword` - Indicates the user attempted sign in with an + incorrect password, if credential is of the type EmailPasswordAuthCredential. + + `FIRAuthErrorCodeInvalidEmail` - Indicates the email address is malformed. + + `FIRAuthErrorCodeMissingVerificationID` - Indicates that the phone auth credential was + created with an empty verification ID. + + `FIRAuthErrorCodeMissingVerificationCode` - Indicates that the phone auth credential + was created with an empty verification code. + + `FIRAuthErrorCodeInvalidVerificationCode` - Indicates that the phone auth credential + was created with an invalid verification Code. + + `FIRAuthErrorCodeInvalidVerificationID` - Indicates that the phone auth credential was + created with an invalid verification ID. + + `FIRAuthErrorCodeSessionExpired` - Indicates that the SMS code has expired. + + + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods + */ +- (void)signInAndRetrieveDataWithCredential:(FIRAuthCredential *)credential + completion:(nullable FIRAuthDataResultCallback)completion; + +/** @fn signInAnonymouslyWithCompletion: + @brief Asynchronously creates and becomes an anonymous user. + @param completion Optionally; a block which is invoked when the sign in finishes, or is + canceled. Invoked asynchronously on the main thread in the future. + + @remarks If there is already an anonymous user signed in, that user will be returned instead. + If there is any other existing user signed in, that user will be signed out. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeOperationNotAllowed` - Indicates that anonymous accounts are + not enabled. Enable them in the Auth section of the Firebase console. + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods. + */ +- (void)signInAnonymouslyWithCompletion:(nullable FIRAuthDataResultCallback)completion; + +/** @fn signInAnonymouslyAndRetrieveDataWithCompletion: + @brief `Please use sign `signInAnonymouslyWithCompletion:` for Objective-C or + `signInAnonymously(Completion:)` for Swift instead. + @param completion Optionally; a block which is invoked when the sign in finishes, or is + canceled. Invoked asynchronously on the main thread in the future. + */ +- (void)signInAnonymouslyAndRetrieveDataWithCompletion: + (nullable FIRAuthDataResultCallback)completion + DEPRECATED_MSG_ATTRIBUTE("Please use signInAnonymouslyWithCompletion: for Objective-C or" + " signInAnonymously(Completion:) for swift instead."); + +/** @fn signInWithCustomToken:completion: + @brief Asynchronously signs in to Firebase with the given Auth token. + + @param token A self-signed custom auth token. + @param completion Optionally; a block which is invoked when the sign in finishes, or is + canceled. Invoked asynchronously on the main thread in the future. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeInvalidCustomToken` - Indicates a validation error with + the custom token. + + `FIRAuthErrorCodeCustomTokenMismatch` - Indicates the service account and the API key + belong to different projects. + + + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods. + */ +- (void)signInWithCustomToken:(NSString *)token + completion:(nullable FIRAuthDataResultCallback)completion; + +/** @fn signInAndRetrieveDataWithCustomToken:completion: + @brief Please use `signInWithCustomToken:completion:` or `signIn(withCustomToken:completion:)` + for Swift instead. + + @param token A self-signed custom auth token. + @param completion Optionally; a block which is invoked when the sign in finishes, or is + canceled. Invoked asynchronously on the main thread in the future. + */ +- (void)signInAndRetrieveDataWithCustomToken:(NSString *)token + completion:(nullable FIRAuthDataResultCallback)completion + DEPRECATED_MSG_ATTRIBUTE( + "Please use signInWithCustomToken:completion:" + "for Objective-C or signIn(withCustomToken:completion:) for" + " Swift instead."); + +/** @fn createUserWithEmail:password:completion: + @brief Creates and, on success, signs in a user with the given email address and password. + + @param email The user's email address. + @param password The user's desired password. + @param completion Optionally; a block which is invoked when the sign up flow finishes, or is + canceled. Invoked asynchronously on the main thread in the future. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeInvalidEmail` - Indicates the email address is malformed. + + `FIRAuthErrorCodeEmailAlreadyInUse` - Indicates the email used to attempt sign up + already exists. Call fetchProvidersForEmail to check which sign-in mechanisms the user + used, and prompt the user to sign in with one of those. + + `FIRAuthErrorCodeOperationNotAllowed` - Indicates that email and password accounts + are not enabled. Enable them in the Auth section of the Firebase console. + + `FIRAuthErrorCodeWeakPassword` - Indicates an attempt to set a password that is + considered too weak. The NSLocalizedFailureReasonErrorKey field in the NSError.userInfo + dictionary object will contain more detailed explanation that can be shown to the user. + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods. + */ +- (void)createUserWithEmail:(NSString *)email + password:(NSString *)password + completion:(nullable FIRAuthDataResultCallback)completion; + +/** @fn createUserAndRetrieveDataWithEmail:password:completion: + @brief Please use `createUserAndRetrieveDataWithEmail:password:completion:` or + `createUser(withEmail:password:completion:)` for Swift instead. + + @param email The user's email address. + @param password The user's desired password. + @param completion Optionally; a block which is invoked when the sign up flow finishes, or is + canceled. Invoked asynchronously on the main thread in the future. + */ +- (void)createUserAndRetrieveDataWithEmail:(NSString *)email + password:(NSString *)password + completion:(nullable FIRAuthDataResultCallback)completion + DEPRECATED_MSG_ATTRIBUTE( + "Please use createUserWithEmail:password:completion: for" + " Objective-C or createUser(withEmail:password:completion:)" + " for Swift instead."); + +/** @fn confirmPasswordResetWithCode:newPassword:completion: + @brief Resets the password given a code sent to the user outside of the app and a new password + for the user. + + @param newPassword The new password. + @param completion Optionally; a block which is invoked when the request finishes. Invoked + asynchronously on the main thread in the future. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeWeakPassword` - Indicates an attempt to set a password that is + considered too weak. + + `FIRAuthErrorCodeOperationNotAllowed` - Indicates the administrator disabled sign + in with the specified identity provider. + + `FIRAuthErrorCodeExpiredActionCode` - Indicates the OOB code is expired. + + `FIRAuthErrorCodeInvalidActionCode` - Indicates the OOB code is invalid. + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods. + */ +- (void)confirmPasswordResetWithCode:(NSString *)code + newPassword:(NSString *)newPassword + completion:(FIRConfirmPasswordResetCallback)completion; + +/** @fn checkActionCode:completion: + @brief Checks the validity of an out of band code. + + @param code The out of band code to check validity. + @param completion Optionally; a block which is invoked when the request finishes. Invoked + asynchronously on the main thread in the future. + */ +- (void)checkActionCode:(NSString *)code completion:(FIRCheckActionCodeCallBack)completion; + +/** @fn verifyPasswordResetCode:completion: + @brief Checks the validity of a verify password reset code. + + @param code The password reset code to be verified. + @param completion Optionally; a block which is invoked when the request finishes. Invoked + asynchronously on the main thread in the future. + */ +- (void)verifyPasswordResetCode:(NSString *)code + completion:(FIRVerifyPasswordResetCodeCallback)completion; + +/** @fn applyActionCode:completion: + @brief Applies out of band code. + + @param code The out of band code to be applied. + @param completion Optionally; a block which is invoked when the request finishes. Invoked + asynchronously on the main thread in the future. + + @remarks This method will not work for out of band codes which require an additional parameter, + such as password reset code. + */ +- (void)applyActionCode:(NSString *)code + completion:(FIRApplyActionCodeCallback)completion; + +/** @fn sendPasswordResetWithEmail:completion: + @brief Initiates a password reset for the given email address. + + @param email The email address of the user. + @param completion Optionally; a block which is invoked when the request finishes. Invoked + asynchronously on the main thread in the future. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeInvalidRecipientEmail` - Indicates an invalid recipient email was + sent in the request. + + `FIRAuthErrorCodeInvalidSender` - Indicates an invalid sender email is set in + the console for this action. + + `FIRAuthErrorCodeInvalidMessagePayload` - Indicates an invalid email template for + sending update email. + + + */ +- (void)sendPasswordResetWithEmail:(NSString *)email + completion:(nullable FIRSendPasswordResetCallback)completion; + +/** @fn sendPasswordResetWithEmail:actionCodeSetting:completion: + @brief Initiates a password reset for the given email address and @FIRActionCodeSettings object. + + @param email The email address of the user. + @param actionCodeSettings An `FIRActionCodeSettings` object containing settings related to + handling action codes. + @param completion Optionally; a block which is invoked when the request finishes. Invoked + asynchronously on the main thread in the future. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeInvalidRecipientEmail` - Indicates an invalid recipient email was + sent in the request. + + `FIRAuthErrorCodeInvalidSender` - Indicates an invalid sender email is set in + the console for this action. + + `FIRAuthErrorCodeInvalidMessagePayload` - Indicates an invalid email template for + sending update email. + + `FIRAuthErrorCodeMissingIosBundleID` - Indicates that the iOS bundle ID is missing when + `handleCodeInApp` is set to YES. + + `FIRAuthErrorCodeMissingAndroidPackageName` - Indicates that the android package name + is missing when the `androidInstallApp` flag is set to true. + + `FIRAuthErrorCodeUnauthorizedDomain` - Indicates that the domain specified in the + continue URL is not whitelisted in the Firebase console. + + `FIRAuthErrorCodeInvalidContinueURI` - Indicates that the domain specified in the + continue URI is not valid. + + + */ + - (void)sendPasswordResetWithEmail:(NSString *)email + actionCodeSettings:(FIRActionCodeSettings *)actionCodeSettings + completion:(nullable FIRSendPasswordResetCallback)completion; + +/** @fn sendSignInLinkToEmail:actionCodeSettings:completion: + @brief Sends a sign in with email link to provided email address. + + @param email The email address of the user. + @param actionCodeSettings An `FIRActionCodeSettings` object containing settings related to + handling action codes. + @param completion Optionally; a block which is invoked when the request finishes. Invoked + asynchronously on the main thread in the future. + */ +- (void)sendSignInLinkToEmail:(NSString *)email + actionCodeSettings:(FIRActionCodeSettings *)actionCodeSettings + completion:(nullable FIRSendSignInLinkToEmailCallback)completion; + +/** @fn signOut: + @brief Signs out the current user. + + @param error Optionally; if an error occurs, upon return contains an NSError object that + describes the problem; is nil otherwise. + @return @YES when the sign out request was successful. @NO otherwise. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeKeychainError` - Indicates an error occurred when accessing the + keychain. The `NSLocalizedFailureReasonErrorKey` field in the `NSError.userInfo` + dictionary will contain more information about the error encountered. + + + + */ +- (BOOL)signOut:(NSError *_Nullable *_Nullable)error; + +/** @fn isSignInWithEmailLink + @brief Checks if link is an email sign-in link. + + @param link The email sign-in link. + @return @YES when the link passed matches the expected format of an email sign-in link. + */ +- (BOOL)isSignInWithEmailLink:(NSString *)link; + +/** @fn addAuthStateDidChangeListener: + @brief Registers a block as an "auth state did change" listener. To be invoked when: + + + The block is registered as a listener, + + A user with a different UID from the current user has signed in, or + + The current user has signed out. + + @param listener The block to be invoked. The block is always invoked asynchronously on the main + thread, even for it's initial invocation after having been added as a listener. + + @remarks The block is invoked immediately after adding it according to it's standard invocation + semantics, asynchronously on the main thread. Users should pay special attention to + making sure the block does not inadvertently retain objects which should not be retained by + the long-lived block. The block itself will be retained by `FIRAuth` until it is + unregistered or until the `FIRAuth` instance is otherwise deallocated. + + @return A handle useful for manually unregistering the block as a listener. + */ +- (FIRAuthStateDidChangeListenerHandle)addAuthStateDidChangeListener: + (FIRAuthStateDidChangeListenerBlock)listener; + +/** @fn removeAuthStateDidChangeListener: + @brief Unregisters a block as an "auth state did change" listener. + + @param listenerHandle The handle for the listener. + */ +- (void)removeAuthStateDidChangeListener:(FIRAuthStateDidChangeListenerHandle)listenerHandle; + +/** @fn addIDTokenDidChangeListener: + @brief Registers a block as an "ID token did change" listener. To be invoked when: + + + The block is registered as a listener, + + A user with a different UID from the current user has signed in, + + The ID token of the current user has been refreshed, or + + The current user has signed out. + + @param listener The block to be invoked. The block is always invoked asynchronously on the main + thread, even for it's initial invocation after having been added as a listener. + + @remarks The block is invoked immediately after adding it according to it's standard invocation + semantics, asynchronously on the main thread. Users should pay special attention to + making sure the block does not inadvertently retain objects which should not be retained by + the long-lived block. The block itself will be retained by `FIRAuth` until it is + unregistered or until the `FIRAuth` instance is otherwise deallocated. + + @return A handle useful for manually unregistering the block as a listener. + */ +- (FIRIDTokenDidChangeListenerHandle)addIDTokenDidChangeListener: + (FIRIDTokenDidChangeListenerBlock)listener; + +/** @fn removeIDTokenDidChangeListener: + @brief Unregisters a block as an "ID token did change" listener. + + @param listenerHandle The handle for the listener. + */ +- (void)removeIDTokenDidChangeListener:(FIRIDTokenDidChangeListenerHandle)listenerHandle; + +/** @fn useAppLanguage + @brief Sets `languageCode` to the app's current language. + */ +- (void)useAppLanguage; + +#if TARGET_OS_IOS + +/** @fn canHandleURL: + @brief Whether the specific URL is handled by `FIRAuth` . + @param URL The URL received by the application delegate from any of the openURL method. + @return Whether or the URL is handled. YES means the URL is for Firebase Auth + so the caller should ignore the URL from further processing, and NO means the + the URL is for the app (or another libaray) so the caller should continue handling + this URL as usual. + @remarks If swizzling is disabled, URLs received by the application delegate must be forwarded + to this method for phone number auth to work. + */ +- (BOOL)canHandleURL:(nonnull NSURL *)URL; + +/** @fn setAPNSToken:type: + @brief Sets the APNs token along with its type. + @remarks If swizzling is disabled, the APNs Token must be set for phone number auth to work, + by either setting calling this method or by setting the `APNSToken` property. + */ +- (void)setAPNSToken:(NSData *)token type:(FIRAuthAPNSTokenType)type; + +/** @fn canHandleNotification: + @brief Whether the specific remote notification is handled by `FIRAuth` . + @param userInfo A dictionary that contains information related to the + notification in question. + @return Whether or the notification is handled. YES means the notification is for Firebase Auth + so the caller should ignore the notification from further processing, and NO means the + the notification is for the app (or another libaray) so the caller should continue handling + this notification as usual. + @remarks If swizzling is disabled, related remote notifications must be forwarded to this method + for phone number auth to work. + */ +- (BOOL)canHandleNotification:(NSDictionary *)userInfo; + +#endif // TARGET_OS_IOS + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthAPNSTokenType.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthAPNSTokenType.h new file mode 100644 index 0000000..4f3c9f6 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthAPNSTokenType.h @@ -0,0 +1,40 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + * @brief The APNs token type for the app. + */ +typedef NS_ENUM(NSInteger, FIRAuthAPNSTokenType) { + + /** Unknown token type. + The actual token type will be detected from the provisioning profile in the app's bundle. + */ + FIRAuthAPNSTokenTypeUnknown, + + /** Sandbox token type. + */ + FIRAuthAPNSTokenTypeSandbox, + + /** Production token type. + */ + FIRAuthAPNSTokenTypeProd, +} NS_SWIFT_NAME(AuthAPNSTokenType); + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthCredential.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthCredential.h new file mode 100644 index 0000000..106d844 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthCredential.h @@ -0,0 +1,41 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRAuthCredential + @brief Represents a credential. + */ +NS_SWIFT_NAME(AuthCredential) +@interface FIRAuthCredential : NSObject + +/** @property provider + @brief Gets the name of the identity provider for the credential. + */ +@property(nonatomic, copy, readonly) NSString *provider; + +/** @fn init + @brief This is an abstract base class. Concrete instances should be created via factory + methods available in the various authentication provider libraries (like the Facebook + provider or the Google provider libraries.) + */ +- (instancetype)init NS_UNAVAILABLE; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthDataResult.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthDataResult.h new file mode 100644 index 0000000..bc4fa4a --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthDataResult.h @@ -0,0 +1,49 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FIRAdditionalUserInfo; +@class FIRUser; + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRAuthDataResult + @brief Helper object that contains the result of a successful sign-in, link and reauthenticate + action. It contains references to a FIRUser instance and a FIRAdditionalUserInfo instance. + */ +NS_SWIFT_NAME(AuthDataResult) +@interface FIRAuthDataResult : NSObject + +/** @fn init + @brief This class should not be initialized manually. `FIRAuthDataResult` instance is + returned as part of `FIRAuthDataResultCallback`. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** @property user + @brief The signed in user. + */ +@property(nonatomic, readonly) FIRUser *user; + +/** @property additionalUserInfo + @brief If available contains the additional IdP specific information about signed in user. + */ +@property(nonatomic, readonly, nullable) FIRAdditionalUserInfo *additionalUserInfo; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthErrors.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthErrors.h new file mode 100644 index 0000000..a3fbe26 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthErrors.h @@ -0,0 +1,321 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +/** @class FIRAuthErrors + @remarks Error Codes common to all API Methods: + + + `FIRAuthErrorCodeNetworkError` + + `FIRAuthErrorCodeUserNotFound` + + `FIRAuthErrorCodeUserTokenExpired` + + `FIRAuthErrorCodeTooManyRequests` + + `FIRAuthErrorCodeInvalidAPIKey` + + `FIRAuthErrorCodeAppNotAuthorized` + + `FIRAuthErrorCodeKeychainError` + + `FIRAuthErrorCodeInternalError` + + @remarks Common error codes for `FIRUser` operations: + + + `FIRAuthErrorCodeInvalidUserToken` + + `FIRAuthErrorCodeUserDisabled` + + */ +NS_SWIFT_NAME(AuthErrors) +@interface FIRAuthErrors + +/** + @brief The Firebase Auth error domain. + */ +extern NSString *const FIRAuthErrorDomain NS_SWIFT_NAME(AuthErrorDomain); + +/** + @brief The key used to read the updated credential from the userinfo dictionary of the NSError + object returned in the case that the credential being linked in already in use. + */ +extern NSString *const FIRAuthUpdatedCredentialKey NS_SWIFT_NAME(AuthUpdatedCredentialKey); + +/** + @brief The name of the key for the "error_name" string in the NSError userinfo dictionary. + */ +extern NSString *const FIRAuthErrorNameKey NS_SWIFT_NAME(AuthErrorNameKey); + +/** + @brief Errors with the code `FIRAuthErrorCodeAccountExistsWithDifferentCredential` may contain + an `NSError.userInfo` dictinary object which contains this key. The value associated with + this key is an NSString of the email address of the account that already exists. + */ +extern NSString *const FIRAuthErrorUserInfoEmailKey NS_SWIFT_NAME(AuthErrorUserInfoEmailKey); + +/** + @brief Error codes used by Firebase Auth. + */ +typedef NS_ENUM(NSInteger, FIRAuthErrorCode) { + /** Indicates a validation error with the custom token. + */ + FIRAuthErrorCodeInvalidCustomToken = 17000, + + /** Indicates the service account and the API key belong to different projects. + */ + FIRAuthErrorCodeCustomTokenMismatch = 17002, + + /** Indicates the IDP token or requestUri is invalid. + */ + FIRAuthErrorCodeInvalidCredential = 17004, + + /** Indicates the user's account is disabled on the server. + */ + FIRAuthErrorCodeUserDisabled = 17005, + + /** Indicates the administrator disabled sign in with the specified identity provider. + */ + FIRAuthErrorCodeOperationNotAllowed = 17006, + + /** Indicates the email used to attempt a sign up is already in use. + */ + FIRAuthErrorCodeEmailAlreadyInUse = 17007, + + /** Indicates the email is invalid. + */ + FIRAuthErrorCodeInvalidEmail = 17008, + + /** Indicates the user attempted sign in with a wrong password. + */ + FIRAuthErrorCodeWrongPassword = 17009, + + /** Indicates that too many requests were made to a server method. + */ + FIRAuthErrorCodeTooManyRequests = 17010, + + /** Indicates the user account was not found. + */ + FIRAuthErrorCodeUserNotFound = 17011, + + /** Indicates account linking is required. + */ + FIRAuthErrorCodeAccountExistsWithDifferentCredential = 17012, + + /** Indicates the user has attemped to change email or password more than 5 minutes after + signing in. + */ + FIRAuthErrorCodeRequiresRecentLogin = 17014, + + /** Indicates an attempt to link a provider to which the account is already linked. + */ + FIRAuthErrorCodeProviderAlreadyLinked = 17015, + + /** Indicates an attempt to unlink a provider that is not linked. + */ + FIRAuthErrorCodeNoSuchProvider = 17016, + + /** Indicates user's saved auth credential is invalid, the user needs to sign in again. + */ + FIRAuthErrorCodeInvalidUserToken = 17017, + + /** Indicates a network error occurred (such as a timeout, interrupted connection, or + unreachable host). These types of errors are often recoverable with a retry. The + `NSUnderlyingError` field in the `NSError.userInfo` dictionary will contain the error + encountered. + */ + FIRAuthErrorCodeNetworkError = 17020, + + /** Indicates the saved token has expired, for example, the user may have changed account + password on another device. The user needs to sign in again on the device that made this + request. + */ + FIRAuthErrorCodeUserTokenExpired = 17021, + + /** Indicates an invalid API key was supplied in the request. + */ + FIRAuthErrorCodeInvalidAPIKey = 17023, + + /** Indicates that an attempt was made to reauthenticate with a user which is not the current + user. + */ + FIRAuthErrorCodeUserMismatch = 17024, + + /** Indicates an attempt to link with a credential that has already been linked with a + different Firebase account + */ + FIRAuthErrorCodeCredentialAlreadyInUse = 17025, + + /** Indicates an attempt to set a password that is considered too weak. + */ + FIRAuthErrorCodeWeakPassword = 17026, + + /** Indicates the App is not authorized to use Firebase Authentication with the + provided API Key. + */ + FIRAuthErrorCodeAppNotAuthorized = 17028, + + /** Indicates the OOB code is expired. + */ + FIRAuthErrorCodeExpiredActionCode = 17029, + + /** Indicates the OOB code is invalid. + */ + FIRAuthErrorCodeInvalidActionCode = 17030, + + /** Indicates that there are invalid parameters in the payload during a "send password reset + * email" attempt. + */ + FIRAuthErrorCodeInvalidMessagePayload = 17031, + + /** Indicates that the sender email is invalid during a "send password reset email" attempt. + */ + FIRAuthErrorCodeInvalidSender = 17032, + + /** Indicates that the recipient email is invalid. + */ + FIRAuthErrorCodeInvalidRecipientEmail = 17033, + + /** Indicates that an email address was expected but one was not provided. + */ + FIRAuthErrorCodeMissingEmail = 17034, + + // The enum values 17035 is reserved and should NOT be used for new error codes. + + /** Indicates that the iOS bundle ID is missing when a iOS App Store ID is provided. + */ + FIRAuthErrorCodeMissingIosBundleID = 17036, + + /** Indicates that the android package name is missing when the `androidInstallApp` flag is set + to true. + */ + FIRAuthErrorCodeMissingAndroidPackageName = 17037, + + /** Indicates that the domain specified in the continue URL is not whitelisted in the Firebase + console. + */ + FIRAuthErrorCodeUnauthorizedDomain = 17038, + + /** Indicates that the domain specified in the continue URI is not valid. + */ + FIRAuthErrorCodeInvalidContinueURI = 17039, + + /** Indicates that a continue URI was not provided in a request to the backend which requires + one. + */ + FIRAuthErrorCodeMissingContinueURI = 17040, + + /** Indicates that a phone number was not provided in a call to + `verifyPhoneNumber:completion:`. + */ + FIRAuthErrorCodeMissingPhoneNumber = 17041, + + /** Indicates that an invalid phone number was provided in a call to + `verifyPhoneNumber:completion:`. + */ + FIRAuthErrorCodeInvalidPhoneNumber = 17042, + + /** Indicates that the phone auth credential was created with an empty verification code. + */ + FIRAuthErrorCodeMissingVerificationCode = 17043, + + /** Indicates that an invalid verification code was used in the verifyPhoneNumber request. + */ + FIRAuthErrorCodeInvalidVerificationCode = 17044, + + /** Indicates that the phone auth credential was created with an empty verification ID. + */ + FIRAuthErrorCodeMissingVerificationID = 17045, + + /** Indicates that an invalid verification ID was used in the verifyPhoneNumber request. + */ + FIRAuthErrorCodeInvalidVerificationID = 17046, + + /** Indicates that the APNS device token is missing in the verifyClient request. + */ + FIRAuthErrorCodeMissingAppCredential = 17047, + + /** Indicates that an invalid APNS device token was used in the verifyClient request. + */ + FIRAuthErrorCodeInvalidAppCredential = 17048, + + // The enum values between 17048 and 17051 are reserved and should NOT be used for new error + // codes. + + /** Indicates that the SMS code has expired. + */ + FIRAuthErrorCodeSessionExpired = 17051, + + /** Indicates that the quota of SMS messages for a given project has been exceeded. + */ + FIRAuthErrorCodeQuotaExceeded = 17052, + + /** Indicates that the APNs device token could not be obtained. The app may not have set up + remote notification correctly, or may fail to forward the APNs device token to FIRAuth + if app delegate swizzling is disabled. + */ + FIRAuthErrorCodeMissingAppToken = 17053, + + /** Indicates that the app fails to forward remote notification to FIRAuth. + */ + FIRAuthErrorCodeNotificationNotForwarded = 17054, + + /** Indicates that the app could not be verified by Firebase during phone number authentication. + */ + FIRAuthErrorCodeAppNotVerified = 17055, + + /** Indicates that the reCAPTCHA token is not valid. + */ + FIRAuthErrorCodeCaptchaCheckFailed = 17056, + + /** Indicates that an attempt was made to present a new web context while one was already being + presented. + */ + FIRAuthErrorCodeWebContextAlreadyPresented = 17057, + + /** Indicates that the URL presentation was cancelled prematurely by the user. + */ + FIRAuthErrorCodeWebContextCancelled = 17058, + + /** Indicates a general failure during the app verification flow. + */ + FIRAuthErrorCodeAppVerificationUserInteractionFailure = 17059, + + /** Indicates that the clientID used to invoke a web flow is invalid. + */ + FIRAuthErrorCodeInvalidClientID = 17060, + + /** Indicates that a network request within a SFSafariViewController or UIWebview failed. + */ + FIRAuthErrorCodeWebNetworkRequestFailed = 17061, + + /** Indicates that an internal error occurred within a SFSafariViewController or UIWebview. + */ + FIRAuthErrorCodeWebInternalError = 17062, + + /** Indicates that a non-null user was expected as an argmument to the operation but a null + user was provided. + */ + FIRAuthErrorCodeNullUser = 17067, + + /** Indicates an error occurred while attempting to access the keychain. + */ + FIRAuthErrorCodeKeychainError = 17995, + + /** Indicates an internal error occurred. + */ + FIRAuthErrorCodeInternalError = 17999, + + /** Raised when a JWT fails to parse correctly. May be accompanied by an underlying error + describing which step of the JWT parsing process failed. + */ + FIRAuthErrorCodeMalformedJWT = 18000, +} NS_SWIFT_NAME(AuthErrorCode); + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthSettings.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthSettings.h new file mode 100644 index 0000000..d3fee3e --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthSettings.h @@ -0,0 +1,30 @@ +/* + * Copyright 2018 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +/** @class FIRAuthSettings + @brief Determines settings related to an auth object. + */ +@interface FIRAuthSettings : NSObject + +/** @property appVerificationDisabledForTesting + @brief Flag to determine whether app verification should be disabled for testing or not. + */ +@property (nonatomic, assign, getter=isAppVerificationDisabledForTesting) BOOL + appVerificationDisabledForTesting; + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthTokenResult.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthTokenResult.h new file mode 100644 index 0000000..82a5f1e --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthTokenResult.h @@ -0,0 +1,66 @@ +/* + * Copyright 2018 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRAuthTokenResult + @brief A data class containing the ID token JWT string and other properties associated with the + token including the decoded payload claims. + */ +NS_SWIFT_NAME(AuthTokenResult) +@interface FIRAuthTokenResult : NSObject + +/** @property token + @brief Stores the JWT string of the ID token. + */ +@property (nonatomic, readonly) NSString *token; + +/** @property expirationDate + @brief Stores the ID token's expiration date. + */ +@property (nonatomic, readonly) NSDate *expirationDate; + +/** @property authDate + @brief Stores the ID token's authentication date. + @remarks This is the date the user was signed in and NOT the date the token was refreshed. + */ +@property (nonatomic, readonly) NSDate *authDate; + +/** @property issuedAtDate + @brief Stores the date that the ID token was issued. + @remarks This is the date last refreshed and NOT the last authentication date. + */ +@property (nonatomic, readonly) NSDate *issuedAtDate; + +/** @property signInProvider + @brief Stores sign-in provider through which the token was obtained. + @remarks This does not necesssarily map to provider IDs. + */ +@property (nonatomic, readonly) NSString *signInProvider; + +/** @property claims + @brief Stores the entire payload of claims found on the ID token. This includes the standard + reserved claims as well as custom claims set by the developer via the Admin SDK. + */ +@property (nonatomic, readonly) NSDictionary *claims; + + + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthUIDelegate.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthUIDelegate.h new file mode 100644 index 0000000..9b32968 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRAuthUIDelegate.h @@ -0,0 +1,52 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import + +NS_ASSUME_NONNULL_BEGIN + +/** @protocol FIRAuthUIDelegate + @brief A protocol to handle user interface interactions for Firebase Auth. + */ +NS_SWIFT_NAME(AuthUIDelegate) +@protocol FIRAuthUIDelegate + +/** @fn presentViewController:animated:completion: + @brief If implemented, this method will be invoked when Firebase Auth needs to display a view + controller. + @param viewControllerToPresent The view controller to be presented. + @param flag Decides whether the view controller presentation should be animated or not. + @param completion The block to execute after the presentation finishes. This block has no return + value and takes no parameters. +*/ +- (void)presentViewController:(UIViewController *)viewControllerToPresent + animated:(BOOL)flag + completion:(void (^ _Nullable)(void))completion; + +/** @fn dismissViewControllerAnimated:completion: + @brief If implemented, this method will be invoked when Firebase Auth needs to display a view + controller. + @param flag Decides whether removing the view controller should be animated or not. + @param completion The block to execute after the presentation finishes. This block has no return + value and takes no parameters. +*/ +- (void)dismissViewControllerAnimated:(BOOL)flag completion:(void (^ _Nullable)(void))completion + NS_SWIFT_NAME(dismiss(animated:completion:)); + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIREmailAuthProvider.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIREmailAuthProvider.h new file mode 100644 index 0000000..b6375bd --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIREmailAuthProvider.h @@ -0,0 +1,81 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FIRAuthCredential; + +NS_ASSUME_NONNULL_BEGIN + +/** + @brief A string constant identifying the email & password identity provider. + */ +extern NSString *const FIREmailAuthProviderID NS_SWIFT_NAME(EmailAuthProviderID); + +/** + @brief A string constant identifying the email-link sign-in method. + */ +extern NSString *const FIREmailLinkAuthSignInMethod NS_SWIFT_NAME(EmailLinkAuthSignInMethod); + +/** + @brief A string constant identifying the email & password sign-in method. + */ +extern NSString *const FIREmailPasswordAuthSignInMethod + NS_SWIFT_NAME(EmailPasswordAuthSignInMethod); + +/** + @brief Please use `FIREmailAuthProviderID` for Objective-C or `EmailAuthProviderID` for Swift instead. + */ +extern NSString *const FIREmailPasswordAuthProviderID __attribute__((deprecated)); + +/** @class FIREmailAuthProvider + @brief A concrete implementation of `FIRAuthProvider` for Email & Password Sign In. + */ +NS_SWIFT_NAME(EmailAuthProvider) +@interface FIREmailAuthProvider : NSObject + +/** @typedef FIREmailPasswordAuthProvider + @brief Please use `FIREmailAuthProvider` instead. + */ +typedef FIREmailAuthProvider FIREmailPasswordAuthProvider __attribute__((deprecated)); + + +/** @fn credentialWithEmail:password: + @brief Creates an `FIRAuthCredential` for an email & password sign in. + + @param email The user's email address. + @param password The user's password. + @return A FIRAuthCredential containing the email & password credential. + */ ++ (FIRAuthCredential *)credentialWithEmail:(NSString *)email password:(NSString *)password; + +/** @fn credentialWithEmail:Link: + @brief Creates an `FIRAuthCredential` for an email & link sign in. + + @param email The user's email address. + @param link The email sign-in link. + @return A FIRAuthCredential containing the email & link credential. + */ ++ (FIRAuthCredential *)credentialWithEmail:(NSString *)email link:(NSString *)link; + +/** @fn init + @brief This class is not meant to be initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRFacebookAuthProvider.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRFacebookAuthProvider.h new file mode 100644 index 0000000..75efe13 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRFacebookAuthProvider.h @@ -0,0 +1,54 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FIRAuthCredential; + +NS_ASSUME_NONNULL_BEGIN + +/** + @brief A string constant identifying the Facebook identity provider. + */ +extern NSString *const FIRFacebookAuthProviderID NS_SWIFT_NAME(FacebookAuthProviderID); + +/** + @brief A string constant identifying the Facebook sign-in method. + */ +extern NSString *const _Nonnull FIRFacebookAuthSignInMethod NS_SWIFT_NAME(FacebookAuthSignInMethod); + +/** @class FIRFacebookAuthProvider + @brief Utility class for constructing Facebook credentials. + */ +NS_SWIFT_NAME(FacebookAuthProvider) +@interface FIRFacebookAuthProvider : NSObject + +/** @fn credentialWithAccessToken: + @brief Creates an `FIRAuthCredential` for a Facebook sign in. + + @param accessToken The Access Token from Facebook. + @return A FIRAuthCredential containing the Facebook credentials. + */ ++ (FIRAuthCredential *)credentialWithAccessToken:(NSString *)accessToken; + +/** @fn init + @brief This class should not be initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRGitHubAuthProvider.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRGitHubAuthProvider.h new file mode 100644 index 0000000..0610427 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRGitHubAuthProvider.h @@ -0,0 +1,55 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FIRAuthCredential; + +NS_ASSUME_NONNULL_BEGIN + +/** + @brief A string constant identifying the GitHub identity provider. + */ +extern NSString *const FIRGitHubAuthProviderID NS_SWIFT_NAME(GitHubAuthProviderID); + +/** + @brief A string constant identifying the GitHub sign-in method. + */ +extern NSString *const _Nonnull FIRGitHubAuthSignInMethod NS_SWIFT_NAME(GitHubAuthSignInMethod); + + +/** @class FIRGitHubAuthProvider + @brief Utility class for constructing GitHub credentials. + */ +NS_SWIFT_NAME(GitHubAuthProvider) +@interface FIRGitHubAuthProvider : NSObject + +/** @fn credentialWithToken: + @brief Creates an `FIRAuthCredential` for a GitHub sign in. + + @param token The GitHub OAuth access token. + @return A FIRAuthCredential containing the GitHub credential. + */ ++ (FIRAuthCredential *)credentialWithToken:(NSString *)token; + +/** @fn init + @brief This class is not meant to be initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRGoogleAuthProvider.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRGoogleAuthProvider.h new file mode 100644 index 0000000..7d6fa22 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRGoogleAuthProvider.h @@ -0,0 +1,56 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FIRAuthCredential; + +NS_ASSUME_NONNULL_BEGIN + +/** + @brief A string constant identifying the Google identity provider. + */ +extern NSString *const FIRGoogleAuthProviderID NS_SWIFT_NAME(GoogleAuthProviderID); + +/** + @brief A string constant identifying the Google sign-in method. + */ +extern NSString *const _Nonnull FIRGoogleAuthSignInMethod NS_SWIFT_NAME(GoogleAuthSignInMethod); + +/** @class FIRGoogleAuthProvider + @brief Utility class for constructing Google Sign In credentials. + */ +NS_SWIFT_NAME(GoogleAuthProvider) +@interface FIRGoogleAuthProvider : NSObject + +/** @fn credentialWithIDToken:accessToken: + @brief Creates an `FIRAuthCredential` for a Google sign in. + + @param IDToken The ID Token from Google. + @param accessToken The Access Token from Google. + @return A FIRAuthCredential containing the Google credentials. + */ ++ (FIRAuthCredential *)credentialWithIDToken:(NSString *)IDToken + accessToken:(NSString *)accessToken; + +/** @fn init + @brief This class should not be initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIROAuthProvider.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIROAuthProvider.h new file mode 100644 index 0000000..cc628f8 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIROAuthProvider.h @@ -0,0 +1,62 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FIRAuthCredential; + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIROAuthProvider + @brief A concrete implementation of `FIRAuthProvider` for generic OAuth Providers. + */ +NS_SWIFT_NAME(OAuthProvider) +@interface FIROAuthProvider : NSObject + +/** @fn credentialWithProviderID:IDToken:accessToken: + @brief Creates an `FIRAuthCredential` for that OAuth 2 provider identified by providerID, ID + token and access token. + + @param providerID The provider ID associated with the Auth credential being created. + @param IDToken The IDToken associated with the Auth credential being created. + @param accessToken The accessstoken associated with the Auth credential be created, if + available. + @return A FIRAuthCredential for the specified provider ID, ID token and access token. + */ ++ (FIRAuthCredential *)credentialWithProviderID:(NSString *)providerID + IDToken:(NSString *)IDToken + accessToken:(nullable NSString *)accessToken; + + +/** @fn credentialWithProviderID:accessToken: + @brief Creates an `FIRAuthCredential` for that OAuth 2 provider identified by providerID using + an ID token. + + @param providerID The provider ID associated with the Auth credential being created. + @param accessToken The accessstoken associated with the Auth credential be created + @return A FIRAuthCredential. + */ ++ (FIRAuthCredential *)credentialWithProviderID:(NSString *)providerID + accessToken:(NSString *)accessToken; + +/** @fn init + @brief This class is not meant to be initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRPhoneAuthCredential.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRPhoneAuthCredential.h new file mode 100644 index 0000000..26dfca8 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRPhoneAuthCredential.h @@ -0,0 +1,36 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthCredential.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRPhoneAuthCredential + @brief Implementation of FIRAuthCredential for Phone Auth credentials. + */ +NS_SWIFT_NAME(PhoneAuthCredential) +@interface FIRPhoneAuthCredential : FIRAuthCredential + +/** @fn init + @brief This class is not supposed to be instantiated directly. + */ +- (instancetype)init NS_UNAVAILABLE; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRPhoneAuthProvider.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRPhoneAuthProvider.h new file mode 100644 index 0000000..6758b26 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRPhoneAuthProvider.h @@ -0,0 +1,106 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FIRAuth; +@class FIRPhoneAuthCredential; +@protocol FIRAuthUIDelegate; + +NS_ASSUME_NONNULL_BEGIN + +/** @var FIRPhoneAuthProviderID + @brief A string constant identifying the phone identity provider. + */ +extern NSString *const FIRPhoneAuthProviderID NS_SWIFT_NAME(PhoneAuthProviderID); + +/** @var FIRPhoneAuthProviderID + @brief A string constant identifying the phone sign-in method. + */ +extern NSString *const _Nonnull FIRPhoneAuthSignInMethod NS_SWIFT_NAME(PhoneAuthSignInMethod); + + +/** @typedef FIRVerificationResultCallback + @brief The type of block invoked when a request to send a verification code has finished. + + @param verificationID On success, the verification ID provided, nil otherwise. + @param error On error, the error that occurred, nil otherwise. + */ +typedef void (^FIRVerificationResultCallback)(NSString *_Nullable verificationID, + NSError *_Nullable error) + NS_SWIFT_NAME(VerificationResultCallback); + +/** @class FIRPhoneAuthProvider + @brief A concrete implementation of `FIRAuthProvider` for phone auth providers. + */ +NS_SWIFT_NAME(PhoneAuthProvider) +@interface FIRPhoneAuthProvider : NSObject + +/** @fn provider + @brief Returns an instance of `FIRPhoneAuthProvider` for the default `FIRAuth` object. + */ ++ (instancetype)provider NS_SWIFT_NAME(provider()); + +/** @fn providerWithAuth: + @brief Returns an instance of `FIRPhoneAuthProvider` for the provided `FIRAuth` object. + + @param auth The auth object to associate with the phone auth provider instance. + */ ++ (instancetype)providerWithAuth:(FIRAuth *)auth NS_SWIFT_NAME(provider(auth:)); + +/** @fn verifyPhoneNumber:UIDelegate:completion: + @brief Starts the phone number authentication flow by sending a verifcation code to the + specified phone number. + @param phoneNumber The phone number to be verified. + @param UIDelegate An object used to present the SFSafariViewController. The object is retained + by this method until the completion block is executed. + @param completion The callback to be invoked when the verification flow is finished. + @remarks Possible error codes: + + + `FIRAuthErrorCodeCaptchaCheckFailed` - Indicates that the reCAPTCHA token obtained by + the Firebase Auth is invalid or has expired. + + `FIRAuthErrorCodeQuotaExceeded` - Indicates that the phone verification quota for this + project has been exceeded. + + `FIRAuthErrorCodeInvalidPhoneNumber` - Indicates that the phone number provided is + invalid. + + `FIRAuthErrorCodeMissingPhoneNumber` - Indicates that a phone number was not provided. + */ +- (void)verifyPhoneNumber:(NSString *)phoneNumber + UIDelegate:(nullable id)UIDelegate + completion:(nullable FIRVerificationResultCallback)completion; + +/** @fn credentialWithVerificationID:verificationCode: + @brief Creates an `FIRAuthCredential` for the phone number provider identified by the + verification ID and verification code. + + @param verificationID The verification ID obtained from invoking + verifyPhoneNumber:completion: + @param verificationCode The verification code obtained from the user. + @return The corresponding phone auth credential for the verification ID and verification code + provided. + */ +- (FIRPhoneAuthCredential *)credentialWithVerificationID:(NSString *)verificationID + verificationCode:(NSString *)verificationCode; + +/** @fn init + @brief Please use the `provider` or `providerWithAuth:` methods to obtain an instance of + `FIRPhoneAuthProvider`. + */ +- (instancetype)init NS_UNAVAILABLE; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRTwitterAuthProvider.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRTwitterAuthProvider.h new file mode 100644 index 0000000..a0d1166 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRTwitterAuthProvider.h @@ -0,0 +1,56 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FIRAuthCredential; + +NS_ASSUME_NONNULL_BEGIN + +/** + @brief A string constant identifying the Twitter identity provider. + */ +extern NSString *const FIRTwitterAuthProviderID NS_SWIFT_NAME(TwitterAuthProviderID); + +/** + @brief A string constant identifying the Twitter sign-in method. + */ +extern NSString *const _Nonnull FIRTwitterAuthSignInMethod NS_SWIFT_NAME(TwitterAuthSignInMethod); + + +/** @class FIRTwitterAuthProvider + @brief Utility class for constructing Twitter credentials. + */ +NS_SWIFT_NAME(TwitterAuthProvider) +@interface FIRTwitterAuthProvider : NSObject + +/** @fn credentialWithToken:secret: + @brief Creates an `FIRAuthCredential` for a Twitter sign in. + + @param token The Twitter OAuth token. + @param secret The Twitter OAuth secret. + @return A FIRAuthCredential containing the Twitter credential. + */ ++ (FIRAuthCredential *)credentialWithToken:(NSString *)token secret:(NSString *)secret; + +/** @fn init + @brief This class is not meant to be initialized. + */ +- (instancetype)init NS_UNAVAILABLE; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRUser.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRUser.h new file mode 100644 index 0000000..cc5d0a0 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRUser.h @@ -0,0 +1,495 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuth.h" +#import "FIRAuthDataResult.h" +#import "FIRUserInfo.h" + +@class FIRAuthTokenResult; +@class FIRPhoneAuthCredential; +@class FIRUserProfileChangeRequest; +@class FIRUserMetadata; + +NS_ASSUME_NONNULL_BEGIN + +/** @typedef FIRAuthTokenCallback + @brief The type of block called when a token is ready for use. + @see FIRUser.getIDTokenWithCompletion: + @see FIRUser.getIDTokenForcingRefresh:withCompletion: + + @param token Optionally; an access token if the request was successful. + @param error Optionally; the error which occurred - or nil if the request was successful. + + @remarks One of: `token` or `error` will always be non-nil. + */ +typedef void (^FIRAuthTokenCallback)(NSString *_Nullable token, NSError *_Nullable error) + NS_SWIFT_NAME(AuthTokenCallback); + +/** @typedef FIRAuthTokenResultCallback + @brief The type of block called when a token is ready for use. + @see FIRUser.getIDTokenResultWithCompletion: + @see FIRUser.getIDTokenResultForcingRefresh:withCompletion: + + @param tokenResult Optionally; an object containing the raw access token string as well as other + useful data pertaining to the token. + @param error Optionally; the error which occurred - or nil if the request was successful. + + @remarks One of: `token` or `error` will always be non-nil. + */ +typedef void (^FIRAuthTokenResultCallback)(FIRAuthTokenResult *_Nullable tokenResult, + NSError *_Nullable error) + NS_SWIFT_NAME(AuthTokenResultCallback); + +/** @typedef FIRUserProfileChangeCallback + @brief The type of block called when a user profile change has finished. + + @param error Optionally; the error which occurred - or nil if the request was successful. + */ +typedef void (^FIRUserProfileChangeCallback)(NSError *_Nullable error) + NS_SWIFT_NAME(UserProfileChangeCallback); + +/** @typedef FIRSendEmailVerificationCallback + @brief The type of block called when a request to send an email verification has finished. + + @param error Optionally; the error which occurred - or nil if the request was successful. + */ +typedef void (^FIRSendEmailVerificationCallback)(NSError *_Nullable error) + NS_SWIFT_NAME(SendEmailVerificationCallback); + +/** @class FIRUser + @brief Represents a user. Firebase Auth does not attempt to validate users + when loading them from the keychain. Invalidated users (such as those + whose passwords have been changed on another client) are automatically + logged out when an auth-dependent operation is attempted or when the + ID token is automatically refreshed. + @remarks This class is thread-safe. + */ +NS_SWIFT_NAME(User) +@interface FIRUser : NSObject + +/** @property anonymous + @brief Indicates the user represents an anonymous user. + */ +@property(nonatomic, readonly, getter=isAnonymous) BOOL anonymous; + +/** @property emailVerified + @brief Indicates the email address associated with this user has been verified. + */ +@property(nonatomic, readonly, getter=isEmailVerified) BOOL emailVerified; + +/** @property refreshToken + @brief A refresh token; useful for obtaining new access tokens independently. + @remarks This property should only be used for advanced scenarios, and is not typically needed. + */ +@property(nonatomic, readonly, nullable) NSString *refreshToken; + +/** @property providerData + @brief Profile data for each identity provider, if any. + @remarks This data is cached on sign-in and updated when linking or unlinking. + */ +@property(nonatomic, readonly, nonnull) NSArray> *providerData; + +/** @property metadata + @brief Metadata associated with the Firebase user in question. + */ +@property(nonatomic, readonly, nonnull) FIRUserMetadata *metadata; + +/** @fn init + @brief This class should not be instantiated. + @remarks To retrieve the current user, use `FIRAuth.currentUser`. To sign a user + in or out, use the methods on `FIRAuth`. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** @fn updateEmail:completion: + @brief Updates the email address for the user. On success, the cached user profile data is + updated. + @remarks May fail if there is already an account with this email address that was created using + email and password authentication. + + @param email The email address for the user. + @param completion Optionally; the block invoked when the user profile change has finished. + Invoked asynchronously on the main thread in the future. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeInvalidRecipientEmail` - Indicates an invalid recipient email was + sent in the request. + + `FIRAuthErrorCodeInvalidSender` - Indicates an invalid sender email is set in + the console for this action. + + `FIRAuthErrorCodeInvalidMessagePayload` - Indicates an invalid email template for + sending update email. + + `FIRAuthErrorCodeEmailAlreadyInUse` - Indicates the email is already in use by another + account. + + `FIRAuthErrorCodeInvalidEmail` - Indicates the email address is malformed. + + `FIRAuthErrorCodeRequiresRecentLogin` - Updating a user’s email is a security + sensitive operation that requires a recent login from the user. This error indicates + the user has not signed in recently enough. To resolve, reauthenticate the user by + invoking reauthenticateWithCredential:completion: on FIRUser. + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all FIRUser methods. + */ +- (void)updateEmail:(NSString *)email completion:(nullable FIRUserProfileChangeCallback)completion + NS_SWIFT_NAME(updateEmail(to:completion:)); + +/** @fn updatePassword:completion: + @brief Updates the password for the user. On success, the cached user profile data is updated. + + @param password The new password for the user. + @param completion Optionally; the block invoked when the user profile change has finished. + Invoked asynchronously on the main thread in the future. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeOperationNotAllowed` - Indicates the administrator disabled + sign in with the specified identity provider. + + `FIRAuthErrorCodeRequiresRecentLogin` - Updating a user’s password is a security + sensitive operation that requires a recent login from the user. This error indicates + the user has not signed in recently enough. To resolve, reauthenticate the user by + invoking reauthenticateWithCredential:completion: on FIRUser. + + `FIRAuthErrorCodeWeakPassword` - Indicates an attempt to set a password that is + considered too weak. The NSLocalizedFailureReasonErrorKey field in the NSError.userInfo + dictionary object will contain more detailed explanation that can be shown to the user. + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all FIRUser methods. + */ +- (void)updatePassword:(NSString *)password + completion:(nullable FIRUserProfileChangeCallback)completion + NS_SWIFT_NAME(updatePassword(to:completion:)); + +#if TARGET_OS_IOS +/** @fn updatePhoneNumberCredential:completion: + @brief Updates the phone number for the user. On success, the cached user profile data is + updated. + + @param phoneNumberCredential The new phone number credential corresponding to the phone number + to be added to the Firebase account, if a phone number is already linked to the account this + new phone number will replace it. + @param completion Optionally; the block invoked when the user profile change has finished. + Invoked asynchronously on the main thread in the future. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeRequiresRecentLogin` - Updating a user’s phone number is a security + sensitive operation that requires a recent login from the user. This error indicates + the user has not signed in recently enough. To resolve, reauthenticate the user by + invoking reauthenticateWithCredential:completion: on FIRUser. + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all FIRUser methods. + */ +- (void)updatePhoneNumberCredential:(FIRPhoneAuthCredential *)phoneNumberCredential + completion:(nullable FIRUserProfileChangeCallback)completion; +#endif + +/** @fn profileChangeRequest + @brief Creates an object which may be used to change the user's profile data. + + @remarks Set the properties of the returned object, then call + `FIRUserProfileChangeRequest.commitChangesWithCallback:` to perform the updates atomically. + + @return An object which may be used to change the user's profile data atomically. + */ +- (FIRUserProfileChangeRequest *)profileChangeRequest NS_SWIFT_NAME(createProfileChangeRequest()); + +/** @fn reloadWithCompletion: + @brief Reloads the user's profile data from the server. + + @param completion Optionally; the block invoked when the reload has finished. Invoked + asynchronously on the main thread in the future. + + @remarks May fail with a `FIRAuthErrorCodeRequiresRecentLogin` error code. In this case + you should call `FIRUser.reauthenticateWithCredential:completion:` before re-invoking + `FIRUser.updateEmail:completion:`. + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods. + */ +- (void)reloadWithCompletion:(nullable FIRUserProfileChangeCallback)completion; + +/** @fn reauthenticateWithCredential:completion: + @brief Please use reauthenticateAndRetrieveDataWithCredential:completion: for Objective-C or + reauthenticateAndRetrieveData(WithCredential:completion:) for Swift instead. + */ +- (void)reauthenticateWithCredential:(FIRAuthCredential *)credential + completion:(nullable FIRUserProfileChangeCallback)completion + DEPRECATED_MSG_ATTRIBUTE( "Please use" + " reauthenticateAndRetrieveDataWithCredential:completion: for" + " Objective-C or" + " reauthenticateAndRetrieveData(WithCredential:completion:)" + " for Swift instead."); + +/** @fn reauthenticateAndRetrieveDataWithCredential:completion: + @brief Renews the user's authentication tokens by validating a fresh set of credentials supplied + by the user and returns additional identity provider data. + + @param credential A user-supplied credential, which will be validated by the server. This can be + a successful third-party identity provider sign-in, or an email address and password. + @param completion Optionally; the block invoked when the re-authentication operation has + finished. Invoked asynchronously on the main thread in the future. + + @remarks If the user associated with the supplied credential is different from the current user, + or if the validation of the supplied credentials fails; an error is returned and the current + user remains signed in. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeInvalidCredential` - Indicates the supplied credential is invalid. + This could happen if it has expired or it is malformed. + + `FIRAuthErrorCodeOperationNotAllowed` - Indicates that accounts with the + identity provider represented by the credential are not enabled. Enable them in the + Auth section of the Firebase console. + + `FIRAuthErrorCodeEmailAlreadyInUse` - Indicates the email asserted by the credential + (e.g. the email in a Facebook access token) is already in use by an existing account, + that cannot be authenticated with this method. Call fetchProvidersForEmail for + this user’s email and then prompt them to sign in with any of the sign-in providers + returned. This error will only be thrown if the "One account per email address" + setting is enabled in the Firebase console, under Auth settings. Please note that the + error code raised in this specific situation may not be the same on Web and Android. + + `FIRAuthErrorCodeUserDisabled` - Indicates the user's account is disabled. + + `FIRAuthErrorCodeWrongPassword` - Indicates the user attempted reauthentication with + an incorrect password, if credential is of the type EmailPasswordAuthCredential. + + `FIRAuthErrorCodeUserMismatch` - Indicates that an attempt was made to + reauthenticate with a user which is not the current user. + + `FIRAuthErrorCodeInvalidEmail` - Indicates the email address is malformed. + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods. + */ +- (void)reauthenticateAndRetrieveDataWithCredential:(FIRAuthCredential *) credential + completion:(nullable FIRAuthDataResultCallback) completion; + +/** @fn getIDTokenResultWithCompletion: + @brief Retrieves the Firebase authentication token, possibly refreshing it if it has expired. + + @param completion Optionally; the block invoked when the token is available. Invoked + asynchronously on the main thread in the future. + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods. + */ +- (void)getIDTokenResultWithCompletion:(nullable FIRAuthTokenResultCallback)completion + NS_SWIFT_NAME(getIDTokenResult(completion:)); + +/** @fn getIDTokenResultForcingRefresh:completion: + @brief Retrieves the Firebase authentication token, possibly refreshing it if it has expired. + + @param forceRefresh Forces a token refresh. Useful if the token becomes invalid for some reason + other than an expiration. + @param completion Optionally; the block invoked when the token is available. Invoked + asynchronously on the main thread in the future. + + @remarks The authentication token will be refreshed (by making a network request) if it has + expired, or if `forceRefresh` is YES. + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods. + */ +- (void)getIDTokenResultForcingRefresh:(BOOL)forceRefresh + completion:(nullable FIRAuthTokenResultCallback)completion + NS_SWIFT_NAME(getIDTokenResult(forcingRefresh:completion:)); + +/** @fn getIDTokenWithCompletion: + @brief Retrieves the Firebase authentication token, possibly refreshing it if it has expired. + + @param completion Optionally; the block invoked when the token is available. Invoked + asynchronously on the main thread in the future. + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods. + */ +- (void)getIDTokenWithCompletion:(nullable FIRAuthTokenCallback)completion + NS_SWIFT_NAME(getIDToken(completion:)); + +/** @fn getIDTokenForcingRefresh:completion: + @brief Retrieves the Firebase authentication token, possibly refreshing it if it has expired. + + @param forceRefresh Forces a token refresh. Useful if the token becomes invalid for some reason + other than an expiration. + @param completion Optionally; the block invoked when the token is available. Invoked + asynchronously on the main thread in the future. + + @remarks The authentication token will be refreshed (by making a network request) if it has + expired, or if `forceRefresh` is YES. + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all API methods. + */ +- (void)getIDTokenForcingRefresh:(BOOL)forceRefresh + completion:(nullable FIRAuthTokenCallback)completion; + +/** @fn linkWithCredential:completion: + @brief Please use linkAndRetrieveDataWithCredential:completion: for Objective-C or + linkAndRetrieveData(WithCredential:completion:) for Swift instead. + */ +- (void)linkWithCredential:(FIRAuthCredential *)credential + completion:(nullable FIRAuthResultCallback)completion DEPRECATED_MSG_ATTRIBUTE( + "Please use linkAndRetrieveDataWithCredential:completion: for" + " Objective-C or" + " linkAndRetrieveData(WithCredential:completion:) for" + " Swift instead."); + +/** @fn linkAndRetrieveDataWithCredential:completion: + @brief Associates a user account from a third-party identity provider with this user and + returns additional identity provider data. + + @param credential The credential for the identity provider. + @param completion Optionally; the block invoked when the unlinking is complete, or fails. + Invoked asynchronously on the main thread in the future. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeProviderAlreadyLinked` - Indicates an attempt to link a provider of a + type already linked to this account. + + `FIRAuthErrorCodeCredentialAlreadyInUse` - Indicates an attempt to link with a + credential + that has already been linked with a different Firebase account. + + `FIRAuthErrorCodeOperationNotAllowed` - Indicates that accounts with the identity + provider represented by the credential are not enabled. Enable them in the Auth section + of the Firebase console. + + @remarks This method may also return error codes associated with updateEmail:completion: and + updatePassword:completion: on FIRUser. + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all FIRUser methods. + */ +- (void)linkAndRetrieveDataWithCredential:(FIRAuthCredential *) credential + completion:(nullable FIRAuthDataResultCallback) completion; + +/** @fn unlinkFromProvider:completion: + @brief Disassociates a user account from a third-party identity provider with this user. + + @param provider The provider ID of the provider to unlink. + @param completion Optionally; the block invoked when the unlinking is complete, or fails. + Invoked asynchronously on the main thread in the future. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeNoSuchProvider` - Indicates an attempt to unlink a provider + that is not linked to the account. + + `FIRAuthErrorCodeRequiresRecentLogin` - Updating email is a security sensitive + operation that requires a recent login from the user. This error indicates the user + has not signed in recently enough. To resolve, reauthenticate the user by invoking + reauthenticateWithCredential:completion: on FIRUser. + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all FIRUser methods. + */ +- (void)unlinkFromProvider:(NSString *)provider + completion:(nullable FIRAuthResultCallback)completion; + +/** @fn sendEmailVerificationWithCompletion: + @brief Initiates email verification for the user. + + @param completion Optionally; the block invoked when the request to send an email verification + is complete, or fails. Invoked asynchronously on the main thread in the future. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeInvalidRecipientEmail` - Indicates an invalid recipient email was + sent in the request. + + `FIRAuthErrorCodeInvalidSender` - Indicates an invalid sender email is set in + the console for this action. + + `FIRAuthErrorCodeInvalidMessagePayload` - Indicates an invalid email template for + sending update email. + + `FIRAuthErrorCodeUserNotFound` - Indicates the user account was not found. + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all FIRUser methods. + */ +- (void)sendEmailVerificationWithCompletion:(nullable FIRSendEmailVerificationCallback)completion; + +/** @fn sendEmailVerificationWithActionCodeSettings:completion: + @brief Initiates email verification for the user. + + @param actionCodeSettings An `FIRActionCodeSettings` object containing settings related to + handling action codes. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeInvalidRecipientEmail` - Indicates an invalid recipient email was + sent in the request. + + `FIRAuthErrorCodeInvalidSender` - Indicates an invalid sender email is set in + the console for this action. + + `FIRAuthErrorCodeInvalidMessagePayload` - Indicates an invalid email template for + sending update email. + + `FIRAuthErrorCodeUserNotFound` - Indicates the user account was not found. + + `FIRAuthErrorCodeMissingIosBundleID` - Indicates that the iOS bundle ID is missing when + a iOS App Store ID is provided. + + `FIRAuthErrorCodeMissingAndroidPackageName` - Indicates that the android package name + is missing when the `androidInstallApp` flag is set to true. + + `FIRAuthErrorCodeUnauthorizedDomain` - Indicates that the domain specified in the + continue URL is not whitelisted in the Firebase console. + + `FIRAuthErrorCodeInvalidContinueURI` - Indicates that the domain specified in the + continue URI is not valid. + */ +- (void)sendEmailVerificationWithActionCodeSettings:(FIRActionCodeSettings *)actionCodeSettings + completion:(nullable FIRSendEmailVerificationCallback) + completion; + +/** @fn deleteWithCompletion: + @brief Deletes the user account (also signs out the user, if this was the current user). + + @param completion Optionally; the block invoked when the request to delete the account is + complete, or fails. Invoked asynchronously on the main thread in the future. + + @remarks Possible error codes: + + + `FIRAuthErrorCodeRequiresRecentLogin` - Updating email is a security sensitive + operation that requires a recent login from the user. This error indicates the user + has not signed in recently enough. To resolve, reauthenticate the user by invoking + reauthenticateWithCredential:completion: on FIRUser. + + @remarks See `FIRAuthErrors` for a list of error codes that are common to all FIRUser methods. + + */ +- (void)deleteWithCompletion:(nullable FIRUserProfileChangeCallback)completion; + +@end + +/** @class FIRUserProfileChangeRequest + @brief Represents an object capable of updating a user's profile data. + @remarks Properties are marked as being part of a profile update when they are set. Setting a + property value to nil is not the same as leaving the property unassigned. + */ +NS_SWIFT_NAME(UserProfileChangeRequest) +@interface FIRUserProfileChangeRequest : NSObject + +/** @fn init + @brief Please use `FIRUser.profileChangeRequest` + */ +- (instancetype)init NS_UNAVAILABLE; + +/** @property displayName + @brief The user's display name. + @remarks It is an error to set this property after calling + `FIRUserProfileChangeRequest.commitChangesWithCallback:` + */ +@property(nonatomic, copy, nullable) NSString *displayName; + +/** @property photoURL + @brief The user's photo URL. + @remarks It is an error to set this property after calling + `FIRUserProfileChangeRequest.commitChangesWithCallback:` + */ +@property(nonatomic, copy, nullable) NSURL *photoURL; + +/** @fn commitChangesWithCompletion: + @brief Commits any pending changes. + @remarks This method should only be called once. Once called, property values should not be + changed. + + @param completion Optionally; the block invoked when the user profile change has been applied. + Invoked asynchronously on the main thread in the future. + */ +- (void)commitChangesWithCompletion:(nullable FIRUserProfileChangeCallback)completion; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRUserInfo.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRUserInfo.h new file mode 100644 index 0000000..04eca49 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRUserInfo.h @@ -0,0 +1,60 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + @brief Represents user data returned from an identity provider. + */ +NS_SWIFT_NAME(UserInfo) +@protocol FIRUserInfo + +/** @property providerID + @brief The provider identifier. + */ +@property(nonatomic, copy, readonly) NSString *providerID; + +/** @property uid + @brief The provider's user ID for the user. + */ +@property(nonatomic, copy, readonly) NSString *uid; + +/** @property displayName + @brief The name of the user. + */ +@property(nonatomic, copy, readonly, nullable) NSString *displayName; + +/** @property photoURL + @brief The URL of the user's profile photo. + */ +@property(nonatomic, copy, readonly, nullable) NSURL *photoURL; + +/** @property email + @brief The user's email address. + */ +@property(nonatomic, copy, readonly, nullable) NSString *email; + +/** @property phoneNumber + @brief A phone number associated with the user. + @remarks This property is only available for users authenticated via phone number auth. + */ +@property(nonatomic, readonly, nullable) NSString *phoneNumber; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRUserMetadata.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRUserMetadata.h new file mode 100644 index 0000000..2533171 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FIRUserMetadata.h @@ -0,0 +1,45 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRUserMetdata + @brief A data class representing the metadata corresponding to a Firebase user. + */ +NS_SWIFT_NAME(UserMetadata) +@interface FIRUserMetadata : NSObject + +/** @property lastSignInDate + @brief Stores the last sign in date for the corresponding Firebase user. + */ +@property (copy, nonatomic, readonly, nullable) NSDate *lastSignInDate; + +/** @property creationDate + @brief Stores the creation date for the corresponding Firebase user. + */ +@property (copy, nonatomic, readonly, nullable) NSDate *creationDate; + +/** @fn init + @brief This class should not be initialized manually, an instance of this class can be obtained + from a Firebase user object. + */ +- (instancetype)init NS_UNAVAILABLE; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FirebaseAuth.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FirebaseAuth.h new file mode 100644 index 0000000..c8837f8 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FirebaseAuth.h @@ -0,0 +1,43 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRActionCodeSettings.h" +#import "FIRAdditionalUserInfo.h" +#import "FIRAuth.h" +#import "FIRAuthCredential.h" +#import "FIRAuthDataResult.h" +#import "FIRAuthErrors.h" +#import "FIRAuthTokenResult.h" +#import "FirebaseAuthVersion.h" +#import "FIREmailAuthProvider.h" +#import "FIRFacebookAuthProvider.h" +#import "FIRGitHubAuthProvider.h" +#import "FIRGoogleAuthProvider.h" +#import "FIROAuthProvider.h" +#import "FIRTwitterAuthProvider.h" +#import "FIRUser.h" +#import "FIRUserInfo.h" +#import "FIRUserMetadata.h" + +#if TARGET_OS_IOS +#import "FIRAuthUIDelegate.h" +#import "FIRPhoneAuthCredential.h" +#import "FIRPhoneAuthProvider.h" +#import "FIRAuthAPNSTokenType.h" +#import "FIRAuthSettings.h" +#endif diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FirebaseAuthVersion.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FirebaseAuthVersion.h new file mode 100644 index 0000000..2999384 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/Public/FirebaseAuthVersion.h @@ -0,0 +1,27 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +/** + Version number for FirebaseAuth. + */ +extern const double FirebaseAuthVersionNum; + +/** + Version string for FirebaseAuth. + */ +extern const unsigned char *const FirebaseAuthVersionStr; diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthBackend.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthBackend.h new file mode 100644 index 0000000..f4899d0 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthBackend.h @@ -0,0 +1,569 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FIRAuthRequestConfiguration; +@class FIRCreateAuthURIRequest; +@class FIRCreateAuthURIResponse; +@class FIREmailLinkSignInRequest; +@class FIREmailLinkSignInResponse; +@class FIRGetAccountInfoRequest; +@class FIRGetAccountInfoResponse; +@class FIRGetProjectConfigRequest; +@class FIRGetProjectConfigResponse; +@class FIRGetOOBConfirmationCodeRequest; +@class FIRGetOOBConfirmationCodeResponse; +@class FIRResetPasswordRequest; +@class FIRResetPasswordResponse; +@class FIRSecureTokenRequest; +@class FIRSecureTokenResponse; +@class FIRSetAccountInfoRequest; +@class FIRSetAccountInfoResponse; +@class FIRVerifyAssertionRequest; +@class FIRVerifyAssertionResponse; +@class FIRVerifyClientRequest; +@class FIRVerifyClientResponse; +@class FIRVerifyCustomTokenRequest; +@class FIRVerifyCustomTokenResponse; +@class FIRVerifyPasswordRequest; +@class FIRVerifyPasswordResponse; +@class FIRVerifyPhoneNumberRequest; +@class FIRVerifyPhoneNumberResponse; +@class FIRSendVerificationCodeRequest; +@class FIRSendVerificationCodeResponse; +@class FIRSignUpNewUserRequest; +@class FIRSignUpNewUserResponse; +@class FIRDeleteAccountRequest; +@class FIRDeleteAccountResponse; +@protocol FIRAuthBackendImplementation; +@protocol FIRAuthBackendRPCIssuer; + +NS_ASSUME_NONNULL_BEGIN + +/** @typedef FIRAuthBackendRPCIssuerCompletionHandler + @brief The type of block used to return the result of a call to an endpoint. + @param data The HTTP response body. + @param error The error which occurred, if any. + @remarks One of response or error will be non-nil. + */ +typedef void (^FIRAuthBackendRPCIssuerCompletionHandler)(NSData *_Nullable data, + NSError *_Nullable error); + +/** @typedef FIRCreateAuthURIResponseCallback + @brief The type of block used to return the result of a call to the createAuthURI + endpoint. + @param response The received response, if any. + @param error The error which occurred, if any. + @remarks One of response or error will be non-nil. + */ +typedef void (^FIRCreateAuthURIResponseCallback) + (FIRCreateAuthURIResponse *_Nullable response, NSError *_Nullable error); + +/** @typedef FIRGetAccountInfoResponseCallback + @brief The type of block used to return the result of a call to the getAccountInfo + endpoint. + @param response The received response, if any. + @param error The error which occurred, if any. + @remarks One of response or error will be non-nil. + */ +typedef void (^FIRGetAccountInfoResponseCallback) + (FIRGetAccountInfoResponse *_Nullable response, NSError *_Nullable error); + +/** @typedef FIRGetProjectConfigResponseCallback + @brief The type of block used to return the result of a call to the getProjectInfo + endpoint. + @param response The received response, if any. + @param error The error which occurred, if any. + @remarks One of response or error will be non-nil. + */ +typedef void (^FIRGetProjectConfigResponseCallback) + (FIRGetProjectConfigResponse *_Nullable response, NSError *_Nullable error); + +/** @typedef FIRSetAccountInfoResponseCallback + @brief The type of block used to return the result of a call to the setAccountInfo + endpoint. + @param response The received response, if any. + @param error The error which occurred, if any. + @remarks One of response or error will be non-nil. + */ +typedef void (^FIRSetAccountInfoResponseCallback) + (FIRSetAccountInfoResponse *_Nullable response, NSError *_Nullable error); + +/** @typedef FIRSecureTokenResponseCallback + @brief The type of block used to return the result of a call to the token endpoint. + @param response The received response, if any. + @param error The error which occurred, if any. + @remarks One of response or error will be non-nil. + */ +typedef void (^FIRSecureTokenResponseCallback) + (FIRSecureTokenResponse *_Nullable response, NSError *_Nullable error); + +/** @typedef FIRVerifyAssertionResponseCallback + @brief The type of block used to return the result of a call to the verifyAssertion + endpoint. + @param response The received response, if any. + @param error The error which occurred, if any. + @remarks One of response or error will be non-nil. + */ +typedef void (^FIRVerifyAssertionResponseCallback) + (FIRVerifyAssertionResponse *_Nullable response, NSError *_Nullable error); + +/** @typedef FIRVerifyPasswordResponseCallback + @brief The type of block used to return the result of a call to the verifyPassword + endpoint. + @param response The received response, if any. + @param error The error which occurred, if any. + @remarks One of response or error will be non-nil. + */ +typedef void (^FIRVerifyPasswordResponseCallback) + (FIRVerifyPasswordResponse *_Nullable response, NSError *_Nullable error); + +/** @typedef FIREmailLinkSigninResponseCallback + @brief The type of block used to return the result of a call to the emailLinkSignin + endpoint. + @param response The received response, if any. + @param error The error which occurred, if any. + @remarks One of response or error will be non-nil. + */ +typedef void (^FIREmailLinkSigninResponseCallback) + (FIREmailLinkSignInResponse *_Nullable response, NSError *_Nullable error); + +/** @typedef FIRVerifyCustomTokenResponseCallback + @brief The type of block used to return the result of a call to the verifyCustomToken + endpoint. + @param response The received response, if any. + @param error The error which occurred, if any. + @remarks One of response or error will be non-nil. + */ +typedef void (^FIRVerifyCustomTokenResponseCallback) + (FIRVerifyCustomTokenResponse *_Nullable response, NSError *_Nullable error); + +/** @typedef FIRDeleteCallBack + @brief The type of block called when a request delete account has finished. + @param error The error which occurred, or nil if the request was successful. + */ +typedef void (^FIRDeleteCallBack)(NSError *_Nullable error); + +/** @typedef FIRGetOOBConfirmationCodeResponseCallback + @brief The type of block used to return the result of a call to the getOOBConfirmationCode + endpoint. + @param response The received response, if any. + @param error The error which occurred, if any. + @remarks One of response or error will be non-nil. + */ +typedef void (^FIRGetOOBConfirmationCodeResponseCallback) + (FIRGetOOBConfirmationCodeResponse *_Nullable response, NSError *_Nullable error); + +/** @typedef FIRSignupNewUserCallback + @brief The type of block used to return the result of a call to the signupNewUser endpoint. + @param response The received response, if any. + @param error The error which occurred, if any. + @remarks One of response or error will be non-nil. + */ +typedef void (^FIRSignupNewUserCallback) + (FIRSignUpNewUserResponse *_Nullable response, NSError *_Nullable error); + +/** @typedef FIRResetPasswordCallback + @brief The type of block used to return the result of a call to the resetPassword endpoint. + @param response The received response, if any. + @param error The error which occurred, if any. + @remarks One of response or error will be non-nil. + */ +typedef void (^FIRResetPasswordCallback) + (FIRResetPasswordResponse *_Nullable response, NSError *_Nullable error); + +/** @typedef FIRSendVerificationCodeResponseCallback + @brief The type of block used to return the result of a call to the sendVerificationCode + endpoint. + @param response The received response, if any. + @param error The error which occurred, if any. + @remarks One of response or error will be non-nil. + */ +typedef void (^FIRSendVerificationCodeResponseCallback) + (FIRSendVerificationCodeResponse *_Nullable response, NSError *_Nullable error); + +/** @typedef FIRVerifyPhoneNumberResponseCallback + @brief The type of block used to return the result of a call to the verifyPhoneNumber endpoint. + @param response The received response, if any. + @param error The error which occurred, if any. + @remarks One of response or error will be non-nil. + */ +typedef void (^FIRVerifyPhoneNumberResponseCallback) + (FIRVerifyPhoneNumberResponse *_Nullable response, NSError *_Nullable error); + +/** @typedef FIRVerifyClientResponseCallback + @brief The type of block used to return the result of a call to the verifyClient endpoint. + @param response The received response, if any. + @param error The error which occurred, if any. + @remarks One of response or error will be non-nil. + */ +typedef void (^FIRVerifyClientResponseCallback) + (FIRVerifyClientResponse *_Nullable response, NSError *_Nullable error); + +/** @class FIRAuthBackend + @brief Simple static class with methods representing the backend RPCs. + @remarks All callback blocks passed as method parameters are invoked asynchronously on the + global work queue in the future. See + https://github.com/firebase/firebase-ios-sdk/tree/master/Firebase/Auth/Docs/threading.ml + */ +@interface FIRAuthBackend : NSObject + +/** @fn authUserAgent + @brief Retrieves the Firebase Auth user agent. + @return The Firebase Auth user agent. + */ ++ (NSString *)authUserAgent; + +/** @fn setBackendImplementation: + @brief Changes the default backend implementation to something else. + @param backendImplementation The backend implementation to use. + @remarks This is not, generally, safe to call in a scenario where other backend requests may + be occuring. This is specifically to help mock the backend for testing purposes. + */ ++ (void)setBackendImplementation:(id)backendImplementation; + +/** @fn setDefaultBackendImplementationWithRPCIssuer: + @brief Uses the default backend implementation, but with a custom RPC issuer. + @param RPCIssuer The RPC issuer to use. If @c nil, will use the default implementation. + @remarks This is not, generally, safe to call in a scenario where other backend requests may + be occuring. This is specifically to help test the backend interfaces (requests, responses, + and shared FIRAuthBackend logic.) + */ ++ (void)setDefaultBackendImplementationWithRPCIssuer: + (nullable id)RPCIssuer; + +/** @fn createAuthURI:callback: + @brief Calls the createAuthURI endpoint, which is responsible for creating the URI used by the + IdP to authenticate the user. + @param request The request parameters. + @param callback The callback. + */ ++ (void)createAuthURI:(FIRCreateAuthURIRequest *)request + callback:(FIRCreateAuthURIResponseCallback)callback; + +/** @fn getAccountInfo:callback: + @brief Calls the getAccountInfo endpoint, which returns account info for a given account. + @param request The request parameters. + @param callback The callback. + */ ++ (void)getAccountInfo:(FIRGetAccountInfoRequest *)request + callback:(FIRGetAccountInfoResponseCallback)callback; + +/** @fn getProjectConfig:callback: + @brief Calls the getProjectConfig endpoint, which returns configuration information for a given + project. + @param request An object wrapping the backend get request. + @param callback The callback. + */ ++ (void)getProjectConfig:(FIRGetProjectConfigRequest *)request + callback:(FIRGetProjectConfigResponseCallback)callback; + +/** @fn setAccountInfo:callback: + @brief Calls the setAccountInfo endpoint, which is responsible for setting account info for a + user, for example, to sign up a new user with email and password. + @param request The request parameters. + @param callback The callback. + */ ++ (void)setAccountInfo:(FIRSetAccountInfoRequest *)request + callback:(FIRSetAccountInfoResponseCallback)callback; + +/** @fn verifyAssertion:callback: + @brief Calls the verifyAssertion endpoint, which is responsible for authenticating a + user who has IDP-related credentials (an ID Token, an Access Token, etc.) + @param request The request parameters. + @param callback The callback. + */ ++ (void)verifyAssertion:(FIRVerifyAssertionRequest *)request + callback:(FIRVerifyAssertionResponseCallback)callback; + +/** @fn verifyCustomToken:callback: + @brief Calls the verifyCustomToken endpoint, which is responsible for authenticating a + user who has BYOAuth credentials (a self-signed token using their BYOAuth private key.) + @param request The request parameters. + @param callback The callback. + */ ++ (void)verifyCustomToken:(FIRVerifyCustomTokenRequest *)request + callback:(FIRVerifyCustomTokenResponseCallback)callback; + +/** @fn verifyPassword:callback: + @brief Calls the verifyPassword endpoint, which is responsible for authenticating a + user who has email and password credentials. + @param request The request parameters. + @param callback The callback. + */ ++ (void)verifyPassword:(FIRVerifyPasswordRequest *)request + callback:(FIRVerifyPasswordResponseCallback)callback; + +/** @fn emailLinkSignin:callback: + @brief Calls the emailLinkSignin endpoint, which is responsible for authenticating a + user through passwordless sign-in. + @param request The request parameters. + @param callback The callback. + */ ++ (void)emailLinkSignin:(FIREmailLinkSignInRequest *)request + callback:(FIREmailLinkSigninResponseCallback)callback; + +/** @fn secureToken:callback: + @brief Calls the token endpoint, which is responsible for performing STS token exchanges and + token refreshes. + @param request The request parameters. + @param callback The callback. + */ ++ (void)secureToken:(FIRSecureTokenRequest *)request + callback:(FIRSecureTokenResponseCallback)callback; + +/** @fn getOOBConfirmationCode:callback: + @brief Calls the getOOBConfirmationCode endpoint, which is responsible for sending email change + request emails, and password reset emails. + @param request The request parameters. + @param callback The callback. + */ ++ (void)getOOBConfirmationCode:(FIRGetOOBConfirmationCodeRequest *)request + callback:(FIRGetOOBConfirmationCodeResponseCallback)callback; + +/** @fn signUpNewUser: + @brief Calls the signUpNewUser endpoint, which is responsible anonymously signing up a user + or signing in a user anonymously. + @param request The request parameters. + @param callback The callback. + */ ++ (void)signUpNewUser:(FIRSignUpNewUserRequest *)request + callback:(FIRSignupNewUserCallback)callback; + +/** @fn resetPassword:callback + @brief Calls the resetPassword endpoint, which is responsible for resetting a user's password + given an OOB code and new password. + @param request The request parameters. + @param callback The callback. + */ ++ (void)resetPassword:(FIRResetPasswordRequest *)request + callback:(FIRResetPasswordCallback)callback; + +/** @fn deleteAccount: + @brief Calls the DeleteAccount endpoint, which is responsible for deleting a user. + @param request The request parameters. + @param callback The callback. + */ ++ (void)deleteAccount:(FIRDeleteAccountRequest *)request + callback:(FIRDeleteCallBack)callback; + +#if TARGET_OS_IOS +/** @fn sendVerificationCode:callback: + @brief Calls the sendVerificationCode endpoint, which is responsible for sending the + verification code to a phone number specified in the request parameters. + @param request The request parameters. + @param callback The callback. + */ ++ (void)sendVerificationCode:(FIRSendVerificationCodeRequest *)request + callback:(FIRSendVerificationCodeResponseCallback)callback; + +/** @fn verifyPhoneNumber:callback: + @brief Calls the verifyPhoneNumber endpoint, which is responsible for sending the verification + code to a phone number specified in the request parameters. + @param request The request parameters. + @param callback The callback. + */ ++ (void)verifyPhoneNumber:(FIRVerifyPhoneNumberRequest *)request + callback:(FIRVerifyPhoneNumberResponseCallback)callback; + +/** @fn verifyClient:callback: + @brief Calls the verifyClient endpoint, which is responsible for sending the silent push + notification used for app validation to the device provided in the request parameters. + @param request The request parameters. + @param callback The callback. + */ ++ (void)verifyClient:(FIRVerifyClientRequest *)request + callback:(FIRVerifyClientResponseCallback)callback; +#endif + +@end + +/** @protocol FIRAuthBackendRPCIssuer + @brief Used to make FIRAuthBackend + */ +@protocol FIRAuthBackendRPCIssuer + +/** @fn asyncPostToURLWithRequestConfiguration:URL:body:contentType:completionHandler: + @brief Asynchronously seXnds a POST request. + @param requestConfiguration The request to be made. + @param URL The request URL. + @param body Request body. + @param contentType Content type of the body. + @param handler provided that handles POST response. Invoked asynchronously on the auth global + work queue in the future. + */ +- (void)asyncPostToURLWithRequestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + URL:(NSURL *)URL + body:(nullable NSData *)body + contentType:(NSString *)contentType + completionHandler:(FIRAuthBackendRPCIssuerCompletionHandler)handler; + +@end + +/** @protocol FIRAuthBackendImplementation + @brief Used to make FIRAuthBackend provide a layer of indirection to an actual RPC-based backend + or a mock backend. + */ +@protocol FIRAuthBackendImplementation + +/** @fn createAuthURI:callback: + @brief Calls the createAuthURI endpoint, which is responsible for creating the URI used by the + IdP to authenticate the user. + @param request The request parameters. + @param callback The callback. + */ +- (void)createAuthURI:(FIRCreateAuthURIRequest *)request + callback:(FIRCreateAuthURIResponseCallback)callback; + +/** @fn getAccountInfo:callback: + @brief Calls the getAccountInfo endpoint, which returns account info for a given account. + @param request The request parameters. + @param callback The callback. + */ +- (void)getAccountInfo:(FIRGetAccountInfoRequest *)request + callback:(FIRGetAccountInfoResponseCallback)callback; + +/** @fn getProjectConfig:callback: + @brief Calls the getProjectInfo endpoint, which returns configuration information for a given + project. + @param request The request parameters. + @param callback The callback. + */ +- (void)getProjectConfig:(FIRGetProjectConfigRequest *)request + callback:(FIRGetProjectConfigResponseCallback)callback; + +/** @fn setAccountInfo:callback: + @brief Calls the setAccountInfo endpoint, which is responsible for setting account info for a + user, for example, to sign up a new user with email and password. + @param request The request parameters. + @param callback The callback. + */ +- (void)setAccountInfo:(FIRSetAccountInfoRequest *)request + callback:(FIRSetAccountInfoResponseCallback)callback; + +/** @fn verifyAssertion:callback: + @brief Calls the verifyAssertion endpoint, which is responsible for authenticating a + user who has IDP-related credentials (an ID Token, an Access Token, etc.) + @param request The request parameters. + @param callback The callback. + */ +- (void)verifyAssertion:(FIRVerifyAssertionRequest *)request + callback:(FIRVerifyAssertionResponseCallback)callback; + +/** @fn verifyCustomToken:callback: + @brief Calls the verifyCustomToken endpoint, which is responsible for authenticating a + user who has BYOAuth credentials (a self-signed token using their BYOAuth private key.) + @param request The request parameters. + @param callback The callback. + */ +- (void)verifyCustomToken:(FIRVerifyCustomTokenRequest *)request + callback:(FIRVerifyCustomTokenResponseCallback)callback; + +/** @fn verifyPassword:callback: + @brief Calls the verifyPassword endpoint, which is responsible for authenticating a + user who has email and password credentials. + @param request The request parameters. + @param callback The callback. + */ +- (void)verifyPassword:(FIRVerifyPasswordRequest *)request + callback:(FIRVerifyPasswordResponseCallback)callback; + +/** @fn emailLinkSignin:callback: + @brief Calls the emailLinkSignin endpoint, which is responsible for authenticating a + user through passwordless sign-in. + @param request The request parameters. + @param callback The callback. + */ +- (void)emailLinkSignin:(FIREmailLinkSignInRequest *)request + callback:(FIREmailLinkSigninResponseCallback)callback; + +/** @fn secureToken:callback: + @brief Calls the token endpoint, which is responsible for performing STS token exchanges and + token refreshes. + @param request The request parameters. + @param callback The callback. + */ +- (void)secureToken:(FIRSecureTokenRequest *)request + callback:(FIRSecureTokenResponseCallback)callback; + +/** @fn getOOBConfirmationCode:callback: + @brief Calls the getOOBConfirmationCode endpoint, which is responsible for sending email change + request emails, email sign-in link emails, and password reset emails. + @param request The request parameters. + @param callback The callback. + */ +- (void)getOOBConfirmationCode:(FIRGetOOBConfirmationCodeRequest *)request + callback:(FIRGetOOBConfirmationCodeResponseCallback)callback; + +/** @fn signUpNewUser: + @brief Calls the signUpNewUser endpoint, which is responsible anonymously signing up a user + or signing in a user anonymously. + @param request The request parameters. + @param callback The callback. + */ +- (void)signUpNewUser:(FIRSignUpNewUserRequest *)request + callback:(FIRSignupNewUserCallback)callback; + +/** @fn deleteAccount: + @brief Calls the DeleteAccount endpoint, which is responsible for deleting a user. + @param request The request parameters. + @param callback The callback. + */ +- (void)deleteAccount:(FIRDeleteAccountRequest *)request + callback:(FIRDeleteCallBack)callback; + +#if TARGET_OS_IOS +/** @fn sendVerificationCode:callback: + @brief Calls the sendVerificationCode endpoint, which is responsible for sending the + verification code to a phone number specified in the request parameters. + @param request The request parameters. + @param callback The callback. + */ +- (void)sendVerificationCode:(FIRSendVerificationCodeRequest *)request + callback:(FIRSendVerificationCodeResponseCallback)callback; + +/** @fn verifyPhoneNumber:callback: + @brief Calls the verifyPhoneNumber endpoint, which is responsible for sending the verification + code to a phone number specified in the request parameters. + @param request The request parameters. + @param callback The callback. + */ +- (void)verifyPhoneNumber:(FIRVerifyPhoneNumberRequest *)request + callback:(FIRVerifyPhoneNumberResponseCallback)callback; + +/** @fn verifyClient:callback: + @brief Calls the verifyClient endpoint, which is responsible for sending the silent push + notification used for app validation to the device provided in the request parameters. + @param request The request parameters. + @param callback The callback. + */ +- (void)verifyClient:(FIRVerifyClientRequest *)request + callback:(FIRVerifyClientResponseCallback)callback; +#endif + +/** @fn resetPassword:callback + @brief Calls the resetPassword endpoint, which is responsible for resetting a user's password + given an OOB code and new password. + @param request The request parameters. + @param callback The callback. + */ +- (void)resetPassword:(FIRResetPasswordRequest *)request + callback:(FIRResetPasswordCallback)callback; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthBackend.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthBackend.m new file mode 100644 index 0000000..4bbf167 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthBackend.m @@ -0,0 +1,1122 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthBackend.h" + +#import "FIRAuthErrorUtils.h" +#import "FIRAuthGlobalWorkQueue.h" +#import "FirebaseAuth.h" +#import "FIRAuthRPCRequest.h" +#import "FIRAuthRPCResponse.h" +#import "FIRCreateAuthURIRequest.h" +#import "FIRCreateAuthURIResponse.h" +#import "FIRDeleteAccountRequest.h" +#import "FIRDeleteAccountResponse.h" +#import "FIRGetAccountInfoRequest.h" +#import "FIRGetAccountInfoResponse.h" +#import "FIRGetOOBConfirmationCodeRequest.h" +#import "FIRGetOOBConfirmationCodeResponse.h" +#import "FIRGetProjectConfigRequest.h" +#import "FIRGetProjectConfigResponse.h" +#import "FIRResetPasswordRequest.h" +#import "FIRResetPasswordResponse.h" +#import "FIRSendVerificationCodeRequest.h" +#import "FIRSendVerificationCodeResponse.h" +#import "FIRSecureTokenRequest.h" +#import "FIRSecureTokenResponse.h" +#import "FIRSetAccountInfoRequest.h" +#import "FIRSetAccountInfoResponse.h" +#import "FIRSignUpNewUserRequest.h" +#import "FIRSignUpNewUserResponse.h" +#import "FIRVerifyAssertionRequest.h" +#import "FIRVerifyAssertionResponse.h" +#import "FIRVerifyClientRequest.h" +#import "FIRVerifyClientResponse.h" +#import "FIRVerifyCustomTokenRequest.h" +#import "FIRVerifyCustomTokenResponse.h" +#import "FIRVerifyPasswordRequest.h" +#import "FIRVerifyPasswordResponse.h" +#import "FIREmailLinkSignInRequest.h" +#import "FIREmailLinkSignInResponse.h" +#import "FIRVerifyPhoneNumberRequest.h" +#import "FIRVerifyPhoneNumberResponse.h" +#import +#import + +#if TARGET_OS_IOS +#import "../AuthProviders/Phone/FIRPhoneAuthCredential_Internal.h" +#import "FIRPhoneAuthProvider.h" +#endif + +/** @var kClientVersionHeader + @brief HTTP header name for the client version. + */ +static NSString *const kClientVersionHeader = @"X-Client-Version"; + +/** @var kIosBundleIdentifierHeader + @brief HTTP header name for iOS bundle ID. + */ +static NSString *const kIosBundleIdentifierHeader = @"X-Ios-Bundle-Identifier"; + +/** @var kFirebaseLocalHeader + @brief HTTP header name for the firebase locale. + */ +static NSString *const kFirebaseLocalHeader = @"X-Firebase-Locale"; + +/** @var kFirebaseAuthCoreFrameworkMarker + @brief The marker in the HTTP header that indicates the request comes from Firebase Auth Core. + */ +static NSString *const kFirebaseAuthCoreFrameworkMarker = @"FirebaseCore-iOS"; + +/** @var kJSONContentType + @brief The value of the HTTP content-type header for JSON payloads. + */ +static NSString *const kJSONContentType = @"application/json"; + +/** @var kErrorDataKey + @brief Key for error data in NSError returned by @c GTMSessionFetcher. + */ +static NSString * const kErrorDataKey = @"data"; + +/** @var kErrorKey + @brief The key for the "error" value in JSON responses from the server. + */ +static NSString *const kErrorKey = @"error"; + +/** @var kErrorsKey + @brief The key for the "errors" value in JSON responses from the server. + */ +static NSString *const kErrorsKey = @"errors"; + +/** @var kReasonKey + @brief The key for the "reason" value in JSON responses from the server. + */ +static NSString *const kReasonKey = @"reason"; + +/** @var kInvalidKeyReasonValue + @brief The value for the "reason" key indicating an invalid API Key was received by the server. + */ +static NSString *const kInvalidKeyReasonValue = @"keyInvalid"; + +/** @var kAppNotAuthorizedReasonValue + @brief The value for the "reason" key indicating the App is not authorized to use Firebase + Authentication. + */ +static NSString *const kAppNotAuthorizedReasonValue = @"ipRefererBlocked"; + +/** @var kErrorMessageKey + @brief The key for an error's "message" value in JSON responses from the server. + */ +static NSString *const kErrorMessageKey = @"message"; + +/** @var kUserNotFoundErrorMessage + @brief This is the error message returned when the user is not found, which means the user + account has been deleted given the token was once valid. + */ +static NSString *const kUserNotFoundErrorMessage = @"USER_NOT_FOUND"; + +/** @var kUserDeletedErrorMessage + @brief This is the error message the server will respond with if the user entered an invalid + email address. + */ +static NSString *const kUserDeletedErrorMessage = @"EMAIL_NOT_FOUND"; + +/** @var kInvalidLocalIDErrorMessage + @brief This is the error message the server responds with if the user local id in the id token + does not exit. + */ +static NSString *const kInvalidLocalIDErrorMessage = @"INVALID_LOCAL_ID"; + +/** @var kUserTokenExpiredErrorMessage + @brief The error returned by the server if the token issue time is older than the account's + valid_since time. + */ +static NSString *const kUserTokenExpiredErrorMessage = @"TOKEN_EXPIRED"; + +/** @var kTooManyRequestsErrorMessage + @brief This is the error message the server will respond with if too many requests were made to + a server method. + */ +static NSString *const kTooManyRequestsErrorMessage = @"TOO_MANY_ATTEMPTS_TRY_LATER"; + +/** @var kInvalidTokenCustomErrorMessage + @brief This is the error message the server will respond with if there is a validation error + with the custom token. + */ +static NSString *const kInvalidCustomTokenErrorMessage = @"INVALID_CUSTOM_TOKEN"; + +/** @var kCustomTokenMismatch + @brief This is the error message the server will respond with if the service account and API key + belong to different projects. + */ +static NSString *const kCustomTokenMismatch = @"CREDENTIAL_MISMATCH"; + +/** @var kInvalidCredentialErrorMessage + @brief This is the error message the server responds with if the IDP token or requestUri is + invalid. + */ +static NSString *const kInvalidCredentialErrorMessage = @"INVALID_IDP_RESPONSE"; + +/** @var kUserDisabledErrorMessage + @brief The error returned by the server if the user account is diabled. + */ +static NSString *const kUserDisabledErrorMessage = @"USER_DISABLED"; + +/** @var kOperationNotAllowedErrorMessage + @brief This is the error message the server will respond with if Admin disables IDP specified by + provider. + */ +static NSString *const kOperationNotAllowedErrorMessage = @"OPERATION_NOT_ALLOWED"; + +/** @var kPasswordLoginDisabledErrorMessage + @brief This is the error message the server responds with if password login is disabled. + */ +static NSString *const kPasswordLoginDisabledErrorMessage = @"PASSWORD_LOGIN_DISABLED"; + +/** @var kEmailAlreadyInUseErrorMessage + @brief This is the error message the server responds with if the email address already exists. + */ +static NSString *const kEmailAlreadyInUseErrorMessage = @"EMAIL_EXISTS"; + +/** @var kInvalidEmailErrorMessage + @brief The error returned by the server if the email is invalid. + */ +static NSString *const kInvalidEmailErrorMessage = @"INVALID_EMAIL"; + +/** @var kInvalidIdentifierErrorMessage + @brief The error returned by the server if the identifier is invalid. + */ +static NSString *const kInvalidIdentifierErrorMessage = @"INVALID_IDENTIFIER"; + +/** @var kWrongPasswordErrorMessage + @brief This is the error message the server will respond with if the user entered a wrong + password. + */ +static NSString *const kWrongPasswordErrorMessage = @"INVALID_PASSWORD"; + +/** @var kCredentialTooOldErrorMessage + @brief This is the error message the server responds with if account change is attempted 5 + minutes after signing in. + */ +static NSString *const kCredentialTooOldErrorMessage = @"CREDENTIAL_TOO_OLD_LOGIN_AGAIN"; + +/** @var kFederatedUserIDAlreadyLinkedMessage + @brief This is the error message the server will respond with if the federated user ID has been + already linked with another account. + */ +static NSString *const kFederatedUserIDAlreadyLinkedMessage = @"FEDERATED_USER_ID_ALREADY_LINKED"; + +/** @var kInvalidUserTokenErrorMessage + @brief This is the error message the server responds with if user's saved auth credential is + invalid, and the user needs to sign in again. + */ +static NSString *const kInvalidUserTokenErrorMessage = @"INVALID_ID_TOKEN"; + +/** @var kWeakPasswordErrorMessagePrefix + @brief This is the prefix for the error message the server responds with if user's new password + to be set is too weak. + */ +static NSString *const kWeakPasswordErrorMessagePrefix = @"WEAK_PASSWORD"; + +/** @var kExpiredActionCodeErrorMessage + @brief This is the error message the server will respond with if the action code is expired. + */ +static NSString *const kExpiredActionCodeErrorMessage = @"EXPIRED_OOB_CODE"; + +/** @var kInvalidActionCodeErrorMessage + @brief This is the error message the server will respond with if the action code is invalid. + */ +static NSString *const kInvalidActionCodeErrorMessage = @"INVALID_OOB_CODE"; + +/** @var kMissingEmailErrorMessage + @brief This is the error message the server will respond with if the email address is missing + during a "send password reset email" attempt. + */ +static NSString *const kMissingEmailErrorMessage = @"MISSING_EMAIL"; + +/** @var kInvalidSenderEmailErrorMessage + @brief This is the error message the server will respond with if the sender email is invalid + during a "send password reset email" attempt. + */ +static NSString *const kInvalidSenderEmailErrorMessage = @"INVALID_SENDER"; + +/** @var kInvalidMessagePayloadErrorMessage + @brief This is the error message the server will respond with if there are invalid parameters in + the payload during a "send password reset email" attempt. + */ +static NSString *const kInvalidMessagePayloadErrorMessage = @"INVALID_MESSAGE_PAYLOAD"; + +/** @var kInvalidRecipientEmailErrorMessage + @brief This is the error message the server will respond with if the recipient email is invalid. + */ +static NSString *const kInvalidRecipientEmailErrorMessage = @"INVALID_RECIPIENT_EMAIL"; + +/** @var kMissingIosBundleIDErrorMessage + @brief This is the error message the server will respond with if iOS bundle ID is missing but + the iOS App store ID is provided. + */ +static NSString *const kMissingIosBundleIDErrorMessage = @"MISSING_IOS_BUNDLE_ID"; + +/** @var kMissingAndroidPackageNameErrorMessage + @brief This is the error message the server will respond with if Android Package Name is missing + but the flag indicating the app should be installed is set to true. + */ +static NSString *const kMissingAndroidPackageNameErrorMessage = @"MISSING_ANDROID_PACKAGE_NAME"; + +/** @var kUnauthorizedDomainErrorMessage + @brief This is the error message the server will respond with if the domain of the continue URL + specified is not whitelisted in the firebase console. + */ +static NSString *const kUnauthorizedDomainErrorMessage = @"UNAUTHORIZED_DOMAIN"; + +/** @var kInvalidContinueURIErrorMessage + @brief This is the error message the server will respond with if the continue URL provided in + the request is invalid. + */ +static NSString *const kInvalidContinueURIErrorMessage = @"INVALID_CONTINUE_URI"; + +/** @var kMissingContinueURIErrorMessage + @brief This is the error message the server will respond with if there was no continue URI + present in a request that required one. + */ +static NSString *const kMissingContinueURIErrorMessage = @"MISSING_CONTINUE_URI"; + +/** @var kInvalidPhoneNumberErrorMessage + @brief This is the error message the server will respond with if an incorrectly formatted phone + number is provided. + */ +static NSString *const kInvalidPhoneNumberErrorMessage = @"INVALID_PHONE_NUMBER"; + +/** @var kInvalidVerificationCodeErrorMessage + @brief This is the error message the server will respond with if an invalid verification code is + provided. + */ +static NSString *const kInvalidVerificationCodeErrorMessage = @"INVALID_CODE"; + +/** @var kInvalidSessionInfoErrorMessage + @brief This is the error message the server will respond with if an invalid session info + (verification ID) is provided. + */ +static NSString *const kInvalidSessionInfoErrorMessage = @"INVALID_SESSION_INFO"; + +/** @var kSessionExpiredErrorMessage + @brief This is the error message the server will respond with if the SMS code has expired before + it is used. + */ +static NSString *const kSessionExpiredErrorMessage = @"SESSION_EXPIRED"; + +/** @var kMissingAppTokenErrorMessage + @brief This is the error message the server will respond with if the APNS token is missing in a + verifyClient request. + */ +static NSString *const kMissingAppTokenErrorMessage = @"MISSING_IOS_APP_TOKEN"; + +/** @var kMissingAppCredentialErrorMessage + @brief This is the error message the server will respond with if the app token is missing in a + sendVerificationCode request. + */ +static NSString *const kMissingAppCredentialErrorMessage = @"MISSING_APP_CREDENTIAL"; + +/** @var kInvalidAppCredentialErrorMessage + @brief This is the error message the server will respond with if the app credential in a + sendVerificationCode request is invalid. + */ +static NSString *const kInvalidAppCredentialErrorMessage = @"INVALID_APP_CREDENTIAL"; + +/** @var kQuoutaExceededErrorMessage + @brief This is the error message the server will respond with if the quota for SMS text messages + has been exceeded for the project. + */ +static NSString *const kQuoutaExceededErrorMessage = @"QUOTA_EXCEEDED"; + +/** @var kAppNotVerifiedErrorMessage + @brief This is the error message the server will respond with if Firebase could not verify the + app during a phone authentication flow. + */ +static NSString *const kAppNotVerifiedErrorMessage = @"APP_NOT_VERIFIED"; + +/** @var kMissingClientIdentifier + @brief This is the error message the server will respond with if Firebase could not verify the + app during a phone authentication flow when a real phone number is used and app verification + is disabled for testing. + */ +static NSString *const kMissingClientIdentifier = @"MISSING_CLIENT_IDENTIFIER"; + +/** @var kCaptchaCheckFailedErrorMessage + @brief This is the error message the server will respond with if the reCAPTCHA token provided is + invalid. + */ +static NSString *const kCaptchaCheckFailedErrorMessage = @"CAPTCHA_CHECK_FAILED"; + +/** @var gBackendImplementation + @brief The singleton FIRAuthBackendImplementation instance to use. + */ +static id gBackendImplementation; + +/** @class FIRAuthBackendRPCImplementation + @brief The default RPC-based backend implementation. + */ +@interface FIRAuthBackendRPCImplementation : NSObject + +/** @property RPCIssuer + @brief An instance of FIRAuthBackendRPCIssuer for making RPC requests. Allows the RPC + requests/responses to be easily faked. + */ +@property(nonatomic, strong) id RPCIssuer; + +@end + +@implementation FIRAuthBackend + ++ (id)implementation { + if (!gBackendImplementation) { + gBackendImplementation = [[FIRAuthBackendRPCImplementation alloc] init]; + } + return gBackendImplementation; +} + ++ (void)setBackendImplementation:(id)backendImplementation { + gBackendImplementation = backendImplementation; +} + ++ (void)setDefaultBackendImplementationWithRPCIssuer: + (nullable id)RPCIssuer { + FIRAuthBackendRPCImplementation *defaultImplementation = + [[FIRAuthBackendRPCImplementation alloc] init]; + if (RPCIssuer) { + defaultImplementation.RPCIssuer = RPCIssuer; + } + gBackendImplementation = defaultImplementation; +} + ++ (void)createAuthURI:(FIRCreateAuthURIRequest *)request + callback:(FIRCreateAuthURIResponseCallback)callback { + [[self implementation] createAuthURI:request callback:callback]; +} + ++ (void)getAccountInfo:(FIRGetAccountInfoRequest *)request + callback:(FIRGetAccountInfoResponseCallback)callback { + [[self implementation] getAccountInfo:request callback:callback]; +} + ++ (void)getProjectConfig:(FIRGetProjectConfigRequest *)request + callback:(FIRGetProjectConfigResponseCallback)callback { + [[self implementation] getProjectConfig:request callback:callback]; +} + ++ (void)setAccountInfo:(FIRSetAccountInfoRequest *)request + callback:(FIRSetAccountInfoResponseCallback)callback { + [[self implementation] setAccountInfo:request callback:callback]; +} + ++ (void)verifyAssertion:(FIRVerifyAssertionRequest *)request + callback:(FIRVerifyAssertionResponseCallback)callback { + [[self implementation] verifyAssertion:request callback:callback]; +} + ++ (void)verifyCustomToken:(FIRVerifyCustomTokenRequest *)request + callback:(FIRVerifyCustomTokenResponseCallback)callback { + [[self implementation] verifyCustomToken:request callback:callback]; +} + ++ (void)verifyPassword:(FIRVerifyPasswordRequest *)request + callback:(FIRVerifyPasswordResponseCallback)callback { + [[self implementation] verifyPassword:request callback:callback]; +} + ++ (void)emailLinkSignin:(FIREmailLinkSignInRequest *)request + callback:(FIREmailLinkSigninResponseCallback)callback { + [[self implementation] emailLinkSignin:request callback:callback]; +} + ++ (void)secureToken:(FIRSecureTokenRequest *)request + callback:(FIRSecureTokenResponseCallback)callback { + [[self implementation] secureToken:request callback:callback]; +} + ++ (void)getOOBConfirmationCode:(FIRGetOOBConfirmationCodeRequest *)request + callback:(FIRGetOOBConfirmationCodeResponseCallback)callback { + [[self implementation] getOOBConfirmationCode:request callback:callback]; +} + ++ (void)signUpNewUser:(FIRSignUpNewUserRequest *)request + callback:(FIRSignupNewUserCallback)callback { + [[self implementation] signUpNewUser:request callback:callback]; +} + ++ (void)deleteAccount:(FIRDeleteAccountRequest *)request callback:(FIRDeleteCallBack)callback { + [[self implementation] deleteAccount:request callback:callback]; +} + +#if TARGET_OS_IOS ++ (void)sendVerificationCode:(FIRSendVerificationCodeRequest *)request + callback:(FIRSendVerificationCodeResponseCallback)callback { + [[self implementation] sendVerificationCode:request callback:callback]; +} + ++ (void)verifyPhoneNumber:(FIRVerifyPhoneNumberRequest *)request + callback:(FIRVerifyPhoneNumberResponseCallback)callback { + [[self implementation] verifyPhoneNumber:request callback:callback]; +} + ++ (void)verifyClient:(id)request callback:(FIRVerifyClientResponseCallback)callback { + [[self implementation] verifyClient:request callback:callback]; +} +#endif + ++ (void)resetPassword:(FIRResetPasswordRequest *)request + callback:(FIRResetPasswordCallback)callback { + [[self implementation] resetPassword:request callback:callback]; +} + ++ (NSString *)authUserAgent { + return [NSString stringWithFormat:@"FirebaseAuth.iOS/%s %@", + FirebaseAuthVersionStr, GTMFetcherStandardUserAgentString(nil)]; +} + +@end + +@interface FIRAuthBackendRPCIssuerImplementation : NSObject +@end + +@implementation FIRAuthBackendRPCIssuerImplementation { + /** @var The session fetcher service. + */ + GTMSessionFetcherService *_fetcherService; +} + +- (instancetype)init { + self = [super init]; + if (self) { + _fetcherService = [[GTMSessionFetcherService alloc] init]; + _fetcherService.userAgent = [FIRAuthBackend authUserAgent]; + _fetcherService.callbackQueue = FIRAuthGlobalWorkQueue(); + + // Avoid reusing the session to prevent + // https://github.com/firebase/firebase-ios-sdk/issues/1261 + _fetcherService.reuseSession = NO; + } + return self; +} + +- (void)asyncPostToURLWithRequestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + URL:(NSURL *)URL + body:(nullable NSData *)body + contentType:(NSString *)contentType + completionHandler:(void (^)(NSData *_Nullable, + NSError *_Nullable))handler { + NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:URL]; + [request setValue:contentType forHTTPHeaderField:@"Content-Type"]; + NSString *additionalFrameworkMarker = requestConfiguration.additionalFrameworkMarker ?: + kFirebaseAuthCoreFrameworkMarker; + NSString *clientVersion = [NSString stringWithFormat:@"iOS/FirebaseSDK/%s/%@", + FirebaseAuthVersionStr, + additionalFrameworkMarker]; + [request setValue:clientVersion forHTTPHeaderField:kClientVersionHeader]; + NSString *bundleID = [[NSBundle mainBundle] bundleIdentifier]; + [request setValue:bundleID forHTTPHeaderField:kIosBundleIdentifierHeader]; + + NSArray *preferredLocalizations = [NSBundle mainBundle].preferredLocalizations; + if (preferredLocalizations.count) { + NSString *acceptLanguage = preferredLocalizations.firstObject; + [request setValue:acceptLanguage forHTTPHeaderField:@"Accept-Language"]; + } + NSString *languageCode = requestConfiguration.languageCode; + if (languageCode.length) { + [request setValue:languageCode forHTTPHeaderField:kFirebaseLocalHeader]; + } + GTMSessionFetcher *fetcher = [_fetcherService fetcherWithRequest:request]; + fetcher.bodyData = body; + [fetcher beginFetchWithCompletionHandler:handler]; +} + +@end + +@implementation FIRAuthBackendRPCImplementation + +- (instancetype)init { + self = [super init]; + if (self) { + _RPCIssuer = [[FIRAuthBackendRPCIssuerImplementation alloc] init]; + } + return self; +} + +- (void)createAuthURI:(FIRCreateAuthURIRequest *)request + callback:(FIRCreateAuthURIResponseCallback)callback { + FIRCreateAuthURIResponse *response = [[FIRCreateAuthURIResponse alloc] init]; + [self postWithRequest:request response:response callback:^(NSError *error) { + if (error) { + callback(nil, error); + } else { + callback(response, nil); + } + }]; +} + +- (void)getAccountInfo:(FIRGetAccountInfoRequest *)request + callback:(FIRGetAccountInfoResponseCallback)callback { + FIRGetAccountInfoResponse *response = [[FIRGetAccountInfoResponse alloc] init]; + [self postWithRequest:request response:response callback:^(NSError *error) { + if (error) { + callback(nil, error); + } else { + callback(response, nil); + } + }]; +} + +- (void)getProjectConfig:(FIRGetProjectConfigRequest *)request + callback:(FIRGetProjectConfigResponseCallback)callback { + FIRGetProjectConfigResponse *response = [[FIRGetProjectConfigResponse alloc] init]; + [self postWithRequest:request response:response callback:^(NSError *error) { + if (error) { + callback(nil, error); + } else { + callback(response, nil); + } + }]; +} + +- (void)setAccountInfo:(FIRSetAccountInfoRequest *)request + callback:(FIRSetAccountInfoResponseCallback)callback { + FIRSetAccountInfoResponse *response = [[FIRSetAccountInfoResponse alloc] init]; + [self postWithRequest:request response:response callback:^(NSError *error) { + if (error) { + callback(nil, error); + } else { + callback(response, nil); + } + }]; +} + +- (void)verifyAssertion:(FIRVerifyAssertionRequest *)request + callback:(FIRVerifyAssertionResponseCallback)callback { + FIRVerifyAssertionResponse *response = [[FIRVerifyAssertionResponse alloc] init]; + [self postWithRequest:request response:response callback:^(NSError *error) { + if (error) { + callback(nil, error); + return; + } + callback(response, nil); + }]; +} + +- (void)verifyCustomToken:(FIRVerifyCustomTokenRequest *)request + callback:(FIRVerifyCustomTokenResponseCallback)callback { + FIRVerifyCustomTokenResponse *response = [[FIRVerifyCustomTokenResponse alloc] init]; + [self postWithRequest:request response:response callback:^(NSError *error) { + if (error) { + callback(nil, error); + } else { + callback(response, nil); + } + }]; +} + +- (void)verifyPassword:(FIRVerifyPasswordRequest *)request + callback:(FIRVerifyPasswordResponseCallback)callback { + FIRVerifyPasswordResponse *response = [[FIRVerifyPasswordResponse alloc] init]; + [self postWithRequest:request response:response callback:^(NSError *error) { + if (error) { + callback(nil, error); + } else { + callback(response, nil); + } + }]; +} + +- (void)emailLinkSignin:(FIREmailLinkSignInRequest *)request + callback:(FIREmailLinkSigninResponseCallback)callback { + FIREmailLinkSignInResponse *response = [[FIREmailLinkSignInResponse alloc] init]; + [self postWithRequest:request response:response callback:^(NSError *error) { + if (error) { + callback(nil, error); + } else { + callback(response, nil); + } + }]; +} + +- (void)secureToken:(FIRSecureTokenRequest *)request + callback:(FIRSecureTokenResponseCallback)callback { + FIRSecureTokenResponse *response = [[FIRSecureTokenResponse alloc] init]; + [self postWithRequest:request response:response callback:^(NSError *error) { + if (error) { + callback(nil, error); + } else { + callback(response, nil); + } + }]; +} + +- (void)getOOBConfirmationCode:(FIRGetOOBConfirmationCodeRequest *)request + callback:(FIRGetOOBConfirmationCodeResponseCallback)callback { + FIRGetOOBConfirmationCodeResponse *response = [[FIRGetOOBConfirmationCodeResponse alloc] init]; + [self postWithRequest:request response:response callback:^(NSError *error) { + if (error) { + callback(nil, error); + } else { + callback(response, nil); + } + }]; +} + +- (void)signUpNewUser:(FIRSignUpNewUserRequest *)request + callback:(FIRSignupNewUserCallback)callback{ + FIRSignUpNewUserResponse *response = [[FIRSignUpNewUserResponse alloc] init]; + [self postWithRequest:request response:response callback:^(NSError *error) { + if (error) { + callback(nil, error); + } else { + callback(response, nil); + } + }]; +} + +- (void)deleteAccount:(FIRDeleteAccountRequest *)request callback:(FIRDeleteCallBack)callback { + FIRDeleteAccountResponse *response = [[FIRDeleteAccountResponse alloc] init]; + [self postWithRequest:request response:response callback:callback]; +} + +#if TARGET_OS_IOS +- (void)sendVerificationCode:(FIRSendVerificationCodeRequest *)request + callback:(FIRSendVerificationCodeResponseCallback)callback { + FIRSendVerificationCodeResponse *response = [[FIRSendVerificationCodeResponse alloc] init]; + [self postWithRequest:request response:response callback:^(NSError *error) { + if (error) { + callback(nil, error); + } else { + callback(response, error); + } + }]; +} + +- (void)verifyPhoneNumber:(FIRVerifyPhoneNumberRequest *)request + callback:(FIRVerifyPhoneNumberResponseCallback)callback { + FIRVerifyPhoneNumberResponse *response = [[FIRVerifyPhoneNumberResponse alloc] init]; + [self postWithRequest:request response:response callback:^(NSError *error) { + if (error) { + callback(nil, error); + return; + } + // Check whether or not the successful response is actually the special case phone auth flow + // that returns a temporary proof and phone number. + if (response.phoneNumber.length && response.temporaryProof.length) { + FIRPhoneAuthCredential *credential = + [[FIRPhoneAuthCredential alloc] initWithTemporaryProof:response.temporaryProof + phoneNumber:response.phoneNumber + providerID:FIRPhoneAuthProviderID]; + callback(nil, + [FIRAuthErrorUtils credentialAlreadyInUseErrorWithMessage:nil + credential:credential]); + return; + } + callback(response, nil); + }]; +} + +- (void)verifyClient:(id)request callback:(FIRVerifyClientResponseCallback)callback { + FIRVerifyClientResponse *response = [[FIRVerifyClientResponse alloc] init]; + [self postWithRequest:request response:response callback:^(NSError *error) { + if (error) { + callback(nil, error); + return; + } + callback(response, nil); + }]; +} +#endif + +- (void)resetPassword:(FIRResetPasswordRequest *)request + callback:(FIRResetPasswordCallback)callback { + FIRResetPasswordResponse *response = [[FIRResetPasswordResponse alloc] init]; + [self postWithRequest:request response:response callback:^(NSError *error) { + if (error) { + callback(nil, error); + return; + } + callback(response, nil); + }]; +} + +#pragma mark - Generic RPC handling methods + +/** @fn postWithRequest:response:callback: + @brief Calls the RPC using HTTP POST. + @remarks Possible error responses: + @see FIRAuthInternalErrorCodeRPCRequestEncodingError + @see FIRAuthInternalErrorCodeJSONSerializationError + @see FIRAuthInternalErrorCodeNetworkError + @see FIRAuthInternalErrorCodeUnexpectedErrorResponse + @see FIRAuthInternalErrorCodeUnexpectedResponse + @see FIRAuthInternalErrorCodeRPCResponseDecodingError + @param request The request. + @param response The empty response to be filled. + @param callback The callback for both success and failure. + */ +- (void)postWithRequest:(id)request + response:(id)response + callback:(void (^)(NSError *error))callback { + NSError *error; + NSData *bodyData; + if ([request containsPostBody]) { + id postBody = [request unencodedHTTPRequestBodyWithError:&error]; + if (!postBody) { + callback([FIRAuthErrorUtils RPCRequestEncodingErrorWithUnderlyingError:error]); + return; + } + + NSJSONWritingOptions JSONWritingOptions = 0; + #if DEBUG + JSONWritingOptions |= NSJSONWritingPrettyPrinted; + #endif + + if ([NSJSONSerialization isValidJSONObject:postBody]) { + bodyData = [NSJSONSerialization dataWithJSONObject:postBody + options:JSONWritingOptions + error:&error]; + if (!bodyData) { + // This is an untested case. This happens exclusively when there is an error in the framework + // implementation of dataWithJSONObject:options:error:. This shouldn't normally occur as + // isValidJSONObject: should return NO in any case we should encounter an error. + error = [FIRAuthErrorUtils JSONSerializationErrorWithUnderlyingError:error]; + } + } else { + error = [FIRAuthErrorUtils JSONSerializationErrorForUnencodableType]; + } + if (!bodyData) { + callback(error); + return; + } + } + + [_RPCIssuer asyncPostToURLWithRequestConfiguration:[request requestConfiguration] + URL:[request requestURL] + body:bodyData + contentType:kJSONContentType + completionHandler:^(NSData *data, NSError *error) { + // If there is an error with no body data at all, then this must be a network error. + if (error && !data) { + callback([FIRAuthErrorUtils networkErrorWithUnderlyingError:error]); + return; + } + + // Try to decode the HTTP response data which may contain either a successful response or error + // message. + NSError *jsonError; + NSDictionary * dictionary = + [NSJSONSerialization JSONObjectWithData:data + options:NSJSONReadingMutableLeaves + error:&jsonError]; + if (!dictionary) { + if (error) { + // We have an error, but we couldn't decode the body, so we have no additional information + // other than the raw response and the original NSError (the jsonError is infered by the + // error code (FIRAuthErrorCodeUnexpectedHTTPResponse, and is irrelevant.) + callback([FIRAuthErrorUtils unexpectedErrorResponseWithData:data underlyingError:error]); + } else { + // This is supposed to be a "successful" response, but we couldn't deserialize the body. + callback([FIRAuthErrorUtils unexpectedResponseWithData:data underlyingError:jsonError]); + } + return; + } + if (![dictionary isKindOfClass:[NSDictionary class]]) { + if (error) { + callback([FIRAuthErrorUtils unexpectedErrorResponseWithDeserializedResponse:dictionary]); + } else { + callback([FIRAuthErrorUtils unexpectedResponseWithDeserializedResponse:dictionary]); + } + return; + } + + // At this point we either have an error with successfully decoded details in the body, or we + // have a response which must pass further validation before we know it's truly successful. + // We deal with the case where we have an error with successfully decoded error details first: + if (error) { + NSDictionary *errorDictionary = dictionary[kErrorKey]; + if ([errorDictionary isKindOfClass:[NSDictionary class]]) { + id errorMessage = errorDictionary[kErrorMessageKey]; + if ([errorMessage isKindOfClass:[NSString class]]) { + NSString *errorMessageString = (NSString *)errorMessage; + + // Contruct client error. + NSError *clientError = [[self class] clientErrorWithServerErrorMessage:errorMessageString + errorDictionary:errorDictionary + response:response]; + if (clientError) { + callback(clientError); + return; + } + } + // Not a message we know, return the message directly. + if (errorMessage) { + NSError *unexpecterErrorResponse = + [FIRAuthErrorUtils unexpectedErrorResponseWithDeserializedResponse:errorDictionary]; + callback(unexpecterErrorResponse); + return; + } + } + // No error message at all, return the decoded response. + callback([FIRAuthErrorUtils unexpectedErrorResponseWithDeserializedResponse:dictionary]); + return; + } + + // Finally, we try to populate the response object with the JSON values. + if (![response setWithDictionary:dictionary error:&error]) { + callback([FIRAuthErrorUtils RPCResponseDecodingErrorWithDeserializedResponse:dictionary + underlyingError:error]); + return; + } + + // Success! The response object originally passed in can be used by the caller. + callback(nil); + }]; +} + +/** @fn clientErrorWithServerErrorMessage:errorDictionary: + @brief Translates known server errors to client errors. + @param serverErrorMessage The error message from the server. + @param errorDictionary The error part of the response from the server. + @param response The response from the server RPC. + @return A client error, if any. + */ ++ (nullable NSError *)clientErrorWithServerErrorMessage:(NSString *)serverErrorMessage + errorDictionary:(NSDictionary *)errorDictionary + response:(id)response { + NSString *shortErrorMessage = serverErrorMessage; + NSString *serverDetailErrorMessage; + NSRange colonRange = [serverErrorMessage rangeOfString:@":"]; + if (colonRange.location != NSNotFound) { + shortErrorMessage = [serverErrorMessage substringToIndex:colonRange.location]; + shortErrorMessage = + [shortErrorMessage stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]; + serverDetailErrorMessage = [serverErrorMessage substringFromIndex:colonRange.location + 1]; + serverDetailErrorMessage = [serverDetailErrorMessage stringByTrimmingCharactersInSet: + [NSCharacterSet whitespaceCharacterSet]]; + } + + // Delegate the responsibility for constructing the client error to the response object, + // if possible. + SEL clientErrorWithServerErrorMessageSelector = + @selector(clientErrorWithShortErrorMessage:detailErrorMessage:); + if ([response respondsToSelector:clientErrorWithServerErrorMessageSelector]) { + NSError *error = [response clientErrorWithShortErrorMessage:shortErrorMessage + detailErrorMessage:serverDetailErrorMessage]; + if (error) { + return error; + } + } + + if ([shortErrorMessage isEqualToString:kUserNotFoundErrorMessage]) { + return [FIRAuthErrorUtils userNotFoundErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kUserDeletedErrorMessage]) { + return [FIRAuthErrorUtils userNotFoundErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kInvalidLocalIDErrorMessage]) { + // This case shouldn't be necessary but it is for now: b/27908364 . + return [FIRAuthErrorUtils userNotFoundErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kUserTokenExpiredErrorMessage]) { + return [FIRAuthErrorUtils userTokenExpiredErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kTooManyRequestsErrorMessage]) { + return [FIRAuthErrorUtils tooManyRequestsErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kInvalidCustomTokenErrorMessage]) { + return [FIRAuthErrorUtils invalidCustomTokenErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kCustomTokenMismatch]) { + return [FIRAuthErrorUtils customTokenMistmatchErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kInvalidCredentialErrorMessage]) { + return [FIRAuthErrorUtils invalidCredentialErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kUserDisabledErrorMessage]) { + return [FIRAuthErrorUtils userDisabledErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kOperationNotAllowedErrorMessage]) { + return [FIRAuthErrorUtils operationNotAllowedErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kPasswordLoginDisabledErrorMessage]) { + return [FIRAuthErrorUtils operationNotAllowedErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kEmailAlreadyInUseErrorMessage]) { + return [FIRAuthErrorUtils emailAlreadyInUseErrorWithEmail:nil]; + } + + if ([shortErrorMessage isEqualToString:kInvalidEmailErrorMessage]) { + return [FIRAuthErrorUtils invalidEmailErrorWithMessage:serverDetailErrorMessage]; + } + + // "INVALID_IDENTIFIER" can be returned by createAuthURI RPC. Considering email addresses are + // currently the only identifiers, we surface the FIRAuthErrorCodeInvalidEmail error code in this + // case. + if ([shortErrorMessage isEqualToString:kInvalidIdentifierErrorMessage]) { + return [FIRAuthErrorUtils invalidEmailErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kWrongPasswordErrorMessage]) { + return [FIRAuthErrorUtils wrongPasswordErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kCredentialTooOldErrorMessage]) { + return [FIRAuthErrorUtils requiresRecentLoginErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kInvalidUserTokenErrorMessage]) { + return [FIRAuthErrorUtils invalidUserTokenErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kFederatedUserIDAlreadyLinkedMessage]) { + return [FIRAuthErrorUtils credentialAlreadyInUseErrorWithMessage:serverDetailErrorMessage + credential:nil]; + } + + if ([shortErrorMessage isEqualToString:kWeakPasswordErrorMessagePrefix]) { + return [FIRAuthErrorUtils weakPasswordErrorWithServerResponseReason:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kExpiredActionCodeErrorMessage]) { + return [FIRAuthErrorUtils expiredActionCodeErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kInvalidActionCodeErrorMessage]) { + return [FIRAuthErrorUtils invalidActionCodeErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kMissingEmailErrorMessage]) { + return [FIRAuthErrorUtils missingEmailErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kInvalidSenderEmailErrorMessage]) { + return [FIRAuthErrorUtils invalidSenderErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kInvalidMessagePayloadErrorMessage]) { + return [FIRAuthErrorUtils invalidMessagePayloadErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kInvalidRecipientEmailErrorMessage]) { + return [FIRAuthErrorUtils invalidRecipientEmailErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kMissingIosBundleIDErrorMessage]) { + return [FIRAuthErrorUtils missingIosBundleIDErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kMissingAndroidPackageNameErrorMessage]) { + return [FIRAuthErrorUtils missingAndroidPackageNameErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kUnauthorizedDomainErrorMessage]) { + return [FIRAuthErrorUtils unauthorizedDomainErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kInvalidContinueURIErrorMessage]) { + return [FIRAuthErrorUtils invalidContinueURIErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kMissingContinueURIErrorMessage]) { + return [FIRAuthErrorUtils missingContinueURIErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kInvalidPhoneNumberErrorMessage]) { + return [FIRAuthErrorUtils invalidPhoneNumberErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kInvalidSessionInfoErrorMessage]) { + return [FIRAuthErrorUtils invalidVerificationIDErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kInvalidVerificationCodeErrorMessage]) { + return [FIRAuthErrorUtils invalidVerificationCodeErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kSessionExpiredErrorMessage]) { + return [FIRAuthErrorUtils sessionExpiredErrorWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kMissingAppTokenErrorMessage]) { + return [FIRAuthErrorUtils missingAppTokenErrorWithUnderlyingError:nil]; + } + + if ([shortErrorMessage isEqualToString:kMissingAppCredentialErrorMessage]) { + return [FIRAuthErrorUtils missingAppCredentialWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kInvalidAppCredentialErrorMessage]) { + return [FIRAuthErrorUtils invalidAppCredentialWithMessage:serverDetailErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kQuoutaExceededErrorMessage]) { + return [FIRAuthErrorUtils quotaExceededErrorWithMessage:serverErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kAppNotVerifiedErrorMessage]) { + return [FIRAuthErrorUtils appNotVerifiedErrorWithMessage:serverErrorMessage]; + } + + if ([shortErrorMessage isEqualToString:kMissingClientIdentifier]) { + return [FIRAuthErrorUtils appNotVerifiedErrorWithMessage:@"Missing app verification via" + " reCAPTCHA or APNS token. Please verify that appVerificationDisabledForTesting is not" + " enabled when testing with a phone number that is not marked as a test Phone number in the" + " app console."]; + } + + if ([shortErrorMessage isEqualToString:kCaptchaCheckFailedErrorMessage]) { + return [FIRAuthErrorUtils captchaCheckFailedErrorWithMessage:serverErrorMessage]; + } + + // In this case we handle an error that might be specified in the underlying errors dictionary, + // the error message in determined based on the @c reason key in the dictionary. + if (errorDictionary[kErrorsKey]) { + // Check for underlying error with reason = keyInvalid; + id underlyingErrors = errorDictionary[kErrorsKey]; + if ([underlyingErrors isKindOfClass:[NSArray class]]) { + NSArray *underlyingErrorsArray = (NSArray *)underlyingErrors; + for (id underlyingError in underlyingErrorsArray) { + if ([underlyingError isKindOfClass:[NSDictionary class]]) { + NSDictionary *underlyingErrorDictionary = (NSDictionary *)underlyingError; + NSString *reason = underlyingErrorDictionary[kReasonKey]; + if ([reason hasPrefix:kInvalidKeyReasonValue]) { + return [FIRAuthErrorUtils invalidAPIKeyError]; + } + if ([reason isEqualToString:kAppNotAuthorizedReasonValue]) { + return [FIRAuthErrorUtils appNotAuthorizedError]; + } + } + } + } + } + return nil; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthRPCRequest.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthRPCRequest.h new file mode 100644 index 0000000..9ca4f44 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthRPCRequest.h @@ -0,0 +1,57 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FIRAuthRequestConfiguration; + +NS_ASSUME_NONNULL_BEGIN + +/** @protocol FIRAuthRPCRequest + @brief The generic interface for an RPC request needed by @c FIRAuthBackend. + */ +@protocol FIRAuthRPCRequest + +/** @fn requestURL + @brief Gets the request's full URL. + */ +- (NSURL *)requestURL; + +@optional + +/** @fn containsPostBody + @brief Returns whether the request contains a post body or not. Requests without a post body + are get requests. + @remarks The default implementation returns YES. + */ +- (BOOL)containsPostBody; + +/** @fn UnencodedHTTPRequestBodyWithError: + @brief Creates unencoded HTTP body representing the request. + @param error An out field for an error which occurred constructing the request. + @return The HTTP body data representing the request before any encoding, or nil for error. + */ +- (nullable id)unencodedHTTPRequestBodyWithError:(NSError *_Nullable *_Nullable)error; + +/** @fn requestConfiguration + @brief Obtains the request configurations if available. + @return Returns the request configurations. + */ +- (FIRAuthRequestConfiguration *)requestConfiguration; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthRPCResponse.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthRPCResponse.h new file mode 100644 index 0000000..2b26161 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthRPCResponse.h @@ -0,0 +1,49 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** @protocol FIRAuthRPCResponse + @brief The generic interface for an RPC response needed by @c FIRAuthBackend. + */ +@protocol FIRAuthRPCResponse + +/** @fn setFieldsWithDictionary:error: + @brief Sets the response instance from the decoded JSON response. + @param dictionary The dictionary decoded from HTTP JSON response. + @param error An out field for an error which occurred constructing the request. + @return Whether the operation was successful or not. + */ +- (BOOL)setWithDictionary:(NSDictionary *)dictionary + error:(NSError *_Nullable *_Nullable)error; + +@optional + +/** @fn clientErrorWithshortErrorMessage:detailErrorMessage + @brief This optional method allows response classes to create client errors given a short error + message and a detail error message from the server. + @param shortErrorMessage The short error message from the server. + @param detailErrorMessage The detailed error message from the server. + @return A client error, if any. + */ +- (nullable NSError *)clientErrorWithShortErrorMessage:(NSString *)shortErrorMessage + detailErrorMessage:(nullable NSString *)detailErrorMessage; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthRequestConfiguration.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthRequestConfiguration.h new file mode 100644 index 0000000..f24f23a --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthRequestConfiguration.h @@ -0,0 +1,52 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCRequest.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRAuthRequestConfiguration + @brief Defines configurations to be added to a request to Firebase Auth's backend. + */ +@interface FIRAuthRequestConfiguration : NSObject + +/** @property APIKey + @brief The Firebase Auth API key used in the request. + */ +@property(nonatomic, copy, readonly) NSString *APIKey; + +/** @property LanguageCode + @brief The language code used in the request. + */ +@property(nonatomic, copy, nullable) NSString *languageCode; + +/** @property additionalFrameworkMarker + @brief Additional framework marker that will be added as part of the header of every request. + */ +@property(nonatomic, copy, nullable) NSString *additionalFrameworkMarker; + +- (nullable instancetype)init NS_UNAVAILABLE; + +/** @fn initWithRequestClass:APIKey:authLanguage: + @brief Designated initializer. + @param APIKey The API key to be used in the request. + */ +- (nullable instancetype)initWithAPIKey:(NSString *)APIKey NS_DESIGNATED_INITIALIZER; +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthRequestConfiguration.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthRequestConfiguration.m new file mode 100644 index 0000000..a4ee5dd --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRAuthRequestConfiguration.m @@ -0,0 +1,34 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAuthRequestConfiguration.h" +#import "FIRAuthExceptionUtils.h" + +NS_ASSUME_NONNULL_BEGIN + +@implementation FIRAuthRequestConfiguration + +- (nullable instancetype)initWithAPIKey:(NSString *)APIKey { + self = [super init]; + if (self) { + _APIKey = [APIKey copy]; + } + return self; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRCreateAuthURIRequest.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRCreateAuthURIRequest.h new file mode 100644 index 0000000..a4fb6f5 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRCreateAuthURIRequest.h @@ -0,0 +1,88 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCRequest.h" +#import "FIRIdentityToolkitRequest.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRCreateAuthURIRequest + @brief Represents the parameters for the createAuthUri endpoint. + @see https://developers.google.com/identity/toolkit/web/reference/relyingparty/createAuthUri + */ +@interface FIRCreateAuthURIRequest : FIRIdentityToolkitRequest + +/** @property identifier + @brief The email or federated ID of the user. + */ +@property(nonatomic, copy) NSString *identifier; + +/** @property continueURI + @brief The URI to which the IDP redirects the user after the federated login flow. + */ +@property(nonatomic, copy) NSString *continueURI; + +/** @property openIDRealm + @brief Optional realm for OpenID protocol. The sub string "scheme://domain:port" of the param + "continueUri" is used if this is not set. + */ +@property(nonatomic, copy, nullable) NSString *openIDRealm; + +/** @property providerID + @brief The IdP ID. For white listed IdPs it's a short domain name e.g. google.com, aol.com, + live.net and yahoo.com. For other OpenID IdPs it's the OP identifier. + */ +@property(nonatomic, copy, nullable) NSString *providerID; + +/** @property clientID + @brief The relying party OAuth client ID. + */ +@property(nonatomic, copy, nullable) NSString *clientID; + +/** @property context + @brief The opaque value used by the client to maintain context info between the authentication + request and the IDP callback. + */ +@property(nonatomic, copy, nullable) NSString *context; + +/** @property appID + @brief The iOS client application's bundle identifier. + */ +@property(nonatomic, copy, nullable) NSString *appID; + +/** @fn initWithEndpoint:requestConfiguration:requestConfiguration. + @brief Please use initWithIdentifier:continueURI:requestConfiguration: instead. + */ +- (nullable instancetype)initWithEndpoint:(NSString *)endpoint + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_UNAVAILABLE; + +/** @fn initWithIdentifier:continueURI:requestConfiguration: + @brief Designated initializer. + @param identifier The email or federated ID of the user. + @param continueURI The URI to which the IDP redirects the user after the federated login flow. + @param requestConfiguration An object containing configurations to be added to the request. + */ +- (nullable instancetype)initWithIdentifier:(NSString *)identifier + continueURI:(NSString *)continueURI + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRCreateAuthURIRequest.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRCreateAuthURIRequest.m new file mode 100644 index 0000000..dae46fb --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRCreateAuthURIRequest.m @@ -0,0 +1,95 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRCreateAuthURIRequest.h" + +/** @var kCreateAuthURIEndpoint + @brief The "createAuthUri" endpoint. + */ +static NSString *const kCreateAuthURIEndpoint = @"createAuthUri"; + +/** @var kProviderIDKey + @brief The key for the "providerId" value in the request. + */ +static NSString *const kProviderIDKey = @"providerId"; + +/** @var kIdentifierKey + @brief The key for the "identifier" value in the request. + */ +static NSString *const kIdentifierKey = @"identifier"; + +/** @var kContinueURIKey + @brief The key for the "continueUri" value in the request. + */ +static NSString *const kContinueURIKey = @"continueUri"; + +/** @var kOpenIDRealmKey + @brief The key for the "openidRealm" value in the request. + */ +static NSString *const kOpenIDRealmKey = @"openidRealm"; + +/** @var kClientIDKey + @brief The key for the "clientId" value in the request. + */ +static NSString *const kClientIDKey = @"clientId"; + +/** @var kContextKey + @brief The key for the "context" value in the request. + */ +static NSString *const kContextKey = @"context"; + +/** @var kAppIDKey + @brief The key for the "appId" value in the request. + */ +static NSString *const kAppIDKey = @"appId"; + +@implementation FIRCreateAuthURIRequest + +- (nullable instancetype)initWithIdentifier:(NSString *)identifier + continueURI:(NSString *)continueURI + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration { + self = [super initWithEndpoint:kCreateAuthURIEndpoint requestConfiguration:requestConfiguration]; + if (self) { + _identifier = [identifier copy]; + _continueURI = [continueURI copy]; + } + return self; +} + +- (nullable id)unencodedHTTPRequestBodyWithError:(NSError *_Nullable *_Nullable)error { + NSMutableDictionary *postBody = [@{ + kIdentifierKey : _identifier, + kContinueURIKey : _continueURI + } mutableCopy]; + if (_providerID) { + postBody[kProviderIDKey] = _providerID; + } + if (_openIDRealm) { + postBody[kOpenIDRealmKey] = _openIDRealm; + } + if (_clientID) { + postBody[kClientIDKey] = _clientID; + } + if (_context) { + postBody[kContextKey] = _context; + } + if (_appID) { + postBody[kAppIDKey] = _appID; + } + return postBody; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRCreateAuthURIResponse.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRCreateAuthURIResponse.h new file mode 100644 index 0000000..8e8f7b0 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRCreateAuthURIResponse.h @@ -0,0 +1,61 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRCreateAuthURIResponse + @brief Represents the parameters for the createAuthUri endpoint. + @see https://developers.google.com/identity/toolkit/web/reference/relyingparty/createAuthUri + */ +@interface FIRCreateAuthURIResponse : NSObject + +/** @property authUri + @brief The URI used by the IDP to authenticate the user. + */ +@property(nonatomic, strong, readonly, nullable) NSString *authURI; + +/** @property registered + @brief Whether the user is registered if the identifier is an email. + */ +@property(nonatomic, assign, readonly) BOOL registered; + +/** @property providerId + @brief The provider ID of the auth URI. + */ +@property(nonatomic, strong, readonly, nullable) NSString *providerID; + +/** @property forExistingProvider + @brief True if the authUri is for user's existing provider. + */ +@property(nonatomic, assign, readonly) BOOL forExistingProvider; + +/** @property allProviders + @brief A list of provider IDs the passed @c identifier could use to sign in with. + */ +@property(nonatomic, copy, readonly, nullable) NSArray *allProviders; + +/** @property signinMethods + @brief A list of sign-in methods available for the passed @c identifier. + */ +@property(nonatomic, copy, readonly, nullable) NSArray *signinMethods; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRCreateAuthURIResponse.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRCreateAuthURIResponse.m new file mode 100644 index 0000000..6f2937f --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRCreateAuthURIResponse.m @@ -0,0 +1,32 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRCreateAuthURIResponse.h" + +@implementation FIRCreateAuthURIResponse + +- (BOOL)setWithDictionary:(NSDictionary *)dictionary + error:(NSError *_Nullable *_Nullable)error { + _providerID = [dictionary[@"providerId"] copy]; + _authURI = [dictionary[@"authUri"] copy]; + _registered = [dictionary[@"registered"] boolValue]; + _forExistingProvider = [dictionary[@"forExistingProvider"] boolValue]; + _allProviders = [dictionary[@"allProviders"] copy]; + _signinMethods = [dictionary[@"signinMethods"] copy]; + return YES; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRDeleteAccountRequest.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRDeleteAccountRequest.h new file mode 100644 index 0000000..89a7d26 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRDeleteAccountRequest.h @@ -0,0 +1,50 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCRequest.h" +#import "FIRIdentityToolkitRequest.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRDeleteAccountRequest + @brief Represents the parameters for the deleteAccount endpoint. + @see https://developers.google.com/identity/toolkit/web/reference/relyingparty/deleteAccount + */ +@interface FIRDeleteAccountRequest : FIRIdentityToolkitRequest + +/** @fn initWithEndpoint:requestConfiguration:requestConfiguration. + @brief Please use initWitLocalID:accessToken:requestConfiguration instead. + */ +- (nullable instancetype)initWithEndpoint:(NSString *)endpoint + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_UNAVAILABLE; + +/** @fn initWitLocalID:accessToken:requestConfiguration. + @brief Designated initializer. + @param localID The local ID. + @param accessToken The access token. + @param requestConfiguration An object containing configurations to be added to the request. + */ +- (nullable instancetype)initWitLocalID:(NSString *)localID + accessToken:(NSString *)accessToken + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRDeleteAccountRequest.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRDeleteAccountRequest.m new file mode 100644 index 0000000..2222210 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRDeleteAccountRequest.m @@ -0,0 +1,65 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRDeleteAccountRequest.h" + +/** @var kCreateAuthURIEndpoint + @brief The "deleteAccount" endpoint. + */ +static NSString *const kDeleteAccountEndpoint = @"deleteAccount"; + +/** @var kIDTokenKey + @brief The key for the "idToken" value in the request. This is actually the STS Access Token, + despite it's confusing (backwards compatiable) parameter name. + */ +static NSString *const kIDTokenKey = @"idToken"; + +/** @var kLocalIDKey + @brief The key for the "localID" value in the request. + */ +static NSString *const kLocalIDKey = @"localId"; + +@implementation FIRDeleteAccountRequest { + /** @var _accessToken + @brief The STS Access Token of the authenticated user. + */ + NSString *_accessToken; + + /** @var _localID + @brief The localID of the user. + */ + NSString *_localID; +} + +- (nullable instancetype)initWitLocalID:(NSString *)localID + accessToken:(NSString *)accessToken + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration { + self = [super initWithEndpoint:kDeleteAccountEndpoint requestConfiguration:requestConfiguration]; + if (self) { + _localID = [localID copy]; + _accessToken = [accessToken copy]; + } + return self; +} + +- (nullable id)unencodedHTTPRequestBodyWithError:(NSError *_Nullable *_Nullable)error { + NSMutableDictionary *postBody = [NSMutableDictionary dictionary]; + postBody[kIDTokenKey] = _accessToken; + postBody[kLocalIDKey] = _localID; + return postBody; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRDeleteAccountResponse.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRDeleteAccountResponse.h new file mode 100644 index 0000000..59226d6 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRDeleteAccountResponse.h @@ -0,0 +1,26 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCResponse.h" + +/** @class FIRDeleteAccountResponse + @brief Represents the response from the deleteAccount endpoint. + @see https://developers.google.com/identity/toolkit/web/reference/relyingparty/deleteAccount + */ +@interface FIRDeleteAccountResponse : NSObject +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRDeleteAccountResponse.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRDeleteAccountResponse.m new file mode 100644 index 0000000..ae98175 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRDeleteAccountResponse.m @@ -0,0 +1,26 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRDeleteAccountResponse.h" + +@implementation FIRDeleteAccountResponse + +- (BOOL)setWithDictionary:(NSDictionary *)dictionary + error:(NSError *_Nullable *_Nullable)error { + return YES; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIREmailLinkSignInRequest.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIREmailLinkSignInRequest.h new file mode 100644 index 0000000..e1b10d8 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIREmailLinkSignInRequest.h @@ -0,0 +1,66 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCRequest.h" +#import "FIRIdentityToolkitRequest.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIREmailLinkSignInRequest + @brief Represents the parameters for the emailLinkSignin endpoint. + */ +@interface FIREmailLinkSignInRequest : FIRIdentityToolkitRequest + +#pragma mark - Components of "postBody" + +/** @property email + @brief The email identifier used to complete the email link sign-in. + */ +@property(nonatomic, copy, readonly) NSString *email; + +/** @property oobCode + @brief The OOB code used to complete the email link sign-in flow. + */ +@property(nonatomic, copy, readonly) NSString *oobCode; + +/** @property idToken + @brief The ID Token code potentially used to complete the email link sign-in flow. + */ +@property(nonatomic, copy) NSString *IDToken; + +/** @fn initWithEndpoint:requestConfiguration: + @brief Please use initWithProviderID:requestConfifuration instead. + */ +- (instancetype)initWithEndpoint:(NSString *)endpoint + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration NS_UNAVAILABLE; + +/** @fn initWithProviderID:requestConfifuration + @brief Designated initializer. + @param email The email identifier used to complete hte email link sign-in flow. + @param oobCode The OOB code used to complete the email link sign-in flow. + @param requestConfiguration An object containing configurations to be added to the request. + + */ +- (instancetype)initWithEmail:(NSString *)email + oobCode:(NSString *)oobCode + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIREmailLinkSignInRequest.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIREmailLinkSignInRequest.m new file mode 100644 index 0000000..9787e8e --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIREmailLinkSignInRequest.m @@ -0,0 +1,70 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIREmailLinkSignInRequest.h" + +/** @var kEmailLinkSigninEndpoint + @brief The "EmailLinkSignin" endpoint. + */ +static NSString *const kEmailLinkSigninEndpoint = @"emailLinkSignin"; + +/** @var kEmailKey + @brief The key for the "identifier" value in the request. + */ +static NSString *const kEmailKey = @"email"; + +/** @var kEmailLinkKey + @brief The key for the "emailLink" value in the request. + */ +static NSString *const kOOBCodeKey = @"oobCode"; + +/** @var kIDTokenKey + @brief The key for the "IDToken" value in the request. + */ +static NSString *const kIDTokenKey = @"idToken"; + +/** @var kPostBodyKey + @brief The key for the "postBody" value in the request. + */ +static NSString *const kPostBodyKey = @"postBody"; + +@implementation FIREmailLinkSignInRequest + +- (instancetype)initWithEmail:(NSString *)email + oobCode:(NSString *)oobCode + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration { + self = [super initWithEndpoint:kEmailLinkSigninEndpoint + requestConfiguration:requestConfiguration]; + if (self) { + _email = email; + _oobCode = oobCode; + } + return self; +} + +- (nullable id)unencodedHTTPRequestBodyWithError:(NSError *_Nullable *_Nullable)error { + NSMutableDictionary *postBody = [@{ + kEmailKey : _email, + kOOBCodeKey : _oobCode, + } mutableCopy]; + + if (_IDToken) { + postBody[kIDTokenKey] = _IDToken; + } + return postBody; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIREmailLinkSignInResponse.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIREmailLinkSignInResponse.h new file mode 100644 index 0000000..df0a127 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIREmailLinkSignInResponse.h @@ -0,0 +1,54 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#import + +#import "FIRAuthRPCResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRVerifyAssertionResponse + @brief Represents the response from the emailLinkSignin endpoint. + */ +@interface FIREmailLinkSignInResponse : NSObject + +/** @property IDToken + @brief The ID token in the email link sign-in response. + */ +@property(nonatomic, copy, readonly) NSString *IDToken; + +/** @property email + @brief The email returned by the IdP. + */ +@property(nonatomic, strong, readonly, nullable) NSString *email; + +/** @property refreshToken + @brief The refreshToken returned by the server. + */ +@property(nonatomic, strong, readonly, nullable) NSString *refreshToken; + +/** @property approximateExpirationDate + @brief The approximate expiration date of the access token. + */ +@property(nonatomic, copy, readonly, nullable) NSDate *approximateExpirationDate; + +/** @property isNewUser + @brief Flag indicating that the user signing in is a new user and not a returning user. + */ +@property(nonatomic, assign) BOOL isNewUser; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIREmailLinkSignInResponse.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIREmailLinkSignInResponse.m new file mode 100644 index 0000000..cd36d41 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIREmailLinkSignInResponse.m @@ -0,0 +1,32 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIREmailLinkSignInResponse.h" + +@implementation FIREmailLinkSignInResponse + +- (BOOL)setWithDictionary:(NSDictionary *)dictionary + error:(NSError *_Nullable *_Nullable)error { + _email = [dictionary[@"email"] copy]; + _IDToken = [dictionary[@"idToken"] copy]; + _isNewUser = [dictionary[@"isNewUser"] boolValue]; + _refreshToken = [dictionary[@"refreshToken"] copy]; + _approximateExpirationDate = [dictionary[@"expiresIn"] isKindOfClass:[NSString class]] ? + [NSDate dateWithTimeIntervalSinceNow:[dictionary[@"expiresIn"] doubleValue]] : nil; + return YES; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetAccountInfoRequest.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetAccountInfoRequest.h new file mode 100644 index 0000000..a5a8a20 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetAccountInfoRequest.h @@ -0,0 +1,53 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCRequest.h" +#import "FIRIdentityToolkitRequest.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRGetAccountInfoRequest + @brief Represents the parameters for the getAccountInfo endpoint. + @see https://developers.google.com/identity/toolkit/web/reference/relyingparty/getAccountInfo + */ +@interface FIRGetAccountInfoRequest : FIRIdentityToolkitRequest + +/** @property accessToken + @brief The STS Access Token for the authenticated user. + */ +@property(nonatomic, copy) NSString *accessToken; + +/** @fn initWithEndpoint:requestConfiguration:requestConfiguration + @brief Please use initWithAccessToken:requestConfiguration: instead. + */ +- (nullable instancetype)initWithEndpoint:(NSString *)endpoint + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_UNAVAILABLE; + +/** @fn initWithAccessToken:requestConfiguration + @brief Designated initializer. + @param accessToken The Access Token of the authenticated user. + @param requestConfiguration An object containing configurations to be added to the request. + */ +- (nullable instancetype)initWithAccessToken:(NSString *)accessToken + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetAccountInfoRequest.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetAccountInfoRequest.m new file mode 100644 index 0000000..fde79fb --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetAccountInfoRequest.m @@ -0,0 +1,48 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRGetAccountInfoRequest.h" + +/** @var kGetAccountInfoEndpoint + @brief The "getAccountInfo" endpoint. + */ +static NSString *const kGetAccountInfoEndpoint = @"getAccountInfo"; + +/** @var kIDTokenKey + @brief The key for the "idToken" value in the request. This is actually the STS Access Token, + despite it's confusing (backwards compatiable) parameter name. + */ +static NSString *const kIDTokenKey = @"idToken"; + +@implementation FIRGetAccountInfoRequest + +- (nullable instancetype)initWithAccessToken:(NSString *)accessToken + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration { + self = [super initWithEndpoint:kGetAccountInfoEndpoint + requestConfiguration:requestConfiguration]; + if (self) { + _accessToken = [accessToken copy]; + } + return self; +} + +- (nullable id)unencodedHTTPRequestBodyWithError:(NSError *_Nullable *_Nullable)error { + return @{ + kIDTokenKey : _accessToken + }; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetAccountInfoResponse.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetAccountInfoResponse.h new file mode 100644 index 0000000..6c30dbe --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetAccountInfoResponse.h @@ -0,0 +1,156 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRGetAccountInfoResponseProviderUserInfo + @brief Represents the provider user info part of the response from the getAccountInfo endpoint. + @see https://developers.google.com/identity/toolkit/web/reference/relyingparty/getAccountInfo + */ +@interface FIRGetAccountInfoResponseProviderUserInfo : NSObject + +/** @property providerID + @brief The ID of the identity provider. + */ +@property(nonatomic, strong, readonly, nullable) NSString *providerID; + +/** @property displayName + @brief The user's display name at the identity provider. + */ +@property(nonatomic, strong, readonly, nullable) NSString *displayName; + +/** @property photoURL + @brief The user's photo URL at the identity provider. + */ +@property(nonatomic, strong, readonly, nullable) NSURL *photoURL; + +/** @property federatedID + @brief The user's identifier at the identity provider. + */ +@property(nonatomic, strong, readonly, nullable) NSString *federatedID; + +/** @property email + @brief The user's email at the identity provider. + */ +@property(nonatomic, strong, readonly, nullable) NSString *email; + +/** @property phoneNumber + @brief A phone number associated with the user. + */ +@property(nonatomic, readonly, nullable) NSString *phoneNumber; + +/** @fn init + @brief Please use initWithDictionary: + */ +- (instancetype)init NS_UNAVAILABLE; + +/** @fn initWithAPIKey: + @brief Designated initializer. + @param dictionary The provider user info data from endpoint. + */ +- (instancetype)initWithDictionary:(NSDictionary *)dictionary NS_DESIGNATED_INITIALIZER; + +@end + +/** @class FIRGetAccountInfoResponseUser + @brief Represents the firebase user info part of the response from the getAccountInfo endpoint. + @see https://developers.google.com/identity/toolkit/web/reference/relyingparty/getAccountInfo + */ +@interface FIRGetAccountInfoResponseUser : NSObject + +/** @property localID + @brief The ID of the user. + */ +@property(nonatomic, strong, readonly, nullable) NSString *localID; + +/** @property email + @brief The email or the user. + */ +@property(nonatomic, strong, readonly, nullable) NSString *email; + +/** @property emailVerified + @brief Whether the email has been verified. + */ +@property(nonatomic, assign, readonly) BOOL emailVerified; + +/** @property displayName + @brief The display name of the user. + */ +@property(nonatomic, strong, readonly, nullable) NSString *displayName; + +/** @property photoURL + @brief The user's photo URL. + */ +@property(nonatomic, strong, readonly, nullable) NSURL *photoURL; + +/** @property creationDate + @brief The user's creation date. + */ +@property(nonatomic, strong, readonly, nullable) NSDate *creationDate; + +/** @property lastSignInDate + @brief The user's last login date. + */ +@property(nonatomic, strong, readonly, nullable) NSDate *lastLoginDate; + +/** @property providerUserInfo + @brief The user's profiles at the associated identity providers. + */ +@property(nonatomic, strong, readonly, nullable) + NSArray *providerUserInfo; + +/** @property passwordHash + @brief Information about user's password. + @remarks This is not necessarily the hash of user's actual password. + */ +@property(nonatomic, strong, readonly, nullable) NSString *passwordHash; + +/** @property phoneNumber + @brief A phone number associated with the user. + */ +@property(nonatomic, readonly, nullable) NSString *phoneNumber; + +/** @fn init + @brief Please use initWithDictionary: + */ +- (instancetype)init NS_UNAVAILABLE; + +/** @fn initWithAPIKey: + @brief Designated initializer. + @param dictionary The provider user info data from endpoint. + */ +- (instancetype)initWithDictionary:(NSDictionary *)dictionary NS_DESIGNATED_INITIALIZER; + +@end + +/** @class FIRGetAccountInfoResponse + @brief Represents the response from the setAccountInfo endpoint. + @see https://developers.google.com/identity/toolkit/web/reference/relyingparty/getAccountInfo + */ +@interface FIRGetAccountInfoResponse : NSObject + +/** @property providerUserInfo + @brief The requested users' profiles. + */ +@property(nonatomic, strong, readonly, nullable) NSArray *users; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetAccountInfoResponse.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetAccountInfoResponse.m new file mode 100644 index 0000000..19ab64a --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetAccountInfoResponse.m @@ -0,0 +1,104 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRGetAccountInfoResponse.h" + +#import "FIRAuthErrorUtils.h" + +/** @var kErrorKey + @brief The key for the "error" value in JSON responses from the server. + */ +static NSString *const kErrorKey = @"error"; + +@implementation FIRGetAccountInfoResponseProviderUserInfo + +- (instancetype)initWithDictionary:(NSDictionary *)dictionary { + self = [super init]; + if (self) { + _providerID = [dictionary[@"providerId"] copy]; + _displayName = [dictionary[@"displayName"] copy]; + NSString *photoURL = dictionary[@"photoUrl"]; + if (photoURL) { + _photoURL = [NSURL URLWithString:photoURL]; + } + _federatedID = [dictionary[@"federatedId"] copy]; + _email = [dictionary[@"email"] copy]; + _phoneNumber = [dictionary[@"phoneNumber"] copy]; + } + return self; +} + +@end + +@implementation FIRGetAccountInfoResponseUser + +- (instancetype)initWithDictionary:(NSDictionary *)dictionary { + self = [super init]; + if (self) { + NSArray *providerUserInfoData = dictionary[@"providerUserInfo"]; + if (providerUserInfoData) { + NSMutableArray *providerUserInfoArray = + [NSMutableArray arrayWithCapacity:providerUserInfoData.count]; + for (NSDictionary *dictionary in providerUserInfoData) { + [providerUserInfoArray addObject: + [[FIRGetAccountInfoResponseProviderUserInfo alloc] initWithDictionary:dictionary]]; + } + _providerUserInfo = [providerUserInfoArray copy]; + } + _localID = [dictionary[@"localId"] copy]; + _displayName = [dictionary[@"displayName"] copy]; + _email = [dictionary[@"email"] copy]; + NSString *photoURL = dictionary[@"photoUrl"]; + if (photoURL) { + _photoURL = [NSURL URLWithString:photoURL]; + } + if ([dictionary[@"createdAt"] isKindOfClass:[NSString class]]) { + // Divide by 1000 in order to convert miliseconds to seconds. + NSTimeInterval creationDateTimeInterval = [dictionary[@"createdAt"] doubleValue] / 1000; + _creationDate = [NSDate dateWithTimeIntervalSince1970:creationDateTimeInterval]; + } + if ([dictionary[@"lastLoginAt"] isKindOfClass:[NSString class]]) { + // Divide by 1000 in order to convert miliseconds to seconds + NSTimeInterval creationDateTimeInterval = [dictionary[@"lastLoginAt"] doubleValue] / 1000; + _lastLoginDate = [NSDate dateWithTimeIntervalSince1970:creationDateTimeInterval]; + } + _emailVerified = [dictionary[@"emailVerified"] boolValue]; + _passwordHash = [dictionary[@"passwordHash"] copy]; + _phoneNumber = [dictionary[@"phoneNumber"] copy]; + } + return self; +} + +@end + +@implementation FIRGetAccountInfoResponse + +- (BOOL)setWithDictionary:(NSDictionary *)dictionary + error:(NSError *_Nullable *_Nullable)error { + NSArray *usersData = dictionary[@"users"]; + // The client side never sends a getAccountInfo request with multiple localID, so only one user + // data is expected in the response. + if (![usersData isKindOfClass:[NSArray class]] || usersData.count != 1) { + if (error) { + *error = [FIRAuthErrorUtils unexpectedResponseWithDeserializedResponse:dictionary]; + } + return NO; + } + _users = @[ [[FIRGetAccountInfoResponseUser alloc] initWithDictionary:usersData.firstObject] ]; + return YES; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetOOBConfirmationCodeRequest.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetOOBConfirmationCodeRequest.h new file mode 100644 index 0000000..751cfe7 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetOOBConfirmationCodeRequest.h @@ -0,0 +1,147 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCRequest.h" +#import "FIRIdentityToolkitRequest.h" + +@class FIRActionCodeSettings; + +NS_ASSUME_NONNULL_BEGIN + +/** @enum FIRGetOOBConfirmationCodeRequestType + @brief Types of OOB Confirmation Code requests. + */ +typedef NS_ENUM(NSInteger, FIRGetOOBConfirmationCodeRequestType) { + /** @var FIRGetOOBConfirmationCodeRequestTypePasswordReset + @brief Requests a password reset code. + */ + FIRGetOOBConfirmationCodeRequestTypePasswordReset, + + /** @var FIRGetOOBConfirmationCodeRequestTypeVerifyEmail + @brief Requests an email verification code. + */ + FIRGetOOBConfirmationCodeRequestTypeVerifyEmail, + + /** @var FIRGetOOBConfirmationCodeRequestTypeEmailLink + @brief Requests an email sign-in link. + */ + FIRGetOOBConfirmationCodeRequestTypeEmailLink, +}; + +/** @enum FIRGetOOBConfirmationCodeRequest + @brief Represents the parameters for the getOOBConfirmationCode endpoint. + */ +@interface FIRGetOOBConfirmationCodeRequest : FIRIdentityToolkitRequest + +/** @property requestType + @brief The types of OOB Confirmation Code to request. + */ +@property(nonatomic, assign, readonly) FIRGetOOBConfirmationCodeRequestType requestType; + +/** @property email + @brief The email of the user. + @remarks For password reset. + */ +@property(nonatomic, copy, nullable, readonly) NSString *email; + +/** @property accessToken + @brief The STS Access Token of the authenticated user. + @remarks For email change. + */ +@property(nonatomic, copy, nullable, readonly) NSString *accessToken; + +/** @property continueURL + @brief This URL represents the state/Continue URL in the form of a universal link. + */ +@property(nonatomic, copy, nullable, readonly) NSString *continueURL; + +/** @property iOSBundleID + @brief The iOS bundle Identifier, if available. + */ +@property(nonatomic, copy, nullable, readonly) NSString *iOSBundleID; + +/** @property androidPackageName + @brief The Android package name, if available. + */ +@property(nonatomic, copy, nullable, readonly) NSString *androidPackageName; + +/** @property androidMinimumVersion + @brief The minimum Android version supported, if available. + */ +@property(nonatomic, copy, nullable, readonly) NSString *androidMinimumVersion; + +/** @property androidInstallIfNotAvailable + @brief Indicates whether or not the Android app should be installed if not already available. + */ +@property(nonatomic, assign, readonly) BOOL androidInstallApp; + +/** @property handleCodeInApp + @brief Indicates whether the action code link will open the app directly or after being + redirected from a Firebase owned web widget. + */ +@property(assign, nonatomic) BOOL handleCodeInApp; + +/** @fn passwordResetRequestWithEmail:actionCodeSettings:requestConfiguration: + @brief Creates a password reset request. + @param email The user's email address. + @param actionCodeSettings An object of FIRActionCodeSettings which specifies action code + settings to be applied to the password reset request. + @param requestConfiguration An object containing configurations to be added to the request. + @return A password reset request. + */ ++ (nullable FIRGetOOBConfirmationCodeRequest *) + passwordResetRequestWithEmail:(NSString *)email + actionCodeSettings:(nullable FIRActionCodeSettings *)actionCodeSettings + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration; + +/** @fn verifyEmailRequestWithAccessToken:actionCodeSettings:requestConfiguration: + @brief Creates a password reset request. + @param accessToken The user's STS Access Token. + @param actionCodeSettings An object of FIRActionCodeSettings which specifies action code + settings to be applied to the email verification request. + @param requestConfiguration An object containing configurations to be added to the request. + @return A password reset request. + */ ++ (nullable FIRGetOOBConfirmationCodeRequest *) + verifyEmailRequestWithAccessToken:(NSString *)accessToken + actionCodeSettings:(nullable FIRActionCodeSettings *)actionCodeSettings + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration; + +/** @fn signInWithEmailLinkRequest:actionCodeSettings:requestConfiguration: + @brief Creates a sign-in with email link. + @param email The user's email address. + @param actionCodeSettings An object of FIRActionCodeSettings which specifies action code + settings to be applied to the email sign-in link. + @param requestConfiguration An object containing configurations to be added to the request. + @return An email sign-in link request. + */ ++ (nullable FIRGetOOBConfirmationCodeRequest *) + signInWithEmailLinkRequest:(NSString *)email + actionCodeSettings:(nullable FIRActionCodeSettings *)actionCodeSettings + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration; + +/** @fn init + @brief Please use a factory method. + */ +- (nullable instancetype)initWithEndpoint:(NSString *)endpoint + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_UNAVAILABLE; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetOOBConfirmationCodeRequest.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetOOBConfirmationCodeRequest.m new file mode 100644 index 0000000..438f24b --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetOOBConfirmationCodeRequest.m @@ -0,0 +1,234 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRGetOOBConfirmationCodeRequest.h" + +#import "FIRActionCodeSettings.h" + +#import "FIRAuthErrorUtils.h" +#import "FIRAuth_Internal.h" + +/** @var kEndpoint + @brief The getOobConfirmationCode endpoint name. + */ +static NSString *const kGetOobConfirmationCodeEndpoint = @"getOobConfirmationCode"; + +/** @var kRequestTypeKey + @brief The name of the required "requestType" property in the request. + */ +static NSString *const kRequestTypeKey = @"requestType"; + +/** @var kEmailKey + @brief The name of the "email" property in the request. + */ +static NSString *const kEmailKey = @"email"; + +/** @var kIDTokenKey + @brief The key for the "idToken" value in the request. This is actually the STS Access Token, + despite it's confusing (backwards compatiable) parameter name. + */ +static NSString *const kIDTokenKey = @"idToken"; + +/** @var kContinueURLKey + @brief The key for the "continue URL" value in the request. + */ +static NSString *const kContinueURLKey = @"continueUrl"; + +/** @var kIosBundeIDKey + @brief The key for the "iOS Bundle Identifier" value in the request. + */ +static NSString *const kIosBundleIDKey = @"iOSBundleId"; + +/** @var kAndroidPackageNameKey + @brief The key for the "Android Package Name" value in the request. + */ +static NSString *const kAndroidPackageNameKey = @"androidPackageName"; + +/** @var kAndroidInstallAppKey + @brief The key for the request parameter indicating whether the android app should be installed + or not. + */ +static NSString *const kAndroidInstallAppKey = @"androidInstallApp"; + +/** @var kAndroidMinimumVersionKey + @brief The key for the "minimum Android version supported" value in the request. + */ +static NSString *const kAndroidMinimumVersionKey = @"androidMinimumVersion"; + +/** @var kCanHandleCodeInAppKey + @brief The key for the request parameter indicating whether the action code can be handled in + the app or not. + */ +static NSString *const kCanHandleCodeInAppKey = @"canHandleCodeInApp"; + +/** @var kPasswordResetRequestTypeValue + @brief The value for the "PASSWORD_RESET" request type. + */ +static NSString *const kPasswordResetRequestTypeValue = @"PASSWORD_RESET"; + +/** @var kEmailLinkSignInTypeValue + @brief The value for the "EMAIL_SIGNIN" request type. + */ +static NSString *const kEmailLinkSignInTypeValue= @"EMAIL_SIGNIN"; + +/** @var kVerifyEmailRequestTypeValue + @brief The value for the "VERIFY_EMAIL" request type. + */ +static NSString *const kVerifyEmailRequestTypeValue = @"VERIFY_EMAIL"; + +@interface FIRGetOOBConfirmationCodeRequest () + +/** @fn initWithRequestType:email:APIKey: + @brief Designated initializer. + @param requestType The types of OOB Confirmation Code to request. + @param email The email of the user. + @param accessToken The STS Access Token of the currently signed in user. + @param actionCodeSettings An object of FIRActionCodeSettings which specifies action code + settings to be applied to the OOB code request. + @param requestConfiguration An object containing configurations to be added to the request. + */ +- (nullable instancetype)initWithRequestType:(FIRGetOOBConfirmationCodeRequestType)requestType + email:(nullable NSString *)email + accessToken:(nullable NSString *)accessToken + actionCodeSettings:(nullable FIRActionCodeSettings *)actionCodeSettings + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_DESIGNATED_INITIALIZER; + +@end + +@implementation FIRGetOOBConfirmationCodeRequest + +/** @var requestTypeStringValueForRequestType: + @brief Returns the string equivilent for an @c FIRGetOOBConfirmationCodeRequestType value. + */ ++ (NSString *)requestTypeStringValueForRequestType: + (FIRGetOOBConfirmationCodeRequestType)requestType { + switch (requestType) { + case FIRGetOOBConfirmationCodeRequestTypePasswordReset: + return kPasswordResetRequestTypeValue; + case FIRGetOOBConfirmationCodeRequestTypeVerifyEmail: + return kVerifyEmailRequestTypeValue; + case FIRGetOOBConfirmationCodeRequestTypeEmailLink: + return kEmailLinkSignInTypeValue; + // No default case so that we get a compiler warning if a new value was added to the enum. + } +} + ++ (FIRGetOOBConfirmationCodeRequest *) + passwordResetRequestWithEmail:(NSString *)email + actionCodeSettings:(nullable FIRActionCodeSettings *)actionCodeSettings + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration { + return [[self alloc] initWithRequestType:FIRGetOOBConfirmationCodeRequestTypePasswordReset + email:email + accessToken:nil + actionCodeSettings:actionCodeSettings + requestConfiguration:requestConfiguration]; +} + ++ (FIRGetOOBConfirmationCodeRequest *) + verifyEmailRequestWithAccessToken:(NSString *)accessToken + actionCodeSettings:(nullable FIRActionCodeSettings *)actionCodeSettings + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration { + return [[self alloc] initWithRequestType:FIRGetOOBConfirmationCodeRequestTypeVerifyEmail + email:nil + accessToken:accessToken + actionCodeSettings:actionCodeSettings + requestConfiguration:requestConfiguration]; +} + ++ (FIRGetOOBConfirmationCodeRequest *) + signInWithEmailLinkRequest:(NSString *)email + actionCodeSettings:(nullable FIRActionCodeSettings *)actionCodeSettings + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration { + return [[self alloc] initWithRequestType:FIRGetOOBConfirmationCodeRequestTypeEmailLink + email:email + accessToken:nil + actionCodeSettings:actionCodeSettings + requestConfiguration:requestConfiguration]; +} + +- (nullable instancetype)initWithRequestType:(FIRGetOOBConfirmationCodeRequestType)requestType + email:(nullable NSString *)email + accessToken:(nullable NSString *)accessToken + actionCodeSettings:(nullable FIRActionCodeSettings *)actionCodeSettings + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration { + self = [super initWithEndpoint:kGetOobConfirmationCodeEndpoint + requestConfiguration:requestConfiguration]; + if (self) { + _requestType = requestType; + _email = email; + _accessToken = accessToken; + _continueURL = actionCodeSettings.URL.absoluteString; + _iOSBundleID = actionCodeSettings.iOSBundleID; + _androidPackageName = actionCodeSettings.androidPackageName; + _androidMinimumVersion = actionCodeSettings.androidMinimumVersion; + _androidInstallApp = actionCodeSettings.androidInstallIfNotAvailable; + _handleCodeInApp = actionCodeSettings.handleCodeInApp; + } + return self; +} + +- (nullable id)unencodedHTTPRequestBodyWithError:(NSError *_Nullable *_Nullable)error { + NSMutableDictionary *body = [@{ + kRequestTypeKey : [[self class] requestTypeStringValueForRequestType:_requestType] + } mutableCopy]; + + // For password reset requests, we only need an email address in addition to the already required + // fields. + if (_requestType == FIRGetOOBConfirmationCodeRequestTypePasswordReset) { + body[kEmailKey] = _email; + } + + // For verify email requests, we only need an STS Access Token in addition to the already required + // fields. + if (_requestType == FIRGetOOBConfirmationCodeRequestTypeVerifyEmail) { + body[kIDTokenKey] = _accessToken; + } + + // For email sign-in link requests, we only need an email address in addition to the already + // required fields. + if (_requestType == FIRGetOOBConfirmationCodeRequestTypeEmailLink) { + body[kEmailKey] = _email; + } + + if (_continueURL) { + body[kContinueURLKey] = _continueURL; + } + + if (_iOSBundleID) { + body[kIosBundleIDKey] = _iOSBundleID; + } + + if (_androidPackageName) { + body[kAndroidPackageNameKey] = _androidPackageName; + } + + if (_androidMinimumVersion) { + body[kAndroidMinimumVersionKey] = _androidMinimumVersion; + } + + if (_androidInstallApp) { + body[kAndroidInstallAppKey] = @YES; + } + + if (_handleCodeInApp) { + body[kCanHandleCodeInAppKey] = @YES; + } + + return body; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetOOBConfirmationCodeResponse.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetOOBConfirmationCodeResponse.h new file mode 100644 index 0000000..69aa458 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetOOBConfirmationCodeResponse.h @@ -0,0 +1,35 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRGetOOBConfirmationCodeResponse + @brief Represents the response from the getOobConfirmationCode endpoint. + */ +@interface FIRGetOOBConfirmationCodeResponse : NSObject + +/** @property OOBCode + @brief The OOB code returned by the server in some cases. + */ +@property(nonatomic, copy, readonly, nullable) NSString *OOBCode; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetOOBConfirmationCodeResponse.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetOOBConfirmationCodeResponse.m new file mode 100644 index 0000000..0b6c416 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetOOBConfirmationCodeResponse.m @@ -0,0 +1,36 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRGetOOBConfirmationCodeResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @var kOOBCodeKey + @brief The name of the field in the response JSON for the OOB code. + */ +static NSString *const kOOBCodeKey = @"oobCode"; + +@implementation FIRGetOOBConfirmationCodeResponse + +- (BOOL)setWithDictionary:(NSDictionary *)dictionary + error:(NSError *_Nullable *_Nullable)error { + _OOBCode = [dictionary[kOOBCodeKey] copy]; + return YES; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetProjectConfigRequest.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetProjectConfigRequest.h new file mode 100644 index 0000000..7c37e8d --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetProjectConfigRequest.h @@ -0,0 +1,41 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRIdentityToolkitRequest.h" + +#import "FIRAuthRPCRequest.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRGetProjectConfigRequest : FIRIdentityToolkitRequest + +/** @fn initWithEndpoint:requestConfiguration: + @brief Please use initWithRequestConfiguration: + */ +- (nullable instancetype)initWithEndpoint:(NSString *)endpoint + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_UNAVAILABLE; + +/** @fn initWithTemporaryProof:phoneNumberAPIKey + @brief Designated initializer. + @param requestConfiguration An object containing configurations to be added to the request. + */ +- (nullable instancetype)initWithRequestConfiguration: + (FIRAuthRequestConfiguration *)requestConfiguration NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetProjectConfigRequest.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetProjectConfigRequest.m new file mode 100644 index 0000000..acfcc02 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetProjectConfigRequest.m @@ -0,0 +1,40 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRGetProjectConfigRequest.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @var kGetProjectConfigEndPoint + @brief The "getProjectConfig" endpoint. + */ +static NSString *const kGetProjectConfigEndPoint = @"getProjectConfig"; + +@implementation FIRGetProjectConfigRequest + +- (nullable instancetype)initWithRequestConfiguration: + (FIRAuthRequestConfiguration *)requestConfiguration { + return [super initWithEndpoint:kGetProjectConfigEndPoint + requestConfiguration:requestConfiguration]; +} + +- (BOOL)containsPostBody { + return NO; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetProjectConfigResponse.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetProjectConfigResponse.h new file mode 100644 index 0000000..317ec81 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetProjectConfigResponse.h @@ -0,0 +1,36 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCResponse.h" + +/** @class FIRGetProjectConfigResponse + @brief Represents the response from the getProjectConfig endpoint. + */ +@interface FIRGetProjectConfigResponse : NSObject + +/** @property projectID + @brief The unique ID pertaining to the current project. + */ +@property(nonatomic, strong, readonly, nullable) NSString *projectID; + +/** @property authorizedDomains + @brief A list of domains whitelisted for the current project. + */ +@property(nonatomic, strong, readonly, nullable) NSArray *authorizedDomains; + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetProjectConfigResponse.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetProjectConfigResponse.m new file mode 100644 index 0000000..259a4fb --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRGetProjectConfigResponse.m @@ -0,0 +1,38 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRGetProjectConfigResponse.h" + +@implementation FIRGetProjectConfigResponse + +- (BOOL)setWithDictionary:(NSDictionary *)dictionary + error:(NSError *_Nullable *_Nullable)error { + _projectID = [dictionary[@"projectId"] copy]; + id authorizedDomains = dictionary[@"authorizedDomains"]; + if ([authorizedDomains isKindOfClass:[NSString class]]) { + NSData *data = [authorizedDomains dataUsingEncoding:NSUTF8StringEncoding]; + authorizedDomains = [NSJSONSerialization JSONObjectWithData:data + options:NSJSONReadingMutableLeaves + error:nil]; + } + if ([authorizedDomains isKindOfClass:[NSArray class]]) { + _authorizedDomains = [[NSArray alloc] initWithArray:authorizedDomains + copyItems:YES]; + } + return YES; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRIdentityToolkitRequest.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRIdentityToolkitRequest.h new file mode 100644 index 0000000..b5ca726 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRIdentityToolkitRequest.h @@ -0,0 +1,66 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRequestConfiguration.h" + +@class FIRAuthRequestConfiguration; + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRIdentityToolkitRequest + @brief Represents a request to an identity toolkit endpoint. + */ +@interface FIRIdentityToolkitRequest : NSObject + +/** @property endpoint + @brief Gets the RPC's endpoint. + */ +@property(nonatomic, copy, readonly) NSString *endpoint; + +/** @property APIKey + @brief Gets the client's API key used for the request. + */ +@property(nonatomic, copy, readonly) NSString *APIKey; + +/** @fn init + @brief Please use initWithEndpoint:APIKey: + */ +- (instancetype)init NS_UNAVAILABLE; + +/** @fn initWithEndpoint:APIKey: + @brief Designated initializer. + @param endpoint The endpoint name. + @param requestConfiguration An object containing configurations to be added to the request. + */ +- (nullable instancetype)initWithEndpoint:(NSString *)endpoint + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_DESIGNATED_INITIALIZER; + +/** @fn requestURL + @brief Gets the request's full URL. + */ +- (NSURL *)requestURL; + +/** @fn requestConfiguration + @brief Gets the request's configuration. + */ +- (FIRAuthRequestConfiguration *)requestConfiguration; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRIdentityToolkitRequest.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRIdentityToolkitRequest.m new file mode 100644 index 0000000..a1ab482 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRIdentityToolkitRequest.m @@ -0,0 +1,72 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRIdentityToolkitRequest.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @var kAPIURLFormat + @brief URL format for server API calls. + */ +static NSString *const kAPIURLFormat = @"https://%@/identitytoolkit/v3/relyingparty/%@?key=%@"; + +/** @var gAPIHost + @brief Host for server API calls. + */ +static NSString *gAPIHost = @"www.googleapis.com"; + +@implementation FIRIdentityToolkitRequest { + FIRAuthRequestConfiguration *_requestConfiguration; +} + +- (nullable instancetype)initWithEndpoint:(NSString *)endpoint + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration { + self = [super init]; + if (self) { + _endpoint = [endpoint copy]; + _APIKey = [requestConfiguration.APIKey copy]; + _requestConfiguration = requestConfiguration; + } + return self; +} + +- (BOOL)containsPostBody { + return YES; +} + +- (NSURL *)requestURL { + NSString *URLString = [NSString stringWithFormat:kAPIURLFormat, gAPIHost, _endpoint, _APIKey]; + NSURL *URL = [NSURL URLWithString:URLString]; + return URL; +} + +- (FIRAuthRequestConfiguration *)requestConfiguration { + return _requestConfiguration; +} + +#pragma mark - Internal API for development + ++ (NSString *)host { + return gAPIHost; +} + ++ (void)setHost:(NSString *)host { + gAPIHost = host; +} + +NS_ASSUME_NONNULL_END + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRResetPasswordRequest.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRResetPasswordRequest.h new file mode 100644 index 0000000..701e305 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRResetPasswordRequest.h @@ -0,0 +1,55 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCRequest.h" +#import "FIRIdentityToolkitRequest.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRResetPasswordRequest : FIRIdentityToolkitRequest + +/** @property oobCode + @brief The oobCode sent in the request. + */ +@property(nonatomic, copy, readonly) NSString *oobCode; + +/** @property updatedPassword + @brief The new password sent in the request. + */ +@property(nonatomic, copy, readonly) NSString *updatedPassword; + +/** @fn initWithEndpoint:requestConfiguration: + @brief Please use initWithOobCode:newPassword:requestConfiguration: instead. + */ +- (nullable instancetype)initWithEndpoint:(NSString *)endpoint + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_UNAVAILABLE; + +/** @fn initWithOobCode:newPassword:requestConfiguration: + @brief Designated initializer. + @param oobCode The OOB Code. + @param newPassword The new password. + @param requestConfiguration An object containing configurations to be added to the request. + */ +- (nullable instancetype)initWithOobCode:(NSString *)oobCode + newPassword:(nullable NSString *)newPassword + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRResetPasswordRequest.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRResetPasswordRequest.m new file mode 100644 index 0000000..27d6d8c --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRResetPasswordRequest.m @@ -0,0 +1,56 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRResetPasswordRequest.h" + +/** @var kResetPasswordEndpoint + @brief The "resetPassword" endpoint. + */ +static NSString *const kResetPasswordEndpoint = @"resetPassword"; + +/** @var kOOBCodeKey + @brief The "resetPassword" key. + */ +static NSString *const kOOBCodeKey = @"oobCode"; + +/** @var kCurrentPasswordKey + @brief The "newPassword" key. + */ +static NSString *const kCurrentPasswordKey = @"newPassword"; + +@implementation FIRResetPasswordRequest + +- (instancetype)initWithOobCode:(NSString *)oobCode + newPassword:(NSString *)newPassword + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration { + self = [super initWithEndpoint:kResetPasswordEndpoint requestConfiguration:requestConfiguration]; + if (self) { + _oobCode = oobCode; + _updatedPassword = newPassword; + } + return self; +} + +- (nullable id)unencodedHTTPRequestBodyWithError:(NSError *_Nullable *_Nullable)error { + NSMutableDictionary *postBody = [NSMutableDictionary dictionary]; + postBody[kOOBCodeKey] = _oobCode; + if (_updatedPassword) { + postBody[kCurrentPasswordKey] = _updatedPassword; + } + return postBody; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRResetPasswordResponse.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRResetPasswordResponse.h new file mode 100644 index 0000000..28eb5f4 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRResetPasswordResponse.h @@ -0,0 +1,52 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRAuthResetPasswordResponse + @brief Represents the response from the resetPassword endpoint. + @remarks Possible error codes: + - FIRAuthErrorCodeWeakPassword + - FIRAuthErrorCodeUserDisabled + - FIRAuthErrorCodeOperationNotAllowed + - FIRAuthErrorCodeExpiredActionCode + - FIRAuthErrorCodeInvalidActionCode + @see https://developers.google.com/identity/toolkit/web/reference/relyingparty/resetPassword + */ +@interface FIRResetPasswordResponse : NSObject + +/** @property email + @brief The email address corresponding to the reset password request. + */ +@property(nonatomic, strong, readonly) NSString *email; + +/** @property verifiedEmail + @brief The verified email returned from the backend. + */ +@property(nonatomic, strong, readonly) NSString *verifiedEmail; + +/** @property requestType + @brief The tpye of request as returned by the backend. + */ +@property(nonatomic, strong, readonly) NSString *requestType; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRResetPasswordResponse.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRResetPasswordResponse.m new file mode 100644 index 0000000..6092cfe --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRResetPasswordResponse.m @@ -0,0 +1,29 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRResetPasswordResponse.h" + +@implementation FIRResetPasswordResponse + +- (BOOL)setWithDictionary:(NSDictionary *)dictionary + error:(NSError *_Nullable *_Nullable)error { + _email = [dictionary[@"email"] copy]; + _requestType = [dictionary[@"requestType"] copy]; + _verifiedEmail = [dictionary[@"newEmail"] copy]; + return YES; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSecureTokenRequest.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSecureTokenRequest.h new file mode 100644 index 0000000..14722fa --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSecureTokenRequest.h @@ -0,0 +1,113 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCRequest.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @enum FIRSecureTokenRequestGrantType + @brief Represents the possible grant types for a token request. + */ +typedef NS_ENUM(NSUInteger, FIRSecureTokenRequestGrantType) { + /** @var FIRSecureTokenRequestGrantTypeAuthorizationCode + @brief Indicates an authorization code request. + @remarks Exchanges a Gitkit "ID Token" for an STS Access Token and Refresh Token. + */ + FIRSecureTokenRequestGrantTypeAuthorizationCode, + + /** @var FIRSecureTokenRequestGrantTypeRefreshToken + @brief Indicates an refresh token request. + @remarks Uses an existing Refresh Token to create a new Access Token. + */ + FIRSecureTokenRequestGrantTypeRefreshToken, +}; + +/** @class FIRSecureTokenRequest + @brief Represents the parameters for the token endpoint. + */ +@interface FIRSecureTokenRequest : NSObject + +/** @property grantType + @brief The type of grant requested. + @see FIRSecureTokenRequestGrantType + */ +@property(nonatomic, assign, readonly) FIRSecureTokenRequestGrantType grantType; + +/** @property scope + @brief The scopes requested (a comma-delimited list of scope strings.) + */ +@property(nonatomic, copy, readonly, nullable) NSString *scope; + +/** @property refreshToken + @brief The client's refresh token. + */ +@property(nonatomic, copy, readonly, nullable) NSString *refreshToken; + +/** @property code + @brief The client's authorization code (legacy Gitkit "ID Token"). + */ +@property(nonatomic, copy, readonly, nullable) NSString *code; + +/** @property APIKey + @brief The client's API Key. + */ +@property(nonatomic, copy, readonly) NSString *APIKey; + +/** @fn authCodeRequestWithCode: + @brief Creates an authorization code request with the given code (legacy Gitkit "ID Token"). + @param code The authorization code (legacy Gitkit "ID Token"). + @param requestConfiguration An object containing configurations to be added to the request. + @return An authorization request. + */ ++ (FIRSecureTokenRequest *)authCodeRequestWithCode:(NSString *)code + requestConfiguration:(FIRAuthRequestConfiguration *) + requestConfiguration; + +/** @fn refreshRequestWithCode: + @brief Creates a refresh request with the given refresh token. + @param refreshToken The refresh token. + @param requestConfiguration An object containing configurations to be added to the request. + @return A refresh request. + */ ++ (FIRSecureTokenRequest *)refreshRequestWithRefreshToken:(NSString *)refreshToken + requestConfiguration:(FIRAuthRequestConfiguration *) + requestConfiguration; + +/** @fn init + @brief Please use initWithGrantType:scope:refreshToken:code: + */ +- (instancetype)init NS_UNAVAILABLE; + +/** @fn initWithGrantType:scope:refreshToken:code:APIKey: + @brief Designated initializer. + @param grantType The type of request. + @param scope The scopes requested. + @param refreshToken The client's refresh token (for refresh requests.) + @param code The client's authorization code (Gitkit ID Token) (for authorization code requests.) + @param requestConfiguration An object containing configurations to be added to the request. + */ +- (nullable instancetype)initWithGrantType:(FIRSecureTokenRequestGrantType)grantType + scope:(nullable NSString *)scope + refreshToken:(nullable NSString *)refreshToken + code:(nullable NSString *)code + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSecureTokenRequest.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSecureTokenRequest.m new file mode 100644 index 0000000..786ea6c --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSecureTokenRequest.m @@ -0,0 +1,159 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRSecureTokenRequest.h" +#import "FIRAuthRequestConfiguration.h" + +/** @var kFIRSecureTokenServiceGetTokenURLFormat + @brief The format of the secure token service URLs. Requires string format substitution with + the client's API Key. + */ +static NSString *const kFIRSecureTokenServiceGetTokenURLFormat = @"https://%@/v1/token?key=%@"; + +/** @var kFIRSecureTokenServiceGrantTypeRefreshToken + @brief The string value of the @c FIRSecureTokenRequestGrantTypeRefreshToken request type. + */ +static NSString *const kFIRSecureTokenServiceGrantTypeRefreshToken = @"refresh_token"; + +/** @var kFIRSecureTokenServiceGrantTypeAuthorizationCode + @brief The string value of the @c FIRSecureTokenRequestGrantTypeAuthorizationCode request type. + */ +static NSString *const kFIRSecureTokenServiceGrantTypeAuthorizationCode = @"authorization_code"; + +/** @var kGrantTypeKey + @brief The key for the "grantType" parameter in the request. + */ +static NSString *const kGrantTypeKey = @"grantType"; + +/** @var kScopeKey + @brief The key for the "scope" parameter in the request. + */ +static NSString *const kScopeKey = @"scope"; + +/** @var kRefreshTokenKey + @brief The key for the "refreshToken" parameter in the request. + */ +static NSString *const kRefreshTokenKey = @"refreshToken"; + +/** @var kCodeKey + @brief The key for the "code" parameter in the request. + */ +static NSString *const kCodeKey = @"code"; + +/** @var gAPIHost + @brief Host for server API calls. + */ +static NSString *gAPIHost = @"securetoken.googleapis.com"; + +@implementation FIRSecureTokenRequest { + /** @var _requestConfiguration + @brief Contains configuration relevant to the request. + */ + FIRAuthRequestConfiguration *_requestConfiguration; +} + ++ (FIRSecureTokenRequest *)authCodeRequestWithCode:(NSString *)code + requestConfiguration:(FIRAuthRequestConfiguration *) + requestConfiguration { + return [[self alloc] initWithGrantType:FIRSecureTokenRequestGrantTypeAuthorizationCode + scope:nil + refreshToken:nil + code:code + requestConfiguration:requestConfiguration]; +} + ++ (FIRSecureTokenRequest *)refreshRequestWithRefreshToken:(NSString *)refreshToken + requestConfiguration:(FIRAuthRequestConfiguration *) + requestConfiguration { + return [[self alloc] initWithGrantType:FIRSecureTokenRequestGrantTypeRefreshToken + scope:nil + refreshToken:refreshToken + code:nil + requestConfiguration:requestConfiguration]; +} + +/** @fn grantTypeStringWithGrantType: + @brief Converts a @c FIRSecureTokenRequestGrantType to it's @c NSString equivilent. + */ ++ (NSString *)grantTypeStringWithGrantType:(FIRSecureTokenRequestGrantType)grantType { + switch (grantType) { + case FIRSecureTokenRequestGrantTypeAuthorizationCode: + return kFIRSecureTokenServiceGrantTypeAuthorizationCode; + case FIRSecureTokenRequestGrantTypeRefreshToken: + return kFIRSecureTokenServiceGrantTypeRefreshToken; + // No Default case so we will notice if new grant types are added to the enum. + } +} + +- (nullable instancetype)initWithGrantType:(FIRSecureTokenRequestGrantType)grantType + scope:(nullable NSString *)scope + refreshToken:(nullable NSString *)refreshToken + code:(nullable NSString *)code + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration { + self = [super init]; + if (self) { + _grantType = grantType; + _scope = [scope copy]; + _refreshToken = [refreshToken copy]; + _code = [code copy]; + _APIKey = [requestConfiguration.APIKey copy]; + _requestConfiguration = requestConfiguration; + } + return self; +} + +- (FIRAuthRequestConfiguration *)requestConfiguration { + return _requestConfiguration; +} + +- (NSURL *)requestURL { + NSString *URLString = + [NSString stringWithFormat:kFIRSecureTokenServiceGetTokenURLFormat, gAPIHost, _APIKey]; + NSURL *URL = [NSURL URLWithString:URLString]; + return URL; +} + +- (BOOL)containsPostBody { + return YES; +} + +- (nullable id)unencodedHTTPRequestBodyWithError:(NSError *_Nullable *_Nullable)error { + NSMutableDictionary *postBody = [@{ + kGrantTypeKey : [[self class] grantTypeStringWithGrantType:_grantType] + } mutableCopy]; + if (_scope) { + postBody[kScopeKey] = _scope; + } + if (_refreshToken) { + postBody[kRefreshTokenKey] = _refreshToken; + } + if (_code) { + postBody[kCodeKey] = _code; + } + return postBody; +} + +#pragma mark - Internal API for development + ++ (NSString *)host { + return gAPIHost; +} + ++ (void)setHost:(NSString *)host { + gAPIHost = host; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSecureTokenResponse.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSecureTokenResponse.h new file mode 100644 index 0000000..0dd4a20 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSecureTokenResponse.h @@ -0,0 +1,50 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRSecureTokenResponse + @brief Represents the response from the token endpoint. + */ +@interface FIRSecureTokenResponse : NSObject + +/** @property approximateExpirationDate + @brief The approximate expiration date of the access token. + */ +@property(nonatomic, copy, readonly, nullable) NSDate *approximateExpirationDate; + +/** @property refreshToken + @brief The refresh token. (Possibly an updated one for refresh requests.) + */ +@property(nonatomic, copy, readonly, nullable) NSString *refreshToken; + +/** @property accessToken + @brief The new access token. + */ +@property(nonatomic, copy, readonly, nullable) NSString *accessToken; + +/** @property IDToken + @brief The new ID Token. + */ +@property(nonatomic, copy, readonly, nullable) NSString *IDToken; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSecureTokenResponse.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSecureTokenResponse.m new file mode 100644 index 0000000..b97fda5 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSecureTokenResponse.m @@ -0,0 +1,70 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRSecureTokenResponse.h" + +#import "FIRAuthErrorUtils.h" + +/** @var kExpiresInKey + @brief The key for the number of seconds till the access token expires. + */ +static NSString *const kExpiresInKey = @"expires_in"; + +/** @var kRefreshTokenKey + @brief The key for the refresh token. + */ +static NSString *const kRefreshTokenKey = @"refresh_token"; + +/** @var kAccessTokenKey + @brief The key for the access token. + */ +static NSString *const kAccessTokenKey = @"access_token"; + +/** @var kIDTokenKey + @brief The key for the "id_token" value in the response. + */ +static NSString *const kIDTokenKey = @"id_token"; + +@implementation FIRSecureTokenResponse + +- (nullable NSString *)expectedKind { + return nil; +} + +- (BOOL)setWithDictionary:(NSDictionary *)dictionary + error:(NSError *_Nullable *_Nullable)error { + _refreshToken = dictionary[kRefreshTokenKey]; + _accessToken = dictionary[kAccessTokenKey]; + _IDToken = dictionary[kIDTokenKey]; + if (!_accessToken.length) { + if (error) { + *error = [FIRAuthErrorUtils unexpectedResponseWithDeserializedResponse:dictionary]; + } + return NO; + } + id expiresIn = dictionary[kExpiresInKey]; + if (![expiresIn isKindOfClass:[NSString class]]) { + if (error) { + *error = [FIRAuthErrorUtils unexpectedResponseWithDeserializedResponse:dictionary]; + } + return NO; + } + + _approximateExpirationDate = [NSDate dateWithTimeIntervalSinceNow:[expiresIn doubleValue]]; + return YES; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSendVerificationCodeRequest.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSendVerificationCodeRequest.h new file mode 100644 index 0000000..af6cc93 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSendVerificationCodeRequest.h @@ -0,0 +1,67 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRIdentityToolkitRequest.h" + +#import "FIRAuthRPCRequest.h" +#import "FIRIdentityToolkitRequest.h" + +@class FIRAuthAppCredential; + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRSendVerificationCodeRequest : FIRIdentityToolkitRequest + +/** @property phoneNumber + @brief The phone number to which the verification code should be sent. + */ +@property(nonatomic, strong, readonly) NSString *phoneNumber; + +/** @property appCredential + @brief The credential to prove the identity of the app in order to send the verification code. + */ +@property(nonatomic, strong, readonly, nullable) FIRAuthAppCredential *appCredential; + +/** @property reCAPTCHAToken + @brief The reCAPTCHA token to prove the identity of the app in order to send the verification + code. + */ +@property(nonatomic, strong, readonly, nullable) NSString *reCAPTCHAToken; + +/** @fn initWithEndpoint:requestConfiguration: + @brief Please use initWithPhoneNumber:appCredentials:requestConfiguration: instead. + */ +- (nullable instancetype)initWithEndpoint:(NSString *)endpoint + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_UNAVAILABLE; + +/** @fn initWithPhoneNumber:appCredentials:requestConfiguration: + @brief Designated initializer. + @param phoneNumber The phone number to which the verification code is to be sent. + @param appCredential The credential that proves the identity of the app. + @param reCAPTCHAToken The reCAPTCHA token that proves the identity of the app. + @param requestConfiguration An object containing configurations to be added to the request. + */ +- (nullable instancetype)initWithPhoneNumber:(NSString *)phoneNumber + appCredential:(nullable FIRAuthAppCredential *)appCredential + reCAPTCHAToken:(nullable NSString *)reCAPTCHAToken + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_DESIGNATED_INITIALIZER; + + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSendVerificationCodeRequest.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSendVerificationCodeRequest.m new file mode 100644 index 0000000..38ad8cf --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSendVerificationCodeRequest.m @@ -0,0 +1,84 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRSendVerificationCodeRequest.h" + +#import "FIRAuthAppCredential.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @var kSendVerificationCodeEndPoint + @brief The "sendVerificationCodeEnd" endpoint. + */ +static NSString *const kSendVerificationCodeEndPoint = @"sendVerificationCode"; + +/** @var kPhoneNumberKey + @brief The key for the Phone Number parameter in the request. + */ +static NSString *const kPhoneNumberKey = @"phoneNumber"; + +/** @var kReceiptKey + @brief The key for the receipt parameter in the request. + */ +static NSString *const kReceiptKey = @"iosReceipt"; + +/** @var kSecretKey + @brief The key for the Secret parameter in the request. + */ +static NSString *const kSecretKey = @"iosSecret"; + +/** @var kreCAPTCHATokenKey + @brief The key for the reCAPTCHAToken parameter in the request. + */ +static NSString *const kreCAPTCHATokenKey = @"recaptchaToken"; + +@implementation FIRSendVerificationCodeRequest { +} + +- (nullable instancetype)initWithPhoneNumber:(NSString *)phoneNumber + appCredential:(nullable FIRAuthAppCredential *)appCredential + reCAPTCHAToken:(nullable NSString *)reCAPTCHAToken + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration { + self = [super initWithEndpoint:kSendVerificationCodeEndPoint + requestConfiguration:requestConfiguration]; + if (self) { + _phoneNumber = [phoneNumber copy]; + _appCredential = appCredential; + _reCAPTCHAToken = [reCAPTCHAToken copy]; + } + return self; +} + +- (nullable id)unencodedHTTPRequestBodyWithError:(NSError *_Nullable *_Nullable)error { + NSMutableDictionary *postBody = [NSMutableDictionary dictionary]; + if (_phoneNumber) { + postBody[kPhoneNumberKey] = _phoneNumber; + } + if (_appCredential.receipt) { + postBody[kReceiptKey] = _appCredential.receipt; + } + if (_appCredential.secret) { + postBody[kSecretKey] = _appCredential.secret; + } + if (_reCAPTCHAToken) { + postBody[kreCAPTCHATokenKey] = _reCAPTCHAToken; + } + return postBody; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSendVerificationCodeResponse.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSendVerificationCodeResponse.h new file mode 100644 index 0000000..1a49ec2 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSendVerificationCodeResponse.h @@ -0,0 +1,32 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRSendVerificationCodeResponse : NSObject + +/** @property verificationID + @brief Encrypted session information returned by the backend. + */ +@property(nonatomic, readonly) NSString *verificationID; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSendVerificationCodeResponse.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSendVerificationCodeResponse.m new file mode 100644 index 0000000..9e47b6e --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSendVerificationCodeResponse.m @@ -0,0 +1,36 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRSendVerificationCodeResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +@implementation FIRSendVerificationCodeResponse + +// TODO: remove when resolving b/37169084 . +- (nullable NSString *)expectedKind { + return nil; +} + +- (BOOL)setWithDictionary:(NSDictionary *)dictionary + error:(NSError *_Nullable *_Nullable)error { + _verificationID = [dictionary[@"sessionInfo"] copy]; + return YES; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSetAccountInfoRequest.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSetAccountInfoRequest.h new file mode 100644 index 0000000..0e0e18f --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSetAccountInfoRequest.h @@ -0,0 +1,151 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCRequest.h" +#import "FIRIdentityToolkitRequest.h" + +@class FIRGetAccountInfoResponse; + +NS_ASSUME_NONNULL_BEGIN + +/** @var FIRSetAccountInfoUserAttributeEmail + @brief Constant for email attribute used in "deleteAttributes". + */ +extern NSString *const FIRSetAccountInfoUserAttributeEmail; + +/** @var FIRSetAccountInfoUserAttributeDisplayName + @brief Constant for displayName attribute used in "deleteAttributes". + */ +extern NSString *const FIRSetAccountInfoUserAttributeDisplayName; + +/** @var FIRSetAccountInfoUserAttributeProvider + @brief Constant for provider attribute used in "deleteAttributes". + */ +extern NSString *const FIRSetAccountInfoUserAttributeProvider; + +/** @var FIRSetAccountInfoUserAttributePhotoURL + @brief Constant for photoURL attribute used in "deleteAttributes". + */ +extern NSString *const FIRSetAccountInfoUserAttributePhotoURL; + +/** @var FIRSetAccountInfoUserAttributePassword + @brief Constant for password attribute used in "deleteAttributes". + */ +extern NSString *const FIRSetAccountInfoUserAttributePassword; + +/** @class FIRSetAccountInfoRequest + @brief Represents the parameters for the setAccountInfo endpoint. + @see https://developers.google.com/identity/toolkit/web/reference/relyingparty/setAccountInfo + */ +@interface FIRSetAccountInfoRequest : FIRIdentityToolkitRequest + +/** @property accessToken + @brief The STS Access Token of the authenticated user. + */ +@property(nonatomic, copy, nullable) NSString *accessToken; + +/** @property displayName + @brief The name of the user. + */ +@property(nonatomic, copy, nullable) NSString *displayName; + +/** @property localID + @brief The local ID of the user. + */ +@property(nonatomic, copy, nullable) NSString *localID; + +/** @property email + @brief The email of the user. + */ +@property(nonatomic, copy, nullable) NSString *email; + +/** @property photoURL + @brief The photoURL of the user. + */ +@property(nonatomic, copy, nullable) NSURL *photoURL; + +/** @property password + @brief The new password of the user. + */ +@property(nonatomic, copy, nullable) NSString *password; + +/** @property providers + @brief The associated identity providers of the user. + */ +@property(nonatomic, copy, nullable) NSArray *providers; + +/** @property OOBCode + @brief The out-of-band code of the change email request. + */ +@property(nonatomic, copy, nullable) NSString *OOBCode; + +/** @property emailVerified + @brief Whether to mark the email as verified or not. + */ +@property(nonatomic, assign) BOOL emailVerified; + +/** @property upgradeToFederatedLogin + @brief Whether to mark the user to upgrade to federated login. + */ +@property(nonatomic, assign) BOOL upgradeToFederatedLogin; + +/** @property captchaChallenge + @brief The captcha challenge. + */ +@property(nonatomic, copy, nullable) NSString *captchaChallenge; + +/** @property captchaResponse + @brief Response to the captcha. + */ +@property(nonatomic, copy, nullable) NSString *captchaResponse; + +/** @property deleteAttributes + @brief The list of user attributes to delete. + @remarks Every element of the list must be one of the predefined constant starts with + "FIRSetAccountInfoUserAttribute". + */ +@property(nonatomic, copy, nullable) NSArray *deleteAttributes; + +/** @property deleteProviders + @brief The list of identity providers to delete. + */ +@property(nonatomic, copy, nullable) NSArray *deleteProviders; + +/** @property returnSecureToken + @brief Whether the response should return access token and refresh token directly. + @remarks The default value is @c YES . + */ +@property(nonatomic, assign) BOOL returnSecureToken; + +/** @fn initWithEndpoint:requestConfiguration: + @brief Please use initWithAPIKey:email:password:displayName:requestConfiguration instead. + */ +- (nullable instancetype)initWithEndpoint:(NSString *)endpoint + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_UNAVAILABLE; + +/** @fn initWithRequestConfiguration: + @brief Designated initializer. + @param requestConfiguration An object containing configurations to be added to the request. + */ +- (nullable instancetype)initWithRequestConfiguration: + (FIRAuthRequestConfiguration *)requestConfiguration NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSetAccountInfoRequest.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSetAccountInfoRequest.m new file mode 100644 index 0000000..f455d47 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSetAccountInfoRequest.m @@ -0,0 +1,175 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRSetAccountInfoRequest.h" + +#import "FIRAuthErrorUtils.h" +#import "FIRAuth_Internal.h" +#import "FIRGetAccountInfoResponse.h" + +NSString *const FIRSetAccountInfoUserAttributeEmail = @"EMAIL"; + +NSString *const FIRSetAccountInfoUserAttributeDisplayName = @"DISPLAY_NAME"; + +NSString *const FIRSetAccountInfoUserAttributeProvider = @"PROVIDER"; + +NSString *const FIRSetAccountInfoUserAttributePhotoURL = @"PHOTO_URL"; + +NSString *const FIRSetAccountInfoUserAttributePassword = @"PASSWORD"; + +/** @var kCreateAuthURIEndpoint + @brief The "setAccountInfo" endpoint. + */ +static NSString *const kSetAccountInfoEndpoint = @"setAccountInfo"; + +/** @var kIDTokenKey + @brief The key for the "idToken" value in the request. This is actually the STS Access Token, + despite it's confusing (backwards compatiable) parameter name. + */ +static NSString *const kIDTokenKey = @"idToken"; + +/** @var kDisplayNameKey + @brief The key for the "displayName" value in the request. + */ +static NSString *const kDisplayNameKey = @"displayName"; + +/** @var kLocalIDKey + @brief The key for the "localID" value in the request. + */ +static NSString *const kLocalIDKey = @"localId"; + +/** @var kEmailKey + @brief The key for the "email" value in the request. + */ +static NSString *const kEmailKey = @"email"; + +/** @var kPasswordKey + @brief The key for the "password" value in the request. + */ +static NSString *const kPasswordKey = @"password"; + +/** @var kPhotoURLKey + @brief The key for the "photoURL" value in the request. + */ +static NSString *const kPhotoURLKey = @"photoUrl"; + +/** @var kProvidersKey + @brief The key for the "providers" value in the request. + */ +static NSString *const kProvidersKey = @"provider"; + +/** @var kOOBCodeKey + @brief The key for the "OOBCode" value in the request. + */ +static NSString *const kOOBCodeKey = @"oobCode"; + +/** @var kEmailVerifiedKey + @brief The key for the "emailVerified" value in the request. + */ +static NSString *const kEmailVerifiedKey = @"emailVerified"; + +/** @var kUpgradeToFederatedLoginKey + @brief The key for the "upgradeToFederatedLogin" value in the request. + */ +static NSString *const kUpgradeToFederatedLoginKey = @"upgradeToFederatedLogin"; + +/** @var kCaptchaChallengeKey + @brief The key for the "captchaChallenge" value in the request. + */ +static NSString *const kCaptchaChallengeKey = @"captchaChallenge"; + +/** @var kCaptchaResponseKey + @brief The key for the "captchaResponse" value in the request. + */ +static NSString *const kCaptchaResponseKey = @"captchaResponse"; + +/** @var kDeleteAttributesKey + @brief The key for the "deleteAttribute" value in the request. + */ +static NSString *const kDeleteAttributesKey = @"deleteAttribute"; + +/** @var kDeleteProvidersKey + @brief The key for the "deleteProvider" value in the request. + */ +static NSString *const kDeleteProvidersKey = @"deleteProvider"; + +/** @var kReturnSecureTokenKey + @brief The key for the "returnSecureToken" value in the request. + */ +static NSString *const kReturnSecureTokenKey = @"returnSecureToken"; + +@implementation FIRSetAccountInfoRequest + +- (nullable instancetype)initWithRequestConfiguration: + (FIRAuthRequestConfiguration *)requestConfiguration { + self = [super initWithEndpoint:kSetAccountInfoEndpoint requestConfiguration:requestConfiguration]; + if (self) { + _returnSecureToken = YES; + } + return self; +} + +- (nullable id)unencodedHTTPRequestBodyWithError:(NSError *_Nullable *_Nullable)error { + NSMutableDictionary *postBody = [NSMutableDictionary dictionary]; + if (_accessToken) { + postBody[kIDTokenKey] = _accessToken; + } + if (_displayName) { + postBody[kDisplayNameKey] = _displayName; + } + if (_localID) { + postBody[kLocalIDKey] = _localID; + } + if (_email) { + postBody[kEmailKey] = _email; + } + if (_password) { + postBody[kPasswordKey] = _password; + } + if (_photoURL) { + postBody[kPhotoURLKey] = _photoURL.absoluteString; + } + if (_providers) { + postBody[kProvidersKey] = _providers; + } + if (_OOBCode) { + postBody[kOOBCodeKey] = _OOBCode; + } + if (_emailVerified) { + postBody[kEmailVerifiedKey] = @YES; + } + if (_upgradeToFederatedLogin) { + postBody[kUpgradeToFederatedLoginKey] = @YES; + } + if (_captchaChallenge) { + postBody[kCaptchaChallengeKey] = _captchaChallenge; + } + if (_captchaResponse) { + postBody[kCaptchaResponseKey] = _captchaResponse; + } + if (_deleteAttributes) { + postBody[kDeleteAttributesKey] = _deleteAttributes; + } + if (_deleteProviders) { + postBody[kDeleteProvidersKey] = _deleteProviders; + } + if (_returnSecureToken) { + postBody[kReturnSecureTokenKey] = @YES; + } + return postBody; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSetAccountInfoResponse.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSetAccountInfoResponse.h new file mode 100644 index 0000000..92895c0 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSetAccountInfoResponse.h @@ -0,0 +1,98 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRSetAccountInfoResponseProviderUserInfo + @brief Represents the provider user info part of the response from the setAccountInfo endpoint. + @see https://developers.google.com/identity/toolkit/web/reference/relyingparty/setAccountInfo + */ +@interface FIRSetAccountInfoResponseProviderUserInfo : NSObject + +/** @property providerID + @brief The ID of the identity provider. + */ +@property(nonatomic, strong, readonly, nullable) NSString *providerID; + +/** @property displayName + @brief The user's display name at the identity provider. + */ +@property(nonatomic, strong, readonly, nullable) NSString *displayName; + +/** @property photoURL + @brief The user's photo URL at the identity provider. + */ +@property(nonatomic, strong, readonly, nullable) NSURL *photoURL; + +/** @fn init + @brief Please use initWithDictionary: + */ +- (instancetype)init NS_UNAVAILABLE; + +/** @fn initWithAPIKey: + @brief Designated initializer. + @param dictionary The provider user info data from endpoint. + */ +- (instancetype)initWithDictionary:(NSDictionary *)dictionary NS_DESIGNATED_INITIALIZER; + +@end + +/** @class FIRSetAccountInfoResponse + @brief Represents the response from the setAccountInfo endpoint. + @see https://developers.google.com/identity/toolkit/web/reference/relyingparty/setAccountInfo + */ +@interface FIRSetAccountInfoResponse : NSObject + +/** @property email + @brief The email or the user. + */ +@property(nonatomic, strong, readonly, nullable) NSString *email; + +/** @property displayName + @brief The display name of the user. + */ +@property(nonatomic, strong, readonly, nullable) NSString *displayName; + +/** @property providerUserInfo + @brief The user's profiles at the associated identity providers. + */ +@property(nonatomic, strong, readonly, nullable) + NSArray *providerUserInfo; + +/** @property IDToken + @brief Either an authorization code suitable for performing an STS token exchange, or the + access token from Secure Token Service, depending on whether @c returnSecureToken is set + on the request. + */ +@property(nonatomic, strong, readonly, nullable) NSString *IDToken; + +/** @property approximateExpirationDate + @brief The approximate expiration date of the access token. + */ +@property(nonatomic, copy, readonly, nullable) NSDate *approximateExpirationDate; + +/** @property refreshToken + @brief The refresh token from Secure Token Service. + */ +@property(nonatomic, strong, readonly, nullable) NSString *refreshToken; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSetAccountInfoResponse.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSetAccountInfoResponse.m new file mode 100644 index 0000000..ff9c7a6 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSetAccountInfoResponse.m @@ -0,0 +1,59 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRSetAccountInfoResponse.h" + +@implementation FIRSetAccountInfoResponseProviderUserInfo + +- (instancetype)initWithDictionary:(NSDictionary *)dictionary { + self = [super init]; + if (self) { + _providerID = [dictionary[@"providerId"] copy]; + _displayName = [dictionary[@"displayName"] copy]; + NSString *photoURL = dictionary[@"photoUrl"]; + if (photoURL) { + _photoURL = [NSURL URLWithString:photoURL]; + } + } + return self; +} + +@end + +@implementation FIRSetAccountInfoResponse + +- (BOOL)setWithDictionary:(NSDictionary *)dictionary + error:(NSError *_Nullable *_Nullable)error { + _email = [dictionary[@"email"] copy]; + _displayName = [dictionary[@"displayName"] copy]; + _IDToken = [dictionary[@"idToken"] copy]; + _approximateExpirationDate = [dictionary[@"expiresIn"] isKindOfClass:[NSString class]] ? + [NSDate dateWithTimeIntervalSinceNow:[dictionary[@"expiresIn"] doubleValue]] : nil; + _refreshToken = [dictionary[@"refreshToken"] copy]; + NSArray *providerUserInfoData = dictionary[@"providerUserInfo"]; + if (providerUserInfoData) { + NSMutableArray *providerUserInfoArray = + [NSMutableArray arrayWithCapacity:providerUserInfoData.count]; + for (NSDictionary *dictionary in providerUserInfoData) { + [providerUserInfoArray addObject: + [[FIRSetAccountInfoResponseProviderUserInfo alloc] initWithDictionary:dictionary]]; + } + _providerUserInfo = [providerUserInfoArray copy]; + } + return YES; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSignUpNewUserRequest.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSignUpNewUserRequest.h new file mode 100644 index 0000000..06d2cfe --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSignUpNewUserRequest.h @@ -0,0 +1,72 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCRequest.h" +#import "FIRIdentityToolkitRequest.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRSignUpNewUserRequest : FIRIdentityToolkitRequest + +/** @property email + @brief The email of the user. + */ +@property(nonatomic, copy, nullable) NSString *email; + +/** @property password + @brief The password inputed by the user. + */ +@property(nonatomic, copy, nullable) NSString *password; + +/** @property displayName + @brief The password inputed by the user. + */ +@property(nonatomic, copy, nullable) NSString *displayName; + +/** @property returnSecureToken + @brief Whether the response should return access token and refresh token directly. + @remarks The default value is @c YES . + */ +@property(nonatomic, assign) BOOL returnSecureToken; + +/** @fn initWithEndpoint:requestConfiguration: + @brief Please use initWithAPIKey:email:password:displayName:requestConfiguration instead. + */ +- (nullable instancetype)initWithEndpoint:(NSString *)endpoint + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_UNAVAILABLE; + +/** @fn initWithEndpoint:requestConfiguration: + @brief initializer for anonymous sign-in. + */ +- (nullable instancetype)initWithRequestConfiguration: + (FIRAuthRequestConfiguration *)requestConfiguration; + +/** @fn initWithAPIKey:email:password:displayName:requestConfiguration + @brief Designated initializer. + @param requestConfiguration An object containing configurations to be added to the request. + */ +- (nullable instancetype)initWithEmail:(nullable NSString *)email + password:(nullable NSString *)password + displayName:(nullable NSString *)displayName + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSignUpNewUserRequest.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSignUpNewUserRequest.m new file mode 100644 index 0000000..52a0215 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSignUpNewUserRequest.m @@ -0,0 +1,86 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRSignUpNewUserRequest.h" + +/** @var kSignupNewUserEndpoint + @brief The "SingupNewUserEndpoint" endpoint. + */ +static NSString *const kSignupNewUserEndpoint = @"signupNewUser"; + +/** @var kEmailKey + @brief The key for the "email" value in the request. + */ +static NSString *const kEmailKey = @"email"; + +/** @var kPasswordKey + @brief The key for the "password" value in the request. + */ +static NSString *const kPasswordKey = @"password"; + +/** @var kDisplayNameKey + @brief The key for the "kDisplayName" value in the request. + */ +static NSString *const kDisplayNameKey = @"displayName"; + +/** @var kReturnSecureTokenKey + @brief The key for the "returnSecureToken" value in the request. + */ +static NSString *const kReturnSecureTokenKey = @"returnSecureToken"; + +@implementation FIRSignUpNewUserRequest + +- (nullable instancetype)initWithEmail:(nullable NSString *)email + password:(nullable NSString *)password + displayName:(nullable NSString *)displayName + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration { + self = [super initWithEndpoint:kSignupNewUserEndpoint requestConfiguration:requestConfiguration]; + if (self) { + _email = [email copy]; + _password = [password copy]; + _displayName = [displayName copy]; + _returnSecureToken = YES; + } + return self; +} + +- (nullable instancetype)initWithRequestConfiguration: + (FIRAuthRequestConfiguration *)requestConfiguration { + self = [self initWithEmail:nil + password:nil + displayName:nil + requestConfiguration:requestConfiguration]; + return self; +} + +- (nullable id)unencodedHTTPRequestBodyWithError:(NSError *_Nullable *_Nullable)error { + NSMutableDictionary *postBody = [NSMutableDictionary dictionary]; + if (_email) { + postBody[kEmailKey] = _email; + } + if (_password) { + postBody[kPasswordKey] = _password; + } + if (_displayName) { + postBody[kDisplayNameKey] = _displayName; + } + if (_returnSecureToken) { + postBody[kReturnSecureTokenKey] = @YES; + } + return postBody; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSignUpNewUserResponse.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSignUpNewUserResponse.h new file mode 100644 index 0000000..0d55939 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSignUpNewUserResponse.h @@ -0,0 +1,44 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRSignUpNewUserResponse : NSObject + +/** @property IDToken + @brief Either an authorization code suitable for performing an STS token exchange, or the + access token from Secure Token Service, depending on whether @c returnSecureToken is set + on the request. + */ +@property(nonatomic, strong, readonly, nullable) NSString *IDToken; + +/** @property approximateExpirationDate + @brief The approximate expiration date of the access token. + */ +@property(nonatomic, copy, readonly, nullable) NSDate *approximateExpirationDate; + +/** @property refreshToken + @brief The refresh token from Secure Token Service. + */ +@property(nonatomic, strong, readonly, nullable) NSString *refreshToken; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSignUpNewUserResponse.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSignUpNewUserResponse.m new file mode 100644 index 0000000..2071e07 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRSignUpNewUserResponse.m @@ -0,0 +1,30 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRSignUpNewUserResponse.h" + +@implementation FIRSignUpNewUserResponse + +- (BOOL)setWithDictionary:(NSDictionary *)dictionary + error:(NSError *_Nullable *_Nullable)error { + _IDToken = [dictionary[@"idToken"] copy]; + _approximateExpirationDate = [dictionary[@"expiresIn"] isKindOfClass:[NSString class]] ? + [NSDate dateWithTimeIntervalSinceNow:[dictionary[@"expiresIn"] doubleValue]] : nil; + _refreshToken = [dictionary[@"refreshToken"] copy]; + return YES; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyAssertionRequest.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyAssertionRequest.h new file mode 100644 index 0000000..3136b80 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyAssertionRequest.h @@ -0,0 +1,103 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCRequest.h" +#import "FIRIdentityToolkitRequest.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRVerifyAssertionRequest + @brief Represents the parameters for the verifyAssertion endpoint. + @see https://developers.google.com/identity/toolkit/web/reference/relyingparty/verifyAssertion + */ +@interface FIRVerifyAssertionRequest : FIRIdentityToolkitRequest + +/** @property requestURI + @brief The URI to which the IDP redirects the user back. It may contain federated login result + params added by the IDP. + */ +@property(nonatomic, copy, nullable) NSString *requestURI; + +/** @property pendingIDToken + @brief The Firebase ID Token for the non-trusted IDP pending to be confirmed by the user. + */ +@property(nonatomic, copy, nullable) NSString *pendingIDToken; + +/** @property accessToken + @brief The STS Access Token for the authenticated user, only needed for linking the user. + */ +@property(nonatomic, copy, nullable) NSString *accessToken; + +/** @property returnSecureToken + @brief Whether the response should return access token and refresh token directly. + @remarks The default value is @c YES . + */ +@property(nonatomic, assign) BOOL returnSecureToken; + +#pragma mark - Components of "postBody" + +/** @property providerID + @brief The ID of the IDP whose credentials are being presented to the endpoint. + */ +@property(nonatomic, copy, readonly) NSString *providerID; + +/** @property providerAccessToken + @brief An access token from the IDP. + */ +@property(nonatomic, copy, nullable) NSString *providerAccessToken; + +/** @property providerIDToken + @brief An ID Token from the IDP. + */ +@property(nonatomic, copy, nullable) NSString *providerIDToken; + +/** @property providerOAuthTokenSecret + @brief An OAuth client secret from the IDP. + */ +@property(nonatomic, copy, nullable) NSString *providerOAuthTokenSecret; + +/** @property inputEmail + @brief The originally entered email in the UI. + */ +@property(nonatomic, copy, nullable) NSString *inputEmail; + +/** @property autoCreate + @brief A flag that indicates whether or not the user should be automatically created. + */ +@property(nonatomic, assign) BOOL autoCreate; + +/** @fn initWithEndpoint:requestConfiguration: + @brief Please use initWithProviderID:requestConfifuration instead. + */ +- (nullable instancetype)initWithEndpoint:(NSString *)endpoint + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_UNAVAILABLE; + +/** @fn initWithProviderID:requestConfifuration + @brief Designated initializer. + @param providerID The auth provider's ID. + @param requestConfiguration An object containing configurations to be added to the request. + + */ +- (nullable instancetype)initWithProviderID:(NSString *)providerID + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyAssertionRequest.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyAssertionRequest.m new file mode 100644 index 0000000..274fd07 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyAssertionRequest.m @@ -0,0 +1,145 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRVerifyAssertionRequest.h" + +/** @var kVerifyAssertionEndpoint + @brief The "verifyAssertion" endpoint. + */ +static NSString *const kVerifyAssertionEndpoint = @"verifyAssertion"; + +/** @var kProviderIDKey + @brief The key for the "providerId" value in the request. + */ +static NSString *const kProviderIDKey = @"providerId"; + +/** @var kProviderIDTokenKey + @brief The key for the "id_token" value in the request. + */ +static NSString *const kProviderIDTokenKey = @"id_token"; + +/** @var kProviderAccessTokenKey + @brief The key for the "access_token" value in the request. + */ +static NSString *const kProviderAccessTokenKey = @"access_token"; + +/** @var kProviderOAuthTokenSecretKey + @brief The key for the "oauth_token_secret" value in the request. + */ +static NSString *const kProviderOAuthTokenSecretKey = @"oauth_token_secret"; + +/** @var kIdentifierKey + @brief The key for the "identifier" value in the request. + */ +static NSString *const kIdentifierKey = @"identifier"; + +/** @var kRequestURIKey + @brief The key for the "requestUri" value in the request. + */ +static NSString *const kRequestURIKey = @"requestUri"; + +/** @var kPostBodyKey + @brief The key for the "postBody" value in the request. + */ +static NSString *const kPostBodyKey = @"postBody"; + +/** @var kPendingIDTokenKey + @brief The key for the "pendingIdToken" value in the request. + */ +static NSString *const kPendingIDTokenKey = @"pendingIdToken"; + +/** @var kAutoCreateKey + @brief The key for the "autoCreate" value in the request. + */ +static NSString *const kAutoCreateKey = @"autoCreate"; + +/** @var kIDTokenKey + @brief The key for the "idToken" value in the request. This is actually the STS Access Token, + despite it's confusing (backwards compatiable) parameter name. + */ +static NSString *const kIDTokenKey = @"idToken"; + +/** @var kReturnSecureTokenKey + @brief The key for the "returnSecureToken" value in the request. + */ +static NSString *const kReturnSecureTokenKey = @"returnSecureToken"; + +@implementation FIRVerifyAssertionRequest + +- (nullable instancetype)initWithProviderID:(NSString *)providerID + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration { + self = [super initWithEndpoint:kVerifyAssertionEndpoint + requestConfiguration:requestConfiguration]; + if (self) { + _providerID = providerID; + _returnSecureToken = YES; + _autoCreate = YES; + } + return self; +} + +- (nullable id)unencodedHTTPRequestBodyWithError:(NSError *_Nullable *_Nullable)error { + NSURLComponents *components = [[NSURLComponents alloc] init]; + NSMutableArray *queryItems = [@[[NSURLQueryItem queryItemWithName:kProviderIDKey + value:_providerID]] + mutableCopy]; + + if (_providerIDToken) { + [queryItems addObject:[NSURLQueryItem queryItemWithName:kProviderIDTokenKey + value:_providerIDToken]]; + } + + if (_providerAccessToken) { + [queryItems addObject:[NSURLQueryItem queryItemWithName:kProviderAccessTokenKey + value:_providerAccessToken]]; + } + + if (!_providerIDToken && !_providerAccessToken) { + [NSException raise:NSInvalidArgumentException + format:@"Either IDToken or accessToken must be supplied."]; + } + + if (_providerOAuthTokenSecret) { + [queryItems addObject:[NSURLQueryItem queryItemWithName:kProviderOAuthTokenSecretKey + value:_providerOAuthTokenSecret]]; + } + + if (_inputEmail) { + [queryItems addObject:[NSURLQueryItem queryItemWithName:kIdentifierKey + value:_inputEmail]]; + } + [components setQueryItems:queryItems]; + NSMutableDictionary *body = [@{ + kRequestURIKey : @"http://localhost", // Unused by server, but required + kPostBodyKey : [components query] + } mutableCopy]; + + if (_pendingIDToken) { + body[kPendingIDTokenKey] = _pendingIDToken; + } + if (_accessToken) { + body[kIDTokenKey] = _accessToken; + } + if (_returnSecureToken) { + body[kReturnSecureTokenKey] = @YES; + } + + body[kAutoCreateKey] = @(_autoCreate); + + return body; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyAssertionResponse.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyAssertionResponse.h new file mode 100644 index 0000000..ce796ee --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyAssertionResponse.h @@ -0,0 +1,186 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRVerifyAssertionResponse + @brief Represents the response from the verifyAssertion endpoint. + @see https://developers.google.com/identity/toolkit/web/reference/relyingparty/verifyAssertion + */ +@interface FIRVerifyAssertionResponse : NSObject + +/** @property federatedID + @brief The unique ID identifies the IdP account. + */ +@property(nonatomic, strong, readonly, nullable) NSString *federatedID; + +/** @property providerID + @brief The IdP ID. For white listed IdPs it's a short domain name e.g. google.com, aol.com, + live.net and yahoo.com. If the "providerId" param is set to OpenID OP identifer other than + the whilte listed IdPs the OP identifier is returned. If the "identifier" param is federated + ID in the createAuthUri request. The domain part of the federated ID is returned. + */ +@property(nonatomic, strong, readonly, nullable) NSString *providerID; + +/** @property localID + @brief The RP local ID if it's already been mapped to the IdP account identified by the + federated ID. + */ +@property(nonatomic, strong, readonly, nullable) NSString *localID; + +/** @property email + @brief The email returned by the IdP. NOTE: The federated login user may not own the email. + */ +@property(nonatomic, strong, readonly, nullable) NSString *email; + +/** @property inputEmail + @brief It's the identifier param in the createAuthUri request if the identifier is an email. It + can be used to check whether the user input email is different from the asserted email. + */ +@property(nonatomic, strong, readonly, nullable) NSString *inputEmail; + +/** @property originalEmail + @brief The original email stored in the mapping storage. It's returned when the federated ID is + associated to a different email. + */ +@property(nonatomic, strong, readonly, nullable) NSString *originalEmail; + +/** @property oauthRequestToken + @brief The user approved request token for the OpenID OAuth extension. + */ +@property(nonatomic, strong, readonly, nullable) NSString *oauthRequestToken; + +/** @property oauthScope + @brief The scope for the OpenID OAuth extension. + */ +@property(nonatomic, strong, readonly, nullable) NSString *oauthScope; + +/** @property firstName + @brief The first name of the user. + */ +@property(nonatomic, strong, readonly, nullable) NSString *firstName; + +/** @property lastName + @brief The last name of the user. + */ +@property(nonatomic, strong, readonly, nullable) NSString *lastName; + +/** @property fullName + @brief The full name of the user. + */ +@property(nonatomic, strong, readonly, nullable) NSString *fullName; + +/** @property nickName + @brief The nick name of the user. + */ +@property(nonatomic, strong, readonly, nullable) NSString *nickName; + +/** @property displayName + @brief The display name of the user. + */ +@property(nonatomic, strong, readonly, nullable) NSString *displayName; + +/** @property IDToken + @brief Either an authorization code suitable for performing an STS token exchange, or the + access token from Secure Token Service, depending on whether @c returnSecureToken is set + on the request. + */ +@property(nonatomic, strong, readonly, nullable) NSString *IDToken; + +/** @property approximateExpirationDate + @brief The approximate expiration date of the access token. + */ +@property(nonatomic, copy, readonly, nullable) NSDate *approximateExpirationDate; + +/** @property refreshToken + @brief The refresh token from Secure Token Service. + */ +@property(nonatomic, strong, readonly, nullable) NSString *refreshToken; + +/** @property action + @brief The action code. + */ +@property(nonatomic, strong, readonly, nullable) NSString *action; + +/** @property language + @brief The language preference of the user. + */ +@property(nonatomic, strong, readonly, nullable) NSString *language; + +/** @property timeZone + @brief The timezone of the user. + */ +@property(nonatomic, strong, readonly, nullable) NSString *timeZone; + +/** @property photoURL + @brief The URI of the public accessible profile picture. + */ +@property(nonatomic, strong, readonly, nullable) NSURL *photoURL; + +/** @property dateOfBirth + @brief The birth date of the IdP account. + */ +@property(nonatomic, strong, readonly, nullable) NSString *dateOfBirth; + +/** @property context + @brief The opaque value used by the client to maintain context info between the authentication + request and the IDP callback. + */ +@property(nonatomic, strong, readonly, nullable) NSString *context; + +/** @property verifiedProvider + @brief When action is 'map', contains the idps which can be used for confirmation. + */ +@property(nonatomic, strong, readonly, nullable) NSArray *verifiedProvider; + +/** @property needConfirmation + @brief Whether the assertion is from a non-trusted IDP and need account linking confirmation. + */ +@property(nonatomic, assign) BOOL needConfirmation; + +/** @property emailRecycled + @brief It's true if the email is recycled. + */ +@property(nonatomic, assign) BOOL emailRecycled; + +/** @property emailVerified + @brief The value is true if the IDP is also the email provider. It means the user owns the + email. + */ +@property(nonatomic, assign) BOOL emailVerified; + +/** @property isNewUser + @brief Flag indicating that the user signing in is a new user and not a returning user. + */ +@property(nonatomic, assign) BOOL isNewUser; + +/** @property profile + @brief Dictionary containing the additional IdP specific information. + */ +@property(nonatomic, readonly, nullable) NSDictionary *profile; + +/** @property username + @brief The name of the user. + */ +@property(nonatomic, strong, readonly, nullable) NSString *username; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyAssertionResponse.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyAssertionResponse.m new file mode 100644 index 0000000..5ee39fa --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyAssertionResponse.m @@ -0,0 +1,76 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRVerifyAssertionResponse.h" + +@implementation FIRVerifyAssertionResponse + +- (BOOL)setWithDictionary:(NSDictionary *)dictionary + error:(NSError *_Nullable *_Nullable)error { + _federatedID = [dictionary[@"federatedId"] copy]; + _providerID = [dictionary[@"providerId"] copy]; + _localID = [dictionary[@"localId"] copy]; + _emailRecycled = [dictionary[@"emailRecycled"] boolValue]; + _emailVerified = [dictionary[@"emailVerified"] boolValue]; + _email = [dictionary[@"email"] copy]; + _inputEmail = [dictionary[@"inputEmail"] copy]; + _originalEmail = [dictionary[@"originalEmail"] copy]; + _oauthRequestToken = [dictionary[@"oauthRequestToken"] copy]; + _oauthScope = [dictionary[@"oauthScope"] copy]; + _firstName = [dictionary[@"firstName"] copy]; + _lastName = [dictionary[@"lastName"] copy]; + _fullName = [dictionary[@"fullName"] copy]; + _nickName = [dictionary[@"nickName"] copy]; + _displayName = [dictionary[@"displayName"] copy]; + _IDToken = [dictionary[@"idToken"] copy]; + _approximateExpirationDate = [dictionary[@"expiresIn"] isKindOfClass:[NSString class]] ? + [NSDate dateWithTimeIntervalSinceNow:[dictionary[@"expiresIn"] doubleValue]] : nil; + _refreshToken = [dictionary[@"refreshToken"] copy]; + _isNewUser = [dictionary[@"isNewUser"] boolValue]; + id rawUserInfo = dictionary[@"rawUserInfo"]; + if ([rawUserInfo isKindOfClass:[NSString class]]) { + NSData *data = [rawUserInfo dataUsingEncoding:NSUTF8StringEncoding]; + rawUserInfo = [NSJSONSerialization JSONObjectWithData:data + options:NSJSONReadingMutableLeaves + error:nil]; + } + if ([rawUserInfo isKindOfClass:[NSDictionary class]]) { + _profile = [[NSDictionary alloc] initWithDictionary:rawUserInfo + copyItems:YES]; + } + _username = [dictionary[@"username"] copy]; + _action = [dictionary[@"action"] copy]; + _language = [dictionary[@"language"] copy]; + _timeZone = [dictionary[@"timeZone"] copy]; + _photoURL = dictionary[@"photoUrl"] ? [NSURL URLWithString:dictionary[@"photoUrl"]] : nil; + _dateOfBirth = [dictionary[@"dateOfBirth"] copy]; + _context = [dictionary[@"context"] copy]; + _needConfirmation = [dictionary[@"needConfirmation"] boolValue]; + id verifiedProvider = dictionary[@"verifiedProvider"]; + if ([verifiedProvider isKindOfClass:[NSString class]]) { + NSData *data = [verifiedProvider dataUsingEncoding:NSUTF8StringEncoding]; + verifiedProvider = [NSJSONSerialization JSONObjectWithData:data + options:NSJSONReadingMutableLeaves + error:nil]; + } + if ([verifiedProvider isKindOfClass:[NSArray class]]) { + _verifiedProvider = [[NSArray alloc] initWithArray:verifiedProvider + copyItems:YES]; + } + return YES; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyClientRequest.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyClientRequest.h new file mode 100644 index 0000000..a235788 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyClientRequest.h @@ -0,0 +1,56 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRIdentityToolkitRequest.h" + +#import "FIRAuthRPCRequest.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRVerifyClientRequest : FIRIdentityToolkitRequest + +/** @property appToken + @brief The APNS device token. + */ +@property(nonatomic, readonly, nullable) NSString *appToken; + +/** @property isSandbox + @brief The flag that denotes if the appToken pertains to Sandbox or Production. + */ +@property(nonatomic, assign, readonly) BOOL isSandbox; + +/** @fn initWithEndpoint:requestConfiguration: + @brief Please use initWithToken:requestConfiguration: instead. + */ +- (nullable instancetype)initWithEndpoint:(NSString *)endpoint + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_UNAVAILABLE; + +/** @fn initWithAppToken:isSandbox:requestConfiguration: + @brief Designated initializer. + @param appToken The APNS device token. + @param isSandbox The flag indicating whether or not the app token provided is for Sandbox or + Production. + @param requestConfiguration An object containing configurations to be added to the request. + */ +- (nullable instancetype)initWithAppToken:(nullable NSString *)appToken + isSandbox:(BOOL)isSandbox + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyClientRequest.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyClientRequest.m new file mode 100644 index 0000000..101f4ef --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyClientRequest.m @@ -0,0 +1,63 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRVerifyClientRequest.h" + + +NS_ASSUME_NONNULL_BEGIN + +/** @var kVerifyClientEndpoint + @brief The endpoint for the verifyClient request. + */ +static NSString *const kVerifyClientEndpoint = @"verifyClient"; + +/** @var kAppTokenKey + @brief The key for the appToken request paramenter. + */ +static NSString *const kAPPTokenKey = @"appToken"; + +/** @var kIsSandboxKey + @brief The key for the isSandbox request parameter + */ +static NSString *const kIsSandboxKey = @"isSandbox"; + +@implementation FIRVerifyClientRequest + +- (nullable instancetype)initWithAppToken:(nullable NSString *)appToken + isSandbox:(BOOL)isSandbox + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration { + self = [super initWithEndpoint:kVerifyClientEndpoint requestConfiguration:requestConfiguration]; + if (self) { + _appToken = appToken; + _isSandbox = isSandbox; + } + return self; +} + +- (nullable id)unencodedHTTPRequestBodyWithError:(NSError *__autoreleasing _Nullable *)error { + NSMutableDictionary *postBody = [NSMutableDictionary dictionary]; + if (_appToken) { + postBody[kAPPTokenKey] = _appToken; + } + if (_isSandbox) { + postBody[kIsSandboxKey] = @YES; + } + return postBody; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyClientResponse.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyClientResponse.h new file mode 100644 index 0000000..794256a --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyClientResponse.h @@ -0,0 +1,38 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRVerifyClientResponse : NSObject + +/** @property receipt + @brief Receipt that the APNS token was successfully validated with APNS. + */ +@property(nonatomic, copy, readonly, nullable) NSString *receipt; + +/** @property suggestedTimeOut + @brief The date after which delivery of the silent push notification is considered to have + failed. + */ +@property(nonatomic, copy, readonly, nullable) NSDate *suggestedTimeOutDate; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyClientResponse.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyClientResponse.m new file mode 100644 index 0000000..c2477d2 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyClientResponse.m @@ -0,0 +1,33 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRVerifyClientResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +@implementation FIRVerifyClientResponse + +- (BOOL)setWithDictionary:(NSDictionary *)dictionary + error:(NSError *_Nullable *_Nullable)error { + _receipt = dictionary[@"receipt"]; + _suggestedTimeOutDate = [dictionary[@"suggestedTimeout"] isKindOfClass:[NSString class]] ? + [NSDate dateWithTimeIntervalSinceNow:[dictionary[@"suggestedTimeout"] doubleValue]] : nil; + return YES; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyCustomTokenRequest.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyCustomTokenRequest.h new file mode 100644 index 0000000..84bad05 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyCustomTokenRequest.h @@ -0,0 +1,57 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCRequest.h" +#import "FIRIdentityToolkitRequest.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRVerifyCustomTokenRequest + @brief Represents the parameters for the verifyCustomToken endpoint. + */ +@interface FIRVerifyCustomTokenRequest : FIRIdentityToolkitRequest + +/** @property token + @brief The self-signed token from the client's BYOAuth server. + */ +@property(nonatomic, copy, readonly) NSString *token; + +/** @property returnSecureToken + @brief Whether the response should return access token and refresh token directly. + @remarks The default value is @c YES . + */ +@property(nonatomic, assign) BOOL returnSecureToken; + +/** @fn initWithEndpoint:requestConfiguration: + @brief Please use initWithToken:requestConfiguration: instead. + */ +- (nullable instancetype)initWithEndpoint:(NSString *)endpoint requestConfiguration: + (FIRAuthRequestConfiguration *)requestConfiguration NS_UNAVAILABLE; + +/** @fn initWithToken:requestConfiguration: + @brief Designated initializer. + @param token The self-signed token from the client's BYOAuth server. + @param requestConfiguration An object containing configurations to be added to the request. + */ +- (nullable instancetype)initWithToken:(NSString *)token + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyCustomTokenRequest.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyCustomTokenRequest.m new file mode 100644 index 0000000..79e60f4 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyCustomTokenRequest.m @@ -0,0 +1,57 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRVerifyCustomTokenRequest.h" + +/** @var kVerifyCustomTokenEndpoint + @brief The "verifyPassword" endpoint. + */ +static NSString *const kVerifyCustomTokenEndpoint = @"verifyCustomToken"; + +/** @var kTokenKey + @brief The key for the "token" value in the request. + */ +static NSString *const kTokenKey = @"token"; + +/** @var kReturnSecureTokenKey + @brief The key for the "returnSecureToken" value in the request. + */ +static NSString *const kReturnSecureTokenKey = @"returnSecureToken"; + +@implementation FIRVerifyCustomTokenRequest + +- (nullable instancetype)initWithToken:(NSString *)token + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration { + self = [super initWithEndpoint:kVerifyCustomTokenEndpoint + requestConfiguration:requestConfiguration]; + if (self) { + _token = [token copy]; + _returnSecureToken = YES; + } + return self; +} + +- (nullable id)unencodedHTTPRequestBodyWithError:(NSError *_Nullable *_Nullable)error { + NSMutableDictionary *body = [@{ + kTokenKey : _token + } mutableCopy]; + if (_returnSecureToken) { + body[kReturnSecureTokenKey] = @YES; + } + return body; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyCustomTokenResponse.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyCustomTokenResponse.h new file mode 100644 index 0000000..6957bf3 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyCustomTokenResponse.h @@ -0,0 +1,52 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRVerifyCustomTokenResponse + @brief Represents the response from the verifyCustomToken endpoint. + */ +@interface FIRVerifyCustomTokenResponse : NSObject + +/** @property IDToken + @brief Either an authorization code suitable for performing an STS token exchange, or the + access token from Secure Token Service, depending on whether @c returnSecureToken is set + on the request. + */ +@property(nonatomic, strong, readonly, nullable) NSString *IDToken; + +/** @property approximateExpirationDate + @brief The approximate expiration date of the access token. + */ +@property(nonatomic, copy, readonly, nullable) NSDate *approximateExpirationDate; + +/** @property refreshToken + @brief The refresh token from Secure Token Service. + */ +@property(nonatomic, strong, readonly, nullable) NSString *refreshToken; + +/** @property isNewUser + @brief Flag indicating that the user signing in is a new user and not a returning user. + */ +@property(nonatomic, assign) BOOL isNewUser; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyCustomTokenResponse.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyCustomTokenResponse.m new file mode 100644 index 0000000..b6c3818 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyCustomTokenResponse.m @@ -0,0 +1,31 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRVerifyCustomTokenResponse.h" + +@implementation FIRVerifyCustomTokenResponse + +- (BOOL)setWithDictionary:(NSDictionary *)dictionary + error:(NSError *_Nullable *_Nullable)error { + _IDToken = [dictionary[@"idToken"] copy]; + _approximateExpirationDate = [dictionary[@"expiresIn"] isKindOfClass:[NSString class]] ? + [NSDate dateWithTimeIntervalSinceNow:[dictionary[@"expiresIn"] doubleValue]] : nil; + _refreshToken = [dictionary[@"refreshToken"] copy]; + _isNewUser = [dictionary[@"isNewUser"] boolValue]; + return YES; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPasswordRequest.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPasswordRequest.h new file mode 100644 index 0000000..39eb388 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPasswordRequest.h @@ -0,0 +1,81 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCRequest.h" +#import "FIRIdentityToolkitRequest.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRVerifyPasswordRequest + @brief Represents the parameters for the verifyPassword endpoint. + @see https://developers.google.com/identity/toolkit/web/reference/relyingparty/verifyPassword + */ +@interface FIRVerifyPasswordRequest : FIRIdentityToolkitRequest + +/** @property email + @brief The email of the user. + */ +@property(nonatomic, copy) NSString *email; + +/** @property password + @brief The password inputed by the user. + */ +@property(nonatomic, copy) NSString *password; + +/** @property pendingIDToken + @brief The GITKit token for the non-trusted IDP, which is to be confirmed by the user. + */ +@property(nonatomic, copy, nullable) NSString *pendingIDToken; + +/** @property captchaChallenge + @brief The captcha challenge. + */ +@property(nonatomic, copy, nullable) NSString *captchaChallenge; + +/** @property captchaResponse + @brief Response to the captcha. + */ +@property(nonatomic, copy, nullable) NSString *captchaResponse; + +/** @property returnSecureToken + @brief Whether the response should return access token and refresh token directly. + @remarks The default value is @c YES . + */ +@property(nonatomic, assign) BOOL returnSecureToken; + +/** @fn initWithEndpoint:requestConfiguration: + @brief Please use initWithEmail:password:requestConfiguration: + */ +- (nullable instancetype)initWithEndpoint:(NSString *)endpoint + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_UNAVAILABLE; + +/** @fn initWithEmail:password:requestConfiguration: + @brief Designated initializer. + @param email The email of the user. + @param password The password inputed by the user. + @param requestConfiguration The configu + */ +- (nullable instancetype)initWithEmail:(NSString *)email + password:(NSString *)password + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPasswordRequest.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPasswordRequest.m new file mode 100644 index 0000000..515a425 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPasswordRequest.m @@ -0,0 +1,92 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRVerifyPasswordRequest.h" + +/** @var kVerifyPasswordEndpoint + @brief The "verifyPassword" endpoint. + */ +static NSString *const kVerifyPasswordEndpoint = @"verifyPassword"; + +/** @var kEmailKey + @brief The key for the "email" value in the request. + */ +static NSString *const kEmailKey = @"email"; + +/** @var kPasswordKey + @brief The key for the "password" value in the request. + */ +static NSString *const kPasswordKey = @"password"; + +/** @var kPendingIDTokenKey + @brief The key for the "pendingIdToken" value in the request. + */ +static NSString *const kPendingIDTokenKey = @"pendingIdToken"; + +/** @var kCaptchaChallengeKey + @brief The key for the "captchaChallenge" value in the request. + */ +static NSString *const kCaptchaChallengeKey = @"captchaChallenge"; + +/** @var kCaptchaResponseKey + @brief The key for the "captchaResponse" value in the request. + */ +static NSString *const kCaptchaResponseKey = @"captchaResponse"; + +/** @var kReturnSecureTokenKey + @brief The key for the "returnSecureToken" value in the request. + */ +static NSString *const kReturnSecureTokenKey = @"returnSecureToken"; + +@implementation FIRVerifyPasswordRequest + +- (nullable instancetype)initWithEmail:(NSString *)email + password:(NSString *)password + requestConfiguration:(nonnull FIRAuthRequestConfiguration *)requestConfiguration { + self = [super initWithEndpoint:kVerifyPasswordEndpoint + requestConfiguration:requestConfiguration]; + if (self) { + _email = [email copy]; + _password = [password copy]; + _returnSecureToken = YES; + } + return self; +} + +- (nullable id)unencodedHTTPRequestBodyWithError:(NSError *_Nullable *_Nullable)error { + NSMutableDictionary *postBody = [NSMutableDictionary dictionary]; + if (_email) { + postBody[kEmailKey] = _email; + } + if (_password) { + postBody[kPasswordKey] = _password; + } + if (_pendingIDToken) { + postBody[kPendingIDTokenKey] = _pendingIDToken; + } + if (_captchaChallenge) { + postBody[kCaptchaChallengeKey] = _captchaChallenge; + } + if (_captchaResponse) { + postBody[kCaptchaResponseKey] = _captchaResponse; + } + if (_returnSecureToken) { + postBody[kReturnSecureTokenKey] = @YES; + } + return postBody; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPasswordResponse.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPasswordResponse.h new file mode 100644 index 0000000..bed13be --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPasswordResponse.h @@ -0,0 +1,72 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @class FIRVerifyPasswordResponse + @brief Represents the response from the verifyPassword endpoint. + @remarks Possible error codes: + - FIRAuthInternalErrorCodeUserDisabled + - FIRAuthInternalErrorCodeEmailNotFound + @see https://developers.google.com/identity/toolkit/web/reference/relyingparty/verifyPassword + */ +@interface FIRVerifyPasswordResponse : NSObject + +/** @property localID + @brief The RP local ID if it's already been mapped to the IdP account identified by the + federated ID. + */ +@property(nonatomic, strong, readonly, nullable) NSString *localID; + +/** @property email + @brief The email returned by the IdP. NOTE: The federated login user may not own the email. + */ +@property(nonatomic, strong, readonly, nullable) NSString *email; + +/** @property displayName + @brief The display name of the user. + */ +@property(nonatomic, strong, readonly, nullable) NSString *displayName; + +/** @property IDToken + @brief Either an authorization code suitable for performing an STS token exchange, or the + access token from Secure Token Service, depending on whether @c returnSecureToken is set + on the request. + */ +@property(nonatomic, strong, readonly, nullable) NSString *IDToken; + +/** @property approximateExpirationDate + @brief The approximate expiration date of the access token. + */ +@property(nonatomic, copy, readonly, nullable) NSDate *approximateExpirationDate; + +/** @property refreshToken + @brief The refresh token from Secure Token Service. + */ +@property(nonatomic, strong, readonly, nullable) NSString *refreshToken; + +/** @property photoURL + @brief The URI of the public accessible profile picture. + */ +@property(nonatomic, strong, readonly, nullable) NSURL *photoURL; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPasswordResponse.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPasswordResponse.m new file mode 100644 index 0000000..71b4edd --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPasswordResponse.m @@ -0,0 +1,34 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRVerifyPasswordResponse.h" + +@implementation FIRVerifyPasswordResponse + +- (BOOL)setWithDictionary:(NSDictionary *)dictionary + error:(NSError *_Nullable *_Nullable)error { + _localID = [dictionary[@"localId"] copy]; + _email = [dictionary[@"email"] copy]; + _displayName = [dictionary[@"displayName"] copy]; + _IDToken = [dictionary[@"idToken"] copy]; + _approximateExpirationDate = [dictionary[@"expiresIn"] isKindOfClass:[NSString class]] ? + [NSDate dateWithTimeIntervalSinceNow:[dictionary[@"expiresIn"] doubleValue]] : nil; + _refreshToken = [dictionary[@"refreshToken"] copy]; + _photoURL = dictionary[@"photoUrl"] ? [NSURL URLWithString:dictionary[@"photoUrl"]] : nil; + return YES; +} + +@end diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPhoneNumberRequest.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPhoneNumberRequest.h new file mode 100644 index 0000000..07988f1 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPhoneNumberRequest.h @@ -0,0 +1,91 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRIdentityToolkitRequest.h" + +#import "FIRAuthOperationType.h" +#import "FIRAuthRPCRequest.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRVerifyPhoneNumberRequest : FIRIdentityToolkitRequest + +/** @property verificationID + @brief The verification ID obtained from the response of @c sendVerificationCode. +*/ +@property(nonatomic, readonly, nullable) NSString *verificationID; + +/** @property verificationCode + @brief The verification code provided by the user. +*/ +@property(nonatomic, readonly, nullable) NSString *verificationCode; + +/** @property accessToken + @brief The STS Access Token for the authenticated user. + */ +@property(nonatomic, copy, nullable) NSString *accessToken; + +/** @var temporaryProof + @brief The temporary proof code, previously returned from the backend. + */ +@property(nonatomic, readonly, nonnull) NSString *temporaryProof; + +/** @var phoneNumber + @brief The phone number to be verified in the request. + */ +@property(nonatomic, readonly, nonnull) NSString *phoneNumber; + +/** @var operation + @brief The type of operation triggering this verify phone number request. + */ +@property(nonatomic, assign, readonly) FIRAuthOperationType operation; + +/** @fn initWithEndpoint:requestConfiguration: + @brief Please use initWithVerificationID:verificationCode:requestConfiguration + */ +- (nullable instancetype)initWithEndpoint:(NSString *)endpoint + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_UNAVAILABLE; + +/** @fn initWithTemporaryProof:phoneNumberAPIKey + @brief Designated initializer. + @param temporaryProof The temporary proof sent by the backed. + @param phoneNumber The phone number associated with the credential to be signed in. + @param operation Indicates what operation triggered the verify phone number request. + @param requestConfiguration An object containing configurations to be added to the request. + */ +- (nullable instancetype)initWithTemporaryProof:(NSString *)temporaryProof + phoneNumber:(NSString *)phoneNumber + operation:(FIRAuthOperationType)operation + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_DESIGNATED_INITIALIZER; + +/** @fn initWithVerificationID:verificationCode:requestConfiguration + @brief Designated initializer. + @param verificationID The verification ID obtained from the response of @c sendVerificationCode. + @param verificationCode The verification code provided by the user. + @param operation Indicates what operation triggered the verify phone number request. + @param requestConfiguration An object containing configurations to be added to the request. + */ +- (nullable instancetype)initWithVerificationID:(NSString *)verificationID + verificationCode:(NSString *)verificationCode + operation:(FIRAuthOperationType)operation + requestConfiguration:(FIRAuthRequestConfiguration *)requestConfiguration + NS_DESIGNATED_INITIALIZER; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPhoneNumberRequest.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPhoneNumberRequest.m new file mode 100644 index 0000000..022ab9e --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPhoneNumberRequest.m @@ -0,0 +1,133 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRVerifyPhoneNumberRequest.h" + +NS_ASSUME_NONNULL_BEGIN + +/** @var kVerifyPhoneNumberEndPoint + @brief The "verifyPhoneNumber" endpoint. + */ +static NSString *const kVerifyPhoneNumberEndPoint = @"verifyPhoneNumber"; + +/** @var kVerificationIDKey + @brief The key for the verification ID parameter in the request. + */ +static NSString *const kVerificationIDKey = @"sessionInfo"; + +/** @var kVerificationCodeKey + @brief The key for the verification code parameter in the request. + */ +static NSString *const kVerificationCodeKey = @"code"; + +/** @var kIDTokenKey + @brief The key for the "ID Token" value in the request. + */ +static NSString *const kIDTokenKey = @"idToken"; + +/** @var kTemporaryProofKey + @brief The key for the temporary proof value in the request. + */ +static NSString *const kTemporaryProofKey = @"temporaryProof"; + +/** @var kPhoneNumberKey + @brief The key for the phone number value in the request. + */ +static NSString *const kPhoneNumberKey = @"phoneNumber"; + +/** @var kOperationKey + @brief The key for the operation value in the request. + */ +static NSString *const kOperationKey = @"operation"; + +@implementation FIRVerifyPhoneNumberRequest + +- (nullable instancetype)initWithTemporaryProof:(NSString *)temporaryProof + phoneNumber:(NSString *)phoneNumber + operation:(FIRAuthOperationType)operation + requestConfiguration: + (FIRAuthRequestConfiguration *)requestConfiguration { + self = [super initWithEndpoint:kVerifyPhoneNumberEndPoint + requestConfiguration:requestConfiguration]; + if (self) { + _temporaryProof = [temporaryProof copy]; + _phoneNumber = [phoneNumber copy]; + _operation = operation; + } + return self; +} + +- (nullable instancetype)initWithVerificationID:(NSString *)verificationID + verificationCode:(NSString *)verificationCode + operation:(FIRAuthOperationType)operation + requestConfiguration: + (FIRAuthRequestConfiguration *)requestConfiguration { + self = [super initWithEndpoint:kVerifyPhoneNumberEndPoint + requestConfiguration:requestConfiguration]; + if (self) { + _verificationID = verificationID; + _verificationCode = verificationCode; + _operation = operation; + } + return self; +} + +/** @fn FIRAuthOperationString + @brief Returns a string object corresponding to the provided FIRAuthOperationType value. + @param operationType The value of the FIRAuthOperationType enum which will be translated to its + corresponding string value. + @return The string value corresponding to the FIRAuthOperationType argument. + */ +NSString *const FIRAuthOperationString(FIRAuthOperationType operationType) { + switch(operationType){ + case FIRAuthOperationTypeUnspecified: + return @"VERIFY_OP_UNSPECIFIED"; + case FIRAuthOperationTypeSignUpOrSignIn: + return @"SIGN_UP_OR_IN"; + case FIRAuthOperationTypeReauth: + return @"REAUTH"; + case FIRAuthOperationTypeLink: + return @"LINK"; + case FIRAuthOperationTypeUpdate: + return @"UPDATE"; + } +} + +- (nullable id)unencodedHTTPRequestBodyWithError:(NSError *__autoreleasing _Nullable *)error { + NSMutableDictionary *postBody = [NSMutableDictionary dictionary]; + if (_verificationID) { + postBody[kVerificationIDKey] = _verificationID; + } + if (_verificationCode) { + postBody[kVerificationCodeKey] = _verificationCode; + } + if (_accessToken) { + postBody[kIDTokenKey] = _accessToken; + } + if (_temporaryProof) { + postBody[kTemporaryProofKey] = _temporaryProof; + } + if (_phoneNumber) { + postBody[kPhoneNumberKey] = _phoneNumber; + } + NSString *operation = FIRAuthOperationString(_operation); + postBody[kOperationKey] = operation; + return postBody; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPhoneNumberResponse.h b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPhoneNumberResponse.h new file mode 100644 index 0000000..b0ba5dd --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPhoneNumberResponse.h @@ -0,0 +1,64 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAuthRPCResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRVerifyPhoneNumberResponse : NSObject + +/** @property IDToken + @brief Either an authorization code suitable for performing an STS token exchange, or the + access token from Secure Token Service, depending on whether @c returnSecureToken is set + on the request. + */ +@property(nonatomic, strong, readonly, nullable) NSString *IDToken; + +/** @property refreshToken + @brief The refresh token from Secure Token Service. + */ +@property(nonatomic, strong, readonly, nullable) NSString *refreshToken; + +/** @property localID + @brief The Firebase Auth user ID. + */ +@property(nonatomic, strong, readonly, nullable) NSString *localID; + +/** @property phoneNumber + @brief The verified phone number. + */ +@property(nonatomic, strong, readonly, nullable) NSString *phoneNumber; + +/** @property temporaryProof + @brief The temporary proof code returned by the backend. + */ +@property(nonatomic, strong, readonly, nullable) NSString *temporaryProof; + +/** @property isNewUser + @brief Flag indicating that the user signing in is a new user and not a returning user. + */ +@property(nonatomic, assign) BOOL isNewUser; + +/** @property approximateExpirationDate + @brief The approximate expiration date of the access token. + */ +@property(nonatomic, copy, readonly, nullable) NSDate *approximateExpirationDate; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPhoneNumberResponse.m b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPhoneNumberResponse.m new file mode 100644 index 0000000..acba2c2 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/Firebase/Auth/Source/RPCs/FIRVerifyPhoneNumberResponse.m @@ -0,0 +1,42 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRVerifyPhoneNumberResponse.h" + +NS_ASSUME_NONNULL_BEGIN + +@implementation FIRVerifyPhoneNumberResponse + +- (nullable NSString *)expectedKind { + return nil; +} + +- (BOOL)setWithDictionary:(NSDictionary *)dictionary + error:(NSError *_Nullable *_Nullable)error { + _IDToken = [dictionary[@"idToken"] copy]; + _refreshToken = [dictionary[@"refreshToken"] copy]; + _isNewUser = [dictionary[@"isNewUser"] boolValue]; + _localID = [dictionary[@"localId"] copy]; + _phoneNumber = [dictionary[@"phoneNumber"] copy]; + _temporaryProof = [dictionary[@"temporaryProof"] copy]; + _approximateExpirationDate = [dictionary[@"expiresIn"] isKindOfClass:[NSString class]] ? + [NSDate dateWithTimeIntervalSinceNow:[dictionary[@"expiresIn"] doubleValue]] : nil; + return YES; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseAuth/LICENSE b/Til to Code/Pods/FirebaseAuth/LICENSE new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/Til to Code/Pods/FirebaseAuth/README.md b/Til to Code/Pods/FirebaseAuth/README.md new file mode 100644 index 0000000..00e6ade --- /dev/null +++ b/Til to Code/Pods/FirebaseAuth/README.md @@ -0,0 +1,185 @@ +# Firebase iOS Open Source Development [![Build Status](https://travis-ci.org/firebase/firebase-ios-sdk.svg?branch=master)](https://travis-ci.org/firebase/firebase-ios-sdk) + +This repository contains a subset of the Firebase iOS SDK source. It currently +includes FirebaseCore, FirebaseAuth, FirebaseDatabase, FirebaseFirestore, +FirebaseFunctions, FirebaseInAppMessagingDisplay, FirebaseMessaging and +FirebaseStorage. + +The repository also includes GoogleUtilities source. The +[GoogleUtilities](GoogleUtilities/README.md) pod is +a set of utilities used by Firebase and other Google products. + +Firebase is an app development platform with tools to help you build, grow and +monetize your app. More information about Firebase can be found at +[https://firebase.google.com](https://firebase.google.com). + +## Installation + +See the three subsections for details about three different installation methods. +1. [Standard pod install](README.md#standard-pod-install) +1. [Installing from the GitHub repo](README.md#installing-from-github) +1. [Experimental Carthage](README.md#carthage-ios-only) + +### Standard pod install + +Go to +[https://firebase.google.com/docs/ios/setup](https://firebase.google.com/docs/ios/setup). + +### Installing from GitHub + +For releases starting with 5.0.0, the source for each release is also deployed +to CocoaPods master and available via standard +[CocoaPods Podfile syntax](https://guides.cocoapods.org/syntax/podfile.html#pod). + +These instructions can be used to access the Firebase repo at other branches, +tags, or commits. + +#### Background + +See +[the Podfile Syntax Reference](https://guides.cocoapods.org/syntax/podfile.html#pod) +for instructions and options about overriding pod source locations. + +#### Accessing Firebase Source Snapshots + +All of the official releases are tagged in this repo and available via CocoaPods. To access a local +source snapshot or unreleased branch, use Podfile directives like the following: + +To access FirebaseFirestore via a branch: +``` +pod 'FirebaseCore', :git => 'https://github.com/firebase/firebase-ios-sdk.git', :branch => 'master' +pod 'FirebaseFirestore', :git => 'https://github.com/firebase/firebase-ios-sdk.git', :branch => 'master' +``` + +To access FirebaseMessaging via a checked out version of the firebase-ios-sdk repo do: + +``` +pod 'FirebaseCore', :path => '/path/to/firebase-ios-sdk' +pod 'FirebaseMessaging', :path => '/path/to/firebase-ios-sdk' +``` + +### Carthage (iOS only) + +Instructions for the experimental Carthage distribution are at +[Carthage](Carthage.md). + +### Rome + +Instructions for installing binary frameworks via +[Rome](https://github.com/CocoaPods/Rome) are at [Rome](Rome.md). + +## Development + +Follow the subsequent instructions to develop, debug, unit test, run integration +tests, and try out reference samples: + +``` +$ git clone git@github.com:firebase/firebase-ios-sdk.git +$ cd firebase-ios-sdk/Example +$ pod update +$ open Firebase.xcworkspace +``` + +Firestore and Functions have self contained Xcode projects. See +[Firestore/README.md](Firestore/README.md) and +[Functions/README.md](Functions/README.md). + +### Running Unit Tests + +Select a scheme and press Command-u to build a component and run its unit tests. + +### Running Sample Apps +In order to run the sample apps and integration tests, you'll need valid +`GoogleService-Info.plist` files for those samples. The Firebase Xcode project contains dummy plist +files without real values, but can be replaced with real plist files. To get your own +`GoogleService-Info.plist` files: + +1. Go to the [Firebase Console](https://console.firebase.google.com/) +2. Create a new Firebase project, if you don't already have one +3. For each sample app you want to test, create a new Firebase app with the sample app's bundle +identifier (e.g. `com.google.Database-Example`) +4. Download the resulting `GoogleService-Info.plist` and replace the appropriate dummy plist file +(e.g. in [Example/Database/App/](Example/Database/App/)); + +Some sample apps like Firebase Messaging ([Example/Messaging/App](Example/Messaging/App)) require +special Apple capabilities, and you will have to change the sample app to use a unique bundle +identifier that you can control in your own Apple Developer account. + +## Specific Component Instructions +See the sections below for any special instructions for those components. + +### Firebase Auth + +If you're doing specific Firebase Auth development, see +[the Auth Sample README](Example/Auth/README.md) for instructions about +building and running the FirebaseAuth pod along with various samples and tests. + +### Firebase Database + +To run the Database Integration tests, make your database authentication rules +[public](https://firebase.google.com/docs/database/security/quickstart). + +### Firebase Storage + +To run the Storage Integration tests, follow the instructions in +[FIRStorageIntegrationTests.m](Example/Storage/Tests/Integration/FIRStorageIntegrationTests.m). + +#### Push Notifications + +Push notifications can only be delivered to specially provisioned App IDs in the developer portal. +In order to actually test receiving push notifications, you will need to: + +1. Change the bundle identifier of the sample app to something you own in your Apple Developer +account, and enable that App ID for push notifications. +2. You'll also need to +[upload your APNs Provider Authentication Key or certificate to the Firebase Console](https://firebase.google.com/docs/cloud-messaging/ios/certs) +at **Project Settings > Cloud Messaging > [Your Firebase App]**. +3. Ensure your iOS device is added to your Apple Developer portal as a test device. + +#### iOS Simulator + +The iOS Simulator cannot register for remote notifications, and will not receive push notifications. +In order to receive push notifications, you'll have to follow the steps above and run the app on a +physical device. + +## Community Supported Efforts + +We've seen an amazing amount of interest and contributions to improve the Firebase SDKs, and we are +very grateful! We'd like to empower as many developers as we can to be able to use Firebase and +participate in the Firebase community. + +### macOS and tvOS +FirebaseAuth, FirebaseCore, FirebaseDatabase and FirebaseStorage now compile, run unit tests, and +work on macOS and tvOS, thanks to contributions from the community. There are a few tweaks needed, +like ensuring iOS-only, macOS-only, or tvOS-only code is correctly guarded with checks for +`TARGET_OS_IOS`, `TARGET_OS_OSX` and `TARGET_OS_TV`. + +For tvOS, checkout the [Sample](Example/tvOSSample). + +Keep in mind that macOS and tvOS are not officially supported by Firebase, and this repository is +actively developed primarily for iOS. While we can catch basic unit test issues with Travis, there +may be some changes where the SDK no longer works as expected on macOS or tvOS. If you encounter +this, please [file an issue](https://github.com/firebase/firebase-ios-sdk/issues). + +For installation instructions, see [above](README.md#accessing-firebase-source-snapshots). + +Note that the Firebase pod is not available for macOS and tvOS. Install a selection of the +`FirebaseAuth`, `FirebaseCore`, `FirebaseDatabase` and `FirebaseStorage` CocoaPods. + +## Roadmap + +See [Roadmap](ROADMAP.md) for more about the Firebase iOS SDK Open Source +plans and directions. + +## Contributing + +See [Contributing](CONTRIBUTING.md) for more information on contributing to the Firebase +iOS SDK. + +## License + +The contents of this repository is licensed under the +[Apache License, version 2.0](http://www.apache.org/licenses/LICENSE-2.0). + +Your use of Firebase is governed by the +[Terms of Service for Firebase Services](https://firebase.google.com/terms/). diff --git a/Til to Code/Pods/FirebaseAuthInterop/Interop/Auth/Public/FIRAuthInterop.h b/Til to Code/Pods/FirebaseAuthInterop/Interop/Auth/Public/FIRAuthInterop.h new file mode 100644 index 0000000..5c365a3 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuthInterop/Interop/Auth/Public/FIRAuthInterop.h @@ -0,0 +1,42 @@ +/* + * Copyright 2018 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FIRAuthInterop_h +#define FIRAuthInterop_h + +NS_ASSUME_NONNULL_BEGIN + +/** @typedef FIRTokenCallback + @brief The type of block which gets called when a token is ready. + */ +typedef void (^FIRTokenCallback)(NSString *_Nullable token, NSError *_Nullable error) + NS_SWIFT_NAME(TokenCallback); + +/// Common methods for Auth interoperability. +NS_SWIFT_NAME(AuthInterop) +@protocol FIRAuthInterop + +/// Retrieves the Firebase authentication token, possibly refreshing it if it has expired. +- (void)getTokenForcingRefresh:(BOOL)forceRefresh withCallback:(FIRTokenCallback)callback; + +/// Get the current Auth user's UID. Returns nil if there is no user signed in. +- (nullable NSString *)getUserID; + +@end + +NS_ASSUME_NONNULL_END + +#endif /* FIRAuthInterop_h */ diff --git a/Til to Code/Pods/FirebaseAuthInterop/LICENSE b/Til to Code/Pods/FirebaseAuthInterop/LICENSE new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/Til to Code/Pods/FirebaseAuthInterop/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/Til to Code/Pods/FirebaseAuthInterop/README.md b/Til to Code/Pods/FirebaseAuthInterop/README.md new file mode 100644 index 0000000..4414b3e --- /dev/null +++ b/Til to Code/Pods/FirebaseAuthInterop/README.md @@ -0,0 +1,179 @@ +# Firebase iOS Open Source Development [![Build Status](https://travis-ci.org/firebase/firebase-ios-sdk.svg?branch=master)](https://travis-ci.org/firebase/firebase-ios-sdk) + +This repository contains a subset of the Firebase iOS SDK source. It currently +includes FirebaseCore, FirebaseAuth, FirebaseDatabase, FirebaseFirestore, +FirebaseFunctions, FirebaseMessaging and FirebaseStorage. + +The repository also includes GoogleUtilities source. The +[GoogleUtilities](GoogleUtilities/README.md) pod is +a set of utilities used by Firebase and other Google products. + +Firebase is an app development platform with tools to help you build, grow and +monetize your app. More information about Firebase can be found at +[https://firebase.google.com](https://firebase.google.com). + +## Installation + +See the three subsections for details about three different installation methods. +1. [Standard pod install](README.md#standard-pod-install) +1. [Installing from the GitHub repo](README.md#installing-from-github) +1. [Experimental Carthage](README.md#carthage-ios-only) + +### Standard pod install + +Go to +[https://firebase.google.com/docs/ios/setup](https://firebase.google.com/docs/ios/setup). + +### Installing from GitHub + +For releases starting with 5.0.0, the source for each release is also deployed +to CocoaPods master and available via standard +[CocoaPods Podfile syntax](https://guides.cocoapods.org/syntax/podfile.html#pod). + +These instructions can be used to access the Firebase repo at other branches, +tags, or commits. + +#### Background + +See +[the Podfile Syntax Reference](https://guides.cocoapods.org/syntax/podfile.html#pod) +for instructions and options about overriding pod source locations. + +#### Accessing Firebase Source Snapshots + +All of the official releases are tagged in this repo and available via CocoaPods. To access a local +source snapshot or unreleased branch, use Podfile directives like the following: + +To access FirebaseFirestore via a branch: +``` +pod 'FirebaseCore', :git => 'https://github.com/firebase/firebase-ios-sdk.git', :branch => 'master' +pod 'FirebaseFirestore', :git => 'https://github.com/firebase/firebase-ios-sdk.git', :branch => 'master' +``` + +To access FirebaseMessaging via a checked out version of the firebase-ios-sdk repo do: + +``` +pod 'FirebaseCore', :path => '/path/to/firebase-ios-sdk' +pod 'FirebaseMessaging', :path => '/path/to/firebase-ios-sdk' +``` + +### Carthage (iOS only) + +An experimental Carthage distribution is now available. See +[Carthage](Carthage.md). + +## Development + +Follow the subsequent instructions to develop, debug, unit test, run integration +tests, and try out reference samples: + +``` +$ git clone git@github.com:firebase/firebase-ios-sdk.git +$ cd firebase-ios-sdk/Example +$ pod update +$ open Firebase.xcworkspace +``` + +Firestore and Functions have self contained Xcode projects. See +[Firestore/README.md](Firestore/README.md) and +[Functions/README.md](Functions/README.md). + +### Running Unit Tests + +Select a scheme and press Command-u to build a component and run its unit tests. + +### Running Sample Apps +In order to run the sample apps and integration tests, you'll need valid +`GoogleService-Info.plist` files for those samples. The Firebase Xcode project contains dummy plist +files without real values, but can be replaced with real plist files. To get your own +`GoogleService-Info.plist` files: + +1. Go to the [Firebase Console](https://console.firebase.google.com/) +2. Create a new Firebase project, if you don't already have one +3. For each sample app you want to test, create a new Firebase app with the sample app's bundle +identifier (e.g. `com.google.Database-Example`) +4. Download the resulting `GoogleService-Info.plist` and replace the appropriate dummy plist file +(e.g. in [Example/Database/App/](Example/Database/App/)); + +Some sample apps like Firebase Messaging ([Example/Messaging/App](Example/Messaging/App)) require +special Apple capabilities, and you will have to change the sample app to use a unique bundle +identifier that you can control in your own Apple Developer account. + +## Specific Component Instructions +See the sections below for any special instructions for those components. + +### Firebase Auth + +If you're doing specific Firebase Auth development, see +[AuthSamples/README.md](AuthSamples/README.md) for instructions about +building and running the FirebaseAuth pod along with various samples and tests. + +### Firebase Database + +To run the Database Integration tests, make your database authentication rules +[public](https://firebase.google.com/docs/database/security/quickstart). + +### Firebase Storage + +To run the Storage Integration tests, follow the instructions in +[FIRStorageIntegrationTests.m](Example/Storage/Tests/Integration/FIRStorageIntegrationTests.m). + +#### Push Notifications + +Push notifications can only be delivered to specially provisioned App IDs in the developer portal. +In order to actually test receiving push notifications, you will need to: + +1. Change the bundle identifier of the sample app to something you own in your Apple Developer +account, and enable that App ID for push notifications. +2. You'll also need to +[upload your APNs Provider Authentication Key or certificate to the Firebase Console](https://firebase.google.com/docs/cloud-messaging/ios/certs) +at **Project Settings > Cloud Messaging > [Your Firebase App]**. +3. Ensure your iOS device is added to your Apple Developer portal as a test device. + +#### iOS Simulator + +The iOS Simulator cannot register for remote notifications, and will not receive push notifications. +In order to receive push notifications, you'll have to follow the steps above and run the app on a +physical device. + +## Community Supported Efforts + +We've seen an amazing amount of interest and contributions to improve the Firebase SDKs, and we are +very grateful! We'd like to empower as many developers as we can to be able to use Firebase and +participate in the Firebase community. + +### macOS and tvOS +FirebaseAuth, FirebaseCore, FirebaseDatabase and FirebaseStorage now compile, run unit tests, and +work on macOS and tvOS, thanks to contributions from the community. There are a few tweaks needed, +like ensuring iOS-only, macOS-only, or tvOS-only code is correctly guarded with checks for +`TARGET_OS_IOS`, `TARGET_OS_OSX` and `TARGET_OS_TV`. + +For tvOS, checkout the [Sample](Example/tvOSSample). + +Keep in mind that macOS and tvOS are not officially supported by Firebase, and this repository is +actively developed primarily for iOS. While we can catch basic unit test issues with Travis, there +may be some changes where the SDK no longer works as expected on macOS or tvOS. If you encounter +this, please [file an issue](https://github.com/firebase/firebase-ios-sdk/issues). + +For installation instructions, see [above](README.md#accessing-firebase-source-snapshots). + +Note that the Firebase pod is not available for macOS and tvOS. Install a selection of the +`FirebaseAuth`, `FirebaseCore`, `FirebaseDatabase` and `FirebaseStorage` CocoaPods. + +## Roadmap + +See [Roadmap](ROADMAP.md) for more about the Firebase iOS SDK Open Source +plans and directions. + +## Contributing + +See [Contributing](CONTRIBUTING.md) for more information on contributing to the Firebase +iOS SDK. + +## License + +The contents of this repository is licensed under the +[Apache License, version 2.0](http://www.apache.org/licenses/LICENSE-2.0). + +Your use of Firebase is governed by the +[Terms of Service for Firebase Services](https://firebase.google.com/terms/). diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRAnalyticsConfiguration.m b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRAnalyticsConfiguration.m new file mode 100644 index 0000000..33aa168 --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRAnalyticsConfiguration.m @@ -0,0 +1,69 @@ +// Copyright 2017 Google +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#import "FIRAnalyticsConfiguration.h" + +#import "Private/FIRAnalyticsConfiguration+Internal.h" + +@implementation FIRAnalyticsConfiguration + ++ (FIRAnalyticsConfiguration *)sharedInstance { + static FIRAnalyticsConfiguration *sharedInstance = nil; + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + sharedInstance = [[FIRAnalyticsConfiguration alloc] init]; + }); + return sharedInstance; +} + +- (void)postNotificationName:(NSString *)name value:(id)value { + if (!name.length || !value) { + return; + } + [[NSNotificationCenter defaultCenter] postNotificationName:name + object:self + userInfo:@{name : value}]; +} + +- (void)setMinimumSessionInterval:(NSTimeInterval)minimumSessionInterval { + [self postNotificationName:kFIRAnalyticsConfigurationSetMinimumSessionIntervalNotification + value:@(minimumSessionInterval)]; +} + +- (void)setSessionTimeoutInterval:(NSTimeInterval)sessionTimeoutInterval { + [self postNotificationName:kFIRAnalyticsConfigurationSetSessionTimeoutIntervalNotification + value:@(sessionTimeoutInterval)]; +} + +- (void)setAnalyticsCollectionEnabled:(BOOL)analyticsCollectionEnabled { + [self setAnalyticsCollectionEnabled:analyticsCollectionEnabled persistSetting:YES]; +} + +- (void)setAnalyticsCollectionEnabled:(BOOL)analyticsCollectionEnabled + persistSetting:(BOOL)shouldPersist { + // Persist the measurementEnabledState. Use FIRAnalyticsEnabledState values instead of YES/NO. + FIRAnalyticsEnabledState analyticsEnabledState = + analyticsCollectionEnabled ? kFIRAnalyticsEnabledStateSetYes : kFIRAnalyticsEnabledStateSetNo; + if (shouldPersist) { + NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults]; + [userDefaults setObject:@(analyticsEnabledState) + forKey:kFIRAPersistedConfigMeasurementEnabledStateKey]; + [userDefaults synchronize]; + } + + [self postNotificationName:kFIRAnalyticsConfigurationSetEnabledNotification + value:@(analyticsCollectionEnabled)]; +} + +@end diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRApp.m b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRApp.m new file mode 100644 index 0000000..3b352fa --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRApp.m @@ -0,0 +1,791 @@ +// Copyright 2017 Google +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include + +#import "FIRApp.h" +#import "FIRConfiguration.h" +#import "Private/FIRAnalyticsConfiguration+Internal.h" +#import "Private/FIRAppInternal.h" +#import "Private/FIRBundleUtil.h" +#import "Private/FIRComponentContainerInternal.h" +#import "Private/FIRCoreConfigurable.h" +#import "Private/FIRLogger.h" +#import "Private/FIROptionsInternal.h" + +NSString *const kFIRServiceAdMob = @"AdMob"; +NSString *const kFIRServiceAuth = @"Auth"; +NSString *const kFIRServiceAuthUI = @"AuthUI"; +NSString *const kFIRServiceCrash = @"Crash"; +NSString *const kFIRServiceDatabase = @"Database"; +NSString *const kFIRServiceDynamicLinks = @"DynamicLinks"; +NSString *const kFIRServiceFirestore = @"Firestore"; +NSString *const kFIRServiceFunctions = @"Functions"; +NSString *const kFIRServiceInstanceID = @"InstanceID"; +NSString *const kFIRServiceInvites = @"Invites"; +NSString *const kFIRServiceMessaging = @"Messaging"; +NSString *const kFIRServiceMeasurement = @"Measurement"; +NSString *const kFIRServicePerformance = @"Performance"; +NSString *const kFIRServiceRemoteConfig = @"RemoteConfig"; +NSString *const kFIRServiceStorage = @"Storage"; +NSString *const kGGLServiceAnalytics = @"Analytics"; +NSString *const kGGLServiceSignIn = @"SignIn"; + +NSString *const kFIRDefaultAppName = @"__FIRAPP_DEFAULT"; +NSString *const kFIRAppReadyToConfigureSDKNotification = @"FIRAppReadyToConfigureSDKNotification"; +NSString *const kFIRAppDeleteNotification = @"FIRAppDeleteNotification"; +NSString *const kFIRAppIsDefaultAppKey = @"FIRAppIsDefaultAppKey"; +NSString *const kFIRAppNameKey = @"FIRAppNameKey"; +NSString *const kFIRGoogleAppIDKey = @"FIRGoogleAppIDKey"; + +NSString *const kFIRGlobalAppDataCollectionEnabledDefaultsKeyFormat = + @"/google/firebase/global_data_collection_enabled:%@"; +NSString *const kFIRGlobalAppDataCollectionEnabledPlistKey = + @"FirebaseDataCollectionDefaultEnabled"; + +NSString *const kFIRAppDiagnosticsNotification = @"FIRAppDiagnosticsNotification"; + +NSString *const kFIRAppDiagnosticsConfigurationTypeKey = @"ConfigType"; +NSString *const kFIRAppDiagnosticsErrorKey = @"Error"; +NSString *const kFIRAppDiagnosticsFIRAppKey = @"FIRApp"; +NSString *const kFIRAppDiagnosticsSDKNameKey = @"SDKName"; +NSString *const kFIRAppDiagnosticsSDKVersionKey = @"SDKVersion"; + +// Auth internal notification notification and key. +NSString *const FIRAuthStateDidChangeInternalNotification = + @"FIRAuthStateDidChangeInternalNotification"; +NSString *const FIRAuthStateDidChangeInternalNotificationAppKey = + @"FIRAuthStateDidChangeInternalNotificationAppKey"; +NSString *const FIRAuthStateDidChangeInternalNotificationTokenKey = + @"FIRAuthStateDidChangeInternalNotificationTokenKey"; +NSString *const FIRAuthStateDidChangeInternalNotificationUIDKey = + @"FIRAuthStateDidChangeInternalNotificationUIDKey"; + +/** + * The URL to download plist files. + */ +static NSString *const kPlistURL = @"https://console.firebase.google.com/"; + +/** + * An array of all classes that registered as `FIRCoreConfigurable` in order to receive lifecycle + * events from Core. + */ +static NSMutableArray> *gRegisteredAsConfigurable; + +@interface FIRApp () + +#ifdef DEBUG +@property(nonatomic) BOOL alreadyOutputDataCollectionFlag; +#endif // DEBUG + +@end + +@implementation FIRApp + +// This is necessary since our custom getter prevents `_options` from being created. +@synthesize options = _options; + +static NSMutableDictionary *sAllApps; +static FIRApp *sDefaultApp; +static NSMutableDictionary *sLibraryVersions; + ++ (void)configure { + FIROptions *options = [FIROptions defaultOptions]; + if (!options) { + // Read the Info.plist to see if the flag is set. At this point we can't check any user defaults + // since the app isn't configured at all, so only rely on the Info.plist value. + NSNumber *collectionEnabledPlistValue = [[self class] readDataCollectionSwitchFromPlist]; + if (collectionEnabledPlistValue == nil || [collectionEnabledPlistValue boolValue]) { + [[NSNotificationCenter defaultCenter] + postNotificationName:kFIRAppDiagnosticsNotification + object:nil + userInfo:@{ + kFIRAppDiagnosticsConfigurationTypeKey : @(FIRConfigTypeCore), + kFIRAppDiagnosticsErrorKey : [FIRApp errorForMissingOptions] + }]; + } + + [NSException raise:kFirebaseCoreErrorDomain + format: + @"`[FIRApp configure];` (`FirebaseApp.configure()` in Swift) could not find " + @"a valid GoogleService-Info.plist in your project. Please download one " + @"from %@.", + kPlistURL]; + } + [FIRApp configureWithOptions:options]; +#if TARGET_OS_OSX || TARGET_OS_TV + FIRLogNotice(kFIRLoggerCore, @"I-COR000028", + @"tvOS and macOS SDK support is not part of the official Firebase product. " + @"Instead they are community supported. Details at " + @"https://github.com/firebase/firebase-ios-sdk/blob/master/README.md."); +#endif +} + ++ (void)configureWithOptions:(FIROptions *)options { + if (!options) { + [NSException raise:kFirebaseCoreErrorDomain + format:@"Options is nil. Please pass a valid options."]; + } + [FIRApp configureWithName:kFIRDefaultAppName options:options]; +} + ++ (void)configureWithName:(NSString *)name options:(FIROptions *)options { + if (!name || !options) { + [NSException raise:kFirebaseCoreErrorDomain format:@"Neither name nor options can be nil."]; + } + if (name.length == 0) { + [NSException raise:kFirebaseCoreErrorDomain format:@"Name cannot be empty."]; + } + + if ([name isEqualToString:kFIRDefaultAppName]) { + if (sDefaultApp) { + [NSException raise:kFirebaseCoreErrorDomain + format:@"Default app has already been configured."]; + } + + FIRLogDebug(kFIRLoggerCore, @"I-COR000001", @"Configuring the default app."); + } else { + // Validate the app name and ensure it hasn't been configured already. + for (NSUInteger charIndex = 0; charIndex < name.length; charIndex++) { + char character = [name characterAtIndex:charIndex]; + if (!((character >= 'a' && character <= 'z') || (character >= 'A' && character <= 'Z') || + (character >= '0' && character <= '9') || character == '_' || character == '-')) { + [NSException raise:kFirebaseCoreErrorDomain + format: + @"App name should only contain Letters, " + @"Numbers, Underscores, and Dashes."]; + } + } + + if (sAllApps && sAllApps[name]) { + [NSException raise:kFirebaseCoreErrorDomain + format:@"App named %@ has already been configured.", name]; + } + + FIRLogDebug(kFIRLoggerCore, @"I-COR000002", @"Configuring app named %@", name); + } + + @synchronized(self) { + FIRApp *app = [[FIRApp alloc] initInstanceWithName:name options:options]; + if (app.isDefaultApp) { + sDefaultApp = app; + } + + [FIRApp addAppToAppDictionary:app]; + [FIRApp sendNotificationsToSDKs:app]; + } +} + ++ (FIRApp *)defaultApp { + if (sDefaultApp) { + return sDefaultApp; + } + FIRLogError(kFIRLoggerCore, @"I-COR000003", + @"The default Firebase app has not yet been " + @"configured. Add `[FIRApp configure];` (`FirebaseApp.configure()` in Swift) to your " + @"application initialization. Read more: https://goo.gl/ctyzm8."); + return nil; +} + ++ (FIRApp *)appNamed:(NSString *)name { + @synchronized(self) { + if (sAllApps) { + FIRApp *app = sAllApps[name]; + if (app) { + return app; + } + } + FIRLogError(kFIRLoggerCore, @"I-COR000004", @"App with name %@ does not exist.", name); + return nil; + } +} + ++ (NSDictionary *)allApps { + @synchronized(self) { + if (!sAllApps) { + FIRLogError(kFIRLoggerCore, @"I-COR000005", @"No app has been configured yet."); + } + NSDictionary *dict = [NSDictionary dictionaryWithDictionary:sAllApps]; + return dict; + } +} + +// Public only for tests ++ (void)resetApps { + sDefaultApp = nil; + [sAllApps removeAllObjects]; + sAllApps = nil; + [sLibraryVersions removeAllObjects]; + sLibraryVersions = nil; +} + +- (void)deleteApp:(FIRAppVoidBoolCallback)completion { + @synchronized([self class]) { + if (sAllApps && sAllApps[self.name]) { + FIRLogDebug(kFIRLoggerCore, @"I-COR000006", @"Deleting app named %@", self.name); + + // Remove all cached instances from the container before deleting the app. + [self.container removeAllCachedInstances]; + + [sAllApps removeObjectForKey:self.name]; + [self clearDataCollectionSwitchFromUserDefaults]; + if ([self.name isEqualToString:kFIRDefaultAppName]) { + sDefaultApp = nil; + } + NSDictionary *appInfoDict = @{kFIRAppNameKey : self.name}; + [[NSNotificationCenter defaultCenter] postNotificationName:kFIRAppDeleteNotification + object:[self class] + userInfo:appInfoDict]; + completion(YES); + } else { + FIRLogError(kFIRLoggerCore, @"I-COR000007", @"App does not exist."); + completion(NO); + } + } +} + ++ (void)addAppToAppDictionary:(FIRApp *)app { + if (!sAllApps) { + sAllApps = [NSMutableDictionary dictionary]; + } + if ([app configureCore]) { + sAllApps[app.name] = app; + } else { + [NSException raise:kFirebaseCoreErrorDomain + format: + @"Configuration fails. It may be caused by an invalid GOOGLE_APP_ID in " + @"GoogleService-Info.plist or set in the customized options."]; + } +} + +- (instancetype)initInstanceWithName:(NSString *)name options:(FIROptions *)options { + self = [super init]; + if (self) { + _name = [name copy]; + _options = [options copy]; + _options.editingLocked = YES; + _isDefaultApp = [name isEqualToString:kFIRDefaultAppName]; + _container = [[FIRComponentContainer alloc] initWithApp:self]; + } + return self; +} + +- (void)getTokenForcingRefresh:(BOOL)forceRefresh withCallback:(FIRTokenCallback)callback { + if (!_getTokenImplementation) { + callback(nil, nil); + return; + } + + _getTokenImplementation(forceRefresh, callback); +} + +- (BOOL)configureCore { + [self checkExpectedBundleID]; + if (![self isAppIDValid]) { + if (_options.usingOptionsFromDefaultPlist && [self isDataCollectionDefaultEnabled]) { + [[NSNotificationCenter defaultCenter] + postNotificationName:kFIRAppDiagnosticsNotification + object:nil + userInfo:@{ + kFIRAppDiagnosticsConfigurationTypeKey : @(FIRConfigTypeCore), + kFIRAppDiagnosticsErrorKey : [FIRApp errorForInvalidAppID], + }]; + } + return NO; + } + + if ([self isDataCollectionDefaultEnabled]) { + [[NSNotificationCenter defaultCenter] + postNotificationName:kFIRAppDiagnosticsNotification + object:nil + userInfo:@{ + kFIRAppDiagnosticsConfigurationTypeKey : @(FIRConfigTypeCore), + kFIRAppDiagnosticsFIRAppKey : self + }]; + } + +#if TARGET_OS_IOS + // Initialize the Analytics once there is a valid options under default app. Analytics should + // always initialize first by itself before the other SDKs. + if ([self.name isEqualToString:kFIRDefaultAppName]) { + Class firAnalyticsClass = NSClassFromString(@"FIRAnalytics"); + if (!firAnalyticsClass) { + FIRLogWarning(kFIRLoggerCore, @"I-COR000022", + @"Firebase Analytics is not available. To add it, include Firebase/Core in the " + @"Podfile or add FirebaseAnalytics.framework to the Link Build Phase"); + } else { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wundeclared-selector" + SEL startWithConfigurationSelector = @selector(startWithConfiguration:options:); +#pragma clang diagnostic pop + if ([firAnalyticsClass respondsToSelector:startWithConfigurationSelector]) { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Warc-performSelector-leaks" + [firAnalyticsClass performSelector:startWithConfigurationSelector + withObject:[FIRConfiguration sharedInstance].analyticsConfiguration + withObject:_options]; +#pragma clang diagnostic pop + } + } + } +#endif + + return YES; +} + +- (FIROptions *)options { + return [_options copy]; +} + +- (void)setDataCollectionDefaultEnabled:(BOOL)dataCollectionDefaultEnabled { +#ifdef DEBUG + FIRLogDebug(kFIRLoggerCore, @"I-COR000034", @"Explicitly %@ data collection flag.", + dataCollectionDefaultEnabled ? @"enabled" : @"disabled"); + self.alreadyOutputDataCollectionFlag = YES; +#endif // DEBUG + + NSString *key = + [NSString stringWithFormat:kFIRGlobalAppDataCollectionEnabledDefaultsKeyFormat, self.name]; + [[NSUserDefaults standardUserDefaults] setBool:dataCollectionDefaultEnabled forKey:key]; + + // Core also controls the FirebaseAnalytics flag, so check if the Analytics flags are set + // within FIROptions and change the Analytics value if necessary. Analytics only works with the + // default app, so return if this isn't the default app. + if (!self.isDefaultApp) { + return; + } + + // Check if the Analytics flag is explicitly set. If so, no further actions are necessary. + if ([self.options isAnalyticsCollectionExpicitlySet]) { + return; + } + + // The Analytics flag has not been explicitly set, so update with the value being set. + [[FIRAnalyticsConfiguration sharedInstance] + setAnalyticsCollectionEnabled:dataCollectionDefaultEnabled + persistSetting:NO]; +} + +- (BOOL)isDataCollectionDefaultEnabled { + // Check if it's been manually set before in code, and use that as the higher priority value. + NSNumber *defaultsObject = [[self class] readDataCollectionSwitchFromUserDefaultsForApp:self]; + if (defaultsObject != nil) { +#ifdef DEBUG + if (!self.alreadyOutputDataCollectionFlag) { + FIRLogDebug(kFIRLoggerCore, @"I-COR000031", @"Data Collection flag is %@ in user defaults.", + [defaultsObject boolValue] ? @"enabled" : @"disabled"); + self.alreadyOutputDataCollectionFlag = YES; + } +#endif // DEBUG + return [defaultsObject boolValue]; + } + + // Read the Info.plist to see if the flag is set. If it's not set, it should default to `YES`. + // As per the implementation of `readDataCollectionSwitchFromPlist`, it's a cached value and has + // no performance impact calling multiple times. + NSNumber *collectionEnabledPlistValue = [[self class] readDataCollectionSwitchFromPlist]; + if (collectionEnabledPlistValue != nil) { +#ifdef DEBUG + if (!self.alreadyOutputDataCollectionFlag) { + FIRLogDebug(kFIRLoggerCore, @"I-COR000032", @"Data Collection flag is %@ in plist.", + [collectionEnabledPlistValue boolValue] ? @"enabled" : @"disabled"); + self.alreadyOutputDataCollectionFlag = YES; + } +#endif // DEBUG + return [collectionEnabledPlistValue boolValue]; + } + +#ifdef DEBUG + if (!self.alreadyOutputDataCollectionFlag) { + FIRLogDebug(kFIRLoggerCore, @"I-COR000033", @"Data Collection flag is not set."); + self.alreadyOutputDataCollectionFlag = YES; + } +#endif // DEBUG + return YES; +} + +#pragma mark - private + ++ (void)sendNotificationsToSDKs:(FIRApp *)app { + // TODO: Remove this notification once all SDKs are registered with `FIRCoreConfigurable`. + NSNumber *isDefaultApp = [NSNumber numberWithBool:app.isDefaultApp]; + NSDictionary *appInfoDict = @{ + kFIRAppNameKey : app.name, + kFIRAppIsDefaultAppKey : isDefaultApp, + kFIRGoogleAppIDKey : app.options.googleAppID + }; + [[NSNotificationCenter defaultCenter] postNotificationName:kFIRAppReadyToConfigureSDKNotification + object:self + userInfo:appInfoDict]; + + // This is the new way of sending information to SDKs. + // TODO: Do we want this on a background thread, maybe? + for (Class library in gRegisteredAsConfigurable) { + [library configureWithApp:app]; + } +} + ++ (NSError *)errorForMissingOptions { + NSDictionary *errorDict = @{ + NSLocalizedDescriptionKey : + @"Unable to parse GoogleService-Info.plist in order to configure services.", + NSLocalizedRecoverySuggestionErrorKey : + @"Check formatting and location of GoogleService-Info.plist." + }; + return [NSError errorWithDomain:kFirebaseCoreErrorDomain + code:FIRErrorCodeInvalidPlistFile + userInfo:errorDict]; +} + ++ (NSError *)errorForSubspecConfigurationFailureWithDomain:(NSString *)domain + errorCode:(FIRErrorCode)code + service:(NSString *)service + reason:(NSString *)reason { + NSString *description = + [NSString stringWithFormat:@"Configuration failed for service %@.", service]; + NSDictionary *errorDict = + @{NSLocalizedDescriptionKey : description, NSLocalizedFailureReasonErrorKey : reason}; + return [NSError errorWithDomain:domain code:code userInfo:errorDict]; +} + ++ (NSError *)errorForInvalidAppID { + NSDictionary *errorDict = @{ + NSLocalizedDescriptionKey : @"Unable to validate Google App ID", + NSLocalizedRecoverySuggestionErrorKey : + @"Check formatting and location of GoogleService-Info.plist or GoogleAppID set in the " + @"customized options." + }; + return [NSError errorWithDomain:kFirebaseCoreErrorDomain + code:FIRErrorCodeInvalidAppID + userInfo:errorDict]; +} + ++ (void)registerAsConfigurable:(Class)klass { + // This is called at +load time, keep the work to a minimum. + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + gRegisteredAsConfigurable = [[NSMutableArray alloc] initWithCapacity:1]; + }); + + NSAssert([(Class)klass conformsToProtocol:@protocol(FIRCoreConfigurable)], + @"The class being registered (%@) must conform to `FIRCoreConfigurable`.", klass); + [gRegisteredAsConfigurable addObject:klass]; +} + ++ (BOOL)isDefaultAppConfigured { + return (sDefaultApp != nil); +} + ++ (void)registerLibrary:(nonnull NSString *)library withVersion:(nonnull NSString *)version { + // Create the set of characters which aren't allowed, only if this feature is used. + NSMutableCharacterSet *allowedSet = [NSMutableCharacterSet alphanumericCharacterSet]; + [allowedSet addCharactersInString:@"-_."]; + NSCharacterSet *disallowedSet = [allowedSet invertedSet]; + // Make sure the library name and version strings do not contain unexpected characters, and + // add the name/version pair to the dictionary. + if ([library rangeOfCharacterFromSet:disallowedSet].location == NSNotFound && + [version rangeOfCharacterFromSet:disallowedSet].location == NSNotFound) { + if (!sLibraryVersions) { + sLibraryVersions = [[NSMutableDictionary alloc] init]; + } + sLibraryVersions[library] = version; + } else { + FIRLogError(kFIRLoggerCore, @"I-COR000027", + @"The library name (%@) or version number (%@) contain illegal characters. " + @"Only alphanumeric, dash, underscore and period characters are allowed.", + library, version); + } +} + ++ (NSString *)firebaseUserAgent { + NSMutableArray *libraries = + [[NSMutableArray alloc] initWithCapacity:sLibraryVersions.count]; + for (NSString *libraryName in sLibraryVersions) { + [libraries + addObject:[NSString stringWithFormat:@"%@/%@", libraryName, sLibraryVersions[libraryName]]]; + } + [libraries sortUsingSelector:@selector(localizedCaseInsensitiveCompare:)]; + return [libraries componentsJoinedByString:@" "]; +} + +- (void)checkExpectedBundleID { + NSArray *bundles = [FIRBundleUtil relevantBundles]; + NSString *expectedBundleID = [self expectedBundleID]; + // The checking is only done when the bundle ID is provided in the serviceInfo dictionary for + // backward compatibility. + if (expectedBundleID != nil && + ![FIRBundleUtil hasBundleIdentifier:expectedBundleID inBundles:bundles]) { + FIRLogError(kFIRLoggerCore, @"I-COR000008", + @"The project's Bundle ID is inconsistent with " + @"either the Bundle ID in '%@.%@', or the Bundle ID in the options if you are " + @"using a customized options. To ensure that everything can be configured " + @"correctly, you may need to make the Bundle IDs consistent. To continue with this " + @"plist file, you may change your app's bundle identifier to '%@'. Or you can " + @"download a new configuration file that matches your bundle identifier from %@ " + @"and replace the current one.", + kServiceInfoFileName, kServiceInfoFileType, expectedBundleID, kPlistURL); + } +} + +// TODO: Remove once SDKs transition to Auth interop library. +- (nullable NSString *)getUID { + if (!_getUIDImplementation) { + FIRLogWarning(kFIRLoggerCore, @"I-COR000025", @"FIRAuth getUID implementation wasn't set."); + return nil; + } + return _getUIDImplementation(); +} + +#pragma mark - private - App ID Validation + +/** + * Validates the format and fingerprint of the app ID contained in GOOGLE_APP_ID in the plist file. + * This is the main method for validating app ID. + * + * @return YES if the app ID fulfills the expected format and fingerprint, NO otherwise. + */ +- (BOOL)isAppIDValid { + NSString *appID = _options.googleAppID; + BOOL isValid = [FIRApp validateAppID:appID]; + if (!isValid) { + NSString *expectedBundleID = [self expectedBundleID]; + FIRLogError(kFIRLoggerCore, @"I-COR000009", + @"The GOOGLE_APP_ID either in the plist file " + @"'%@.%@' or the one set in the customized options is invalid. If you are using " + @"the plist file, use the iOS version of bundle identifier to download the file, " + @"and do not manually edit the GOOGLE_APP_ID. You may change your app's bundle " + @"identifier to '%@'. Or you can download a new configuration file that matches " + @"your bundle identifier from %@ and replace the current one.", + kServiceInfoFileName, kServiceInfoFileType, expectedBundleID, kPlistURL); + }; + return isValid; +} + ++ (BOOL)validateAppID:(NSString *)appID { + // Failing validation only occurs when we are sure we are looking at a V2 app ID and it does not + // have a valid fingerprint, otherwise we just warn about the potential issue. + if (!appID.length) { + return NO; + } + + // All app IDs must start with at least ":". + NSString *const versionPattern = @"^\\d+:"; + NSRegularExpression *versionRegex = + [NSRegularExpression regularExpressionWithPattern:versionPattern options:0 error:NULL]; + if (!versionRegex) { + return NO; + } + + NSRange appIDRange = NSMakeRange(0, appID.length); + NSArray *versionMatches = [versionRegex matchesInString:appID options:0 range:appIDRange]; + if (versionMatches.count != 1) { + return NO; + } + + NSRange versionRange = [(NSTextCheckingResult *)versionMatches.firstObject range]; + NSString *appIDVersion = [appID substringWithRange:versionRange]; + NSArray *knownVersions = @[ @"1:" ]; + if (![knownVersions containsObject:appIDVersion]) { + // Permit unknown yet properly formatted app ID versions. + return YES; + } + + if (![FIRApp validateAppIDFormat:appID withVersion:appIDVersion]) { + return NO; + } + + if (![FIRApp validateAppIDFingerprint:appID withVersion:appIDVersion]) { + return NO; + } + + return YES; +} + ++ (NSString *)actualBundleID { + return [[NSBundle mainBundle] bundleIdentifier]; +} + +/** + * Validates that the format of the app ID string is what is expected based on the supplied version. + * The version must end in ":". + * + * For v1 app ids the format is expected to be + * '::ios:'. + * + * This method does not verify that the contents of the app id are correct, just that they fulfill + * the expected format. + * + * @param appID Contents of GOOGLE_APP_ID from the plist file. + * @param version Indicates what version of the app id format this string should be. + * @return YES if provided string fufills the expected format, NO otherwise. + */ ++ (BOOL)validateAppIDFormat:(NSString *)appID withVersion:(NSString *)version { + if (!appID.length || !version.length) { + return NO; + } + + if (![version hasSuffix:@":"]) { + return NO; + } + + if (![appID hasPrefix:version]) { + return NO; + } + + NSString *const pattern = @"^\\d+:ios:[a-f0-9]+$"; + NSRegularExpression *regex = + [NSRegularExpression regularExpressionWithPattern:pattern options:0 error:NULL]; + if (!regex) { + return NO; + } + + NSRange localRange = NSMakeRange(version.length, appID.length - version.length); + NSUInteger numberOfMatches = [regex numberOfMatchesInString:appID options:0 range:localRange]; + if (numberOfMatches != 1) { + return NO; + } + return YES; +} + +/** + * Validates that the fingerprint of the app ID string is what is expected based on the supplied + * version. The version must end in ":". + * + * Note that the v1 hash algorithm is not permitted on the client and cannot be fully validated. + * + * @param appID Contents of GOOGLE_APP_ID from the plist file. + * @param version Indicates what version of the app id format this string should be. + * @return YES if provided string fufills the expected fingerprint and the version is known, NO + * otherwise. + */ ++ (BOOL)validateAppIDFingerprint:(NSString *)appID withVersion:(NSString *)version { + if (!appID.length || !version.length) { + return NO; + } + + if (![version hasSuffix:@":"]) { + return NO; + } + + if (![appID hasPrefix:version]) { + return NO; + } + + // Extract the supplied fingerprint from the supplied app ID. + // This assumes the app ID format is the same for all known versions below. If the app ID format + // changes in future versions, the tokenizing of the app ID format will need to take into account + // the version of the app ID. + NSArray *components = [appID componentsSeparatedByString:@":"]; + if (components.count != 4) { + return NO; + } + + NSString *suppliedFingerprintString = components[3]; + if (!suppliedFingerprintString.length) { + return NO; + } + + uint64_t suppliedFingerprint; + NSScanner *scanner = [NSScanner scannerWithString:suppliedFingerprintString]; + if (![scanner scanHexLongLong:&suppliedFingerprint]) { + return NO; + } + + if ([version isEqual:@"1:"]) { + // The v1 hash algorithm is not permitted on the client so the actual hash cannot be validated. + return YES; + } + + // Unknown version. + return NO; +} + +- (NSString *)expectedBundleID { + return _options.bundleID; +} + +// end App ID validation + +#pragma mark - Reading From Plist & User Defaults + +/** + * Clears the data collection switch from the standard NSUserDefaults for easier testing and + * readability. + */ +- (void)clearDataCollectionSwitchFromUserDefaults { + NSString *key = + [NSString stringWithFormat:kFIRGlobalAppDataCollectionEnabledDefaultsKeyFormat, self.name]; + [[NSUserDefaults standardUserDefaults] removeObjectForKey:key]; +} + +/** + * Reads the data collection switch from the standard NSUserDefaults for easier testing and + * readability. + */ ++ (nullable NSNumber *)readDataCollectionSwitchFromUserDefaultsForApp:(FIRApp *)app { + // Read the object in user defaults, and only return if it's an NSNumber. + NSString *key = + [NSString stringWithFormat:kFIRGlobalAppDataCollectionEnabledDefaultsKeyFormat, app.name]; + id collectionEnabledDefaultsObject = [[NSUserDefaults standardUserDefaults] objectForKey:key]; + if ([collectionEnabledDefaultsObject isKindOfClass:[NSNumber class]]) { + return collectionEnabledDefaultsObject; + } + + return nil; +} + +/** + * Reads the data collection switch from the Info.plist for easier testing and readability. Will + * only read once from the plist and return the cached value. + */ ++ (nullable NSNumber *)readDataCollectionSwitchFromPlist { + static NSNumber *collectionEnabledPlistObject; + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + // Read the data from the `Info.plist`, only assign it if it's there and an NSNumber. + id plistValue = [[NSBundle mainBundle] + objectForInfoDictionaryKey:kFIRGlobalAppDataCollectionEnabledPlistKey]; + if (plistValue && [plistValue isKindOfClass:[NSNumber class]]) { + collectionEnabledPlistObject = (NSNumber *)plistValue; + } + }); + + return collectionEnabledPlistObject; +} + +#pragma mark - Sending Logs + +- (void)sendLogsWithServiceName:(NSString *)serviceName + version:(NSString *)version + error:(NSError *)error { + // If the user has manually turned off data collection, return and don't send logs. + if (![self isDataCollectionDefaultEnabled]) { + return; + } + + NSMutableDictionary *userInfo = [[NSMutableDictionary alloc] initWithDictionary:@{ + kFIRAppDiagnosticsConfigurationTypeKey : @(FIRConfigTypeSDK), + kFIRAppDiagnosticsSDKNameKey : serviceName, + kFIRAppDiagnosticsSDKVersionKey : version, + kFIRAppDiagnosticsFIRAppKey : self + }]; + if (error) { + userInfo[kFIRAppDiagnosticsErrorKey] = error; + } + [[NSNotificationCenter defaultCenter] postNotificationName:kFIRAppDiagnosticsNotification + object:nil + userInfo:userInfo]; +} + +@end diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRAppAssociationRegistration.m b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRAppAssociationRegistration.m new file mode 100644 index 0000000..2aecdab --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRAppAssociationRegistration.m @@ -0,0 +1,47 @@ +// Copyright 2017 Google +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#import "Private/FIRAppAssociationRegistration.h" + +#import + +@implementation FIRAppAssociationRegistration + ++ (nullable id)registeredObjectWithHost:(id)host + key:(NSString *)key + creationBlock:(id _Nullable (^)(void))creationBlock { + @synchronized(self) { + SEL dictKey = @selector(registeredObjectWithHost:key:creationBlock:); + NSMutableDictionary *objectsByKey = objc_getAssociatedObject(host, dictKey); + if (!objectsByKey) { + objectsByKey = [[NSMutableDictionary alloc] init]; + objc_setAssociatedObject(host, dictKey, objectsByKey, OBJC_ASSOCIATION_RETAIN_NONATOMIC); + } + id obj = objectsByKey[key]; + NSValue *creationBlockBeingCalled = [NSValue valueWithPointer:dictKey]; + if (obj) { + if ([creationBlockBeingCalled isEqual:obj]) { + [NSException raise:@"Reentering registeredObjectWithHost:key:creationBlock: not allowed" + format:@"host: %@ key: %@", host, key]; + } + return obj; + } + objectsByKey[key] = creationBlockBeingCalled; + obj = creationBlock(); + objectsByKey[key] = obj; + return obj; + } +} + +@end diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRBundleUtil.m b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRBundleUtil.m new file mode 100644 index 0000000..93ee02e --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRBundleUtil.m @@ -0,0 +1,57 @@ +// Copyright 2017 Google +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#import "Private/FIRBundleUtil.h" + +@implementation FIRBundleUtil + ++ (NSArray *)relevantBundles { + return @[ [NSBundle mainBundle], [NSBundle bundleForClass:[self class]] ]; +} + ++ (NSString *)optionsDictionaryPathWithResourceName:(NSString *)resourceName + andFileType:(NSString *)fileType + inBundles:(NSArray *)bundles { + // Loop through all bundles to find the config dict. + for (NSBundle *bundle in bundles) { + NSString *path = [bundle pathForResource:resourceName ofType:fileType]; + // Use the first one we find. + if (path) { + return path; + } + } + return nil; +} + ++ (NSArray *)relevantURLSchemes { + NSMutableArray *result = [[NSMutableArray alloc] init]; + for (NSBundle *bundle in [[self class] relevantBundles]) { + NSArray *urlTypes = [bundle objectForInfoDictionaryKey:@"CFBundleURLTypes"]; + for (NSDictionary *urlType in urlTypes) { + [result addObjectsFromArray:urlType[@"CFBundleURLSchemes"]]; + } + } + return result; +} + ++ (BOOL)hasBundleIdentifier:(NSString *)bundleIdentifier inBundles:(NSArray *)bundles { + for (NSBundle *bundle in bundles) { + if ([bundle.bundleIdentifier isEqualToString:bundleIdentifier]) { + return YES; + } + } + return NO; +} + +@end diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRComponent.m b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRComponent.m new file mode 100644 index 0000000..2474d1a --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRComponent.m @@ -0,0 +1,65 @@ +/* + * Copyright 2018 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "Private/FIRComponent.h" + +#import "Private/FIRComponentContainer.h" +#import "Private/FIRDependency.h" + +@interface FIRComponent () + +- (instancetype)initWithProtocol:(Protocol *)protocol + instantiationTiming:(FIRInstantiationTiming)instantiationTiming + dependencies:(NSArray *)dependencies + creationBlock:(FIRComponentCreationBlock)creationBlock; + +@end + +@implementation FIRComponent + ++ (instancetype)componentWithProtocol:(Protocol *)protocol + creationBlock:(FIRComponentCreationBlock)creationBlock { + return [[FIRComponent alloc] initWithProtocol:protocol + instantiationTiming:FIRInstantiationTimingLazy + dependencies:@[] + creationBlock:creationBlock]; +} + ++ (instancetype)componentWithProtocol:(Protocol *)protocol + instantiationTiming:(FIRInstantiationTiming)instantiationTiming + dependencies:(NSArray *)dependencies + creationBlock:(FIRComponentCreationBlock)creationBlock { + return [[FIRComponent alloc] initWithProtocol:protocol + instantiationTiming:instantiationTiming + dependencies:dependencies + creationBlock:creationBlock]; +} + +- (instancetype)initWithProtocol:(Protocol *)protocol + instantiationTiming:(FIRInstantiationTiming)instantiationTiming + dependencies:(NSArray *)dependencies + creationBlock:(FIRComponentCreationBlock)creationBlock { + self = [super init]; + if (self) { + _protocol = protocol; + _instantiationTiming = instantiationTiming; + _dependencies = [dependencies copy]; + _creationBlock = creationBlock; + } + return self; +} + +@end diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRComponentContainer.m b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRComponentContainer.m new file mode 100644 index 0000000..381c95c --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRComponentContainer.m @@ -0,0 +1,205 @@ +/* + * Copyright 2018 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "Private/FIRComponentContainer.h" + +#import "Private/FIRAppInternal.h" +#import "Private/FIRComponent.h" +#import "Private/FIRComponentRegistrant.h" +#import "Private/FIRLogger.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRComponentContainer () + +/// The dictionary of components that are registered for a particular app. The key is an NSString +/// of the protocol. +@property(nonatomic, strong) NSMutableDictionary *components; + +/// Cached instances of components that requested to be cached. +@property(nonatomic, strong) NSMutableDictionary *cachedInstances; + +@end + +@implementation FIRComponentContainer + +// Collection of all classes that register to provide components. +static NSMutableSet *gFIRComponentRegistrants; + +#pragma mark - Public Registration + ++ (void)registerAsComponentRegistrant:(Class)klass { + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + gFIRComponentRegistrants = [[NSMutableSet alloc] init]; + }); + + [self registerAsComponentRegistrant:klass inSet:gFIRComponentRegistrants]; +} + ++ (void)registerAsComponentRegistrant:(Class)klass inSet:(NSMutableSet *)allRegistrants { + // Validate the array to store the components is initialized. + if (!allRegistrants) { + FIRLogWarning(kFIRLoggerCore, @"I-COR000025", + @"Attempted to store registered components in an empty set."); + return; + } + + // Ensure the class given conforms to the proper protocol. + if (![klass conformsToProtocol:@protocol(FIRComponentRegistrant)] || + ![klass respondsToSelector:@selector(componentsToRegister)]) { + [NSException raise:NSInvalidArgumentException + format: + @"Class %@ attempted to register components, but it does not conform to " + @"`FIRComponentRegistrant` or provide a `componentsToRegister:` method.", + klass]; + } + + [allRegistrants addObject:klass]; +} + +#pragma mark - Internal Initialization + +- (instancetype)initWithApp:(FIRApp *)app { + return [self initWithApp:app registrants:gFIRComponentRegistrants]; +} + +- (instancetype)initWithApp:(FIRApp *)app registrants:(NSMutableSet *)allRegistrants { + self = [super init]; + if (self) { + _app = app; + _cachedInstances = [NSMutableDictionary dictionary]; + _components = [NSMutableDictionary dictionary]; + + [self populateComponentsFromRegisteredClasses:allRegistrants forApp:app]; + } + return self; +} + +- (void)populateComponentsFromRegisteredClasses:(NSSet *)classes forApp:(FIRApp *)app { + // Loop through the verified component registrants and populate the components array. + for (Class klass in classes) { + // Loop through all the components being registered and store them as appropriate. + // Classes which do not provide functionality should use a dummy FIRComponentRegistrant + // protocol. + for (FIRComponent *component in [klass componentsToRegister]) { + // Check if the component has been registered before, and error out if so. + NSString *protocolName = NSStringFromProtocol(component.protocol); + if (self.components[protocolName]) { + FIRLogError(kFIRLoggerCore, @"I-COR000029", + @"Attempted to register protocol %@, but it already has an implementation.", + protocolName); + continue; + } + + // Store the creation block for later usage. + self.components[protocolName] = component.creationBlock; + + // Instantiate the + BOOL shouldInstantiateEager = + (component.instantiationTiming == FIRInstantiationTimingAlwaysEager); + BOOL shouldInstantiateDefaultEager = + (component.instantiationTiming == FIRInstantiationTimingEagerInDefaultApp && + [app isDefaultApp]); + if (shouldInstantiateEager || shouldInstantiateDefaultEager) { + [self instantiateInstanceForProtocol:component.protocol withBlock:component.creationBlock]; + } + } + } +} + +#pragma mark - Instance Creation + +/// Instantiate an instance of a class that conforms to the specified protocol. +/// This will: +/// - Call the block to create an instance if possible, +/// - Validate that the instance returned conforms to the protocol it claims to, +/// - Cache the instance if the block requests it +- (nullable id)instantiateInstanceForProtocol:(Protocol *)protocol + withBlock:(FIRComponentCreationBlock)creationBlock { + if (!creationBlock) { + return nil; + } + + // Create an instance using the creation block. + BOOL shouldCache = NO; + id instance = creationBlock(self, &shouldCache); + if (!instance) { + return nil; + } + + // An instance was created, validate that it conforms to the protocol it claims to. + NSString *protocolName = NSStringFromProtocol(protocol); + if (![instance conformsToProtocol:protocol]) { + FIRLogError(kFIRLoggerCore, @"I-COR000030", + @"An instance conforming to %@ was requested, but the instance provided does not " + @"conform to the protocol", + protocolName); + } + + // The instance is ready to be returned, but check if it should be cached first before returning. + if (shouldCache) { + self.cachedInstances[protocolName] = instance; + } + + return instance; +} + +#pragma mark - Internal Retrieval + +- (nullable id)instanceForProtocol:(Protocol *)protocol { + // Check if there is a cached instance, and return it if so. + NSString *protocolName = NSStringFromProtocol(protocol); + id cachedInstance = self.cachedInstances[protocolName]; + if (cachedInstance) { + return cachedInstance; + } + + // Use the creation block to instantiate an instance and return it. + FIRComponentCreationBlock creationBlock = self.components[protocolName]; + return [self instantiateInstanceForProtocol:protocol withBlock:creationBlock]; +} + +#pragma mark - Lifecycle + +- (void)removeAllCachedInstances { + // Loop through the cache and notify each instance that is a maintainer to clean up after itself. + for (id instance in self.cachedInstances.allValues) { + if ([instance conformsToProtocol:@protocol(FIRComponentLifecycleMaintainer)] && + [instance respondsToSelector:@selector(appWillBeDeleted:)]) { + [instance appWillBeDeleted:self.app]; + } + } + + [self.cachedInstances removeAllObjects]; +} + +#pragma mark - Testing Initializers + +// TODO(wilsonryan): Set up a testing flag so this only is compiled in with unit tests. +/// Initialize an instance with an app and existing components. +- (instancetype)initWithApp:(FIRApp *)app + components:(NSDictionary *)components { + self = [self initWithApp:app registrants:[[NSMutableSet alloc] init]]; + if (self) { + _components = [components mutableCopy]; + } + return self; +} + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRComponentType.m b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRComponentType.m new file mode 100644 index 0000000..bdc004f --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRComponentType.m @@ -0,0 +1,28 @@ +/* + * Copyright 2018 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "Private/FIRComponentType.h" + +#import "Private/FIRComponentContainerInternal.h" + +@implementation FIRComponentType + ++ (id)instanceForProtocol:(Protocol *)protocol inContainer:(FIRComponentContainer *)container { + // Forward the call to the container. + return [container instanceForProtocol:protocol]; +} + +@end diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRConfiguration.m b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRConfiguration.m new file mode 100644 index 0000000..cd64862 --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRConfiguration.m @@ -0,0 +1,44 @@ +// Copyright 2017 Google +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#import "FIRConfiguration.h" + +extern void FIRSetLoggerLevel(FIRLoggerLevel loggerLevel); + +@implementation FIRConfiguration + ++ (instancetype)sharedInstance { + static FIRConfiguration *sharedInstance = nil; + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + sharedInstance = [[FIRConfiguration alloc] init]; + }); + return sharedInstance; +} + +- (instancetype)init { + self = [super init]; + if (self) { + _analyticsConfiguration = [FIRAnalyticsConfiguration sharedInstance]; + } + return self; +} + +- (void)setLoggerLevel:(FIRLoggerLevel)loggerLevel { + NSAssert(loggerLevel <= FIRLoggerLevelMax && loggerLevel >= FIRLoggerLevelMin, + @"Invalid logger level, %ld", (long)loggerLevel); + FIRSetLoggerLevel(loggerLevel); +} + +@end diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRDependency.m b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRDependency.m new file mode 100644 index 0000000..f979984 --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRDependency.m @@ -0,0 +1,44 @@ +/* + * Copyright 2018 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "Private/FIRDependency.h" + +@interface FIRDependency () + +- (instancetype)initWithProtocol:(Protocol *)protocol isRequired:(BOOL)required; + +@end + +@implementation FIRDependency + ++ (instancetype)dependencyWithProtocol:(Protocol *)protocol { + return [[self alloc] initWithProtocol:protocol isRequired:YES]; +} + ++ (instancetype)dependencyWithProtocol:(Protocol *)protocol isRequired:(BOOL)required { + return [[self alloc] initWithProtocol:protocol isRequired:required]; +} + +- (instancetype)initWithProtocol:(Protocol *)protocol isRequired:(BOOL)required { + self = [super init]; + if (self) { + _protocol = protocol; + _isRequired = required; + } + return self; +} + +@end diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRErrors.m b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRErrors.m new file mode 100644 index 0000000..6d6d52d --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRErrors.m @@ -0,0 +1,29 @@ +// Copyright 2017 Google +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#import "Private/FIRErrors.h" + +NSString *const kFirebaseErrorDomain = @"com.firebase"; +NSString *const kFirebaseAdMobErrorDomain = @"com.firebase.admob"; +NSString *const kFirebaseAppInviteErrorDomain = @"com.firebase.appinvite"; +NSString *const kFirebaseAuthErrorDomain = @"com.firebase.auth"; +NSString *const kFirebaseCloudMessagingErrorDomain = @"com.firebase.cloudmessaging"; +NSString *const kFirebaseConfigErrorDomain = @"com.firebase.config"; +NSString *const kFirebaseCoreErrorDomain = @"com.firebase.core"; +NSString *const kFirebaseCrashReportingErrorDomain = @"com.firebase.crashreporting"; +NSString *const kFirebaseDatabaseErrorDomain = @"com.firebase.database"; +NSString *const kFirebaseDurableDeepLinkErrorDomain = @"com.firebase.durabledeeplink"; +NSString *const kFirebaseInstanceIDErrorDomain = @"com.firebase.instanceid"; +NSString *const kFirebasePerfErrorDomain = @"com.firebase.perf"; +NSString *const kFirebaseStorageErrorDomain = @"com.firebase.storage"; diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRLogger.m b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRLogger.m new file mode 100644 index 0000000..d1e3b37 --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRLogger.m @@ -0,0 +1,185 @@ +// Copyright 2017 Google +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#import "Private/FIRLogger.h" + +#import +#import +#import + +#import "Private/FIRVersion.h" + +FIRLoggerService kFIRLoggerABTesting = @"[Firebase/ABTesting]"; +FIRLoggerService kFIRLoggerAdMob = @"[Firebase/AdMob]"; +FIRLoggerService kFIRLoggerAnalytics = @"[Firebase/Analytics]"; +FIRLoggerService kFIRLoggerAuth = @"[Firebase/Auth]"; +FIRLoggerService kFIRLoggerCore = @"[Firebase/Core]"; +FIRLoggerService kFIRLoggerCrash = @"[Firebase/Crash]"; +FIRLoggerService kFIRLoggerDatabase = @"[Firebase/Database]"; +FIRLoggerService kFIRLoggerDynamicLinks = @"[Firebase/DynamicLinks]"; +FIRLoggerService kFIRLoggerFirestore = @"[Firebase/Firestore]"; +FIRLoggerService kFIRLoggerInstanceID = @"[Firebase/InstanceID]"; +FIRLoggerService kFIRLoggerInvites = @"[Firebase/Invites]"; +FIRLoggerService kFIRLoggerMLKit = @"[Firebase/MLKit]"; +FIRLoggerService kFIRLoggerMessaging = @"[Firebase/Messaging]"; +FIRLoggerService kFIRLoggerPerf = @"[Firebase/Performance]"; +FIRLoggerService kFIRLoggerRemoteConfig = @"[Firebase/RemoteConfig]"; +FIRLoggerService kFIRLoggerStorage = @"[Firebase/Storage]"; +FIRLoggerService kFIRLoggerSwizzler = @"[FirebaseSwizzlingUtilities]"; + +/// Arguments passed on launch. +NSString *const kFIRDisableDebugModeApplicationArgument = @"-FIRDebugDisabled"; +NSString *const kFIREnableDebugModeApplicationArgument = @"-FIRDebugEnabled"; +NSString *const kFIRLoggerForceSDTERRApplicationArgument = @"-FIRLoggerForceSTDERR"; + +/// Key for the debug mode bit in NSUserDefaults. +NSString *const kFIRPersistedDebugModeKey = @"/google/firebase/debug_mode"; + +/// NSUserDefaults that should be used to store and read variables. If nil, `standardUserDefaults` +/// will be used. +static NSUserDefaults *sFIRLoggerUserDefaults; + +static dispatch_once_t sFIRLoggerOnceToken; + +// The sFIRAnalyticsDebugMode flag is here to support the -FIRDebugEnabled/-FIRDebugDisabled +// flags used by Analytics. Users who use those flags expect Analytics to log verbosely, +// while the rest of Firebase logs at the default level. This flag is introduced to support +// that behavior. +static BOOL sFIRAnalyticsDebugMode; + +#ifdef DEBUG +/// The regex pattern for the message code. +static NSString *const kMessageCodePattern = @"^I-[A-Z]{3}[0-9]{6}$"; +static NSRegularExpression *sMessageCodeRegex; +#endif + +void FIRLoggerInitializeASL() { + dispatch_once(&sFIRLoggerOnceToken, ^{ + // Register Firebase Version with GULLogger. + GULLoggerRegisterVersion(FIRVersionString); + + // Override the aslOptions to ASL_OPT_STDERR if the override argument is passed in. + NSArray *arguments = [NSProcessInfo processInfo].arguments; + BOOL overrideSTDERR = [arguments containsObject:kFIRLoggerForceSDTERRApplicationArgument]; + + // Use the standard NSUserDefaults if it hasn't been explicitly set. + if (sFIRLoggerUserDefaults == nil) { + sFIRLoggerUserDefaults = [NSUserDefaults standardUserDefaults]; + } + + BOOL forceDebugMode = NO; + BOOL debugMode = [sFIRLoggerUserDefaults boolForKey:kFIRPersistedDebugModeKey]; + if ([arguments containsObject:kFIRDisableDebugModeApplicationArgument]) { // Default mode + [sFIRLoggerUserDefaults removeObjectForKey:kFIRPersistedDebugModeKey]; + } else if ([arguments containsObject:kFIREnableDebugModeApplicationArgument] || + debugMode) { // Debug mode + [sFIRLoggerUserDefaults setBool:YES forKey:kFIRPersistedDebugModeKey]; + forceDebugMode = YES; + } + GULLoggerInitializeASL(); + if (overrideSTDERR) { + GULLoggerEnableSTDERR(); + } + if (forceDebugMode) { + GULLoggerForceDebug(); + } + }); +} + +__attribute__((no_sanitize("thread"))) void FIRSetAnalyticsDebugMode(BOOL analyticsDebugMode) { + sFIRAnalyticsDebugMode = analyticsDebugMode; +} + +void FIRSetLoggerLevel(FIRLoggerLevel loggerLevel) { + FIRLoggerInitializeASL(); + GULSetLoggerLevel((GULLoggerLevel)loggerLevel); +} + +#ifdef DEBUG +void FIRResetLogger() { + extern void GULResetLogger(void); + sFIRLoggerOnceToken = 0; + [sFIRLoggerUserDefaults removeObjectForKey:kFIRPersistedDebugModeKey]; + sFIRLoggerUserDefaults = nil; + GULResetLogger(); +} + +void FIRSetLoggerUserDefaults(NSUserDefaults *defaults) { + sFIRLoggerUserDefaults = defaults; +} +#endif + +/** + * Check if the level is high enough to be loggable. + * + * Analytics can override the log level with an intentional race condition. + * Add the attribute to get a clean thread sanitizer run. + */ +__attribute__((no_sanitize("thread"))) BOOL FIRIsLoggableLevel(FIRLoggerLevel loggerLevel, + BOOL analyticsComponent) { + FIRLoggerInitializeASL(); + if (sFIRAnalyticsDebugMode && analyticsComponent) { + return YES; + } + return GULIsLoggableLevel((GULLoggerLevel)loggerLevel); +} + +void FIRLogBasic(FIRLoggerLevel level, + FIRLoggerService service, + NSString *messageCode, + NSString *message, + va_list args_ptr) { + FIRLoggerInitializeASL(); + GULLogBasic((GULLoggerLevel)level, service, + sFIRAnalyticsDebugMode && [kFIRLoggerAnalytics isEqualToString:service], messageCode, + message, args_ptr); +} + +/** + * Generates the logging functions using macros. + * + * Calling FIRLogError(kFIRLoggerCore, @"I-COR000001", @"Configure %@ failed.", @"blah") shows: + * yyyy-mm-dd hh:mm:ss.SSS sender[PID] [Firebase/Core][I-COR000001] Configure blah failed. + * Calling FIRLogDebug(kFIRLoggerCore, @"I-COR000001", @"Configure succeed.") shows: + * yyyy-mm-dd hh:mm:ss.SSS sender[PID] [Firebase/Core][I-COR000001] Configure succeed. + */ +#define FIR_LOGGING_FUNCTION(level) \ + void FIRLog##level(FIRLoggerService service, NSString *messageCode, NSString *message, ...) { \ + va_list args_ptr; \ + va_start(args_ptr, message); \ + FIRLogBasic(FIRLoggerLevel##level, service, messageCode, message, args_ptr); \ + va_end(args_ptr); \ + } + +FIR_LOGGING_FUNCTION(Error) +FIR_LOGGING_FUNCTION(Warning) +FIR_LOGGING_FUNCTION(Notice) +FIR_LOGGING_FUNCTION(Info) +FIR_LOGGING_FUNCTION(Debug) + +#undef FIR_MAKE_LOGGER + +#pragma mark - FIRLoggerWrapper + +@implementation FIRLoggerWrapper + ++ (void)logWithLevel:(FIRLoggerLevel)level + withService:(FIRLoggerService)service + withCode:(NSString *)messageCode + withMessage:(NSString *)message + withArgs:(va_list)args { + FIRLogBasic(level, service, messageCode, message, args); +} + +@end diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/FIROptions.m b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIROptions.m new file mode 100644 index 0000000..db83d9c --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIROptions.m @@ -0,0 +1,444 @@ +// Copyright 2017 Google +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#import "Private/FIRAppInternal.h" +#import "Private/FIRBundleUtil.h" +#import "Private/FIRErrors.h" +#import "Private/FIRLogger.h" +#import "Private/FIROptionsInternal.h" + +// Keys for the strings in the plist file. +NSString *const kFIRAPIKey = @"API_KEY"; +NSString *const kFIRTrackingID = @"TRACKING_ID"; +NSString *const kFIRGoogleAppID = @"GOOGLE_APP_ID"; +NSString *const kFIRClientID = @"CLIENT_ID"; +NSString *const kFIRGCMSenderID = @"GCM_SENDER_ID"; +NSString *const kFIRAndroidClientID = @"ANDROID_CLIENT_ID"; +NSString *const kFIRDatabaseURL = @"DATABASE_URL"; +NSString *const kFIRStorageBucket = @"STORAGE_BUCKET"; +// The key to locate the expected bundle identifier in the plist file. +NSString *const kFIRBundleID = @"BUNDLE_ID"; +// The key to locate the project identifier in the plist file. +NSString *const kFIRProjectID = @"PROJECT_ID"; + +NSString *const kFIRIsMeasurementEnabled = @"IS_MEASUREMENT_ENABLED"; +NSString *const kFIRIsAnalyticsCollectionEnabled = @"FIREBASE_ANALYTICS_COLLECTION_ENABLED"; +NSString *const kFIRIsAnalyticsCollectionDeactivated = @"FIREBASE_ANALYTICS_COLLECTION_DEACTIVATED"; + +NSString *const kFIRIsAnalyticsEnabled = @"IS_ANALYTICS_ENABLED"; +NSString *const kFIRIsSignInEnabled = @"IS_SIGNIN_ENABLED"; + +// Library version ID. +NSString *const kFIRLibraryVersionID = + @"5" // Major version (one or more digits) + @"01" // Minor version (exactly 2 digits) + @"07" // Build number (exactly 2 digits) + @"000"; // Fixed "000" +// Plist file name. +NSString *const kServiceInfoFileName = @"GoogleService-Info"; +// Plist file type. +NSString *const kServiceInfoFileType = @"plist"; + +// Exception raised from attempting to modify a FIROptions after it's been copied to a FIRApp. +NSString *const kFIRExceptionBadModification = + @"Attempted to modify options after it's set on FIRApp. Please modify all properties before " + @"initializing FIRApp."; + +@interface FIROptions () + +/** + * This property maintains the actual configuration key-value pairs. + */ +@property(nonatomic, readwrite) NSMutableDictionary *optionsDictionary; + +/** + * Calls `analyticsOptionsDictionaryWithInfoDictionary:` using [NSBundle mainBundle].infoDictionary. + * It combines analytics options from both the infoDictionary and the GoogleService-Info.plist. + * Values which are present in the main plist override values from the GoogleService-Info.plist. + */ +@property(nonatomic, readonly) NSDictionary *analyticsOptionsDictionary; + +/** + * Combination of analytics options from both the infoDictionary and the GoogleService-Info.plist. + * Values which are present in the infoDictionary override values from the GoogleService-Info.plist. + */ +- (NSDictionary *)analyticsOptionsDictionaryWithInfoDictionary:(NSDictionary *)infoDictionary; + +/** + * Throw exception if editing is locked when attempting to modify an option. + */ +- (void)checkEditingLocked; + +@end + +@implementation FIROptions { + /// Backing variable for self.analyticsOptionsDictionary. + NSDictionary *_analyticsOptionsDictionary; +} + +static FIROptions *sDefaultOptions = nil; +static NSDictionary *sDefaultOptionsDictionary = nil; + +#pragma mark - Public only for internal class methods + ++ (FIROptions *)defaultOptions { + if (sDefaultOptions != nil) { + return sDefaultOptions; + } + + NSDictionary *defaultOptionsDictionary = [self defaultOptionsDictionary]; + if (defaultOptionsDictionary == nil) { + return nil; + } + + sDefaultOptions = [[FIROptions alloc] initInternalWithOptionsDictionary:defaultOptionsDictionary]; + return sDefaultOptions; +} + +#pragma mark - Private class methods + ++ (void)initialize { + // Report FirebaseCore version for useragent string + NSRange major = NSMakeRange(0, 1); + NSRange minor = NSMakeRange(1, 2); + NSRange patch = NSMakeRange(3, 2); + [FIRApp + registerLibrary:@"fire-ios" + withVersion:[NSString stringWithFormat:@"%@.%d.%d", + [kFIRLibraryVersionID substringWithRange:major], + [[kFIRLibraryVersionID substringWithRange:minor] + intValue], + [[kFIRLibraryVersionID substringWithRange:patch] + intValue]]]; + NSDictionary *info = [[NSBundle mainBundle] infoDictionary]; + NSString *xcodeVersion = info[@"DTXcodeBuild"]; + NSString *sdkVersion = info[@"DTSDKBuild"]; + if (xcodeVersion) { + [FIRApp registerLibrary:@"xcode" withVersion:xcodeVersion]; + } + if (sdkVersion) { + [FIRApp registerLibrary:@"apple-sdk" withVersion:sdkVersion]; + } +} + ++ (NSDictionary *)defaultOptionsDictionary { + if (sDefaultOptionsDictionary != nil) { + return sDefaultOptionsDictionary; + } + NSString *plistFilePath = [FIROptions plistFilePathWithName:kServiceInfoFileName]; + if (plistFilePath == nil) { + return nil; + } + sDefaultOptionsDictionary = [NSDictionary dictionaryWithContentsOfFile:plistFilePath]; + if (sDefaultOptionsDictionary == nil) { + FIRLogError(kFIRLoggerCore, @"I-COR000011", + @"The configuration file is not a dictionary: " + @"'%@.%@'.", + kServiceInfoFileName, kServiceInfoFileType); + } + return sDefaultOptionsDictionary; +} + +// Returns the path of the plist file with a given file name. ++ (NSString *)plistFilePathWithName:(NSString *)fileName { + NSArray *bundles = [FIRBundleUtil relevantBundles]; + NSString *plistFilePath = + [FIRBundleUtil optionsDictionaryPathWithResourceName:fileName + andFileType:kServiceInfoFileType + inBundles:bundles]; + if (plistFilePath == nil) { + FIRLogError(kFIRLoggerCore, @"I-COR000012", @"Could not locate configuration file: '%@.%@'.", + fileName, kServiceInfoFileType); + } + return plistFilePath; +} + ++ (void)resetDefaultOptions { + sDefaultOptions = nil; + sDefaultOptionsDictionary = nil; +} + +#pragma mark - Private instance methods + +- (instancetype)initInternalWithOptionsDictionary:(NSDictionary *)optionsDictionary { + self = [super init]; + if (self) { + _optionsDictionary = [optionsDictionary mutableCopy]; + _usingOptionsFromDefaultPlist = YES; + } + return self; +} + +- (id)copyWithZone:(NSZone *)zone { + FIROptions *newOptions = [[[self class] allocWithZone:zone] init]; + if (newOptions) { + newOptions.optionsDictionary = self.optionsDictionary; + newOptions.deepLinkURLScheme = self.deepLinkURLScheme; + newOptions.editingLocked = self.isEditingLocked; + newOptions.usingOptionsFromDefaultPlist = self.usingOptionsFromDefaultPlist; + } + return newOptions; +} + +#pragma mark - Public instance methods + +- (instancetype)initWithContentsOfFile:(NSString *)plistPath { + self = [super init]; + if (self) { + if (plistPath == nil) { + FIRLogError(kFIRLoggerCore, @"I-COR000013", @"The plist file path is nil."); + return nil; + } + _optionsDictionary = [[NSDictionary dictionaryWithContentsOfFile:plistPath] mutableCopy]; + if (_optionsDictionary == nil) { + FIRLogError(kFIRLoggerCore, @"I-COR000014", + @"The configuration file at %@ does not exist or " + @"is not a well-formed plist file.", + plistPath); + return nil; + } + // TODO: Do we want to validate the dictionary here? It says we do that already in + // the public header. + } + return self; +} + +- (instancetype)initWithGoogleAppID:(NSString *)googleAppID GCMSenderID:(NSString *)GCMSenderID { + self = [super init]; + if (self) { + NSMutableDictionary *mutableOptionsDict = [NSMutableDictionary dictionary]; + [mutableOptionsDict setValue:googleAppID forKey:kFIRGoogleAppID]; + [mutableOptionsDict setValue:GCMSenderID forKey:kFIRGCMSenderID]; + [mutableOptionsDict setValue:[[NSBundle mainBundle] bundleIdentifier] forKey:kFIRBundleID]; + self.optionsDictionary = mutableOptionsDict; + } + return self; +} + +- (NSString *)APIKey { + return self.optionsDictionary[kFIRAPIKey]; +} + +- (void)checkEditingLocked { + if (self.isEditingLocked) { + [NSException raise:kFirebaseCoreErrorDomain format:kFIRExceptionBadModification]; + } +} + +- (void)setAPIKey:(NSString *)APIKey { + [self checkEditingLocked]; + _optionsDictionary[kFIRAPIKey] = [APIKey copy]; +} + +- (NSString *)clientID { + return self.optionsDictionary[kFIRClientID]; +} + +- (void)setClientID:(NSString *)clientID { + [self checkEditingLocked]; + _optionsDictionary[kFIRClientID] = [clientID copy]; +} + +- (NSString *)trackingID { + return self.optionsDictionary[kFIRTrackingID]; +} + +- (void)setTrackingID:(NSString *)trackingID { + [self checkEditingLocked]; + _optionsDictionary[kFIRTrackingID] = [trackingID copy]; +} + +- (NSString *)GCMSenderID { + return self.optionsDictionary[kFIRGCMSenderID]; +} + +- (void)setGCMSenderID:(NSString *)GCMSenderID { + [self checkEditingLocked]; + _optionsDictionary[kFIRGCMSenderID] = [GCMSenderID copy]; +} + +- (NSString *)projectID { + return self.optionsDictionary[kFIRProjectID]; +} + +- (void)setProjectID:(NSString *)projectID { + [self checkEditingLocked]; + _optionsDictionary[kFIRProjectID] = [projectID copy]; +} + +- (NSString *)androidClientID { + return self.optionsDictionary[kFIRAndroidClientID]; +} + +- (void)setAndroidClientID:(NSString *)androidClientID { + [self checkEditingLocked]; + _optionsDictionary[kFIRAndroidClientID] = [androidClientID copy]; +} + +- (NSString *)googleAppID { + return self.optionsDictionary[kFIRGoogleAppID]; +} + +- (void)setGoogleAppID:(NSString *)googleAppID { + [self checkEditingLocked]; + _optionsDictionary[kFIRGoogleAppID] = [googleAppID copy]; +} + +- (NSString *)libraryVersionID { + return kFIRLibraryVersionID; +} + +- (void)setLibraryVersionID:(NSString *)libraryVersionID { + _optionsDictionary[kFIRLibraryVersionID] = [libraryVersionID copy]; +} + +- (NSString *)databaseURL { + return self.optionsDictionary[kFIRDatabaseURL]; +} + +- (void)setDatabaseURL:(NSString *)databaseURL { + [self checkEditingLocked]; + + _optionsDictionary[kFIRDatabaseURL] = [databaseURL copy]; +} + +- (NSString *)storageBucket { + return self.optionsDictionary[kFIRStorageBucket]; +} + +- (void)setStorageBucket:(NSString *)storageBucket { + [self checkEditingLocked]; + _optionsDictionary[kFIRStorageBucket] = [storageBucket copy]; +} + +- (void)setDeepLinkURLScheme:(NSString *)deepLinkURLScheme { + [self checkEditingLocked]; + _deepLinkURLScheme = [deepLinkURLScheme copy]; +} + +- (NSString *)bundleID { + return self.optionsDictionary[kFIRBundleID]; +} + +- (void)setBundleID:(NSString *)bundleID { + [self checkEditingLocked]; + _optionsDictionary[kFIRBundleID] = [bundleID copy]; +} + +#pragma mark - Internal instance methods + +- (NSDictionary *)analyticsOptionsDictionaryWithInfoDictionary:(NSDictionary *)infoDictionary { + if (_analyticsOptionsDictionary == nil) { + NSMutableDictionary *tempAnalyticsOptions = [[NSMutableDictionary alloc] init]; + NSArray *measurementKeys = @[ + kFIRIsMeasurementEnabled, kFIRIsAnalyticsCollectionEnabled, + kFIRIsAnalyticsCollectionDeactivated + ]; + for (NSString *key in measurementKeys) { + id value = infoDictionary[key] ?: self.optionsDictionary[key] ?: nil; + if (!value) { + continue; + } + tempAnalyticsOptions[key] = value; + } + _analyticsOptionsDictionary = tempAnalyticsOptions; + } + return _analyticsOptionsDictionary; +} + +- (NSDictionary *)analyticsOptionsDictionary { + return [self analyticsOptionsDictionaryWithInfoDictionary:[NSBundle mainBundle].infoDictionary]; +} + +/** + * Whether or not Measurement was enabled. Measurement is enabled unless explicitly disabled in + * GoogleService-Info.plist. This uses the old plist flag IS_MEASUREMENT_ENABLED, which should still + * be supported. + */ +- (BOOL)isMeasurementEnabled { + if (self.isAnalyticsCollectionDeactivated) { + return NO; + } + NSNumber *value = self.analyticsOptionsDictionary[kFIRIsMeasurementEnabled]; + if (value == nil) { + // TODO: This could probably be cleaned up since FIROptions shouldn't know about FIRApp or have + // to check if it's the default app. The FIROptions instance can't be modified after + // `+configure` is called, so it's not a good place to copy it either in case the flag is + // changed at runtime. + + // If no values are set for Analytics, fall back to the global collection switch in FIRApp. + // Analytics only supports the default FIRApp, so check that first. + if (![FIRApp isDefaultAppConfigured]) { + return NO; + } + + // Fall back to the default app's collection switch when the key is not in the dictionary. + return [FIRApp defaultApp].isDataCollectionDefaultEnabled; + } + return [value boolValue]; +} + +- (BOOL)isAnalyticsCollectionExpicitlySet { + // If it's de-activated, it classifies as explicity set. If not, it's not a good enough indication + // that the developer wants FirebaseAnalytics enabled so continue checking. + if (self.isAnalyticsCollectionDeactivated) { + return YES; + } + + // Check if the current Analytics flag is set. + id collectionEnabledObject = self.analyticsOptionsDictionary[kFIRIsAnalyticsCollectionEnabled]; + if (collectionEnabledObject && [collectionEnabledObject isKindOfClass:[NSNumber class]]) { + // It doesn't matter what the value is, it's explicitly set. + return YES; + } + + // Check if the old measurement flag is set. + id measurementEnabledObject = self.analyticsOptionsDictionary[kFIRIsMeasurementEnabled]; + if (measurementEnabledObject && [measurementEnabledObject isKindOfClass:[NSNumber class]]) { + // It doesn't matter what the value is, it's explicitly set. + return YES; + } + + // No flags are set to explicitly enable or disable FirebaseAnalytics. + return NO; +} + +- (BOOL)isAnalyticsCollectionEnabled { + if (self.isAnalyticsCollectionDeactivated) { + return NO; + } + NSNumber *value = self.analyticsOptionsDictionary[kFIRIsAnalyticsCollectionEnabled]; + if (value == nil) { + return self.isMeasurementEnabled; // Fall back to older plist flag. + } + return [value boolValue]; +} + +- (BOOL)isAnalyticsCollectionDeactivated { + NSNumber *value = self.analyticsOptionsDictionary[kFIRIsAnalyticsCollectionDeactivated]; + if (value == nil) { + return NO; // Analytics Collection is not deactivated when the key is not in the dictionary. + } + return [value boolValue]; +} + +- (BOOL)isAnalyticsEnabled { + return [self.optionsDictionary[kFIRIsAnalyticsEnabled] boolValue]; +} + +- (BOOL)isSignInEnabled { + return [self.optionsDictionary[kFIRIsSignInEnabled] boolValue]; +} + +@end diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRVersion.m b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRVersion.m new file mode 100644 index 0000000..ec0f6ba --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/FIRVersion.m @@ -0,0 +1,33 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef Firebase_VERSION +#error "Firebase_VERSION is not defined: add -DFirebase_VERSION=... to the build invocation" +#endif + +#ifndef FIRCore_VERSION +#error "FIRCore_VERSION is not defined: add -DFIRCore_VERSION=... to the build invocation" +#endif + +// The following two macros supply the incantation so that the C +// preprocessor does not try to parse the version as a floating +// point number. See +// https://www.guyrutenberg.com/2008/12/20/expanding-macros-into-string-constants-in-c/ +#define STR(x) STR_EXPAND(x) +#define STR_EXPAND(x) #x + +const char *const FIRVersionString = (const char *const)STR(Firebase_VERSION); +const char *const FIRCoreVersionString = (const char *const)STR(FIRCore_VERSION); diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRAnalyticsConfiguration+Internal.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRAnalyticsConfiguration+Internal.h new file mode 100644 index 0000000..be624b4 --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRAnalyticsConfiguration+Internal.h @@ -0,0 +1,49 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAnalyticsConfiguration.h" + +/// Values stored in analyticsEnabledState. Never alter these constants since they must match with +/// values persisted to disk. +typedef NS_ENUM(int64_t, FIRAnalyticsEnabledState) { + // 0 is the default value for keys not found stored in persisted config, so it cannot represent + // kFIRAnalyticsEnabledStateSetNo. It must represent kFIRAnalyticsEnabledStateNotSet. + kFIRAnalyticsEnabledStateNotSet = 0, + kFIRAnalyticsEnabledStateSetYes = 1, + kFIRAnalyticsEnabledStateSetNo = 2, +}; + +/// The user defaults key for the persisted measurementEnabledState value. FIRAPersistedConfig reads +/// measurementEnabledState using this same key. +static NSString *const kFIRAPersistedConfigMeasurementEnabledStateKey = + @"/google/measurement/measurement_enabled_state"; + +static NSString *const kFIRAnalyticsConfigurationSetEnabledNotification = + @"FIRAnalyticsConfigurationSetEnabledNotification"; +static NSString *const kFIRAnalyticsConfigurationSetMinimumSessionIntervalNotification = + @"FIRAnalyticsConfigurationSetMinimumSessionIntervalNotification"; +static NSString *const kFIRAnalyticsConfigurationSetSessionTimeoutIntervalNotification = + @"FIRAnalyticsConfigurationSetSessionTimeoutIntervalNotification"; + +@interface FIRAnalyticsConfiguration (Internal) + +/// Sets whether analytics collection is enabled for this app on this device, and a flag to persist +/// the value or not. The setting should not be persisted if being set by the global data collection +/// flag. +- (void)setAnalyticsCollectionEnabled:(BOOL)analyticsCollectionEnabled + persistSetting:(BOOL)shouldPersist; + +@end diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRAppAssociationRegistration.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRAppAssociationRegistration.h new file mode 100644 index 0000000..3fc69c6 --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRAppAssociationRegistration.h @@ -0,0 +1,49 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +// TODO: Remove this once Auth moves over to Core's instance registration system. +/** @class FIRAppAssociationRegistration + @brief Manages object associations as a singleton-dependent: At most one object is + registered for any given host/key pair, and the object shall be created on-the-fly when + asked for. + */ +@interface FIRAppAssociationRegistration : NSObject + +/** @fn registeredObjectWithHost:key:creationBlock: + @brief Retrieves the registered object with a particular host and key. + @param host The host object. + @param key The key to specify the registered object on the host. + @param creationBlock The block to return the object to be registered if not already. + The block is executed immediately before this method returns if it is executed at all. + It can also be executed multiple times across different method invocations if previous + execution of the block returns @c nil. + @return The registered object for the host/key pair, or @c nil if no object is registered + and @c creationBlock returns @c nil. + @remarks The method is thread-safe but non-reentrant in the sense that attempting to call this + method again within the @c creationBlock with the same host/key pair raises an exception. + The registered object is retained by the host. + */ ++ (nullable ObjectType)registeredObjectWithHost:(id)host + key:(NSString *)key + creationBlock:(ObjectType _Nullable (^)(void))creationBlock; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRAppInternal.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRAppInternal.h new file mode 100644 index 0000000..e1aa65d --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRAppInternal.h @@ -0,0 +1,222 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRApp.h" +#import "FIRErrors.h" + +@class FIRComponentContainer; +@protocol FIRCoreConfigurable; + +/** + * The internal interface to FIRApp. This is meant for first-party integrators, who need to receive + * FIRApp notifications, log info about the success or failure of their configuration, and access + * other internal functionality of FIRApp. + * + * TODO(b/28296561): Restructure this header. + */ +NS_ASSUME_NONNULL_BEGIN + +typedef NS_ENUM(NSInteger, FIRConfigType) { + FIRConfigTypeCore = 1, + FIRConfigTypeSDK = 2, +}; + +/** + * Names of services provided by Firebase. + */ +extern NSString *const kFIRServiceAdMob; +extern NSString *const kFIRServiceAuth; +extern NSString *const kFIRServiceAuthUI; +extern NSString *const kFIRServiceCrash; +extern NSString *const kFIRServiceDatabase; +extern NSString *const kFIRServiceDynamicLinks; +extern NSString *const kFIRServiceInstanceID; +extern NSString *const kFIRServiceInvites; +extern NSString *const kFIRServiceMessaging; +extern NSString *const kFIRServiceMeasurement; +extern NSString *const kFIRServiceRemoteConfig; +extern NSString *const kFIRServiceStorage; + +/** + * Names of services provided by the Google pod, but logged by the Firebase pod. + */ +extern NSString *const kGGLServiceAnalytics; +extern NSString *const kGGLServiceSignIn; + +extern NSString *const kFIRDefaultAppName; +extern NSString *const kFIRAppReadyToConfigureSDKNotification; +extern NSString *const kFIRAppDeleteNotification; +extern NSString *const kFIRAppIsDefaultAppKey; +extern NSString *const kFIRAppNameKey; +extern NSString *const kFIRGoogleAppIDKey; + +/** + * The format string for the User Defaults key used for storing the data collection enabled flag. + * This includes formatting to append the Firebase App's name. + */ +extern NSString *const kFIRGlobalAppDataCollectionEnabledDefaultsKeyFormat; + +/** + * The plist key used for storing the data collection enabled flag. + */ +extern NSString *const kFIRGlobalAppDataCollectionEnabledPlistKey; + +/** + * A notification fired containing diagnostic information when SDK errors occur. + */ +extern NSString *const kFIRAppDiagnosticsNotification; + +/** @var FIRAuthStateDidChangeInternalNotification + @brief The name of the @c NSNotificationCenter notification which is posted when the auth state + changes (e.g. a new token has been produced, a user logs in or out). The object parameter of + the notification is a dictionary possibly containing the key: + @c FIRAuthStateDidChangeInternalNotificationTokenKey (the new access token.) If it does not + contain this key it indicates a sign-out event took place. + */ +extern NSString *const FIRAuthStateDidChangeInternalNotification; + +/** @var FIRAuthStateDidChangeInternalNotificationTokenKey + @brief A key present in the dictionary object parameter of the + @c FIRAuthStateDidChangeInternalNotification notification. The value associated with this + key will contain the new access token. + */ +extern NSString *const FIRAuthStateDidChangeInternalNotificationTokenKey; + +/** @var FIRAuthStateDidChangeInternalNotificationAppKey + @brief A key present in the dictionary object parameter of the + @c FIRAuthStateDidChangeInternalNotification notification. The value associated with this + key will contain the FIRApp associated with the auth instance. + */ +extern NSString *const FIRAuthStateDidChangeInternalNotificationAppKey; + +/** @var FIRAuthStateDidChangeInternalNotificationUIDKey + @brief A key present in the dictionary object parameter of the + @c FIRAuthStateDidChangeInternalNotification notification. The value associated with this + key will contain the new user's UID (or nil if there is no longer a user signed in). + */ +extern NSString *const FIRAuthStateDidChangeInternalNotificationUIDKey; + +/** @typedef FIRTokenCallback + @brief The type of block which gets called when a token is ready. + */ +typedef void (^FIRTokenCallback)(NSString *_Nullable token, NSError *_Nullable error); + +/** @typedef FIRAppGetTokenImplementation + @brief The type of block which can provide an implementation for the @c getTokenWithCallback: + method. + @param forceRefresh Forces the token to be refreshed. + @param callback The block which should be invoked when the async call completes. + */ +typedef void (^FIRAppGetTokenImplementation)(BOOL forceRefresh, FIRTokenCallback callback); + +/** @typedef FIRAppGetUID + @brief The type of block which can provide an implementation for the @c getUID method. + */ +typedef NSString *_Nullable (^FIRAppGetUIDImplementation)(void); + +@interface FIRApp () + +/** + * A flag indicating if this is the default app (has the default app name). + */ +@property(nonatomic, readonly) BOOL isDefaultApp; + +/** @property getTokenImplementation + @brief Gets or sets the block to use for the implementation of + @c getTokenForcingRefresh:withCallback: + */ +@property(nonatomic, copy) FIRAppGetTokenImplementation getTokenImplementation; + +/** @property getUIDImplementation + @brief Gets or sets the block to use for the implementation of @c getUID. + */ +@property(nonatomic, copy) FIRAppGetUIDImplementation getUIDImplementation; + +/* + * The container of interop SDKs for this app. + */ +@property(nonatomic) FIRComponentContainer *container; + +/** + * Creates an error for failing to configure a subspec service. This method is called by each + * FIRApp notification listener. + */ ++ (NSError *)errorForSubspecConfigurationFailureWithDomain:(NSString *)domain + errorCode:(FIRErrorCode)code + service:(NSString *)service + reason:(NSString *)reason; +/** + * Checks if the default app is configured without trying to configure it. + */ ++ (BOOL)isDefaultAppConfigured; + +/** + * Register a class that conforms to `FIRCoreConfigurable`. Each SDK should have one class that + * registers in order to provide critical information for interoperability and lifecycle events. + * TODO(wilsonryan): Write more documentation. + */ ++ (void)registerAsConfigurable:(Class)klass; + +/** + * Registers a given third-party library with the given version number to be reported for + * analyitcs. + * + * @param library Name of the library + * @param version Version of the library + */ +// clang-format off ++ (void)registerLibrary:(NSString *)library + withVersion:(NSString *)version NS_SWIFT_NAME(registerLibrary(_:version:)); +// clang-format on + +/** + * A concatenated string representing all the third-party libraries and version numbers. + */ ++ (NSString *)firebaseUserAgent; + +/** + * Used by each SDK to send logs about SDK configuration status to Clearcut. + */ +- (void)sendLogsWithServiceName:(NSString *)serviceName + version:(NSString *)version + error:(NSError *)error; + +/** + * Can be used by the unit tests in eack SDK to reset FIRApp. This method is thread unsafe. + */ ++ (void)resetApps; + +/** + * Can be used by the unit tests in each SDK to set customized options. + */ +- (instancetype)initInstanceWithName:(NSString *)name options:(FIROptions *)options; + +/** @fn getTokenForcingRefresh:withCallback: + @brief Retrieves the Firebase authentication token, possibly refreshing it. + @param forceRefresh Forces a token refresh. Useful if the token becomes invalid for some reason + other than an expiration. + @param callback The block to invoke when the token is available. + */ +- (void)getTokenForcingRefresh:(BOOL)forceRefresh withCallback:(FIRTokenCallback)callback; + +/** + * Expose the UID of the current user for Firestore. + */ +- (nullable NSString *)getUID; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRBundleUtil.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRBundleUtil.h new file mode 100644 index 0000000..c458a2c --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRBundleUtil.h @@ -0,0 +1,52 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +/** + * This class provides utilities for accessing resources in bundles. + */ +@interface FIRBundleUtil : NSObject + +/** + * Finds all relevant bundles, starting with [NSBundle mainBundle]. + */ ++ (NSArray *)relevantBundles; + +/** + * Reads the options dictionary from one of the provided bundles. + * + * @param resourceName The resource name, e.g. @"GoogleService-Info". + * @param fileType The file type (extension), e.g. @"plist". + * @param bundles The bundles to expect, in priority order. See also + * +[FIRBundleUtil relevantBundles]. + */ ++ (NSString *)optionsDictionaryPathWithResourceName:(NSString *)resourceName + andFileType:(NSString *)fileType + inBundles:(NSArray *)bundles; + +/** + * Finds URL schemes defined in all relevant bundles, starting with those from + * [NSBundle mainBundle]. + */ ++ (NSArray *)relevantURLSchemes; + +/** + * Checks if the bundle identifier exists in the given bundles. + */ ++ (BOOL)hasBundleIdentifier:(NSString *)bundleIdentifier inBundles:(NSArray *)bundles; + +@end diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponent.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponent.h new file mode 100644 index 0000000..cb51ee7 --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponent.h @@ -0,0 +1,91 @@ +/* + * Copyright 2018 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FIRApp; +@class FIRComponentContainer; + +NS_ASSUME_NONNULL_BEGIN + +/// Provides a system to clean up cached instances returned from the component system. +NS_SWIFT_NAME(ComponentLifecycleMaintainer) +@protocol FIRComponentLifecycleMaintainer +/// The associated app will be deleted, clean up any resources as they are about to be deallocated. +- (void)appWillBeDeleted:(FIRApp *)app; +@end + +typedef _Nullable id (^FIRComponentCreationBlock)(FIRComponentContainer *container, + BOOL *isCacheable) + NS_SWIFT_NAME(ComponentCreationBlock); + +@class FIRDependency; + +/// Describes the timing of instantiation. Note: new components should default to lazy unless there +/// is a strong reason to be eager. +typedef NS_ENUM(NSInteger, FIRInstantiationTiming) { + FIRInstantiationTimingLazy, + FIRInstantiationTimingAlwaysEager, + FIRInstantiationTimingEagerInDefaultApp +} NS_SWIFT_NAME(InstantiationTiming); + +/// A component that can be used from other Firebase SDKs. +NS_SWIFT_NAME(Component) +@interface FIRComponent : NSObject + +/// The protocol describing functionality provided from the Component. +@property(nonatomic, strong, readonly) Protocol *protocol; + +/// The timing of instantiation. +@property(nonatomic, readonly) FIRInstantiationTiming instantiationTiming; + +/// An array of dependencies for the component. +@property(nonatomic, copy, readonly) NSArray *dependencies; + +/// A block to instantiate an instance of the component with the appropriate dependencies. +@property(nonatomic, copy, readonly) FIRComponentCreationBlock creationBlock; + +// There's an issue with long NS_SWIFT_NAMES that causes compilation to fail, disable clang-format +// for the next two methods. +// clang-format off + +/// Creates a component with no dependencies that will be lazily initialized. ++ (instancetype)componentWithProtocol:(Protocol *)protocol + creationBlock:(FIRComponentCreationBlock)creationBlock +NS_SWIFT_NAME(init(_:creationBlock:)); + +/// Creates a component to be registered with the component container. +/// +/// @param protocol - The protocol describing functionality provided by the component. +/// @param instantiationTiming - When the component should be initialized. Use .lazy unless there's +/// a good reason to be instantiated earlier. +/// @param dependencies - Any dependencies the `implementingClass` has, optional or required. +/// @param creationBlock - A block to instantiate the component with a container, and if +/// @return A component that can be registered with the component container. ++ (instancetype)componentWithProtocol:(Protocol *)protocol + instantiationTiming:(FIRInstantiationTiming)instantiationTiming + dependencies:(NSArray *)dependencies + creationBlock:(FIRComponentCreationBlock)creationBlock +NS_SWIFT_NAME(init(_:instantiationTiming:dependencies:creationBlock:)); + +// clang-format on + +/// Unavailable. +- (instancetype)init NS_UNAVAILABLE; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponentContainer.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponentContainer.h new file mode 100644 index 0000000..10e2255 --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponentContainer.h @@ -0,0 +1,47 @@ +/* + * Copyright 2018 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#import + +#import "FIRComponentType.h" + +NS_ASSUME_NONNULL_BEGIN + +/// A type-safe macro to retrieve a component from a container. This should be used to retrieve +/// components instead of using the container directly. +#define FIR_COMPONENT(type, container) \ + [FIRComponentType> instanceForProtocol:@protocol(type) inContainer:container] + +@class FIRApp; + +/// A container that holds different components that are registered via the +/// `registerAsComponentRegistrant:` call. These classes should conform to `FIRComponentRegistrant` +/// in order to properly register components for Core. +NS_SWIFT_NAME(FirebaseComponentContainer) +@interface FIRComponentContainer : NSObject + +/// A weak reference to the app that an instance of the container belongs to. +@property(nonatomic, weak, readonly) FIRApp *app; + +/// Unavailable. Use the `container` property on `FIRApp`. +- (instancetype)init NS_UNAVAILABLE; + +/// Register a class to provide components for the interoperability system. The class should conform +/// to `FIRComponentRegistrant` and provide an array of `FIRComponent` objects. ++ (void)registerAsComponentRegistrant:(Class)klass; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponentContainerInternal.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponentContainerInternal.h new file mode 100644 index 0000000..bb73e7b --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponentContainerInternal.h @@ -0,0 +1,39 @@ +/* + * Copyright 2018 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#import + +#import "FIRComponent.h" +#import "FIRComponentContainer.h" + +@class FIRApp; + +NS_ASSUME_NONNULL_BEGIN + +@interface FIRComponentContainer (Private) + +/// Initializes a contain for a given app. This should only be called by the app itself. +- (instancetype)initWithApp:(FIRApp *)app; + +/// Retrieves an instance that conforms to the specified protocol. This will return `nil` if the +/// protocol wasn't registered, or if the instance couldn't instantiate for the provided app. +- (nullable id)instanceForProtocol:(Protocol *)protocol NS_SWIFT_NAME(instance(for:)); + +/// Remove all of the cached instances stored and allow them to clean up after themselves. +- (void)removeAllCachedInstances; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponentRegistrant.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponentRegistrant.h new file mode 100644 index 0000000..ad2cad2 --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponentRegistrant.h @@ -0,0 +1,38 @@ +/* + * Copyright 2018 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FIRComponentRegistrant_h +#define FIRComponentRegistrant_h + +#import + +@class FIRComponent; + +NS_ASSUME_NONNULL_BEGIN + +/// Describes functionality for SDKs registering components in the `FIRComponentContainer`. +NS_SWIFT_NAME(ComponentRegistrant) +@protocol FIRComponentRegistrant + +/// Returns one or more FIRComponents that will be registered in +/// FIRApp and participate in dependency resolution and injection. ++ (NSArray *)componentsToRegister; + +@end + +NS_ASSUME_NONNULL_END + +#endif /* FIRComponentRegistrant_h */ diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponentType.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponentType.h new file mode 100644 index 0000000..6f2aca7 --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRComponentType.h @@ -0,0 +1,34 @@ +/* + * Copyright 2018 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FIRComponentContainer; + +NS_ASSUME_NONNULL_BEGIN + +/// Do not use directly. A placeholder type in order to provide a macro that will warn users of +/// mis-matched protocols. +NS_SWIFT_NAME(ComponentType) +@interface FIRComponentType<__covariant T> : NSObject + +/// Do not use directly. A factory method to retrieve an instance that provides a specific +/// functionality. ++ (T)instanceForProtocol:(Protocol *)protocol inContainer:(FIRComponentContainer *)container; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRCoreConfigurable.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRCoreConfigurable.h new file mode 100644 index 0000000..6c2b077 --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRCoreConfigurable.h @@ -0,0 +1,38 @@ +/* + * Copyright 2018 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FIRCoreConfigurable_h +#define FIRCoreConfigurable_h + +#import + +@class FIRApp; + +NS_ASSUME_NONNULL_BEGIN + +/// Provides an interface to set up an SDK once a `FIRApp` is configured. +NS_SWIFT_NAME(CoreConfigurable) +@protocol FIRCoreConfigurable + +/// Configure the SDK if needed ahead of time. This method is called when the developer calls +/// `FirebaseApp.configure()`. ++ (void)configureWithApp:(FIRApp *)app; + +@end + +NS_ASSUME_NONNULL_END + +#endif /* FIRCoreConfigurable_h */ diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRDependency.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRDependency.h new file mode 100644 index 0000000..46e9b7e --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRDependency.h @@ -0,0 +1,45 @@ +/* + * Copyright 2018 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/// A dependency on a specific protocol's functionality. +NS_SWIFT_NAME(Dependency) +@interface FIRDependency : NSObject + +/// The protocol describing functionality being depended on. +@property(nonatomic, strong, readonly) Protocol *protocol; + +/// A flag to specify if the dependency is required or not. +@property(nonatomic, readonly) BOOL isRequired; + +/// Initializes a dependency that is required. Calls `initWithProtocol:isRequired` with `YES` for +/// the required parameter. +/// Creates a required dependency on the specified protocol's functionality. ++ (instancetype)dependencyWithProtocol:(Protocol *)protocol; + +/// Creates a dependency on the specified protocol's functionality and specify if it's required for +/// the class's functionality. ++ (instancetype)dependencyWithProtocol:(Protocol *)protocol isRequired:(BOOL)required; + +/// Use `dependencyWithProtocol:isRequired:` instead. +- (instancetype)init NS_UNAVAILABLE; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRErrorCode.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRErrorCode.h new file mode 100644 index 0000000..01d3c56 --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRErrorCode.h @@ -0,0 +1,55 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** Error codes in Firebase error domain. */ +typedef NS_ENUM(NSInteger, FIRErrorCode) { + /** + * Unknown error. + */ + FIRErrorCodeUnknown = 0, + /** + * Loading data from the GoogleService-Info.plist file failed. This is a fatal error and should + * not be ignored. Further calls to the API will fail and/or possibly cause crashes. + */ + FIRErrorCodeInvalidPlistFile = -100, + + /** + * Validating the Google App ID format failed. + */ + FIRErrorCodeInvalidAppID = -101, + + /** + * Error code for failing to configure a specific service. + */ + FIRErrorCodeAdMobFailed = -110, + FIRErrorCodeAppInviteFailed = -112, + FIRErrorCodeCloudMessagingFailed = -113, + FIRErrorCodeConfigFailed = -114, + FIRErrorCodeDatabaseFailed = -115, + FIRErrorCodeCrashReportingFailed = -118, + FIRErrorCodeDurableDeepLinkFailed = -119, + FIRErrorCodeAuthFailed = -120, + FIRErrorCodeInstanceIDFailed = -121, + FIRErrorCodeStorageFailed = -123, + + /** + * Error codes returned by Dynamic Links + */ + FIRErrorCodeDynamicLinksStrongMatchNotAvailable = -124, + FIRErrorCodeDynamicLinksManualRetrievalNotEnabled = -125, + FIRErrorCodeDynamicLinksPendingLinkOnlyAvailableAtFirstLaunch = -126, + FIRErrorCodeDynamicLinksPendingLinkRetrievalAlreadyRunning = -127, +}; diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRErrors.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRErrors.h new file mode 100644 index 0000000..cf69252 --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRErrors.h @@ -0,0 +1,33 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#include "FIRErrorCode.h" + +extern NSString *const kFirebaseErrorDomain; +extern NSString *const kFirebaseAdMobErrorDomain; +extern NSString *const kFirebaseAppInviteErrorDomain; +extern NSString *const kFirebaseAuthErrorDomain; +extern NSString *const kFirebaseCloudMessagingErrorDomain; +extern NSString *const kFirebaseConfigErrorDomain; +extern NSString *const kFirebaseCoreErrorDomain; +extern NSString *const kFirebaseCrashReportingErrorDomain; +extern NSString *const kFirebaseDatabaseErrorDomain; +extern NSString *const kFirebaseDurableDeepLinkErrorDomain; +extern NSString *const kFirebaseInstanceIDErrorDomain; +extern NSString *const kFirebasePerfErrorDomain; +extern NSString *const kFirebaseStorageErrorDomain; diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRLogger.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRLogger.h new file mode 100644 index 0000000..a538199 --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRLogger.h @@ -0,0 +1,159 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRLoggerLevel.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + * The Firebase services used in Firebase logger. + */ +typedef NSString *const FIRLoggerService; + +extern FIRLoggerService kFIRLoggerABTesting; +extern FIRLoggerService kFIRLoggerAdMob; +extern FIRLoggerService kFIRLoggerAnalytics; +extern FIRLoggerService kFIRLoggerAuth; +extern FIRLoggerService kFIRLoggerCore; +extern FIRLoggerService kFIRLoggerCrash; +extern FIRLoggerService kFIRLoggerDatabase; +extern FIRLoggerService kFIRLoggerDynamicLinks; +extern FIRLoggerService kFIRLoggerFirestore; +extern FIRLoggerService kFIRLoggerInstanceID; +extern FIRLoggerService kFIRLoggerInvites; +extern FIRLoggerService kFIRLoggerMLKit; +extern FIRLoggerService kFIRLoggerMessaging; +extern FIRLoggerService kFIRLoggerPerf; +extern FIRLoggerService kFIRLoggerRemoteConfig; +extern FIRLoggerService kFIRLoggerStorage; +extern FIRLoggerService kFIRLoggerSwizzler; + +/** + * The key used to store the logger's error count. + */ +extern NSString *const kFIRLoggerErrorCountKey; + +/** + * The key used to store the logger's warning count. + */ +extern NSString *const kFIRLoggerWarningCountKey; + +#ifdef __cplusplus +extern "C" { +#endif // __cplusplus + +/** + * Enables or disables Analytics debug mode. + * If set to YES, the logging level for Analytics will be set to FIRLoggerLevelDebug. + * Enabling the debug mode has no effect if the app is running from App Store. + * (required) analytics debug mode flag. + */ +void FIRSetAnalyticsDebugMode(BOOL analyticsDebugMode); + +/** + * Changes the default logging level of FIRLoggerLevelNotice to a user-specified level. + * The default level cannot be set above FIRLoggerLevelNotice if the app is running from App Store. + * (required) log level (one of the FIRLoggerLevel enum values). + */ +void FIRSetLoggerLevel(FIRLoggerLevel loggerLevel); + +/** + * Checks if the specified logger level is loggable given the current settings. + * (required) log level (one of the FIRLoggerLevel enum values). + * (required) whether or not this function is called from the Analytics component. + */ +BOOL FIRIsLoggableLevel(FIRLoggerLevel loggerLevel, BOOL analyticsComponent); + +/** + * Logs a message to the Xcode console and the device log. If running from AppStore, will + * not log any messages with a level higher than FIRLoggerLevelNotice to avoid log spamming. + * (required) log level (one of the FIRLoggerLevel enum values). + * (required) service name of type FIRLoggerService. + * (required) message code starting with "I-" which means iOS, followed by a capitalized + * three-character service identifier and a six digit integer message ID that is unique + * within the service. + * An example of the message code is @"I-COR000001". + * (required) message string which can be a format string. + * (optional) variable arguments list obtained from calling va_start, used when message is a format + * string. + */ +extern void FIRLogBasic(FIRLoggerLevel level, + FIRLoggerService service, + NSString *messageCode, + NSString *message, +// On 64-bit simulators, va_list is not a pointer, so cannot be marked nullable +// See: http://stackoverflow.com/q/29095469 +#if __LP64__ && TARGET_OS_SIMULATOR || TARGET_OS_OSX + va_list args_ptr +#else + va_list _Nullable args_ptr +#endif +); + +/** + * The following functions accept the following parameters in order: + * (required) service name of type FIRLoggerService. + * (required) message code starting from "I-" which means iOS, followed by a capitalized + * three-character service identifier and a six digit integer message ID that is unique + * within the service. + * An example of the message code is @"I-COR000001". + * See go/firebase-log-proposal for details. + * (required) message string which can be a format string. + * (optional) the list of arguments to substitute into the format string. + * Example usage: + * FIRLogError(kFIRLoggerCore, @"I-COR000001", @"Configuration of %@ failed.", app.name); + */ +extern void FIRLogError(FIRLoggerService service, NSString *messageCode, NSString *message, ...) + NS_FORMAT_FUNCTION(3, 4); +extern void FIRLogWarning(FIRLoggerService service, NSString *messageCode, NSString *message, ...) + NS_FORMAT_FUNCTION(3, 4); +extern void FIRLogNotice(FIRLoggerService service, NSString *messageCode, NSString *message, ...) + NS_FORMAT_FUNCTION(3, 4); +extern void FIRLogInfo(FIRLoggerService service, NSString *messageCode, NSString *message, ...) + NS_FORMAT_FUNCTION(3, 4); +extern void FIRLogDebug(FIRLoggerService service, NSString *messageCode, NSString *message, ...) + NS_FORMAT_FUNCTION(3, 4); + +#ifdef __cplusplus +} // extern "C" +#endif // __cplusplus + +@interface FIRLoggerWrapper : NSObject + +/** + * Objective-C wrapper for FIRLogBasic to allow weak linking to FIRLogger + * (required) log level (one of the FIRLoggerLevel enum values). + * (required) service name of type FIRLoggerService. + * (required) message code starting with "I-" which means iOS, followed by a capitalized + * three-character service identifier and a six digit integer message ID that is unique + * within the service. + * An example of the message code is @"I-COR000001". + * (required) message string which can be a format string. + * (optional) variable arguments list obtained from calling va_start, used when message is a format + * string. + */ + ++ (void)logWithLevel:(FIRLoggerLevel)level + withService:(FIRLoggerService)service + withCode:(NSString *)messageCode + withMessage:(NSString *)message + withArgs:(va_list)args; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIROptionsInternal.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIROptionsInternal.h new file mode 100644 index 0000000..7bb40fc --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIROptionsInternal.h @@ -0,0 +1,114 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIROptions.h" + +/** + * Keys for the strings in the plist file. + */ +extern NSString *const kFIRAPIKey; +extern NSString *const kFIRTrackingID; +extern NSString *const kFIRGoogleAppID; +extern NSString *const kFIRClientID; +extern NSString *const kFIRGCMSenderID; +extern NSString *const kFIRAndroidClientID; +extern NSString *const kFIRDatabaseURL; +extern NSString *const kFIRStorageBucket; +extern NSString *const kFIRBundleID; +extern NSString *const kFIRProjectID; + +/** + * Keys for the plist file name + */ +extern NSString *const kServiceInfoFileName; + +extern NSString *const kServiceInfoFileType; + +/** + * This header file exposes the initialization of FIROptions to internal use. + */ +@interface FIROptions () + +/** + * resetDefaultOptions and initInternalWithOptionsDictionary: are exposed only for unit tests. + */ ++ (void)resetDefaultOptions; + +/** + * Initializes the options with dictionary. The above strings are the keys of the dictionary. + * This is the designated initializer. + */ +- (instancetype)initInternalWithOptionsDictionary:(NSDictionary *)serviceInfoDictionary; + +/** + * defaultOptions and defaultOptionsDictionary are exposed in order to be used in FIRApp and + * other first party services. + */ ++ (FIROptions *)defaultOptions; + ++ (NSDictionary *)defaultOptionsDictionary; + +/** + * Indicates whether or not Analytics collection was explicitly enabled via a plist flag or at + * runtime. + */ +@property(nonatomic, readonly) BOOL isAnalyticsCollectionExpicitlySet; + +/** + * Whether or not Analytics Collection was enabled. Analytics Collection is enabled unless + * explicitly disabled in GoogleService-Info.plist. + */ +@property(nonatomic, readonly) BOOL isAnalyticsCollectionEnabled; + +/** + * Whether or not Analytics Collection was completely disabled. If YES, then + * isAnalyticsCollectionEnabled will be NO. + */ +@property(nonatomic, readonly) BOOL isAnalyticsCollectionDeactivated; + +/** + * The version ID of the client library, e.g. @"1100000". + */ +@property(nonatomic, readonly, copy) NSString *libraryVersionID; + +/** + * The flag indicating whether this object was constructed with the values in the default plist + * file. + */ +@property(nonatomic) BOOL usingOptionsFromDefaultPlist; + +/** + * Whether or not Measurement was enabled. Measurement is enabled unless explicitly disabled in + * GoogleService-Info.plist. + */ +@property(nonatomic, readonly) BOOL isMeasurementEnabled; + +/** + * Whether or not Analytics was enabled in the developer console. + */ +@property(nonatomic, readonly) BOOL isAnalyticsEnabled; + +/** + * Whether or not SignIn was enabled in the developer console. + */ +@property(nonatomic, readonly) BOOL isSignInEnabled; + +/** + * Whether or not editing is locked. This should occur after FIROptions has been set on a FIRApp. + */ +@property(nonatomic, getter=isEditingLocked) BOOL editingLocked; + +@end diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRVersion.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRVersion.h new file mode 100644 index 0000000..226efb1 --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Private/FIRVersion.h @@ -0,0 +1,23 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +/** The version of the Firebase SDK. */ +FOUNDATION_EXPORT const char *const FIRVersionString; + +/** The version of the FirebaseCore Component. */ +FOUNDATION_EXPORT const char *const FIRCoreVersionString; diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIRAnalyticsConfiguration.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIRAnalyticsConfiguration.h new file mode 100644 index 0000000..ca1d32c --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIRAnalyticsConfiguration.h @@ -0,0 +1,52 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + * This class provides configuration fields for Firebase Analytics. + */ +NS_SWIFT_NAME(AnalyticsConfiguration) +@interface FIRAnalyticsConfiguration : NSObject + +/** + * Returns the shared instance of FIRAnalyticsConfiguration. + */ ++ (FIRAnalyticsConfiguration *)sharedInstance NS_SWIFT_NAME(shared()); + +/** + * Sets the minimum engagement time in seconds required to start a new session. The default value + * is 10 seconds. + */ +- (void)setMinimumSessionInterval:(NSTimeInterval)minimumSessionInterval; + +/** + * Sets the interval of inactivity in seconds that terminates the current session. The default + * value is 1800 seconds (30 minutes). + */ +- (void)setSessionTimeoutInterval:(NSTimeInterval)sessionTimeoutInterval; + +/** + * Sets whether analytics collection is enabled for this app on this device. This setting is + * persisted across app sessions. By default it is enabled. + */ +- (void)setAnalyticsCollectionEnabled:(BOOL)analyticsCollectionEnabled; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIRApp.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIRApp.h new file mode 100644 index 0000000..e0dd6d6 --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIRApp.h @@ -0,0 +1,127 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FIROptions; + +NS_ASSUME_NONNULL_BEGIN + +/** A block that takes a BOOL and has no return value. */ +typedef void (^FIRAppVoidBoolCallback)(BOOL success) NS_SWIFT_NAME(FirebaseAppVoidBoolCallback); + +/** + * The entry point of Firebase SDKs. + * + * Initialize and configure FIRApp using +[FIRApp configure] + * or other customized ways as shown below. + * + * The logging system has two modes: default mode and debug mode. In default mode, only logs with + * log level Notice, Warning and Error will be sent to device. In debug mode, all logs will be sent + * to device. The log levels that Firebase uses are consistent with the ASL log levels. + * + * Enable debug mode by passing the -FIRDebugEnabled argument to the application. You can add this + * argument in the application's Xcode scheme. When debug mode is enabled via -FIRDebugEnabled, + * further executions of the application will also be in debug mode. In order to return to default + * mode, you must explicitly disable the debug mode with the application argument -FIRDebugDisabled. + * + * It is also possible to change the default logging level in code by calling setLoggerLevel: on + * the FIRConfiguration interface. + */ +NS_SWIFT_NAME(FirebaseApp) +@interface FIRApp : NSObject + +/** + * Configures a default Firebase app. Raises an exception if any configuration step fails. The + * default app is named "__FIRAPP_DEFAULT". This method should be called after the app is launched + * and before using Firebase services. This method is thread safe and contains synchronous file I/O + * (reading GoogleService-Info.plist from disk). + */ ++ (void)configure; + +/** + * Configures the default Firebase app with the provided options. The default app is named + * "__FIRAPP_DEFAULT". Raises an exception if any configuration step fails. This method is thread + * safe. + * + * @param options The Firebase application options used to configure the service. + */ ++ (void)configureWithOptions:(FIROptions *)options NS_SWIFT_NAME(configure(options:)); + +/** + * Configures a Firebase app with the given name and options. Raises an exception if any + * configuration step fails. This method is thread safe. + * + * @param name The application's name given by the developer. The name should should only contain + Letters, Numbers and Underscore. + * @param options The Firebase application options used to configure the services. + */ +// clang-format off ++ (void)configureWithName:(NSString *)name + options:(FIROptions *)options NS_SWIFT_NAME(configure(name:options:)); +// clang-format on + +/** + * Returns the default app, or nil if the default app does not exist. + */ ++ (nullable FIRApp *)defaultApp NS_SWIFT_NAME(app()); + +/** + * Returns a previously created FIRApp instance with the given name, or nil if no such app exists. + * This method is thread safe. + */ ++ (nullable FIRApp *)appNamed:(NSString *)name NS_SWIFT_NAME(app(name:)); + +/** + * Returns the set of all extant FIRApp instances, or nil if there are no FIRApp instances. This + * method is thread safe. + */ +@property(class, readonly, nullable) NSDictionary *allApps; + +/** + * Cleans up the current FIRApp, freeing associated data and returning its name to the pool for + * future use. This method is thread safe. + */ +- (void)deleteApp:(FIRAppVoidBoolCallback)completion; + +/** + * FIRApp instances should not be initialized directly. Call +[FIRApp configure], + * +[FIRApp configureWithOptions:], or +[FIRApp configureWithNames:options:] directly. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** + * Gets the name of this app. + */ +@property(nonatomic, copy, readonly) NSString *name; + +/** + * Gets a copy of the options for this app. These are non-modifiable. + */ +@property(nonatomic, copy, readonly) FIROptions *options; + +/** + * Gets or sets whether automatic data collection is enabled for all products. Defaults to `YES` + * unless `FirebaseDataCollectionDefaultEnabled` is set to `NO` in your app's Info.plist. This value + * is persisted across runs of the app so that it can be set once when users have consented to + * collection. + */ +@property(nonatomic, readwrite, getter=isDataCollectionDefaultEnabled) + BOOL dataCollectionDefaultEnabled; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIRConfiguration.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIRConfiguration.h new file mode 100644 index 0000000..95bba5e --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIRConfiguration.h @@ -0,0 +1,50 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIRAnalyticsConfiguration.h" +#import "FIRLoggerLevel.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + * This interface provides global level properties that the developer can tweak, and the singleton + * of the Firebase Analytics configuration class. + */ +NS_SWIFT_NAME(FirebaseConfiguration) +@interface FIRConfiguration : NSObject + +/** Returns the shared configuration object. */ +@property(class, nonatomic, readonly) FIRConfiguration *sharedInstance NS_SWIFT_NAME(shared); + +/** The configuration class for Firebase Analytics. */ +@property(nonatomic, readwrite) FIRAnalyticsConfiguration *analyticsConfiguration; + +/** + * Sets the logging level for internal Firebase logging. Firebase will only log messages + * that are logged at or below loggerLevel. The messages are logged both to the Xcode + * console and to the device's log. Note that if an app is running from AppStore, it will + * never log above FIRLoggerLevelNotice even if loggerLevel is set to a higher (more verbose) + * setting. + * + * @param loggerLevel The maximum logging level. The default level is set to FIRLoggerLevelNotice. + */ +- (void)setLoggerLevel:(FIRLoggerLevel)loggerLevel; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIRLoggerLevel.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIRLoggerLevel.h new file mode 100644 index 0000000..dca3aa0 --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIRLoggerLevel.h @@ -0,0 +1,38 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// Note that importing GULLoggerLevel.h will lead to a non-modular header +// import error. + +/** + * The log levels used by internal logging. + */ +typedef NS_ENUM(NSInteger, FIRLoggerLevel) { + /** Error level, matches ASL_LEVEL_ERR. */ + FIRLoggerLevelError = 3, + /** Warning level, matches ASL_LEVEL_WARNING. */ + FIRLoggerLevelWarning = 4, + /** Notice level, matches ASL_LEVEL_NOTICE. */ + FIRLoggerLevelNotice = 5, + /** Info level, matches ASL_LEVEL_INFO. */ + FIRLoggerLevelInfo = 6, + /** Debug level, matches ASL_LEVEL_DEBUG. */ + FIRLoggerLevelDebug = 7, + /** Minimum log level. */ + FIRLoggerLevelMin = FIRLoggerLevelError, + /** Maximum log level. */ + FIRLoggerLevelMax = FIRLoggerLevelDebug +} NS_SWIFT_NAME(FirebaseLoggerLevel); diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIROptions.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIROptions.h new file mode 100644 index 0000000..87a01dd --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FIROptions.h @@ -0,0 +1,116 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + * This class provides constant fields of Google APIs. + */ +NS_SWIFT_NAME(FirebaseOptions) +@interface FIROptions : NSObject + +/** + * Returns the default options. The first time this is called it synchronously reads + * GoogleService-Info.plist from disk. + */ ++ (nullable FIROptions *)defaultOptions NS_SWIFT_NAME(defaultOptions()); + +/** + * An iOS API key used for authenticating requests from your app, e.g. + * @"AIzaSyDdVgKwhZl0sTTTLZ7iTmt1r3N2cJLnaDk", used to identify your app to Google servers. + */ +@property(nonatomic, copy, nullable) NSString *APIKey NS_SWIFT_NAME(apiKey); + +/** + * The bundle ID for the application. Defaults to `[[NSBundle mainBundle] bundleID]` when not set + * manually or in a plist. + */ +@property(nonatomic, copy) NSString *bundleID; + +/** + * The OAuth2 client ID for iOS application used to authenticate Google users, for example + * @"12345.apps.googleusercontent.com", used for signing in with Google. + */ +@property(nonatomic, copy, nullable) NSString *clientID; + +/** + * The tracking ID for Google Analytics, e.g. @"UA-12345678-1", used to configure Google Analytics. + */ +@property(nonatomic, copy, nullable) NSString *trackingID; + +/** + * The Project Number from the Google Developer's console, for example @"012345678901", used to + * configure Google Cloud Messaging. + */ +@property(nonatomic, copy) NSString *GCMSenderID NS_SWIFT_NAME(gcmSenderID); + +/** + * The Project ID from the Firebase console, for example @"abc-xyz-123". + */ +@property(nonatomic, copy, nullable) NSString *projectID; + +/** + * The Android client ID used in Google AppInvite when an iOS app has its Android version, for + * example @"12345.apps.googleusercontent.com". + */ +@property(nonatomic, copy, nullable) NSString *androidClientID; + +/** + * The Google App ID that is used to uniquely identify an instance of an app. + */ +@property(nonatomic, copy) NSString *googleAppID; + +/** + * The database root URL, e.g. @"http://abc-xyz-123.firebaseio.com". + */ +@property(nonatomic, copy, nullable) NSString *databaseURL; + +/** + * The URL scheme used to set up Durable Deep Link service. + */ +@property(nonatomic, copy, nullable) NSString *deepLinkURLScheme; + +/** + * The Google Cloud Storage bucket name, e.g. @"abc-xyz-123.storage.firebase.com". + */ +@property(nonatomic, copy, nullable) NSString *storageBucket; + +/** + * Initializes a customized instance of FIROptions from the file at the given plist file path. This + * will read the file synchronously from disk. + * For example, + * NSString *filePath = + * [[NSBundle mainBundle] pathForResource:@"GoogleService-Info" ofType:@"plist"]; + * FIROptions *options = [[FIROptions alloc] initWithContentsOfFile:filePath]; + * Returns nil if the plist file does not exist or is invalid. + */ +- (nullable instancetype)initWithContentsOfFile:(NSString *)plistPath; + +/** + * Initializes a customized instance of FIROptions with required fields. Use the mutable properties + * to modify fields for configuring specific services. + */ +// clang-format off +- (instancetype)initWithGoogleAppID:(NSString *)googleAppID + GCMSenderID:(NSString *)GCMSenderID + NS_SWIFT_NAME(init(googleAppID:gcmSenderID:)); +// clang-format on + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FirebaseCore.h b/Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FirebaseCore.h new file mode 100644 index 0000000..fa26f69 --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/Firebase/Core/Public/FirebaseCore.h @@ -0,0 +1,21 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRAnalyticsConfiguration.h" +#import "FIRApp.h" +#import "FIRConfiguration.h" +#import "FIRLoggerLevel.h" +#import "FIROptions.h" diff --git a/Til to Code/Pods/FirebaseCore/LICENSE b/Til to Code/Pods/FirebaseCore/LICENSE new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/Til to Code/Pods/FirebaseCore/README.md b/Til to Code/Pods/FirebaseCore/README.md new file mode 100644 index 0000000..00e6ade --- /dev/null +++ b/Til to Code/Pods/FirebaseCore/README.md @@ -0,0 +1,185 @@ +# Firebase iOS Open Source Development [![Build Status](https://travis-ci.org/firebase/firebase-ios-sdk.svg?branch=master)](https://travis-ci.org/firebase/firebase-ios-sdk) + +This repository contains a subset of the Firebase iOS SDK source. It currently +includes FirebaseCore, FirebaseAuth, FirebaseDatabase, FirebaseFirestore, +FirebaseFunctions, FirebaseInAppMessagingDisplay, FirebaseMessaging and +FirebaseStorage. + +The repository also includes GoogleUtilities source. The +[GoogleUtilities](GoogleUtilities/README.md) pod is +a set of utilities used by Firebase and other Google products. + +Firebase is an app development platform with tools to help you build, grow and +monetize your app. More information about Firebase can be found at +[https://firebase.google.com](https://firebase.google.com). + +## Installation + +See the three subsections for details about three different installation methods. +1. [Standard pod install](README.md#standard-pod-install) +1. [Installing from the GitHub repo](README.md#installing-from-github) +1. [Experimental Carthage](README.md#carthage-ios-only) + +### Standard pod install + +Go to +[https://firebase.google.com/docs/ios/setup](https://firebase.google.com/docs/ios/setup). + +### Installing from GitHub + +For releases starting with 5.0.0, the source for each release is also deployed +to CocoaPods master and available via standard +[CocoaPods Podfile syntax](https://guides.cocoapods.org/syntax/podfile.html#pod). + +These instructions can be used to access the Firebase repo at other branches, +tags, or commits. + +#### Background + +See +[the Podfile Syntax Reference](https://guides.cocoapods.org/syntax/podfile.html#pod) +for instructions and options about overriding pod source locations. + +#### Accessing Firebase Source Snapshots + +All of the official releases are tagged in this repo and available via CocoaPods. To access a local +source snapshot or unreleased branch, use Podfile directives like the following: + +To access FirebaseFirestore via a branch: +``` +pod 'FirebaseCore', :git => 'https://github.com/firebase/firebase-ios-sdk.git', :branch => 'master' +pod 'FirebaseFirestore', :git => 'https://github.com/firebase/firebase-ios-sdk.git', :branch => 'master' +``` + +To access FirebaseMessaging via a checked out version of the firebase-ios-sdk repo do: + +``` +pod 'FirebaseCore', :path => '/path/to/firebase-ios-sdk' +pod 'FirebaseMessaging', :path => '/path/to/firebase-ios-sdk' +``` + +### Carthage (iOS only) + +Instructions for the experimental Carthage distribution are at +[Carthage](Carthage.md). + +### Rome + +Instructions for installing binary frameworks via +[Rome](https://github.com/CocoaPods/Rome) are at [Rome](Rome.md). + +## Development + +Follow the subsequent instructions to develop, debug, unit test, run integration +tests, and try out reference samples: + +``` +$ git clone git@github.com:firebase/firebase-ios-sdk.git +$ cd firebase-ios-sdk/Example +$ pod update +$ open Firebase.xcworkspace +``` + +Firestore and Functions have self contained Xcode projects. See +[Firestore/README.md](Firestore/README.md) and +[Functions/README.md](Functions/README.md). + +### Running Unit Tests + +Select a scheme and press Command-u to build a component and run its unit tests. + +### Running Sample Apps +In order to run the sample apps and integration tests, you'll need valid +`GoogleService-Info.plist` files for those samples. The Firebase Xcode project contains dummy plist +files without real values, but can be replaced with real plist files. To get your own +`GoogleService-Info.plist` files: + +1. Go to the [Firebase Console](https://console.firebase.google.com/) +2. Create a new Firebase project, if you don't already have one +3. For each sample app you want to test, create a new Firebase app with the sample app's bundle +identifier (e.g. `com.google.Database-Example`) +4. Download the resulting `GoogleService-Info.plist` and replace the appropriate dummy plist file +(e.g. in [Example/Database/App/](Example/Database/App/)); + +Some sample apps like Firebase Messaging ([Example/Messaging/App](Example/Messaging/App)) require +special Apple capabilities, and you will have to change the sample app to use a unique bundle +identifier that you can control in your own Apple Developer account. + +## Specific Component Instructions +See the sections below for any special instructions for those components. + +### Firebase Auth + +If you're doing specific Firebase Auth development, see +[the Auth Sample README](Example/Auth/README.md) for instructions about +building and running the FirebaseAuth pod along with various samples and tests. + +### Firebase Database + +To run the Database Integration tests, make your database authentication rules +[public](https://firebase.google.com/docs/database/security/quickstart). + +### Firebase Storage + +To run the Storage Integration tests, follow the instructions in +[FIRStorageIntegrationTests.m](Example/Storage/Tests/Integration/FIRStorageIntegrationTests.m). + +#### Push Notifications + +Push notifications can only be delivered to specially provisioned App IDs in the developer portal. +In order to actually test receiving push notifications, you will need to: + +1. Change the bundle identifier of the sample app to something you own in your Apple Developer +account, and enable that App ID for push notifications. +2. You'll also need to +[upload your APNs Provider Authentication Key or certificate to the Firebase Console](https://firebase.google.com/docs/cloud-messaging/ios/certs) +at **Project Settings > Cloud Messaging > [Your Firebase App]**. +3. Ensure your iOS device is added to your Apple Developer portal as a test device. + +#### iOS Simulator + +The iOS Simulator cannot register for remote notifications, and will not receive push notifications. +In order to receive push notifications, you'll have to follow the steps above and run the app on a +physical device. + +## Community Supported Efforts + +We've seen an amazing amount of interest and contributions to improve the Firebase SDKs, and we are +very grateful! We'd like to empower as many developers as we can to be able to use Firebase and +participate in the Firebase community. + +### macOS and tvOS +FirebaseAuth, FirebaseCore, FirebaseDatabase and FirebaseStorage now compile, run unit tests, and +work on macOS and tvOS, thanks to contributions from the community. There are a few tweaks needed, +like ensuring iOS-only, macOS-only, or tvOS-only code is correctly guarded with checks for +`TARGET_OS_IOS`, `TARGET_OS_OSX` and `TARGET_OS_TV`. + +For tvOS, checkout the [Sample](Example/tvOSSample). + +Keep in mind that macOS and tvOS are not officially supported by Firebase, and this repository is +actively developed primarily for iOS. While we can catch basic unit test issues with Travis, there +may be some changes where the SDK no longer works as expected on macOS or tvOS. If you encounter +this, please [file an issue](https://github.com/firebase/firebase-ios-sdk/issues). + +For installation instructions, see [above](README.md#accessing-firebase-source-snapshots). + +Note that the Firebase pod is not available for macOS and tvOS. Install a selection of the +`FirebaseAuth`, `FirebaseCore`, `FirebaseDatabase` and `FirebaseStorage` CocoaPods. + +## Roadmap + +See [Roadmap](ROADMAP.md) for more about the Firebase iOS SDK Open Source +plans and directions. + +## Contributing + +See [Contributing](CONTRIBUTING.md) for more information on contributing to the Firebase +iOS SDK. + +## License + +The contents of this repository is licensed under the +[Apache License, version 2.0](http://www.apache.org/licenses/LICENSE-2.0). + +Your use of Firebase is governed by the +[Terms of Service for Firebase Services](https://firebase.google.com/terms/). diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDataSnapshot.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDataSnapshot.m new file mode 100644 index 0000000..b774493 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDataSnapshot.m @@ -0,0 +1,101 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRDataSnapshot.h" +#import "FIRDataSnapshot_Private.h" +#import "FChildrenNode.h" +#import "FValidation.h" +#import "FTransformedEnumerator.h" +#import "FIRDatabaseReference.h" + +@interface FIRDataSnapshot () +@property (nonatomic, strong) FIRDatabaseReference *ref; +@end + +@implementation FIRDataSnapshot + +- (id)initWithRef:(FIRDatabaseReference *)ref indexedNode:(FIndexedNode *)node +{ + self = [super init]; + if (self != nil) { + self->_ref = ref; + self->_node = node; + } + return self; +} + +- (id) value { + return [self.node.node val]; +} + +- (id) valueInExportFormat { + return [self.node.node valForExport:YES]; +} + +- (FIRDataSnapshot *)childSnapshotForPath:(NSString *)childPathString { + [FValidation validateFrom:@"child:" validPathString:childPathString]; + FPath* childPath = [[FPath alloc] initWith:childPathString]; + FIRDatabaseReference * childRef = [self.ref child:childPathString]; + + id childNode = [self.node.node getChild:childPath]; + return [[FIRDataSnapshot alloc] initWithRef:childRef indexedNode:[FIndexedNode indexedNodeWithNode:childNode]]; +} + +- (BOOL) hasChild:(NSString *)childPathString { + [FValidation validateFrom:@"hasChild:" validPathString:childPathString]; + FPath* childPath = [[FPath alloc] initWith:childPathString]; + return ! [[self.node.node getChild:childPath] isEmpty]; +} + +- (id) priority { + id priority = [self.node.node getPriority]; + return priority.val; +} + + +- (BOOL) hasChildren { + if([self.node.node isLeafNode]) { + return false; + } + else { + return ![self.node.node isEmpty]; + } +} + +- (BOOL) exists { + return ![self.node.node isEmpty]; +} + +- (NSString *) key { + return [self.ref key]; +} + +- (NSUInteger) childrenCount { + return [self.node.node numChildren]; +} + +- (NSEnumerator *) children { + return [[FTransformedEnumerator alloc] initWithEnumerator:self.node.childEnumerator andTransform:^id(FNamedNode *node) { + FIRDatabaseReference *childRef = [self.ref child:node.name]; + return [[FIRDataSnapshot alloc] initWithRef:childRef indexedNode:[FIndexedNode indexedNodeWithNode:node.node]]; + }]; +} + +- (NSString *) description { + return [NSString stringWithFormat:@"Snap (%@) %@", self.key, self.node.node]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDatabase.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDatabase.m new file mode 100644 index 0000000..b01d669 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDatabase.m @@ -0,0 +1,305 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import +#import + +#import "FIRDatabase.h" +#import "FIRDatabase_Private.h" +#import "FIRDatabaseQuery_Private.h" +#import "FRepoManager.h" +#import "FValidation.h" +#import "FIRDatabaseConfig_Private.h" +#import "FRepoInfo.h" +#import "FIRDatabaseConfig.h" +#import "FIRDatabaseReference_Private.h" +#import + +@interface FIRDatabase () +@property (nonatomic, strong) FRepoInfo *repoInfo; +@property (nonatomic, strong) FIRDatabaseConfig *config; +@property (nonatomic, strong) FRepo *repo; +@end + +@implementation FIRDatabase + +/** A NSMutableDictionary of FirebaseApp name and FRepoInfo to FirebaseDatabase instance. */ +typedef NSMutableDictionary *> FIRDatabaseDictionary; + +// The STR and STR_EXPAND macro allow a numeric version passed to he compiler driver +// with a -D to be treated as a string instead of an invalid floating point value. +#define STR(x) STR_EXPAND(x) +#define STR_EXPAND(x) #x +static const char *FIREBASE_SEMVER = (const char *)STR(FIRDatabase_VERSION); + ++ (void)load { + NSNotificationCenter *center = [NSNotificationCenter defaultCenter]; + [center addObserverForName:kFIRAppDeleteNotification + object:nil + queue:nil + usingBlock:^(NSNotification * _Nonnull note) { + NSString *appName = note.userInfo[kFIRAppNameKey]; + if (appName == nil) { return; } + + FIRDatabaseDictionary* instances = [self instances]; + @synchronized (instances) { + NSMutableDictionary *databaseInstances = instances[appName]; + if (databaseInstances) { + // Clean up the deleted instance in an effort to remove any resources still in use. + // Note: Any leftover instances of this exact database will be invalid. + for (FIRDatabase * database in [databaseInstances allValues]) { + [FRepoManager disposeRepos:database.config]; + } + [instances removeObjectForKey:appName]; + } + } + }]; +} + +/** + * A static NSMutableDictionary of FirebaseApp name and FRepoInfo to + * FirebaseDatabase instance. To ensure thread-safety, it should only be + * accessed in databaseForApp:URL:, which is synchronized. + * + * TODO: This serves a duplicate purpose as RepoManager. We should clean up. + * TODO: We should maybe be conscious of leaks and make this a weak map or + * similar but we have a lot of work to do to allow FirebaseDatabase/Repo etc. + * to be GC'd. + */ ++ (FIRDatabaseDictionary *)instances { + static dispatch_once_t pred = 0; + static FIRDatabaseDictionary *instances; + dispatch_once(&pred, ^{ + instances = [NSMutableDictionary dictionary]; + }); + return instances; +} + ++ (FIRDatabase *)database { + if (![FIRApp isDefaultAppConfigured]) { + [NSException raise:@"FIRAppNotConfigured" + format:@"Failed to get default Firebase Database instance. Must call `[FIRApp " + @"configure]` (`FirebaseApp.configure()` in Swift) before using " + @"Firebase Database."]; + } + FIRApp *app = [FIRApp defaultApp]; + return [FIRDatabase databaseForApp:app]; +} + ++ (FIRDatabase *)databaseWithURL:(NSString *)url { + FIRApp *app = [FIRApp defaultApp]; + if (app == nil) { + [NSException raise:@"FIRAppNotConfigured" + format:@"Failed to get default Firebase Database instance. " + @"Must call `[FIRApp configure]` (`FirebaseApp.configure()` in Swift) " + @"before using Firebase Database."]; + } + return [FIRDatabase databaseForApp:app URL:url]; +} + ++ (FIRDatabase *)databaseForApp:(FIRApp *)app { + if (app == nil) { + [NSException raise:@"InvalidFIRApp" format:@"nil FIRApp instance passed to databaseForApp."]; + } + + return [FIRDatabase databaseForApp:app URL:app.options.databaseURL]; +} + ++ (FIRDatabase *)databaseForApp:(FIRApp *)app URL:(NSString *)url { + if (app == nil) { + [NSException raise:@"InvalidFIRApp" + format:@"nil FIRApp instance passed to databaseForApp."]; + } + + if (url == nil) { + [NSException raise:@"MissingDatabaseURL" + format:@"Failed to get FirebaseDatabase instance: " + "Specify DatabaseURL within FIRApp or from your databaseForApp:URL: call."]; + } + + NSURL *databaseUrl = [NSURL URLWithString:url]; + + if (databaseUrl == nil) { + [NSException raise:@"InvalidDatabaseURL" format:@"The Database URL '%@' cannot be parsed. " + "Specify a valid DatabaseURL within FIRApp or from your databaseForApp:URL: call.", databaseUrl]; + } else if (![databaseUrl.path isEqualToString:@""] && ![databaseUrl.path isEqualToString:@"/"]) { + [NSException raise:@"InvalidDatabaseURL" format:@"Configured Database URL '%@' is invalid. It should point " + "to the root of a Firebase Database but it includes a path: %@",databaseUrl, databaseUrl.path]; + } + + FIRDatabaseDictionary *instances = [self instances]; + @synchronized (instances) { + NSMutableDictionary *urlInstanceMap = + instances[app.name]; + if (!urlInstanceMap) { + urlInstanceMap = [NSMutableDictionary dictionary]; + instances[app.name] = urlInstanceMap; + } + + FParsedUrl *parsedUrl = [FUtilities parseUrl:databaseUrl.absoluteString]; + FIRDatabase *database = urlInstanceMap[parsedUrl.repoInfo]; + if (!database) { + id authTokenProvider = [FAuthTokenProvider authTokenProviderForApp:app]; + + // If this is the default app, don't set the session persistence key so that we use our + // default ("default") instead of the FIRApp default ("[DEFAULT]") so that we + // preserve the default location used by the legacy Firebase SDK. + NSString *sessionIdentifier = @"default"; + if (![FIRApp isDefaultAppConfigured] || app != [FIRApp defaultApp]) { + sessionIdentifier = app.name; + } + + FIRDatabaseConfig *config = [[FIRDatabaseConfig alloc] initWithSessionIdentifier:sessionIdentifier + authTokenProvider:authTokenProvider]; + database = [[FIRDatabase alloc] initWithApp:app + repoInfo:parsedUrl.repoInfo + config:config]; + urlInstanceMap[parsedUrl.repoInfo] = database; + } + + return database; + } +} + ++ (NSString *) buildVersion { + // TODO: Restore git hash when build moves back to git + return [NSString stringWithFormat:@"%s_%s", FIREBASE_SEMVER, __DATE__]; +} + ++ (FIRDatabase *)createDatabaseForTests:(FRepoInfo *)repoInfo config:(FIRDatabaseConfig *)config { + FIRDatabase *db = [[FIRDatabase alloc] initWithApp:nil repoInfo:repoInfo config:config]; + [db ensureRepo]; + return db; +} + + ++ (NSString *) sdkVersion { + return [NSString stringWithUTF8String:FIREBASE_SEMVER]; +} + ++ (void) setLoggingEnabled:(BOOL)enabled { + [FUtilities setLoggingEnabled:enabled]; + FFLog(@"I-RDB024001", @"BUILD Version: %@", [FIRDatabase buildVersion]); +} + + +- (id)initWithApp:(FIRApp *)app repoInfo:(FRepoInfo *)info config:(FIRDatabaseConfig *)config { + self = [super init]; + if (self != nil) { + self->_repoInfo = info; + self->_config = config; + self->_app = app; + } + return self; +} + +- (FIRDatabaseReference *)reference { + [self ensureRepo]; + + return [[FIRDatabaseReference alloc] initWithRepo:self.repo path:[FPath empty]]; +} + +- (FIRDatabaseReference *)referenceWithPath:(NSString *)path { + [self ensureRepo]; + + [FValidation validateFrom:@"referenceWithPath" validRootPathString:path]; + FPath *childPath = [[FPath alloc] initWith:path]; + return [[FIRDatabaseReference alloc] initWithRepo:self.repo path:childPath]; +} + +- (FIRDatabaseReference *)referenceFromURL:(NSString *)databaseUrl { + [self ensureRepo]; + + if (databaseUrl == nil) { + [NSException raise:@"InvalidDatabaseURL" format:@"Invalid nil url passed to referenceFromURL:"]; + } + FParsedUrl *parsedUrl = [FUtilities parseUrl:databaseUrl]; + [FValidation validateFrom:@"referenceFromURL:" validURL:parsedUrl]; + if (![parsedUrl.repoInfo.host isEqualToString:_repoInfo.host]) { + [NSException raise:@"InvalidDatabaseURL" format:@"Invalid URL (%@) passed to getReference(). URL was expected " + "to match configured Database URL: %@", databaseUrl, [self reference].URL]; + } + return [[FIRDatabaseReference alloc] initWithRepo:self.repo path:parsedUrl.path]; +} + + +- (void)purgeOutstandingWrites { + [self ensureRepo]; + + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + [self.repo purgeOutstandingWrites]; + }); +} + +- (void)goOnline { + [self ensureRepo]; + + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + [self.repo resume]; + }); +} + +- (void)goOffline { + [self ensureRepo]; + + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + [self.repo interrupt]; + }); +} + +- (void)setPersistenceEnabled:(BOOL)persistenceEnabled { + [self assertUnfrozen:@"setPersistenceEnabled"]; + self->_config.persistenceEnabled = persistenceEnabled; +} + +- (BOOL)persistenceEnabled { + return self->_config.persistenceEnabled; +} + +- (void)setPersistenceCacheSizeBytes:(NSUInteger)persistenceCacheSizeBytes { + [self assertUnfrozen:@"setPersistenceCacheSizeBytes"]; + self->_config.persistenceCacheSizeBytes = persistenceCacheSizeBytes; +} + +- (NSUInteger)persistenceCacheSizeBytes { + return self->_config.persistenceCacheSizeBytes; +} + +- (void)setCallbackQueue:(dispatch_queue_t)callbackQueue { + [self assertUnfrozen:@"setCallbackQueue"]; + self->_config.callbackQueue = callbackQueue; +} + +- (dispatch_queue_t)callbackQueue { + return self->_config.callbackQueue; +} + +- (void) assertUnfrozen:(NSString*)methodName { + if (self.repo != nil) { + [NSException raise:@"FIRDatabaseAlreadyInUse" format:@"Calls to %@ must be made before any other usage of " + "FIRDatabase instance.", methodName]; + } +} + +- (void) ensureRepo { + if (self.repo == nil) { + self.repo = [FRepoManager createRepo:self.repoInfo config:self.config database:self]; + } +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDatabaseConfig.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDatabaseConfig.h new file mode 100644 index 0000000..d41f3a8 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDatabaseConfig.h @@ -0,0 +1,63 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@protocol FAuthTokenProvider; + +NS_ASSUME_NONNULL_BEGIN + +/** + * TODO: Merge FIRDatabaseConfig into FIRDatabase. + */ +@interface FIRDatabaseConfig : NSObject + +- (id)initWithSessionIdentifier:(NSString *)identifier authTokenProvider:(id)authTokenProvider; + +/** + * By default the Firebase Database client will keep data in memory while your application is running, but not + * when it is restarted. By setting this value to YES, the data will be persisted to on-device (disk) + * storage and will thus be available again when the app is restarted (even when there is no network + * connectivity at that time). Note that this property must be set before creating your first FIRDatabaseReference + * and only needs to be called once per application. + * + * If your app uses Firebase Authentication, the client will automatically persist the user's authentication + * token across restarts, even without persistence enabled. But if the auth token expired while offline and + * you've enabled persistence, the client will pause write operations until you successfully re-authenticate + * (or explicitly unauthenticate) to prevent your writes from being sent unauthenticated and failing due to + * security rules. + */ +@property (nonatomic) BOOL persistenceEnabled; + +/** + * By default the Firebase Database client will use up to 10MB of disk space to cache data. If the cache grows beyond this size, + * the client will start removing data that hasn't been recently used. If you find that your application caches too + * little or too much data, call this method to change the cache size. This property must be set before creating + * your first FIRDatabaseReference and only needs to be called once per application. + * + * Note that the specified cache size is only an approximation and the size on disk may temporarily exceed it + * at times. + */ +@property (nonatomic) NSUInteger persistenceCacheSizeBytes; + +/** + * Sets the dispatch queue on which all events are raised. The default queue is the main queue. + */ +@property (nonatomic, strong) dispatch_queue_t callbackQueue; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDatabaseConfig.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDatabaseConfig.m new file mode 100644 index 0000000..3341c7e --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDatabaseConfig.m @@ -0,0 +1,117 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FIRDatabaseConfig.h" +#import "FIRDatabaseConfig_Private.h" +#import "FIRNoopAuthTokenProvider.h" +#import "FAuthTokenProvider.h" + +@interface FIRDatabaseConfig (Private) + +@property (nonatomic, strong, readwrite) NSString *sessionIdentifier; + +@end + +@implementation FIRDatabaseConfig + +- (id)init { + [NSException raise:NSInvalidArgumentException format:@"Can't create config objects!"]; + return nil; +} + +- (id)initWithSessionIdentifier:(NSString *)identifier authTokenProvider:(id)authTokenProvider { + self = [super init]; + if (self != nil) { + self->_sessionIdentifier = identifier; + self->_callbackQueue = dispatch_get_main_queue(); + self->_persistenceCacheSizeBytes = 10*1024*1024; // Default cache size is 10MB + self->_authTokenProvider = authTokenProvider; + } + return self; +} + +- (void)assertUnfrozen { + if (self.isFrozen) { + [NSException raise:NSGenericException format:@"Can't modify config objects after they are in use for FIRDatabaseReferences."]; + } +} + +- (void)setAuthTokenProvider:(id)authTokenProvider { + [self assertUnfrozen]; + self->_authTokenProvider = authTokenProvider; +} + +- (void)setPersistenceEnabled:(BOOL)persistenceEnabled { + [self assertUnfrozen]; + self->_persistenceEnabled = persistenceEnabled; +} + +- (void)setPersistenceCacheSizeBytes:(NSUInteger)persistenceCacheSizeBytes { + [self assertUnfrozen]; + // Can't be less than 1MB + if (persistenceCacheSizeBytes < 1024*1024) { + [NSException raise:NSInvalidArgumentException format:@"The minimum cache size must be at least 1MB"]; + } + if (persistenceCacheSizeBytes > 100*1024*1024) { + [NSException raise:NSInvalidArgumentException format:@"Firebase Database currently doesn't support a cache size larger than 100MB"]; + } + self->_persistenceCacheSizeBytes = persistenceCacheSizeBytes; +} + +- (void)setCallbackQueue:(dispatch_queue_t)callbackQueue { + [self assertUnfrozen]; + self->_callbackQueue = callbackQueue; +} + +- (void)freeze { + self->_isFrozen = YES; +} + +// TODO: Only used for tests. Migrate to FIRDatabase and remove. ++ (FIRDatabaseConfig *)defaultConfig { + static dispatch_once_t onceToken; + static FIRDatabaseConfig *defaultConfig; + dispatch_once(&onceToken, ^{ + defaultConfig = [FIRDatabaseConfig configForName:@"default"]; + }); + return defaultConfig; +} + +// TODO: This is only used for tests. We should fix them to go through FIRDatabase and remove +// this method and the sessionsConfigs dictionary (FIRDatabase automatically creates one config per app). ++ (FIRDatabaseConfig *)configForName:(NSString *)name { + NSRegularExpression *expression = [NSRegularExpression regularExpressionWithPattern:@"^[a-zA-Z0-9-_]+$" options:0 error:nil]; + if ([expression numberOfMatchesInString:name options:0 range:NSMakeRange(0, name.length)] == 0) { + [NSException raise:NSInvalidArgumentException format:@"Name can only contain [a-zA-Z0-9-_]"]; + } + + static dispatch_once_t onceToken; + static NSMutableDictionary *sessionConfigs; + dispatch_once(&onceToken, ^{ + sessionConfigs = [NSMutableDictionary dictionary]; + }); + @synchronized(sessionConfigs) { + if (!sessionConfigs[name]) { + id authTokenProvider = [FAuthTokenProvider authTokenProviderForApp:[FIRApp defaultApp]]; + sessionConfigs[name] = [[FIRDatabaseConfig alloc] initWithSessionIdentifier:name + authTokenProvider:authTokenProvider]; + } + return sessionConfigs[name]; + } +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDatabaseQuery.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDatabaseQuery.m new file mode 100644 index 0000000..de18a7c --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRDatabaseQuery.m @@ -0,0 +1,525 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRDatabaseQuery.h" +#import "FIRDatabaseQuery_Private.h" +#import "FValidation.h" +#import "FQueryParams.h" +#import "FQuerySpec.h" +#import "FValueEventRegistration.h" +#import "FChildEventRegistration.h" +#import "FPath.h" +#import "FKeyIndex.h" +#import "FPathIndex.h" +#import "FPriorityIndex.h" +#import "FValueIndex.h" +#import "FLeafNode.h" +#import "FSnapshotUtilities.h" +#import "FConstants.h" + +@implementation FIRDatabaseQuery + +@synthesize repo; +@synthesize path; +@synthesize queryParams; + +#define INVALID_QUERY_PARAM_ERROR @"InvalidQueryParameter" + + ++ (dispatch_queue_t)sharedQueue +{ + // We use this shared queue across all of the FQueries so things happen FIFO (as opposed to dispatch_get_global_queue(0, 0) which is concurrent) + static dispatch_once_t pred; + static dispatch_queue_t sharedDispatchQueue; + + dispatch_once(&pred, ^{ + sharedDispatchQueue = dispatch_queue_create("FirebaseWorker", NULL); + }); + + return sharedDispatchQueue; +} + +- (id) initWithRepo:(FRepo *)theRepo path:(FPath *)thePath { + return [self initWithRepo:theRepo path:thePath params:nil orderByCalled:NO priorityMethodCalled:NO]; +} + +- (id) initWithRepo:(FRepo *)theRepo + path:(FPath *)thePath + params:(FQueryParams *)theParams + orderByCalled:(BOOL)orderByCalled +priorityMethodCalled:(BOOL)priorityMethodCalled { + self = [super init]; + if (self) { + self.repo = theRepo; + self.path = thePath; + if (!theParams) { + theParams = [FQueryParams defaultInstance]; + } + if (![theParams isValid]) { + @throw [[NSException alloc] initWithName:@"InvalidArgumentError" reason:@"Queries are limited to two constraints" userInfo:nil]; + } + self.queryParams = theParams; + self.orderByCalled = orderByCalled; + self.priorityMethodCalled = priorityMethodCalled; + } + return self; +} + +- (FQuerySpec *)querySpec { + return [[FQuerySpec alloc] initWithPath:self.path params:self.queryParams]; +} + +- (void)validateQueryEndpointsForParams:(FQueryParams *)params { + if ([params.index isEqual:[FKeyIndex keyIndex]]) { + if ([params hasStart]) { + if (params.indexStartKey != [FUtilities minName]) { + [NSException raise:INVALID_QUERY_PARAM_ERROR format:@"Can't use queryStartingAtValue:childKey: or queryEqualTo:andChildKey: in combination with queryOrderedByKey"]; + } + if (![params.indexStartValue.val isKindOfClass:[NSString class]]) { + [NSException raise:INVALID_QUERY_PARAM_ERROR format:@"Can't use queryStartingAtValue: with other types than string in combination with queryOrderedByKey"]; + } + } + if ([params hasEnd]) { + if (params.indexEndKey != [FUtilities maxName]) { + [NSException raise:INVALID_QUERY_PARAM_ERROR format:@"Can't use queryEndingAtValue:childKey: or queryEqualToValue:childKey: in combination with queryOrderedByKey"]; + } + if (![params.indexEndValue.val isKindOfClass:[NSString class]]) { + [NSException raise:INVALID_QUERY_PARAM_ERROR format:@"Can't use queryEndingAtValue: with other types than string in combination with queryOrderedByKey"]; + } + } + } else if ([params.index isEqual:[FPriorityIndex priorityIndex]]) { + if (([params hasStart] && ![FValidation validatePriorityValue:params.indexStartValue.val]) || + ([params hasEnd] && ![FValidation validatePriorityValue:params.indexEndValue.val])) { + [NSException raise:INVALID_QUERY_PARAM_ERROR format:@"When using queryOrderedByPriority, values provided to queryStartingAtValue:, queryEndingAtValue:, or queryEqualToValue: must be valid priorities."]; + } + } +} + +- (void)validateEqualToCall { + if ([self.queryParams hasStart]) { + [NSException raise:INVALID_QUERY_PARAM_ERROR format:@"Cannot combine queryEqualToValue: and queryStartingAtValue:"]; + } + if ([self.queryParams hasEnd]) { + [NSException raise:INVALID_QUERY_PARAM_ERROR format:@"Cannot combine queryEqualToValue: and queryEndingAtValue:"]; + } +} + +- (void)validateNoPreviousOrderByCalled { + if (self.orderByCalled) { + [NSException raise:INVALID_QUERY_PARAM_ERROR format:@"Cannot use multiple queryOrderedBy calls!"]; + } +} + +- (void)validateIndexValueType:(id)type fromMethod:(NSString *)method { + if (type != nil && + ![type isKindOfClass:[NSNumber class]] && + ![type isKindOfClass:[NSString class]] && + ![type isKindOfClass:[NSNull class]]) { + [NSException raise:INVALID_QUERY_PARAM_ERROR format:@"You can only pass nil, NSString or NSNumber to %@", method]; + } +} + +- (FIRDatabaseQuery *)queryStartingAtValue:(id)startValue { + return [self queryStartingAtInternal:startValue childKey:nil from:@"queryStartingAtValue:" priorityMethod:NO]; +} + +- (FIRDatabaseQuery *)queryStartingAtValue:(id)startValue childKey:(NSString *)childKey { + if ([self.queryParams.index isEqual:[FKeyIndex keyIndex]]) { + @throw [[NSException alloc] initWithName:INVALID_QUERY_PARAM_ERROR + reason:@"You must use queryStartingAtValue: instead of queryStartingAtValue:childKey: when using queryOrderedByKey:" + userInfo:nil]; + } + return [self queryStartingAtInternal:startValue + childKey:childKey + from:@"queryStartingAtValue:childKey:" + priorityMethod:NO]; +} + +- (FIRDatabaseQuery *)queryStartingAtInternal:(id)startValue + childKey:(NSString *)childKey + from:(NSString *)methodName + priorityMethod:(BOOL)priorityMethod { + [self validateIndexValueType:startValue fromMethod:methodName]; + if (childKey != nil) { + [FValidation validateFrom:methodName validKey:childKey]; + } + if ([self.queryParams hasStart]) { + [NSException raise:INVALID_QUERY_PARAM_ERROR + format:@"Can't call %@ after queryStartingAtValue or queryEqualToValue was previously called", methodName]; + } + id startNode = [FSnapshotUtilities nodeFrom:startValue]; + FQueryParams* params = [self.queryParams startAt:startNode childKey:childKey]; + [self validateQueryEndpointsForParams:params]; + return [[FIRDatabaseQuery alloc] initWithRepo:self.repo + path:self.path + params:params + orderByCalled:self.orderByCalled + priorityMethodCalled:priorityMethod || self.priorityMethodCalled]; +} + +- (FIRDatabaseQuery *)queryEndingAtValue:(id)endValue { + return [self queryEndingAtInternal:endValue + childKey:nil + from:@"queryEndingAtValue:" + priorityMethod:NO]; +} + +- (FIRDatabaseQuery *)queryEndingAtValue:(id)endValue childKey:(NSString *)childKey { + if ([self.queryParams.index isEqual:[FKeyIndex keyIndex]]) { + @throw [[NSException alloc] initWithName:INVALID_QUERY_PARAM_ERROR + reason:@"You must use queryEndingAtValue: instead of queryEndingAtValue:childKey: when using queryOrderedByKey:" + userInfo:nil]; + } + + return [self queryEndingAtInternal:endValue + childKey:childKey + from:@"queryEndingAtValue:childKey:" + priorityMethod:NO]; +} + +- (FIRDatabaseQuery *)queryEndingAtInternal:(id)endValue + childKey:(NSString *)childKey + from:(NSString *)methodName + priorityMethod:(BOOL)priorityMethod { + [self validateIndexValueType:endValue fromMethod:methodName]; + if (childKey != nil) { + [FValidation validateFrom:methodName validKey:childKey]; + } + if ([self.queryParams hasEnd]) { + [NSException raise:INVALID_QUERY_PARAM_ERROR + format:@"Can't call %@ after queryEndingAtValue or queryEqualToValue was previously called", methodName]; + } + id endNode = [FSnapshotUtilities nodeFrom:endValue]; + FQueryParams* params = [self.queryParams endAt:endNode childKey:childKey]; + [self validateQueryEndpointsForParams:params]; + return [[FIRDatabaseQuery alloc] initWithRepo:self.repo + path:self.path + params:params + orderByCalled:self.orderByCalled + priorityMethodCalled:priorityMethod || self.priorityMethodCalled]; +} + +- (FIRDatabaseQuery *)queryEqualToValue:(id)value { + return [self queryEqualToInternal:value childKey:nil from:@"queryEqualToValue:" priorityMethod:NO]; +} + +- (FIRDatabaseQuery *)queryEqualToValue:(id)value childKey:(NSString *)childKey { + if ([self.queryParams.index isEqual:[FKeyIndex keyIndex]]) { + @throw [[NSException alloc] initWithName:INVALID_QUERY_PARAM_ERROR + reason:@"You must use queryEqualToValue: instead of queryEqualTo:childKey: when using queryOrderedByKey:" + userInfo:nil]; + } + return [self queryEqualToInternal:value childKey:childKey from:@"queryEqualToValue:childKey:" priorityMethod:NO]; +} + +- (FIRDatabaseQuery *)queryEqualToInternal:(id)value + childKey:(NSString *)childKey + from:(NSString *)methodName + priorityMethod:(BOOL)priorityMethod { + [self validateIndexValueType:value fromMethod:methodName]; + if (childKey != nil) { + [FValidation validateFrom:methodName validKey:childKey]; + } + if ([self.queryParams hasEnd] || [self.queryParams hasStart]) { + [NSException raise:INVALID_QUERY_PARAM_ERROR + format:@"Can't call %@ after queryStartingAtValue, queryEndingAtValue or queryEqualToValue was previously called", methodName]; + } + id node = [FSnapshotUtilities nodeFrom:value]; + FQueryParams* params = [[self.queryParams startAt:node childKey:childKey] endAt:node childKey:childKey]; + [self validateQueryEndpointsForParams:params]; + return [[FIRDatabaseQuery alloc] initWithRepo:self.repo + path:self.path + params:params + orderByCalled:self.orderByCalled + priorityMethodCalled:priorityMethod || self.priorityMethodCalled]; +} + +- (void)validateLimitRange:(NSUInteger)limit +{ + // No need to check for negative ranges, since limit is unsigned + if (limit == 0) { + [NSException raise:INVALID_QUERY_PARAM_ERROR format:@"Limit can't be zero"]; + } + if (limit >= 1ul<<31) { + [NSException raise:INVALID_QUERY_PARAM_ERROR format:@"Limit must be less than 2,147,483,648"]; + } +} + +- (FIRDatabaseQuery *)queryLimitedToFirst:(NSUInteger)limit { + if (self.queryParams.limitSet) { + [NSException raise:INVALID_QUERY_PARAM_ERROR format:@"Can't call queryLimitedToFirst: if a limit was previously set"]; + } + [self validateLimitRange:limit]; + FQueryParams* params = [self.queryParams limitToFirst:limit]; + return [[FIRDatabaseQuery alloc] initWithRepo:self.repo + path:self.path + params:params + orderByCalled:self.orderByCalled + priorityMethodCalled:self.priorityMethodCalled]; +} + +- (FIRDatabaseQuery *)queryLimitedToLast:(NSUInteger)limit { + if (self.queryParams.limitSet) { + [NSException raise:INVALID_QUERY_PARAM_ERROR format:@"Can't call queryLimitedToLast: if a limit was previously set"]; + } + [self validateLimitRange:limit]; + FQueryParams* params = [self.queryParams limitToLast:limit]; + return [[FIRDatabaseQuery alloc] initWithRepo:self.repo + path:self.path + params:params + orderByCalled:self.orderByCalled + priorityMethodCalled:self.priorityMethodCalled]; +} + +- (FIRDatabaseQuery *)queryOrderedByChild:(NSString *)indexPathString { + if ([indexPathString isEqualToString:@"$key"] || [indexPathString isEqualToString:@".key"]) { + @throw [[NSException alloc] initWithName:INVALID_QUERY_PARAM_ERROR + reason:[NSString stringWithFormat:@"(queryOrderedByChild:) %@ is invalid. Use queryOrderedByKey: instead.", indexPathString] + userInfo:nil]; + } else if ([indexPathString isEqualToString:@"$priority"] || [indexPathString isEqualToString:@".priority"]) { + @throw [[NSException alloc] initWithName:INVALID_QUERY_PARAM_ERROR + reason:[NSString stringWithFormat:@"(queryOrderedByChild:) %@ is invalid. Use queryOrderedByPriority: instead.", indexPathString] + userInfo:nil]; + } else if ([indexPathString isEqualToString:@"$value"] || [indexPathString isEqualToString:@".value"]) { + @throw [[NSException alloc] initWithName:INVALID_QUERY_PARAM_ERROR + reason:[NSString stringWithFormat:@"(queryOrderedByChild:) %@ is invalid. Use queryOrderedByValue: instead.", indexPathString] + userInfo:nil]; + } + [self validateNoPreviousOrderByCalled]; + + [FValidation validateFrom:@"queryOrderedByChild:" validPathString:indexPathString]; + FPath *indexPath = [FPath pathWithString:indexPathString]; + if (indexPath.isEmpty) { + @throw [[NSException alloc] initWithName:INVALID_QUERY_PARAM_ERROR + reason:[NSString stringWithFormat:@"(queryOrderedByChild:) with an empty path is invalid. Use queryOrderedByValue: instead."] + userInfo:nil]; + } + id index = [[FPathIndex alloc] initWithPath:indexPath]; + + FQueryParams *params = [self.queryParams orderBy:index]; + [self validateQueryEndpointsForParams:params]; + return [[FIRDatabaseQuery alloc] initWithRepo:self.repo + path:self.path + params:params + orderByCalled:YES + priorityMethodCalled:self.priorityMethodCalled]; +} + +- (FIRDatabaseQuery *) queryOrderedByKey { + [self validateNoPreviousOrderByCalled]; + FQueryParams *params = [self.queryParams orderBy:[FKeyIndex keyIndex]]; + [self validateQueryEndpointsForParams:params]; + return [[FIRDatabaseQuery alloc] initWithRepo:self.repo + path:self.path + params:params + orderByCalled:YES + priorityMethodCalled:self.priorityMethodCalled]; +} + +- (FIRDatabaseQuery *) queryOrderedByValue { + [self validateNoPreviousOrderByCalled]; + FQueryParams *params = [self.queryParams orderBy:[FValueIndex valueIndex]]; + return [[FIRDatabaseQuery alloc] initWithRepo:self.repo + path:self.path + params:params + orderByCalled:YES + priorityMethodCalled:self.priorityMethodCalled]; +} + +- (FIRDatabaseQuery *) queryOrderedByPriority { + [self validateNoPreviousOrderByCalled]; + FQueryParams *params = [self.queryParams orderBy:[FPriorityIndex priorityIndex]]; + return [[FIRDatabaseQuery alloc] initWithRepo:self.repo + path:self.path + params:params + orderByCalled:YES + priorityMethodCalled:self.priorityMethodCalled]; +} + +- (FIRDatabaseHandle)observeEventType:(FIRDataEventType)eventType withBlock:(void (^)(FIRDataSnapshot *))block { + [FValidation validateFrom:@"observeEventType:withBlock:" knownEventType:eventType]; + return [self observeEventType:eventType withBlock:block withCancelBlock:nil]; +} + + +- (FIRDatabaseHandle)observeEventType:(FIRDataEventType)eventType andPreviousSiblingKeyWithBlock:(fbt_void_datasnapshot_nsstring)block { + [FValidation validateFrom:@"observeEventType:andPreviousSiblingKeyWithBlock:" knownEventType:eventType]; + return [self observeEventType:eventType andPreviousSiblingKeyWithBlock:block withCancelBlock:nil]; +} + + +- (FIRDatabaseHandle)observeEventType:(FIRDataEventType)eventType withBlock:(fbt_void_datasnapshot)block withCancelBlock:(fbt_void_nserror)cancelBlock { + [FValidation validateFrom:@"observeEventType:withBlock:withCancelBlock:" knownEventType:eventType]; + + if (eventType == FIRDataEventTypeValue) { + // Handle FIRDataEventTypeValue specially because they shouldn't have prevName callbacks + NSUInteger handle = [[FUtilities LUIDGenerator] integerValue]; + [self observeValueEventWithHandle:handle withBlock:block cancelCallback:cancelBlock]; + return handle; + } else { + // Wrap up the userCallback so we can treat everything as a callback that has a prevName + fbt_void_datasnapshot userCallback = [block copy]; + return [self observeEventType:eventType andPreviousSiblingKeyWithBlock:^(FIRDataSnapshot *snapshot, NSString *prevName) { + if (userCallback != nil) { + userCallback(snapshot); + } + } withCancelBlock:cancelBlock]; + } +} + +- (FIRDatabaseHandle)observeEventType:(FIRDataEventType)eventType andPreviousSiblingKeyWithBlock:(fbt_void_datasnapshot_nsstring)block withCancelBlock:(fbt_void_nserror)cancelBlock { + [FValidation validateFrom:@"observeEventType:andPreviousSiblingKeyWithBlock:withCancelBlock:" knownEventType:eventType]; + + + if (eventType == FIRDataEventTypeValue) { + // TODO: This gets hit by observeSingleEventOfType. Need to fix. + /* + @throw [[NSException alloc] initWithName:@"InvalidEventTypeForObserver" + reason:@"(observeEventType:andPreviousSiblingKeyWithBlock:withCancelBlock:) Cannot use observeEventType:andPreviousSiblingKeyWithBlock:withCancelBlock: with FIRDataEventTypeValue. Use observeEventType:withBlock:withCancelBlock: instead." + userInfo:nil]; + */ + } + + NSUInteger handle = [[FUtilities LUIDGenerator] integerValue]; + NSDictionary *callbacks = @{[NSNumber numberWithInteger:eventType]: [block copy]}; + [self observeChildEventWithHandle:handle withCallbacks:callbacks cancelCallback:cancelBlock]; + + return handle; +} + +// If we want to distinguish between value event listeners and child event listeners, like in the Java client, we can +// consider exporting this. If we do, add argument validation. Otherwise, arguments are validated in the public-facing +// portions of the API. Also, move the FIRDatabaseHandle logic. +- (void)observeValueEventWithHandle:(FIRDatabaseHandle)handle withBlock:(fbt_void_datasnapshot)block cancelCallback:(fbt_void_nserror)cancelBlock { + // Note that we don't need to copy the callbacks here, FEventRegistration callback properties set to copy + FValueEventRegistration *registration = [[FValueEventRegistration alloc] initWithRepo:self.repo + handle:handle + callback:block + cancelCallback:cancelBlock]; + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + [self.repo addEventRegistration:registration forQuery:self.querySpec]; + }); +} + +// Note: as with the above method, we may wish to expose this at some point. +- (void)observeChildEventWithHandle:(FIRDatabaseHandle)handle withCallbacks:(NSDictionary *)callbacks cancelCallback:(fbt_void_nserror)cancelBlock { + // Note that we don't need to copy the callbacks here, FEventRegistration callback properties set to copy + FChildEventRegistration *registration = [[FChildEventRegistration alloc] initWithRepo:self.repo + handle:handle + callbacks:callbacks + cancelCallback:cancelBlock]; + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + [self.repo addEventRegistration:registration forQuery:self.querySpec]; + }); +} + + +- (void) removeObserverWithHandle:(FIRDatabaseHandle)handle { + FValueEventRegistration *event = [[FValueEventRegistration alloc] initWithRepo:self.repo + handle:handle + callback:nil + cancelCallback:nil]; + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + [self.repo removeEventRegistration:event forQuery:self.querySpec]; + }); +} + + +- (void) removeAllObservers { + [self removeObserverWithHandle:NSNotFound]; +} + +- (void)keepSynced:(BOOL)keepSynced { + if ([self.path.getFront isEqualToString:kDotInfoPrefix]) { + [NSException raise:NSInvalidArgumentException format:@"Can't keep query on .info tree synced (this already is the case)."]; + } + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + [self.repo keepQuery:self.querySpec synced:keepSynced]; + }); +} + +- (void)observeSingleEventOfType:(FIRDataEventType)eventType withBlock:(fbt_void_datasnapshot)block { + + [self observeSingleEventOfType:eventType withBlock:block withCancelBlock:nil]; +} + + +- (void)observeSingleEventOfType:(FIRDataEventType)eventType andPreviousSiblingKeyWithBlock:(fbt_void_datasnapshot_nsstring)block { + + [self observeSingleEventOfType:eventType andPreviousSiblingKeyWithBlock:block withCancelBlock:nil]; +} + + +- (void)observeSingleEventOfType:(FIRDataEventType)eventType withBlock:(fbt_void_datasnapshot)block withCancelBlock:(fbt_void_nserror)cancelBlock { + + // XXX: user reported memory leak in method + + // "When you copy a block, any references to other blocks from within that block are copied if necessary—an entire tree may be copied (from the top). If you have block variables and you reference a block from within the block, that block will be copied." + // http://developer.apple.com/library/ios/#documentation/cocoa/Conceptual/Blocks/Articles/bxVariables.html#//apple_ref/doc/uid/TP40007502-CH6-SW1 + // So... we don't need to do this since inside the on: we copy this block off the stack to the heap. + // __block fbt_void_datasnapshot userCallback = [callback copy]; + + [self observeSingleEventOfType:eventType andPreviousSiblingKeyWithBlock:^(FIRDataSnapshot *snapshot, NSString *prevName) { + if (block != nil) { + block(snapshot); + } + } withCancelBlock:cancelBlock]; +} + +/** +* Attaches a listener, waits for the first event, and then removes the listener +*/ +- (void)observeSingleEventOfType:(FIRDataEventType)eventType andPreviousSiblingKeyWithBlock:(fbt_void_datasnapshot_nsstring)block withCancelBlock:(fbt_void_nserror)cancelBlock { + + // XXX: user reported memory leak in method + + // "When you copy a block, any references to other blocks from within that block are copied if necessary—an entire tree may be copied (from the top). If you have block variables and you reference a block from within the block, that block will be copied." + // http://developer.apple.com/library/ios/#documentation/cocoa/Conceptual/Blocks/Articles/bxVariables.html#//apple_ref/doc/uid/TP40007502-CH6-SW1 + // So... we don't need to do this since inside the on: we copy this block off the stack to the heap. + // __block fbt_void_datasnapshot userCallback = [callback copy]; + + __block FIRDatabaseHandle handle; + __block BOOL firstCall = YES; + + fbt_void_datasnapshot_nsstring callback = [block copy]; + fbt_void_datasnapshot_nsstring wrappedCallback = ^(FIRDataSnapshot *snap, NSString* prevName) { + if (firstCall) { + firstCall = NO; + [self removeObserverWithHandle:handle]; + callback(snap, prevName); + } + }; + + fbt_void_nserror cancelCallback = [cancelBlock copy]; + handle = [self observeEventType:eventType andPreviousSiblingKeyWithBlock:wrappedCallback withCancelBlock:^(NSError* error){ + + [self removeObserverWithHandle:handle]; + + if (cancelCallback) { + cancelCallback(error); + } + }]; +} + +- (NSString *) description { + return [NSString stringWithFormat:@"(%@ %@)", self.path, self.queryParams.description]; +} + +- (FIRDatabaseReference *) ref { + return [[FIRDatabaseReference alloc] initWithRepo:self.repo path:self.path]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRMutableData.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRMutableData.m new file mode 100644 index 0000000..77a022a --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRMutableData.m @@ -0,0 +1,134 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRMutableData.h" +#import "FIRMutableData_Private.h" +#import "FSnapshotHolder.h" +#import "FSnapshotUtilities.h" +#import "FChildrenNode.h" +#import "FTransformedEnumerator.h" +#import "FNamedNode.h" +#import "FIndexedNode.h" + +@interface FIRMutableData () + +- (id) initWithPrefixPath:(FPath *)path andSnapshotHolder:(FSnapshotHolder *)snapshotHolder; + +@property (strong, nonatomic) FSnapshotHolder* data; +@property (strong, nonatomic) FPath* prefixPath; + +@end + +@implementation FIRMutableData + +@synthesize data; +@synthesize prefixPath; + +- (id) initWithNode:(id)node { + FSnapshotHolder* holder = [[FSnapshotHolder alloc] init]; + FPath* path = [FPath empty]; + [holder updateSnapshot:path withNewSnapshot:node]; + return [self initWithPrefixPath:path andSnapshotHolder:holder]; +} + +- (id) initWithPrefixPath:(FPath *)path andSnapshotHolder:(FSnapshotHolder *)snapshotHolder { + self = [super init]; + if (self) { + self.prefixPath = path; + self.data = snapshotHolder; + } + return self; +} + +- (FIRMutableData *)childDataByAppendingPath:(NSString *)path { + FPath* wholePath = [self.prefixPath childFromString:path]; + return [[FIRMutableData alloc] initWithPrefixPath:wholePath andSnapshotHolder:self.data]; +} + +- (FIRMutableData *) parent { + if ([self.prefixPath isEmpty]) { + return nil; + } else { + FPath* path = [self.prefixPath parent]; + return [[FIRMutableData alloc] initWithPrefixPath:path andSnapshotHolder:self.data]; + } +} + +- (void) setValue:(id)aValue { + id node = [FSnapshotUtilities nodeFrom:aValue withValidationFrom:@"setValue:"]; + [self.data updateSnapshot:self.prefixPath withNewSnapshot:node]; +} + +- (void) setPriority:(id)aPriority { + id node = [self.data getNode:self.prefixPath]; + id pri = [FSnapshotUtilities nodeFrom:aPriority]; + node = [node updatePriority:pri]; + [self.data updateSnapshot:self.prefixPath withNewSnapshot:node]; +} + +- (id) value { + return [[self.data getNode:self.prefixPath] val]; +} + +- (id) priority { + return [[[self.data getNode:self.prefixPath] getPriority] val]; +} + +- (BOOL) hasChildren { + id node = [self.data getNode:self.prefixPath]; + return ![node isLeafNode] && ![(FChildrenNode*)node isEmpty]; +} + +- (BOOL) hasChildAtPath:(NSString *)path { + id node = [self.data getNode:self.prefixPath]; + FPath* childPath = [[FPath alloc] initWith:path]; + return ![[node getChild:childPath] isEmpty]; +} + +- (NSUInteger) childrenCount { + return [[self.data getNode:self.prefixPath] numChildren]; +} + +- (NSString *) key { + return [self.prefixPath getBack]; +} + +- (id) nodeValue { + return [self.data getNode:self.prefixPath]; +} + +- (NSEnumerator *) children { + FIndexedNode *indexedNode = [FIndexedNode indexedNodeWithNode:self.nodeValue]; + return [[FTransformedEnumerator alloc] initWithEnumerator:[indexedNode childEnumerator] andTransform:^id(FNamedNode *node) { + FPath* childPath = [self.prefixPath childFromString:node.name]; + FIRMutableData * childData = [[FIRMutableData alloc] initWithPrefixPath:childPath andSnapshotHolder:self.data]; + return childData; + }]; +} + +- (BOOL) isEqualToData:(FIRMutableData *)other { + return self.data == other.data && [[self.prefixPath description] isEqualToString:[other.prefixPath description]]; +} + +- (NSString *) description { + if (self.key == nil) { + return [NSString stringWithFormat:@"FIRMutableData (top-most transaction) %@ %@", self.key, self.value]; + } else { + return [NSString stringWithFormat:@"FIRMutableData (%@) %@", self.key, self.value]; + } +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRServerValue.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRServerValue.m new file mode 100644 index 0000000..14bb745 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRServerValue.m @@ -0,0 +1,30 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRDatabaseReference.h" +#import "FIRServerValue.h" + +@implementation FIRServerValue + ++ (NSDictionary *) timestamp { + static NSDictionary *timestamp = nil; + if (timestamp == nil) { + timestamp = @{ @".sv": @"timestamp" }; + } + return timestamp; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRTransactionResult.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRTransactionResult.m new file mode 100644 index 0000000..8afc5b7 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/FIRTransactionResult.m @@ -0,0 +1,39 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRTransactionResult.h" +#import "FIRTransactionResult_Private.h" + +@implementation FIRTransactionResult + +@synthesize update; +@synthesize isSuccess; + ++ (FIRTransactionResult *)successWithValue:(FIRMutableData *)value { + FIRTransactionResult * result = [[FIRTransactionResult alloc] init]; + result.isSuccess = YES; + result.update = value; + return result; +} + ++ (FIRTransactionResult *) abort { + FIRTransactionResult * result = [[FIRTransactionResult alloc] init]; + result.isSuccess = NO; + result.update = nil; + return result; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRDataSnapshot_Private.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRDataSnapshot_Private.h new file mode 100644 index 0000000..c2d3871 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRDataSnapshot_Private.h @@ -0,0 +1,28 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRDataSnapshot.h" +#import "FIndexedNode.h" +#import "FTypedefs_Private.h" + +@interface FIRDataSnapshot () + +// in _Private for testing purposes +@property (nonatomic, strong) FIndexedNode *node; + +- (id)initWithRef:(FIRDatabaseReference *)ref indexedNode:(FIndexedNode *)node; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRDatabaseQuery_Private.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRDatabaseQuery_Private.h new file mode 100644 index 0000000..3a10fe3 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRDatabaseQuery_Private.h @@ -0,0 +1,43 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FRepo.h" +#import "FPath.h" +#import "FRepoManager.h" +#import "FTypedefs_Private.h" +#import "FQueryParams.h" +#import "FIRDatabaseQuery.h" + +@interface FIRDatabaseQuery () + ++ (dispatch_queue_t)sharedQueue; + +- (id) initWithRepo:(FRepo *)repo path:(FPath *)path; +- (id) initWithRepo:(FRepo *)repo + path:(FPath *)path + params:(FQueryParams *)params + orderByCalled:(BOOL)orderByCalled +priorityMethodCalled:(BOOL)priorityMethodCalled; + +@property (nonatomic, strong) FRepo* repo; +@property (nonatomic, strong) FPath* path; +@property (nonatomic, strong) FQueryParams *queryParams; +@property (nonatomic) BOOL orderByCalled; +@property (nonatomic) BOOL priorityMethodCalled; + +- (FQuerySpec *)querySpec; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRDatabaseReference_Private.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRDatabaseReference_Private.h new file mode 100644 index 0000000..cb28feb --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRDatabaseReference_Private.h @@ -0,0 +1,29 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRDatabaseReference.h" +#import "FTypedefs_Private.h" +#import "FIRDatabaseConfig.h" +#import "FRepo.h" + +@interface FIRDatabaseReference () + +- (id)initWithConfig:(FIRDatabaseConfig *)config; +- (id)initWithRepo:(FRepo *)repo path:(FPath *)path; + +// TODO: Update tests to not use this. ++ (FIRDatabaseConfig *)defaultConfig; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRDatabase_Private.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRDatabase_Private.h new file mode 100644 index 0000000..5b7f8cc --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRDatabase_Private.h @@ -0,0 +1,28 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRDatabase.h" + +@class FRepo; +@class FRepoInfo; +@class FIRDatabaseConfig; + +@interface FIRDatabase () + ++ (NSString *) buildVersion; ++ (FIRDatabase *) createDatabaseForTests:(FRepoInfo *)repoInfo config:(FIRDatabaseConfig *)config; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRMutableData_Private.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRMutableData_Private.h new file mode 100644 index 0000000..ee3aa96 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRMutableData_Private.h @@ -0,0 +1,26 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRMutableData.h" +#import "FNode.h" + +@interface FIRMutableData () + +- (id) initWithNode:(id)node; +- (id) nodeValue; +- (BOOL) isEqualToData:(FIRMutableData *)other; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRTransactionResult_Private.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRTransactionResult_Private.h new file mode 100644 index 0000000..82290f2 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FIRTransactionResult_Private.h @@ -0,0 +1,25 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRTransactionResult.h" +#import "FIRMutableData.h" + +@interface FIRTransactionResult () + +@property (nonatomic) BOOL isSuccess; +@property (nonatomic, strong) FIRMutableData * update; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FTypedefs_Private.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FTypedefs_Private.h new file mode 100644 index 0000000..73f4c9a --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Api/Private/FTypedefs_Private.h @@ -0,0 +1,56 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef __FTYPEDEFS_PRIVATE__ +#define __FTYPEDEFS_PRIVATE__ + +#import + +typedef NS_ENUM(NSInteger, FTransactionStatus) { + FTransactionInitializing, // 0 + FTransactionRun, // 1 + FTransactionSent, // 2 + FTransactionCompleted, // 3 + FTransactionSentNeedsAbort, // 4 + FTransactionNeedsAbort // 5 +}; + +@protocol FNode; +@class FPath; +@class FIRTransactionResult; +@class FIRMutableData; +@class FIRDataSnapshot; +@class FCompoundHash; + +typedef void (^fbt_void_nserror_bool_datasnapshot) (NSError* error, BOOL committed, FIRDataSnapshot * snapshot); +typedef FIRTransactionResult * (^fbt_transactionresult_mutabledata) (FIRMutableData * currentData); +typedef void (^fbt_void_path_node) (FPath*, id); +typedef void (^fbt_void_nsstring) (NSString *); +typedef BOOL (^fbt_bool_nsstring_node) (NSString *, id); +typedef void (^fbt_void_path_node_marray) (FPath *, id, NSMutableArray *); +typedef BOOL (^fbt_bool_void) (void); +typedef void (^fbt_void_nsstring_nsstring)(NSString *str1, NSString* str2); +typedef void (^fbt_void_nsstring_nserror)(NSString *str, NSError* error); +typedef BOOL (^fbt_bool_path)(FPath *str); +typedef void (^fbt_void_id)(id data); +typedef NSString* (^fbt_nsstring_void) (void); +typedef FCompoundHash* (^fbt_compoundhash_void) (void); +typedef NSArray* (^fbt_nsarray_nsstring_id)(NSString *status, id Data); +typedef NSArray* (^fbt_nsarray_nsstring)(NSString *status); + +// WWDC 2012 session 712 starting in page 83 for saving blocks in properties (use @property (strong) type name). + +#endif diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Constants/FConstants.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Constants/FConstants.h new file mode 100644 index 0000000..e97a8a1 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Constants/FConstants.h @@ -0,0 +1,190 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef Firebase_FConstants_h +#define Firebase_FConstants_h + +#import + +#pragma mark - +#pragma mark Wire Protocol Envelope Constants + +FOUNDATION_EXPORT NSString *const kFWPRequestType; +FOUNDATION_EXPORT NSString *const kFWPRequestTypeData; +FOUNDATION_EXPORT NSString *const kFWPRequestDataPayload; +FOUNDATION_EXPORT NSString *const kFWPRequestNumber; +FOUNDATION_EXPORT NSString *const kFWPRequestPayloadBody; +FOUNDATION_EXPORT NSString *const kFWPRequestError; +FOUNDATION_EXPORT NSString *const kFWPRequestAction; +FOUNDATION_EXPORT NSString *const kFWPResponseForRNData; +FOUNDATION_EXPORT NSString *const kFWPResponseForActionStatus; +FOUNDATION_EXPORT NSString *const kFWPResponseForActionStatusOk; +FOUNDATION_EXPORT NSString *const kFWPResponseForActionStatusDataStale; +FOUNDATION_EXPORT NSString *const kFWPResponseForActionData; +FOUNDATION_EXPORT NSString *const kFWPResponseDataWarnings; + +FOUNDATION_EXPORT NSString *const kFWPAsyncServerAction; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerPayloadBody; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerDataUpdate; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerDataMerge; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerDataRangeMerge; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerAuthRevoked; +FOUNDATION_EXPORT NSString *const kFWPASyncServerListenCancelled; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerSecurityDebug; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerDataUpdateBodyPath; // {“a”: “d”, “b”: {“p”: “/”, “d”: “”}} +FOUNDATION_EXPORT NSString *const kFWPAsyncServerDataUpdateBodyData; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerDataUpdateStartPath; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerDataUpdateEndPath; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerDataUpdateRangeMerge; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerDataUpdateBodyTag; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerDataQueries; + +FOUNDATION_EXPORT NSString *const kFWPAsyncServerEnvelopeType; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerEnvelopeData; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerControlMessage; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerControlMessageType; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerControlMessageData; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerDataMessage; + +FOUNDATION_EXPORT NSString *const kFWPAsyncServerHello; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerHelloTimestamp; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerHelloVersion; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerHelloConnectedHost; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerHelloSession; + +FOUNDATION_EXPORT NSString *const kFWPAsyncServerControlMessageShutdown; +FOUNDATION_EXPORT NSString *const kFWPAsyncServerControlMessageReset; + +#pragma mark - +#pragma mark Wire Protocol Payload Constants + +FOUNDATION_EXPORT NSString *const kFWPRequestActionPut; +FOUNDATION_EXPORT NSString *const kFWPRequestActionMerge; +FOUNDATION_EXPORT NSString *const kFWPRequestActionTaggedListen; +FOUNDATION_EXPORT NSString *const kFWPRequestActionTaggedUnlisten; +FOUNDATION_EXPORT NSString *const kFWPRequestActionListen; // {"t": "d", "d": {"r": 1, "a": "l", "b": { "p": "/" } } } +FOUNDATION_EXPORT NSString *const kFWPRequestActionUnlisten; +FOUNDATION_EXPORT NSString *const kFWPRequestActionStats; +FOUNDATION_EXPORT NSString *const kFWPRequestActionDisconnectPut; +FOUNDATION_EXPORT NSString *const kFWPRequestActionDisconnectMerge; +FOUNDATION_EXPORT NSString *const kFWPRequestActionDisconnectCancel; +FOUNDATION_EXPORT NSString *const kFWPRequestActionAuth; +FOUNDATION_EXPORT NSString *const kFWPRequestActionUnauth; +FOUNDATION_EXPORT NSString *const kFWPRequestCredential; +FOUNDATION_EXPORT NSString *const kFWPRequestPath; +FOUNDATION_EXPORT NSString *const kFWPRequestCounters; +FOUNDATION_EXPORT NSString *const kFWPRequestQueries; +FOUNDATION_EXPORT NSString *const kFWPRequestTag; +FOUNDATION_EXPORT NSString *const kFWPRequestData; +FOUNDATION_EXPORT NSString *const kFWPRequestHash; +FOUNDATION_EXPORT NSString *const kFWPRequestCompoundHash; +FOUNDATION_EXPORT NSString *const kFWPRequestCompoundHashPaths; +FOUNDATION_EXPORT NSString *const kFWPRequestCompoundHashHashes; +FOUNDATION_EXPORT NSString *const kFWPRequestStatus; + +#pragma mark - +#pragma mark Websock Transport Constants + +FOUNDATION_EXPORT NSString *const kWireProtocolVersionParam; +FOUNDATION_EXPORT NSString *const kWebsocketProtocolVersion; +FOUNDATION_EXPORT NSString *const kWebsocketServerKillPacket; +FOUNDATION_EXPORT const int kWebsocketMaxFrameSize; +FOUNDATION_EXPORT NSUInteger const kWebsocketKeepaliveInterval; +FOUNDATION_EXPORT NSUInteger const kWebsocketConnectTimeout; + +FOUNDATION_EXPORT float const kPersistentConnReconnectMinDelay; +FOUNDATION_EXPORT float const kPersistentConnReconnectMaxDelay; +FOUNDATION_EXPORT float const kPersistentConnReconnectMultiplier; +FOUNDATION_EXPORT float const kPersistentConnSuccessfulConnectionEstablishedDelay; + +#pragma mark - +#pragma mark Query / QueryParams constants + +FOUNDATION_EXPORT NSString *const kQueryDefault; +FOUNDATION_EXPORT NSString *const kQueryDefaultObject; +FOUNDATION_EXPORT NSString *const kViewManagerDictConstView; +FOUNDATION_EXPORT NSString *const kFQPIndexStartValue; +FOUNDATION_EXPORT NSString *const kFQPIndexStartName; +FOUNDATION_EXPORT NSString *const kFQPIndexEndValue; +FOUNDATION_EXPORT NSString *const kFQPIndexEndName; +FOUNDATION_EXPORT NSString *const kFQPLimit; +FOUNDATION_EXPORT NSString *const kFQPViewFrom; +FOUNDATION_EXPORT NSString *const kFQPViewFromLeft; +FOUNDATION_EXPORT NSString *const kFQPViewFromRight; +FOUNDATION_EXPORT NSString *const kFQPIndex; + +#pragma mark - +#pragma mark Interrupt Reasons + +FOUNDATION_EXPORT NSString *const kFInterruptReasonServerKill; +FOUNDATION_EXPORT NSString *const kFInterruptReasonWaitingForOpen; +FOUNDATION_EXPORT NSString *const kFInterruptReasonRepoInterrupt; +FOUNDATION_EXPORT NSString *const kFInterruptReasonAuthExpired; + +#pragma mark - +#pragma mark Payload constants + +FOUNDATION_EXPORT NSString *const kPayloadPriority; +FOUNDATION_EXPORT NSString *const kPayloadValue; +FOUNDATION_EXPORT NSString *const kPayloadMetadataPrefix; + +#pragma mark - +#pragma mark ServerValue constants + +FOUNDATION_EXPORT NSString *const kServerValueSubKey; +FOUNDATION_EXPORT NSString *const kServerValuePriority; + +#pragma mark - +#pragma mark .info/ constants + +FOUNDATION_EXPORT NSString *const kDotInfoPrefix; +FOUNDATION_EXPORT NSString *const kDotInfoConnected; +FOUNDATION_EXPORT NSString *const kDotInfoServerTimeOffset; + +#pragma mark - +#pragma mark ObjectiveC to JavaScript type constants + +FOUNDATION_EXPORT NSString *const kJavaScriptObject; +FOUNDATION_EXPORT NSString *const kJavaScriptString; +FOUNDATION_EXPORT NSString *const kJavaScriptBoolean; +FOUNDATION_EXPORT NSString *const kJavaScriptNumber; +FOUNDATION_EXPORT NSString *const kJavaScriptNull; +FOUNDATION_EXPORT NSString *const kJavaScriptTrue; +FOUNDATION_EXPORT NSString *const kJavaScriptFalse; + +#pragma mark - +#pragma mark Error handling constants + +FOUNDATION_EXPORT NSString *const kFErrorDomain; +FOUNDATION_EXPORT NSUInteger const kFAuthError; +FOUNDATION_EXPORT NSString *const kFErrorWriteCanceled; + +#pragma mark - +#pragma mark Validation Constants + +FOUNDATION_EXPORT NSUInteger const kFirebaseMaxObjectDepth; +FOUNDATION_EXPORT const unsigned int kFirebaseMaxLeafSize; + +#pragma mark - +#pragma mark Transaction Constants + +FOUNDATION_EXPORT NSUInteger const kFTransactionMaxRetries; +FOUNDATION_EXPORT NSString *const kFTransactionTooManyRetries; +FOUNDATION_EXPORT NSString *const kFTransactionNoData; +FOUNDATION_EXPORT NSString *const kFTransactionSet; +FOUNDATION_EXPORT NSString *const kFTransactionDisconnect; + +#endif diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Constants/FConstants.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Constants/FConstants.m new file mode 100644 index 0000000..e492ba1 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Constants/FConstants.m @@ -0,0 +1,183 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FConstants.h" + +#pragma mark - +#pragma mark Wire Protocol Envelope Constants + +NSString *const kFWPRequestType = @"t"; +NSString *const kFWPRequestTypeData = @"d"; +NSString *const kFWPRequestDataPayload = @"d"; +NSString *const kFWPRequestNumber = @"r"; +NSString *const kFWPRequestPayloadBody = @"b"; +NSString *const kFWPRequestError = @"error"; +NSString *const kFWPRequestAction = @"a"; +NSString *const kFWPResponseForRNData = @"b"; +NSString *const kFWPResponseForActionStatus = @"s"; +NSString *const kFWPResponseForActionStatusOk = @"ok"; +NSString *const kFWPResponseForActionStatusDataStale = @"datastale"; +NSString *const kFWPResponseForActionData = @"d"; +NSString *const kFWPResponseDataWarnings = @"w"; +NSString *const kFWPAsyncServerAction = @"a"; +NSString *const kFWPAsyncServerPayloadBody = @"b"; +NSString *const kFWPAsyncServerDataUpdate = @"d"; +NSString *const kFWPAsyncServerDataMerge = @"m"; +NSString *const kFWPAsyncServerDataRangeMerge = @"rm"; +NSString *const kFWPAsyncServerAuthRevoked = @"ac"; +NSString *const kFWPASyncServerListenCancelled = @"c"; +NSString *const kFWPAsyncServerSecurityDebug = @"sd"; +NSString *const kFWPAsyncServerDataUpdateBodyPath = @"p"; // {“a”: “d”, “b”: {“p”: “/”, “d”: “”}} +NSString *const kFWPAsyncServerDataUpdateBodyData = @"d"; +NSString *const kFWPAsyncServerDataUpdateStartPath = @"s"; +NSString *const kFWPAsyncServerDataUpdateEndPath = @"e"; +NSString *const kFWPAsyncServerDataUpdateRangeMerge = @"m"; +NSString *const kFWPAsyncServerDataUpdateBodyTag = @"t"; +NSString *const kFWPAsyncServerDataQueries = @"q"; + +NSString *const kFWPAsyncServerEnvelopeType = @"t"; +NSString *const kFWPAsyncServerEnvelopeData = @"d"; +NSString *const kFWPAsyncServerControlMessage = @"c"; +NSString *const kFWPAsyncServerControlMessageType = @"t"; +NSString *const kFWPAsyncServerControlMessageData = @"d"; +NSString *const kFWPAsyncServerDataMessage = @"d"; + +NSString *const kFWPAsyncServerHello = @"h"; +NSString *const kFWPAsyncServerHelloTimestamp = @"ts"; +NSString *const kFWPAsyncServerHelloVersion = @"v"; +NSString *const kFWPAsyncServerHelloConnectedHost = @"h"; +NSString *const kFWPAsyncServerHelloSession = @"s"; + +NSString *const kFWPAsyncServerControlMessageShutdown = @"s"; +NSString *const kFWPAsyncServerControlMessageReset = @"r"; + +#pragma mark - +#pragma mark Wire Protocol Payload Constants + +NSString *const kFWPRequestActionPut = @"p"; +NSString *const kFWPRequestActionMerge = @"m"; +NSString *const kFWPRequestActionListen = @"l"; // {"t": "d", "d": {"r": 1, "a": "l", "b": { "p": "/" } } } +NSString *const kFWPRequestActionUnlisten = @"u"; +NSString *const kFWPRequestActionStats = @"s"; +NSString *const kFWPRequestActionTaggedListen = @"q"; +NSString *const kFWPRequestActionTaggedUnlisten = @"n"; +NSString *const kFWPRequestActionDisconnectPut = @"o"; +NSString *const kFWPRequestActionDisconnectMerge = @"om"; +NSString *const kFWPRequestActionDisconnectCancel = @"oc"; +NSString *const kFWPRequestActionAuth = @"auth"; +NSString *const kFWPRequestActionUnauth = @"unauth"; +NSString *const kFWPRequestCredential = @"cred"; +NSString *const kFWPRequestPath = @"p"; +NSString *const kFWPRequestCounters = @"c"; +NSString *const kFWPRequestQueries = @"q"; +NSString *const kFWPRequestTag = @"t"; +NSString *const kFWPRequestData = @"d"; +NSString *const kFWPRequestHash = @"h"; +NSString *const kFWPRequestCompoundHash = @"ch"; +NSString *const kFWPRequestCompoundHashPaths = @"ps"; +NSString *const kFWPRequestCompoundHashHashes = @"hs"; +NSString *const kFWPRequestStatus = @"s"; + +#pragma mark - +#pragma mark Websock Transport Constants + +NSString *const kWireProtocolVersionParam = @"v"; +NSString *const kWebsocketProtocolVersion = @"5"; +NSString *const kWebsocketServerKillPacket = @"kill"; +const int kWebsocketMaxFrameSize = 16384; +NSUInteger const kWebsocketKeepaliveInterval = 45; +NSUInteger const kWebsocketConnectTimeout = 30; + +float const kPersistentConnReconnectMinDelay = 1.0; +float const kPersistentConnReconnectMaxDelay = 30.0; +float const kPersistentConnReconnectMultiplier = 1.3f; +float const kPersistentConnSuccessfulConnectionEstablishedDelay = 30.0; + +#pragma mark - +#pragma mark Query constants + +NSString *const kQueryDefault = @"default"; +NSString *const kQueryDefaultObject = @"{}"; +NSString *const kViewManagerDictConstView = @"view"; +NSString *const kFQPIndexStartValue = @"sp"; +NSString *const kFQPIndexStartName = @"sn"; +NSString *const kFQPIndexEndValue = @"ep"; +NSString *const kFQPIndexEndName = @"en"; +NSString *const kFQPLimit = @"l"; +NSString *const kFQPViewFrom = @"vf"; +NSString *const kFQPViewFromLeft = @"l"; +NSString *const kFQPViewFromRight = @"r"; +NSString *const kFQPIndex = @"i"; + +#pragma mark - +#pragma mark Interrupt Reasons + +NSString *const kFInterruptReasonServerKill = @"server_kill"; +NSString *const kFInterruptReasonWaitingForOpen = @"waiting_for_open"; +NSString *const kFInterruptReasonRepoInterrupt = @"repo_interrupt"; + +#pragma mark - +#pragma mark Payload constants + +NSString *const kPayloadPriority = @".priority"; +NSString *const kPayloadValue = @".value"; +NSString *const kPayloadMetadataPrefix = @"."; + +#pragma mark - +#pragma mark ServerValue constants + +NSString *const kServerValueSubKey = @".sv"; +NSString *const kServerValuePriority = @"timestamp"; + +#pragma mark - +#pragma mark .info/ constants + +NSString *const kDotInfoPrefix = @".info"; +NSString *const kDotInfoConnected = @"connected"; +NSString *const kDotInfoServerTimeOffset = @"serverTimeOffset"; + +#pragma mark - +#pragma mark ObjectiveC to JavaScript type constants + +NSString *const kJavaScriptObject = @"object"; +NSString *const kJavaScriptString = @"string"; +NSString *const kJavaScriptBoolean = @"boolean"; +NSString *const kJavaScriptNumber = @"number"; +NSString *const kJavaScriptNull = @"null"; +NSString *const kJavaScriptTrue = @"true"; +NSString *const kJavaScriptFalse = @"false"; + +#pragma mark - +#pragma mark Error handling constants + +NSString *const kFErrorDomain = @"com.firebase"; +NSUInteger const kFAuthError = 1; +NSString *const kFErrorWriteCanceled = @"write_canceled"; + +#pragma mark - +#pragma mark Validation Constants + +NSUInteger const kFirebaseMaxObjectDepth = 1000; +const unsigned int kFirebaseMaxLeafSize = 1024 * 1024 * 10; // 10 MB + +#pragma mark - +#pragma mark Transaction Constants + +NSUInteger const kFTransactionMaxRetries = 25; +NSString *const kFTransactionTooManyRetries = @"maxretry"; +NSString *const kFTransactionNoData = @"nodata"; +NSString *const kFTransactionSet = @"set"; +NSString *const kFTransactionDisconnect = @"disconnect"; diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FCompoundHash.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FCompoundHash.h new file mode 100644 index 0000000..cd5240e --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FCompoundHash.h @@ -0,0 +1,40 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FNode.h" + + +@interface FCompoundHashBuilder : NSObject + +- (FPath *)currentPath; + +@end + + +typedef BOOL (^FCompoundHashSplitStrategy) (FCompoundHashBuilder *builder); + + +@interface FCompoundHash : NSObject + +@property (nonatomic, strong, readonly) NSArray *posts; +@property (nonatomic, strong, readonly) NSArray *hashes; + ++ (FCompoundHash *)fromNode:(id)node; ++ (FCompoundHash *)fromNode:(id)node splitStrategy:(FCompoundHashSplitStrategy)strategy; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FCompoundHash.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FCompoundHash.m new file mode 100644 index 0000000..b4f72cd --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FCompoundHash.m @@ -0,0 +1,236 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FCompoundHash.h" +#import "FLeafNode.h" +#import "FStringUtilities.h" +#import "FSnapshotUtilities.h" +#import "FChildrenNode.h" + +@interface FCompoundHashBuilder () + +@property (nonatomic, strong) FCompoundHashSplitStrategy splitStrategy; + +@property (nonatomic, strong) NSMutableArray *currentPaths; +@property (nonatomic, strong) NSMutableArray *currentHashes; + +@end + +@implementation FCompoundHashBuilder { + + // NOTE: We use the existence of this to know if we've started building a range (i.e. encountered a leaf node). + NSMutableString *optHashValueBuilder; + + // The current path as a stack. This is used in combination with currentPathDepth to simultaneously store the + // last leaf node path. The depth is changed when descending and ascending, at the same time the current key + // is set for the current depth. Because the keys are left unchanged for ascending the path will also contain + // the path of the last visited leaf node (using lastLeafDepth elements) + NSMutableArray *currentPath; + NSInteger lastLeafDepth; + NSInteger currentPathDepth; + + BOOL needsComma; +} + +- (instancetype)initWithSplitStrategy:(FCompoundHashSplitStrategy)strategy { + self = [super init]; + if (self != nil) { + self->_splitStrategy = strategy; + self->optHashValueBuilder = nil; + self->currentPath = [NSMutableArray array]; + self->lastLeafDepth = -1; + self->currentPathDepth = 0; + self->needsComma = YES; + self->_currentPaths = [NSMutableArray array]; + self->_currentHashes = [NSMutableArray array]; + } + return self; +} + +- (BOOL)isBuildingRange { + return self->optHashValueBuilder != nil; +} + +- (NSUInteger)currentHashLength { + return self->optHashValueBuilder.length; +} + +- (FPath *)currentPath { + return [self currentPathWithDepth:self->currentPathDepth]; +} + +- (FPath *)currentPathWithDepth:(NSInteger)depth { + NSArray *pieces = [self->currentPath subarrayWithRange:NSMakeRange(0, depth)]; + return [[FPath alloc] initWithPieces:pieces andPieceNum:0]; +} + +- (void)enumerateCurrentPathToDepth:(NSInteger)depth withBlock:(void (^) (NSString *key))block { + for (NSInteger i = 0; i < depth; i++) { + block(self->currentPath[i]); + } +} + +- (void)appendKey:(NSString *)key toString:(NSMutableString *)string { + [FSnapshotUtilities appendHashV2RepresentationForString:key toString:string]; +} + +- (void)ensureRange { + if (![self isBuildingRange]) { + optHashValueBuilder = [NSMutableString string]; + [optHashValueBuilder appendString:@"("]; + [self enumerateCurrentPathToDepth:self->currentPathDepth withBlock:^(NSString *key) { + [self appendKey:key toString:self->optHashValueBuilder]; + [self->optHashValueBuilder appendString:@":("]; + }]; + self->needsComma = NO; + } +} + +- (void)processLeaf:(FLeafNode *)leafNode { + [self ensureRange]; + + self->lastLeafDepth = self->currentPathDepth; + [FSnapshotUtilities appendHashRepresentationForLeafNode:leafNode + toString:self->optHashValueBuilder + hashVersion:FDataHashVersionV2]; + self->needsComma = YES; + if (self.splitStrategy(self)) { + [self endRange]; + } +} + +- (void)startChild:(NSString *)key { + [self ensureRange]; + + if (self->needsComma) { + [self->optHashValueBuilder appendString:@","]; + } + [self appendKey:key toString:self->optHashValueBuilder]; + [self->optHashValueBuilder appendString:@":("]; + if (self->currentPathDepth == currentPath.count) { + [self->currentPath addObject:key]; + } else { + self->currentPath[self->currentPathDepth] = key; + } + self->currentPathDepth++; + self->needsComma = NO; +} + +- (void)endChild { + self->currentPathDepth--; + if ([self isBuildingRange]) { + [self->optHashValueBuilder appendString:@")"]; + } + self->needsComma = YES; +} + +- (void)finishHashing { + NSAssert(self->currentPathDepth == 0, @"Can't finish hashing in the middle of processing a child"); + if ([self isBuildingRange] ) { + [self endRange]; + } + + // Always close with the empty hash for the remaining range to allow simple appending + [self.currentHashes addObject:@""]; +} + +- (void)endRange { + NSAssert([self isBuildingRange], @"Can't end range without starting a range!"); + // Add closing parenthesis for current depth + for (NSUInteger i = 0; i < currentPathDepth; i++) { + [self->optHashValueBuilder appendString:@")"]; + } + [self->optHashValueBuilder appendString:@")"]; + + FPath *lastLeafPath = [self currentPathWithDepth:self->lastLeafDepth]; + NSString *hash = [FStringUtilities base64EncodedSha1:self->optHashValueBuilder]; + [self.currentHashes addObject:hash]; + [self.currentPaths addObject:lastLeafPath]; + + self->optHashValueBuilder = nil; +} + +@end + + +@interface FCompoundHash () + +@property (nonatomic, strong, readwrite) NSArray *posts; +@property (nonatomic, strong, readwrite) NSArray *hashes; + +@end + +@implementation FCompoundHash + +- (id)initWithPosts:(NSArray *)posts hashes:(NSArray *)hashes { + self = [super init]; + if (self != nil) { + if (posts.count != hashes.count - 1) { + [NSException raise:NSInvalidArgumentException format:@"Number of posts need to be n-1 for n hashes in FCompoundHash"]; + } + self.posts = posts; + self.hashes = hashes; + } + return self; +} + ++ (FCompoundHashSplitStrategy)simpleSizeSplitStrategyForNode:(id)node { + NSUInteger estimatedSize = [FSnapshotUtilities estimateSerializedNodeSize:node]; + + // Splits for + // 1k -> 512 (2 parts) + // 5k -> 715 (7 parts) + // 100k -> 3.2k (32 parts) + // 500k -> 7k (71 parts) + // 5M -> 23k (228 parts) + NSUInteger splitThreshold = MAX(512, (NSUInteger)sqrt(estimatedSize * 100)); + + return ^BOOL(FCompoundHashBuilder *builder) { + // Never split on priorities + return [builder currentHashLength] > splitThreshold && ![[[builder currentPath] getBack] isEqualToString:@".priority"]; + }; +} + ++ (FCompoundHash *)fromNode:(id)node { + return [FCompoundHash fromNode:node splitStrategy:[FCompoundHash simpleSizeSplitStrategyForNode:node]]; +} + ++ (FCompoundHash *)fromNode:(id)node splitStrategy:(FCompoundHashSplitStrategy)strategy { + if ([node isEmpty]) { + return [[FCompoundHash alloc] initWithPosts:@[] hashes:@[@""]]; + } else { + FCompoundHashBuilder *builder = [[FCompoundHashBuilder alloc] initWithSplitStrategy:strategy]; + [FCompoundHash processNode:node builder:builder]; + [builder finishHashing]; + return [[FCompoundHash alloc] initWithPosts:builder.currentPaths hashes:builder.currentHashes]; + } +} + ++ (void)processNode:(id)node builder:(FCompoundHashBuilder *)builder { + if ([node isLeafNode]) { + [builder processLeaf:node]; + } else { + NSAssert(![node isEmpty], @"Can't calculate hash on empty node!"); + FChildrenNode *childrenNode = (FChildrenNode *)node; + [childrenNode enumerateChildrenAndPriorityUsingBlock:^(NSString *key, id node, BOOL *stop) { + [builder startChild:key]; + [self processNode:node builder:builder]; + [builder endChild]; + }]; + } +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FListenProvider.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FListenProvider.h new file mode 100644 index 0000000..7a41754 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FListenProvider.h @@ -0,0 +1,33 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FTypedefs_Private.h" + +@class FQuerySpec; +@protocol FSyncTreeHash; + +typedef NSArray* (^fbt_startListeningBlock)(FQuerySpec *query, + NSNumber *tagId, + id hash, + fbt_nsarray_nsstring onComplete); +typedef void (^fbt_stopListeningBlock)(FQuerySpec *query, NSNumber *tagId); + +@interface FListenProvider : NSObject + +@property (nonatomic, copy) fbt_startListeningBlock startListening; +@property (nonatomic, copy) fbt_stopListeningBlock stopListening; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FListenProvider.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FListenProvider.m new file mode 100644 index 0000000..7a49609 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FListenProvider.m @@ -0,0 +1,26 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FListenProvider.h" +#import "FIRDatabaseQuery.h" + + +@implementation FListenProvider + +@synthesize startListening; +@synthesize stopListening; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FPersistentConnection.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FPersistentConnection.h new file mode 100644 index 0000000..412c874 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FPersistentConnection.h @@ -0,0 +1,78 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FConnection.h" +#import "FRepoInfo.h" +#import "FTypedefs.h" +#import "FTypedefs_Private.h" + +@protocol FPersistentConnectionDelegate; +@protocol FSyncTreeHash; +@class FQuerySpec; +@class FIRDatabaseConfig; + +@interface FPersistentConnection : NSObject + +@property (nonatomic, weak) id delegate; +@property (nonatomic) BOOL pauseWrites; + +- (id)initWithRepoInfo:(FRepoInfo *)repoInfo + dispatchQueue:(dispatch_queue_t)queue + config:(FIRDatabaseConfig *)config; + +- (void)open; + +- (void) putData:(id)data forPath:(NSString *)pathString withHash:(NSString *)hash withCallback:(fbt_void_nsstring_nsstring)onComplete; +- (void) mergeData:(id)data forPath:(NSString *)pathString withCallback:(fbt_void_nsstring_nsstring)onComplete; + +- (void) listen:(FQuerySpec *)query + tagId:(NSNumber *)tagId + hash:(id)hash + onComplete:(fbt_void_nsstring)onComplete; + +- (void) unlisten:(FQuerySpec *)query tagId:(NSNumber *)tagId; +- (void) refreshAuthToken:(NSString *)token; +- (void) onDisconnectPutData:(id)data forPath:(FPath *)path withCallback:(fbt_void_nsstring_nsstring)callback; +- (void) onDisconnectMergeData:(id)data forPath:(FPath *)path withCallback:(fbt_void_nsstring_nsstring)callback; +- (void) onDisconnectCancelPath:(FPath *)path withCallback:(fbt_void_nsstring_nsstring)callback; +- (void) ackPuts; +- (void) purgeOutstandingWrites; + +- (void) interruptForReason:(NSString *)reason; +- (void) resumeForReason:(NSString *)reason; +- (BOOL) isInterruptedForReason:(NSString *)reason; + +// FConnection delegate methods +- (void)onReady:(FConnection *)fconnection atTime:(NSNumber *)timestamp sessionID:(NSString *)sessionID; +- (void)onDataMessage:(FConnection *)fconnection withMessage:(NSDictionary *)message; +- (void)onDisconnect:(FConnection *)fconnection withReason:(FDisconnectReason)reason; +- (void)onKill:(FConnection *)fconnection withReason:(NSString *)reason; + +// Testing methods +- (NSDictionary *) dumpListens; + +@end + +@protocol FPersistentConnectionDelegate + +- (void)onDataUpdate:(FPersistentConnection *)fpconnection forPath:(NSString *)pathString message:(id)message isMerge:(BOOL)isMerge tagId:(NSNumber *)tagId; +- (void)onRangeMerge:(NSArray *)ranges forPath:(NSString *)path tagId:(NSNumber *)tag; +- (void)onConnect:(FPersistentConnection *)fpconnection; +- (void)onDisconnect:(FPersistentConnection *)fpconnection; +- (void)onServerInfoUpdate:(FPersistentConnection *)fpconnection updates:(NSDictionary *)updates; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FPersistentConnection.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FPersistentConnection.m new file mode 100644 index 0000000..f341bb1 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FPersistentConnection.m @@ -0,0 +1,952 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#import + +#import +#import +#import +#import +#import "FIRDatabaseReference.h" +#import "FPersistentConnection.h" +#import "FConstants.h" +#import "FAtomicNumber.h" +#import "FQueryParams.h" +#import "FTupleOnDisconnect.h" +#import "FTupleCallbackStatus.h" +#import "FQuerySpec.h" +#import "FIndex.h" +#import "FIRDatabaseConfig.h" +#import "FIRDatabaseConfig_Private.h" +#import "FSnapshotUtilities.h" +#import "FRangeMerge.h" +#import "FCompoundHash.h" +#import "FSyncTree.h" +#import "FIRRetryHelper.h" +#import "FAuthTokenProvider.h" +#import "FUtilities.h" + +@interface FOutstandingQuery : NSObject + +@property (nonatomic, strong) FQuerySpec* query; +@property (nonatomic, strong) NSNumber *tagId; +@property (nonatomic, strong) id syncTreeHash; +@property (nonatomic, copy) fbt_void_nsstring onComplete; + +@end + +@implementation FOutstandingQuery + +@end + + +@interface FOutstandingPut : NSObject + +@property (nonatomic, strong) NSString *action; +@property (nonatomic, strong) NSDictionary *request; +@property (nonatomic, copy) fbt_void_nsstring_nsstring onCompleteBlock; +@property (nonatomic) BOOL sent; + +@end + +@implementation FOutstandingPut + +@end + + +typedef enum { + ConnectionStateDisconnected, + ConnectionStateGettingToken, + ConnectionStateConnecting, + ConnectionStateAuthenticating, + ConnectionStateConnected +} ConnectionState; + +@interface FPersistentConnection () { + ConnectionState connectionState; + BOOL firstConnection; + NSTimeInterval reconnectDelay; + NSTimeInterval lastConnectionAttemptTime; + NSTimeInterval lastConnectionEstablishedTime; + SCNetworkReachabilityRef reachability; +} + +- (int) getNextRequestNumber; +- (void) onDataPushWithAction:(NSString *)action andBody:(NSDictionary *)body; +- (void) handleTimestamp:(NSNumber *)timestamp; +- (void) sendOnDisconnectAction:(NSString *)action forPath:(NSString *)pathString withData:(id)data andCallback:(fbt_void_nsstring_nsstring)callback; + +@property (nonatomic, strong) FConnection* realtime; +@property (nonatomic, strong) NSMutableDictionary* listens; +@property (nonatomic, strong) NSMutableDictionary* outstandingPuts; +@property (nonatomic, strong) NSMutableArray* onDisconnectQueue; +@property (nonatomic, strong) FRepoInfo* repoInfo; +@property (nonatomic, strong) FAtomicNumber* putCounter; +@property (nonatomic, strong) FAtomicNumber* requestNumber; +@property (nonatomic, strong) NSMutableDictionary* requestCBHash; +@property (nonatomic, strong) FIRDatabaseConfig *config; +@property (nonatomic) NSUInteger unackedListensCount; +@property (nonatomic, strong) NSMutableArray *putsToAck; +@property (nonatomic, strong) dispatch_queue_t dispatchQueue; +@property (nonatomic, strong) NSString* lastSessionID; +@property (nonatomic, strong) NSMutableSet *interruptReasons; +@property (nonatomic, strong) FIRRetryHelper *retryHelper; +@property (nonatomic, strong) id authTokenProvider; +@property (nonatomic, strong) NSString *authToken; +@property (nonatomic) BOOL forceAuthTokenRefresh; +@property (nonatomic) NSUInteger currentFetchTokenAttempt; + +@end + + +@implementation FPersistentConnection + +- (id)initWithRepoInfo:(FRepoInfo *)repoInfo dispatchQueue:(dispatch_queue_t)dispatchQueue config:(FIRDatabaseConfig *)config { + self = [super init]; + if (self) { + self->_config = config; + self->_repoInfo = repoInfo; + self->_dispatchQueue = dispatchQueue; + self->_authTokenProvider = config.authTokenProvider; + NSAssert(self->_authTokenProvider != nil, @"Expected auth token provider"); + self.interruptReasons = [NSMutableSet set]; + + self.listens = [[NSMutableDictionary alloc] init]; + self.outstandingPuts = [[NSMutableDictionary alloc] init]; + self.onDisconnectQueue = [[NSMutableArray alloc] init]; + self.putCounter = [[FAtomicNumber alloc] init]; + self.requestNumber = [[FAtomicNumber alloc] init]; + self.requestCBHash = [[NSMutableDictionary alloc] init]; + self.unackedListensCount = 0; + self.putsToAck = [NSMutableArray array]; + connectionState = ConnectionStateDisconnected; + firstConnection = YES; + reconnectDelay = kPersistentConnReconnectMinDelay; + + self->_retryHelper = [[FIRRetryHelper alloc] initWithDispatchQueue:dispatchQueue + minRetryDelayAfterFailure:kPersistentConnReconnectMinDelay + maxRetryDelay:kPersistentConnReconnectMaxDelay + retryExponent:kPersistentConnReconnectMultiplier + jitterFactor:0.7]; + + [self setupNotifications]; + // Make sure we don't actually connect until open is called + [self interruptForReason:kFInterruptReasonWaitingForOpen]; + } + // nb: The reason establishConnection isn't called here like the JS version is because + // callers need to set the delegate first. The ctor can be modified to accept the delegate + // but that deviates from normal ios conventions. After the delegate has been set, the caller + // is responsible for calling establishConnection: + return self; +} + +- (void) dealloc { + if (reachability) { + // Unschedule the notifications + SCNetworkReachabilitySetDispatchQueue(reachability, NULL); + CFRelease(reachability); + } +} + +#pragma mark - +#pragma mark Public methods + +- (void) open { + [self resumeForReason:kFInterruptReasonWaitingForOpen]; +} + +/** +* Note that the listens dictionary has a type of Map[String (pathString), Map[FQueryParams, FOutstandingQuery]] +* +* This means, for each path we care about, there are sets of queryParams that correspond to an FOutstandingQuery object. +* There can be multiple sets at a path since we overlap listens for a short time while adding or removing a query from a +* location in the tree. +*/ +- (void) listen:(FQuerySpec *)query + tagId:(NSNumber *)tagId + hash:(id)hash + onComplete:(fbt_void_nsstring)onComplete { + FFLog(@"I-RDB034001", @"Listen called for %@", query); + + NSAssert(self.listens[query] == nil, @"listen() called twice for the same query"); + NSAssert(query.isDefault || !query.loadsAllData, @"listen called for non-default but complete query"); + FOutstandingQuery* outstanding = [[FOutstandingQuery alloc] init]; + outstanding.query = query; + outstanding.tagId = tagId; + outstanding.syncTreeHash = hash; + outstanding.onComplete = onComplete; + [self.listens setObject:outstanding forKey:query]; + if ([self connected]) { + [self sendListen:outstanding]; + } +} + +- (void) putData:(id)data forPath:(NSString *)pathString withHash:(NSString *)hash withCallback:(fbt_void_nsstring_nsstring)onComplete { + [self putInternal:data forAction:kFWPRequestActionPut forPath:pathString withHash:hash withCallback:onComplete]; +} + +- (void) mergeData:(id)data forPath:(NSString *)pathString withCallback:(fbt_void_nsstring_nsstring)onComplete { + [self putInternal:data forAction:kFWPRequestActionMerge forPath:pathString withHash:nil withCallback:onComplete]; +} + +- (void) onDisconnectPutData:(id)data forPath:(FPath *)path withCallback:(fbt_void_nsstring_nsstring)callback { + if ([self canSendWrites]) { + [self sendOnDisconnectAction:kFWPRequestActionDisconnectPut forPath:[path description] withData:data andCallback:callback]; + } else { + FTupleOnDisconnect* tuple = [[FTupleOnDisconnect alloc] init]; + tuple.pathString = [path description]; + tuple.action = kFWPRequestActionDisconnectPut; + tuple.data = data; + tuple.onComplete = callback; + [self.onDisconnectQueue addObject:tuple]; + } +} + +- (void) onDisconnectMergeData:(id)data forPath:(FPath *)path withCallback:(fbt_void_nsstring_nsstring)callback { + if ([self canSendWrites]) { + [self sendOnDisconnectAction:kFWPRequestActionDisconnectMerge forPath:[path description] withData:data andCallback:callback]; + } else { + FTupleOnDisconnect* tuple = [[FTupleOnDisconnect alloc] init]; + tuple.pathString = [path description]; + tuple.action = kFWPRequestActionDisconnectMerge; + tuple.data = data; + tuple.onComplete = callback; + [self.onDisconnectQueue addObject:tuple]; + } +} + +- (void) onDisconnectCancelPath:(FPath *)path withCallback:(fbt_void_nsstring_nsstring)callback { + if ([self canSendWrites]) { + [self sendOnDisconnectAction:kFWPRequestActionDisconnectCancel forPath:[path description] withData:[NSNull null] andCallback:callback]; + } else { + FTupleOnDisconnect* tuple = [[FTupleOnDisconnect alloc] init]; + tuple.pathString = [path description]; + tuple.action = kFWPRequestActionDisconnectCancel; + tuple.data = [NSNull null]; + tuple.onComplete = callback; + [self.onDisconnectQueue addObject:tuple]; + } +} + +- (void) unlisten:(FQuerySpec *)query tagId:(NSNumber *)tagId { + FPath *path = query.path; + FFLog(@"I-RDB034002", @"Unlistening for %@", query); + + NSArray *outstanding = [self removeListen:query]; + if (outstanding.count > 0 && [self connected]) { + [self sendUnlisten:path queryParams:query.params tagId:tagId]; + } +} + +- (void) refreshAuthToken:(NSString *)token { + self.authToken = token; + if ([self connected]) { + if (token != nil) { + [self sendAuthAndRestoreStateAfterComplete:NO]; + } else { + [self sendUnauth]; + } + } +} + +#pragma mark - +#pragma mark Connection status + +- (BOOL)connected { + return self->connectionState == ConnectionStateAuthenticating || self->connectionState == ConnectionStateConnected; +} + +- (BOOL)canSendWrites { + return self->connectionState == ConnectionStateConnected; +} + +#pragma mark - +#pragma mark FConnection delegate methods + +- (void)onReady:(FConnection *)fconnection atTime:(NSNumber *)timestamp sessionID:(NSString *)sessionID { + FFLog(@"I-RDB034003", @"On ready"); + lastConnectionEstablishedTime = [[NSDate date] timeIntervalSince1970]; + [self handleTimestamp:timestamp]; + + if (firstConnection) { + [self sendConnectStats]; + } + + [self restoreAuth]; + firstConnection = NO; + self.lastSessionID = sessionID; + dispatch_async(self.dispatchQueue, ^{ + [self.delegate onConnect:self]; + }); +} + +- (void)onDataMessage:(FConnection *)fconnection withMessage:(NSDictionary *)message { + if (message[kFWPRequestNumber] != nil) { + // this is a response to a request we sent + NSNumber* rn = [NSNumber numberWithInt:[[message objectForKey:kFWPRequestNumber] intValue]]; + if ([self.requestCBHash objectForKey:rn]) { + void (^callback)(NSDictionary*) = [self.requestCBHash objectForKey:rn]; + [self.requestCBHash removeObjectForKey:rn]; + + if (callback) { + //dispatch_async(self.dispatchQueue, ^{ + callback([message objectForKey:kFWPResponseForRNData]); + //}); + } + } + } else if (message[kFWPRequestError] != nil) { + NSString* error = [message objectForKey:kFWPRequestError]; + @throw [[NSException alloc] initWithName:@"FirebaseDatabaseServerError" reason:error userInfo:nil]; + } else if (message[kFWPAsyncServerAction] != nil) { + // this is a server push of some sort + NSString* action = [message objectForKey:kFWPAsyncServerAction]; + NSDictionary* body = [message objectForKey:kFWPAsyncServerPayloadBody]; + [self onDataPushWithAction:action andBody:body]; + } +} + +- (void)onDisconnect:(FConnection *)fconnection withReason:(FDisconnectReason)reason { + FFLog(@"I-RDB034004", @"Got on disconnect due to %s", (reason == DISCONNECT_REASON_SERVER_RESET) ? "server_reset" : "other"); + connectionState = ConnectionStateDisconnected; + // Drop the realtime connection + self.realtime = nil; + [self cancelSentTransactions]; + [self.requestCBHash removeAllObjects]; + self.unackedListensCount = 0; + if ([self shouldReconnect]) { + NSTimeInterval timeSinceLastConnectSucceeded = [[NSDate date] timeIntervalSince1970] - lastConnectionEstablishedTime; + BOOL lastConnectionWasSuccessful; + if (lastConnectionEstablishedTime > 0) { + lastConnectionWasSuccessful = timeSinceLastConnectSucceeded > kPersistentConnSuccessfulConnectionEstablishedDelay; + } else { + lastConnectionWasSuccessful = NO; + } + + if (reason == DISCONNECT_REASON_SERVER_RESET || lastConnectionWasSuccessful) { + [self.retryHelper signalSuccess]; + } + [self tryScheduleReconnect]; + } + lastConnectionEstablishedTime = 0; + [self.delegate onDisconnect:self]; +} + +- (void)onKill:(FConnection *)fconnection withReason:(NSString *)reason { + FFWarn(@"I-RDB034005", @"Firebase Database connection was forcefully killed by the server. Will not attempt reconnect. Reason: %@", reason); + [self interruptForReason:kFInterruptReasonServerKill]; +} + +#pragma mark - +#pragma mark Connection handling methods + +- (void) interruptForReason:(NSString *)reason { + FFLog(@"I-RDB034006", @"Connection interrupted for: %@", reason); + + [self.interruptReasons addObject:reason]; + if (self.realtime) { + // Will call onDisconnect and set the connection state to Disconnected + [self.realtime close]; + self.realtime = nil; + } else { + [self.retryHelper cancel]; + self->connectionState = ConnectionStateDisconnected; + } + // Reset timeouts + [self.retryHelper signalSuccess]; +} + +- (void) resumeForReason:(NSString *)reason { + FFLog(@"I-RDB034007", @"Connection no longer interrupted for: %@", reason); + [self.interruptReasons removeObject:reason]; + + if ([self shouldReconnect] && connectionState == ConnectionStateDisconnected) { + [self tryScheduleReconnect]; + } +} + +- (BOOL) shouldReconnect { + return self.interruptReasons.count == 0; +} + +- (BOOL) isInterruptedForReason:(NSString *)reason { + return [self.interruptReasons containsObject:reason]; +} + +#pragma mark - +#pragma mark Private methods + +- (void) tryScheduleReconnect { + if ([self shouldReconnect]) { + NSAssert(self->connectionState == ConnectionStateDisconnected, + @"Not in disconnected state: %d", self->connectionState); + BOOL forceRefresh = self.forceAuthTokenRefresh; + self.forceAuthTokenRefresh = NO; + FFLog(@"I-RDB034008", @"Scheduling connection attempt"); + [self.retryHelper retry:^{ + FFLog(@"I-RDB034009", @"Trying to fetch auth token"); + NSAssert(self->connectionState == ConnectionStateDisconnected, + @"Not in disconnected state: %d", self->connectionState); + self->connectionState = ConnectionStateGettingToken; + self.currentFetchTokenAttempt++; + NSUInteger thisFetchTokenAttempt = self.currentFetchTokenAttempt; + [self.authTokenProvider fetchTokenForcingRefresh:forceRefresh withCallback:^(NSString *token, NSError *error) { + if (thisFetchTokenAttempt == self.currentFetchTokenAttempt) { + if (error != nil) { + self->connectionState = ConnectionStateDisconnected; + FFLog(@"I-RDB034010", @"Error fetching token: %@", error); + [self tryScheduleReconnect]; + } else { + // Someone could have interrupted us while fetching the token, + // marking the connection as Disconnected + if (self->connectionState == ConnectionStateGettingToken) { + FFLog(@"I-RDB034011", @"Successfully fetched token, opening connection"); + [self openNetworkConnectionWithToken:token]; + } else { + NSAssert(self->connectionState == ConnectionStateDisconnected, + @"Expected connection state disconnected, but got %d", self->connectionState); + FFLog(@"I-RDB034012", @"Not opening connection after token refresh, because connection was set to disconnected."); + } + } + } else { + FFLog(@"I-RDB034013", @"Ignoring fetch token result, because this was not the latest attempt."); + } + }]; + }]; + + } +} + +- (void) openNetworkConnectionWithToken:(NSString *)token { + NSAssert(self->connectionState == ConnectionStateGettingToken, + @"Trying to open network connection while in wrong state: %d", self->connectionState); + self.authToken = token; + self->connectionState = ConnectionStateConnecting; + self.realtime = [[FConnection alloc] initWith:self.repoInfo + andDispatchQueue:self.dispatchQueue + lastSessionID:self.lastSessionID]; + self.realtime.delegate = self; + [self.realtime open]; +} + +static void reachabilityCallback(SCNetworkReachabilityRef ref, SCNetworkReachabilityFlags flags, void* info) { + if (flags & kSCNetworkReachabilityFlagsReachable) { + FFLog(@"I-RDB034014", @"Network became reachable. Trigger a connection attempt"); + FPersistentConnection* self = (__bridge FPersistentConnection *)info; + // Reset reconnect delay + [self.retryHelper signalSuccess]; + if (self->connectionState == ConnectionStateDisconnected) { + [self tryScheduleReconnect]; + } + } else { + FFLog(@"I-RDB034015", @"Network is not reachable"); + } +} + +- (void) enteringForeground { + dispatch_async(self.dispatchQueue, ^{ + // Reset reconnect delay + [self.retryHelper signalSuccess]; + if (self->connectionState == ConnectionStateDisconnected) { + [self tryScheduleReconnect]; + } + }); +} + +- (void) setupNotifications { + + NSString * const* foregroundConstant = (NSString * const *) dlsym(RTLD_DEFAULT, "UIApplicationWillEnterForegroundNotification"); + if (foregroundConstant) { + [[NSNotificationCenter defaultCenter] addObserver:self + selector:@selector(enteringForeground) + name:*foregroundConstant + object:nil]; + } + // An empty address is interpreted a generic internet access + struct sockaddr_in zeroAddress; + bzero(&zeroAddress, sizeof(zeroAddress)); + zeroAddress.sin_len = sizeof(zeroAddress); + zeroAddress.sin_family = AF_INET; + reachability = SCNetworkReachabilityCreateWithAddress(kCFAllocatorDefault, (const struct sockaddr *)&zeroAddress); + SCNetworkReachabilityContext ctx = {0, (__bridge void *)(self), NULL, NULL, NULL}; + if (SCNetworkReachabilitySetCallback(reachability, reachabilityCallback, &ctx)) { + SCNetworkReachabilitySetDispatchQueue(reachability, self.dispatchQueue); + } else { + FFLog(@"I-RDB034016", @"Failed to set up network reachability monitoring"); + CFRelease(reachability); + reachability = NULL; + } +} + +- (void) sendAuthAndRestoreStateAfterComplete:(BOOL)restoreStateAfterComplete { + NSAssert([self connected], @"Must be connected to send auth"); + NSAssert(self.authToken != nil, @"Can't send auth if there is no credential"); + + NSDictionary* requestData = @{kFWPRequestCredential: self.authToken}; + [self sendAction:kFWPRequestActionAuth body:requestData sensitive:YES callback:^(NSDictionary *data) { + self->connectionState = ConnectionStateConnected; + NSString* status = [data objectForKey:kFWPResponseForActionStatus]; + id responseData = [data objectForKey:kFWPResponseForActionData]; + if (responseData == nil) { + responseData = @"error"; + } + + BOOL statusOk = [status isEqualToString:kFWPResponseForActionStatusOk]; + if (statusOk) { + if (restoreStateAfterComplete) { + [self restoreState]; + } + } else { + self.authToken = nil; + self.forceAuthTokenRefresh = YES; + if ([status isEqualToString:@"expired_token"]) { + FFLog(@"I-RDB034017", @"Authentication failed: %@ (%@)", status, responseData); + } else { + FFWarn(@"I-RDB034018", @"Authentication failed: %@ (%@)", status, responseData); + } + [self.realtime close]; + } + }]; +} + +- (void) sendUnauth { + [self sendAction:kFWPRequestActionUnauth body:@{} sensitive:NO callback:nil]; +} + +- (void) onAuthRevokedWithStatus:(NSString *)status andReason:(NSString *)reason { + // This might be for an earlier token than we just recently sent. But since we need to close the connection anyways, + // we can set it to null here and we will refresh the token later on reconnect + if ([status isEqualToString:@"expired_token"]) { + FFLog(@"I-RDB034019", @"Auth token revoked: %@ (%@)", status, reason); + } else { + FFWarn(@"I-RDB034020", @"Auth token revoked: %@ (%@)", status, reason); + } + self.authToken = nil; + self.forceAuthTokenRefresh = YES; + // Try reconnecting on auth revocation + [self.realtime close]; +} + +- (void) onListenRevoked:(FPath *)path { + NSArray *queries = [self removeAllListensAtPath:path]; + for (FOutstandingQuery* query in queries) { + query.onComplete(@"permission_denied"); + } +} + +- (void) sendOnDisconnectAction:(NSString *)action forPath:(NSString *)pathString withData:(id)data andCallback:(fbt_void_nsstring_nsstring)callback { + + NSDictionary* request = @{kFWPRequestPath: pathString, kFWPRequestData: data}; + FFLog(@"I-RDB034021", @"onDisconnect %@: %@", action, request); + + [self sendAction:action + body:request + sensitive:NO + callback:^(NSDictionary *data) { + NSString* status = [data objectForKey:kFWPResponseForActionStatus]; + NSString* errorReason = [data objectForKey:kFWPResponseForActionData]; + callback(status, errorReason); + }]; +} + +- (void) sendPut:(NSNumber *) index { + NSAssert([self canSendWrites], @"sendPut called when not able to send writes"); + FOutstandingPut* put = self.outstandingPuts[index]; + assert(put != nil); + fbt_void_nsstring_nsstring onComplete = put.onCompleteBlock; + + // Do not async this block; copying the block insinde sendAction: doesn't happen in time (or something) so coredumps + put.sent = YES; + [self sendAction:put.action + body:put.request + sensitive:NO + callback:^(NSDictionary* data) { + + FOutstandingPut *currentPut = self.outstandingPuts[index]; + if (currentPut == put) { + [self.outstandingPuts removeObjectForKey:index]; + + if (onComplete != nil) { + NSString *status = [data objectForKey:kFWPResponseForActionStatus]; + NSString *errorReason = [data objectForKey:kFWPResponseForActionData]; + if (self.unackedListensCount == 0) { + onComplete(status, errorReason); + } else { + FTupleCallbackStatus *putToAck = [[FTupleCallbackStatus alloc] init]; + putToAck.block = onComplete; + putToAck.status = status; + putToAck.errorReason = errorReason; + [self.putsToAck addObject:putToAck]; + } + } + } else { + FFLog(@"I-RDB034022", @"Ignoring on complete for put %@ because it was already removed", index); + } + }]; +} + +- (void) sendUnlisten:(FPath *)path queryParams:(FQueryParams *)queryParams tagId:(NSNumber *)tagId { + FFLog(@"I-RDB034023", @"Unlisten on %@ for %@", path, queryParams); + + NSMutableDictionary* request = [NSMutableDictionary dictionaryWithObjectsAndKeys:[path toString], kFWPRequestPath, nil]; + if (tagId != nil) { + [request setObject:queryParams.wireProtocolParams forKey:kFWPRequestQueries]; + [request setObject:tagId forKey:kFWPRequestTag]; + } + + [self sendAction:kFWPRequestActionTaggedUnlisten + body:request + sensitive:NO + callback:nil]; +} + +- (void) putInternal:(id)data forAction:(NSString *)action forPath:(NSString *)pathString withHash:(NSString *)hash withCallback:(fbt_void_nsstring_nsstring)onComplete { + + NSMutableDictionary *request = [NSMutableDictionary dictionaryWithObjectsAndKeys: + pathString, kFWPRequestPath, + data, kFWPRequestData, nil]; + if(hash) { + [request setObject:hash forKey:kFWPRequestHash]; + } + + FOutstandingPut *put = [[FOutstandingPut alloc] init]; + put.action = action; + put.request = request; + put.onCompleteBlock = onComplete; + put.sent = NO; + + NSNumber* index = [self.putCounter getAndIncrement]; + self.outstandingPuts[index] = put; + + if ([self canSendWrites]) { + FFLog(@"I-RDB034024", @"Was connected, and added as index: %@", index); + [self sendPut:index]; + } + else { + FFLog(@"I-RDB034025", @"Wasn't connected or writes paused, so added to outstanding puts only. Path: %@", pathString); + } +} + +- (void) sendListen:(FOutstandingQuery *)listenSpec { + FQuerySpec *query = listenSpec.query; + FFLog(@"I-RDB034026", @"Listen for %@", query); + NSMutableDictionary *request = [NSMutableDictionary dictionaryWithObject:[query.path toString] forKey:kFWPRequestPath]; + + // Only bother to send query if it's non-default + if (listenSpec.tagId != nil) { + [request setObject:[query.params wireProtocolParams] forKey:kFWPRequestQueries]; + [request setObject:listenSpec.tagId forKey:kFWPRequestTag]; + } + + [request setObject:[listenSpec.syncTreeHash simpleHash] forKey:kFWPRequestHash]; + if ([listenSpec.syncTreeHash includeCompoundHash]) { + FCompoundHash *compoundHash = [listenSpec.syncTreeHash compoundHash]; + NSMutableArray *posts = [NSMutableArray array]; + for (FPath *path in compoundHash.posts) { + [posts addObject:path.wireFormat]; + } + request[kFWPRequestCompoundHash] = @{ kFWPRequestCompoundHashHashes: compoundHash.hashes, + kFWPRequestCompoundHashPaths: posts }; + } + + fbt_void_nsdictionary onResponse = ^(NSDictionary *response) { + FFLog(@"I-RDB034027", @"Listen response %@", response); + // warn in any case, even if the listener was removed + [self warnOnListenWarningsForQuery:query payload:response[kFWPResponseForActionData]]; + + FOutstandingQuery *currentListenSpec = self.listens[query]; + + // only trigger actions if the listen hasn't been removed (and maybe readded) + if (currentListenSpec == listenSpec) { + NSString *status = [response objectForKey:kFWPRequestStatus]; + if (![status isEqualToString:@"ok"]) { + [self removeListen:query]; + } + + if (listenSpec.onComplete) { + listenSpec.onComplete(status); + } + } + + self.unackedListensCount--; + NSAssert(self.unackedListensCount >= 0, @"unackedListensCount decremented to be negative."); + if (self.unackedListensCount == 0) { + [self ackPuts]; + } + }; + + [self sendAction:kFWPRequestActionTaggedListen + body:request + sensitive:NO + callback:onResponse]; + + self.unackedListensCount++; +} + +- (void) warnOnListenWarningsForQuery:(FQuerySpec *)query payload:(id)payload { + if (payload != nil && [payload isKindOfClass:[NSDictionary class]]) { + NSDictionary *payloadDict = payload; + id warnings = payloadDict[kFWPResponseDataWarnings]; + if (warnings != nil && [warnings isKindOfClass:[NSArray class]]) { + NSArray *warningsArr = warnings; + if ([warningsArr containsObject:@"no_index"]) { + NSString *indexSpec = [NSString stringWithFormat:@"\".indexOn\": \"%@\"", [query.params.index queryDefinition]]; + NSString *indexPath = [query.path description]; + FFWarn(@"I-RDB034028", @"Using an unspecified index. Your data will be downloaded and filtered on the client. " + "Consider adding %@ at %@ to your security rules for better performance", indexSpec, indexPath); + } + } + } +} + +- (int) getNextRequestNumber { + return [[self.requestNumber getAndIncrement] intValue]; +} + +- (void)sendAction:(NSString *)action + body:(NSDictionary *)message + sensitive:(BOOL)sensitive + callback:(void (^)(NSDictionary* data))onMessage { + // Hold onto the onMessage callback for this request before firing it off + NSNumber* rn = [NSNumber numberWithInt:[self getNextRequestNumber]]; + NSDictionary* msg = [NSDictionary dictionaryWithObjectsAndKeys: + rn, kFWPRequestNumber, + action, kFWPRequestAction, + message, kFWPRequestPayloadBody, + nil]; + + [self.realtime sendRequest:msg sensitive:sensitive]; + + if (onMessage) { + // Debug message without a callback; bump the rn, but don't hold onto the cb + [self.requestCBHash setObject:[onMessage copy] forKey:rn]; + } +} + +- (void) cancelSentTransactions { + NSMutableDictionary* cancelledOutstandingPuts = [[NSMutableDictionary alloc] init]; + + for (NSNumber* index in self.outstandingPuts) { + FOutstandingPut* put = self.outstandingPuts[index]; + if (put.request[kFWPRequestHash] && put.sent) { + // This is a sent transaction put. + cancelledOutstandingPuts[index] = put; + } + } + + [cancelledOutstandingPuts enumerateKeysAndObjectsUsingBlock:^(NSNumber *index, FOutstandingPut *outstandingPut, BOOL *stop) { + // `onCompleteBlock:` may invoke `rerunTransactionsForPath:` and enqueue new writes. We defer calling + // it until we have finished enumerating all existing writes. + outstandingPut.onCompleteBlock(kFTransactionDisconnect, @"Client was disconnected while running a transaction"); + [self.outstandingPuts removeObjectForKey:index]; + }]; +} + +- (void) onDataPushWithAction:(NSString *)action andBody:(NSDictionary *)body { + FFLog(@"I-RDB034029", @"handleServerMessage: %@, %@", action, body); + id delegate = self.delegate; + if ([action isEqualToString:kFWPAsyncServerDataUpdate] || [action isEqualToString:kFWPAsyncServerDataMerge]) { + BOOL isMerge = [action isEqualToString:kFWPAsyncServerDataMerge]; + + if ([body objectForKey:kFWPAsyncServerDataUpdateBodyPath] && [body objectForKey:kFWPAsyncServerDataUpdateBodyData]) { + NSString* path = [body objectForKey:kFWPAsyncServerDataUpdateBodyPath]; + id payloadData = [body objectForKey:kFWPAsyncServerDataUpdateBodyData]; + if (isMerge && [payloadData isKindOfClass:[NSDictionary class]] && [payloadData count] == 0) { + // ignore empty merge + } else { + [delegate onDataUpdate:self forPath:path message:payloadData isMerge:isMerge tagId:[body objectForKey:kFWPAsyncServerDataUpdateBodyTag]]; + } + } + else { + FFLog(@"I-RDB034030", @"Malformed data response from server missing path or data: %@", body); + } + } else if ([action isEqualToString:kFWPAsyncServerDataRangeMerge]) { + NSString *path = body[kFWPAsyncServerDataUpdateBodyPath]; + NSArray *ranges = body[kFWPAsyncServerDataUpdateBodyData]; + NSNumber *tag = body[kFWPAsyncServerDataUpdateBodyTag]; + NSMutableArray *rangeMerges = [NSMutableArray array]; + for (NSDictionary *range in ranges) { + NSString *startString = range[kFWPAsyncServerDataUpdateStartPath]; + NSString *endString = range[kFWPAsyncServerDataUpdateEndPath]; + id updateData = range[kFWPAsyncServerDataUpdateRangeMerge]; + id updates = [FSnapshotUtilities nodeFrom:updateData]; + FPath *start = (startString != nil) ? [[FPath alloc] initWith:startString] : nil; + FPath *end = (endString != nil) ? [[FPath alloc] initWith:endString] : nil; + FRangeMerge *merge = [[FRangeMerge alloc] initWithStart:start end:end updates:updates]; + [rangeMerges addObject:merge]; + } + [delegate onRangeMerge:rangeMerges forPath:path tagId:tag]; + } else if ([action isEqualToString:kFWPAsyncServerAuthRevoked]) { + NSString* status = [body objectForKey:kFWPResponseForActionStatus]; + NSString* reason = [body objectForKey:kFWPResponseForActionData]; + [self onAuthRevokedWithStatus:status andReason:reason]; + } else if ([action isEqualToString:kFWPASyncServerListenCancelled]) { + NSString* pathString = [body objectForKey:kFWPAsyncServerDataUpdateBodyPath]; + [self onListenRevoked:[[FPath alloc] initWith:pathString]]; + } else if ([action isEqualToString:kFWPAsyncServerSecurityDebug]) { + NSString* msg = [body objectForKey:@"msg"]; + if (msg != nil) { + NSArray *msgs = [msg componentsSeparatedByString:@"\n"]; + for (NSString* m in msgs) { + FFWarn(@"I-RDB034031", @"%@", m); + } + } + } else { + // TODO: revoke listens, auth, security debug + FFLog(@"I-RDB034032", @"Unsupported action from server: %@", action); + } +} + +- (void) restoreAuth { + FFLog(@"I-RDB034033", @"Calling restore state"); + + NSAssert(self->connectionState == ConnectionStateConnecting, + @"Wanted to restore auth, but was in wrong state: %d", self->connectionState); + if (self.authToken == nil) { + FFLog(@"I-RDB034034", @"Not restoring auth because token is nil"); + self->connectionState = ConnectionStateConnected; + [self restoreState]; + } else { + FFLog(@"I-RDB034035", @"Restoring auth"); + self->connectionState = ConnectionStateAuthenticating; + [self sendAuthAndRestoreStateAfterComplete:YES]; + } +} + +- (void) restoreState { + NSAssert(self->connectionState == ConnectionStateConnected, + @"Should be connected if we're restoring state, but we are: %d", self->connectionState); + + [self.listens enumerateKeysAndObjectsUsingBlock:^(FQuerySpec *query, FOutstandingQuery *outstandingListen, BOOL *stop) { + FFLog(@"I-RDB034036", @"Restoring listen for %@", query); + [self sendListen:outstandingListen]; + }]; + + NSArray* keys = [[self.outstandingPuts allKeys] sortedArrayUsingSelector:@selector(compare:)]; + for(int i = 0; i < [keys count]; i++) { + if([self.outstandingPuts objectForKey:[keys objectAtIndex:i]] != nil) { + FFLog(@"I-RDB034037", @"Restoring put: %d", i); + [self sendPut:[keys objectAtIndex:i]]; + } + else { + FFLog(@"I-RDB034038", @"Restoring put: skipped nil: %d", i); + } + } + + for (FTupleOnDisconnect* tuple in self.onDisconnectQueue) { + [self sendOnDisconnectAction:tuple.action forPath:tuple.pathString withData:tuple.data andCallback:tuple.onComplete]; + } + [self.onDisconnectQueue removeAllObjects]; +} + +- (NSArray *) removeListen:(FQuerySpec *)query { + NSAssert(query.isDefault || !query.loadsAllData, @"removeListen called for non-default but complete query"); + + FOutstandingQuery* outstanding = self.listens[query]; + if (!outstanding) { + FFLog(@"I-RDB034039", @"Trying to remove listener for query %@ but no listener exists", query); + return @[]; + } else { + [self.listens removeObjectForKey:query]; + return @[outstanding]; + } +} + +- (NSArray *) removeAllListensAtPath:(FPath *)path { + FFLog(@"I-RDB034040", @"Removing all listens at path %@", path); + NSMutableArray *removed = [NSMutableArray array]; + NSMutableArray *toRemove = [NSMutableArray array]; + [self.listens enumerateKeysAndObjectsUsingBlock:^(FQuerySpec *spec, FOutstandingQuery *outstanding, BOOL *stop) { + if ([spec.path isEqual:path]) { + [removed addObject:outstanding]; + [toRemove addObject:spec]; + } + }]; + [self.listens removeObjectsForKeys:toRemove]; + return removed; +} + +- (void) purgeOutstandingWrites { + // We might have unacked puts in our queue that we need to ack now before we send out any cancels... + [self ackPuts]; + // Cancel in order + NSArray* keys = [[self.outstandingPuts allKeys] sortedArrayUsingSelector:@selector(compare:)]; + for (NSNumber *key in keys) { + FOutstandingPut *put = self.outstandingPuts[key]; + if (put.onCompleteBlock != nil) { + put.onCompleteBlock(kFErrorWriteCanceled, nil); + } + } + for (FTupleOnDisconnect *onDisconnect in self.onDisconnectQueue) { + if (onDisconnect.onComplete != nil) { + onDisconnect.onComplete(kFErrorWriteCanceled, nil); + } + } + [self.outstandingPuts removeAllObjects]; + [self.onDisconnectQueue removeAllObjects]; +} + +- (void) ackPuts { + for (FTupleCallbackStatus *put in self.putsToAck) { + put.block(put.status, put.errorReason); + } + [self.putsToAck removeAllObjects]; +} + +- (void) handleTimestamp:(NSNumber *)timestamp { + FFLog(@"I-RDB034041", @"Handling timestamp: %@", timestamp); + double timestampDeltaMs = [timestamp doubleValue] - ([[NSDate date] timeIntervalSince1970] * 1000); + [self.delegate onServerInfoUpdate:self updates:@{kDotInfoServerTimeOffset: [NSNumber numberWithDouble:timestampDeltaMs]}]; +} + +- (void) sendStats:(NSDictionary *)stats { + if ([stats count] > 0) { + NSDictionary *request = @{ kFWPRequestCounters: stats }; + [self sendAction:kFWPRequestActionStats body:request sensitive:NO callback:^(NSDictionary *data) { + NSString* status = [data objectForKey:kFWPResponseForActionStatus]; + NSString* errorReason = [data objectForKey:kFWPResponseForActionData]; + BOOL statusOk = [status isEqualToString:kFWPResponseForActionStatusOk]; + if (!statusOk) { + FFLog(@"I-RDB034042", @"Failed to send stats: %@", errorReason); + } + }]; + } else { + FFLog(@"I-RDB034043", @"Not sending stats because stats are empty"); + } +} + +- (void) sendConnectStats { + NSMutableDictionary *stats = [NSMutableDictionary dictionary]; + + #if TARGET_OS_IOS || TARGET_OS_TV + if (self.config.persistenceEnabled) { + stats[@"persistence.ios.enabled"] = @1; + } + #elif TARGET_OS_OSX + if (self.config.persistenceEnabled) { + stats[@"persistence.osx.enabled"] = @1; + } + #endif + NSString *sdkVersion = [[FIRDatabase sdkVersion] stringByReplacingOccurrencesOfString:@"." withString:@"-"]; + NSString *sdkStatName = [NSString stringWithFormat:@"sdk.objc.%@", sdkVersion]; + stats[sdkStatName] = @1; + FFLog(@"I-RDB034044", @"Sending first connection stats"); + [self sendStats:stats]; +} + +- (NSDictionary *) dumpListens { + return self.listens; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FQueryParams.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FQueryParams.h new file mode 100644 index 0000000..e9728e7 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FQueryParams.h @@ -0,0 +1,59 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@protocol FIndex, FNodeFilter, FNode; + +@interface FQueryParams : NSObject + +@property (nonatomic, readonly) BOOL limitSet; +@property (nonatomic, readonly) NSInteger limit; + +@property (nonatomic, strong, readonly) NSString *viewFrom; +@property (nonatomic, strong, readonly) id indexStartValue; +@property (nonatomic, strong, readonly) NSString *indexStartKey; +@property (nonatomic, strong, readonly) id indexEndValue; +@property (nonatomic, strong, readonly) NSString *indexEndKey; + +@property (nonatomic, strong, readonly) id index; + +- (BOOL)loadsAllData; +- (BOOL)isDefault; +- (BOOL)isValid; +- (BOOL)hasAnchoredLimit; + +- (FQueryParams *) limitTo:(NSInteger) limit; +- (FQueryParams *) limitToFirst:(NSInteger) newLimit; +- (FQueryParams *) limitToLast:(NSInteger) newLimit; + +- (FQueryParams *) startAt:(id)indexValue childKey:(NSString *)key; +- (FQueryParams *) startAt:(id)indexValue; +- (FQueryParams *) endAt:(id)indexValue childKey:(NSString *)key; +- (FQueryParams *) endAt:(id)indexValue; + +- (FQueryParams *) orderBy:(id) index; + ++ (FQueryParams *) defaultInstance; ++ (FQueryParams *) fromQueryObject:(NSDictionary *)dict; + +- (BOOL)hasStart; +- (BOOL)hasEnd; + +- (NSDictionary *) wireProtocolParams; +- (BOOL) isViewFromLeft; +- (id) nodeFilter; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FQueryParams.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FQueryParams.m new file mode 100644 index 0000000..7920358 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FQueryParams.m @@ -0,0 +1,372 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FQueryParams.h" +#import "FValidation.h" +#import "FConstants.h" +#import "FIndex.h" +#import "FPriorityIndex.h" +#import "FUtilities.h" +#import "FNodeFilter.h" +#import "FIndexedFilter.h" +#import "FLimitedFilter.h" +#import "FRangedFilter.h" +#import "FNode.h" +#import "FSnapshotUtilities.h" + +@interface FQueryParams () + +@property (nonatomic, readwrite) BOOL limitSet; +@property (nonatomic, readwrite) NSInteger limit; + +@property (nonatomic, strong, readwrite) NSString *viewFrom; +/** +* indexStartValue is anything you can store as a priority / value. +*/ +@property (nonatomic, strong, readwrite) id indexStartValue; +@property (nonatomic, strong, readwrite) NSString *indexStartKey; +/** +* indexStartValue is anything you can store as a priority / value. +*/ +@property (nonatomic, strong, readwrite) id indexEndValue; +@property (nonatomic, strong, readwrite) NSString *indexEndKey; + +@property (nonatomic, strong, readwrite) id index; + +@end + +@implementation FQueryParams + ++ (FQueryParams *) defaultInstance { + static FQueryParams *defaultParams = nil; + static dispatch_once_t defaultParamsToken; + dispatch_once(&defaultParamsToken, ^{ + defaultParams = [[FQueryParams alloc] init]; + }); + return defaultParams; +} + + +- (id)init { + self = [super init]; + if (self) { + self->_limitSet = NO; + self->_limit = 0; + + self->_viewFrom = nil; + self->_indexStartValue = nil; + self->_indexStartKey = nil; + self->_indexEndValue = nil; + self->_indexEndKey = nil; + + self->_index = [FPriorityIndex priorityIndex]; + } + return self; +} + +/** +* Only valid if hasStart is true +*/ +- (id) indexStartValue { + NSAssert([self hasStart], @"Only valid if start has been set"); + return _indexStartValue; +} + +/** +* Only valid if hasStart is true. +* @return The starting key name for the range defined by these query parameters +*/ +- (NSString *) indexStartKey { + NSAssert([self hasStart], @"Only valid if start has been set"); + if (_indexStartKey == nil) { + return [FUtilities minName]; + } else { + return _indexStartKey; + } +} + +/** +* Only valid if hasEnd is true. +*/ +- (id) indexEndValue { + NSAssert([self hasEnd], @"Only valid if end has been set"); + return _indexEndValue; +} + +/** +* Only valid if hasEnd is true. +* @return The end key name for the range defined by these query parameters +*/ +- (NSString *) indexEndKey { + NSAssert([self hasEnd], @"Only valid if end has been set"); + if (_indexEndKey == nil) { + return [FUtilities maxName]; + } else { + return _indexEndKey; + } +} + +/** +* @return true if a limit has been set and has been explicitly anchored +*/ +- (BOOL) hasAnchoredLimit { + return self.limitSet && self.viewFrom != nil; +} + +/** +* Only valid to call if limitSet returns true +*/ +- (NSInteger) limit { + NSAssert(self.limitSet, @"Only valid if limit has been set"); + return _limit; +} + +- (BOOL)hasStart { + return self->_indexStartValue != nil; +} + +- (BOOL)hasEnd { + return self->_indexEndValue != nil; +} + +- (id) copyWithZone:(NSZone *)zone { + // Immutable + return self; +} + +- (id) mutableCopy { + FQueryParams* other = [[[self class] alloc] init]; + // Maybe need to do extra copying here + other->_limitSet = _limitSet; + other->_limit = _limit; + other->_indexStartValue = _indexStartValue; + other->_indexStartKey = _indexStartKey; + other->_indexEndValue = _indexEndValue; + other->_indexEndKey = _indexEndKey; + other->_viewFrom = _viewFrom; + other->_index = _index; + return other; +} + +- (FQueryParams *) limitTo:(NSInteger)newLimit { + FQueryParams *newParams = [self mutableCopy]; + newParams->_limitSet = YES; + newParams->_limit = newLimit; + newParams->_viewFrom = nil; + return newParams; +} + +- (FQueryParams *) limitToFirst:(NSInteger)newLimit { + FQueryParams *newParams = [self mutableCopy]; + newParams->_limitSet = YES; + newParams->_limit = newLimit; + newParams->_viewFrom = kFQPViewFromLeft; + return newParams; +} + +- (FQueryParams *) limitToLast:(NSInteger)newLimit { + FQueryParams *newParams = [self mutableCopy]; + newParams->_limitSet = YES; + newParams->_limit = newLimit; + newParams->_viewFrom = kFQPViewFromRight; + return newParams; +} + +- (FQueryParams *) startAt:(id)indexValue childKey:(NSString *)key { + NSAssert([indexValue isLeafNode] || [indexValue isEmpty], nil); + FQueryParams *newParams = [self mutableCopy]; + newParams->_indexStartValue = indexValue; + newParams->_indexStartKey = key; + return newParams; +} + +- (FQueryParams *) startAt:(id)indexValue { + return [self startAt:indexValue childKey:nil]; +} + +- (FQueryParams *) endAt:(id)indexValue childKey:(NSString *)key { + NSAssert([indexValue isLeafNode] || [indexValue isEmpty], nil); + FQueryParams *newParams = [self mutableCopy]; + newParams->_indexEndValue = indexValue; + newParams->_indexEndKey = key; + return newParams; +} + +- (FQueryParams *) endAt:(id)indexValue { + return [self endAt:indexValue childKey:nil]; +} + +- (FQueryParams *) orderBy:(id)newIndex { + FQueryParams *newParams = [self mutableCopy]; + newParams->_index = newIndex; + return newParams; +} + +- (NSDictionary *) wireProtocolParams { + NSMutableDictionary* dict = [[NSMutableDictionary alloc] init]; + if ([self hasStart]) { + [dict setObject:[self.indexStartValue valForExport:YES] forKey:kFQPIndexStartValue]; + + // Don't use property as it will be [MIN-NAME] + if (self->_indexStartKey != nil) { + [dict setObject:self->_indexStartKey forKey:kFQPIndexStartName]; + } + } + + if ([self hasEnd]) { + [dict setObject:[self.indexEndValue valForExport:YES] forKey:kFQPIndexEndValue]; + + // Don't use property as it will be [MAX-NAME] + if (self->_indexEndKey != nil) { + [dict setObject:self->_indexEndKey forKey:kFQPIndexEndName]; + } + } + + if (self.limitSet) { + [dict setObject:[NSNumber numberWithInteger:self.limit] forKey:kFQPLimit]; + NSString *vf = self.viewFrom; + if (vf == nil) { + // limit() rather than limitToFirst or limitToLast was called. + // This means that only one of startSet or endSet is true. Use them + // to calculate which side of the view to anchor to. If neither is set, + // Anchor to end + if ([self hasStart]) { + vf = kFQPViewFromLeft; + } else { + vf = kFQPViewFromRight; + } + } + [dict setObject:vf forKey:kFQPViewFrom]; + } + + // For now, priority index is the default, so we only specify if it's some other index. + if (![self.index isEqual:[FPriorityIndex priorityIndex]]) { + [dict setObject:[self.index queryDefinition] forKey:kFQPIndex]; + } + + return dict; +} + ++ (FQueryParams *)fromQueryObject:(NSDictionary *)dict { + if (dict.count == 0) { + return [FQueryParams defaultInstance]; + } + + FQueryParams *params = [[FQueryParams alloc] init]; + if (dict[kFQPLimit] != nil) { + params->_limitSet = YES; + params->_limit = [dict[kFQPLimit] integerValue]; + } + + if (dict[kFQPIndexStartValue] != nil) { + params->_indexStartValue = [FSnapshotUtilities nodeFrom:dict[kFQPIndexStartValue]]; + if (dict[kFQPIndexStartName] != nil) { + params->_indexStartKey = dict[kFQPIndexStartName]; + } + } + + if (dict[kFQPIndexEndValue] != nil) { + params->_indexEndValue = [FSnapshotUtilities nodeFrom:dict[kFQPIndexEndValue]]; + if (dict[kFQPIndexEndName] != nil) { + params->_indexEndKey = dict[kFQPIndexEndName]; + } + } + + if (dict[kFQPViewFrom] != nil) { + NSString *viewFrom = dict[kFQPViewFrom]; + if (![viewFrom isEqualToString:kFQPViewFromLeft] && ![viewFrom isEqualToString:kFQPViewFromRight]) { + [NSException raise:NSInvalidArgumentException format:@"Unknown view from paramter: %@", viewFrom]; + } + params->_viewFrom = viewFrom; + } + + NSString *index = dict[kFQPIndex]; + if (index != nil) { + params->_index = [FIndex indexFromQueryDefinition:index]; + } + + return params; +} + +- (BOOL) isViewFromLeft { + if (self.viewFrom != nil) { + // Not null, we can just check + return [self.viewFrom isEqualToString:kFQPViewFromLeft]; + } else { + // If start is set, it's view from left. Otherwise not. + return self.hasStart; + } +} + +- (id) nodeFilter { + if (self.loadsAllData) { + return [[FIndexedFilter alloc] initWithIndex:self.index]; + } else if (self.limitSet) { + return [[FLimitedFilter alloc] initWithQueryParams:self]; + } else { + return [[FRangedFilter alloc] initWithQueryParams:self]; + } +} + + +- (BOOL) isValid { + return !(self.hasStart && self.hasEnd && self.limitSet && !self.hasAnchoredLimit); +} + +- (BOOL) loadsAllData { + return !(self.hasStart || self.hasEnd || self.limitSet); +} + +- (BOOL) isDefault { + return [self loadsAllData] && [self.index isEqual:[FPriorityIndex priorityIndex]]; +} + +- (NSString *) description { + return [[self wireProtocolParams] description]; +} + +- (BOOL) isEqual:(id)obj { + if (self == obj) { + return YES; + } + if (![obj isKindOfClass:[self class]]) { + return NO; + } + FQueryParams *other = (FQueryParams *)obj; + if (self->_limitSet != other->_limitSet) return NO; + if (self->_limit != other->_limit) return NO; + if ((self->_index != other->_index) && ![self->_index isEqual:other->_index]) return NO; + if ((self->_indexStartKey != other->_indexStartKey) && ![self->_indexStartKey isEqualToString:other->_indexStartKey]) return NO; + if ((self->_indexStartValue != other->_indexStartValue) && ![self->_indexStartValue isEqual:other->_indexStartValue]) return NO; + if ((self->_indexEndKey != other->_indexEndKey) && ![self->_indexEndKey isEqualToString:other->_indexEndKey]) return NO; + if ((self->_indexEndValue != other->_indexEndValue) && ![self->_indexEndValue isEqual:other->_indexEndValue]) return NO; + if ([self isViewFromLeft] != [other isViewFromLeft]) return NO; + + return YES; +} + +- (NSUInteger) hash { + NSUInteger result = _limitSet ? _limit : 0; + result = 31 * result + ([self isViewFromLeft] ? 1231 : 1237); + result = 31 * result + [_indexStartKey hash]; + result = 31 * result + [_indexStartValue hash]; + result = 31 * result + [_indexEndKey hash]; + result = 31 * result + [_indexEndValue hash]; + result = 31 * result + [_index hash]; + return result; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FQuerySpec.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FQuerySpec.h new file mode 100644 index 0000000..49ed536 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FQuerySpec.h @@ -0,0 +1,36 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FQueryParams.h" +#import "FPath.h" +#import "FIndex.h" + +@interface FQuerySpec : NSObject + +@property (nonatomic, strong, readonly) FPath* path; +@property (nonatomic, strong, readonly) FQueryParams *params; + +- (id)initWithPath:(FPath *)path params:(FQueryParams *)params; + ++ (FQuerySpec *)defaultQueryAtPath:(FPath *)path; + +- (id)index; +- (BOOL)isDefault; +- (BOOL)loadsAllData; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FQuerySpec.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FQuerySpec.m new file mode 100644 index 0000000..24be433 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FQuerySpec.m @@ -0,0 +1,85 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FQuerySpec.h" + +@interface FQuerySpec () + +@property (nonatomic, strong, readwrite) FPath* path; +@property (nonatomic, strong, readwrite) FQueryParams *params; + + +@end + +@implementation FQuerySpec + +- (id)initWithPath:(FPath *)path params:(FQueryParams *)params { + self = [super init]; + if (self != nil) { + self->_path = path; + self->_params = params; + } + return self; +} + ++ (FQuerySpec *)defaultQueryAtPath:(FPath *)path { + return [[FQuerySpec alloc] initWithPath:path params:[FQueryParams defaultInstance]]; +} + +- (id)copyWithZone:(NSZone *)zone { + // Immutable + return self; +} + +- (id)index { + return self.params.index; +} + +- (BOOL)isDefault { + return self.params.isDefault; +} + +- (BOOL)loadsAllData { + return self.params.loadsAllData; +} + +- (BOOL)isEqual:(id)object { + if (self == object) { + return YES; + } + + if (![object isKindOfClass:[FQuerySpec class]]) { + return NO; + } + + FQuerySpec *other = (FQuerySpec *)object; + + if (![self.path isEqual:other.path]) { + return NO; + } + + return [self.params isEqual:other.params]; +} + +- (NSUInteger)hash { + return self.path.hash * 31 + self.params.hash; +} + +- (NSString *)description { + return [NSString stringWithFormat:@"FQuerySpec (path: %@, params: %@)", self.path, self.params]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRangeMerge.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRangeMerge.h new file mode 100644 index 0000000..8825e0e --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRangeMerge.h @@ -0,0 +1,35 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FNode.h" + +/** + * Applies a merge of a snap for a given interval of paths. + * Each leaf in the current node which the relative path lies *after* (the optional) start and lies *before or at* + * (the optional) end will be deleted. Each leaf in snap that lies in the interval will be added to the resulting node. + * Nodes outside of the range are ignored. nil for start and end are sentinel values that represent -infinity and + * +infinity respectively (aka includes any path). + * Priorities of children nodes are treated as leaf children of that node. + */ +@interface FRangeMerge : NSObject + +- (instancetype)initWithStart:(FPath *)start end:(FPath *)end updates:(id)updates; + +- (id)applyToNode:(id)node; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRangeMerge.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRangeMerge.m new file mode 100644 index 0000000..8bc67bf --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRangeMerge.m @@ -0,0 +1,107 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FRangeMerge.h" + +#import "FEmptyNode.h" + +@interface FRangeMerge () + +@property (nonatomic, strong) FPath *optExclusiveStart; +@property (nonatomic, strong) FPath *optInclusiveEnd; +@property (nonatomic, strong) id updates; + +@end + +@implementation FRangeMerge + +- (instancetype)initWithStart:(FPath *)start end:(FPath *)end updates:(id)updates { + self = [super init]; + if (self != nil) { + self->_optExclusiveStart = start; + self->_optInclusiveEnd = end; + self->_updates = updates; + } + return self; +} + +- (id)applyToNode:(id)node { + return [self updateRangeInNode:[FPath empty] node:node updates:self.updates]; +} + +- (id)updateRangeInNode:(FPath *)currentPath node:(id)node updates:(id)updates { + NSComparisonResult startComparison = (self.optExclusiveStart == nil) ? NSOrderedDescending : [currentPath compare:self.optExclusiveStart]; + NSComparisonResult endComparison = (self.optInclusiveEnd == nil) ? NSOrderedAscending : [currentPath compare:self.optInclusiveEnd]; + BOOL startInNode = self.optExclusiveStart != nil && [currentPath contains:self.optExclusiveStart]; + BOOL endInNode = self.optInclusiveEnd != nil && [currentPath contains:self.optInclusiveEnd]; + if (startComparison == NSOrderedDescending && endComparison == NSOrderedAscending && !endInNode) { + // child is completly contained + return updates; + } else if (startComparison == NSOrderedDescending && endInNode && [updates isLeafNode]) { + return updates; + } else if (startComparison == NSOrderedDescending && endComparison == NSOrderedSame) { + NSAssert(endInNode, @"End not in node"); + NSAssert(![updates isLeafNode], @"Found leaf node update, this case should have been handled above."); + if ([node isLeafNode]) { + // Update node was not a leaf node, so we can delete it + return [FEmptyNode emptyNode]; + } else { + // Unaffected by range, ignore + return node; + } + } else if (startInNode || endInNode) { + // There is a partial update we need to do, so collect all relevant children + NSMutableSet *allChildren = [NSMutableSet set]; + [node enumerateChildrenUsingBlock:^(NSString *key, id node, BOOL *stop) { + [allChildren addObject:key]; + }]; + [updates enumerateChildrenUsingBlock:^(NSString *key, id node, BOOL *stop) { + [allChildren addObject:key]; + }]; + + __block id newNode = node; + void (^action)(id, BOOL *) = ^void(NSString *key, BOOL *stop) { + id currentChild = [node getImmediateChild:key]; + id updatedChild = [self updateRangeInNode:[currentPath childFromString:key] + node:currentChild + updates:[updates getImmediateChild:key]]; + // Only need to update if the node changed + if (updatedChild != currentChild) { + newNode = [newNode updateImmediateChild:key withNewChild:updatedChild]; + } + }; + + [allChildren enumerateObjectsUsingBlock:action]; + + // Add priority last, so the node is not empty when applying + if (!updates.getPriority.isEmpty || !node.getPriority.isEmpty) { + BOOL stop = NO; + action(@".priority", &stop); + } + return newNode; + } else { + // Unaffected by this range + NSAssert(endComparison == NSOrderedDescending || startComparison <= NSOrderedSame, @"Invalid range for update"); + return node; + } +} + +- (NSString *)description { + return [NSString stringWithFormat:@"RangeMerge (optExclusiveStart = %@, optExclusiveEng = %@, updates = %@)", + self.optExclusiveStart, self.optInclusiveEnd, self.updates]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepo.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepo.h new file mode 100644 index 0000000..ab0b074 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepo.h @@ -0,0 +1,76 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FRepoInfo.h" +#import "FPersistentConnection.h" +#import "FIRDataEventType.h" +#import "FTupleUserCallback.h" + +@class FQuerySpec; +@class FPersistence; +@class FAuthenticationManager; +@class FIRDatabaseConfig; +@protocol FEventRegistration; +@class FCompoundWrite; +@protocol FClock; +@class FIRDatabase; + +@interface FRepo : NSObject + +@property (nonatomic, strong) FIRDatabaseConfig *config; + +- (id)initWithRepoInfo:(FRepoInfo *)info config:(FIRDatabaseConfig *)config database:(FIRDatabase *)database; + +- (void) set:(FPath *)path withNode:(id)node withCallback:(fbt_void_nserror_ref)onComplete; +- (void) update:(FPath *)path withNodes:(FCompoundWrite *)compoundWrite withCallback:(fbt_void_nserror_ref)callback; +- (void) purgeOutstandingWrites; + +- (void) addEventRegistration:(id)eventRegistration forQuery:(FQuerySpec *)query; +- (void) removeEventRegistration:(id)eventRegistration forQuery:(FQuerySpec *)query; +- (void) keepQuery:(FQuerySpec *)query synced:(BOOL)synced; + +- (NSString*)name; +- (NSTimeInterval)serverTime; + +- (void) onDataUpdate:(FPersistentConnection *)fpconnection forPath:(NSString *)pathString message:(id)message isMerge:(BOOL)isMerge tagId:(NSNumber *)tagId; +- (void) onConnect:(FPersistentConnection *)fpconnection; +- (void) onDisconnect:(FPersistentConnection *)fpconnection; + +// Disconnect methods +- (void) onDisconnectCancel:(FPath *)path withCallback:(fbt_void_nserror_ref)callback; +- (void) onDisconnectSet:(FPath *)path withNode:(id)node withCallback:(fbt_void_nserror_ref)callback; +- (void) onDisconnectUpdate:(FPath *)path withNodes:(FCompoundWrite *)compoundWrite withCallback:(fbt_void_nserror_ref)callback; + +// Connection Management. +- (void) interrupt; +- (void) resume; + +// Transactions +- (void) startTransactionOnPath:(FPath *)path + update:(fbt_transactionresult_mutabledata)update + onComplete:(fbt_void_nserror_bool_datasnapshot)onComplete + withLocalEvents:(BOOL)applyLocally; + +// Testing methods +- (NSDictionary *) dumpListens; +- (void) dispose; +- (void) setHijackHash:(BOOL)hijack; + +@property (nonatomic, strong, readonly) FAuthenticationManager *auth; +@property (nonatomic, strong, readonly) FIRDatabase *database; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepo.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepo.m new file mode 100644 index 0000000..ae1d8e8 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepo.m @@ -0,0 +1,1119 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import +#import +#import "FRepo.h" +#import "FSnapshotUtilities.h" +#import "FConstants.h" +#import "FIRDatabaseQuery_Private.h" +#import "FQuerySpec.h" +#import "FTupleNodePath.h" +#import "FRepo_Private.h" +#import "FRepoManager.h" +#import "FServerValues.h" +#import "FTupleSetIdPath.h" +#import "FSyncTree.h" +#import "FEventRegistration.h" +#import "FAtomicNumber.h" +#import "FSyncTree.h" +#import "FListenProvider.h" +#import "FEventRaiser.h" +#import "FSnapshotHolder.h" +#import "FIRDatabaseConfig_Private.h" +#import "FLevelDBStorageEngine.h" +#import "FPersistenceManager.h" +#import "FWriteRecord.h" +#import "FCachePolicy.h" +#import "FClock.h" +#import "FIRDatabase_Private.h" +#import "FTree.h" +#import "FTupleTransaction.h" +#import "FIRTransactionResult.h" +#import "FIRTransactionResult_Private.h" +#import "FIRMutableData.h" +#import "FIRMutableData_Private.h" +#import "FIRDataSnapshot.h" +#import "FIRDataSnapshot_Private.h" +#import "FValueEventRegistration.h" +#import "FEmptyNode.h" + +#if TARGET_OS_IOS || TARGET_OS_TV +#import +#endif + +@interface FRepo() + +@property (nonatomic, strong) FOffsetClock *serverClock; +@property (nonatomic, strong) FPersistenceManager* persistenceManager; +@property (nonatomic, strong) FIRDatabase *database; +@property (nonatomic, strong, readwrite) FAuthenticationManager *auth; +@property (nonatomic, strong) FSyncTree *infoSyncTree; +@property (nonatomic) NSInteger writeIdCounter; +@property (nonatomic) BOOL hijackHash; +@property (nonatomic, strong) FTree *transactionQueueTree; +@property (nonatomic) BOOL loggedTransactionPersistenceWarning; + +/** +* Test only. For load testing the server. +*/ +@property (nonatomic, strong) id (^interceptServerDataCallback)(NSString *pathString, id data); +@end + + +@implementation FRepo + +- (id)initWithRepoInfo:(FRepoInfo*)info config:(FIRDatabaseConfig *)config database:(FIRDatabase *)database { + self = [super init]; + if (self) { + self.repoInfo = info; + self.config = config; + self.database = database; + + // Access can occur outside of shared queue, so the clock needs to be initialized here + self.serverClock = [[FOffsetClock alloc] initWithClock:[FSystemClock clock] offset:0]; + + self.connection = [[FPersistentConnection alloc] initWithRepoInfo:self.repoInfo dispatchQueue:[FIRDatabaseQuery sharedQueue] config:self.config]; + + // Needs to be called before authentication manager is instantiated + self.eventRaiser = [[FEventRaiser alloc] initWithQueue:self.config.callbackQueue]; + + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + [self deferredInit]; + }); + } + return self; +} + +- (void)deferredInit { + // TODO: cleanup on dealloc + __weak FRepo *weakSelf = self; + [self.config.authTokenProvider listenForTokenChanges:^(NSString *token) { + [weakSelf.connection refreshAuthToken:token]; + }]; + + // Open connection now so that by the time we are connected the deferred init has run + // This relies on the fact that all callbacks run on repos queue + self.connection.delegate = self; + [self.connection open]; + + self.dataUpdateCount = 0; + self.rangeMergeUpdateCount = 0; + self.interceptServerDataCallback = nil; + + if (self.config.persistenceEnabled) { + NSString* repoHashString = [NSString stringWithFormat:@"%@_%@", self.repoInfo.host, self.repoInfo.namespace]; + NSString* persistencePrefix = [NSString stringWithFormat:@"%@/%@", self.config.sessionIdentifier, repoHashString]; + + id cachePolicy = [[FLRUCachePolicy alloc] initWithMaxSize:self.config.persistenceCacheSizeBytes]; + + id engine; + if (self.config.forceStorageEngine != nil) { + engine = self.config.forceStorageEngine; + } else { + FLevelDBStorageEngine *levelDBEngine = [[FLevelDBStorageEngine alloc] initWithPath:persistencePrefix]; + // We need the repo info to run the legacy migration. Future migrations will be managed by the database itself + // Remove this once we are confident that no-one is using legacy migration anymore... + [levelDBEngine runLegacyMigration:self.repoInfo]; + engine = levelDBEngine; + } + + self.persistenceManager = [[FPersistenceManager alloc] initWithStorageEngine:engine cachePolicy:cachePolicy]; + } else { + self.persistenceManager = nil; + } + + [self initTransactions]; + + // A list of data pieces and paths to be set when this client disconnects + self.onDisconnect = [[FSparseSnapshotTree alloc] init]; + self.infoData = [[FSnapshotHolder alloc] init]; + + FListenProvider *infoListenProvider = [[FListenProvider alloc] init]; + infoListenProvider.startListening = ^(FQuerySpec *query, + NSNumber *tagId, + id hash, + fbt_nsarray_nsstring onComplete) { + NSArray *infoEvents = @[]; + FRepo *strongSelf = weakSelf; + id node = [strongSelf.infoData getNode:query.path]; + // This is possibly a hack, but we have different semantics for .info endpoints. We don't raise null events + // on initial data... + if (![node isEmpty]) { + infoEvents = [strongSelf.infoSyncTree applyServerOverwriteAtPath:query.path newData:node]; + [strongSelf.eventRaiser raiseCallback:^{ + onComplete(kFWPResponseForActionStatusOk); + }]; + } + return infoEvents; + }; + infoListenProvider.stopListening = ^(FQuerySpec *query, NSNumber *tagId) {}; + self.infoSyncTree = [[FSyncTree alloc] initWithListenProvider:infoListenProvider]; + + FListenProvider *serverListenProvider = [[FListenProvider alloc] init]; + serverListenProvider.startListening = ^(FQuerySpec *query, + NSNumber *tagId, + id hash, + fbt_nsarray_nsstring onComplete) { + [weakSelf.connection listen:query tagId:tagId hash:hash onComplete:^(NSString *status) { + NSArray *events = onComplete(status); + [weakSelf.eventRaiser raiseEvents:events]; + }]; + // No synchronous events for network-backed sync trees + return @[]; + }; + serverListenProvider.stopListening = ^(FQuerySpec *query, NSNumber *tag) { + [weakSelf.connection unlisten:query tagId:tag]; + }; + self.serverSyncTree = [[FSyncTree alloc] initWithPersistenceManager:self.persistenceManager + listenProvider:serverListenProvider]; + + [self restoreWrites]; + + [self updateInfo:kDotInfoConnected withValue:@NO]; + + [self setupNotifications]; +} + + +- (void) restoreWrites { + NSArray *writes = self.persistenceManager.userWrites; + + NSDictionary *serverValues = [FServerValues generateServerValues:self.serverClock]; + __block NSInteger lastWriteId = NSIntegerMin; + [writes enumerateObjectsUsingBlock:^(FWriteRecord *write, NSUInteger idx, BOOL *stop) { + NSInteger writeId = write.writeId; + fbt_void_nsstring_nsstring callback = ^(NSString *status, NSString *errorReason) { + [self warnIfWriteFailedAtPath:write.path status:status message:@"Persisted write"]; + [self ackWrite:writeId rerunTransactionsAtPath:write.path status:status]; + }; + if (lastWriteId >= writeId) { + [NSException raise:NSInternalInconsistencyException format:@"Restored writes were not in order!"]; + } + lastWriteId = writeId; + self.writeIdCounter = writeId + 1; + if ([write isOverwrite]) { + FFLog(@"I-RDB038001", @"Restoring overwrite with id %ld", (long)write.writeId); + [self.connection putData:[write.overwrite valForExport:YES] + forPath:[write.path toString] + withHash:nil + withCallback:callback]; + id resolved = [FServerValues resolveDeferredValueSnapshot:write.overwrite withServerValues:serverValues]; + [self.serverSyncTree applyUserOverwriteAtPath:write.path newData:resolved writeId:writeId isVisible:YES]; + } else { + FFLog(@"I-RDB038002", @"Restoring merge with id %ld", (long)write.writeId); + [self.connection mergeData:[write.merge valForExport:YES] + forPath:[write.path toString] + withCallback:callback]; + FCompoundWrite *resolved = [FServerValues resolveDeferredValueCompoundWrite:write.merge withServerValues:serverValues]; + [self.serverSyncTree applyUserMergeAtPath:write.path changedChildren:resolved writeId:writeId]; + } + }]; +} + +- (NSString*)name { + return self.repoInfo.namespace; +} + +- (NSString *) description { + return [self.repoInfo description]; +} + +- (void) interrupt { + [self.connection interruptForReason:kFInterruptReasonRepoInterrupt]; +} + +- (void) resume { + [self.connection resumeForReason:kFInterruptReasonRepoInterrupt]; +} + +// NOTE: Typically if you're calling this, you should be in an @autoreleasepool block to make sure that ARC kicks +// in and cleans up things no longer referenced (i.e. pendingPutsDB). +- (void) dispose { + [self.connection interruptForReason:kFInterruptReasonRepoInterrupt]; + + // We need to nil out any references to LevelDB, to make sure the + // LevelDB exclusive locks are released. + [self.persistenceManager close]; +} + +- (NSInteger) nextWriteId { + return self->_writeIdCounter++; +} + +- (NSTimeInterval) serverTime { + return [self.serverClock currentTime]; +} + +- (void) set:(FPath *)path withNode:(id)node withCallback:(fbt_void_nserror_ref)onComplete { + id value = [node valForExport:YES]; + FFLog(@"I-RDB038003", @"Setting: %@ with %@ pri: %@", [path toString], [value description], [[node getPriority] val]); + + // TODO: Optimize this behavior to either (a) store flag to skip resolving where possible and / or + // (b) store unresolved paths on JSON parse + NSDictionary* serverValues = [FServerValues generateServerValues:self.serverClock]; + id newNode = [FServerValues resolveDeferredValueSnapshot:node withServerValues:serverValues]; + + NSInteger writeId = [self nextWriteId]; + [self.persistenceManager saveUserOverwrite:node atPath:path writeId:writeId]; + NSArray *events = [self.serverSyncTree applyUserOverwriteAtPath:path newData:newNode writeId:writeId isVisible:YES]; + [self.eventRaiser raiseEvents:events]; + + [self.connection putData:value forPath:[path toString] withHash:nil withCallback:^(NSString *status, NSString *errorReason) { + [self warnIfWriteFailedAtPath:path status:status message:@"setValue: or removeValue:"]; + [self ackWrite:writeId rerunTransactionsAtPath:path status:status]; + [self callOnComplete:onComplete withStatus:status errorReason:errorReason andPath:path]; + }]; + + FPath* affectedPath = [self abortTransactionsAtPath:path error:kFTransactionSet]; + [self rerunTransactionsForPath:affectedPath]; +} + +- (void) update:(FPath *)path withNodes:(FCompoundWrite *)nodes withCallback:(fbt_void_nserror_ref)callback { + NSDictionary *values = [nodes valForExport:YES]; + + FFLog(@"I-RDB038004", @"Updating: %@ with %@", [path toString], [values description]); + NSDictionary* serverValues = [FServerValues generateServerValues:self.serverClock]; + FCompoundWrite *resolved = [FServerValues resolveDeferredValueCompoundWrite:nodes withServerValues:serverValues]; + + if (!resolved.isEmpty) { + NSInteger writeId = [self nextWriteId]; + [self.persistenceManager saveUserMerge:nodes atPath:path writeId:writeId]; + NSArray *events = [self.serverSyncTree applyUserMergeAtPath:path changedChildren:resolved writeId:writeId]; + [self.eventRaiser raiseEvents:events]; + + [self.connection mergeData:values forPath:[path description] withCallback:^(NSString *status, NSString *errorReason) { + [self warnIfWriteFailedAtPath:path status:status message:@"updateChildValues:"]; + [self ackWrite:writeId rerunTransactionsAtPath:path status:status]; + [self callOnComplete:callback withStatus:status errorReason:errorReason andPath:path]; + }]; + + [nodes enumerateWrites:^(FPath *childPath, id node, BOOL *stop) { + FPath* pathFromRoot = [path child:childPath]; + FFLog(@"I-RDB038005", @"Cancelling transactions at path: %@", pathFromRoot); + FPath *affectedPath = [self abortTransactionsAtPath:pathFromRoot error:kFTransactionSet]; + [self rerunTransactionsForPath:affectedPath]; + }]; + } else { + FFLog(@"I-RDB038006", @"update called with empty data. Doing nothing"); + // Do nothing, just call the callback + [self callOnComplete:callback withStatus:@"ok" errorReason:nil andPath:path]; + } +} + +- (void) onDisconnectCancel:(FPath *)path withCallback:(fbt_void_nserror_ref)callback { + [self.connection onDisconnectCancelPath:path withCallback:^(NSString *status, NSString *errorReason) { + BOOL success = [status isEqualToString:kFWPResponseForActionStatusOk]; + if (success) { + [self.onDisconnect forgetPath:path]; + } else { + FFLog(@"I-RDB038007", @"cancelDisconnectOperations: at %@ failed: %@", path, status); + } + + [self callOnComplete:callback withStatus:status errorReason:errorReason andPath:path]; + }]; +} + +- (void) onDisconnectSet:(FPath *)path withNode:(id)node withCallback:(fbt_void_nserror_ref)callback { + [self.connection onDisconnectPutData:[node valForExport:YES] forPath:path withCallback:^(NSString *status, NSString *errorReason) { + BOOL success = [status isEqualToString:kFWPResponseForActionStatusOk]; + if (success) { + [self.onDisconnect rememberData:node onPath:path]; + } else { + FFWarn(@"I-RDB038008", @"onDisconnectSetValue: or onDisconnectRemoveValue: at %@ failed: %@", path, status); + } + + [self callOnComplete:callback withStatus:status errorReason:errorReason andPath:path]; + }]; +} + +- (void) onDisconnectUpdate:(FPath *)path withNodes:(FCompoundWrite *)nodes withCallback:(fbt_void_nserror_ref)callback { + if (!nodes.isEmpty) { + NSDictionary *values = [nodes valForExport:YES]; + + [self.connection onDisconnectMergeData:values forPath:path withCallback:^(NSString *status, NSString *errorReason) { + BOOL success = [status isEqualToString:kFWPResponseForActionStatusOk]; + if (success) { + [nodes enumerateWrites:^(FPath *relativePath, id nodeUnresolved, BOOL *stop) { + FPath* childPath = [path child:relativePath]; + [self.onDisconnect rememberData:nodeUnresolved onPath:childPath]; + }]; + } else { + FFWarn(@"I-RDB038009", @"onDisconnectUpdateChildValues: at %@ failed %@", path, status); + } + + [self callOnComplete:callback withStatus:status errorReason:errorReason andPath:path]; + }]; + } else { + // Do nothing, just call the callback + [self callOnComplete:callback withStatus:@"ok" errorReason:nil andPath:path]; + } +} + +- (void) purgeOutstandingWrites { + FFLog(@"I-RDB038010", @"Purging outstanding writes"); + NSArray *events = [self.serverSyncTree removeAllWrites]; + [self.eventRaiser raiseEvents:events]; + // Abort any transactions + [self abortTransactionsAtPath:[FPath empty] error:kFErrorWriteCanceled]; + // Remove outstanding writes from connection + [self.connection purgeOutstandingWrites]; +} + +- (void) addEventRegistration:(id )eventRegistration forQuery:(FQuerySpec *)query { + NSArray *events = nil; + if ([[query.path getFront] isEqualToString:kDotInfoPrefix]) { + events = [self.infoSyncTree addEventRegistration:eventRegistration forQuery:query]; + } else { + events = [self.serverSyncTree addEventRegistration:eventRegistration forQuery:query]; + } + [self.eventRaiser raiseEvents:events]; +} + +- (void) removeEventRegistration:(id)eventRegistration forQuery:(FQuerySpec *)query { + // These are guaranteed not to raise events, since we're not passing in a cancelError. However we can future-proof + // a little bit by handling the return values anyways. + FFLog(@"I-RDB038011", @"Removing event registration with hande: %lu", (unsigned long)eventRegistration.handle); + NSArray *events = nil; + if ([[query.path getFront] isEqualToString:kDotInfoPrefix]) { + events = [self.infoSyncTree removeEventRegistration:eventRegistration forQuery:query cancelError:nil]; + } else { + events = [self.serverSyncTree removeEventRegistration:eventRegistration forQuery:query cancelError:nil]; + } + [self.eventRaiser raiseEvents:events]; +} + +- (void) keepQuery:(FQuerySpec *)query synced:(BOOL)synced { + NSAssert(![[query.path getFront] isEqualToString:kDotInfoPrefix], @"Can't keep .info tree synced!"); + [self.serverSyncTree keepQuery:query synced:synced]; +} + +- (void) updateInfo:(NSString *) pathString withValue:(id)value { + // hack to make serverTimeOffset available in a threadsafe way. Property is marked as atomic + if ([pathString isEqualToString:kDotInfoServerTimeOffset]) { + NSTimeInterval offset = [(NSNumber *)value doubleValue]/1000.0; + self.serverClock = [[FOffsetClock alloc] initWithClock:[FSystemClock clock] offset:offset]; + } + + FPath* path = [[FPath alloc] initWith:[NSString stringWithFormat:@"%@/%@", kDotInfoPrefix, pathString]]; + id newNode = [FSnapshotUtilities nodeFrom:value]; + [self.infoData updateSnapshot:path withNewSnapshot:newNode]; + NSArray *events = [self.infoSyncTree applyServerOverwriteAtPath:path newData:newNode]; + [self.eventRaiser raiseEvents:events]; +} + +- (void) callOnComplete:(fbt_void_nserror_ref)onComplete withStatus:(NSString *)status errorReason:(NSString *)errorReason andPath:(FPath *)path { + if (onComplete) { + FIRDatabaseReference * ref = [[FIRDatabaseReference alloc] initWithRepo:self path:path]; + BOOL statusOk = [status isEqualToString:kFWPResponseForActionStatusOk]; + NSError* err = nil; + if (!statusOk) { + err = [FUtilities errorForStatus:status andReason:errorReason]; + } + [self.eventRaiser raiseCallback:^{ + onComplete(err, ref); + }]; + } +} + +- (void)ackWrite:(NSInteger)writeId rerunTransactionsAtPath:(FPath *)path status:(NSString *)status { + if ([status isEqualToString:kFErrorWriteCanceled]) { + // This write was already removed, we just need to ignore it... + } else { + BOOL success = [status isEqualToString:kFWPResponseForActionStatusOk]; + NSArray *clearEvents = [self.serverSyncTree ackUserWriteWithWriteId:writeId revert:!success persist:YES clock:self.serverClock]; + if ([clearEvents count] > 0) { + [self rerunTransactionsForPath:path]; + } + [self.eventRaiser raiseEvents:clearEvents]; + } +} + +- (void) warnIfWriteFailedAtPath:(FPath *)path status:(NSString *)status message:(NSString *)message { + if (!([status isEqualToString:kFWPResponseForActionStatusOk] || [status isEqualToString:kFErrorWriteCanceled])) { + FFWarn(@"I-RDB038012", @"%@ at %@ failed: %@", message, path, status); + } +} + +#pragma mark - +#pragma mark FPersistentConnectionDelegate methods + +- (void) onDataUpdate:(FPersistentConnection *)fpconnection forPath:(NSString *)pathString message:(id)data isMerge:(BOOL)isMerge tagId:(NSNumber *)tagId { + FFLog(@"I-RDB038013", @"onDataUpdateForPath: %@ withMessage: %@", pathString, data); + + // For testing. + self.dataUpdateCount++; + + FPath* path = [[FPath alloc] initWith:pathString]; + data = self.interceptServerDataCallback ? self.interceptServerDataCallback(pathString, data) : data; + NSArray *events = nil; + + if (tagId != nil) { + if (isMerge) { + NSDictionary *message = data; + FCompoundWrite *taggedChildren = [FCompoundWrite compoundWriteWithValueDictionary:message]; + events = [self.serverSyncTree applyTaggedQueryMergeAtPath:path changedChildren:taggedChildren tagId:tagId]; + } else { + id taggedSnap = [FSnapshotUtilities nodeFrom:data]; + events = [self.serverSyncTree applyTaggedQueryOverwriteAtPath:path newData:taggedSnap tagId:tagId]; + } + } else if (isMerge) { + NSDictionary *message = data; + FCompoundWrite *changedChildren = [FCompoundWrite compoundWriteWithValueDictionary:message]; + events = [self.serverSyncTree applyServerMergeAtPath:path changedChildren:changedChildren]; + } else { + id snap = [FSnapshotUtilities nodeFrom:data]; + events = [self.serverSyncTree applyServerOverwriteAtPath:path newData:snap]; + } + + if ([events count] > 0) { + // Since we have a listener outstanding for each transaction, receiving any events + // is a proxy for some change having occurred. + [self rerunTransactionsForPath:path]; + } + + [self.eventRaiser raiseEvents:events]; +} + +- (void)onRangeMerge:(NSArray *)ranges forPath:(NSString *)pathString tagId:(NSNumber *)tag { + FFLog(@"I-RDB038014", @"onRangeMerge: %@ => %@", pathString, ranges); + + // For testing + self.rangeMergeUpdateCount++; + + FPath* path = [[FPath alloc] initWith:pathString]; + NSArray *events; + if (tag != nil) { + events = [self.serverSyncTree applyTaggedServerRangeMergeAtPath:path updates:ranges tagId:tag]; + } else { + events = [self.serverSyncTree applyServerRangeMergeAtPath:path updates:ranges]; + } + if (events.count > 0) { + // Since we have a listener outstanding for each transaction, receiving any events + // is a proxy for some change having occurred. + [self rerunTransactionsForPath:path]; + } + + [self.eventRaiser raiseEvents:events]; +} + +- (void)onConnect:(FPersistentConnection *)fpconnection { + [self updateInfo:kDotInfoConnected withValue:@YES]; +} + +- (void)onDisconnect:(FPersistentConnection *)fpconnection { + [self updateInfo:kDotInfoConnected withValue:@NO]; + [self runOnDisconnectEvents]; +} + +- (void)onServerInfoUpdate:(FPersistentConnection *)fpconnection updates:(NSDictionary *)updates { + for (NSString* key in updates) { + id val = [updates objectForKey:key]; + [self updateInfo:key withValue:val]; + } +} + +- (void) setupNotifications { + NSString * const *backgroundConstant = (NSString * const *) dlsym(RTLD_DEFAULT, "UIApplicationDidEnterBackgroundNotification"); + if (backgroundConstant) { + FFLog(@"I-RDB038015", @"Registering for background notification."); + [[NSNotificationCenter defaultCenter] addObserver:self + selector:@selector(didEnterBackground) + name:*backgroundConstant + object:nil]; + } else { + FFLog(@"I-RDB038016", @"Skipped registering for background notification."); + } +} + +- (void) didEnterBackground { + if (!self.config.persistenceEnabled) + return; + + // Targetted compilation is ONLY for testing. UIKit is weak-linked in actual release build. + #if TARGET_OS_IOS || TARGET_OS_TV + // The idea is to wait until any outstanding sets get written to disk. Since the sets might still be in our + // dispatch queue, we wait for the dispatch queue to catch up and for persistence to catch up. + // This may be undesirable though. The dispatch queue might just be processing a bunch of incoming data or + // something. We might want to keep track of whether there are any unpersisted sets or something. + FFLog(@"I-RDB038017", @"Entering background. Starting background task to finish work."); + Class uiApplicationClass = NSClassFromString(@"UIApplication"); + assert(uiApplicationClass); // If we are here, we should be on iOS and UIApplication should be available. + + UIApplication *application = [uiApplicationClass sharedApplication]; + __block UIBackgroundTaskIdentifier bgTask = [application beginBackgroundTaskWithExpirationHandler:^{ + [application endBackgroundTask:bgTask]; + }]; + + NSDate *start = [NSDate date]; + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + NSTimeInterval finishTime = [start timeIntervalSinceNow]*-1; + FFLog(@"I-RDB038018", @"Background task completed. Queue time: %f", finishTime); + [application endBackgroundTask:bgTask]; + }); + #endif +} + +#pragma mark - +#pragma mark Internal methods + +/** +* Applies all the changes stored up in the onDisconnect tree +*/ +- (void) runOnDisconnectEvents { + FFLog(@"I-RDB038019", @"Running onDisconnectEvents"); + NSDictionary* serverValues = [FServerValues generateServerValues:self.serverClock]; + FSparseSnapshotTree* resolvedTree = [FServerValues resolveDeferredValueTree:self.onDisconnect withServerValues:serverValues]; + NSMutableArray *events = [[NSMutableArray alloc] init]; + + [resolvedTree forEachTreeAtPath:[FPath empty] do:^(FPath *path, id node) { + [events addObjectsFromArray:[self.serverSyncTree applyServerOverwriteAtPath:path newData:node]]; + FPath* affectedPath = [self abortTransactionsAtPath:path error:kFTransactionSet]; + [self rerunTransactionsForPath:affectedPath]; + }]; + + self.onDisconnect = [[FSparseSnapshotTree alloc] init]; + [self.eventRaiser raiseEvents:events]; +} + +- (NSDictionary *) dumpListens { + return [self.connection dumpListens]; +} + +#pragma mark - +#pragma mark Transactions + +/** + * Setup the transaction data structures + */ +- (void) initTransactions { + self.transactionQueueTree = [[FTree alloc] init]; + self.hijackHash = NO; + self.loggedTransactionPersistenceWarning = NO; +} + +/** + * Creates a new transaction, add its to the transactions we're tracking, and sends it to the server if possible + */ +- (void) startTransactionOnPath:(FPath *)path update:(fbt_transactionresult_mutabledata)update onComplete:(fbt_void_nserror_bool_datasnapshot)onComplete withLocalEvents:(BOOL)applyLocally { + if (self.config.persistenceEnabled && !self.loggedTransactionPersistenceWarning) { + self.loggedTransactionPersistenceWarning = YES; + FFInfo(@"I-RDB038020", @"runTransactionBlock: usage detected while persistence is enabled. Please be aware that transactions " + @"*will not* be persisted across app restarts. " + @"See https://www.firebase.com/docs/ios/guide/offline-capabilities.html#section-handling-transactions-offline for more details."); + } + + FIRDatabaseReference * watchRef = [[FIRDatabaseReference alloc] initWithRepo:self path:path]; + // make sure we're listening on this node + // Note: we can't do this asynchronously. To preserve event ordering, it has to be done in this block. + // This is ok, this block is guaranteed to be our own event loop + NSUInteger handle = [[FUtilities LUIDGenerator] integerValue]; + fbt_void_datasnapshot cb = ^(FIRDataSnapshot *snapshot) {}; + FValueEventRegistration *registration = [[FValueEventRegistration alloc] initWithRepo:self + handle:handle + callback:cb + cancelCallback:nil]; + [watchRef.repo addEventRegistration:registration forQuery:watchRef.querySpec]; + fbt_void_void unwatcher = ^{ [watchRef removeObserverWithHandle:handle]; }; + + // Save all the data that represents this transaction + FTupleTransaction* transaction = [[FTupleTransaction alloc] init]; + transaction.path = path; + transaction.update = update; + transaction.onComplete = onComplete; + transaction.status = FTransactionInitializing; + transaction.order = [FUtilities LUIDGenerator]; + transaction.applyLocally = applyLocally; + transaction.retryCount = 0; + transaction.unwatcher = unwatcher; + transaction.currentWriteId = nil; + transaction.currentInputSnapshot = nil; + transaction.currentOutputSnapshotRaw = nil; + transaction.currentOutputSnapshotResolved = nil; + + // Run transaction initially + id currentState = [self latestStateAtPath:path excludeWriteIds:nil]; + transaction.currentInputSnapshot = currentState; + FIRMutableData * mutableCurrent = [[FIRMutableData alloc] initWithNode:currentState]; + FIRTransactionResult * result = transaction.update(mutableCurrent); + + if (!result.isSuccess) { + // Abort the transaction + transaction.unwatcher(); + transaction.currentOutputSnapshotRaw = nil; + transaction.currentOutputSnapshotResolved = nil; + if (transaction.onComplete) { + FIRDatabaseReference *ref = [[FIRDatabaseReference alloc] initWithRepo:self path:transaction.path]; + FIndexedNode *indexedNode = [FIndexedNode indexedNodeWithNode:transaction.currentInputSnapshot]; + FIRDataSnapshot *snap = [[FIRDataSnapshot alloc] initWithRef:ref indexedNode:indexedNode]; + [self.eventRaiser raiseCallback:^{ + transaction.onComplete(nil, NO, snap); + }]; + } + } else { + // Note: different from js. We don't need to validate, FIRMutableData does validation. + // We also don't have to worry about priorities. Just mark as run and add to queue. + transaction.status = FTransactionRun; + FTree* queueNode = [self.transactionQueueTree subTree:transaction.path]; + NSMutableArray* nodeQueue = [queueNode getValue]; + if (nodeQueue == nil) { + nodeQueue = [[NSMutableArray alloc] init]; + } + [nodeQueue addObject:transaction]; + [queueNode setValue:nodeQueue]; + + // Update visibleData and raise events + // Note: We intentionally raise events after updating all of our transaction state, since the user could + // start new transactions from the event callbacks + NSDictionary* serverValues = [FServerValues generateServerValues:self.serverClock]; + id newValUnresolved = [result.update nodeValue]; + id newVal = [FServerValues resolveDeferredValueSnapshot:newValUnresolved withServerValues:serverValues]; + transaction.currentOutputSnapshotRaw = newValUnresolved; + transaction.currentOutputSnapshotResolved = newVal; + transaction.currentWriteId = [NSNumber numberWithInteger:[self nextWriteId]]; + + NSArray *events = [self.serverSyncTree applyUserOverwriteAtPath:path newData:newVal + writeId:[transaction.currentWriteId integerValue] + isVisible:transaction.applyLocally]; + [self.eventRaiser raiseEvents:events]; + + [self sendAllReadyTransactions]; + } +} + +/** + * @param writeIdsToExclude A specific set to exclude + */ +- (id) latestStateAtPath:(FPath *)path excludeWriteIds:(NSArray *)writeIdsToExclude { + id latestState = [self.serverSyncTree calcCompleteEventCacheAtPath:path excludeWriteIds:writeIdsToExclude]; + return latestState ? latestState : [FEmptyNode emptyNode]; +} + +/** + * Sends any already-run transactions that aren't waiting for outstanding transactions to complete. + * + * Externally, call the version with no arguments. + * Internally, calls itself recursively with a particular transactionQueueTree node to recurse through the tree + */ +- (void) sendAllReadyTransactions { + FTree* node = self.transactionQueueTree; + + [self pruneCompletedTransactionsBelowNode:node]; + [self sendReadyTransactionsForTree:node]; +} + +- (void) sendReadyTransactionsForTree:(FTree *)node { + NSMutableArray* queue = [node getValue]; + if (queue != nil) { + queue = [self buildTransactionQueueAtNode:node]; + NSAssert([queue count] > 0, @"Sending zero length transaction queue"); + + NSUInteger notRunIndex = [queue indexOfObjectPassingTest:^BOOL(id obj, NSUInteger idx, BOOL *stop) { + return ((FTupleTransaction*)obj).status != FTransactionRun; + }]; + + // If they're all run (and not sent), we can send them. Else, we must wait. + if (notRunIndex == NSNotFound) { + [self sendTransactionQueue:queue atPath:node.path]; + } + } else if ([node hasChildren]) { + [node forEachChild:^(FTree *child) { + [self sendReadyTransactionsForTree:child]; + }]; + } +} + +/** + * Given a list of run transactions, send them to the server and then handle the result (success or failure). + */ +- (void) sendTransactionQueue:(NSMutableArray *)queue atPath:(FPath *)path { + // Mark transactions as sent and bump the retry count + NSMutableArray *writeIdsToExclude = [[NSMutableArray alloc] init]; + for (FTupleTransaction *transaction in queue) { + [writeIdsToExclude addObject:transaction.currentWriteId]; + } + id latestState = [self latestStateAtPath:path excludeWriteIds:writeIdsToExclude]; + id snapToSend = latestState; + NSString *latestHash = [latestState dataHash]; + for (FTupleTransaction* transaction in queue) { + NSAssert(transaction.status == FTransactionRun, @"[FRepo sendTransactionQueue:] items in queue should all be run."); + FFLog(@"I-RDB038021", @"Transaction at %@ set to SENT", transaction.path); + transaction.status = FTransactionSent; + transaction.retryCount++; + FPath *relativePath = [FPath relativePathFrom:path to:transaction.path]; + // If we've gotten to this point, the output snapshot must be defined. + snapToSend = [snapToSend updateChild:relativePath withNewChild:transaction.currentOutputSnapshotRaw]; + } + + id dataToSend = [snapToSend valForExport:YES]; + NSString *pathToSend = [path description]; + latestHash = self.hijackHash ? @"badhash" : latestHash; + + // Send the put + [self.connection putData:dataToSend forPath:pathToSend withHash:latestHash withCallback:^(NSString *status, NSString *errorReason) { + FFLog(@"I-RDB038022", @"Transaction put response: %@ : %@", pathToSend, status); + + NSMutableArray *events = [[NSMutableArray alloc] init]; + if ([status isEqualToString:kFWPResponseForActionStatusOk]) { + // Queue up the callbacks and fire them after cleaning up all of our transaction state, since + // the callback could trigger more transactions or sets. + NSMutableArray *callbacks = [[NSMutableArray alloc] init]; + for (FTupleTransaction *transaction in queue) { + transaction.status = FTransactionCompleted; + [events addObjectsFromArray:[self.serverSyncTree ackUserWriteWithWriteId:[transaction.currentWriteId integerValue] + revert:NO + persist:NO + clock:self.serverClock]]; + if (transaction.onComplete) { + // We never unset the output snapshot, and given that this transaction is complete, it should be set + id node = transaction.currentOutputSnapshotResolved; + FIndexedNode *indexedNode = [FIndexedNode indexedNodeWithNode:node]; + FIRDatabaseReference *ref = [[FIRDatabaseReference alloc] initWithRepo:self path:transaction.path]; + FIRDataSnapshot *snapshot = [[FIRDataSnapshot alloc] initWithRef:ref indexedNode:indexedNode]; + fbt_void_void cb = ^{ + transaction.onComplete(nil, YES, snapshot); + }; + [callbacks addObject:[cb copy]]; + } + transaction.unwatcher(); + } + + // Now remove the completed transactions. + [self pruneCompletedTransactionsBelowNode:[self.transactionQueueTree subTree:path]]; + // There may be pending transactions that we can now send. + [self sendAllReadyTransactions]; + + // Finally, trigger onComplete callbacks + [self.eventRaiser raiseCallbacks:callbacks]; + } else { + // transactions are no longer sent. Update their status appropriately. + if ([status isEqualToString:kFWPResponseForActionStatusDataStale]) { + for (FTupleTransaction *transaction in queue) { + if (transaction.status == FTransactionSentNeedsAbort) { + transaction.status = FTransactionNeedsAbort; + } else { + transaction.status = FTransactionRun; + } + } + } else { + FFWarn(@"I-RDB038023", @"runTransactionBlock: at %@ failed: %@", path, status); + for (FTupleTransaction *transaction in queue) { + transaction.status = FTransactionNeedsAbort; + [transaction setAbortStatus:status reason:errorReason]; + } + } + } + + [self rerunTransactionsForPath:path]; + [self.eventRaiser raiseEvents:events]; + }]; +} + +/** + * Finds all transactions dependent on the data at changed Path and reruns them. + * + * Should be called any time cached data changes. + * + * Return the highest path that was affected by rerunning transactions. This is the path at which events need to + * be raised for. + */ +- (FPath *) rerunTransactionsForPath:(FPath *)changedPath { + // For the common case that there are no transactions going on, skip all this! + if ([self.transactionQueueTree isEmpty]) { + return changedPath; + } else { + FTree* rootMostTransactionNode = [self getAncestorTransactionNodeForPath:changedPath]; + FPath* path = rootMostTransactionNode.path; + + NSArray* queue = [self buildTransactionQueueAtNode:rootMostTransactionNode]; + [self rerunTransactionQueue:queue atPath:path]; + + return path; + } +} + +/** + * Does all the work of rerunning transactions (as well as cleans up aborted transactions and whatnot). + */ +- (void) rerunTransactionQueue:(NSArray *)queue atPath:(FPath *)path { + if (queue.count == 0) { + return; // nothing to do + } + + // Queue up the callbacks and fire them after cleaning up all of our transaction state, since + // the callback could trigger more transactions or sets. + NSMutableArray *events = [[NSMutableArray alloc] init]; + NSMutableArray *callbacks = [[NSMutableArray alloc] init]; + + // Ignore, by default, all of the sets in this queue, since we're re-running all of them. However, we want to include + // the results of new sets triggered as part of this re-run, so we don't want to ignore a range, just these specific + // sets. + NSMutableArray *writeIdsToExclude = [[NSMutableArray alloc] init]; + for (FTupleTransaction *transaction in queue) { + [writeIdsToExclude addObject:transaction.currentWriteId]; + } + + for (FTupleTransaction* transaction in queue) { + FPath* relativePath __unused = [FPath relativePathFrom:path to:transaction.path]; + BOOL abortTransaction = NO; + NSAssert(relativePath != nil, @"[FRepo rerunTransactionsQueue:] relativePath should not be null."); + + if (transaction.status == FTransactionNeedsAbort) { + abortTransaction = YES; + if (![transaction.abortStatus isEqualToString:kFErrorWriteCanceled]) { + NSArray *ackEvents = [self.serverSyncTree ackUserWriteWithWriteId:[transaction.currentWriteId integerValue] + revert:YES + persist:NO + clock:self.serverClock]; + [events addObjectsFromArray:ackEvents]; + } + } else if (transaction.status == FTransactionRun) { + if (transaction.retryCount >= kFTransactionMaxRetries) { + abortTransaction = YES; + [transaction setAbortStatus:kFTransactionTooManyRetries reason:nil]; + [events addObjectsFromArray:[self.serverSyncTree ackUserWriteWithWriteId:[transaction.currentWriteId integerValue] + revert:YES + persist:NO + clock:self.serverClock]]; + } else { + // This code reruns a transaction + id currentNode = [self latestStateAtPath:transaction.path excludeWriteIds:writeIdsToExclude]; + transaction.currentInputSnapshot = currentNode; + FIRMutableData * mutableCurrent = [[FIRMutableData alloc] initWithNode:currentNode]; + FIRTransactionResult * result = transaction.update(mutableCurrent); + if (result.isSuccess) { + NSNumber *oldWriteId = transaction.currentWriteId; + NSDictionary* serverValues = [FServerValues generateServerValues:self.serverClock]; + + id newVal = [result.update nodeValue]; + id newValResolved = [FServerValues resolveDeferredValueSnapshot:newVal withServerValues:serverValues]; + + transaction.currentOutputSnapshotRaw = newVal; + transaction.currentOutputSnapshotResolved = newValResolved; + + transaction.currentWriteId = [NSNumber numberWithInteger:[self nextWriteId]]; + // Mutates writeIdsToExclude in place + [writeIdsToExclude removeObject:oldWriteId]; + [events addObjectsFromArray:[self.serverSyncTree applyUserOverwriteAtPath:transaction.path + newData:transaction.currentOutputSnapshotResolved + writeId:[transaction.currentWriteId integerValue] + isVisible:transaction.applyLocally]]; + [events addObjectsFromArray:[self.serverSyncTree ackUserWriteWithWriteId:[oldWriteId integerValue] + revert:YES + persist:NO + clock:self.serverClock]]; + } else { + abortTransaction = YES; + // The user aborted the transaction. JS treats ths as a "nodata" abort, but it's not an error, so we don't send them an error. + [transaction setAbortStatus:nil reason:nil]; + [events addObjectsFromArray:[self.serverSyncTree ackUserWriteWithWriteId:[transaction.currentWriteId integerValue] + revert:YES + persist:NO + clock:self.serverClock]]; + } + } + } + + [self.eventRaiser raiseEvents:events]; + events = nil; + + if (abortTransaction) { + // Abort + transaction.status = FTransactionCompleted; + transaction.unwatcher(); + if (transaction.onComplete) { + FIRDatabaseReference * ref = [[FIRDatabaseReference alloc] initWithRepo:self path:transaction.path]; + FIndexedNode *lastInput = [FIndexedNode indexedNodeWithNode:transaction.currentInputSnapshot]; + FIRDataSnapshot * snap = [[FIRDataSnapshot alloc] initWithRef:ref indexedNode:lastInput]; + fbt_void_void cb = ^{ + // Unlike JS, no need to check for "nodata" because ObjC has abortError = nil + transaction.onComplete(transaction.abortError, NO, snap); + }; + [callbacks addObject:[cb copy]]; + } + } + } + + // Note: unlike current js client, we don't need to preserve priority. Users can set priority via FIRMutableData + + // Clean up completed transactions. + [self pruneCompletedTransactionsBelowNode:self.transactionQueueTree]; + + // Now fire callbacks, now that we're in a good, known state. + [self.eventRaiser raiseCallbacks:callbacks]; + + // Try to send the transaction result to the server + [self sendAllReadyTransactions]; +} + +- (FTree *) getAncestorTransactionNodeForPath:(FPath *)path { + FTree* transactionNode = self.transactionQueueTree; + + while (![path isEmpty] && [transactionNode getValue] == nil) { + NSString* front = [path getFront]; + transactionNode = [transactionNode subTree:[[FPath alloc] initWith:front]]; + path = [path popFront]; + } + + return transactionNode; +} + +- (NSMutableArray *) buildTransactionQueueAtNode:(FTree *)node { + NSMutableArray* queue = [[NSMutableArray alloc] init]; + [self aggregateTransactionQueuesForNode:node andQueue:queue]; + + [queue sortUsingComparator:^NSComparisonResult(FTupleTransaction* obj1, FTupleTransaction* obj2) { + return [obj1.order compare:obj2.order]; + }]; + + return queue; +} + +- (void) aggregateTransactionQueuesForNode:(FTree *)node andQueue:(NSMutableArray *)queue { + NSArray* nodeQueue = [node getValue]; + [queue addObjectsFromArray:nodeQueue]; + + [node forEachChild:^(FTree *child) { + [self aggregateTransactionQueuesForNode:child andQueue:queue]; + }]; +} + +/** + * Remove COMPLETED transactions at or below this node in the transactionQueueTree + */ +- (void) pruneCompletedTransactionsBelowNode:(FTree *)node { + NSMutableArray* queue = [node getValue]; + if (queue != nil) { + int i = 0; + // remove all of the completed transactions from the queue + while (i < queue.count) { + FTupleTransaction* transaction = [queue objectAtIndex:i]; + if (transaction.status == FTransactionCompleted) { + [queue removeObjectAtIndex:i]; + } else { + i++; + } + } + if (queue.count > 0) { + [node setValue:queue]; + } else { + [node setValue:nil]; + } + } + + [node forEachChildMutationSafe:^(FTree *child) { + [self pruneCompletedTransactionsBelowNode:child]; + }]; +} + +/** + * Aborts all transactions on ancestors or descendants of the specified path. Called when doing a setValue: or + * updateChildValues: since we consider them incompatible with transactions + * + * @param path path for which we want to abort related transactions. + */ +- (FPath *) abortTransactionsAtPath:(FPath *)path error:(NSString *)error { + // For the common case that there are no transactions going on, skip all this! + if ([self.transactionQueueTree isEmpty]) { + return path; + } else { + FPath* affectedPath = [self getAncestorTransactionNodeForPath:path].path; + + FTree* transactionNode = [self.transactionQueueTree subTree:path]; + [transactionNode forEachAncestor:^BOOL(FTree *ancestor) { + [self abortTransactionsAtNode:ancestor error:error]; + return NO; + }]; + + [self abortTransactionsAtNode:transactionNode error:error]; + + [transactionNode forEachDescendant:^(FTree *child) { + [self abortTransactionsAtNode:child error:error]; + }]; + + return affectedPath; + } +} + +/** + * Abort transactions stored in this transactions queue node. + * + * @param node Node to abort transactions for. + */ +- (void) abortTransactionsAtNode:(FTree *)node error:(NSString *)error { + NSMutableArray* queue = [node getValue]; + if (queue != nil) { + + // Queue up the callbacks and fire them after cleaning up all of our transaction state, since + // can be immediately aborted and removed. + NSMutableArray* callbacks = [[NSMutableArray alloc] init]; + + // Go through queue. Any already-sent transactions must be marked for abort, while the unsent ones + // can be immediately aborted and removed + NSMutableArray *events = [[NSMutableArray alloc] init]; + int lastSent = -1; + // Note: all of the sent transactions will be at the front of the queue, so safe to increment lastSent + for (FTupleTransaction* transaction in queue) { + if (transaction.status == FTransactionSentNeedsAbort) { + // No-op. already marked. + } else if (transaction.status == FTransactionSent) { + // Mark this transaction for abort when it returns + lastSent++; + transaction.status = FTransactionSentNeedsAbort; + [transaction setAbortStatus:error reason:nil]; + } else { + // we can abort this immediately + transaction.unwatcher(); + if ([error isEqualToString:kFTransactionSet]) { + [events addObjectsFromArray:[self.serverSyncTree ackUserWriteWithWriteId:[transaction.currentWriteId integerValue] + revert:YES + persist:NO + clock:self.serverClock]]; + } else { + // If it was cancelled it was already removed from the sync tree, no need to ack + NSAssert([error isEqualToString:kFErrorWriteCanceled], nil); + } + + if (transaction.onComplete) { + NSError* abortReason = [FUtilities errorForStatus:error andReason:nil]; + FIRDataSnapshot * snapshot = nil; + fbt_void_void cb = ^{ + transaction.onComplete(abortReason, NO, snapshot); + }; + [callbacks addObject:[cb copy]]; + } + } + } + if (lastSent == -1) { + // We're not waiting for any sent transactions. We can clear the queue. + [node setValue:nil]; + } else { + // Remove the transactions we aborted + NSRange theRange; + theRange.location = lastSent + 1; + theRange.length = queue.count - theRange.location; + [queue removeObjectsInRange:theRange]; + } + + // Now fire the callbacks + [self.eventRaiser raiseEvents:events]; + [self.eventRaiser raiseCallbacks:callbacks]; + } +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepoInfo.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepoInfo.h new file mode 100644 index 0000000..433bf35 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepoInfo.h @@ -0,0 +1,38 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@interface FRepoInfo : NSObject + +@property (nonatomic, readonly, strong) NSString* host; +@property (nonatomic, readonly, strong) NSString* namespace; +@property (nonatomic, strong) NSString* internalHost; +@property (nonatomic, readonly) bool secure; + +- (id) initWithHost:(NSString*)host isSecure:(bool)secure withNamespace:(NSString*)namespace; + +- (NSString *) connectionURLWithLastSessionID:(NSString*)lastSessionID; +- (NSString *) connectionURL; +- (void) clearInternalHostCache; +- (BOOL) isDemoHost; +- (BOOL) isCustomHost; + +- (id)copyWithZone:(NSZone *)zone; +- (NSUInteger)hash; +- (BOOL)isEqual:(id)anObject; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepoInfo.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepoInfo.m new file mode 100644 index 0000000..925163e --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepoInfo.m @@ -0,0 +1,134 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FRepoInfo.h" +#import "FConstants.h" + +@interface FRepoInfo () + +@property (nonatomic, strong) NSString *domain; + +@end + + +@implementation FRepoInfo + +@synthesize namespace; +@synthesize host; +@synthesize internalHost; +@synthesize secure; +@synthesize domain; + +- (id) initWithHost:(NSString*)aHost isSecure:(bool)isSecure withNamespace:(NSString*)aNamespace { + self = [super init]; + if (self) { + host = aHost; + domain = [host substringFromIndex:[host rangeOfString:@"."].location+1]; + secure = isSecure; + namespace = aNamespace; + + // Get cached internal host if it exists + NSString* internalHostKey = [NSString stringWithFormat:@"firebase:host:%@", self.host]; + NSString* cachedInternalHost = [[NSUserDefaults standardUserDefaults] stringForKey:internalHostKey]; + if (cachedInternalHost != nil) { + internalHost = cachedInternalHost; + } else { + internalHost = self.host; + } + } + return self; +} + +- (NSString *)description { + // The namespace is encoded in the hostname, so we can just return this. + return [NSString stringWithFormat:@"http%@://%@", (self.secure ? @"s" : @""), self.host]; +} + +- (void) setInternalHost:(NSString *)newHost { + if (![internalHost isEqualToString:newHost]) { + internalHost = newHost; + + // Cache the internal host so we don't need to redirect later on + NSString* internalHostKey = [NSString stringWithFormat:@"firebase:host:%@", self.host]; + NSUserDefaults* cache = [NSUserDefaults standardUserDefaults]; + [cache setObject:internalHost forKey:internalHostKey]; + [cache synchronize]; + } +} + +- (void) clearInternalHostCache { + internalHost = self.host; + + // Remove the cached entry + NSString* internalHostKey = [NSString stringWithFormat:@"firebase:host:%@", self.host]; + NSUserDefaults* cache = [NSUserDefaults standardUserDefaults]; + [cache removeObjectForKey:internalHostKey]; + [cache synchronize]; +} + +- (BOOL) isDemoHost { + return [self.domain isEqualToString:@"firebaseio-demo.com"]; +} + +- (BOOL) isCustomHost { + return ![self.domain isEqualToString:@"firebaseio-demo.com"] && ![self.domain isEqualToString:@"firebaseio.com"]; +} + + +- (NSString *) connectionURL { + return [self connectionURLWithLastSessionID:nil]; +} + +- (NSString *) connectionURLWithLastSessionID:(NSString*)lastSessionID { + NSString *scheme; + if (self.secure) { + scheme = @"wss"; + } else { + scheme = @"ws"; + } + NSString *url = [NSString stringWithFormat:@"%@://%@/.ws?%@=%@&ns=%@", + scheme, + self.internalHost, + kWireProtocolVersionParam, + kWebsocketProtocolVersion, + self.namespace]; + + if (lastSessionID != nil) { + url = [NSString stringWithFormat:@"%@&ls=%@", url, lastSessionID]; + } + return url; +} + +- (id)copyWithZone:(NSZone *)zone; { + return self; // Immutable +} + +- (NSUInteger)hash { + NSUInteger result = host.hash; + result = 31 * result + (secure ? 1 : 0); + result = 31 * result + namespace.hash; + result = 31 * result + host.hash; + return result; +} + +- (BOOL)isEqual:(id)anObject { + if (![anObject isKindOfClass:[FRepoInfo class]]) return NO; + FRepoInfo *other = (FRepoInfo *)anObject; + return secure == other.secure && [host isEqualToString:other.host] && + [namespace isEqualToString:other.namespace]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepoManager.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepoManager.h new file mode 100644 index 0000000..c492861 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepoManager.h @@ -0,0 +1,32 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FRepoInfo.h" +#import "FRepo.h" +#import "FIRDatabaseConfig.h" + +@interface FRepoManager : NSObject + ++ (FRepo *) getRepo:(FRepoInfo *)repoInfo config:(FIRDatabaseConfig *)config; ++ (FRepo *) createRepo:(FRepoInfo *)repoInfo config:(FIRDatabaseConfig *)config database:(FIRDatabase *)database; ++ (void) interruptAll; ++ (void) interrupt:(FIRDatabaseConfig *)config; ++ (void) resumeAll; ++ (void) resume:(FIRDatabaseConfig *)config; ++ (void) disposeRepos:(FIRDatabaseConfig *)config; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepoManager.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepoManager.m new file mode 100644 index 0000000..31c3efc --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepoManager.m @@ -0,0 +1,135 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FRepoManager.h" +#import "FRepo.h" +#import "FIRDatabaseQuery_Private.h" +#import "FAtomicNumber.h" +#import "FIRDatabaseConfig_Private.h" +#import "FIRDatabase_Private.h" + +@implementation FRepoManager + +typedef NSMutableDictionary *> + FRepoDictionary; + ++ (FRepoDictionary *)configs { + static dispatch_once_t pred = 0; + static FRepoDictionary *configs; + dispatch_once(&pred, ^{ + configs = [NSMutableDictionary dictionary]; + }); + return configs; +} + +/** + * Used for legacy unit tests. The public API should go through FirebaseDatabase which + * calls createRepo. + */ ++ (FRepo *) getRepo:(FRepoInfo *)repoInfo config:(FIRDatabaseConfig *)config { + [config freeze]; + FRepoDictionary *configs = [FRepoManager configs]; + @synchronized(configs) { + NSMutableDictionary *repos = configs[config.sessionIdentifier]; + if (!repos || repos[repoInfo] == nil) { + // Calling this should create the repo. + [FIRDatabase createDatabaseForTests:repoInfo config:config]; + } + + return configs[config.sessionIdentifier][repoInfo]; + } +} + ++ (FRepo *) createRepo:(FRepoInfo *)repoInfo config:(FIRDatabaseConfig *)config database:(FIRDatabase *)database { + [config freeze]; + FRepoDictionary *configs = [FRepoManager configs]; + @synchronized(configs) { + NSMutableDictionary *repos = + configs[config.sessionIdentifier]; + if (!repos) { + repos = [NSMutableDictionary dictionary]; + configs[config.sessionIdentifier] = repos; + } + FRepo *repo = repos[repoInfo]; + if (repo == nil) { + repo = [[FRepo alloc] initWithRepoInfo:repoInfo config:config database:database]; + repos[repoInfo] = repo; + return repo; + } else { + [NSException raise:@"RepoExists" format:@"createRepo called for Repo that already exists."]; + return nil; + } + } +} + ++ (void) interrupt:(FIRDatabaseConfig *)config { + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + FRepoDictionary *configs = [FRepoManager configs]; + NSMutableDictionary *repos = configs[config.sessionIdentifier]; + for (FRepo *repo in [repos allValues]) { + [repo interrupt]; + } + }); +} + ++ (void) interruptAll { + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + FRepoDictionary *configs = [FRepoManager configs]; + for (NSMutableDictionary *repos in [configs allValues]) { + for (FRepo *repo in [repos allValues]) { + [repo interrupt]; + } + } + }); +} + ++ (void) resume:(FIRDatabaseConfig *)config { + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + FRepoDictionary *configs = [FRepoManager configs]; + NSMutableDictionary *repos = configs[config.sessionIdentifier]; + for (FRepo *repo in [repos allValues]) { + [repo resume]; + } + }); +} + ++ (void) resumeAll { + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + FRepoDictionary *configs = [FRepoManager configs]; + for (NSMutableDictionary *repos in [configs allValues]) { + for (FRepo *repo in [repos allValues]) { + [repo resume]; + } + } + }); +} + ++ (void)disposeRepos:(FIRDatabaseConfig *)config { + // Do this synchronously to make sure we release our references to LevelDB before returning, allowing LevelDB + // to close and release its exclusive locks. + dispatch_sync([FIRDatabaseQuery sharedQueue], ^{ + FFLog(@"I-RDB040001", @"Disposing all repos for Config with name %@", config.sessionIdentifier); + NSMutableDictionary *configs = [FRepoManager configs]; + for (FRepo* repo in [configs[config.sessionIdentifier] allValues]) { + [repo dispose]; + } + [configs removeObjectForKey:config.sessionIdentifier]; + }); +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepo_Private.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepo_Private.h new file mode 100644 index 0000000..109edac --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FRepo_Private.h @@ -0,0 +1,42 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FRepo.h" +#import "FSparseSnapshotTree.h" + +@class FSyncTree; +@class FAtomicNumber; +@class FEventRaiser; +@class FSnapshotHolder; + +@interface FRepo () + +- (void) runOnDisconnectEvents; + +@property (nonatomic, strong) FRepoInfo* repoInfo; +@property (nonatomic, strong) FPersistentConnection* connection; +@property (nonatomic, strong) FSnapshotHolder* infoData; +@property (nonatomic, strong) FSparseSnapshotTree* onDisconnect; +@property (nonatomic, strong) FEventRaiser *eventRaiser; +@property (nonatomic, strong) FSyncTree *serverSyncTree; + +// For testing. +@property (nonatomic) long dataUpdateCount; +@property (nonatomic) long rangeMergeUpdateCount; + +- (NSInteger)nextWriteId; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FServerValues.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FServerValues.h new file mode 100644 index 0000000..2540c12 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FServerValues.h @@ -0,0 +1,30 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FSparseSnapshotTree.h" +#import "FNode.h" +#import "FCompoundWrite.h" +#import "FClock.h" + +@interface FServerValues : NSObject + ++ (NSDictionary*) generateServerValues:(id)clock; ++ (id) resolveDeferredValueCompoundWrite:(FCompoundWrite*)write withServerValues:(NSDictionary*)serverValues; ++ (id) resolveDeferredValueSnapshot:(id)node withServerValues:(NSDictionary*)serverValues; ++ (id) resolveDeferredValueTree:(FSparseSnapshotTree*)tree withServerValues:(NSDictionary*)serverValues; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FServerValues.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FServerValues.m new file mode 100644 index 0000000..89ee5d0 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FServerValues.m @@ -0,0 +1,93 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FServerValues.h" +#import "FConstants.h" +#import "FLeafNode.h" +#import "FChildrenNode.h" +#import "FSnapshotUtilities.h" + +@implementation FServerValues + ++ (NSDictionary*) generateServerValues:(id)clock { + long long millis = (long long)([clock currentTime] * 1000); + return @{ @"timestamp": [NSNumber numberWithLongLong:millis] }; +} + ++ (id) resolveDeferredValue:(id)val withServerValues:(NSDictionary*)serverValues { + if ([val isKindOfClass:[NSDictionary class]]) { + NSDictionary* dict = val; + if (dict[kServerValueSubKey] != nil) { + NSString* serverValueType = [dict objectForKey:kServerValueSubKey]; + if (serverValues[serverValueType] != nil) { + return [serverValues objectForKey:serverValueType]; + } else { + // TODO: Throw unrecognizedServerValue error here + } + } + } + return val; +} + ++ (FCompoundWrite *) resolveDeferredValueCompoundWrite:(FCompoundWrite *)write withServerValues:(NSDictionary *)serverValues { + __block FCompoundWrite *resolved = write; + [write enumerateWrites:^(FPath *path, id node, BOOL *stop) { + id resolvedNode = [FServerValues resolveDeferredValueSnapshot:node withServerValues:serverValues]; + // Node actually changed, use pointer inequality here + if (resolvedNode != node) { + resolved = [resolved addWrite:resolvedNode atPath:path]; + } + }]; + return resolved; +} + ++ (id) resolveDeferredValueTree:(FSparseSnapshotTree*)tree withServerValues:(NSDictionary*)serverValues { + FSparseSnapshotTree* resolvedTree = [[FSparseSnapshotTree alloc] init]; + [tree forEachTreeAtPath:[FPath empty] do:^(FPath* path, id node) { + [resolvedTree rememberData:[FServerValues resolveDeferredValueSnapshot:node withServerValues:serverValues] onPath:path]; + }]; + return resolvedTree; +} + ++ (id) resolveDeferredValueSnapshot:(id)node withServerValues:(NSDictionary*)serverValues { + id priorityVal = [FServerValues resolveDeferredValue:[[node getPriority] val] withServerValues:serverValues]; + id priority = [FSnapshotUtilities nodeFrom:priorityVal]; + + if ([node isLeafNode]) { + id value = [self resolveDeferredValue:[node val] withServerValues:serverValues]; + if (![value isEqual:[node val]] || ![priority isEqual:[node getPriority]]) { + return [[FLeafNode alloc] initWithValue:value withPriority:priority]; + } else { + return node; + } + } else { + __block FChildrenNode* newNode = node; + if (![priority isEqual:[node getPriority]]) { + newNode = [newNode updatePriority:priority]; + } + + [node enumerateChildrenUsingBlock:^(NSString *childKey, id childNode, BOOL *stop) { + id newChildNode = [FServerValues resolveDeferredValueSnapshot:childNode withServerValues:serverValues]; + if (![newChildNode isEqual:childNode]) { + newNode = [newNode updateImmediateChild:childKey withNewChild:newChildNode]; + } + }]; + return newNode; + } +} + +@end + diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSnapshotHolder.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSnapshotHolder.h new file mode 100644 index 0000000..9a1d871 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSnapshotHolder.h @@ -0,0 +1,27 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FNode.h" + +@interface FSnapshotHolder : NSObject + +- (id) getNode:(FPath *)path; +- (void) updateSnapshot:(FPath *)path withNewSnapshot:(id)newSnapshotNode; + +@property (nonatomic, strong) id rootNode; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSnapshotHolder.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSnapshotHolder.m new file mode 100644 index 0000000..25c4625 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSnapshotHolder.m @@ -0,0 +1,46 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FSnapshotHolder.h" +#import "FEmptyNode.h" + +@interface FSnapshotHolder() + + +@end + +@implementation FSnapshotHolder + +@synthesize rootNode; + +- (id)init +{ + self = [super init]; + if (self) { + self.rootNode = [FEmptyNode emptyNode]; + } + return self; +} + +- (id) getNode:(FPath *)path { + return [self.rootNode getChild:path]; +} + +- (void) updateSnapshot:(FPath *)path withNewSnapshot:(id)newSnapshotNode { + self.rootNode = [self.rootNode updateChild:path withNewChild:newSnapshotNode]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSparseSnapshotTree.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSparseSnapshotTree.h new file mode 100644 index 0000000..b860c9d --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSparseSnapshotTree.h @@ -0,0 +1,34 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FNode.h" +#import "FPath.h" +#import "FTypedefs_Private.h" + +@class FSparseSnapshotTree; + +typedef void (^fbt_void_nsstring_sstree) (NSString*, FSparseSnapshotTree*); + +@interface FSparseSnapshotTree : NSObject + +- (id) findPath:(FPath *)path; +- (void) rememberData:(id)data onPath:(FPath *)path; +- (BOOL) forgetPath:(FPath *)path; +- (void) forEachTreeAtPath:(FPath *)prefixPath do:(fbt_void_path_node)func; +- (void) forEachChild:(fbt_void_nsstring_sstree)func; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSparseSnapshotTree.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSparseSnapshotTree.m new file mode 100644 index 0000000..1f16888 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSparseSnapshotTree.m @@ -0,0 +1,144 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FSparseSnapshotTree.h" +#import "FChildrenNode.h" + +@interface FSparseSnapshotTree () { + id value; + NSMutableDictionary* children; +} + +@end + +@implementation FSparseSnapshotTree + +- (id) init { + self = [super init]; + if (self) { + value = nil; + children = nil; + } + return self; +} + +- (id) findPath:(FPath *)path { + if (value != nil) { + return [value getChild:path]; + } else if (![path isEmpty] && children != nil) { + NSString* childKey = [path getFront]; + path = [path popFront]; + FSparseSnapshotTree* childTree = children[childKey]; + if (childTree != nil) { + return [childTree findPath:path]; + } else { + return nil; + } + } else { + return nil; + } +} + +- (void) rememberData:(id)data onPath:(FPath *)path { + if ([path isEmpty]) { + value = data; + children = nil; + } else if (value != nil) { + value = [value updateChild:path withNewChild:data]; + } else { + if (children == nil) { + children = [[NSMutableDictionary alloc] init]; + } + + NSString* childKey = [path getFront]; + if (children[childKey] == nil) { + children[childKey] = [[FSparseSnapshotTree alloc] init]; + } + + FSparseSnapshotTree* child = children[childKey]; + path = [path popFront]; + [child rememberData:data onPath:path]; + } +} + +- (BOOL) forgetPath:(FPath *)path { + if ([path isEmpty]) { + value = nil; + children = nil; + return YES; + } else { + if (value != nil) { + if ([value isLeafNode]) { + // non-empty path at leaf. the path leads to nowhere + return NO; + } else { + id tmp = value; + value = nil; + + [tmp enumerateChildrenUsingBlock:^(NSString *key, id node, BOOL *stop) { + [self rememberData:node onPath:[[FPath alloc] initWith:key]]; + }]; + + // we've cleared out the value and set children. Call ourself again to hit the next case + return [self forgetPath:path]; + } + } else if (children != nil) { + NSString* childKey = [path getFront]; + path = [path popFront]; + + if (children[childKey] != nil) { + FSparseSnapshotTree* child = children[childKey]; + BOOL safeToRemove = [child forgetPath:path]; + if (safeToRemove) { + [children removeObjectForKey:childKey]; + } + } + + if ([children count] == 0) { + children = nil; + return YES; + } else { + return NO; + } + } else { + return YES; + } + } +} + +- (void) forEachTreeAtPath:(FPath *)prefixPath do:(fbt_void_path_node)func { + if (value != nil) { + func(prefixPath, value); + } else { + [self forEachChild:^(NSString* key, FSparseSnapshotTree* tree) { + FPath* path = [prefixPath childFromString:key]; + [tree forEachTreeAtPath:path do:func]; + }]; + } +} + + +- (void) forEachChild:(fbt_void_nsstring_sstree)func { + if (children != nil) { + for (NSString* key in children) { + FSparseSnapshotTree* tree = [children objectForKey:key]; + func(key, tree); + } + } +} + + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSyncPoint.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSyncPoint.h new file mode 100644 index 0000000..4e5a4e2 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSyncPoint.h @@ -0,0 +1,66 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@protocol FOperation; +@class FWriteTreeRef; +@protocol FNode; +@protocol FEventRegistration; +@class FQuerySpec; +@class FChildrenNode; +@class FTupleRemovedQueriesEvents; +@class FView; +@class FPath; +@class FCacheNode; +@class FPersistenceManager; + +@interface FSyncPoint : NSObject + +- (id)initWithPersistenceManager:(FPersistenceManager *)persistence; + +- (BOOL) isEmpty; + +/** +* Returns array of FEvent +*/ +- (NSArray *) applyOperation:(id)operation writesCache:(FWriteTreeRef *)writesCache serverCache:(id)optCompleteServerCache; + +/** +* Returns array of FEvent +*/ +- (NSArray *) addEventRegistration:(id )eventRegistration + forNonExistingViewForQuery:(FQuerySpec *)query + writesCache:(FWriteTreeRef *)writesCache + serverCache:(FCacheNode *)serverCache; + +- (NSArray *) addEventRegistration:(id )eventRegistration + forExistingViewForQuery:(FQuerySpec *)query; + +- (FTupleRemovedQueriesEvents *) removeEventRegistration:(id )eventRegistration + forQuery:(FQuerySpec *)query + cancelError:(NSError *)cancelError; +/** +* Returns array of FViews +*/ +- (NSArray *) queryViews; +- (id) completeServerCacheAtPath:(FPath *)path; +- (FView *) viewForQuery:(FQuerySpec *)query; +- (BOOL) viewExistsForQuery:(FQuerySpec *)query; +- (BOOL) hasCompleteView; +- (FView *) completeView; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSyncPoint.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSyncPoint.m new file mode 100644 index 0000000..cd429f1 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSyncPoint.m @@ -0,0 +1,257 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FSyncPoint.h" +#import "FOperation.h" +#import "FWriteTreeRef.h" +#import "FNode.h" +#import "FEventRegistration.h" +#import "FIRDatabaseQuery.h" +#import "FChildrenNode.h" +#import "FTupleRemovedQueriesEvents.h" +#import "FView.h" +#import "FOperationSource.h" +#import "FQuerySpec.h" +#import "FQueryParams.h" +#import "FPath.h" +#import "FEmptyNode.h" +#import "FViewCache.h" +#import "FCacheNode.h" +#import "FPersistenceManager.h" +#import "FDataEvent.h" + +/** +* SyncPoint represents a single location in a SyncTree with 1 or more event registrations, meaning we need to +* maintain 1 or more Views at this location to cache server data and raise appropriate events for server changes +* and user writes (set, transaction, update). +* +* It's responsible for: +* - Maintaining the set of 1 or more views necessary at this location (a SyncPoint with 0 views should be removed). +* - Proxying user / server operations to the views as appropriate (i.e. applyServerOverwrite, +* applyUserOverwrite, etc.) +*/ +@interface FSyncPoint () +/** +* The Views being tracked at this location in the tree, stored as a map where the key is a +* queryParams and the value is the View for that query. +* +* NOTE: This list will be quite small (usually 1, but perhaps 2 or 3; any more is an odd use case). +* +* Maps NSString -> FView +*/ +@property (nonatomic, strong) NSMutableDictionary *views; + +@property (nonatomic, strong) FPersistenceManager *persistenceManager; +@end + +@implementation FSyncPoint + +- (id) initWithPersistenceManager:(FPersistenceManager *)persistence { + self = [super init]; + if (self) { + self.persistenceManager = persistence; + self.views = [[NSMutableDictionary alloc] init]; + } + return self; +} + +- (BOOL) isEmpty { + return [self.views count] == 0; +} + +- (NSArray *) applyOperation:(id)operation + toView:(FView *)view + writesCache:(FWriteTreeRef *)writesCache + serverCache:(id)optCompleteServerCache { + FViewOperationResult *result = [view applyOperation:operation writesCache:writesCache serverCache:optCompleteServerCache]; + if (!view.query.loadsAllData) { + NSMutableSet *removed = [NSMutableSet set]; + NSMutableSet *added = [NSMutableSet set]; + [result.changes enumerateObjectsUsingBlock:^(FChange *change, NSUInteger idx, BOOL *stop) { + if (change.type == FIRDataEventTypeChildAdded) { + [added addObject:change.childKey]; + } else if (change.type == FIRDataEventTypeChildRemoved) { + [removed addObject:change.childKey]; + } + }]; + if ([removed count] > 0 || [added count] > 0) { + [self.persistenceManager updateTrackedQueryKeysWithAddedKeys:added removedKeys:removed forQuery:view.query]; + } + } + return result.events; +} + +- (NSArray *) applyOperation:(id )operation writesCache:(FWriteTreeRef *)writesCache serverCache:(id )optCompleteServerCache { + FQueryParams *queryParams = operation.source.queryParams; + if (queryParams != nil) { + FView *view = [self.views objectForKey:queryParams]; + NSAssert(view != nil, @"SyncTree gave us an op for an invalid query."); + return [self applyOperation:operation toView:view writesCache:writesCache serverCache:optCompleteServerCache]; + } else { + NSMutableArray *events = [[NSMutableArray alloc] init]; + [self.views enumerateKeysAndObjectsUsingBlock:^(FQueryParams *key, FView *view, BOOL *stop) { + NSArray *eventsForView = [self applyOperation:operation toView:view writesCache:writesCache serverCache:optCompleteServerCache]; + [events addObjectsFromArray:eventsForView]; + }]; + return events; + } +} + +/** +* Add an event callback for the specified query +* Returns Array of FEvent events to raise. +*/ +- (NSArray *) addEventRegistration:(id )eventRegistration + forNonExistingViewForQuery:(FQuerySpec *)query + writesCache:(FWriteTreeRef *)writesCache + serverCache:(FCacheNode *)serverCache { + NSAssert(self.views[query.params] == nil, @"Found view for query: %@", query.params); + // TODO: make writesCache take flag for complete server node + id eventCache = [writesCache calculateCompleteEventCacheWithCompleteServerCache:serverCache.isFullyInitialized ? serverCache.node : nil]; + BOOL eventCacheComplete; + if (eventCache != nil) { + eventCacheComplete = YES; + } else { + eventCache = [writesCache calculateCompleteEventChildrenWithCompleteServerChildren:serverCache.node]; + eventCacheComplete = NO; + } + + FIndexedNode *indexed = [FIndexedNode indexedNodeWithNode:eventCache index:query.index]; + FCacheNode *eventCacheNode = [[FCacheNode alloc] initWithIndexedNode:indexed + isFullyInitialized:eventCacheComplete + isFiltered:NO]; + FViewCache *viewCache = [[FViewCache alloc] initWithEventCache:eventCacheNode serverCache:serverCache]; + FView *view = [[FView alloc] initWithQuery:query initialViewCache:viewCache]; + // If this is a non-default query we need to tell persistence our current view of the data + if (!query.loadsAllData) { + NSMutableSet *allKeys = [NSMutableSet set]; + [view.eventCache enumerateChildrenUsingBlock:^(NSString *key, id node, BOOL *stop) { + [allKeys addObject:key]; + }]; + [self.persistenceManager setTrackedQueryKeys:allKeys forQuery:query]; + } + self.views[query.params] = view; + return [self addEventRegistration:eventRegistration forExistingViewForQuery:query]; +} + +- (NSArray *)addEventRegistration:(id)eventRegistration + forExistingViewForQuery:(FQuerySpec *)query { + FView *view = self.views[query.params]; + NSAssert(view != nil, @"No view for query: %@", query); + [view addEventRegistration:eventRegistration]; + return [view initialEvents:eventRegistration]; +} + +/** +* Remove event callback(s). Return cancelEvents if a cancelError is specified. +* +* If query is the default query, we'll check all views for the specified eventRegistration. +* If eventRegistration is nil, we'll remove all callbacks for the specified view(s). +* +* @return FTupleRemovedQueriesEvents removed queries and any cancel events +*/ +- (FTupleRemovedQueriesEvents *) removeEventRegistration:(id )eventRegistration + forQuery:(FQuerySpec *)query + cancelError:(NSError *)cancelError { + NSMutableArray *removedQueries = [[NSMutableArray alloc] init]; + __block NSMutableArray *cancelEvents = [[NSMutableArray alloc] init]; + BOOL hadCompleteView = [self hasCompleteView]; + if ([query isDefault]) { + // When you do [ref removeObserverWithHandle:], we search all views for the registration to remove. + [self.views enumerateKeysAndObjectsUsingBlock:^(FQueryParams *viewQueryParams, FView *view, BOOL *stop) { + [cancelEvents addObjectsFromArray:[view removeEventRegistration:eventRegistration cancelError:cancelError]]; + if ([view isEmpty]) { + [self.views removeObjectForKey:viewQueryParams]; + + // We'll deal with complete views later + if (![view.query loadsAllData]) { + [removedQueries addObject:view.query]; + } + } + }]; + } else { + // remove the callback from the specific view + FView *view = [self.views objectForKey:query.params]; + if (view != nil) { + [cancelEvents addObjectsFromArray:[view removeEventRegistration:eventRegistration cancelError:cancelError]]; + + if ([view isEmpty]) { + [self.views removeObjectForKey:query.params]; + + // We'll deal with complete views later + if (![view.query loadsAllData]) { + [removedQueries addObject:view.query]; + } + } + } + } + + if (hadCompleteView && ![self hasCompleteView]) { + // We removed our last complete view + [removedQueries addObject:[FQuerySpec defaultQueryAtPath:query.path]]; + } + + return [[FTupleRemovedQueriesEvents alloc] initWithRemovedQueries:removedQueries cancelEvents:cancelEvents]; +} + +- (NSArray *) queryViews { + __block NSMutableArray *filteredViews = [[NSMutableArray alloc] init]; + + [self.views enumerateKeysAndObjectsUsingBlock:^(FQueryParams *key, FView *view, BOOL *stop) { + if (![view.query loadsAllData]) { + [filteredViews addObject:view]; + } + }]; + + return filteredViews; +} + +- (id ) completeServerCacheAtPath:(FPath *)path { + __block id serverCache = nil; + [self.views enumerateKeysAndObjectsUsingBlock:^(FQueryParams *key, FView *view, BOOL *stop) { + serverCache = [view completeServerCacheFor:path]; + *stop = (serverCache != nil); + }]; + return serverCache; +} + +- (FView *) viewForQuery:(FQuerySpec *)query { + return [self.views objectForKey:query.params]; +} + +- (BOOL) viewExistsForQuery:(FQuerySpec *)query { + return [self viewForQuery:query] != nil; +} + +- (BOOL) hasCompleteView { + return [self completeView] != nil; +} + +- (FView *) completeView { + __block FView *completeView = nil; + + [self.views enumerateKeysAndObjectsUsingBlock:^(FQueryParams *key, FView *view, BOOL *stop) { + if ([view.query loadsAllData]) { + completeView = view; + *stop = YES; + } + }]; + + return completeView; +} + + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSyncTree.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSyncTree.h new file mode 100644 index 0000000..887f721 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSyncTree.h @@ -0,0 +1,61 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FListenProvider; +@protocol FNode; +@class FPath; +@protocol FEventRegistration; +@protocol FPersistedServerCache; +@class FQuerySpec; +@class FCompoundWrite; +@class FPersistenceManager; +@class FCompoundHash; +@protocol FClock; + +@protocol FSyncTreeHash + +- (NSString *)simpleHash; +- (FCompoundHash *)compoundHash; +- (BOOL)includeCompoundHash; + +@end + +@interface FSyncTree : NSObject + +- (id) initWithListenProvider:(FListenProvider *)provider; +- (id) initWithPersistenceManager:(FPersistenceManager *)persistenceManager + listenProvider:(FListenProvider *)provider; + +// These methods all return NSArray of FEvent +- (NSArray *) applyUserOverwriteAtPath:(FPath *)path newData:(id )newData writeId:(NSInteger)writeId isVisible:(BOOL)visible; +- (NSArray *) applyUserMergeAtPath:(FPath *)path changedChildren:(FCompoundWrite *)changedChildren writeId:(NSInteger)writeId; +- (NSArray *) ackUserWriteWithWriteId:(NSInteger)writeId revert:(BOOL)revert persist:(BOOL)persist clock:(id)clock; +- (NSArray *) applyServerOverwriteAtPath:(FPath *)path newData:(id)newData; +- (NSArray *) applyServerMergeAtPath:(FPath *)path changedChildren:(FCompoundWrite *)changedChildren; +- (NSArray *) applyServerRangeMergeAtPath:(FPath *)path updates:(NSArray *)ranges; +- (NSArray *) applyTaggedQueryOverwriteAtPath:(FPath *)path newData:(id )newData tagId:(NSNumber *)tagId; +- (NSArray *) applyTaggedQueryMergeAtPath:(FPath *)path changedChildren:(FCompoundWrite *)changedChildren tagId:(NSNumber *)tagId; +- (NSArray *) applyTaggedServerRangeMergeAtPath:(FPath *)path updates:(NSArray *)ranges tagId:(NSNumber *)tagId; +- (NSArray *) addEventRegistration:(id)eventRegistration forQuery:(FQuerySpec *)query; +- (NSArray *) removeEventRegistration:(id )eventRegistration forQuery:(FQuerySpec *)query cancelError:(NSError *)cancelError; +- (void)keepQuery:(FQuerySpec *)query synced:(BOOL)keepSynced; +- (NSArray *) removeAllWrites; + +- (id) calcCompleteEventCacheAtPath:(FPath *)path excludeWriteIds:(NSArray *)writeIdsToExclude; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSyncTree.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSyncTree.m new file mode 100644 index 0000000..688a43b --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FSyncTree.m @@ -0,0 +1,818 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FSyncTree.h" +#import "FListenProvider.h" +#import "FWriteTree.h" +#import "FNode.h" +#import "FPath.h" +#import "FEventRegistration.h" +#import "FImmutableTree.h" +#import "FOperation.h" +#import "FWriteTreeRef.h" +#import "FOverwrite.h" +#import "FOperationSource.h" +#import "FMerge.h" +#import "FAckUserWrite.h" +#import "FView.h" +#import "FSyncPoint.h" +#import "FEmptyNode.h" +#import "FQueryParams.h" +#import "FQuerySpec.h" +#import "FSnapshotHolder.h" +#import "FChildrenNode.h" +#import "FTupleRemovedQueriesEvents.h" +#import "FAtomicNumber.h" +#import "FEventRaiser.h" +#import "FListenComplete.h" +#import "FSnapshotUtilities.h" +#import "FCacheNode.h" +#import "FUtilities.h" +#import "FCompoundWrite.h" +#import "FWriteRecord.h" +#import "FPersistenceManager.h" +#import "FKeepSyncedEventRegistration.h" +#import "FServerValues.h" +#import "FCompoundHash.h" +#import "FRangeMerge.h" + +// Size after which we start including the compound hash +static const NSUInteger kFSizeThresholdForCompoundHash = 1024; + +@interface FListenContainer : NSObject + +@property (nonatomic, strong) FView *view; +@property (nonatomic, copy) fbt_nsarray_nsstring onComplete; + +@end + +@implementation FListenContainer + +- (instancetype)initWithView:(FView *)view onComplete:(fbt_nsarray_nsstring)onComplete { + self = [super init]; + if (self != nil) { + self->_view = view; + self->_onComplete = onComplete; + } + return self; +} + +- (id)serverCache { + return self.view.serverCache; +} + +- (FCompoundHash *)compoundHash { + return [FCompoundHash fromNode:[self serverCache]]; +} + +- (NSString *)simpleHash { + return [[self serverCache] dataHash]; +} + +- (BOOL)includeCompoundHash { + return [FSnapshotUtilities estimateSerializedNodeSize:[self serverCache]] > kFSizeThresholdForCompoundHash; +} + +@end + +@interface FSyncTree () + +/** +* Tree of SyncPoints. There's a SyncPoint at any location that has 1 or more views. +*/ +@property (nonatomic, strong) FImmutableTree *syncPointTree; + +/** +* A tree of all pending user writes (user-initiated set, transactions, updates, etc) +*/ +@property (nonatomic, strong) FWriteTree *pendingWriteTree; + +/** +* Maps tagId -> FTuplePathQueryParams +*/ +@property (nonatomic, strong) NSMutableDictionary *tagToQueryMap; +@property (nonatomic, strong) NSMutableDictionary *queryToTagMap; +@property (nonatomic, strong) FListenProvider *listenProvider; +@property (nonatomic, strong) FPersistenceManager *persistenceManager; +@property (nonatomic, strong) FAtomicNumber *queryTagCounter; +@property (nonatomic, strong) NSMutableSet *keepSyncedQueries; + +@end + +/** +* SyncTree is the central class for managing event callback registration, data caching, views +* (query processing), and event generation. There are typically two SyncTree instances for +* each Repo, one for the normal Firebase data, and one for the .info data. +* +* It has a number of responsibilities, including: +* - Tracking all user event callbacks (registered via addEventRegistration: and removeEventRegistration:). +* - Applying and caching data changes for user setValue:, runTransactionBlock:, and updateChildValues: calls +* (applyUserOverwriteAtPath:, applyUserMergeAtPath:). +* - Applying and caching data changes for server data changes (applyServerOverwriteAtPath:, +* applyServerMergeAtPath:). +* - Generating user-facing events for server and user changes (all of the apply* methods +* return the set of events that need to be raised as a result). +* - Maintaining the appropriate set of server listens to ensure we are always subscribed +* to the correct set of paths and queries to satisfy the current set of user event +* callbacks (listens are started/stopped using the provided listenProvider). +* +* NOTE: Although SyncTree tracks event callbacks and calculates events to raise, the actual +* events are returned to the caller rather than raised synchronously. +*/ +@implementation FSyncTree + +- (id) initWithListenProvider:(FListenProvider *)provider { + return [self initWithPersistenceManager:nil listenProvider:provider]; +} + +- (id) initWithPersistenceManager:(FPersistenceManager *)persistenceManager listenProvider:(FListenProvider *)provider { + self = [super init]; + if (self) { + self.syncPointTree = [FImmutableTree empty]; + self.pendingWriteTree = [[FWriteTree alloc] init]; + self.tagToQueryMap = [[NSMutableDictionary alloc] init]; + self.queryToTagMap = [[NSMutableDictionary alloc] init]; + self.listenProvider = provider; + self.persistenceManager = persistenceManager; + self.queryTagCounter = [[FAtomicNumber alloc] init]; + self.keepSyncedQueries = [NSMutableSet set]; + } + return self; +} + +#pragma mark - +#pragma mark Apply Operations + +/** +* Apply data changes for a user-generated setValue: runTransactionBlock: updateChildValues:, etc. +* @return NSArray of FEvent to raise. +*/ +- (NSArray *) applyUserOverwriteAtPath:(FPath *)path newData:(id )newData writeId:(NSInteger)writeId isVisible:(BOOL)visible { + // Record pending write + [self.pendingWriteTree addOverwriteAtPath:path newData:newData writeId:writeId isVisible:visible]; + if (!visible) { + return @[]; + } else { + FOverwrite *operation = [[FOverwrite alloc] initWithSource:[FOperationSource userInstance] path:path snap:newData]; + return [self applyOperationToSyncPoints:operation]; + } +} + +/** +* Apply the data from a user-generated updateChildValues: call +* @return NSArray of FEvent to raise. +*/ +- (NSArray *) applyUserMergeAtPath:(FPath *)path changedChildren:(FCompoundWrite *)changedChildren writeId:(NSInteger)writeId { + // Record pending merge + [self.pendingWriteTree addMergeAtPath:path changedChildren:changedChildren writeId:writeId]; + + FMerge *operation = [[FMerge alloc] initWithSource:[FOperationSource userInstance] path:path children:changedChildren]; + return [self applyOperationToSyncPoints:operation]; +} + +/** + * Acknowledge a pending user write that was previously registered with applyUserOverwriteAtPath: or applyUserMergeAtPath: + * TODO[offline]: Taking a serverClock here is awkward, but server values are awkward. :-( + * @return NSArray of FEvent to raise. + */ +- (NSArray *) ackUserWriteWithWriteId:(NSInteger)writeId revert:(BOOL)revert persist:(BOOL)persist clock:(id)clock { + FWriteRecord *write = [self.pendingWriteTree writeForId:writeId]; + BOOL needToReevaluate = [self.pendingWriteTree removeWriteId:writeId]; + if (write.visible) { + if (persist) { + [self.persistenceManager removeUserWrite:writeId]; + } + if (!revert) { + NSDictionary *serverValues = [FServerValues generateServerValues:clock]; + if ([write isOverwrite]) { + id resolvedNode = [FServerValues resolveDeferredValueSnapshot:write.overwrite withServerValues:serverValues]; + [self.persistenceManager applyUserWrite:resolvedNode toServerCacheAtPath:write.path]; + } else { + FCompoundWrite *resolvedMerge = [FServerValues resolveDeferredValueCompoundWrite:write.merge withServerValues:serverValues]; + [self.persistenceManager applyUserMerge:resolvedMerge toServerCacheAtPath:write.path]; + } + } + } + if (!needToReevaluate) { + return @[]; + } else { + __block FImmutableTree *affectedTree = [FImmutableTree empty]; + if (write.isOverwrite) { + affectedTree = [affectedTree setValue:@YES atPath:[FPath empty]]; + } else { + [write.merge enumerateWrites:^(FPath *path, id node, BOOL *stop) { + affectedTree = [affectedTree setValue:@YES atPath:path]; + }]; + } + FAckUserWrite *operation = [[FAckUserWrite alloc] initWithPath:write.path affectedTree:affectedTree revert:revert]; + return [self applyOperationToSyncPoints:operation]; + } +} + +/** +* Apply new server data for the specified path +* @return NSArray of FEvent to raise. +*/ +- (NSArray *) applyServerOverwriteAtPath:(FPath *)path newData:(id )newData { + [self.persistenceManager updateServerCacheWithNode:newData forQuery:[FQuerySpec defaultQueryAtPath:path]]; + FOverwrite *operation = [[FOverwrite alloc] initWithSource:[FOperationSource serverInstance] path:path snap:newData]; + return [self applyOperationToSyncPoints:operation]; +} + +/** +* Applied new server data to be merged in at the specified path +* @return NSArray of FEvent to raise. +*/ +- (NSArray *) applyServerMergeAtPath:(FPath *)path changedChildren:(FCompoundWrite *)changedChildren { + [self.persistenceManager updateServerCacheWithMerge:changedChildren atPath:path]; + FMerge *operation = [[FMerge alloc] initWithSource:[FOperationSource serverInstance] path:path children:changedChildren]; + return [self applyOperationToSyncPoints:operation]; +} + +- (NSArray *) applyServerRangeMergeAtPath:(FPath *)path updates:(NSArray *)ranges { + FSyncPoint *syncPoint = [self.syncPointTree valueAtPath:path]; + if (syncPoint == nil) { + // Removed view, so it's safe to just ignore this update + return @[]; + } else { + // This could be for any "complete" (unfiltered) view, and if there is more than one complete view, they should + // each have the same cache so it doesn't matter which one we use. + FView *view = [syncPoint completeView]; + if (view != nil) { + id serverNode = [view serverCache]; + for (FRangeMerge *merge in ranges) { + serverNode = [merge applyToNode:serverNode]; + } + return [self applyServerOverwriteAtPath:path newData:serverNode]; + } else { + // There doesn't exist a view for this update, so it was removed and it's safe to just ignore this range + // merge + return @[]; + } + } +} + +/** +* Apply a listen complete to a path +* @return NSArray of FEvent to raise. +*/ +- (NSArray *) applyListenCompleteAtPath:(FPath *)path { + [self.persistenceManager setQueryComplete:[FQuerySpec defaultQueryAtPath:path]]; + id operation = [[FListenComplete alloc] initWithSource:[FOperationSource serverInstance] path:path]; + return [self applyOperationToSyncPoints:operation]; +} + +/** +* Apply a listen complete to a path +* @return NSArray of FEvent to raise. +*/ +- (NSArray *) applyTaggedListenCompleteAtPath:(FPath *)path tagId:(NSNumber *)tagId { + FQuerySpec *query = [self queryForTag:tagId]; + if (query != nil) { + [self.persistenceManager setQueryComplete:query]; + FPath *relativePath = [FPath relativePathFrom:query.path to:path]; + id op = [[FListenComplete alloc] initWithSource:[FOperationSource forServerTaggedQuery:query.params] + path:relativePath]; + return [self applyTaggedOperation:op atPath:query.path]; + } else { + // We've already removed the query. No big deal, ignore the update. + return @[]; + } +} + +/** +* Internal helper method to apply tagged operation +*/ +- (NSArray *) applyTaggedOperation:(id)operation atPath:(FPath *)path { + FSyncPoint *syncPoint = [self.syncPointTree valueAtPath:path]; + NSAssert(syncPoint != nil, @"Missing sync point for query tag that we're tracking."); + FWriteTreeRef *writesCache = [self.pendingWriteTree childWritesForPath:path]; + return [syncPoint applyOperation:operation writesCache:writesCache serverCache:nil]; +} + +/** +* Apply new server data for the specified tagged query +* @return NSArray of FEvent to raise. +*/ +- (NSArray *) applyTaggedQueryOverwriteAtPath:(FPath *)path newData:(id )newData tagId:(NSNumber *)tagId { + FQuerySpec *query = [self queryForTag:tagId]; + if (query != nil) { + FPath *relativePath = [FPath relativePathFrom:query.path to:path]; + FQuerySpec *queryToOverwrite = relativePath.isEmpty ? query : [FQuerySpec defaultQueryAtPath:path]; + [self.persistenceManager updateServerCacheWithNode:newData forQuery:queryToOverwrite]; + FOverwrite *operation = [[FOverwrite alloc] initWithSource:[FOperationSource forServerTaggedQuery:query.params] + path:relativePath snap:newData]; + return [self applyTaggedOperation:operation atPath:query.path]; + } else { + // Query must have been removed already + return @[]; + } +} + +/** +* Apply server data to be merged in for the specified tagged query +* @return NSArray of FEvent to raise. +*/ +- (NSArray *) applyTaggedQueryMergeAtPath:(FPath *)path changedChildren:(FCompoundWrite *)changedChildren tagId:(NSNumber *)tagId { + FQuerySpec *query = [self queryForTag:tagId]; + if (query != nil) { + FPath *relativePath = [FPath relativePathFrom:query.path to:path]; + [self.persistenceManager updateServerCacheWithMerge:changedChildren atPath:path]; + FMerge *operation = [[FMerge alloc] initWithSource:[FOperationSource forServerTaggedQuery:query.params] + path:relativePath + children:changedChildren]; + return [self applyTaggedOperation:operation atPath:query.path]; + } else { + // We've already removed the query. No big deal, ignore the update. + return @[]; + } +} + +- (NSArray *) applyTaggedServerRangeMergeAtPath:(FPath *)path updates:(NSArray *)ranges tagId:(NSNumber *)tagId { + FQuerySpec *query = [self queryForTag:tagId]; + if (query != nil) { + NSAssert([path isEqual:query.path], @"Tagged update path and query path must match"); + FSyncPoint *syncPoint = [self.syncPointTree valueAtPath:path]; + NSAssert(syncPoint != nil, @"Missing sync point for query tag that we're tracking."); + FView *view = [syncPoint viewForQuery:query]; + NSAssert(view != nil, @"Missing view for query tag that we're tracking"); + id serverNode = [view serverCache]; + for (FRangeMerge *merge in ranges) { + serverNode = [merge applyToNode:serverNode]; + } + return [self applyTaggedQueryOverwriteAtPath:path newData:serverNode tagId:tagId]; + } else { + // We've already removed the query. No big deal, ignore the update. + return @[]; + } +} + +/** +* Add an event callback for the specified query +* @return NSArray of FEvent to raise. +*/ +- (NSArray *) addEventRegistration:(id)eventRegistration forQuery:(FQuerySpec *)query { + FPath *path = query.path; + + __block BOOL foundAncestorDefaultView = NO; + [self.syncPointTree forEachOnPath:query.path whileBlock:^BOOL(FPath *pathToSyncPoint, FSyncPoint *syncPoint) { + foundAncestorDefaultView = foundAncestorDefaultView || [syncPoint hasCompleteView]; + return !foundAncestorDefaultView; + }]; + + [self.persistenceManager setQueryActive:query]; + + FSyncPoint *syncPoint = [self.syncPointTree valueAtPath:path]; + if (syncPoint == nil) { + syncPoint = [[FSyncPoint alloc] initWithPersistenceManager:self.persistenceManager]; + self.syncPointTree = [self.syncPointTree setValue:syncPoint atPath:path]; + } + + BOOL viewAlreadyExists = [syncPoint viewExistsForQuery:query]; + NSArray *events; + if (viewAlreadyExists) { + events = [syncPoint addEventRegistration:eventRegistration forExistingViewForQuery:query]; + } else { + if (![query loadsAllData]) { + // We need to track a tag for this query + NSAssert(self.queryToTagMap[query] == nil, @"View does not exist, but we have a tag"); + NSNumber *tagId = [self.queryTagCounter getAndIncrement]; + self.queryToTagMap[query] = tagId; + self.tagToQueryMap[tagId] = query; + } + + FWriteTreeRef *writesCache = [self.pendingWriteTree childWritesForPath:path]; + FCacheNode *serverCache = [self serverCacheForQuery:query]; + events = [syncPoint addEventRegistration:eventRegistration + forNonExistingViewForQuery:query + writesCache:writesCache + serverCache:serverCache]; + + // There was no view and no default listen + if (!foundAncestorDefaultView) { + FView *view = [syncPoint viewForQuery:query]; + NSMutableArray *mutableEvents = [events mutableCopy]; + [mutableEvents addObjectsFromArray:[self setupListenerOnQuery:query view:view]]; + events = mutableEvents; + } + } + + return events; +} + +- (FCacheNode *)serverCacheForQuery:(FQuerySpec *)query { + __block id serverCacheNode = nil; + + [self.syncPointTree forEachOnPath:query.path whileBlock:^BOOL(FPath *pathToSyncPoint, FSyncPoint *syncPoint) { + FPath *relativePath = [FPath relativePathFrom:pathToSyncPoint to:query.path]; + serverCacheNode = [syncPoint completeServerCacheAtPath:relativePath]; + return serverCacheNode == nil; + }]; + + FCacheNode *serverCache; + if (serverCacheNode != nil) { + FIndexedNode *indexed = [FIndexedNode indexedNodeWithNode:serverCacheNode index:query.index]; + serverCache = [[FCacheNode alloc] initWithIndexedNode:indexed isFullyInitialized:YES isFiltered:NO]; + } else { + FCacheNode *persistenceServerCache = [self.persistenceManager serverCacheForQuery:query]; + if (persistenceServerCache.isFullyInitialized) { + serverCache = persistenceServerCache; + } else { + serverCacheNode = [FEmptyNode emptyNode]; + + FImmutableTree *subtree = [self.syncPointTree subtreeAtPath:query.path]; + [subtree forEachChild:^(NSString *childKey, FSyncPoint *childSyncPoint) { + id completeCache = [childSyncPoint completeServerCacheAtPath:[FPath empty]]; + if (completeCache) { + serverCacheNode = [serverCacheNode updateImmediateChild:childKey withNewChild:completeCache]; + } + }]; + // Fill the node with any available children we have + [persistenceServerCache.node enumerateChildrenUsingBlock:^(NSString *key, id node, BOOL *stop) { + if (![serverCacheNode hasChild:key]) { + serverCacheNode = [serverCacheNode updateImmediateChild:key withNewChild:node]; + } + }]; + FIndexedNode *indexed = [FIndexedNode indexedNodeWithNode:serverCacheNode index:query.index]; + serverCache = [[FCacheNode alloc] initWithIndexedNode:indexed isFullyInitialized:NO isFiltered:NO]; + } + } + + return serverCache; +} + +/** +* Remove event callback(s). +* +* If query is the default query, we'll check all queries for the specified eventRegistration. +* If eventRegistration is null, we'll remove all callbacks for the specified query/queries. +* +* @param eventRegistration if nil, all callbacks are removed +* @param cancelError If provided, appropriate cancel events will be returned +* @return NSArray of FEvent to raise. +*/ +- (NSArray *) removeEventRegistration:(id )eventRegistration + forQuery:(FQuerySpec *)query + cancelError:(NSError *)cancelError { + // Find the syncPoint first. Then deal with whether or not it has matching listeners + FPath *path = query.path; + FSyncPoint *maybeSyncPoint = [self.syncPointTree valueAtPath:path]; + NSArray *cancelEvents = @[]; + + // A removal on a default query affects all queries at that location. A removal on an indexed query, even one without + // other query constraints, does *not* affect all queries at that location. So this check must be for 'default', and + // not loadsAllData: + if (maybeSyncPoint && ([query isDefault] || [maybeSyncPoint viewExistsForQuery:query])) { + FTupleRemovedQueriesEvents *removedAndEvents = [maybeSyncPoint removeEventRegistration:eventRegistration forQuery:query cancelError:cancelError]; + if ([maybeSyncPoint isEmpty]) { + self.syncPointTree = [self.syncPointTree removeValueAtPath:path]; + } + NSArray *removed = removedAndEvents.removedQueries; + cancelEvents = removedAndEvents.cancelEvents; + + // We may have just removed one of many listeners and can short-circuit this whole process + // We may also not have removed a default listener, in which case all of the descendant listeners should already + // be properly set up. + // + // Since indexed queries can shadow if they don't have other query constraints, check for loadsAllData: instead + // of isDefault: + NSUInteger defaultQueryIndex = [removed indexOfObjectPassingTest:^BOOL(FQuerySpec *q, NSUInteger idx, BOOL *stop) { + return [q loadsAllData]; + }]; + BOOL removingDefault = defaultQueryIndex != NSNotFound; + [removed enumerateObjectsUsingBlock:^(FQuerySpec *query, NSUInteger idx, BOOL *stop) { + [self.persistenceManager setQueryInactive:query]; + }]; + NSNumber *covered = [self.syncPointTree findOnPath:path andApplyBlock:^id(FPath *relativePath, FSyncPoint *parentSyncPoint) { + return [NSNumber numberWithBool:[parentSyncPoint hasCompleteView]]; + }]; + + if (removingDefault && ![covered boolValue]) { + FImmutableTree *subtree = [self.syncPointTree subtreeAtPath:path]; + // There are potentially child listeners. Determine what if any listens we need to send before executing + // the removal + if (![subtree isEmpty]) { + // We need to fold over our subtree and collect the listeners to send + NSArray *newViews = [self collectDistinctViewsForSubTree:subtree]; + + // Ok, we've collected all the listens we need. Set them up. + [newViews enumerateObjectsUsingBlock:^(FView *view, NSUInteger idx, BOOL *stop) { + FQuerySpec *newQuery = view.query; + FListenContainer *listenContainer = [self createListenerForView:view]; + self.listenProvider.startListening([self queryForListening:newQuery], [self tagForQuery:newQuery], + listenContainer, listenContainer.onComplete); + }]; + } else { + // There's nothing below us, so nothing we need to start listening on + } + } + + // If we removed anything and we're not covered by a higher up listen, we need to stop listening on this query. + // The above block has us covered in terms of making sure we're set up on listens lower in the tree. + // Also, note that if we have a cancelError, it's already been removed at the provider level. + if (![covered boolValue] && [removed count] > 0 && cancelError == nil) { + // If we removed a default, then we weren't listening on any of the other queries here. Just cancel the one + // default. Otherwise, we need to iterate through and cancel each individual query + if (removingDefault) { + // We don't tag default listeners + self.listenProvider.stopListening([self queryForListening:query], nil); + } else { + [removed enumerateObjectsUsingBlock:^(FQuerySpec *queryToRemove, NSUInteger idx, BOOL *stop) { + NSNumber *tagToRemove = [self.queryToTagMap objectForKey:queryToRemove]; + self.listenProvider.stopListening([self queryForListening:queryToRemove], tagToRemove); + }]; + } + } + // Now, clear all the tags we're tracking for the removed listens. + [self removeTags:removed]; + } else { + // No-op, this listener must've been already removed + } + return cancelEvents; +} + +- (void)keepQuery:(FQuerySpec *)query synced:(BOOL)keepSynced { + // Only do something if we actually need to add/remove an event registration + if (keepSynced && ![self.keepSyncedQueries containsObject:query]) { + [self addEventRegistration:[FKeepSyncedEventRegistration instance] forQuery:query]; + [self.keepSyncedQueries addObject:query]; + } else if (!keepSynced && [self.keepSyncedQueries containsObject:query]) { + [self removeEventRegistration:[FKeepSyncedEventRegistration instance] forQuery:query cancelError:nil]; + [self.keepSyncedQueries removeObject:query]; + } +} + +- (NSArray *) removeAllWrites { + [self.persistenceManager removeAllUserWrites]; + NSArray *removedWrites = [self.pendingWriteTree removeAllWrites]; + if (removedWrites.count > 0) { + FImmutableTree *affectedTree = [[FImmutableTree empty] setValue:@YES atPath:[FPath empty]]; + return [self applyOperationToSyncPoints:[[FAckUserWrite alloc] initWithPath:[FPath empty] + affectedTree:affectedTree revert:YES]]; + } else { + return @[]; + } +} + +/** +* Returns a complete cache, if we have one, of the data at a particular path. The location must have a listener above +* it, but as this is only used by transaction code, that should always be the case anyways. +* +* Note: this method will *include* hidden writes from transaction with applyLocally set to false. +* @param path The path to the data we want +* @param writeIdsToExclude A specific set to be excluded +*/ +- (id ) calcCompleteEventCacheAtPath:(FPath *)path excludeWriteIds:(NSArray *)writeIdsToExclude { + BOOL includeHiddenSets = YES; + FWriteTree *writeTree = self.pendingWriteTree; + id serverCache = [self.syncPointTree findOnPath:path andApplyBlock:^id(FPath *pathSoFar, FSyncPoint *syncPoint) { + FPath *relativePath = [FPath relativePathFrom:pathSoFar to:path]; + id serverCache = [syncPoint completeServerCacheAtPath:relativePath]; + if (serverCache) { + return serverCache; + } else { + return nil; + } + }]; + return [writeTree calculateCompleteEventCacheAtPath:path completeServerCache:serverCache excludeWriteIds:writeIdsToExclude includeHiddenWrites:includeHiddenSets]; +} + +#pragma mark - +#pragma mark Private Methods +/** +* This collapses multiple unfiltered views into a single view, since we only need a single +* listener for them. +* @return NSArray of FView +*/ +- (NSArray *) collectDistinctViewsForSubTree:(FImmutableTree *)subtree { + return [subtree foldWithBlock:^NSArray *(FPath *relativePath, FSyncPoint *maybeChildSyncPoint, NSDictionary *childMap) { + if (maybeChildSyncPoint && [maybeChildSyncPoint hasCompleteView]) { + FView *completeView = [maybeChildSyncPoint completeView]; + return @[completeView]; + } else { + // No complete view here, flatten any deeper listens into an array + NSMutableArray *views = [[NSMutableArray alloc] init]; + if (maybeChildSyncPoint) { + views = [[maybeChildSyncPoint queryViews] mutableCopy]; + } + [childMap enumerateKeysAndObjectsUsingBlock:^(NSString *childKey, NSArray *childViews, BOOL *stop) { + [views addObjectsFromArray:childViews]; + }]; + return views; + } + }]; +} + +/** +* @param queries NSArray of FQuerySpec +*/ +- (void) removeTags:(NSArray *)queries { + [queries enumerateObjectsUsingBlock:^(FQuerySpec *removedQuery, NSUInteger idx, BOOL *stop) { + if (![removedQuery loadsAllData]) { + // We should have a tag for this + NSNumber *removedQueryTag = self.queryToTagMap[removedQuery]; + [self.queryToTagMap removeObjectForKey:removedQuery]; + [self.tagToQueryMap removeObjectForKey:removedQueryTag]; + } + }]; +} + +- (FQuerySpec *) queryForListening:(FQuerySpec *)query { + if (query.loadsAllData && !query.isDefault) { + // We treat queries that load all data as default queries + return [FQuerySpec defaultQueryAtPath:query.path]; + } else { + return query; + } +} + +/** +* For a given new listen, manage the de-duplication of outstanding subscriptions. +* @return NSArray of FEvent events to support synchronous data sources +*/ +- (NSArray *) setupListenerOnQuery:(FQuerySpec *)query view:(FView *)view { + FPath *path = query.path; + NSNumber *tagId = [self tagForQuery:query]; + FListenContainer *listenContainer = [self createListenerForView:view]; + + NSArray *events = self.listenProvider.startListening([self queryForListening:query], tagId, listenContainer, + listenContainer.onComplete); + + FImmutableTree *subtree = [self.syncPointTree subtreeAtPath:path]; + // The root of this subtree has our query. We're here because we definitely need to send a listen for that, but we + // may need to shadow other listens as well. + if (tagId != nil) { + NSAssert(![subtree.value hasCompleteView], @"If we're adding a query, it shouldn't be shadowed"); + } else { + // Shadow everything at or below this location, this is a default listener. + NSArray *queriesToStop = [subtree foldWithBlock:^id(FPath *relativePath, FSyncPoint *maybeChildSyncPoint, NSDictionary *childMap) { + if (![relativePath isEmpty] && maybeChildSyncPoint != nil && [maybeChildSyncPoint hasCompleteView]) { + return @[[maybeChildSyncPoint completeView].query]; + } else { + // No default listener here, flatten any deeper queries into an array + NSMutableArray *queries = [[NSMutableArray alloc] init]; + if (maybeChildSyncPoint != nil) { + for (FView *view in [maybeChildSyncPoint queryViews]) { + [queries addObject:view.query]; + } + } + [childMap enumerateKeysAndObjectsUsingBlock:^(NSString *key, NSArray *childQueries, BOOL *stop) { + [queries addObjectsFromArray:childQueries]; + }]; + return queries; + } + }]; + for (FQuerySpec *queryToStop in queriesToStop) { + self.listenProvider.stopListening([self queryForListening:queryToStop], [self tagForQuery:queryToStop]); + } + } + return events; +} + +- (FListenContainer *) createListenerForView:(FView *)view { + FQuerySpec *query = view.query; + NSNumber *tagId = [self tagForQuery:query]; + + FListenContainer *listenContainer = [[FListenContainer alloc] initWithView:view + onComplete:^(NSString *status) { + if ([status isEqualToString:@"ok"]) { + if (tagId != nil) { + return [self applyTaggedListenCompleteAtPath:query.path tagId:tagId]; + } else { + return [self applyListenCompleteAtPath:query.path]; + } + } else { + // If a listen failed, kill all of the listeners here, not just the one that triggered the error. + // Note that this may need to be scoped to just this listener if we change permissions on filtered children + NSError *error = [FUtilities errorForStatus:status andReason:nil]; + FFWarn(@"I-RDB038012", @"Listener at %@ failed: %@", query.path, status); + return [self removeEventRegistration:nil forQuery:query cancelError:error]; + } + }]; + + return listenContainer; +} + +/** +* @return The query associated with the given tag, if we have one +*/ +- (FQuerySpec *) queryForTag:(NSNumber *)tagId { + return self.tagToQueryMap[tagId]; +} + +/** +* @return The tag associated with the given query +*/ +- (NSNumber *) tagForQuery:(FQuerySpec *)query { + return self.queryToTagMap[query]; +} + +#pragma mark - +#pragma mark applyOperation Helpers + +/** +* A helper method that visits all descendant and ancestor SyncPoints, applying the operation. +* +* NOTES: +* - Descendant SyncPoints will be visited first (since we raise events depth-first). + +* - We call applyOperation: on each SyncPoint passing three things: +* 1. A version of the Operation that has been made relative to the SyncPoint location. +* 2. A WriteTreeRef of any writes we have cached at the SyncPoint location. +* 3. A snapshot Node with cached server data, if we have it. + +* - We concatenate all of the events returned by each SyncPoint and return the result. +* +* @return Array of FEvent +*/ +- (NSArray *) applyOperationToSyncPoints:(id)operation { + return [self applyOperationHelper:operation syncPointTree:self.syncPointTree serverCache:nil + writesCache:[self.pendingWriteTree childWritesForPath:[FPath empty]]]; +} + +/** +* Recursive helper for applyOperationToSyncPoints_ +*/ +- (NSArray *) applyOperationHelper:(id)operation syncPointTree:(FImmutableTree *)syncPointTree + serverCache:(id)serverCache writesCache:(FWriteTreeRef *)writesCache { + if ([operation.path isEmpty]) { + return [self applyOperationDescendantsHelper:operation syncPointTree:syncPointTree serverCache:serverCache writesCache:writesCache]; + } else { + FSyncPoint *syncPoint = syncPointTree.value; + + // If we don't have cached server data, see if we can get it from this SyncPoint + if (serverCache == nil && syncPoint != nil) { + serverCache = [syncPoint completeServerCacheAtPath:[FPath empty]]; + } + + NSMutableArray *events = [[NSMutableArray alloc] init]; + NSString *childKey = [operation.path getFront]; + id childOperation = [operation operationForChild:childKey]; + FImmutableTree *childTree = [syncPointTree.children get:childKey]; + if (childTree != nil && childOperation != nil) { + id childServerCache = serverCache ? [serverCache getImmediateChild:childKey] : nil; + FWriteTreeRef *childWritesCache = [writesCache childWriteTreeRef:childKey]; + [events addObjectsFromArray:[self applyOperationHelper:childOperation syncPointTree:childTree serverCache:childServerCache writesCache:childWritesCache]]; + } + + if (syncPoint) { + [events addObjectsFromArray:[syncPoint applyOperation:operation writesCache:writesCache serverCache:serverCache]]; + } + + return events; + } +} + +/** +* Recursive helper for applyOperationToSyncPoints: +*/ +- (NSArray *) applyOperationDescendantsHelper:(id)operation syncPointTree:(FImmutableTree *)syncPointTree + serverCache:(id)serverCache writesCache:(FWriteTreeRef *)writesCache { + FSyncPoint *syncPoint = syncPointTree.value; + + // If we don't have cached server data, see if we can get it from this SyncPoint + id resolvedServerCache; + if (serverCache == nil & syncPoint != nil) { + resolvedServerCache = [syncPoint completeServerCacheAtPath:[FPath empty]]; + } else { + resolvedServerCache = serverCache; + } + + NSMutableArray *events = [[NSMutableArray alloc] init]; + [syncPointTree.children enumerateKeysAndObjectsUsingBlock:^(NSString *childKey, FImmutableTree *childTree, BOOL *stop) { + id childServerCache = nil; + if (resolvedServerCache != nil) { + childServerCache = [resolvedServerCache getImmediateChild:childKey]; + } + FWriteTreeRef *childWritesCache = [writesCache childWriteTreeRef:childKey]; + id childOperation = [operation operationForChild:childKey]; + if (childOperation != nil) { + [events addObjectsFromArray:[self applyOperationDescendantsHelper:childOperation + syncPointTree:childTree + serverCache:childServerCache + writesCache:childWritesCache]]; + } + }]; + + if (syncPoint) { + [events addObjectsFromArray:[syncPoint applyOperation:operation writesCache:writesCache serverCache:resolvedServerCache]]; + } + + return events; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteRecord.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteRecord.h new file mode 100644 index 0000000..a9b53fe --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteRecord.h @@ -0,0 +1,40 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FPath; +@class FCompoundWrite; +@protocol FNode; + +@interface FWriteRecord : NSObject + +- initWithPath:(FPath *)path overwrite:(id)overwrite writeId:(NSInteger)writeId visible:(BOOL)isVisible; +- initWithPath:(FPath *)path merge:(FCompoundWrite *)merge writeId:(NSInteger)writeId; + +@property (nonatomic, readonly) NSInteger writeId; +@property (nonatomic, strong, readonly) FPath *path; +@property (nonatomic, strong, readonly) id overwrite; +/** +* Maps NSString -> id +*/ +@property (nonatomic, strong, readonly) FCompoundWrite *merge; +@property (nonatomic, readonly) BOOL visible; + +- (BOOL)isMerge; +- (BOOL)isOverwrite; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteRecord.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteRecord.m new file mode 100644 index 0000000..47c952c --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteRecord.m @@ -0,0 +1,117 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FWriteRecord.h" +#import "FPath.h" +#import "FNode.h" +#import "FCompoundWrite.h" + +@interface FWriteRecord () +@property (nonatomic, readwrite) NSInteger writeId; +@property (nonatomic, strong, readwrite) FPath *path; +@property (nonatomic, strong, readwrite) id overwrite; +@property (nonatomic, strong, readwrite) FCompoundWrite *merge; +@property (nonatomic, readwrite) BOOL visible; +@end + +@implementation FWriteRecord + +- (id)initWithPath:(FPath *)path overwrite:(id)overwrite writeId:(NSInteger)writeId visible:(BOOL)isVisible { + self = [super init]; + if (self) { + self.path = path; + if (overwrite == nil) { + [NSException raise:NSInvalidArgumentException format:@"Can't pass nil as overwrite parameter to an overwrite write record"]; + } + self.overwrite = overwrite; + self.merge = nil; + self.writeId = writeId; + self.visible = isVisible; + } + return self; +} + +- (id)initWithPath:(FPath *)path merge:(FCompoundWrite *)merge writeId:(NSInteger)writeId { + self = [super init]; + if (self) { + self.path = path; + if (merge == nil) { + [NSException raise:NSInvalidArgumentException format:@"Can't pass nil as merge parameter to an merge write record"]; + } + self.overwrite = nil; + self.merge = merge; + self.writeId = writeId; + self.visible = YES; + } + return self; +} + +- (id)overwrite { + if (self->_overwrite == nil) { + [NSException raise:NSInvalidArgumentException format:@"Can't get overwrite for merge write record!"]; + } + return self->_overwrite; +} + +- (FCompoundWrite *)compoundWrite { + if (self->_merge == nil) { + [NSException raise:NSInvalidArgumentException format:@"Can't get merge for overwrite write record!"]; + } + return self->_merge; +} + +- (BOOL)isMerge { + return self->_merge != nil; +} + +- (BOOL)isOverwrite { + return self->_overwrite != nil; +} + +- (NSString *)description { + if (self.isOverwrite) { + return [NSString stringWithFormat:@"FWriteRecord { writeId = %lu, path = %@, overwrite = %@, visible = %d }", + (unsigned long)self.writeId, self.path, self.overwrite, self.visible]; + } else { + return [NSString stringWithFormat:@"FWriteRecord { writeId = %lu, path = %@, merge = %@ }", + (unsigned long)self.writeId, self.path, self.merge]; + } +} + +- (BOOL)isEqual:(id)object { + if (![object isKindOfClass:[self class]]) { + return NO; + } + FWriteRecord *other = (FWriteRecord *)object; + if (self->_writeId != other->_writeId) return NO; + if (self->_path != other->_path && ![self->_path isEqual:other->_path]) return NO; + if (self->_overwrite != other->_overwrite && ![self->_overwrite isEqual:other->_overwrite]) return NO; + if (self->_merge != other->_merge && ![self->_merge isEqual:other->_merge]) return NO; + if (self->_visible != other->_visible) return NO; + + return YES; +} + +- (NSUInteger)hash { + NSUInteger hash = self->_writeId * 17; + hash = hash * 31 + self->_path.hash; + hash = hash * 31 + self->_overwrite.hash; + hash = hash * 31 + self->_merge.hash; + hash = hash * 31 + ((self->_visible) ? 1 : 0); + return hash; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteTree.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteTree.h new file mode 100644 index 0000000..243bc9f --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteTree.h @@ -0,0 +1,63 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FPath; +@protocol FNode; +@class FCompoundWrite; +@class FWriteTreeRef; +@class FChildrenNode; +@class FNamedNode; +@class FWriteRecord; +@protocol FIndex; +@class FCacheNode; + +@interface FWriteTree : NSObject + +- (FWriteTreeRef *) childWritesForPath:(FPath *)path; +- (void) addOverwriteAtPath:(FPath *)path newData:(id)newData writeId:(NSInteger)writeId isVisible:(BOOL)visible; +- (void) addMergeAtPath:(FPath *)path changedChildren:(FCompoundWrite *)changedChildren writeId:(NSInteger)writeId; +- (BOOL) removeWriteId:(NSInteger)writeId; +- (NSArray *) removeAllWrites; +- (FWriteRecord *)writeForId:(NSInteger)writeId; + +- (id) calculateCompleteEventCacheAtPath:(FPath *)treePath + completeServerCache:(id)completeServerCache + excludeWriteIds:(NSArray *)writeIdsToExclude + includeHiddenWrites:(BOOL)includeHiddenWrites; + +- (id) calculateCompleteEventChildrenAtPath:(FPath *)treePath + completeServerChildren:(id)completeServerChildren; + +- (id) calculateEventCacheAfterServerOverwriteAtPath:(FPath *)treePath + childPath:(FPath *)childPath + existingEventSnap:(id)existingEventSnap + existingServerSnap:(id)existingServerSnap; + +- (id) calculateCompleteChildAtPath:(FPath *)treePath + childKey:(NSString *)childKey + cache:(FCacheNode *)existingServerCache; + +- (id) shadowingWriteAtPath:(FPath *)path; + +- (FNamedNode *) calculateNextNodeAfterPost:(FNamedNode *)post + atPath:(FPath *)path + completeServerData:(id)completeServerData + reverse:(BOOL)reverse + index:(id)index; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteTree.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteTree.m new file mode 100644 index 0000000..c5b08ea --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteTree.m @@ -0,0 +1,458 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FWriteTree.h" +#import "FImmutableTree.h" +#import "FPath.h" +#import "FNode.h" +#import "FWriteTreeRef.h" +#import "FChildrenNode.h" +#import "FNamedNode.h" +#import "FWriteRecord.h" +#import "FEmptyNode.h" +#import "FIndex.h" +#import "FCompoundWrite.h" +#import "FCacheNode.h" + +@interface FWriteTree () +/** +* A tree tracking the results of applying all visible writes. This does not include transactions with +* applyLocally=false or writes that are completely shadowed by other writes. +* Contains id as values. +*/ +@property (nonatomic, strong) FCompoundWrite *visibleWrites; +/** +* A list of pending writes, regardless of visibility and shadowed-ness. Used to calcuate arbitrary +* sets of the changed data, such as hidden writes (from transactions) or changes with certain writes excluded (also +* used by transactions). +* Contains FWriteRecords. +*/ +@property (nonatomic, strong) NSMutableArray *allWrites; +@property (nonatomic) NSInteger lastWriteId; +@end + +/** +* FWriteTree tracks all pending user-initiated writes and has methods to calcuate the result of merging them with +* underlying server data (to create "event cache" data). Pending writes are added with addOverwriteAtPath: and +* addMergeAtPath: and removed with removeWriteId:. +*/ +@implementation FWriteTree + +@synthesize allWrites; +@synthesize lastWriteId; + +- (id) init { + self = [super init]; + if (self) { + self.visibleWrites = [FCompoundWrite emptyWrite]; + self.allWrites = [[NSMutableArray alloc] init]; + self.lastWriteId = -1; + } + return self; +} + +/** +* Create a new WriteTreeRef for the given path. For use with a new sync point at the given path. +*/ +- (FWriteTreeRef *) childWritesForPath:(FPath *)path { + return [[FWriteTreeRef alloc] initWithPath:path writeTree:self]; +} + +/** +* Record a new overwrite from user code. +* @param visible Is set to false by some transactions. It should be excluded from event caches. +*/ +- (void) addOverwriteAtPath:(FPath *)path newData:(id )newData writeId:(NSInteger)writeId isVisible:(BOOL)visible { + NSAssert(writeId > self.lastWriteId, @"Stacking an older write on top of a newer one"); + FWriteRecord *record = [[FWriteRecord alloc] initWithPath:path overwrite:newData writeId:writeId visible:visible]; + [self.allWrites addObject:record]; + + if (visible) { + self.visibleWrites = [self.visibleWrites addWrite:newData atPath:path]; + } + + self.lastWriteId = writeId; +} + +/** +* Record a new merge from user code. +* @param changedChildren maps NSString -> id +*/ +- (void) addMergeAtPath:(FPath *)path changedChildren:(FCompoundWrite *)changedChildren writeId:(NSInteger)writeId { + NSAssert(writeId > self.lastWriteId, @"Stacking an older merge on top of newer one"); + FWriteRecord *record = [[FWriteRecord alloc] initWithPath:path merge:changedChildren writeId:writeId]; + [self.allWrites addObject:record]; + + self.visibleWrites = [self.visibleWrites addCompoundWrite:changedChildren atPath:path]; + self.lastWriteId = writeId; +} + +- (FWriteRecord *)writeForId:(NSInteger)writeId { + NSUInteger index = [self.allWrites indexOfObjectPassingTest:^BOOL(FWriteRecord *write, NSUInteger idx, BOOL *stop) { + return write.writeId == writeId; + }]; + return (index == NSNotFound) ? nil : self.allWrites[index]; +} + +/** +* Remove a write (either an overwrite or merge) that has been successfully acknowledged by the server. Recalculates the +* tree if necessary. We return the path of the write and whether it may have been visible, meaning views need to +* reevaluate. +* +* @return YES if the write may have been visible (meaning we'll need to reevaluate / raise events as a result). +*/ +- (BOOL) removeWriteId:(NSInteger)writeId { + NSUInteger index = [self.allWrites indexOfObjectPassingTest:^BOOL(FWriteRecord *record, NSUInteger idx, BOOL *stop) { + if (record.writeId == writeId) { + return YES; + } else { + return NO; + } + }]; + NSAssert(index != NSNotFound, @"[FWriteTree removeWriteId:] called with nonexistent writeId."); + FWriteRecord *writeToRemove = self.allWrites[index]; + [self.allWrites removeObjectAtIndex:index]; + + BOOL removedWriteWasVisible = writeToRemove.visible; + BOOL removedWriteOverlapsWithOtherWrites = NO; + NSInteger i = [self.allWrites count] - 1; + + while (removedWriteWasVisible && i >= 0) { + FWriteRecord *currentWrite = [self.allWrites objectAtIndex:i]; + if (currentWrite.visible) { + if (i >= index && [self record:currentWrite containsPath:writeToRemove.path]) { + // The removed write was completely shadowed by a subsequent write. + removedWriteWasVisible = NO; + } else if ([writeToRemove.path contains:currentWrite.path]) { + // Either we're covering some writes or they're covering part of us (depending on which came first). + removedWriteOverlapsWithOtherWrites = YES; + } + } + i--; + } + + if (!removedWriteWasVisible) { + return NO; + } else if (removedWriteOverlapsWithOtherWrites) { + // There's some shadowing going on. Just rebuild the visible writes from scratch. + [self resetTree]; + return YES; + } else { + // There's no shadowing. We can safely just remove the write(s) from visibleWrites. + if ([writeToRemove isOverwrite]) { + self.visibleWrites = [self.visibleWrites removeWriteAtPath:writeToRemove.path]; + } else { + FCompoundWrite *merge = writeToRemove.merge; + [merge enumerateWrites:^(FPath *path, id node, BOOL *stop) { + self.visibleWrites = [self.visibleWrites removeWriteAtPath:[writeToRemove.path child:path]]; + }]; + } + return YES; + } +} + +- (NSArray *) removeAllWrites { + NSArray *writes = self.allWrites; + self.visibleWrites = [FCompoundWrite emptyWrite]; + self.allWrites = [NSMutableArray array]; + return writes; +} + +/** +* @return A complete snapshot for the given path if there's visible write data at that path, else nil. +* No server data is considered. +*/ +- (id ) completeWriteDataAtPath:(FPath *)path { + return [self.visibleWrites completeNodeAtPath:path]; +} + +/** +* Given optional, underlying server data, and an optional set of constraints (exclude some sets, include hidden +* writes), attempt to calculate a complete snapshot for the given path +* @param includeHiddenWrites Defaults to false, whether or not to layer on writes with visible set to false +*/ +- (id ) calculateCompleteEventCacheAtPath:(FPath *)treePath completeServerCache:(id )completeServerCache + excludeWriteIds:(NSArray *)writeIdsToExclude includeHiddenWrites:(BOOL)includeHiddenWrites { + if (writeIdsToExclude == nil && !includeHiddenWrites) { + id shadowingNode = [self.visibleWrites completeNodeAtPath:treePath]; + if (shadowingNode != nil) { + return shadowingNode; + } else { + // No cache here. Can't claim complete knowledge. + FCompoundWrite *subMerge = [self.visibleWrites childCompoundWriteAtPath:treePath]; + if (subMerge.isEmpty) { + return completeServerCache; + } else if (completeServerCache == nil && ![subMerge hasCompleteWriteAtPath:[FPath empty]]) { + // We wouldn't have a complete snapshot since there's no underlying data and no complete shadow + return nil; + } else { + id layeredCache = completeServerCache != nil ? completeServerCache : [FEmptyNode emptyNode]; + return [subMerge applyToNode:layeredCache]; + } + } + } else { + FCompoundWrite *merge = [self.visibleWrites childCompoundWriteAtPath:treePath]; + if (!includeHiddenWrites && merge.isEmpty) { + return completeServerCache; + } else { + // If the server cache is null and we don't have a complete cache, we need to return nil + if (!includeHiddenWrites && completeServerCache == nil && ![merge hasCompleteWriteAtPath:[FPath empty]]) { + return nil; + } else { + BOOL (^filter) (FWriteRecord *) = ^(FWriteRecord *record) { + return (BOOL) ((record.visible || includeHiddenWrites) && + (writeIdsToExclude == nil || ![writeIdsToExclude containsObject:[NSNumber numberWithInteger:record.writeId]]) && + ([record.path contains:treePath] || [treePath contains:record.path])); + }; + FCompoundWrite *mergeAtPath = [FWriteTree layerTreeFromWrites:self.allWrites filter:filter treeRoot:treePath]; + id layeredCache = completeServerCache ? completeServerCache : [FEmptyNode emptyNode]; + return [mergeAtPath applyToNode:layeredCache]; + } + } + } +} + +/** +* With optional, underlying server data, attempt to return a children node of children that we have complete data for. +* Used when creating new views, to pre-fill their complete event children snapshot. +*/ +- (FChildrenNode *) calculateCompleteEventChildrenAtPath:(FPath *)treePath + completeServerChildren:(id)completeServerChildren { + __block id completeChildren = [FEmptyNode emptyNode]; + id topLevelSet = [self.visibleWrites completeNodeAtPath:treePath]; + if (topLevelSet != nil) { + if (![topLevelSet isLeafNode]) { + // We're shadowing everything. Return the children. + FChildrenNode *topChildrenNode = topLevelSet; + [topChildrenNode enumerateChildrenUsingBlock:^(NSString *key, id node, BOOL *stop) { + completeChildren = [completeChildren updateImmediateChild:key withNewChild:node]; + }]; + } + return completeChildren; + } else { + // Layer any children we have on top of this + // We know we don't have a top-level set, so just enumerate existing children, and apply any updates + FCompoundWrite *merge = [self.visibleWrites childCompoundWriteAtPath:treePath]; + [completeServerChildren enumerateChildrenUsingBlock:^(NSString *key, id node, BOOL *stop) { + FCompoundWrite *childMerge = [merge childCompoundWriteAtPath:[[FPath alloc] initWith:key]]; + id newChildNode = [childMerge applyToNode:node]; + completeChildren = [completeChildren updateImmediateChild:key withNewChild:newChildNode]; + }]; + // Add any complete children we have from the set. + for (FNamedNode *node in merge.completeChildren) { + completeChildren = [completeChildren updateImmediateChild:node.name withNewChild:node.node]; + } + return completeChildren; + } +} + +/** +* Given that the underlying server data has updated, determine what, if anything, needs to be applied to the event cache. +* +* Possibilities +* +* 1. No write are shadowing. Events should be raised, the snap to be applied comes from the server data. +* +* 2. Some write is completely shadowing. No events to be raised. +* +* 3. Is partially shadowed. Events .. +* +* Either existingEventSnap or existingServerSnap must exist. +*/ +- (id ) calculateEventCacheAfterServerOverwriteAtPath:(FPath *)treePath childPath:(FPath *)childPath existingEventSnap:(id )existingEventSnap existingServerSnap:(id )existingServerSnap { + NSAssert(existingEventSnap != nil || existingServerSnap != nil, + @"Either existingEventSnap or existingServerSanp must exist."); + + FPath *path = [treePath child:childPath]; + if ([self.visibleWrites hasCompleteWriteAtPath:path]) { + // At this point we can probably guarantee that we're in case 2, meaning no events + // May need to check visibility while doing the findRootMostValueAndPath call + return nil; + } else { + // This could be more efficient if the serverNode + updates doesn't change the eventSnap + // However this is tricky to find out, since user updates don't necessary change the server + // snap, e.g. priority updates on empty nodes, or deep deletes. Another special case is if the server + // adds nodes, but doesn't change any existing writes. It is therefore not enough to + // only check if the updates change the serverNode. + // Maybe check if the merge tree contains these special cases and only do a full overwrite in that case? + FCompoundWrite *childMerge = [self.visibleWrites childCompoundWriteAtPath:path]; + if (childMerge.isEmpty) { + // We're not shadowing at all. Case 1 + return [existingServerSnap getChild:childPath]; + } else { + return [childMerge applyToNode:[existingServerSnap getChild:childPath]]; + } + } +} + +/** +* Returns a complete child for a given server snap after applying all user writes or nil if there is no complete child +* for this child key. +*/ +- (id) calculateCompleteChildAtPath:(FPath *)treePath childKey:(NSString *)childKey cache:(FCacheNode *)existingServerCache { + FPath *path = [treePath childFromString:childKey]; + id shadowingNode = [self.visibleWrites completeNodeAtPath:path]; + if (shadowingNode != nil) { + return shadowingNode; + } else { + if ([existingServerCache isCompleteForChild:childKey]) { + FCompoundWrite *childMerge = [self.visibleWrites childCompoundWriteAtPath:path]; + return [childMerge applyToNode:[existingServerCache.node getImmediateChild:childKey]]; + } else { + return nil; + } + } +} + +/** +* Returns a node if there is a complete overwrite for this path. More specifically, if there is a write at +* a higher path, this will return the child of that write relative to the write and this path. +* Returns null if there is no write at this path. +*/ +- (id) shadowingWriteAtPath:(FPath *)path { + return [self.visibleWrites completeNodeAtPath:path]; +} + +/** +* This method is used when processing child remove events on a query. If we can, we pull in children that were outside +* the window, but may now be in the window. +*/ +- (FNamedNode *)calculateNextNodeAfterPost:(FNamedNode *)post + atPath:(FPath *)treePath + completeServerData:(id)completeServerData + reverse:(BOOL)reverse + index:(id)index +{ + __block id toIterate; + FCompoundWrite *merge = [self.visibleWrites childCompoundWriteAtPath:treePath]; + id shadowingNode = [merge completeNodeAtPath:[FPath empty]]; + if (shadowingNode != nil) { + toIterate = shadowingNode; + } else if (completeServerData != nil) { + toIterate = [merge applyToNode:completeServerData]; + } else { + return nil; + } + + __block NSString *currentNextKey = nil; + __block id currentNextNode = nil; + [toIterate enumerateChildrenUsingBlock:^(NSString *key, id node, BOOL *stop) { + if ([index compareKey:key andNode:node toOtherKey:post.name andNode:post.node reverse:reverse] > NSOrderedSame && + (!currentNextKey || [index compareKey:key andNode:node toOtherKey:currentNextKey andNode:currentNextNode reverse:reverse] < NSOrderedSame)) { + currentNextKey = key; + currentNextNode = node; + } + }]; + + if (currentNextKey != nil) { + return [FNamedNode nodeWithName:currentNextKey node:currentNextNode]; + } else { + return nil; + } +} + +#pragma mark - +#pragma mark Private Methods + +- (BOOL) record:(FWriteRecord *)record containsPath:(FPath *)path { + if ([record isOverwrite]) { + return [record.path contains:path]; + } else { + __block BOOL contains = NO; + [record.merge enumerateWrites:^(FPath *childPath, id node, BOOL *stop) { + contains = [[record.path child:childPath] contains:path]; + *stop = contains; + }]; + return contains; + } +} + +/** +* Re-layer the writes and merges into a tree so we can efficiently calculate event snapshots +*/ +- (void) resetTree { + self.visibleWrites = [FWriteTree layerTreeFromWrites:self.allWrites filter:[FWriteTree defaultFilter] treeRoot:[FPath empty]]; + if ([self.allWrites count] > 0) { + FWriteRecord *lastRecord = self.allWrites[[self.allWrites count] - 1]; + self.lastWriteId = lastRecord.writeId; + } else { + self.lastWriteId = -1; + } +} + +/** +* The default filter used when constructing the tree. Keep everything that's visible. +*/ ++ (BOOL (^)(FWriteRecord *record)) defaultFilter { + static BOOL (^filter)(FWriteRecord *); + static dispatch_once_t filterToken; + dispatch_once(&filterToken, ^{ + filter = ^(FWriteRecord *record) { + return YES; + }; + }); + return filter; +} + +/** +* Static method. Given an array of WriteRecords, a filter for which ones to include, and a path, construct a merge +* at that path +* @return An FImmutableTree of ids. +*/ ++ (FCompoundWrite *) layerTreeFromWrites:(NSArray *)writes filter:(BOOL (^)(FWriteRecord *record))filter treeRoot:(FPath *)treeRoot { + __block FCompoundWrite *compoundWrite = [FCompoundWrite emptyWrite]; + [writes enumerateObjectsUsingBlock:^(FWriteRecord *record, NSUInteger idx, BOOL *stop) { + // Theory, a later set will either: + // a) abort a relevant transaction, so no need to worry about excluding it from calculating that transaction + // b) not be relevant to a transaction (separate branch), so again will not affect the data for that transaction + if (filter(record)) { + FPath *writePath = record.path; + if ([record isOverwrite]) { + if ([treeRoot contains:writePath]) { + FPath *relativePath = [FPath relativePathFrom:treeRoot to:writePath]; + compoundWrite = [compoundWrite addWrite:record.overwrite atPath:relativePath]; + } else if ([writePath contains:treeRoot]) { + id child = [record.overwrite getChild:[FPath relativePathFrom:writePath to:treeRoot]]; + compoundWrite = [compoundWrite addWrite:child atPath:[FPath empty]]; + } else { + // There is no overlap between root path and write path, ignore write + } + } else { + if ([treeRoot contains:writePath]) { + FPath *relativePath = [FPath relativePathFrom:treeRoot to:writePath]; + compoundWrite = [compoundWrite addCompoundWrite:record.merge atPath:relativePath]; + } else if ([writePath contains:treeRoot]) { + FPath *relativePath = [FPath relativePathFrom:writePath to:treeRoot]; + if (relativePath.isEmpty) { + compoundWrite = [compoundWrite addCompoundWrite:record.merge atPath:[FPath empty]]; + } else { + id child = [record.merge completeNodeAtPath:relativePath]; + if (child != nil) { + // There exists a child in this node that matches the root path + id deepNode = [child getChild:[relativePath popFront]]; + compoundWrite = [compoundWrite addWrite:deepNode atPath:[FPath empty]]; + } + } + } else { + // There is no overlap between root path and write path, ignore write + } + } + } + }]; + return compoundWrite; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteTreeRef.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteTreeRef.h new file mode 100644 index 0000000..791dd26 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteTreeRef.h @@ -0,0 +1,51 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@protocol FNode; +@class FChildrenNode; +@class FPath; +@class FNamedNode; +@class FWriteRecord; +@class FWriteTree; +@protocol FIndex; +@class FCacheNode; + +@interface FWriteTreeRef : NSObject + +- (id) initWithPath:(FPath *)aPath writeTree:(FWriteTree *)tree; + +- (id ) calculateCompleteEventCacheWithCompleteServerCache:(id )completeServerCache; + +- (FChildrenNode *) calculateCompleteEventChildrenWithCompleteServerChildren:(FChildrenNode *)completeServerChildren; + +- (id) calculateEventCacheAfterServerOverwriteWithChildPath:(FPath *)childPath + existingEventSnap:(id)existingEventSnap + existingServerSnap:(id)existingServerSnap; + +- (id) shadowingWriteAtPath:(FPath *)path; + +- (FNamedNode *) calculateNextNodeAfterPost:(FNamedNode *)post + completeServerData:(id)completeServerData + reverse:(BOOL)reverse + index:(id)index; + +- (id) calculateCompleteChild:(NSString *)childKey cache:(FCacheNode *)existingServerCache; + +- (FWriteTreeRef *) childWriteTreeRef:(NSString *)childKey; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteTreeRef.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteTreeRef.m new file mode 100644 index 0000000..392369b --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/FWriteTreeRef.m @@ -0,0 +1,133 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FWriteTreeRef.h" +#import "FPath.h" +#import "FNode.h" +#import "FWriteTree.h" +#import "FChildrenNode.h" +#import "FNamedNode.h" +#import "FWriteRecord.h" +#import "FIndex.h" +#import "FCacheNode.h" + +@interface FWriteTreeRef () +/** +* The path to this particular FWriteTreeRef. Used for calling methods on writeTree while exposing a simpler interface +* to callers. +*/ +@property (nonatomic, strong) FPath *path; +/** +* A reference to the actual tree of the write data. All methods are pass-through to the tree, but with the appropriate +* path prefixed. +* +* This lets us make cheap references to points in the tree for sync points without having to copy and maintain all of +* the data. +*/ +@property (nonatomic, strong) FWriteTree *writeTree; +@end + +/** +* A FWriteTreeRef wraps a FWriteTree and a FPath, for convenient access to a particular subtree. All the methods just +* proxy to the underlying FWriteTree. +*/ +@implementation FWriteTreeRef +- (id) initWithPath:(FPath *)aPath writeTree:(FWriteTree *)tree { + self = [super init]; + if (self) { + self.path = aPath; + self.writeTree = tree; + } + return self; +} + +/** +* @return If possible, returns a complete event cache, using the underlying server data if possible. In addition, can +* be used to get a cache that includes hidden writes, and excludes arbitrary writes. Note that customizing the returned +* node can lead to a more expensive calculation. +*/ +- (id ) calculateCompleteEventCacheWithCompleteServerCache:(id)completeServerCache { + return [self.writeTree calculateCompleteEventCacheAtPath:self.path completeServerCache:completeServerCache excludeWriteIds:nil includeHiddenWrites:NO]; +} + +/** +* @return If possible, returns a children node containing all of the complete children we have data for. The returned +* data is a mix of the given server data and write data. +*/ +- (FChildrenNode *) calculateCompleteEventChildrenWithCompleteServerChildren:(id)completeServerChildren { + return [self.writeTree calculateCompleteEventChildrenAtPath:self.path completeServerChildren:completeServerChildren]; +} + +/** +* Given that either the underlying server data has updated or the outstanding writes have been updating, determine what, +* if anything, needs to be applied to the event cache. +* +* Possibilities: +* +* 1. No writes are shadowing. Events should be raised, the snap to be applied comes from the server data. +* +* 2. Some writes are completly shadowing. No events to be raised. +* +* 3. Is partially shadowed. Events should be raised. +* +* Either existingEventSnap or existingServerSnap must exist, this is validated via an assert. +*/ +- (id) calculateEventCacheAfterServerOverwriteWithChildPath:(FPath *)childPath existingEventSnap:(id )existingEventSnap existingServerSnap:(id )existingServerSnap { + return [self.writeTree calculateEventCacheAfterServerOverwriteAtPath:self.path childPath:childPath existingEventSnap:existingEventSnap existingServerSnap:existingServerSnap]; +} + +/** +* Returns a node if there is a complete overwrite for this path. More specifically, if there is a write at a higher +* path, this will return the child of that write relative to the write and this path. +* Returns nil if there is no write at this path. +*/ +- (id) shadowingWriteAtPath:(FPath *)path { + return [self.writeTree shadowingWriteAtPath:[self.path child:path]]; +} + +/** +* This method is used when processing child remove events on a query. If we can, we pull in children that are outside +* the window, but may now be in the window. +*/ +- (FNamedNode *)calculateNextNodeAfterPost:(FNamedNode *)post + completeServerData:(id)completeServerData + reverse:(BOOL)reverse + index:(id)index +{ + return [self.writeTree calculateNextNodeAfterPost:post + atPath:self.path + completeServerData:completeServerData + reverse:reverse + index:index]; +} + +/** +* Returns a complete child for a given server snap after applying all user writes or nil if there is no complete child +* for this child key. +*/ +- (id) calculateCompleteChild:(NSString *)childKey cache:(FCacheNode *)existingServerCache { + return [self.writeTree calculateCompleteChildAtPath:self.path childKey:childKey cache:existingServerCache]; +} + +/** +* @return a WriteTreeref for a child. +*/ +- (FWriteTreeRef *) childWriteTreeRef:(NSString *)childKey { + return [[FWriteTreeRef alloc] initWithPath:[self.path childFromString:childKey] writeTree:self.writeTree]; +} + + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FAckUserWrite.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FAckUserWrite.h new file mode 100644 index 0000000..a337996 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FAckUserWrite.h @@ -0,0 +1,35 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FOperation.h" + +@class FPath; +@class FOperationSource; +@class FImmutableTree; + + +@interface FAckUserWrite : NSObject + +- initWithPath:(FPath *)operationPath affectedTree:(FImmutableTree *)affectedTree revert:(BOOL)shouldRevert; + +@property (nonatomic, strong, readonly) FOperationSource *source; +@property (nonatomic, readonly) FOperationType type; +@property (nonatomic, strong, readonly) FPath *path; +// A FImmutableTree, containing @YES for each affected path. Affected paths can't overlap. +@property (nonatomic, strong, readonly) FImmutableTree *affectedTree; +@property (nonatomic, readonly) BOOL revert; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FAckUserWrite.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FAckUserWrite.m new file mode 100644 index 0000000..f81e7f5 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FAckUserWrite.m @@ -0,0 +1,55 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FAckUserWrite.h" +#import "FPath.h" +#import "FOperationSource.h" +#import "FImmutableTree.h" + + +@implementation FAckUserWrite + +- (id) initWithPath:(FPath *)operationPath affectedTree:(FImmutableTree *)tree revert:(BOOL)shouldRevert { + self = [super init]; + if (self) { + self->_source = [FOperationSource userInstance]; + self->_type = FOperationTypeAckUserWrite; + self->_path = operationPath; + self->_affectedTree = tree; + self->_revert = shouldRevert; + } + return self; +} + +- (FAckUserWrite *) operationForChild:(NSString *)childKey { + if (![self.path isEmpty]) { + NSAssert([self.path.getFront isEqualToString:childKey], @"operationForChild called for unrelated child."); + return [[FAckUserWrite alloc] initWithPath:[self.path popFront] affectedTree:self.affectedTree revert:self.revert]; + } else if (self.affectedTree.value != nil) { + NSAssert(self.affectedTree.children.isEmpty, @"affectedTree should not have overlapping affected paths."); + // All child locations are affected as well; just return same operation. + return self; + } else { + FImmutableTree *childTree = [self.affectedTree subtreeAtPath:[[FPath alloc] initWith:childKey]]; + return [[FAckUserWrite alloc] initWithPath:[FPath empty] affectedTree:childTree revert:self.revert]; + } +} + +- (NSString *) description { + return [NSString stringWithFormat:@"FAckUserWrite { path=%@, revert=%d, affectedTree=%@ }", self.path, self.revert, self.affectedTree]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FMerge.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FMerge.h new file mode 100644 index 0000000..4cab613 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FMerge.h @@ -0,0 +1,30 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FOperation.h" + +@class FCompoundWrite; + +@interface FMerge : NSObject + +- (id) initWithSource:(FOperationSource *)aSource path:(FPath *)aPath children:(FCompoundWrite *)children; + +@property (nonatomic, strong, readonly) FOperationSource *source; +@property (nonatomic, readonly) FOperationType type; +@property (nonatomic, strong, readonly) FPath *path; +@property (nonatomic, strong, readonly) FCompoundWrite *children; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FMerge.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FMerge.m new file mode 100644 index 0000000..8e6d924 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FMerge.m @@ -0,0 +1,71 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FMerge.h" +#import "FOperationSource.h" +#import "FPath.h" +#import "FNode.h" +#import "FOverwrite.h" +#import "FCompoundWrite.h" + +@interface FMerge () +@property (nonatomic, strong, readwrite) FOperationSource *source; +@property (nonatomic, readwrite) FOperationType type; +@property (nonatomic, strong, readwrite) FPath *path; +@property (nonatomic, strong) FCompoundWrite *children; +@end + +@implementation FMerge + +@synthesize source; +@synthesize type; +@synthesize path; +@synthesize children; + +- (id) initWithSource:(FOperationSource *)aSource path:(FPath *)aPath children:(FCompoundWrite *)someChildren { + self = [super init]; + if (self) { + self.source = aSource; + self.type = FOperationTypeMerge; + self.path = aPath; + self.children = someChildren; + } + return self; +} + +- (id) operationForChild:(NSString *)childKey { + if ([self.path isEmpty]) { + FCompoundWrite *childTree = [self.children childCompoundWriteAtPath:[[FPath alloc] initWith:childKey]]; + if (childTree.isEmpty) { + return nil; + } else if (childTree.rootWrite != nil) { + // We have a snapshot for the child in question. This becomes an overwrite of the child. + return [[FOverwrite alloc] initWithSource:self.source path:[FPath empty] snap:childTree.rootWrite]; + } else { + // This is a merge at a deeper level + return [[FMerge alloc] initWithSource:self.source path:[FPath empty] children:childTree]; + } + } else { + NSAssert([self.path.getFront isEqualToString:childKey], @"Can't get a merge for a child not on the path of the operation"); + return [[FMerge alloc] initWithSource:self.source path:[self.path popFront] children:self.children]; + } +} + +- (NSString *) description { + return [NSString stringWithFormat:@"FMerge { path=%@, soruce=%@ children=%@}", self.path, self.source, self.children]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOperation.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOperation.h new file mode 100644 index 0000000..2bbbbd2 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOperation.h @@ -0,0 +1,34 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FOperationSource; +@class FPath; + +typedef NS_ENUM(NSInteger, FOperationType) { + FOperationTypeOverwrite = 0, + FOperationTypeMerge = 1, + FOperationTypeAckUserWrite = 2, + FOperationTypeListenComplete = 3 +}; + +@protocol FOperation +@property (nonatomic, strong, readonly) FOperationSource *source; +@property (nonatomic, readonly) FOperationType type; +@property (nonatomic, strong, readonly) FPath *path; +- (id) operationForChild:(NSString *)childKey; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOperationSource.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOperationSource.h new file mode 100644 index 0000000..a069c2f --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOperationSource.h @@ -0,0 +1,34 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FQueryParams; + +@interface FOperationSource : NSObject + +@property (nonatomic, readonly) BOOL fromUser; +@property (nonatomic, readonly) BOOL fromServer; +@property (nonatomic, readonly) BOOL isTagged; +@property (nonatomic, strong, readonly) FQueryParams *queryParams; + +- initWithFromUser:(BOOL)isFromUser fromServer:(BOOL)isFromServer queryParams:(FQueryParams *)params tagged:(BOOL)isTagged; + ++ (FOperationSource *) userInstance; ++ (FOperationSource *) serverInstance; ++ (FOperationSource *) forServerTaggedQuery:(FQueryParams *)params; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOperationSource.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOperationSource.m new file mode 100644 index 0000000..9a34a2e --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOperationSource.m @@ -0,0 +1,73 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FOperationSource.h" +#import "FPath.h" +#import "FQueryParams.h" + +@interface FOperationSource () +@property (nonatomic, readwrite) BOOL fromUser; +@property (nonatomic, readwrite) BOOL fromServer; +@property (nonatomic, readwrite) BOOL isTagged; +@property (nonatomic, strong, readwrite) FQueryParams *queryParams; +@end + +@implementation FOperationSource + +@synthesize fromUser; +@synthesize fromServer; +@synthesize queryParams; + +- (id) initWithFromUser:(BOOL)isFromUser fromServer:(BOOL)isFromServer queryParams:(FQueryParams *)params tagged:(BOOL)tagged { + self = [super init]; + if (self) { + self.fromUser = isFromUser; + self.fromServer = isFromServer; + self.queryParams = params; + self.isTagged = tagged; + } + return self; +} + ++ (FOperationSource *) userInstance { + static FOperationSource *user = nil; + static dispatch_once_t userToken; + dispatch_once(&userToken, ^{ + user = [[FOperationSource alloc] initWithFromUser:YES fromServer:NO queryParams:nil tagged:NO]; + }); + return user; +} + ++ (FOperationSource *) serverInstance { + static FOperationSource *server = nil; + static dispatch_once_t serverToken; + dispatch_once(&serverToken, ^{ + server = [[FOperationSource alloc] initWithFromUser:NO fromServer:YES queryParams:nil tagged:NO]; + }); + return server; +} + ++ (FOperationSource *) forServerTaggedQuery:(FQueryParams *)params { + return [[FOperationSource alloc] initWithFromUser:NO fromServer:YES queryParams:params tagged:YES]; +} + +- (NSString *) description { + return [NSString stringWithFormat:@"FOperationSource { fromUser=%d, fromServer=%d, queryId=%@, tagged=%d }", + self.fromUser, self.fromServer, self.queryParams, self.isTagged]; +} + + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOverwrite.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOverwrite.h new file mode 100644 index 0000000..e950bed --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOverwrite.h @@ -0,0 +1,30 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FOperation.h" + +@protocol FNode; + +@interface FOverwrite : NSObject + +- (id) initWithSource:(FOperationSource *)aSource path:(FPath *)aPath snap:(id)aSnap; + +@property (nonatomic, strong, readonly) FOperationSource *source; +@property (nonatomic, readonly) FOperationType type; +@property (nonatomic, strong, readonly) FPath *path; +@property (nonatomic, strong, readonly) id snap; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOverwrite.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOverwrite.m new file mode 100644 index 0000000..b72d31a --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Operation/FOverwrite.m @@ -0,0 +1,62 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FOverwrite.h" +#import "FNode.h" +#import "FOperationSource.h" + +@interface FOverwrite () +@property (nonatomic, strong, readwrite) FOperationSource *source; +@property (nonatomic, readwrite) FOperationType type; +@property (nonatomic, strong, readwrite) FPath *path; +@property (nonatomic, strong) id snap; +@end + +@implementation FOverwrite + +@synthesize source; +@synthesize type; +@synthesize path; +@synthesize snap; + +- (id) initWithSource:(FOperationSource *)aSource path:(FPath *)aPath snap:(id )aSnap { + self = [super init]; + if (self) { + self.source = aSource; + self.type = FOperationTypeOverwrite; + self.path = aPath; + self.snap = aSnap; + } + return self; +} + +- (FOverwrite *) operationForChild:(NSString *)childKey { + if ([self.path isEmpty]) { + return [[FOverwrite alloc] initWithSource:self.source + path:[FPath empty] + snap:[self.snap getImmediateChild:childKey]]; + } else { + return [[FOverwrite alloc] initWithSource:self.source + path:[self.path popFront] + snap:self.snap]; + } +} + +- (NSString *) description { + return [NSString stringWithFormat:@"FOverwrite { path=%@, source=%@, snapshot=%@ }", self.path, self.source, self.snap]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FIRRetryHelper.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FIRRetryHelper.h new file mode 100644 index 0000000..f83aad9 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FIRRetryHelper.h @@ -0,0 +1,33 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@interface FIRRetryHelper : NSObject + +- (instancetype) initWithDispatchQueue:(dispatch_queue_t)dispatchQueue + minRetryDelayAfterFailure:(NSTimeInterval)minRetryDelayAfterFailure + maxRetryDelay:(NSTimeInterval)maxRetryDelay + retryExponent:(double)retryExponent + jitterFactor:(double)jitterFactor; + +- (void) retry:(void (^)(void))block; + +- (void) cancel; + +- (void) signalSuccess; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FIRRetryHelper.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FIRRetryHelper.m new file mode 100644 index 0000000..fca02f5 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FIRRetryHelper.m @@ -0,0 +1,140 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FIRRetryHelper.h" +#import "FUtilities.h" + +@interface FIRRetryHelperTask : NSObject + +@property (nonatomic, strong) void (^block)(void); + +@end + +@implementation FIRRetryHelperTask + +- (instancetype) initWithBlock:(void (^)(void))block { + self = [super init]; + if (self != nil) { + self->_block = [block copy]; + } + return self; +} + +- (BOOL) isCanceled { + return self.block == nil; +} + +- (void) cancel { + self.block = nil; +} + +- (void) execute { + if (self.block) { + self.block(); + } +} + +@end + + + +@interface FIRRetryHelper () + +@property (nonatomic, strong) dispatch_queue_t dispatchQueue; +@property (nonatomic) NSTimeInterval minRetryDelayAfterFailure; +@property (nonatomic) NSTimeInterval maxRetryDelay; +@property (nonatomic) double retryExponent; +@property (nonatomic) double jitterFactor; + +@property (nonatomic) BOOL lastWasSuccess; +@property (nonatomic) NSTimeInterval currentRetryDelay; + +@property (nonatomic, strong) FIRRetryHelperTask *scheduledRetry; + +@end + +@implementation FIRRetryHelper + +- (instancetype) initWithDispatchQueue:(dispatch_queue_t)dispatchQueue + minRetryDelayAfterFailure:(NSTimeInterval)minRetryDelayAfterFailure + maxRetryDelay:(NSTimeInterval)maxRetryDelay + retryExponent:(double)retryExponent + jitterFactor:(double)jitterFactor { + self = [super init]; + if (self != nil) { + self->_dispatchQueue = dispatchQueue; + self->_minRetryDelayAfterFailure = minRetryDelayAfterFailure; + self->_maxRetryDelay = maxRetryDelay; + self->_retryExponent = retryExponent; + self->_jitterFactor = jitterFactor; + self->_lastWasSuccess = YES; + } + return self; +} + +- (void) retry:(void (^)(void))block { + if (self.scheduledRetry != nil) { + FFLog(@"I-RDB054001", @"Canceling existing retry attempt"); + [self.scheduledRetry cancel]; + self.scheduledRetry = nil; + } + + NSTimeInterval delay; + if (self.lastWasSuccess) { + delay = 0; + } else { + if (self.currentRetryDelay == 0) { + self.currentRetryDelay = self.minRetryDelayAfterFailure; + } else { + NSTimeInterval newDelay = (self.currentRetryDelay * self.retryExponent); + self.currentRetryDelay = MIN(newDelay, self.maxRetryDelay); + } + + delay = ((1 - self.jitterFactor) * self.currentRetryDelay) + + (self.jitterFactor * self.currentRetryDelay * [FUtilities randomDouble]); + FFLog(@"I-RDB054002", @"Scheduling retry in %fs", delay); + + } + self.lastWasSuccess = NO; + FIRRetryHelperTask *task = [[FIRRetryHelperTask alloc] initWithBlock:block]; + self.scheduledRetry = task; + dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, (long long)(delay * NSEC_PER_SEC)); + dispatch_after(popTime, self.dispatchQueue, ^{ + if (![task isCanceled]) { + self.scheduledRetry = nil; + [task execute]; + } + }); +} + +- (void) signalSuccess { + self.lastWasSuccess = YES; + self.currentRetryDelay = 0; +} + +- (void) cancel { + if (self.scheduledRetry != nil) { + FFLog(@"I-RDB054003", @"Canceling existing retry attempt"); + [self.scheduledRetry cancel]; + self.scheduledRetry = nil; + } else { + FFLog(@"I-RDB054004", @"No existing retry attempt to cancel"); + } + self.currentRetryDelay = 0; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FImmutableTree.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FImmutableTree.h new file mode 100644 index 0000000..005a9f2 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FImmutableTree.h @@ -0,0 +1,51 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FImmutableSortedDictionary.h" +#import "FPath.h" +#import "FTuplePathValue.h" + +@interface FImmutableTree : NSObject + +- (id) initWithValue:(id)aValue; +- (id) initWithValue:(id)aValue children:(FImmutableSortedDictionary *)childrenMap; + ++ (FImmutableTree *) empty; +- (BOOL) isEmpty; + +- (FTuplePathValue *) findRootMostMatchingPath:(FPath *)relativePath predicate:(BOOL (^)(id))predicate; +- (FTuplePathValue *) findRootMostValueAndPath:(FPath *)relativePath; +- (FImmutableTree *) subtreeAtPath:(FPath *)relativePath; +- (FImmutableTree *) setValue:(id)newValue atPath:(FPath *)relativePath; +- (FImmutableTree *) removeValueAtPath:(FPath *)relativePath; +- (id) valueAtPath:(FPath *)relativePath; +- (id) rootMostValueOnPath:(FPath *)path; +- (id) rootMostValueOnPath:(FPath *)path matching:(BOOL (^)(id))predicate; +- (id) leafMostValueOnPath:(FPath *)path; +- (id) leafMostValueOnPath:(FPath *)relativePath matching:(BOOL (^)(id))predicate; +- (BOOL) containsValueMatching:(BOOL (^)(id))predicate; +- (FImmutableTree *) setTree:(FImmutableTree *)newTree atPath:(FPath *)relativePath; +- (id) foldWithBlock:(id (^)(FPath *path, id value, NSDictionary *foldedChildren))block; +- (id) findOnPath:(FPath *)path andApplyBlock:(id (^)(FPath *path, id value))block; +- (FPath *) forEachOnPath:(FPath *)path whileBlock:(BOOL (^)(FPath *path, id value))block; +- (FImmutableTree *) forEachOnPath:(FPath *)path performBlock:(void (^)(FPath *path, id value))block; +- (void) forEach:(void (^)(FPath *path, id value))block; +- (void) forEachChild:(void (^)(NSString *childKey, id childValue))block; + +@property (nonatomic, strong, readonly) id value; +@property (nonatomic, strong, readonly) FImmutableSortedDictionary *children; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FImmutableTree.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FImmutableTree.m new file mode 100644 index 0000000..57bf74d --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FImmutableTree.m @@ -0,0 +1,421 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FImmutableTree.h" +#import "FImmutableSortedDictionary.h" +#import "FPath.h" +#import "FUtilities.h" + +@interface FImmutableTree () +@property (nonatomic, strong, readwrite) id value; +/** +* Maps NSString -> FImmutableTree, where is type of value. +*/ +@property (nonatomic, strong, readwrite) FImmutableSortedDictionary *children; +@end + +@implementation FImmutableTree +@synthesize value; +@synthesize children; + +- (id) initWithValue:(id)aValue { + self = [super init]; + if (self) { + self.value = aValue; + self.children = [FImmutableTree emptyChildren]; + } + return self; +} + +- (id) initWithValue:(id)aValue children:(FImmutableSortedDictionary *)childrenMap { + self = [super init]; + if (self) { + self.value = aValue; + self.children = childrenMap; + } + return self; +} + ++ (FImmutableSortedDictionary *) emptyChildren { + static dispatch_once_t emptyChildrenToken; + static FImmutableSortedDictionary *emptyChildren; + dispatch_once(&emptyChildrenToken, ^{ + emptyChildren = [FImmutableSortedDictionary dictionaryWithComparator:[FUtilities stringComparator]]; + }); + return emptyChildren; +} + ++ (FImmutableTree *) empty { + static dispatch_once_t emptyImmutableTreeToken; + static FImmutableTree *emptyTree = nil; + dispatch_once(&emptyImmutableTreeToken, ^{ + emptyTree = [[FImmutableTree alloc] initWithValue:nil]; + }); + return emptyTree; +} + +- (BOOL) isEmpty { + return self.value == nil && [self.children isEmpty]; +} + +/** +* Given a path and a predicate, return the first node and the path to that node where the predicate returns true +* // TODO Do a perf test. If we're creating a bunch of FTuplePathValue objects on the way back out, it may be better to pass down a pathSoFar FPath +*/ +- (FTuplePathValue *) findRootMostMatchingPath:(FPath *)relativePath predicate:(BOOL (^)(id value))predicate { + if (self.value != nil && predicate(self.value)) { + return [[FTuplePathValue alloc] initWithPath:[FPath empty] value:self.value]; + } else { + if ([relativePath isEmpty]) { + return nil; + } else { + NSString *front = [relativePath getFront]; + FImmutableTree *child = [self.children get:front]; + if (child != nil) { + FTuplePathValue *childExistingPathAndValue = [child findRootMostMatchingPath:[relativePath popFront] predicate:predicate]; + if (childExistingPathAndValue != nil) { + FPath *fullPath = [[[FPath alloc] initWith:front] child:childExistingPathAndValue.path]; + return [[FTuplePathValue alloc] initWithPath:fullPath value:childExistingPathAndValue.value]; + } else { + return nil; + } + } else { + // No child matching path + return nil; + } + } + } +} + +/** +* Find, if it exists, the shortest subpath of the given path that points a defined value in the tree +*/ +- (FTuplePathValue *) findRootMostValueAndPath:(FPath *)relativePath { + return [self findRootMostMatchingPath:relativePath predicate:^BOOL(__unsafe_unretained id value){ + return YES; + }]; +} + +- (id) rootMostValueOnPath:(FPath *)path { + return [self rootMostValueOnPath:path matching:^BOOL(id value) { + return YES; + }]; +} + +- (id) rootMostValueOnPath:(FPath *)path matching:(BOOL (^)(id))predicate { + if (self.value != nil && predicate(self.value)) { + return self.value; + } else if (path.isEmpty) { + return nil; + } else { + return [[self.children get:path.getFront] rootMostValueOnPath:[path popFront] matching:predicate]; + } +} + +- (id) leafMostValueOnPath:(FPath *)path { + return [self leafMostValueOnPath:path matching:^BOOL(id value) { + return YES; + }]; +} + +- (id) leafMostValueOnPath:(FPath *)relativePath matching:(BOOL (^)(id))predicate { + __block id currentValue = self.value; + __block FImmutableTree *currentTree = self; + [relativePath enumerateComponentsUsingBlock:^(NSString *key, BOOL *stop) { + currentTree = [currentTree.children get:key]; + if (currentTree == nil) { + *stop = YES; + } else { + id treeValue = currentTree.value; + if (treeValue != nil && predicate(treeValue)) { + currentValue = treeValue; + } + } + }]; + return currentValue; +} + +- (BOOL) containsValueMatching:(BOOL (^)(id))predicate { + if (self.value != nil && predicate(self.value)) { + return YES; + } else { + __block BOOL found = NO; + [self.children enumerateKeysAndObjectsUsingBlock:^(NSString *key, FImmutableTree *subtree, BOOL *stop) { + found = [subtree containsValueMatching:predicate]; + if (found) *stop = YES; + }]; + return found; + } +} + +- (FImmutableTree *) subtreeAtPath:(FPath *)relativePath { + if ([relativePath isEmpty]) { + return self; + } else { + NSString *front = [relativePath getFront]; + FImmutableTree *childTree = [self.children get:front]; + if (childTree != nil) { + return [childTree subtreeAtPath:[relativePath popFront]]; + } else { + return [FImmutableTree empty]; + } + } +} + +/** +* Sets a value at the specified path +*/ +- (FImmutableTree *) setValue:(id)newValue atPath:(FPath *)relativePath { + if ([relativePath isEmpty]) { + return [[FImmutableTree alloc] initWithValue:newValue children:self.children]; + } else { + NSString *front = [relativePath getFront]; + FImmutableTree *child = [self.children get:front]; + if (child == nil) { + child = [FImmutableTree empty]; + } + FImmutableTree *newChild = [child setValue:newValue atPath:[relativePath popFront]]; + FImmutableSortedDictionary *newChildren = [self.children insertKey:front withValue:newChild]; + return [[FImmutableTree alloc] initWithValue:self.value children:newChildren]; + } +} + +/** +* Remove the value at the specified path +*/ +- (FImmutableTree *) removeValueAtPath:(FPath *)relativePath { + if ([relativePath isEmpty]) { + if ([self.children isEmpty]) { + return [FImmutableTree empty]; + } else { + return [[FImmutableTree alloc] initWithValue:nil children:self.children]; + } + } else { + NSString *front = [relativePath getFront]; + FImmutableTree *child = [self.children get:front]; + if (child) { + FImmutableTree *newChild = [child removeValueAtPath:[relativePath popFront]]; + FImmutableSortedDictionary *newChildren; + if ([newChild isEmpty]) { + newChildren = [self.children removeKey:front]; + } else { + newChildren = [self.children insertKey:front withValue:newChild]; + } + if (self.value == nil && [newChildren isEmpty]) { + return [FImmutableTree empty]; + } else { + return [[FImmutableTree alloc] initWithValue:self.value children:newChildren]; + } + } else { + return self; + } + } +} + +/** +* Gets a value from the tree +*/ +- (id) valueAtPath:(FPath *)relativePath { + if ([relativePath isEmpty]) { + return self.value; + } else { + NSString *front = [relativePath getFront]; + FImmutableTree *child = [self.children get:front]; + if (child) { + return [child valueAtPath:[relativePath popFront]]; + } else { + return nil; + } + } +} + +/** +* Replaces the subtree at the specified path with the given new tree +*/ +- (FImmutableTree *) setTree:(FImmutableTree *)newTree atPath:(FPath *)relativePath { + if ([relativePath isEmpty]) { + return newTree; + } else { + NSString *front = [relativePath getFront]; + FImmutableTree *child = [self.children get:front]; + if (child == nil) { + child = [FImmutableTree empty]; + } + FImmutableTree *newChild = [child setTree:newTree atPath:[relativePath popFront]]; + FImmutableSortedDictionary *newChildren; + if ([newChild isEmpty]) { + newChildren = [self.children removeKey:front]; + } else { + newChildren = [self.children insertKey:front withValue:newChild]; + } + return [[FImmutableTree alloc] initWithValue:self.value children:newChildren]; + } +} + +/** +* Performs a depth first fold on this tree. Transforms a tree into a single value, given a function that operates on +* the path to a node, an optional current value, and a map of the child names to folded subtrees +*/ +- (id) foldWithBlock:(id (^)(FPath *path, id value, NSDictionary *foldedChildren))block { + return [self foldWithPathSoFar:[FPath empty] withBlock:block]; +} + +/** +* Recursive helper for public facing foldWithBlock: method +*/ +- (id) foldWithPathSoFar:(FPath *)pathSoFar withBlock:(id (^)(FPath *path, id value, NSDictionary *foldedChildren))block { + __block NSMutableDictionary *accum = [[NSMutableDictionary alloc] init]; + [self.children enumerateKeysAndObjectsUsingBlock:^(NSString *childKey, FImmutableTree *childTree, BOOL *stop) { + accum[childKey] = [childTree foldWithPathSoFar:[pathSoFar childFromString:childKey] withBlock:block]; + }]; + return block(pathSoFar, self.value, accum); +} + +/** +* Find the first matching value on the given path. Return the result of applying block to it. +*/ +- (id) findOnPath:(FPath *)path andApplyBlock:(id (^)(FPath *path, id value))block { + return [self findOnPath:path pathSoFar:[FPath empty] andApplyBlock:block]; +} + +- (id) findOnPath:(FPath *)pathToFollow pathSoFar:(FPath *)pathSoFar andApplyBlock:(id (^)(FPath *path, id value))block { + id result = self.value ? block(pathSoFar, self.value) : nil; + if (result != nil) { + return result; + } else { + if ([pathToFollow isEmpty]) { + return nil; + } else { + NSString *front = [pathToFollow getFront]; + FImmutableTree *nextChild = [self.children get:front]; + if (nextChild != nil) { + return [nextChild findOnPath:[pathToFollow popFront] pathSoFar:[pathSoFar childFromString:front] andApplyBlock:block]; + } else { + return nil; + } + } + } +} +/** +* Call the block on each value along the path for as long as that function returns true +* @return The path to the deepest location inspected +*/ +- (FPath *) forEachOnPath:(FPath *)path whileBlock:(BOOL (^)(FPath *, id))block { + return [self forEachOnPath:path pathSoFar:[FPath empty] whileBlock:block]; +} + +- (FPath *) forEachOnPath:(FPath *)pathToFollow pathSoFar:(FPath *)pathSoFar whileBlock:(BOOL (^)(FPath *, id))block { + if ([pathToFollow isEmpty]) { + if (self.value) { + block(pathSoFar, self.value); + } + return pathSoFar; + } else { + BOOL shouldContinue = YES; + if (self.value) { + shouldContinue = block(pathSoFar, self.value); + } + if (shouldContinue) { + NSString *front = [pathToFollow getFront]; + FImmutableTree *nextChild = [self.children get:front]; + if (nextChild) { + return [nextChild forEachOnPath:[pathToFollow popFront] pathSoFar:[pathSoFar childFromString:front] whileBlock:block]; + } else { + return pathSoFar; + } + } else { + return pathSoFar; + } + } +} + +- (FImmutableTree *) forEachOnPath:(FPath *)path performBlock:(void (^)(FPath *path, id value))block { + return [self forEachOnPath:path pathSoFar:[FPath empty] performBlock:block]; +} + +- (FImmutableTree *) forEachOnPath:(FPath *)pathToFollow pathSoFar:(FPath *)pathSoFar performBlock:(void (^)(FPath *path, id value))block { + if ([pathToFollow isEmpty]) { + return self; + } else { + if (self.value) { + block(pathSoFar, self.value); + } + NSString *front = [pathToFollow getFront]; + FImmutableTree *nextChild = [self.children get:front]; + if (nextChild) { + return [nextChild forEachOnPath:[pathToFollow popFront] pathSoFar:[pathSoFar childFromString:front] performBlock:block]; + } else { + return [FImmutableTree empty]; + } + } +} +/** +* Calls the given block for each node in the tree that has a value. Called in depth-first order +*/ +- (void) forEach:(void (^)(FPath *path, id value))block { + [self forEachPathSoFar:[FPath empty] withBlock:block]; +} + +- (void) forEachPathSoFar:(FPath *)pathSoFar withBlock:(void (^)(FPath *path, id value))block { + [self.children enumerateKeysAndObjectsUsingBlock:^(NSString *childKey, FImmutableTree *childTree, BOOL *stop) { + [childTree forEachPathSoFar:[pathSoFar childFromString:childKey] withBlock:block]; + }]; + if (self.value) { + block(pathSoFar, self.value); + } +} + +- (void) forEachChild:(void (^)(NSString *childKey, id childValue))block { + [self.children enumerateKeysAndObjectsUsingBlock:^(NSString *childKey, FImmutableTree *childTree, BOOL *stop) { + if (childTree.value) { + block(childKey, childTree.value); + } + }]; +} + +- (BOOL)isEqual:(id)object { + if (![object isKindOfClass:[FImmutableTree class]]) { + return NO; + } + FImmutableTree *other = (FImmutableTree *)object; + return (self.value == other.value || [self.value isEqual:other.value]) && [self.children isEqual:other.children]; +} + +- (NSUInteger)hash { + return self.children.hash * 31 + [self.value hash]; +} + +- (NSString *) description { + NSMutableString *string = [[NSMutableString alloc] init]; + [string appendString:@"FImmutableTree { value="]; + [string appendString:(self.value ? [self.value description] : @"")]; + [string appendString:@", children={"]; + [self.children enumerateKeysAndObjectsUsingBlock:^(NSString *childKey, FImmutableTree *childTree, BOOL *stop) { + [string appendString:@" "]; + [string appendString:childKey]; + [string appendString:@"="]; + [string appendString:[childTree.value description]]; + }]; + [string appendString:@" } }"]; + return [NSString stringWithString:string]; +} + +- (NSString *) debugDescription { + return [self description]; +} + + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FPath.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FPath.h new file mode 100644 index 0000000..71a7167 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FPath.h @@ -0,0 +1,45 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@interface FPath : NSObject + ++ (FPath *) relativePathFrom:(FPath *)outer to:(FPath *)inner; ++ (FPath *) empty; ++ (FPath *) pathWithString:(NSString *)string; + +- (id)initWith:(NSString *)path; +- (id)initWithPieces:(NSArray *)somePieces andPieceNum:(NSInteger)aPieceNum; + +- (id)copyWithZone:(NSZone *)zone; + +- (void)enumerateComponentsUsingBlock:(void (^)(NSString *key, BOOL *stop))block; +- (NSString *) getFront; +- (NSUInteger) length; +- (FPath *) popFront; +- (NSString *) getBack; +- (NSString *) toString; +- (NSString *) toStringWithTrailingSlash; +- (NSString *) wireFormat; +- (FPath *) parent; +- (FPath *) child:(FPath *)childPathObj; +- (FPath *) childFromString:(NSString *)childPath; +- (BOOL) isEmpty; +- (BOOL) contains:(FPath *)other; +- (NSComparisonResult) compare:(FPath *)other; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FPath.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FPath.m new file mode 100644 index 0000000..5215596 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FPath.m @@ -0,0 +1,298 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FPath.h" + +#import "FUtilities.h" + +@interface FPath() + +@property (nonatomic, readwrite, assign) NSInteger pieceNum; +@property (nonatomic, strong) NSArray * pieces; + +@end + +@implementation FPath + +#pragma mark - +#pragma mark Initializers + ++ (FPath *) relativePathFrom:(FPath *)outer to:(FPath *)inner { + NSString* outerFront = [outer getFront]; + NSString* innerFront = [inner getFront]; + if (outerFront == nil) { + return inner; + } else if ([outerFront isEqualToString:innerFront]) { + return [self relativePathFrom:[outer popFront] to:[inner popFront]]; + } else { + @throw [[NSException alloc] initWithName:@"FirebaseDatabaseInternalError" reason:[NSString stringWithFormat:@"innerPath (%@) is not within outerPath (%@)", inner, outer] userInfo:nil]; + } +} + ++ (FPath *)pathWithString:(NSString *)string +{ + return [[FPath alloc] initWith:string]; +} + +- (id)initWith:(NSString *)path +{ + self = [super init]; + if (self) { + NSArray *pathPieces = [path componentsSeparatedByString:@"/"]; + NSMutableArray *newPieces = [[NSMutableArray alloc] init]; + for (NSInteger i = 0; i < pathPieces.count; i++) { + NSString *piece = [pathPieces objectAtIndex:i]; + if (piece.length > 0) { + [newPieces addObject:piece]; + } + } + + self.pieces = newPieces; + self.pieceNum = 0; + } + return self; +} + +- (id)initWithPieces:(NSArray *)somePieces andPieceNum:(NSInteger)aPieceNum { + self = [super init]; + if (self) { + self.pieceNum = aPieceNum; + self.pieces = somePieces; + } + return self; +} + +- (id)copyWithZone:(NSZone *)zone +{ + // Immutable, so it's safe to return self + return self; +} + +- (NSString *)description { + return [self toString]; +} + +#pragma mark - +#pragma mark Public methods + +- (NSString *) getFront { + if(self.pieceNum >= self.pieces.count) { + return nil; + } + return [self.pieces objectAtIndex:self.pieceNum]; +} + +/** +* @return The number of segments in this path +*/ +- (NSUInteger) length { + return self.pieces.count - self.pieceNum; +} + +- (FPath *) popFront { + NSInteger newPieceNum = self.pieceNum; + if (newPieceNum < self.pieces.count) { + newPieceNum++; + } + return [[FPath alloc] initWithPieces:self.pieces andPieceNum:newPieceNum]; +} + +- (NSString *) getBack { + if(self.pieceNum < self.pieces.count) { + return [self.pieces lastObject]; + } + else { + return nil; + } +} + +- (NSString *) toString { + return [self toStringWithTrailingSlash:NO]; +} + +- (NSString *) toStringWithTrailingSlash { + return [self toStringWithTrailingSlash:YES]; +} + +- (NSString *) toStringWithTrailingSlash:(BOOL)trailingSlash { + NSMutableString* pathString = [[NSMutableString alloc] init]; + for(NSInteger i = self.pieceNum; i < self.pieces.count; i++) { + [pathString appendString:@"/"]; + [pathString appendString:[self.pieces objectAtIndex:i]]; + } + if ([pathString length] == 0) { + return @"/"; + } else { + if (trailingSlash) { + [pathString appendString:@"/"]; + } + return pathString; + } +} + +- (NSString *)wireFormat { + if ([self isEmpty]) { + return @"/"; + } else { + NSMutableString* pathString = [[NSMutableString alloc] init]; + for (NSInteger i = self.pieceNum; i < self.pieces.count; i++) { + if (i > self.pieceNum) { + [pathString appendString:@"/"]; + } + [pathString appendString:[self.pieces objectAtIndex:i]]; + } + return pathString; + } +} + +- (FPath *) parent { + if(self.pieceNum >= self.pieces.count) { + return nil; + } else { + NSMutableArray* newPieces = [[NSMutableArray alloc] init]; + for (NSInteger i = self.pieceNum; i < self.pieces.count - 1; i++) { + [newPieces addObject:[self.pieces objectAtIndex:i]]; + } + return [[FPath alloc] initWithPieces:newPieces andPieceNum:0]; + } +} + +- (FPath *) child:(FPath *)childPathObj { + NSMutableArray* newPieces = [[NSMutableArray alloc] init]; + for (NSInteger i = self.pieceNum; i < self.pieces.count; i++) { + [newPieces addObject:[self.pieces objectAtIndex:i]]; + } + + for (NSInteger i = childPathObj.pieceNum; i < childPathObj.pieces.count; i++) { + [newPieces addObject:[childPathObj.pieces objectAtIndex:i]]; + } + + return [[FPath alloc] initWithPieces:newPieces andPieceNum:0]; +} + +- (FPath *)childFromString:(NSString *)childPath { + NSMutableArray* newPieces = [[NSMutableArray alloc] init]; + for (NSInteger i = self.pieceNum; i < self.pieces.count; i++) { + [newPieces addObject:[self.pieces objectAtIndex:i]]; + } + + NSArray *pathPieces = [childPath componentsSeparatedByString:@"/"]; + for (unsigned int i = 0; i < pathPieces.count; i++) { + NSString *piece = [pathPieces objectAtIndex:i]; + if (piece.length > 0) { + [newPieces addObject:piece]; + } + } + + return [[FPath alloc] initWithPieces:newPieces andPieceNum:0]; +} + +/** +* @return True if there are no segments in this path +*/ +- (BOOL) isEmpty { + return self.pieceNum >= self.pieces.count; +} + +/** +* @return Singleton to represent an empty path +*/ ++ (FPath *) empty { + static dispatch_once_t oneEmptyPath; + static FPath *emptyPath; + dispatch_once(&oneEmptyPath, ^{ + emptyPath = [[FPath alloc] initWith:@""]; + }); + return emptyPath; +} + +- (BOOL) contains:(FPath *)other { + if (self.length > other.length) { + return NO; + } + + NSInteger i = self.pieceNum; + NSInteger j = other.pieceNum; + while (i < self.pieces.count) { + NSString* thisSeg = [self.pieces objectAtIndex:i]; + NSString* otherSeg = [other.pieces objectAtIndex:j]; + if (![thisSeg isEqualToString:otherSeg]) { + return NO; + } + ++i; + ++j; + } + return YES; +} + +- (void) enumerateComponentsUsingBlock:(void (^)(NSString *, BOOL *))block { + BOOL stop = NO; + for (NSInteger i = self.pieceNum; !stop && i < self.pieces.count; i++) { + block(self.pieces[i], &stop); + } +} + +- (NSComparisonResult) compare:(FPath *)other { + NSInteger myCount = self.pieces.count; + NSInteger otherCount = other.pieces.count; + for (NSInteger i = self.pieceNum, j = other.pieceNum; i < myCount && j < otherCount; i++, j++) { + NSComparisonResult comparison = [FUtilities compareKey:self.pieces[i] toKey:other.pieces[j]]; + if (comparison != NSOrderedSame) { + return comparison; + } + } + if (self.length < other.length) { + return NSOrderedAscending; + } else if (other.length < self.length) { + return NSOrderedDescending; + } else { + NSAssert(self.length == other.length, @"Paths must be the same lengths"); + return NSOrderedSame; + } +} + +/** +* @return YES if paths are the same +*/ +- (BOOL)isEqual:(id)other +{ + if (other == self) { + return YES; + } + if (!other || ![other isKindOfClass:[self class]]) { + return NO; + } + FPath *otherPath = (FPath *)other; + if (self.length != otherPath.length) { + return NO; + } + for (NSUInteger i = self.pieceNum, j = otherPath.pieceNum; i < self.pieces.count; i++, j++) { + if (![self.pieces[i] isEqualToString:otherPath.pieces[j]]) { + return NO; + } + } + return YES; +} + +- (NSUInteger) hash { + NSUInteger hashCode = 0; + for (NSInteger i = self.pieceNum; i < self.pieces.count; i++) { + hashCode = hashCode * 37 + [self.pieces[i] hash]; + } + return hashCode; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FTree.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FTree.h new file mode 100644 index 0000000..8528526 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FTree.h @@ -0,0 +1,48 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FTreeNode.h" +#import "FPath.h" + +@interface FTree : NSObject + +- (id)init; +- (id)initWithName:(NSString*)aName withParent:(FTree *)aParent withNode:(FTreeNode *)aNode; + +- (FTree *) subTree:(FPath*)path; +- (id)getValue; +- (void)setValue:(id)value; +- (void) clear; +- (BOOL) hasChildren; +- (BOOL) isEmpty; +- (void) forEachChildMutationSafe:(void (^)(FTree *))action; +- (void) forEachChild:(void (^)(FTree *))action; +- (void) forEachDescendant:(void (^)(FTree *))action; +- (void) forEachDescendant:(void (^)(FTree *))action includeSelf:(BOOL)incSelf childrenFirst:(BOOL)childFirst; +- (BOOL) forEachAncestor:(BOOL (^)(FTree *))action; +- (BOOL) forEachAncestor:(BOOL (^)(FTree *))action includeSelf:(BOOL)incSelf; +- (void) forEachImmediateDescendantWithValue:(void (^)(FTree *))action; +- (BOOL) valueExistsAtOrAbove:(FPath *)path; +- (FPath *)path; +- (void) updateParents; +- (void) updateChild:(NSString*)childName withNode:(FTree *)child; + +@property (nonatomic, strong) NSString* name; +@property (nonatomic, strong) FTree* parent; +@property (nonatomic, strong) FTreeNode* node; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FTree.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FTree.m new file mode 100644 index 0000000..8e7a334 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FTree.m @@ -0,0 +1,183 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FTree.h" +#import "FTreeNode.h" +#import "FPath.h" +#import "FUtilities.h" + +@implementation FTree + +@synthesize name; +@synthesize parent; +@synthesize node; + +- (id)init +{ + self = [super init]; + if (self) { + self.name = @""; + self.parent = nil; + self.node = [[FTreeNode alloc] init]; + } + return self; +} + + +- (id)initWithName:(NSString*)aName withParent:(FTree *)aParent withNode:(FTreeNode *)aNode +{ + self = [super init]; + if (self) { + self.name = aName != nil ? aName : @""; + self.parent = aParent != nil ? aParent : nil; + self.node = aNode != nil ? aNode : [[FTreeNode alloc] init]; + } + return self; +} + +- (FTree *) subTree:(FPath*)path { + FTree* child = self; + NSString* next = [path getFront]; + while(next != nil) { + FTreeNode* childNode = child.node.children[next]; + if (childNode == nil) { + childNode = [[FTreeNode alloc] init]; + } + child = [[FTree alloc] initWithName:next withParent:child withNode:childNode]; + path = [path popFront]; + next = [path getFront]; + } + return child; +} + +- (id)getValue { + return self.node.value; +} + +- (void)setValue:(id)value { + self.node.value = value; + [self updateParents]; +} + +- (void) clear { + self.node.value = nil; + [self.node.children removeAllObjects]; + self.node.childCount = 0; + [self updateParents]; +} + +- (BOOL) hasChildren { + return self.node.childCount > 0; +} + +- (BOOL) isEmpty { + return [self getValue] == nil && ![self hasChildren]; +} + +- (void) forEachChild:(void (^)(FTree *))action { + for(NSString* key in self.node.children) { + action([[FTree alloc] initWithName:key withParent:self withNode:[self.node.children objectForKey:key]]); + } +} + +- (void) forEachChildMutationSafe:(void (^)(FTree *))action { + for(NSString* key in [self.node.children copy]) { + action([[FTree alloc] initWithName:key withParent:self withNode:[self.node.children objectForKey:key]]); + } +} + +- (void) forEachDescendant:(void (^)(FTree *))action { + [self forEachDescendant:action includeSelf:NO childrenFirst:NO]; +} + +- (void) forEachDescendant:(void (^)(FTree *))action includeSelf:(BOOL)incSelf childrenFirst:(BOOL)childFirst { + if(incSelf && !childFirst) { + action(self); + } + + [self forEachChild:^(FTree* child) { + [child forEachDescendant:action includeSelf:YES childrenFirst:childFirst]; + }]; + + if(incSelf && childFirst) { + action(self); + } +} + +- (BOOL) forEachAncestor:(BOOL (^)(FTree *))action { + return [self forEachAncestor:action includeSelf:NO]; +} + +- (BOOL) forEachAncestor:(BOOL (^)(FTree *))action includeSelf:(BOOL)incSelf { + FTree* aNode = (incSelf) ? self : self.parent; + while(aNode != nil) { + if(action(aNode)) { + return YES; + } + aNode = aNode.parent; + } + return NO; +} + +- (void) forEachImmediateDescendantWithValue:(void (^)(FTree *))action { + [self forEachChild:^(FTree * child) { + if([child getValue] != nil) { + action(child); + } + else { + [child forEachImmediateDescendantWithValue:action]; + } + }]; +} + +- (BOOL) valueExistsAtOrAbove:(FPath *)path { + FTreeNode* aNode = self.node; + while(aNode != nil) { + if(aNode.value != nil) { + return YES; + } + aNode = [aNode.children objectForKey:path.getFront]; + path = [path popFront]; + } + // XXX Check with Michael if this is correct; deviates from JS. + return NO; +} + +- (FPath *)path { + return [[FPath alloc] initWith:(self.parent == nil) ? self.name : + [NSString stringWithFormat:@"%@/%@", [self.parent path], self.name ]]; +} + +- (void) updateParents { + [self.parent updateChild:self.name withNode:self]; +} + +- (void) updateChild:(NSString*)childName withNode:(FTree *)child { + BOOL childEmpty = [child isEmpty]; + BOOL childExists = self.node.children[childName] != nil; + if(childEmpty && childExists) { + [self.node.children removeObjectForKey:childName]; + self.node.childCount = self.node.childCount - 1; + [self updateParents]; + } + else if(!childEmpty && !childExists) { + [self.node.children setObject:child.node forKey:childName]; + self.node.childCount = self.node.childCount + 1; + [self updateParents]; + } +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FTreeNode.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FTreeNode.h new file mode 100644 index 0000000..7e3497e --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FTreeNode.h @@ -0,0 +1,25 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@interface FTreeNode : NSObject + +@property (nonatomic, strong) NSMutableDictionary* children; +@property (nonatomic, readwrite, assign) int childCount; +@property (nonatomic, strong) id value; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FTreeNode.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FTreeNode.m new file mode 100644 index 0000000..9cba9c5 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/Utilities/FTreeNode.m @@ -0,0 +1,36 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FTreeNode.h" + +@implementation FTreeNode + +@synthesize children; +@synthesize childCount; +@synthesize value; + +- (id)init +{ + self = [super init]; + if (self) { + self.children = [[NSMutableDictionary alloc] init]; + self.childCount = 0; + self.value = nil; + } + return self; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FCacheNode.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FCacheNode.h new file mode 100644 index 0000000..b23869c --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FCacheNode.h @@ -0,0 +1,44 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@protocol FNode; +@class FIndexedNode; +@class FPath; + +/** +* A cache node only stores complete children. Additionally it holds a flag whether the node can be considered fully +* initialized in the sense that we know at one point in time, this represented a valid state of the world, e.g. +* initialized with data from the server, or a complete overwrite by the client. It is not necessarily complete because +* it may have been from a tagged query. The filtered flag also tracks whether a node potentially had children removed +* due to a filter. +*/ +@interface FCacheNode : NSObject + +- (id) initWithIndexedNode:(FIndexedNode *)indexedNode + isFullyInitialized:(BOOL)fullyInitialized + isFiltered:(BOOL)filtered; + +- (BOOL) isCompleteForPath:(FPath *)path; +- (BOOL) isCompleteForChild:(NSString *)childKey; + +@property (nonatomic, readonly) BOOL isFullyInitialized; +@property (nonatomic, readonly) BOOL isFiltered; +@property (nonatomic, strong, readonly) FIndexedNode *indexedNode; +@property (nonatomic, strong, readonly) id node; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FCacheNode.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FCacheNode.m new file mode 100644 index 0000000..4767a25 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FCacheNode.m @@ -0,0 +1,60 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FCacheNode.h" +#import "FNode.h" +#import "FPath.h" +#import "FEmptyNode.h" +#import "FIndexedNode.h" + +@interface FCacheNode () +@property (nonatomic, readwrite) BOOL isFullyInitialized; +@property (nonatomic, readwrite) BOOL isFiltered; +@property (nonatomic, strong, readwrite) FIndexedNode *indexedNode; +@end + +@implementation FCacheNode +- (id) initWithIndexedNode:(FIndexedNode *)indexedNode + isFullyInitialized:(BOOL)fullyInitialized + isFiltered:(BOOL)filtered +{ + self = [super init]; + if (self) { + self.indexedNode = indexedNode; + self.isFullyInitialized = fullyInitialized; + self.isFiltered = filtered; + } + return self; +} + +- (BOOL)isCompleteForPath:(FPath *)path { + if (path.isEmpty) { + return self.isFullyInitialized && !self.isFiltered; + } else { + NSString *childKey = [path getFront]; + return [self isCompleteForChild:childKey]; + } +} + +- (BOOL)isCompleteForChild:(NSString *)childKey { + return (self.isFullyInitialized && !self.isFiltered) || [self.node hasChild:childKey]; +} + +- (id)node { + return self.indexedNode.node; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FCancelEvent.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FCancelEvent.h new file mode 100644 index 0000000..38277f7 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FCancelEvent.h @@ -0,0 +1,30 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FEvent.h" + +@protocol FEventRegistration; + + +@interface FCancelEvent : NSObject + +- initWithEventRegistration:(id)eventRegistration error:(NSError *)error path:(FPath *)path; + +@property (nonatomic, strong, readonly) NSError *error; +@property (nonatomic, strong, readonly) FPath *path; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FCancelEvent.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FCancelEvent.m new file mode 100644 index 0000000..fb73f17 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FCancelEvent.m @@ -0,0 +1,55 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FCancelEvent.h" +#import "FPath.h" +#import "FEventRegistration.h" + +@interface FCancelEvent () +@property (nonatomic, strong) id eventRegistration; +@property (nonatomic, strong, readwrite) NSError *error; +@property (nonatomic, strong, readwrite) FPath *path; +@end + +@implementation FCancelEvent + +@synthesize eventRegistration; +@synthesize error; +@synthesize path; + +- (id)initWithEventRegistration:(id )registration error:(NSError *)anError path:(FPath *)aPath { + self = [super init]; + if (self) { + self.eventRegistration = registration; + self.error = anError; + self.path = aPath; + } + return self; +} + +- (void) fireEventOnQueue:(dispatch_queue_t)queue { + [self.eventRegistration fireEvent:self queue:queue]; +} + +- (BOOL) isCancelEvent { + return YES; +} + +- (NSString *) description { + return [NSString stringWithFormat:@"%@: cancel", self.path]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FChange.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FChange.h new file mode 100644 index 0000000..d728fe0 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FChange.h @@ -0,0 +1,38 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FIRDatabaseReference.h" +#import "FNode.h" +#import "FIndexedNode.h" + +@interface FChange : NSObject + +@property (nonatomic, readonly) FIRDataEventType type; +@property (nonatomic, strong, readonly) FIndexedNode *indexedNode; +@property (nonatomic, strong, readonly) NSString *childKey; +@property (nonatomic, strong, readonly) NSString *prevKey; +@property (nonatomic, strong, readonly) FIndexedNode *oldIndexedNode; + +- (id)initWithType:(FIRDataEventType)type indexedNode:(FIndexedNode *)indexedNode; +- (id)initWithType:(FIRDataEventType)type indexedNode:(FIndexedNode *)indexedNode childKey:(NSString *)childKey; +- (id)initWithType:(FIRDataEventType)type + indexedNode:(FIndexedNode *)indexedNode + childKey:(NSString *)childKey + oldIndexedNode:(FIndexedNode *)oldIndexedNode; + +- (FChange *) changeWithPrevKey:(NSString *)prevKey; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FChange.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FChange.m new file mode 100644 index 0000000..893fce4 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FChange.m @@ -0,0 +1,65 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FChange.h" + +@interface FChange () + +@property (nonatomic, strong, readwrite) NSString *prevKey; + +@end + +@implementation FChange + +- (id)initWithType:(FIRDataEventType)type indexedNode:(FIndexedNode *)indexedNode +{ + return [self initWithType:type indexedNode:indexedNode childKey:nil oldIndexedNode:nil]; +} + +- (id)initWithType:(FIRDataEventType)type indexedNode:(FIndexedNode *)indexedNode childKey:(NSString *)childKey +{ + return [self initWithType:type indexedNode:indexedNode childKey:childKey oldIndexedNode:nil]; +} + +- (id)initWithType:(FIRDataEventType)type + indexedNode:(FIndexedNode *)indexedNode + childKey:(NSString *)childKey + oldIndexedNode:(FIndexedNode *)oldIndexedNode +{ + self = [super init]; + if (self != nil) { + self->_type = type; + self->_indexedNode = indexedNode; + self->_childKey = childKey; + self->_oldIndexedNode = oldIndexedNode; + } + return self; +} + +- (FChange *) changeWithPrevKey:(NSString *)prevKey { + FChange *newChange = [[FChange alloc] initWithType:self.type + indexedNode:self.indexedNode + childKey:self.childKey + oldIndexedNode:self.oldIndexedNode]; + newChange.prevKey = prevKey; + return newChange; +} + +- (NSString *) description { + return [NSString stringWithFormat:@"event: %d, data: %@", (int)self.type, [self.indexedNode.node val]]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FChildEventRegistration.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FChildEventRegistration.h new file mode 100644 index 0000000..8da0b8f --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FChildEventRegistration.h @@ -0,0 +1,37 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FEventRegistration.h" +#import "FTypedefs.h" + +@class FRepo; + +@interface FChildEventRegistration : NSObject + +- (id) initWithRepo:(FRepo *)repo + handle:(FIRDatabaseHandle)fHandle + callbacks:(NSDictionary *)callbackBlocks + cancelCallback:(fbt_void_nserror)cancelCallbackBlock; + +/** +* Maps FIRDataEventType (as NSNumber) to fbt_void_datasnapshot_nsstring +*/ +@property (nonatomic, copy, readonly) NSDictionary *callbacks; +@property (nonatomic, copy, readonly) fbt_void_nserror cancelCallback; +@property (nonatomic, readonly) FIRDatabaseHandle handle; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FChildEventRegistration.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FChildEventRegistration.m new file mode 100644 index 0000000..a98ea47 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FChildEventRegistration.m @@ -0,0 +1,93 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FChildEventRegistration.h" +#import "FIRDatabaseQuery_Private.h" +#import "FQueryParams.h" +#import "FQuerySpec.h" +#import "FIRDataSnapshot_Private.h" +#import "FDataEvent.h" +#import "FCancelEvent.h" + +@interface FChildEventRegistration () +@property (nonatomic, strong) FRepo *repo; +@property (nonatomic, copy, readwrite) NSDictionary *callbacks; +@property (nonatomic, copy, readwrite) fbt_void_nserror cancelCallback; +@property (nonatomic, readwrite) FIRDatabaseHandle handle; +@end + +@implementation FChildEventRegistration + +- (id)initWithRepo:(id)repo handle:(FIRDatabaseHandle)fHandle callbacks:(NSDictionary *)callbackBlocks cancelCallback:(fbt_void_nserror)cancelCallbackBlock { + self = [super init]; + if (self) { + self.repo = repo; + self.handle = fHandle; + self.callbacks = callbackBlocks; + self.cancelCallback = cancelCallbackBlock; + } + return self; +} + +- (BOOL) responseTo:(FIRDataEventType)eventType { + return self.callbacks != nil && [self.callbacks objectForKey:[NSNumber numberWithInteger:eventType]] != nil; +} + +- (FDataEvent *) createEventFrom:(FChange *)change query:(FQuerySpec *)query { + FIRDatabaseReference *ref = [[FIRDatabaseReference alloc] initWithRepo:self.repo path:[query.path childFromString:change.childKey]]; + FIRDataSnapshot *snapshot = [[FIRDataSnapshot alloc] initWithRef:ref indexedNode:change.indexedNode]; + + FDataEvent *eventData = [[FDataEvent alloc] initWithEventType:change.type eventRegistration:self + dataSnapshot:snapshot prevName:change.prevKey]; + return eventData; +} + +- (void) fireEvent:(id )event queue:(dispatch_queue_t)queue { + if ([event isCancelEvent]) { + FCancelEvent *cancelEvent = event; + FFLog(@"I-RDB061001", @"Raising cancel value event on %@", event.path); + NSAssert(self.cancelCallback != nil, @"Raising a cancel event on a listener with no cancel callback"); + dispatch_async(queue, ^{ + self.cancelCallback(cancelEvent.error); + }); + } else if (self.callbacks != nil) { + FDataEvent *dataEvent = event; + FFLog(@"I-RDB061002", @"Raising event callback (%ld) on %@", (long)dataEvent.eventType, dataEvent.path); + fbt_void_datasnapshot_nsstring callback = [self.callbacks objectForKey:[NSNumber numberWithInteger:dataEvent.eventType]]; + + if (callback != nil) { + dispatch_async(queue, ^{ + callback(dataEvent.snapshot, dataEvent.prevName); + }); + } + } +} + +- (FCancelEvent *) createCancelEventFromError:(NSError *)error path:(FPath *)path { + if (self.cancelCallback != nil) { + return [[FCancelEvent alloc] initWithEventRegistration:self error:error path:path]; + } else { + return nil; + } +} + +- (BOOL) matches:(id)other { + return self.handle == NSNotFound || other.handle == NSNotFound || self.handle == other.handle; +} + + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FDataEvent.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FDataEvent.h new file mode 100644 index 0000000..da90b03 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FDataEvent.h @@ -0,0 +1,39 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FIRDataSnapshot.h" +#import "FIRDatabaseReference.h" +#import "FTupleUserCallback.h" +#import "FEvent.h" + +@protocol FEventRegistration; +@protocol FIndex; + +@interface FDataEvent : NSObject + +- initWithEventType:(FIRDataEventType)type eventRegistration:(id)eventRegistration + dataSnapshot:(FIRDataSnapshot *)dataSnapshot; +- initWithEventType:(FIRDataEventType)type eventRegistration:(id)eventRegistration + dataSnapshot:(FIRDataSnapshot *)snapshot prevName:(NSString *)prevName; + + +@property (nonatomic, strong, readonly) id eventRegistration; +@property (nonatomic, strong, readonly) FIRDataSnapshot * snapshot; +@property (nonatomic, strong, readonly) NSString* prevName; +@property (nonatomic, readonly) FIRDataEventType eventType; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FDataEvent.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FDataEvent.m new file mode 100644 index 0000000..6c97faf --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FDataEvent.m @@ -0,0 +1,74 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FDataEvent.h" +#import "FEventRegistration.h" +#import "FIndex.h" +#import "FIRDatabaseQuery_Private.h" + +@interface FDataEvent () +@property (nonatomic, strong, readwrite) id eventRegistration; +@property (nonatomic, strong, readwrite) FIRDataSnapshot *snapshot; +@property (nonatomic, strong, readwrite) NSString *prevName; +@property (nonatomic, readwrite) FIRDataEventType eventType; +@end + +@implementation FDataEvent + +@synthesize eventRegistration; +@synthesize snapshot; +@synthesize prevName; +@synthesize eventType; + +- (id)initWithEventType:(FIRDataEventType)type eventRegistration:(id )registration dataSnapshot:(FIRDataSnapshot *)dataSnapshot { + return [self initWithEventType:type eventRegistration:registration dataSnapshot:dataSnapshot prevName:nil]; +} + +- (id)initWithEventType:(FIRDataEventType)type eventRegistration:(id )registration dataSnapshot:(FIRDataSnapshot *)dataSnapshot prevName:(NSString *)previousName { + self = [super init]; + if (self) { + self.eventRegistration = registration; + self.snapshot = dataSnapshot; + self.prevName = previousName; + self.eventType = type; + } + return self; +} + +- (FPath *) path { + // Used for logging, so delay calculation + FIRDatabaseReference *ref = self.snapshot.ref; + if (self.eventType == FIRDataEventTypeValue) { + return ref.path; + } else { + return ref.parent.path; + } +} + +- (void) fireEventOnQueue:(dispatch_queue_t)queue { + [self.eventRegistration fireEvent:self queue:queue]; +} + +- (BOOL) isCancelEvent { + return NO; +} + + +- (NSString *) description { + return [NSString stringWithFormat:@"event %d, data: %@", (int) eventType, [snapshot value]]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FEvent.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FEvent.h new file mode 100644 index 0000000..6b9e31a --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FEvent.h @@ -0,0 +1,27 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FIRDataEventType.h" + +@class FPath; + +@protocol FEvent +- (FPath *) path; +- (void) fireEventOnQueue:(dispatch_queue_t)queue; +- (BOOL) isCancelEvent; +- (NSString *) description; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FEventRaiser.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FEventRaiser.h new file mode 100644 index 0000000..01a0130 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FEventRaiser.h @@ -0,0 +1,35 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FTypedefs.h" + +@class FPath; +@class FRepo; +@class FIRDatabaseConfig; + +/** +* Left as instance methods rather than class methods so that we could potentially callback on different queues for different repos. +* This is semi-parallel to JS's FEventQueue +*/ +@interface FEventRaiser : NSObject + +- (id)initWithQueue:(dispatch_queue_t)queue; + +- (void) raiseEvents:(NSArray *)eventDataList; +- (void) raiseCallback:(fbt_void_void)callback; +- (void) raiseCallbacks:(NSArray *)callbackList; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FEventRaiser.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FEventRaiser.m new file mode 100644 index 0000000..94a0907 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FEventRaiser.m @@ -0,0 +1,72 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FEventRaiser.h" +#import "FDataEvent.h" +#import "FTypedefs.h" +#import "FUtilities.h" +#import "FTupleUserCallback.h" +#import "FRepo.h" +#import "FRepoManager.h" + +@interface FEventRaiser () + +@property (nonatomic, strong) dispatch_queue_t queue; + +@end + +/** +* This class exists for symmetry with other clients, but since events are async, we don't need to do the complicated +* stuff the JS client does to preserve event order. +*/ +@implementation FEventRaiser + +- (id)init { + [NSException raise:NSInternalInconsistencyException format:@"Can't use default constructor"]; + return nil; +} + +- (id)initWithQueue:(dispatch_queue_t)queue { + self = [super init]; + if (self != nil) { + self->_queue = queue; + } + return self; +} + +- (void) raiseEvents:(NSArray *)eventDataList { + for (id event in eventDataList) { + [event fireEventOnQueue:self.queue]; + } +} + +- (void) raiseCallback:(fbt_void_void)callback { + dispatch_async(self.queue, callback); +} + +- (void) raiseCallbacks:(NSArray *)callbackList { + for (fbt_void_void callback in callbackList) { + dispatch_async(self.queue, callback); + } +} + ++ (void) raiseCallbacks:(NSArray *)callbackList queue:(dispatch_queue_t)queue { + for (fbt_void_void callback in callbackList) { + dispatch_async(queue, callback); + } +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FEventRegistration.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FEventRegistration.h new file mode 100644 index 0000000..5b845ac --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FEventRegistration.h @@ -0,0 +1,36 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FChange.h" +#import "FIRDataEventType.h" + +@protocol FEvent; +@class FDataEvent; +@class FCancelEvent; +@class FQuerySpec; + +@protocol FEventRegistration +- (BOOL) responseTo:(FIRDataEventType)eventType; +- (FDataEvent *) createEventFrom:(FChange *)change query:(FQuerySpec *)query; +- (void) fireEvent:(id)event queue:(dispatch_queue_t)queue; +- (FCancelEvent *) createCancelEventFromError:(NSError *)error path:(FPath *)path; +/** +* Used to figure out what event registration match the event registration that needs to be removed. +*/ +- (BOOL) matches:(id)other; +@property (nonatomic, readonly) FIRDatabaseHandle handle; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FKeepSyncedEventRegistration.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FKeepSyncedEventRegistration.h new file mode 100644 index 0000000..669e012 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FKeepSyncedEventRegistration.h @@ -0,0 +1,28 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FEventRegistration.h" + +/** + * A singleton event registration to mark a query as keep synced + */ +@interface FKeepSyncedEventRegistration : NSObject + ++ (FKeepSyncedEventRegistration *)instance; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FKeepSyncedEventRegistration.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FKeepSyncedEventRegistration.m new file mode 100644 index 0000000..806d54f --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FKeepSyncedEventRegistration.m @@ -0,0 +1,64 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FKeepSyncedEventRegistration.h" + +@interface FKeepSyncedEventRegistration () + +@end + +@implementation FKeepSyncedEventRegistration + ++ (FKeepSyncedEventRegistration *)instance { + static dispatch_once_t onceToken; + static FKeepSyncedEventRegistration *keepSynced; + dispatch_once(&onceToken, ^{ + keepSynced = [[FKeepSyncedEventRegistration alloc] init]; + }); + return keepSynced; +} + +- (BOOL) responseTo:(FIRDataEventType)eventType { + return NO; +} + +- (FDataEvent *) createEventFrom:(FChange *)change query:(FQuerySpec *)query { + [NSException raise:NSInternalInconsistencyException format:@"Should never create event for FKeepSyncedEventRegistration"]; + return nil; +} + +- (void) fireEvent:(id)event queue:(dispatch_queue_t)queue { + [NSException raise:NSInternalInconsistencyException format:@"Should never raise event for FKeepSyncedEventRegistration"]; +} + +- (FCancelEvent *) createCancelEventFromError:(NSError *)error path:(FPath *)path { + // Don't create cancel events.... + return nil; +} + +- (FIRDatabaseHandle) handle { + // TODO[offline]: returning arbitray, can't return NSNotFound since that is used to match other event registrations + // We should really redo this to match on different kind of events (single observer, all observers, cancelled) + // rather than on a NSNotFound handle... + return NSNotFound - 1; +} + +- (BOOL) matches:(id)other { + // Only matches singleton instance + return self == other; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FValueEventRegistration.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FValueEventRegistration.h new file mode 100644 index 0000000..1220c60 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FValueEventRegistration.h @@ -0,0 +1,34 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FEventRegistration.h" +#import "FTypedefs.h" + +@class FRepo; + +@interface FValueEventRegistration : NSObject + +- (id) initWithRepo:(FRepo *)repo + handle:(FIRDatabaseHandle)fHandle + callback:(fbt_void_datasnapshot)callbackBlock + cancelCallback:(fbt_void_nserror)cancelCallbackBlock; + +@property (nonatomic, copy, readonly) fbt_void_datasnapshot callback; +@property (nonatomic, copy, readonly) fbt_void_nserror cancelCallback; +@property (nonatomic, readonly) FIRDatabaseHandle handle; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FValueEventRegistration.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FValueEventRegistration.m new file mode 100644 index 0000000..6a98629 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FValueEventRegistration.m @@ -0,0 +1,90 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FValueEventRegistration.h" +#import "FIRDatabaseQuery_Private.h" +#import "FQueryParams.h" +#import "FQuerySpec.h" +#import "FIRDataSnapshot_Private.h" +#import "FCancelEvent.h" +#import "FDataEvent.h" + +@interface FValueEventRegistration () +@property (nonatomic, strong) FRepo* repo; +@property (nonatomic, copy, readwrite) fbt_void_datasnapshot callback; +@property (nonatomic, copy, readwrite) fbt_void_nserror cancelCallback; +@property (nonatomic, readwrite) FIRDatabaseHandle handle; +@end + +@implementation FValueEventRegistration + +- (id) initWithRepo:(FRepo *)repo + handle:(FIRDatabaseHandle)fHandle + callback:(fbt_void_datasnapshot)callbackBlock + cancelCallback:(fbt_void_nserror)cancelCallbackBlock { + self = [super init]; + if (self) { + self.repo = repo; + self.handle = fHandle; + self.callback = callbackBlock; + self.cancelCallback = cancelCallbackBlock; + } + return self; +} + +- (BOOL) responseTo:(FIRDataEventType)eventType { + return eventType == FIRDataEventTypeValue; +} + +- (FDataEvent *) createEventFrom:(FChange *)change query:(FQuerySpec *)query { + FIRDatabaseReference *ref = [[FIRDatabaseReference alloc] initWithRepo:self.repo path:query.path]; + FIRDataSnapshot *snapshot = [[FIRDataSnapshot alloc] initWithRef:ref indexedNode:change.indexedNode]; + FDataEvent *eventData = [[FDataEvent alloc] initWithEventType:FIRDataEventTypeValue eventRegistration:self + dataSnapshot:snapshot]; + return eventData; +} + +- (void) fireEvent:(id )event queue:(dispatch_queue_t)queue { + if ([event isCancelEvent]) { + FCancelEvent *cancelEvent = event; + FFLog(@"I-RDB065001", @"Raising cancel value event on %@", event.path); + NSAssert(self.cancelCallback != nil, @"Raising a cancel event on a listener with no cancel callback"); + dispatch_async(queue, ^{ + self.cancelCallback(cancelEvent.error); + }); + } else if (self.callback != nil) { + FDataEvent *dataEvent = event; + FFLog(@"I-RDB065002", @"Raising value event on %@", dataEvent.snapshot.key); + dispatch_async(queue, ^{ + self.callback(dataEvent.snapshot); + }); + } +} + +- (FCancelEvent *) createCancelEventFromError:(NSError *)error path:(FPath *)path { + if (self.cancelCallback != nil) { + return [[FCancelEvent alloc] initWithEventRegistration:self error:error path:path]; + } else { + return nil; + } +} + +- (BOOL) matches:(id)other { + return self.handle == NSNotFound || other.handle == NSNotFound || self.handle == other.handle; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FView.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FView.h new file mode 100644 index 0000000..2d0761a --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FView.h @@ -0,0 +1,53 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@protocol FNode; +@protocol FOperation; +@protocol FEventRegistration; +@class FWriteTreeRef; +@class FQuerySpec; +@class FChange; +@class FPath; +@class FViewCache; + +@interface FViewOperationResult : NSObject + +@property (nonatomic, strong, readonly) NSArray* changes; +@property (nonatomic, strong, readonly) NSArray* events; + +@end + + +@interface FView : NSObject + +@property (nonatomic, strong, readonly) FQuerySpec *query; + +- (id) initWithQuery:(FQuerySpec *)query initialViewCache:(FViewCache *)initialViewCache; + +- (id) eventCache; +- (id) serverCache; +- (id) completeServerCacheFor:(FPath*)path; +- (BOOL) isEmpty; + +- (void) addEventRegistration:(id)eventRegistration; +- (NSArray *) removeEventRegistration:(id)eventRegistration cancelError:(NSError *)cancelError; + +- (FViewOperationResult *) applyOperation:(id )operation writesCache:(FWriteTreeRef *)writesCache serverCache:(id )optCompleteServerCache; +- (NSArray *) initialEvents:(id)registration; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FView.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FView.m new file mode 100644 index 0000000..1aea4d7 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FView.m @@ -0,0 +1,223 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FView.h" +#import "FNode.h" +#import "FWriteTreeRef.h" +#import "FOperation.h" +#import "FIRDatabaseQuery.h" +#import "FIRDatabaseQuery_Private.h" +#import "FEventRegistration.h" +#import "FQueryParams.h" +#import "FQuerySpec.h" +#import "FViewCache.h" +#import "FPath.h" +#import "FEventGenerator.h" +#import "FOperationSource.h" +#import "FCancelEvent.h" +#import "FIndexedFilter.h" +#import "FCacheNode.h" +#import "FEmptyNode.h" +#import "FViewProcessor.h" +#import "FViewProcessorResult.h" +#import "FIndexedNode.h" + +@interface FViewOperationResult () + +@property (nonatomic, strong, readwrite) NSArray *changes; +@property (nonatomic, strong, readwrite) NSArray *events; + +@end + +@implementation FViewOperationResult + +- (id)initWithChanges:(NSArray *)changes events:(NSArray *)events { + self = [super init]; + if (self != nil) { + self->_changes = changes; + self->_events = events; + } + return self; +} + +@end + +/** +* A view represents a specific location and query that has 1 or more event registrations. +* +* It does several things: +* - Maintains the list of event registration for this location/query. +* - Maintains a cache of the data visible for this location/query. +* - Applies new operations (via applyOperation), updates the cache, and based on the event +* registrations returns the set of events to be raised. +*/ +@interface FView () + +@property (nonatomic, strong, readwrite) FQuerySpec *query; +@property (nonatomic, strong) FViewProcessor *processor; +@property (nonatomic, strong) FViewCache *viewCache; +@property (nonatomic, strong) NSMutableArray *eventRegistrations; +@property (nonatomic, strong) FEventGenerator *eventGenerator; + +@end + +@implementation FView +- (id) initWithQuery:(FQuerySpec *)query initialViewCache:(FViewCache *)initialViewCache { + self = [super init]; + if (self) { + self.query = query; + + FIndexedFilter *indexFilter = [[FIndexedFilter alloc] initWithIndex:query.index]; + id filter = query.params.nodeFilter; + self.processor = [[FViewProcessor alloc] initWithFilter:filter]; + FCacheNode *initialServerCache = initialViewCache.cachedServerSnap; + FCacheNode *initialEventCache = initialViewCache.cachedEventSnap; + + // Don't filter server node with other filter than index, wait for tagged listen + FIndexedNode *emptyIndexedNode = [FIndexedNode indexedNodeWithNode:[FEmptyNode emptyNode] index:query.index]; + FIndexedNode *serverSnap = [indexFilter updateFullNode:emptyIndexedNode + withNewNode:initialServerCache.indexedNode + accumulator:nil]; + FIndexedNode *eventSnap = [filter updateFullNode:emptyIndexedNode + withNewNode:initialEventCache.indexedNode + accumulator:nil]; + FCacheNode *newServerCache = [[FCacheNode alloc] initWithIndexedNode:serverSnap + isFullyInitialized:initialServerCache.isFullyInitialized + isFiltered:indexFilter.filtersNodes]; + FCacheNode *newEventCache = [[FCacheNode alloc] initWithIndexedNode:eventSnap + isFullyInitialized:initialEventCache.isFullyInitialized + isFiltered:filter.filtersNodes]; + + self.viewCache = [[FViewCache alloc] initWithEventCache:newEventCache serverCache:newServerCache]; + + self.eventRegistrations = [[NSMutableArray alloc] init]; + + self.eventGenerator = [[FEventGenerator alloc] initWithQuery:query]; + } + + return self; +} + +- (id ) serverCache { + return self.viewCache.cachedServerSnap.node; +} + +- (id ) eventCache { + return self.viewCache.cachedEventSnap.node; +} + +- (id ) completeServerCacheFor:(FPath*)path { + id cache = self.viewCache.completeServerSnap; + if (cache) { + // If this isn't a "loadsAllData" view, then cache isn't actually a complete cache and + // we need to see if it contains the child we're interested in. + if ([self.query loadsAllData] || + (!path.isEmpty && ![cache getImmediateChild:path.getFront].isEmpty)) { + return [cache getChild:path]; + } + } + return nil; +} + +- (BOOL) isEmpty { + return self.eventRegistrations.count == 0; +} + +- (void) addEventRegistration:(id )eventRegistration { + [self.eventRegistrations addObject:eventRegistration]; +} + +/** +* @param eventRegistration If null, remove all callbacks. +* @param cancelError If a cancelError is provided, appropriate cancel events will be returned. +* @return Cancel events, if cancelError was provided. +*/ +- (NSArray *) removeEventRegistration:(id )eventRegistration cancelError:(NSError *)cancelError { + NSMutableArray *cancelEvents = [[NSMutableArray alloc] init]; + if (cancelError != nil) { + NSAssert(eventRegistration == nil, @"A cancel should cancel all event registrations."); + FPath *path = self.query.path; + for (id registration in self.eventRegistrations) { + FCancelEvent *maybeEvent = [registration createCancelEventFromError:cancelError path:path]; + if (maybeEvent) { + [cancelEvents addObject:maybeEvent]; + } + } + } + + if (eventRegistration) { + NSUInteger i = 0; + while (i < self.eventRegistrations.count) { + id existing = self.eventRegistrations[i]; + if ([existing matches:eventRegistration]) { + [self.eventRegistrations removeObjectAtIndex:i]; + } else { + i++; + } + } + } else { + [self.eventRegistrations removeAllObjects]; + } + return cancelEvents; +} + +/** + * Applies the given Operation, updates our cache, and returns the appropriate events and changes + */ +- (FViewOperationResult *) applyOperation:(id )operation writesCache:(FWriteTreeRef *)writesCache serverCache:(id )optCompleteServerCache { + if (operation.type == FOperationTypeMerge && operation.source.queryParams != nil) { + NSAssert(self.viewCache.completeServerSnap != nil, @"We should always have a full cache before handling merges"); + NSAssert(self.viewCache.completeEventSnap != nil, @"Missing event cache, even though we have a server cache"); + } + FViewCache *oldViewCache = self.viewCache; + FViewProcessorResult *result = [self.processor applyOperationOn:oldViewCache operation:operation writesCache:writesCache completeCache:optCompleteServerCache]; + + NSAssert(result.viewCache.cachedServerSnap.isFullyInitialized || !oldViewCache.cachedServerSnap.isFullyInitialized, @"Once a server snap is complete, it should never go back."); + + self.viewCache = result.viewCache; + NSArray *events = [self generateEventsForChanges:result.changes eventCache:result.viewCache.cachedEventSnap.indexedNode registration:nil]; + return [[FViewOperationResult alloc] initWithChanges:result.changes events:events]; +} + +- (NSArray *) initialEvents:(id)registration { + FCacheNode *eventSnap = self.viewCache.cachedEventSnap; + NSMutableArray *initialChanges = [[NSMutableArray alloc] init]; + [eventSnap.indexedNode.node enumerateChildrenUsingBlock:^(NSString *key, id node, BOOL *stop) { + FIndexedNode *indexed = [FIndexedNode indexedNodeWithNode:node]; + FChange *change = [[FChange alloc] initWithType:FIRDataEventTypeChildAdded indexedNode:indexed childKey:key]; + [initialChanges addObject:change]; + }]; + if (eventSnap.isFullyInitialized) { + FChange *change = [[FChange alloc] initWithType:FIRDataEventTypeValue indexedNode:eventSnap.indexedNode]; + [initialChanges addObject:change]; + } + return [self generateEventsForChanges:initialChanges eventCache:eventSnap.indexedNode registration:registration]; +} + +- (NSArray *) generateEventsForChanges:(NSArray *)changes eventCache:(FIndexedNode *)eventCache registration:(id)registration { + NSArray *registrations; + if (registration == nil) { + registrations = [[NSArray alloc] initWithArray:self.eventRegistrations]; + } else { + registrations = [[NSArray alloc] initWithObjects:registration, nil]; + } + return [self.eventGenerator generateEventsForChanges:changes eventCache:eventCache eventRegistrations:registrations]; +} + +- (NSString *) description { + return [NSString stringWithFormat:@"FView (%@)", self.query]; +} +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FViewCache.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FViewCache.h new file mode 100644 index 0000000..4d01877 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FViewCache.h @@ -0,0 +1,35 @@ +#/* +* Copyright 2017 Google +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +#import + +@protocol FNode; +@class FCacheNode; +@class FIndexedNode; + +@interface FViewCache : NSObject + +- (id) initWithEventCache:(FCacheNode *)eventCache serverCache:(FCacheNode *)serverCache; + +- (FViewCache *) updateEventSnap:(FIndexedNode *)eventSnap isComplete:(BOOL)complete isFiltered:(BOOL)filtered; +- (FViewCache *) updateServerSnap:(FIndexedNode *)serverSnap isComplete:(BOOL)complete isFiltered:(BOOL)filtered; + +@property (nonatomic, strong, readonly) FCacheNode *cachedEventSnap; +@property (nonatomic, strong, readonly) id completeEventSnap; +@property (nonatomic, strong, readonly) FCacheNode *cachedServerSnap; +@property (nonatomic, strong, readonly) id completeServerSnap; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FViewCache.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FViewCache.m new file mode 100644 index 0000000..c6ec8b1 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/FViewCache.m @@ -0,0 +1,61 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FViewCache.h" +#import "FCacheNode.h" +#import "FNode.h" +#import "FEmptyNode.h" + +@interface FViewCache () +@property (nonatomic, strong, readwrite) FCacheNode *cachedEventSnap; +@property (nonatomic, strong, readwrite) FCacheNode *cachedServerSnap; +@end + +@implementation FViewCache + +- (id) initWithEventCache:(FCacheNode *)eventCache serverCache:(FCacheNode *)serverCache { + self = [super init]; + if (self) { + self.cachedEventSnap = eventCache; + self.cachedServerSnap = serverCache; + } + return self; +} + +- (FViewCache *) updateEventSnap:(FIndexedNode *)eventSnap isComplete:(BOOL)complete isFiltered:(BOOL)filtered { + FCacheNode *updatedEventCache = [[FCacheNode alloc] initWithIndexedNode:eventSnap + isFullyInitialized:complete + isFiltered:filtered]; + return [[FViewCache alloc] initWithEventCache:updatedEventCache serverCache:self.cachedServerSnap]; +} + +- (FViewCache *) updateServerSnap:(FIndexedNode *)serverSnap isComplete:(BOOL)complete isFiltered:(BOOL)filtered { + FCacheNode *updatedServerCache = [[FCacheNode alloc] initWithIndexedNode:serverSnap + isFullyInitialized:complete + isFiltered:filtered]; + return [[FViewCache alloc] initWithEventCache:self.cachedEventSnap serverCache:updatedServerCache]; +} + +- (id) completeEventSnap { + return (self.cachedEventSnap.isFullyInitialized) ? self.cachedEventSnap.node : nil; +} + +- (id) completeServerSnap { + return (self.cachedServerSnap.isFullyInitialized) ? self.cachedServerSnap.node : nil; +} + + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FChildChangeAccumulator.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FChildChangeAccumulator.h new file mode 100644 index 0000000..59b0a85 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FChildChangeAccumulator.h @@ -0,0 +1,28 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FChange; + + +@interface FChildChangeAccumulator : NSObject + +- (id) init; +- (void) trackChildChange:(FChange *)change; +- (NSArray *) changes; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FChildChangeAccumulator.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FChildChangeAccumulator.m new file mode 100644 index 0000000..e43fd7c --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FChildChangeAccumulator.m @@ -0,0 +1,80 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FChildChangeAccumulator.h" +#import "FChange.h" +#import "FIndex.h" + +@interface FChildChangeAccumulator () +@property (nonatomic, strong) NSMutableDictionary *changeMap; +@end + +@implementation FChildChangeAccumulator + +- (id) init { + self = [super init]; + if (self) { + self.changeMap = [[NSMutableDictionary alloc] init]; + } + return self; +} + +- (void) trackChildChange:(FChange *)change { + FIRDataEventType type = change.type; + NSString *childKey = change.childKey; + NSAssert(type == FIRDataEventTypeChildAdded || type == FIRDataEventTypeChildChanged || type == FIRDataEventTypeChildRemoved, @"Only child changes supported for tracking."); + NSAssert(![change.childKey isEqualToString:@".priority"], @"Changes not tracked on priority"); + if (self.changeMap[childKey] != nil) { + FChange *oldChange = [self.changeMap objectForKey:childKey]; + FIRDataEventType oldType = oldChange.type; + if (type == FIRDataEventTypeChildAdded && oldType == FIRDataEventTypeChildRemoved) { + FChange *newChange = [[FChange alloc] initWithType:FIRDataEventTypeChildChanged + indexedNode:change.indexedNode + childKey:childKey + oldIndexedNode:oldChange.indexedNode]; + [self.changeMap setObject:newChange forKey:childKey]; + } else if (type == FIRDataEventTypeChildRemoved && oldType == FIRDataEventTypeChildAdded) { + [self.changeMap removeObjectForKey:childKey]; + } else if (type == FIRDataEventTypeChildRemoved && oldType == FIRDataEventTypeChildChanged) { + FChange *newChange = [[FChange alloc] initWithType:FIRDataEventTypeChildRemoved + indexedNode:oldChange.oldIndexedNode + childKey:childKey]; + [self.changeMap setObject:newChange forKey:childKey]; + } else if (type == FIRDataEventTypeChildChanged && oldType == FIRDataEventTypeChildAdded) { + FChange *newChange = [[FChange alloc] initWithType:FIRDataEventTypeChildAdded + indexedNode:change.indexedNode + childKey:childKey]; + [self.changeMap setObject:newChange forKey:childKey]; + } else if (type == FIRDataEventTypeChildChanged && oldType == FIRDataEventTypeChildChanged) { + FChange *newChange = [[FChange alloc] initWithType:FIRDataEventTypeChildChanged + indexedNode:change.indexedNode + childKey:childKey + oldIndexedNode:oldChange.oldIndexedNode]; + [self.changeMap setObject:newChange forKey:childKey]; + } else { + NSString *reason = [NSString stringWithFormat:@"Illegal combination of changes: %@ occurred after %@", change, oldChange]; + @throw [[NSException alloc] initWithName:@"FirebaseDatabaseInternalError" reason:reason userInfo:nil]; + } + } else { + [self.changeMap setObject:change forKey:childKey]; + } +} + +- (NSArray *) changes { + return [self.changeMap allValues]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FCompleteChildSource.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FCompleteChildSource.h new file mode 100644 index 0000000..4e99045 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FCompleteChildSource.h @@ -0,0 +1,28 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@protocol FNode; +@class FNamedNode; +@protocol FIndex; + +@protocol FCompleteChildSource + +- (id) completeChild:(NSString *)childKey; +- (FNamedNode *) childByIndex:(id)index afterChild:(FNamedNode *)child isReverse:(BOOL)reverse; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FIndexedFilter.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FIndexedFilter.h new file mode 100644 index 0000000..5081a77 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FIndexedFilter.h @@ -0,0 +1,27 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FNodeFilter.h" + +@protocol FIndex; + + +@interface FIndexedFilter : NSObject + +- (id) initWithIndex:(id)theIndex; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FIndexedFilter.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FIndexedFilter.m new file mode 100644 index 0000000..44c411c --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FIndexedFilter.m @@ -0,0 +1,147 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FNode.h" +#import "FIndexedFilter.h" +#import "FChildChangeAccumulator.h" +#import "FIndex.h" +#import "FChange.h" +#import "FChildrenNode.h" +#import "FKeyIndex.h" +#import "FEmptyNode.h" +#import "FIndexedNode.h" + +@interface FIndexedFilter () +@property (nonatomic, strong, readwrite) id index; +@end + +@implementation FIndexedFilter +- (id) initWithIndex:(id)theIndex { + self = [super init]; + if (self) { + self.index = theIndex; + } + return self; +} + +- (FIndexedNode *)updateChildIn:(FIndexedNode *)indexedNode + forChildKey:(NSString *)childKey + newChild:(id)newChildSnap + affectedPath:(FPath *)affectedPath + fromSource:(id)source + accumulator:(FChildChangeAccumulator *)optChangeAccumulator +{ + NSAssert([indexedNode hasIndex:self.index], @"The index in FIndexedNode must match the index of the filter"); + id node = indexedNode.node; + id oldChildSnap = [node getImmediateChild:childKey]; + + // Check if anything actually changed. + if ([[oldChildSnap getChild:affectedPath] isEqual:[newChildSnap getChild:affectedPath]]) { + // There's an edge case where a child can enter or leave the view because affectedPath was set to null. + // In this case, affectedPath will appear null in both the old and new snapshots. So we need + // to avoid treating these cases as "nothing changed." + if (oldChildSnap.isEmpty == newChildSnap.isEmpty) { + // Nothing changed. + #ifdef DEBUG + NSAssert([oldChildSnap isEqual:newChildSnap], @"Old and new snapshots should be equal."); + #endif + + return indexedNode; + } + } + if (optChangeAccumulator) { + if (newChildSnap.isEmpty) { + if ([node hasChild:childKey]) { + FChange *change = [[FChange alloc] initWithType:FIRDataEventTypeChildRemoved + indexedNode:[FIndexedNode indexedNodeWithNode:oldChildSnap] + childKey:childKey]; + [optChangeAccumulator trackChildChange:change]; + } else { + NSAssert(node.isLeafNode, @"A child remove without an old child only makes sense on a leaf node."); + } + } else if (oldChildSnap.isEmpty) { + FChange *change = [[FChange alloc] initWithType:FIRDataEventTypeChildAdded + indexedNode:[FIndexedNode indexedNodeWithNode:newChildSnap] + childKey:childKey]; + [optChangeAccumulator trackChildChange:change]; + } else { + FChange *change = [[FChange alloc] initWithType:FIRDataEventTypeChildChanged + indexedNode:[FIndexedNode indexedNodeWithNode:newChildSnap] + childKey:childKey + oldIndexedNode:[FIndexedNode indexedNodeWithNode:oldChildSnap]]; + [optChangeAccumulator trackChildChange:change]; + } + } + if (node.isLeafNode && newChildSnap.isEmpty) { + return indexedNode; + } else { + return [indexedNode updateChild:childKey withNewChild:newChildSnap]; + } +} + +- (FIndexedNode *)updateFullNode:(FIndexedNode *)oldSnap + withNewNode:(FIndexedNode *)newSnap + accumulator:(FChildChangeAccumulator *)optChangeAccumulator +{ + if (optChangeAccumulator) { + [oldSnap.node enumerateChildrenUsingBlock:^(NSString *childKey, id childNode, BOOL *stop) { + if (![newSnap.node hasChild:childKey]) { + FChange *change = [[FChange alloc] initWithType:FIRDataEventTypeChildRemoved + indexedNode:[FIndexedNode indexedNodeWithNode:childNode] + childKey:childKey]; + [optChangeAccumulator trackChildChange:change]; + } + }]; + + [newSnap.node enumerateChildrenUsingBlock:^(NSString *childKey, id childNode, BOOL *stop) { + if ([oldSnap.node hasChild:childKey]) { + id oldChildSnap = [oldSnap.node getImmediateChild:childKey]; + if (![oldChildSnap isEqual:childNode]) { + FChange *change = [[FChange alloc] initWithType:FIRDataEventTypeChildChanged + indexedNode:[FIndexedNode indexedNodeWithNode:childNode] + childKey:childKey + oldIndexedNode:[FIndexedNode indexedNodeWithNode:oldChildSnap]]; + [optChangeAccumulator trackChildChange:change]; + } + } else { + FChange *change = [[FChange alloc] initWithType:FIRDataEventTypeChildAdded + indexedNode:[FIndexedNode indexedNodeWithNode:childNode] + childKey:childKey]; + [optChangeAccumulator trackChildChange:change]; + } + }]; + } + return newSnap; +} + +- (FIndexedNode *)updatePriority:(id)priority forNode:(FIndexedNode *)oldSnap +{ + if ([oldSnap.node isEmpty]) { + return oldSnap; + } else { + return [oldSnap updatePriority:priority]; + } +} + +- (BOOL) filtersNodes { + return NO; +} + +- (id) indexedFilter { + return self; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FLimitedFilter.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FLimitedFilter.h new file mode 100644 index 0000000..1690980 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FLimitedFilter.h @@ -0,0 +1,26 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FNodeFilter.h" + +@class FQueryParams; + + +@interface FLimitedFilter : NSObject + +- (id) initWithQueryParams:(FQueryParams *)params; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FLimitedFilter.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FLimitedFilter.m new file mode 100644 index 0000000..8bc6e87 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FLimitedFilter.m @@ -0,0 +1,243 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FLimitedFilter.h" +#import "FChildChangeAccumulator.h" +#import "FIndex.h" +#import "FRangedFilter.h" +#import "FQueryParams.h" +#import "FQueryParams.h" +#import "FNamedNode.h" +#import "FEmptyNode.h" +#import "FChildrenNode.h" +#import "FCompleteChildSource.h" +#import "FChange.h" +#import "FTreeSortedDictionary.h" + +@interface FLimitedFilter () +@property (nonatomic, strong) FRangedFilter *rangedFilter; +@property (nonatomic, strong, readwrite) id index; +@property (nonatomic) NSInteger limit; +@property (nonatomic) BOOL reverse; + +@end + +@implementation FLimitedFilter +- (id) initWithQueryParams:(FQueryParams *)params { + self = [super init]; + if (self) { + self.rangedFilter = [[FRangedFilter alloc] initWithQueryParams:params]; + self.index = params.index; + self.limit = params.limit; + self.reverse = !params.isViewFromLeft; + } + return self; +} + + +- (FIndexedNode *)updateChildIn:(FIndexedNode *)oldSnap + forChildKey:(NSString *)childKey + newChild:(id)newChildSnap + affectedPath:(FPath *)affectedPath + fromSource:(id)source + accumulator:(FChildChangeAccumulator *)optChangeAccumulator +{ + if (![self.rangedFilter matchesKey:childKey andNode:newChildSnap]) { + newChildSnap = [FEmptyNode emptyNode]; + } + if ([[oldSnap.node getImmediateChild:childKey] isEqual:newChildSnap]) { + // No change + return oldSnap; + } else if (oldSnap.node.numChildren < self.limit) { + return [[self.rangedFilter indexedFilter] updateChildIn:oldSnap + forChildKey:childKey + newChild:newChildSnap + affectedPath:affectedPath + fromSource:source + accumulator:optChangeAccumulator]; + } else { + return [self fullLimitUpdateNode:oldSnap + forChildKey:childKey + newChild:newChildSnap + fromSource:source + accumulator:optChangeAccumulator]; + } +} + +- (FIndexedNode *)fullLimitUpdateNode:(FIndexedNode *)oldIndexed + forChildKey:(NSString *)childKey + newChild:(id)newChildSnap + fromSource:(id)source + accumulator:(FChildChangeAccumulator *)optChangeAccumulator +{ + NSAssert(oldIndexed.node.numChildren == self.limit, @"Should have number of children equal to limit."); + + FNamedNode *windowBoundary = self.reverse ? oldIndexed.firstChild : oldIndexed.lastChild; + + BOOL inRange = [self.rangedFilter matchesKey:childKey andNode:newChildSnap]; + if ([oldIndexed.node hasChild:childKey]) { + // `childKey` was already in `oldSnap`. Figure out if it remains in the window or needs to be replaced. + id oldChildSnap = [oldIndexed.node getImmediateChild:childKey]; + + // In case the `newChildSnap` falls outside the window, get the `nextChild` that might replace it. + FNamedNode *nextChild = [source childByIndex:self.index afterChild:windowBoundary isReverse:(BOOL)self.reverse]; + if (nextChild != nil && ([nextChild.name isEqualToString:childKey] || + [oldIndexed.node hasChild:nextChild.name])) { + // There is a weird edge case where a node is updated as part of a merge in the write tree, but hasn't + // been applied to the limited filter yet. Ignore this next child which will be updated later in + // the limited filter... + nextChild = [source childByIndex:self.index afterChild:nextChild isReverse:self.reverse]; + } + + + + // Figure out if `newChildSnap` is in range and ordered before `nextChild` + BOOL remainsInWindow = inRange && !newChildSnap.isEmpty; + remainsInWindow = remainsInWindow && (!nextChild || [self.index compareKey:nextChild.name + andNode:nextChild.node + toOtherKey:childKey + andNode:newChildSnap + reverse:self.reverse] >= NSOrderedSame); + if (remainsInWindow) { + // `newChildSnap` is ordered before `nextChild`, so it's a child changed event + if (optChangeAccumulator != nil) { + FChange *change = [[FChange alloc] initWithType:FIRDataEventTypeChildChanged + indexedNode:[FIndexedNode indexedNodeWithNode:newChildSnap] + childKey:childKey + oldIndexedNode:[FIndexedNode indexedNodeWithNode:oldChildSnap]]; + [optChangeAccumulator trackChildChange:change]; + } + return [oldIndexed updateChild:childKey withNewChild:newChildSnap]; + } else { + // `newChildSnap` is ordered after `nextChild`, so it's a child removed event + if (optChangeAccumulator != nil) { + FChange *change = [[FChange alloc] initWithType:FIRDataEventTypeChildRemoved + indexedNode:[FIndexedNode indexedNodeWithNode:oldChildSnap] + childKey:childKey]; + [optChangeAccumulator trackChildChange:change]; + } + FIndexedNode *newIndexed = [oldIndexed updateChild:childKey withNewChild:[FEmptyNode emptyNode]]; + + // We need to check if the `nextChild` is actually in range before adding it + BOOL nextChildInRange = (nextChild != nil) && [self.rangedFilter matchesKey:nextChild.name + andNode:nextChild.node]; + if (nextChildInRange) { + if (optChangeAccumulator != nil) { + FChange *change = [[FChange alloc] initWithType:FIRDataEventTypeChildAdded + indexedNode:[FIndexedNode indexedNodeWithNode:nextChild.node] + childKey:nextChild.name]; + [optChangeAccumulator trackChildChange:change]; + } + return [newIndexed updateChild:nextChild.name withNewChild:nextChild.node]; + } else { + return newIndexed; + } + } + } else if (newChildSnap.isEmpty) { + // We're deleting a node, but it was not in the window, so ignore it. + return oldIndexed; + } else if (inRange) { + // `newChildSnap` is in range, but was ordered after `windowBoundary`. If this has changed, we bump out the + // `windowBoundary` and add the `newChildSnap` + if ([self.index compareKey:windowBoundary.name + andNode:windowBoundary.node + toOtherKey:childKey + andNode:newChildSnap + reverse:self.reverse] >= NSOrderedSame) { + if (optChangeAccumulator != nil) { + FChange *removedChange = [[FChange alloc] initWithType:FIRDataEventTypeChildRemoved + indexedNode:[FIndexedNode indexedNodeWithNode:windowBoundary.node] + childKey:windowBoundary.name]; + FChange *addedChange = [[FChange alloc] initWithType:FIRDataEventTypeChildAdded + indexedNode:[FIndexedNode indexedNodeWithNode:newChildSnap] + childKey:childKey]; + [optChangeAccumulator trackChildChange:removedChange]; + [optChangeAccumulator trackChildChange:addedChange]; + } + return [[oldIndexed updateChild:childKey withNewChild:newChildSnap] updateChild:windowBoundary.name + withNewChild:[FEmptyNode emptyNode]]; + } else { + return oldIndexed; + } + } else { + // `newChildSnap` was not in range and remains not in range, so ignore it. + return oldIndexed; + } +} + +- (FIndexedNode *)updateFullNode:(FIndexedNode *)oldSnap + withNewNode:(FIndexedNode *)newSnap + accumulator:(FChildChangeAccumulator *)optChangeAccumulator +{ + __block FIndexedNode *filtered; + if (newSnap.node.isLeafNode || newSnap.node.isEmpty) { + // Make sure we have a children node with the correct index, not a leaf node + filtered = [FIndexedNode indexedNodeWithNode:[FEmptyNode emptyNode] index:self.index]; + } else { + filtered = newSnap; + // Don't support priorities on queries. + filtered = [filtered updatePriority:[FEmptyNode emptyNode]]; + FNamedNode *startPost = nil; + FNamedNode *endPost = nil; + if (self.reverse) { + startPost = self.rangedFilter.endPost; + endPost = self.rangedFilter.startPost; + } else { + startPost = self.rangedFilter.startPost; + endPost = self.rangedFilter.endPost; + } + __block BOOL foundStartPost = NO; + __block NSUInteger count = 0; + [newSnap enumerateChildrenReverse:self.reverse usingBlock:^(NSString *childKey, id childNode, BOOL *stop) { + if (!foundStartPost && [self.index compareKey:startPost.name + andNode:startPost.node + toOtherKey:childKey + andNode:childNode + reverse:self.reverse] <= NSOrderedSame) { + // Start adding + foundStartPost = YES; + } + BOOL inRange = foundStartPost && count < self.limit; + inRange = inRange && [self.index compareKey:childKey + andNode:childNode + toOtherKey:endPost.name + andNode:endPost.node + reverse:self.reverse] <= NSOrderedSame; + if (inRange) { + count++; + } else { + filtered = [filtered updateChild:childKey withNewChild:[FEmptyNode emptyNode]]; + } + }]; + } + return [self.indexedFilter updateFullNode:oldSnap withNewNode:filtered accumulator:optChangeAccumulator]; +} + +- (FIndexedNode *)updatePriority:(id)priority forNode:(FIndexedNode *)oldSnap +{ + // Don't support priorities on queries. + return oldSnap; +} + +- (BOOL) filtersNodes { + return YES; +} + +- (id) indexedFilter { + return self.rangedFilter.indexedFilter; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FNodeFilter.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FNodeFilter.h new file mode 100644 index 0000000..f29a85a --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Core/View/Filter/FNodeFilter.h @@ -0,0 +1,71 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@protocol FNode; +@class FIndexedNode; +@protocol FCompleteChildSource; +@class FChildChangeAccumulator; +@protocol FIndex; +@class FPath; + +/** +* FNodeFilter is used to update nodes and complete children of nodes while applying queries on the fly and keeping +* track of any child changes. This class does not track value changes as value changes depend on more than just the +* node itself. Different kind of queries require different kind of implementations of this interface. +*/ +@protocol FNodeFilter + +/** +* Update a single complete child in the snap. If the child equals the old child in the snap, this is a no-op. +* The method expects an indexed snap. +*/ +- (FIndexedNode *) updateChildIn:(FIndexedNode *)oldSnap + forChildKey:(NSString *)childKey + newChild:(id)newChildSnap + affectedPath:(FPath *)affectedPath + fromSource:(id)source + accumulator:(FChildChangeAccumulator *)optChangeAccumulator; + +/** +* Update a node in full and output any resulting change from this complete update. +*/ +- (FIndexedNode *) updateFullNode:(FIndexedNode *)oldSnap + withNewNode:(FIndexedNode *)newSnap + accumulator:(FChildChangeAccumulator *)optChangeAccumulator; + +/** +* Update the priority of the root node +*/ +- (FIndexedNode *) updatePriority:(id)priority forNode:(FIndexedNode *)oldSnap; + +/** +* Returns true if children might be filtered due to query critiera +*/ +- (BOOL) filtersNodes; + +/** +* Returns the index filter that this filter uses to get a NodeFilter that doesn't filter any children. +*/ +@property (nonatomic, strong, readonly) id indexedFilter; + +/** +* Returns the index that this filter uses +*/ +@property (nonatomic, strong, readonly) id index; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FClock.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FClock.h new file mode 100644 index 0000000..1924ad4 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FClock.h @@ -0,0 +1,35 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@protocol FClock + +- (NSTimeInterval)currentTime; + +@end + +@interface FSystemClock : NSObject + ++ (FSystemClock *)clock; + +@end + +@interface FOffsetClock : NSObject + +- (id)initWithClock:(id)clock offset:(NSTimeInterval)offset; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FClock.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FClock.m new file mode 100644 index 0000000..2464056 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FClock.m @@ -0,0 +1,58 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FClock.h" + +@implementation FSystemClock + +- (NSTimeInterval)currentTime { + return [[NSDate date] timeIntervalSince1970]; +} + ++ (FSystemClock *)clock { + static dispatch_once_t onceToken; + static FSystemClock *clock; + dispatch_once(&onceToken, ^{ + clock = [[FSystemClock alloc] init]; + }); + return clock; +} + +@end + +@interface FOffsetClock () + +@property (nonatomic, strong) id clock; +@property (nonatomic) NSTimeInterval offset; + +@end + +@implementation FOffsetClock + +- (NSTimeInterval)currentTime { + return [self.clock currentTime] + self.offset; +} + +- (id)initWithClock:(id)clock offset:(NSTimeInterval)offset { + self = [super init]; + if (self != nil) { + self->_clock = clock; + self->_offset = offset; + } + return self; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FEventGenerator.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FEventGenerator.h new file mode 100644 index 0000000..1bc011b --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FEventGenerator.h @@ -0,0 +1,27 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FQuerySpec; +@class FIndexedNode; +@protocol FNode; + +@interface FEventGenerator : NSObject +- (id) initWithQuery:(FQuerySpec *)query; +- (NSArray*) generateEventsForChanges:(NSArray*)changes eventCache:(FIndexedNode *)eventCache + eventRegistrations:(NSArray*)registrations; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FEventGenerator.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FEventGenerator.m new file mode 100644 index 0000000..f6e8f47 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FEventGenerator.m @@ -0,0 +1,141 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FEventGenerator.h" +#import "FNode.h" +#import "FIRDatabaseQuery_Private.h" +#import "FQueryParams.h" +#import "FQuerySpec.h" +#import "FChange.h" +#import "FNamedNode.h" +#import "FEventRegistration.h" +#import "FEvent.h" +#import "FDataEvent.h" + +@interface FEventGenerator () +@property (nonatomic, strong) FQuerySpec *query; +@end + +/** +* An EventGenerator is used to convert "raw" changes (fb.core.view.Change) as computed by the +* CacheDiffer into actual events (fb.core.view.Event) that can be raised. See generateEventsForChanges() +* for details. +*/ +@implementation FEventGenerator + +- (id)initWithQuery:(FQuerySpec *)query { + self = [super init]; + if (self) { + self.query = query; + } + return self; +} + +/** +* Given a set of raw changes (no moved events, and prevName not specified yet), and a set of EventRegistrations that +* should be notified of these changes, generate the actual events to be raised. +* +* Notes: +* - child_moved events will be synthesized at this time for any child_changed events that affect our index +* - prevName will be calculated based on the index ordering +* +* @param changes NSArray of FChange, not necessarily in order. +* @param registrations is NSArray of FEventRegistration. +* @return NSArray of FEvent. +*/ +- (NSArray *) generateEventsForChanges:(NSArray *)changes + eventCache:(FIndexedNode *)eventCache + eventRegistrations:(NSArray *)registrations +{ + NSMutableArray *events = [[NSMutableArray alloc] init]; + + // child_moved is index-specific, so check all our child_changed events to see if we need to materialize + // child_moved events with this view's index + NSMutableArray *moves = [[NSMutableArray alloc] init]; + for (FChange *change in changes) { + if (change.type == FIRDataEventTypeChildChanged && [self.query.index indexedValueChangedBetween:change.oldIndexedNode.node + and:change.indexedNode.node]) { + FChange *moveChange = [[FChange alloc] initWithType:FIRDataEventTypeChildMoved + indexedNode:change.indexedNode + childKey:change.childKey + oldIndexedNode:nil]; + [moves addObject:moveChange]; + } + } + + [self generateEvents:events forType:FIRDataEventTypeChildRemoved changes:changes eventCache:eventCache eventRegistrations:registrations]; + [self generateEvents:events forType:FIRDataEventTypeChildAdded changes:changes eventCache:eventCache eventRegistrations:registrations]; + [self generateEvents:events forType:FIRDataEventTypeChildMoved changes:moves eventCache:eventCache eventRegistrations:registrations]; + [self generateEvents:events forType:FIRDataEventTypeChildChanged changes:changes eventCache:eventCache eventRegistrations:registrations]; + [self generateEvents:events forType:FIRDataEventTypeValue changes:changes eventCache:eventCache eventRegistrations:registrations]; + + return events; +} + +- (void) generateEvents:(NSMutableArray *)events + forType:(FIRDataEventType)eventType + changes:(NSArray *)changes + eventCache:(FIndexedNode *)eventCache + eventRegistrations:(NSArray *)registrations +{ + NSMutableArray *filteredChanges = [[NSMutableArray alloc] init]; + for (FChange *change in changes) { + if (change.type == eventType) { + [filteredChanges addObject:change]; + } + } + + id index = self.query.index; + + [filteredChanges sortUsingComparator:^NSComparisonResult(FChange *one, FChange *two) { + if (one.childKey == nil || two.childKey == nil) { + @throw [[NSException alloc] initWithName:@"InternalInconsistencyError" + reason:@"Should only compare child_ events" + userInfo:nil]; + } + return [index compareKey:one.childKey + andNode:one.indexedNode.node + toOtherKey:two.childKey + andNode:two.indexedNode.node]; + }]; + + for (FChange *change in filteredChanges) { + for (id registration in registrations) { + if ([registration responseTo:eventType]) { + id event = [self generateEventForChange:change registration:registration eventCache:eventCache]; + [events addObject:event]; + } + } + } +} + +- (id) generateEventForChange:(FChange *)change + registration:(id)registration + eventCache:(FIndexedNode *)eventCache +{ + FChange *materializedChange; + if (change.type == FIRDataEventTypeValue || change.type == FIRDataEventTypeChildRemoved) { + materializedChange = change; + } else { + NSString *prevChildKey = [eventCache predecessorForChildKey:change.childKey + childNode:change.indexedNode.node + index:self.query.index]; + materializedChange = [change changeWithPrevKey:prevChildKey]; + } + return [registration createEventFrom:materializedChange query:self.query]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FIRDatabaseConfig_Private.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FIRDatabaseConfig_Private.h new file mode 100644 index 0000000..b0a9dc4 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FIRDatabaseConfig_Private.h @@ -0,0 +1,35 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRDatabaseConfig.h" +#import "FAuthTokenProvider.h" + +@protocol FStorageEngine; + +@interface FIRDatabaseConfig () + +@property (nonatomic, readonly) BOOL isFrozen; +@property (nonatomic, strong, readonly) NSString *sessionIdentifier; +@property (nonatomic, strong) id authTokenProvider; +@property (nonatomic, strong) id forceStorageEngine; + +- (void)freeze; + ++ (FIRDatabaseConfig *)configForName:(NSString *)name; + ++ (FIRDatabaseConfig *)defaultConfig; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FIRDatabaseReference.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FIRDatabaseReference.m new file mode 100644 index 0000000..bdbbdfd --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FIRDatabaseReference.m @@ -0,0 +1,404 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FIRDatabaseReference.h" +#import +#import "FUtilities.h" +#import "FNextPushId.h" +#import "FIRDatabaseQuery_Private.h" +#import "FValidation.h" +#import "FIRDatabaseReference_Private.h" +#import "FStringUtilities.h" +#import "FSnapshotUtilities.h" +#import "FIRDatabaseConfig.h" +#import "FIRDatabaseConfig_Private.h" +#import "FQueryParams.h" +#import "FIRDatabase.h" + +@implementation FIRDatabaseReference + ++ (FIRDatabaseConfig *)defaultConfig { + return [FIRDatabaseConfig defaultConfig]; +} + +#pragma mark - +#pragma mark Constructors + +- (id) initWithConfig:(FIRDatabaseConfig *)config { + FParsedUrl* parsedUrl = [FUtilities parseUrl:[[FIRApp defaultApp] options].databaseURL]; + [FValidation validateFrom:@"initWithUrl:" validURL:parsedUrl]; + return [self initWithRepo:[FRepoManager getRepo:parsedUrl.repoInfo config:config] path:parsedUrl.path]; +} + +- (id) initWithRepo:(FRepo *)repo path:(FPath *)path { + return [super initWithRepo:repo + path:path + params:[FQueryParams defaultInstance] + orderByCalled:NO + priorityMethodCalled:NO]; +} + + +#pragma mark - +#pragma mark Ancillary methods + +- (nullable NSString *) key { + if([self.path isEmpty]) { + return nil; + } + else { + return [self.path getBack]; + } +} + +- (FIRDatabase *) database { + return self.repo.database; +} + +- (FIRDatabaseReference *) parent { + FPath* parentPath = [self.path parent]; + FIRDatabaseReference * parent = nil; + if (parentPath != nil ) { + parent = [[FIRDatabaseReference alloc] initWithRepo:self.repo path:parentPath]; + } + return parent; +} + +- (NSString *) URL { + FIRDatabaseReference * parent = [self parent]; + return parent == nil ? [self.repo description] : [NSString stringWithFormat:@"%@/%@", [parent description], [FStringUtilities urlEncoded:self.key]]; +} + +- (NSString *) description { + return [self URL]; +} + +- (FIRDatabaseReference *) root { + return [[FIRDatabaseReference alloc] initWithRepo:self.repo path:[[FPath alloc] initWith:@""]]; +} + +#pragma mark - +#pragma mark Child methods + +- (FIRDatabaseReference *)childByAppendingPath:(NSString *)pathString { + return [self child:pathString]; +} + +- (FIRDatabaseReference *)child:(NSString *)pathString { + if ([self.path getFront] == nil) { + // we're at the root + [FValidation validateFrom:@"child:" validRootPathString:pathString]; + } else { + [FValidation validateFrom:@"child:" validPathString:pathString]; + } + FPath* path = [self.path childFromString:pathString]; + FIRDatabaseReference * firebaseRef = [[FIRDatabaseReference alloc] initWithRepo:self.repo path:path]; + return firebaseRef; +} + +- (FIRDatabaseReference *) childByAutoId { + [FValidation validateFrom:@"childByAutoId:" writablePath:self.path]; + + NSString* name = [FNextPushId get:self.repo.serverTime]; + return [self child:name]; +} + +#pragma mark - +#pragma mark Basic write methods + +- (void) setValue:(id)value { + [self setValueInternal:value andPriority:nil withCompletionBlock:nil from:@"setValue:"]; +} + +- (void) setValue:(id)value withCompletionBlock:(fbt_void_nserror_ref)block { + [self setValueInternal:value andPriority:nil withCompletionBlock:block from:@"setValue:withCompletionBlock:"]; +} + +- (void) setValue:(id)value andPriority:(id)priority { + [self setValueInternal:value andPriority:priority withCompletionBlock:nil from:@"setValue:andPriority:"]; +} + +- (void) setValue:(id)value andPriority:(id)priority withCompletionBlock:(fbt_void_nserror_ref)block { + [self setValueInternal:value andPriority:priority withCompletionBlock:block from:@"setValue:andPriority:withCompletionBlock:"]; +} + +- (void) setValueInternal:(id)value andPriority:(id)priority withCompletionBlock:(fbt_void_nserror_ref)block from:(NSString*)fn { + [FValidation validateFrom:fn writablePath:self.path]; + + fbt_void_nserror_ref userCallback = [block copy]; + id newNode = [FSnapshotUtilities nodeFrom:value priority:priority withValidationFrom:fn]; + + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + [self.repo set:self.path withNode:newNode withCallback:userCallback]; + }); +} + + +- (void) removeValue { + [self setValueInternal:nil andPriority:nil withCompletionBlock:nil from:@"removeValue:"]; +} + +- (void) removeValueWithCompletionBlock:(fbt_void_nserror_ref)block { + [self setValueInternal:nil andPriority:nil withCompletionBlock:block from:@"removeValueWithCompletionBlock:"]; +} + + +- (void) setPriority:(id)priority { + [self setPriorityInternal:priority withCompletionBlock:nil from:@"setPriority:"]; +} + +- (void) setPriority:(id)priority withCompletionBlock:(fbt_void_nserror_ref)block { + + [self setPriorityInternal:priority withCompletionBlock:block from:@"setPriority:withCompletionBlock:"]; +} + +- (void) setPriorityInternal:(id)priority withCompletionBlock:(fbt_void_nserror_ref)block from:(NSString*)fn { + [FValidation validateFrom:fn writablePath:self.path]; + + fbt_void_nserror_ref userCallback = [block copy]; + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + [self.repo set:[self.path childFromString:@".priority"] withNode:[FSnapshotUtilities nodeFrom:priority] withCallback:userCallback]; + }); +} + + +- (void) updateChildValues:(NSDictionary *)values { + [self updateChildValuesInternal:values withCompletionBlock:nil from:@"updateChildValues:"]; +} + +- (void) updateChildValues:(NSDictionary *)values withCompletionBlock:(fbt_void_nserror_ref)block { + [self updateChildValuesInternal:values withCompletionBlock:block from:@"updateChildValues:withCompletionBlock:"]; +} + +- (void) updateChildValuesInternal:(NSDictionary *)values withCompletionBlock:(fbt_void_nserror_ref)block from:(NSString*)fn { + [FValidation validateFrom:fn writablePath:self.path]; + + FCompoundWrite *merge = [FSnapshotUtilities compoundWriteFromDictionary:values withValidationFrom:fn]; + + fbt_void_nserror_ref userCallback = [block copy]; + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + [self.repo update:self.path withNodes:merge withCallback:userCallback]; + }); +} + +#pragma mark - +#pragma mark Disconnect Operations + +- (void) onDisconnectSetValue:(id)value { + [self onDisconnectSetValueInternal:value andPriority:nil withCompletionBlock:nil from:@"onDisconnectSetValue:"]; +} + +- (void) onDisconnectSetValue:(id)value withCompletionBlock:(fbt_void_nserror_ref)block { + [self onDisconnectSetValueInternal:value andPriority:nil withCompletionBlock:block from:@"onDisconnectSetValue:withCompletionBlock:"]; +} + +- (void) onDisconnectSetValue:(id)value andPriority:(id)priority { + [self onDisconnectSetValueInternal:value andPriority:priority withCompletionBlock:nil from:@"onDisconnectSetValue:andPriority:"]; +} + +- (void) onDisconnectSetValue:(id)value andPriority:(id)priority withCompletionBlock:(fbt_void_nserror_ref)block { + [self onDisconnectSetValueInternal:value andPriority:priority withCompletionBlock:block from:@"onDisconnectSetValue:andPriority:withCompletionBlock:"]; +} + +- (void) onDisconnectSetValueInternal:(id)value andPriority:(id)priority withCompletionBlock:(fbt_void_nserror_ref)block from:(NSString*)fn { + [FValidation validateFrom:fn writablePath:self.path]; + + id newNodeUnresolved = [FSnapshotUtilities nodeFrom:value priority:priority withValidationFrom:fn]; + + fbt_void_nserror_ref userCallback = [block copy]; + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + [self.repo onDisconnectSet:self.path withNode:newNodeUnresolved withCallback:userCallback]; + }); +} + + +- (void) onDisconnectRemoveValue { + [self onDisconnectSetValueInternal:nil andPriority:nil withCompletionBlock:nil from:@"onDisconnectRemoveValue:"]; +} + +- (void) onDisconnectRemoveValueWithCompletionBlock:(fbt_void_nserror_ref)block { + [self onDisconnectSetValueInternal:nil andPriority:nil withCompletionBlock:block from:@"onDisconnectRemoveValueWithCompletionBlock:"]; +} + + +- (void) onDisconnectUpdateChildValues:(NSDictionary *)values { + [self onDisconnectUpdateChildValuesInternal:values withCompletionBlock:nil from:@"onDisconnectUpdateChildValues:"]; +} + +- (void) onDisconnectUpdateChildValues:(NSDictionary *)values withCompletionBlock:(fbt_void_nserror_ref)block { + [self onDisconnectUpdateChildValuesInternal:values withCompletionBlock:block from:@"onDisconnectUpdateChildValues:withCompletionBlock:"]; +} + +- (void) onDisconnectUpdateChildValuesInternal:(NSDictionary *)values withCompletionBlock:(fbt_void_nserror_ref)block from:(NSString*)fn { + [FValidation validateFrom:fn writablePath:self.path]; + + FCompoundWrite *merge = [FSnapshotUtilities compoundWriteFromDictionary:values withValidationFrom:fn]; + + fbt_void_nserror_ref userCallback = [block copy]; + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + [self.repo onDisconnectUpdate:self.path withNodes:merge withCallback:userCallback]; + }); +} + + +- (void) cancelDisconnectOperations { + [self cancelDisconnectOperationsWithCompletionBlock:nil]; +} + +- (void) cancelDisconnectOperationsWithCompletionBlock:(fbt_void_nserror_ref)block { + fbt_void_nserror_ref callback = nil; + if (block != nil) { + callback = [block copy]; + } + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + [self.repo onDisconnectCancel:self.path withCallback:callback]; + }); +} + +#pragma mark - +#pragma mark Connection management methods + ++ (void) goOffline { + [FRepoManager interruptAll]; +} + ++ (void) goOnline { + [FRepoManager resumeAll]; +} + + +#pragma mark - +#pragma mark Data reading methods deferred to FQuery + +- (FIRDatabaseHandle)observeEventType:(FIRDataEventType)eventType withBlock:(fbt_void_datasnapshot)block { + return [self observeEventType:eventType withBlock:block withCancelBlock:nil]; +} + +- (FIRDatabaseHandle)observeEventType:(FIRDataEventType)eventType andPreviousSiblingKeyWithBlock:(fbt_void_datasnapshot_nsstring)block { + return [self observeEventType:eventType andPreviousSiblingKeyWithBlock:block withCancelBlock:nil]; +} + +- (FIRDatabaseHandle)observeEventType:(FIRDataEventType)eventType withBlock:(fbt_void_datasnapshot)block withCancelBlock:(fbt_void_nserror)cancelBlock { + return [super observeEventType:eventType withBlock:block withCancelBlock:cancelBlock]; +} + +- (FIRDatabaseHandle)observeEventType:(FIRDataEventType)eventType andPreviousSiblingKeyWithBlock:(fbt_void_datasnapshot_nsstring)block withCancelBlock:(fbt_void_nserror)cancelBlock { + return [super observeEventType:eventType andPreviousSiblingKeyWithBlock:block withCancelBlock:cancelBlock]; +} + + +- (void) removeObserverWithHandle:(FIRDatabaseHandle)handle { + [super removeObserverWithHandle:handle]; +} + + +- (void) removeAllObservers { + [super removeAllObservers]; +} + +- (void) keepSynced:(BOOL)keepSynced { + [super keepSynced:keepSynced]; +} + +- (void)observeSingleEventOfType:(FIRDataEventType)eventType withBlock:(fbt_void_datasnapshot)block { + [self observeSingleEventOfType:eventType withBlock:block withCancelBlock:nil]; +} + +- (void)observeSingleEventOfType:(FIRDataEventType)eventType andPreviousSiblingKeyWithBlock:(fbt_void_datasnapshot_nsstring)block { + [self observeSingleEventOfType:eventType andPreviousSiblingKeyWithBlock:block withCancelBlock:nil]; +} + +- (void)observeSingleEventOfType:(FIRDataEventType)eventType withBlock:(fbt_void_datasnapshot)block withCancelBlock:(fbt_void_nserror)cancelBlock { + [super observeSingleEventOfType:eventType withBlock:block withCancelBlock:cancelBlock]; +} + +- (void)observeSingleEventOfType:(FIRDataEventType)eventType andPreviousSiblingKeyWithBlock:(fbt_void_datasnapshot_nsstring)block withCancelBlock:(fbt_void_nserror)cancelBlock { + [super observeSingleEventOfType:eventType andPreviousSiblingKeyWithBlock:block withCancelBlock:cancelBlock]; +} + +#pragma mark - +#pragma mark Query methods +// These methods suppress warnings from having method definitions in FIRDatabaseReference.h for docs generation. + +- (FIRDatabaseQuery *)queryLimitedToFirst:(NSUInteger)limit { + return [super queryLimitedToFirst:limit]; +} + +- (FIRDatabaseQuery *)queryLimitedToLast:(NSUInteger)limit { + return [super queryLimitedToLast:limit]; +} + +- (FIRDatabaseQuery *)queryOrderedByChild:(NSString *)key { + return [super queryOrderedByChild:key]; +} + +- (FIRDatabaseQuery *) queryOrderedByKey { + return [super queryOrderedByKey]; +} + +- (FIRDatabaseQuery *) queryOrderedByPriority { + return [super queryOrderedByPriority]; +} + +- (FIRDatabaseQuery *)queryStartingAtValue:(id)startValue { + return [super queryStartingAtValue:startValue]; +} + +- (FIRDatabaseQuery *)queryStartingAtValue:(id)startValue childKey:(NSString *)childKey { + return [super queryStartingAtValue:startValue childKey:childKey]; +} + +- (FIRDatabaseQuery *)queryEndingAtValue:(id)endValue { + return [super queryEndingAtValue:endValue]; +} + +- (FIRDatabaseQuery *)queryEndingAtValue:(id)endValue childKey:(NSString *)childKey { + return [super queryEndingAtValue:endValue childKey:childKey]; +} + +- (FIRDatabaseQuery *)queryEqualToValue:(id)value { + return [super queryEqualToValue:value]; +} + +- (FIRDatabaseQuery *)queryEqualToValue:(id)value childKey:(NSString *)childKey { + return [super queryEqualToValue:value childKey:childKey]; +} + + +#pragma mark - +#pragma mark Transaction methods + +- (void) runTransactionBlock:(fbt_transactionresult_mutabledata)block { + [FValidation validateFrom:@"runTransactionBlock:" writablePath:self.path]; + [self runTransactionBlock:block andCompletionBlock:nil withLocalEvents:YES]; +} + +- (void) runTransactionBlock:(fbt_transactionresult_mutabledata)update andCompletionBlock:(fbt_void_nserror_bool_datasnapshot)completionBlock { + [FValidation validateFrom:@"runTransactionBlock:andCompletionBlock:" writablePath:self.path]; + [self runTransactionBlock:update andCompletionBlock:completionBlock withLocalEvents:YES]; +} + +- (void) runTransactionBlock:(fbt_transactionresult_mutabledata)block andCompletionBlock:(fbt_void_nserror_bool_datasnapshot)completionBlock withLocalEvents:(BOOL)localEvents { + [FValidation validateFrom:@"runTransactionBlock:andCompletionBlock:withLocalEvents:" writablePath:self.path]; + fbt_transactionresult_mutabledata updateCopy = [block copy]; + fbt_void_nserror_bool_datasnapshot onCompleteCopy = [completionBlock copy]; + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + [self.repo startTransactionOnPath:self.path update:updateCopy onComplete:onCompleteCopy withLocalEvents:localEvents]; + }); +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FIndex.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FIndex.h new file mode 100644 index 0000000..8ab08c8 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FIndex.h @@ -0,0 +1,50 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FImmutableSortedDictionary; +@class FNamedNode; +@protocol FNode; + +@protocol FIndex +- (NSComparisonResult) compareKey:(NSString *)key1 + andNode:(id)node1 + toOtherKey:(NSString *)key2 + andNode:(id)node2; + +- (NSComparisonResult) compareKey:(NSString *)key1 + andNode:(id)node1 + toOtherKey:(NSString *)key2 + andNode:(id)node2 + reverse:(BOOL)reverse; + +- (NSComparisonResult) compareNamedNode:(FNamedNode *)namedNode1 toNamedNode:(FNamedNode *)namedNode2; + +- (BOOL) isDefinedOn:(id)node; +- (BOOL) indexedValueChangedBetween:(id)oldNode and:(id)newNode; +- (FNamedNode*) minPost; +- (FNamedNode*) maxPost; +- (FNamedNode*) makePost:(id)indexValue name:(NSString*)name; +- (NSString*) queryDefinition; + +@end + +@interface FIndex : NSObject + ++ (id)indexFromQueryDefinition:(NSString *)string; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FIndex.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FIndex.m new file mode 100644 index 0000000..61980c7 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FIndex.m @@ -0,0 +1,38 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIndex.h" + +#import "FKeyIndex.h" +#import "FValueIndex.h" +#import "FPathIndex.h" +#import "FPriorityIndex.h" + +@implementation FIndex + ++ (id)indexFromQueryDefinition:(NSString *)string { + if ([string isEqualToString:@".key"]) { + return [FKeyIndex keyIndex]; + } else if ([string isEqualToString:@".value"]) { + return [FValueIndex valueIndex]; + } else if ([string isEqualToString:@".priority"]) { + return [FPriorityIndex priorityIndex]; + } else { + return [[FPathIndex alloc] initWithPath:[[FPath alloc] initWith:string]]; + } +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FKeyIndex.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FKeyIndex.h new file mode 100644 index 0000000..a6bf787 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FKeyIndex.h @@ -0,0 +1,23 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FIndex.h" + + +@interface FKeyIndex : NSObject ++ (id) keyIndex; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FKeyIndex.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FKeyIndex.m new file mode 100644 index 0000000..68ad461 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FKeyIndex.m @@ -0,0 +1,115 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FKeyIndex.h" +#import "FNamedNode.h" +#import "FSnapshotUtilities.h" +#import "FUtilities.h" +#import "FEmptyNode.h" + +@interface FKeyIndex () + +@property (nonatomic, strong) FNamedNode *maxPost; + +@end + +@implementation FKeyIndex + +- (id)init { + self = [super init]; + if (self) { + self.maxPost = [[FNamedNode alloc] initWithName:[FUtilities maxName] andNode:[FEmptyNode emptyNode]]; + } + return self; + +} + +- (NSComparisonResult) compareKey:(NSString *)key1 + andNode:(id)node1 + toOtherKey:(NSString *)key2 + andNode:(id)node2 +{ + return [FUtilities compareKey:key1 toKey:key2]; +} + +- (NSComparisonResult) compareKey:(NSString *)key1 + andNode:(id)node1 + toOtherKey:(NSString *)key2 + andNode:(id)node2 + reverse:(BOOL)reverse +{ + if (reverse) { + return [self compareKey:key2 andNode:node2 toOtherKey:key1 andNode:node1]; + } else { + return [self compareKey:key1 andNode:node1 toOtherKey:key2 andNode:node2]; + } +} + +- (NSComparisonResult) compareNamedNode:(FNamedNode *)namedNode1 toNamedNode:(FNamedNode *)namedNode2 +{ + return [self compareKey:namedNode1.name andNode:namedNode1.node toOtherKey:namedNode2.name andNode:namedNode2.node]; +} + +- (BOOL)isDefinedOn:(id )node { + return YES; +} + +- (BOOL)indexedValueChangedBetween:(id )oldNode and:(id )newNode { + return NO; // The key for a node never changes. +} + +- (FNamedNode *)minPost { + return [FNamedNode min]; +} + +- (FNamedNode *)makePost:(id)indexValue name:(NSString*)name { + NSString *key = indexValue.val; + NSAssert([key isKindOfClass:[NSString class]], @"KeyIndex indexValue must always be a string."); + // We just use empty node, but it'll never be compared, since our comparator only looks at name. + return [[FNamedNode alloc] initWithName:key andNode:[FEmptyNode emptyNode]]; +} + +- (NSString *) queryDefinition { + return @".key"; +} + +- (NSString *) description { + return @"FKeyIndex"; +} + +- (id)copyWithZone:(NSZone *)zone { + return self; +} + +- (BOOL) isEqual:(id)other { + // since we're a singleton. + return (other == self); +} + +- (NSUInteger) hash { + return [@".key" hash]; +} + + ++ (id) keyIndex { + static id keyIndex; + static dispatch_once_t once; + dispatch_once(&once, ^{ + keyIndex = [[FKeyIndex alloc] init]; + }); + return keyIndex; +} +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FListenComplete.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FListenComplete.h new file mode 100644 index 0000000..914a3e4 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FListenComplete.h @@ -0,0 +1,29 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FOperation.h" + + +@interface FListenComplete : NSObject + +- (id) initWithSource:(FOperationSource *)aSource path:(FPath *)aPath; + +@property (nonatomic, strong, readonly) FOperationSource *source; +@property (nonatomic, strong, readonly) FPath *path; +@property (nonatomic, readonly) FOperationType type; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FListenComplete.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FListenComplete.m new file mode 100644 index 0000000..8573075 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FListenComplete.m @@ -0,0 +1,51 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FListenComplete.h" +#import "FOperationSource.h" +#import "FPath.h" + +@interface FListenComplete () +@property (nonatomic, strong, readwrite) FOperationSource *source; +@property (nonatomic, strong, readwrite) FPath *path; +@property (nonatomic, readwrite) FOperationType type; +@end + +@implementation FListenComplete +- (id) initWithSource:(FOperationSource *)aSource path:(FPath *)aPath { + NSAssert(!aSource.fromUser, @"Can't have a listen complete from a user source"); + self = [super init]; + if (self) { + self.source = aSource; + self.path = aPath; + self.type = FOperationTypeListenComplete; + } + return self; +} + +- (id ) operationForChild:(NSString *)childKey { + if ([self.path isEmpty]) { + return [[FListenComplete alloc] initWithSource:self.source path:[FPath empty]]; + } else { + return [[FListenComplete alloc] initWithSource:self.source path:[self.path popFront]]; + } +} + +- (NSString *) description { + return [NSString stringWithFormat:@"FListenComplete { path=%@, source=%@ }", self.path, self.source]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FMaxNode.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FMaxNode.h new file mode 100644 index 0000000..6aff8c6 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FMaxNode.h @@ -0,0 +1,23 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FChildrenNode.h" + + +@interface FMaxNode : FChildrenNode + + (id) maxNode; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FMaxNode.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FMaxNode.m new file mode 100644 index 0000000..3c93684 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FMaxNode.m @@ -0,0 +1,61 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FMaxNode.h" +#import "FUtilities.h" +#import "FEmptyNode.h" + + +@implementation FMaxNode { + +} +- (id) init { + self = [super init]; + if (self) { + + } + return self; +} + ++ (id) maxNode { + static FMaxNode *maxNode = nil; + static dispatch_once_t once; + dispatch_once(&once, ^{ + maxNode = [[FMaxNode alloc] init]; + }); + return maxNode; +} + +- (NSComparisonResult) compare:(id)other { + if (other == self) { + return NSOrderedSame; + } else { + return NSOrderedDescending; + } +} + +- (BOOL)isEqual:(id)other { + return other == self; +} + +- (id) getImmediateChild:(NSString *) childName { + return [FEmptyNode emptyNode]; +} + +- (BOOL) isEmpty { + return NO; +} +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FNamedNode.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FNamedNode.h new file mode 100644 index 0000000..ac9baa6 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FNamedNode.h @@ -0,0 +1,32 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FNode.h" + +@interface FNamedNode : NSObject + +@property (nonatomic, strong, readonly) NSString* name; +@property (nonatomic, strong, readonly) id node; + + +-(id)initWithName:(NSString*)name andNode:(id)node; + ++ (FNamedNode *)nodeWithName:(NSString *)name node:(id)node; + ++ (FNamedNode*) min; ++ (FNamedNode*) max; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FNamedNode.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FNamedNode.m new file mode 100644 index 0000000..d11787b --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FNamedNode.m @@ -0,0 +1,94 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FNamedNode.h" +#import "FUtilities.h" +#import "FEmptyNode.h" +#import "FMaxNode.h" +#import "FIndex.h" + +@interface FNamedNode () +@property (nonatomic, strong, readwrite) NSString* name; +@property (nonatomic, strong, readwrite) id node; +@end + +@implementation FNamedNode + ++ (FNamedNode *)nodeWithName:(NSString *)name node:(id)node +{ + return [[FNamedNode alloc] initWithName:name andNode:node]; +} + +- (id)initWithName:(NSString *)name andNode:(id )node { + self = [super init]; + if (self) { + self.name = name; + self.node = node; + } + return self; +} + +- (id)copy +{ + return self; +} + +- (id)copyWithZone:(NSZone *)zone +{ + return self; +} + ++ (FNamedNode *)min { + static FNamedNode *min = nil; + static dispatch_once_t once; + dispatch_once(&once, ^{ + min = [[FNamedNode alloc] initWithName:[FUtilities minName] andNode:[FEmptyNode emptyNode]]; + }); + return min; +} + ++ (FNamedNode *)max { + static FNamedNode *max = nil; + static dispatch_once_t once; + dispatch_once(&once, ^{ + max = [[FNamedNode alloc] initWithName:[FUtilities maxName] andNode:[FMaxNode maxNode]]; + }); + return max; +} + +- (NSString *) description { + return [NSString stringWithFormat:@"NamedNode[%@] %@", self.name, self.node]; +} + +- (BOOL) isEqual:(id)object { + if (self == object) { return YES; } + if (object == nil || ![object isKindOfClass:[FNamedNode class]]) { return NO; } + + FNamedNode *namedNode = object; + if (![self.name isEqualToString:namedNode.name]) { return NO; } + if (![self.node isEqual:namedNode.node]) { return NO; } + + return YES; +} + +- (NSUInteger) hash { + NSUInteger nameHash = [self.name hash]; + NSUInteger nodeHash = [self.node hash]; + NSUInteger result = 31 * nameHash + nodeHash; + return result; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FPathIndex.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FPathIndex.h new file mode 100644 index 0000000..cf92ad1 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FPathIndex.h @@ -0,0 +1,23 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FIndex.h" +#import "FPath.h" + +@interface FPathIndex : NSObject +- (id) initWithPath:(FPath *)path; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FPathIndex.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FPathIndex.m new file mode 100644 index 0000000..39913aa --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FPathIndex.m @@ -0,0 +1,125 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FPathIndex.h" +#import "FUtilities.h" +#import "FMaxNode.h" +#import "FEmptyNode.h" +#import "FSnapshotUtilities.h" +#import "FNamedNode.h" +#import "FPath.h" + +@interface FPathIndex () + @property (nonatomic, strong) FPath *path; +@end + +@implementation FPathIndex + +- (id) initWithPath:(FPath *)path { + self = [super init]; + if (self) { + if (path.isEmpty || [path.getFront isEqualToString:@".priority"]) { + [NSException raise:NSInvalidArgumentException format:@"Invalid path for PathIndex: %@", path]; + } + _path = path; + } + return self; +} + +- (NSComparisonResult) compareKey:(NSString *)key1 + andNode:(id)node1 + toOtherKey:(NSString *)key2 + andNode:(id)node2 +{ + id child1 = [node1 getChild:self.path]; + id child2 = [node2 getChild:self.path]; + NSComparisonResult indexCmp = [child1 compare:child2]; + if (indexCmp == NSOrderedSame) { + return [FUtilities compareKey:key1 toKey:key2]; + } else { + return indexCmp; + } +} + +- (NSComparisonResult) compareKey:(NSString *)key1 + andNode:(id)node1 + toOtherKey:(NSString *)key2 + andNode:(id)node2 + reverse:(BOOL)reverse +{ + if (reverse) { + return [self compareKey:key2 andNode:node2 toOtherKey:key1 andNode:node1]; + } else { + return [self compareKey:key1 andNode:node1 toOtherKey:key2 andNode:node2]; + } +} + +- (NSComparisonResult) compareNamedNode:(FNamedNode *)namedNode1 toNamedNode:(FNamedNode *)namedNode2 +{ + return [self compareKey:namedNode1.name andNode:namedNode1.node toOtherKey:namedNode2.name andNode:namedNode2.node]; +} + +- (BOOL)isDefinedOn:(id )node { + return ![node getChild:self.path].isEmpty; +} + +- (BOOL)indexedValueChangedBetween:(id )oldNode and:(id )newNode { + id oldValue = [oldNode getChild:self.path]; + id newValue = [newNode getChild:self.path]; + return [oldValue compare:newValue] != NSOrderedSame; +} + +- (FNamedNode *)minPost { + return FNamedNode.min; +} + +- (FNamedNode *)maxPost { + id maxNode = [[FEmptyNode emptyNode] updateChild:self.path + withNewChild:[FMaxNode maxNode]]; + + return [[FNamedNode alloc] initWithName:[FUtilities maxName] andNode:maxNode]; +} + +- (FNamedNode*)makePost:(id)indexValue name:(NSString*)name { + id node = [[FEmptyNode emptyNode] updateChild:self.path withNewChild:indexValue]; + return [[FNamedNode alloc] initWithName:name andNode:node]; +} + +- (NSString *)queryDefinition { + return [self.path wireFormat]; +} + +- (NSString *)description { + return [NSString stringWithFormat:@"FPathIndex(%@)", self.path]; +} + +- (id)copyWithZone:(NSZone *)zone { + // Safe since we're immutable. + return self; +} + +- (BOOL) isEqual:(id)other { + if (![other isKindOfClass:[FPathIndex class]]) { + return NO; + } + return ([self.path isEqual:((FPathIndex*)other).path]); +} + +- (NSUInteger) hash { + return [self.path hash]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FPriorityIndex.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FPriorityIndex.h new file mode 100644 index 0000000..8b5904d --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FPriorityIndex.h @@ -0,0 +1,23 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FIndex.h" + +@interface FPriorityIndex : NSObject ++ (id) priorityIndex; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FPriorityIndex.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FPriorityIndex.m new file mode 100644 index 0000000..2d06ffa --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FPriorityIndex.m @@ -0,0 +1,118 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FPriorityIndex.h" + +#import "FNode.h" +#import "FUtilities.h" +#import "FNamedNode.h" +#import "FEmptyNode.h" +#import "FLeafNode.h" +#import "FMaxNode.h" + +// TODO: Abstract into some common base class? + +@implementation FPriorityIndex + +- (NSComparisonResult) compareKey:(NSString *)key1 + andNode:(id)node1 + toOtherKey:(NSString *)key2 + andNode:(id)node2 +{ + id child1 = [node1 getPriority]; + id child2 = [node2 getPriority]; + NSComparisonResult indexCmp = [child1 compare:child2]; + if (indexCmp == NSOrderedSame) { + return [FUtilities compareKey:key1 toKey:key2]; + } else { + return indexCmp; + } +} + +- (NSComparisonResult) compareKey:(NSString *)key1 + andNode:(id)node1 + toOtherKey:(NSString *)key2 + andNode:(id)node2 + reverse:(BOOL)reverse +{ + if (reverse) { + return [self compareKey:key2 andNode:node2 toOtherKey:key1 andNode:node1]; + } else { + return [self compareKey:key1 andNode:node1 toOtherKey:key2 andNode:node2]; + } +} + +- (NSComparisonResult) compareNamedNode:(FNamedNode *)namedNode1 toNamedNode:(FNamedNode *)namedNode2 +{ + return [self compareKey:namedNode1.name andNode:namedNode1.node toOtherKey:namedNode2.name andNode:namedNode2.node]; +} + +- (BOOL)isDefinedOn:(id )node { + return !node.getPriority.isEmpty; +} + +- (BOOL)indexedValueChangedBetween:(id )oldNode and:(id )newNode { + id oldValue = [oldNode getPriority]; + id newValue = [newNode getPriority]; + return ![oldValue isEqual:newValue]; +} + +- (FNamedNode *)minPost { + return FNamedNode.min; +} + +- (FNamedNode *)maxPost { + return [self makePost:[FMaxNode maxNode] name:[FUtilities maxName]]; +} + +- (FNamedNode*)makePost:(id)indexValue name:(NSString*)name { + id node = [[FLeafNode alloc] initWithValue:@"[PRIORITY-POST]" withPriority:indexValue]; + return [[FNamedNode alloc] initWithName:name andNode:node]; +} + +- (NSString *)queryDefinition { + return @".priority"; +} + +- (NSString *)description { + return @"FPriorityIndex"; +} + +- (id)copyWithZone:(NSZone *)zone { + // Safe since we're immutable. + return self; +} + +- (BOOL) isEqual:(id)other { + return [other isKindOfClass:[FPriorityIndex class]]; +} + +- (NSUInteger) hash { + // chosen by a fair dice roll. Guaranteed to be random + return 3155577; +} + ++ (id) priorityIndex { + static id index; + static dispatch_once_t once; + dispatch_once(&once, ^{ + index = [[FPriorityIndex alloc] init]; + }); + + return index; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FRangedFilter.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FRangedFilter.h new file mode 100644 index 0000000..1457778 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FRangedFilter.h @@ -0,0 +1,32 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FNodeFilter.h" + +@class FQueryParams; +@class FNamedNode; + +@interface FRangedFilter : NSObject + +- (id) initWithQueryParams:(FQueryParams *)params; +- (BOOL) matchesKey:(NSString *)key andNode:(id)node; + + +@property (nonatomic, strong, readonly) FNamedNode *startPost; +@property (nonatomic, strong, readonly) FNamedNode *endPost; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FRangedFilter.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FRangedFilter.m new file mode 100644 index 0000000..5c4bbeb --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FRangedFilter.m @@ -0,0 +1,118 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FRangedFilter.h" +#import "FChildChangeAccumulator.h" +#import "FNamedNode.h" +#import "FQueryParams.h" +#import "FIndexedFilter.h" +#import "FQueryParams.h" +#import "FEmptyNode.h" +#import "FChildrenNode.h" +#import "FIndexedNode.h" + +@interface FRangedFilter () +@property (nonatomic, strong, readwrite) id indexedFilter; +@property (nonatomic, strong, readwrite) id index; +@property (nonatomic, strong, readwrite) FNamedNode *startPost; +@property (nonatomic, strong, readwrite) FNamedNode *endPost; +@end + +@implementation FRangedFilter +- (id) initWithQueryParams:(FQueryParams *)params { + self = [super init]; + if (self) { + self.indexedFilter = [[FIndexedFilter alloc] initWithIndex:params.index]; + self.index = params.index; + self.startPost = [FRangedFilter startPostFromQueryParams:params]; + self.endPost = [FRangedFilter endPostFromQueryParams:params]; + } + return self; +} + + ++ (FNamedNode *) startPostFromQueryParams:(FQueryParams *)params { + if ([params hasStart]) { + NSString *startKey = params.indexStartKey; + return [params.index makePost:params.indexStartValue name:startKey]; + } else { + return params.index.minPost; + } +} + ++ (FNamedNode *) endPostFromQueryParams:(FQueryParams *)params { + if ([params hasEnd]) { + NSString *endKey = params.indexEndKey; + return [params.index makePost:params.indexEndValue name:endKey]; + } else { + return params.index.maxPost; + } +} + +- (BOOL) matchesKey:(NSString *)key andNode:(id)node { + return ([self.index compareKey:self.startPost.name andNode:self.startPost.node toOtherKey:key andNode:node] <= NSOrderedSame && + [self.index compareKey:key andNode:node toOtherKey:self.endPost.name andNode:self.endPost.node] <= NSOrderedSame); +} + +- (FIndexedNode *)updateChildIn:(FIndexedNode *)oldSnap + forChildKey:(NSString *)childKey + newChild:(id)newChildSnap + affectedPath:(FPath *)affectedPath + fromSource:(id)source + accumulator:(FChildChangeAccumulator *)optChangeAccumulator +{ + if (![self matchesKey:childKey andNode:newChildSnap]) { + newChildSnap = [FEmptyNode emptyNode]; + } + return [self.indexedFilter updateChildIn:oldSnap + forChildKey:childKey + newChild:newChildSnap + affectedPath:affectedPath + fromSource:source + accumulator:optChangeAccumulator]; +} + +- (FIndexedNode *) updateFullNode:(FIndexedNode *)oldSnap + withNewNode:(FIndexedNode *)newSnap + accumulator:(FChildChangeAccumulator *)optChangeAccumulator +{ + __block FIndexedNode *filtered; + if (newSnap.node.isLeafNode) { + // Make sure we have a children node with the correct index, not a leaf node + filtered = [FIndexedNode indexedNodeWithNode:[FEmptyNode emptyNode] index:self.index]; + } else { + // Dont' support priorities on queries + filtered = [newSnap updatePriority:[FEmptyNode emptyNode]]; + [newSnap.node enumerateChildrenUsingBlock:^(NSString *key, id node, BOOL *stop) { + if (![self matchesKey:key andNode:node]) { + filtered = [filtered updateChild:key withNewChild:[FEmptyNode emptyNode]]; + } + }]; + } + return [self.indexedFilter updateFullNode:oldSnap withNewNode:filtered accumulator:optChangeAccumulator]; +} + +- (FIndexedNode *) updatePriority:(id)priority forNode:(FIndexedNode *)oldSnap +{ + // Don't support priorities on queries + return oldSnap; +} + +- (BOOL) filtersNodes { + return YES; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FTransformedEnumerator.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FTransformedEnumerator.h new file mode 100644 index 0000000..75391a8 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FTransformedEnumerator.h @@ -0,0 +1,24 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + + +@interface FTransformedEnumerator : NSEnumerator +- (id)initWithEnumerator:(NSEnumerator*) enumerator andTransform:(id (^)(id))transform; +- (id)nextObject; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FTransformedEnumerator.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FTransformedEnumerator.m new file mode 100644 index 0000000..bb36e94 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FTransformedEnumerator.m @@ -0,0 +1,43 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FTransformedEnumerator.h" + +@interface FTransformedEnumerator () +@property (nonatomic, strong) NSEnumerator *enumerator; +@property (nonatomic, copy) id (^transform)(id); +@end + +@implementation FTransformedEnumerator +- (id)initWithEnumerator:(NSEnumerator *)enumerator andTransform:(id (^)(id))transform { + self = [super init]; + if (self) { + self.enumerator = enumerator; + self.transform = transform; + } + return self; +} + +- (id)nextObject { + id next = self.enumerator.nextObject; + if (next != nil) { + return self.transform(next); + } else { + return nil; + } +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FValueIndex.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FValueIndex.h new file mode 100644 index 0000000..0f1c7f7 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FValueIndex.h @@ -0,0 +1,23 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FIndex.h" + + +@interface FValueIndex : NSObject ++ (id) valueIndex; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FValueIndex.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FValueIndex.m new file mode 100644 index 0000000..7ef9bff --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FValueIndex.m @@ -0,0 +1,106 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FValueIndex.h" +#import "FNamedNode.h" +#import "FSnapshotUtilities.h" +#import "FUtilities.h" +#import "FMaxNode.h" + +@implementation FValueIndex + +- (NSComparisonResult) compareKey:(NSString *)key1 + andNode:(id)node1 + toOtherKey:(NSString *)key2 + andNode:(id)node2 +{ + NSComparisonResult indexCmp = [node1 compare:node2]; + if (indexCmp == NSOrderedSame) { + return [FUtilities compareKey:key1 toKey:key2]; + } else { + return indexCmp; + } +} + +- (NSComparisonResult) compareKey:(NSString *)key1 + andNode:(id)node1 + toOtherKey:(NSString *)key2 + andNode:(id)node2 + reverse:(BOOL)reverse +{ + if (reverse) { + return [self compareKey:key2 andNode:node2 toOtherKey:key1 andNode:node1]; + } else { + return [self compareKey:key1 andNode:node1 toOtherKey:key2 andNode:node2]; + } +} + +- (NSComparisonResult) compareNamedNode:(FNamedNode *)namedNode1 toNamedNode:(FNamedNode *)namedNode2 +{ + return [self compareKey:namedNode1.name andNode:namedNode1.node toOtherKey:namedNode2.name andNode:namedNode2.node]; +} + +- (BOOL)isDefinedOn:(id)node { + return YES; +} + +- (BOOL)indexedValueChangedBetween:(id)oldNode and:(id)newNode { + return ![oldNode isEqual:newNode]; +} + +- (FNamedNode *)minPost { + return FNamedNode.min; +} + +- (FNamedNode *)maxPost { + return FNamedNode.max; +} + +- (FNamedNode *)makePost:(id)indexValue name:(NSString*)name { + return [[FNamedNode alloc] initWithName:name andNode:indexValue]; +} + +- (NSString *)queryDefinition { + return @".value"; +} + +- (NSString *) description { + return @"FValueIndex"; +} + +- (id)copyWithZone:(NSZone *)zone { + return self; +} + +- (BOOL) isEqual:(id)other { + // since we're a singleton. + return (other == self); +} + +- (NSUInteger) hash { + return [@".value" hash]; +} + + ++ (id) valueIndex { + static id valueIndex; + static dispatch_once_t once; + dispatch_once(&once, ^{ + valueIndex = [[FValueIndex alloc] init]; + }); + return valueIndex; +} +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FViewProcessor.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FViewProcessor.h new file mode 100644 index 0000000..59bfd2d --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FViewProcessor.h @@ -0,0 +1,41 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FViewCache; +@class FViewProcessorResult; +@class FChildChangeAccumulator; +@protocol FNode; +@class FWriteTreeRef; +@class FPath; +@protocol FOperation; +@protocol FNodeFilter; + + +@interface FViewProcessor : NSObject + +- (id)initWithFilter:(id)nodeFilter; + +- (FViewProcessorResult *)applyOperationOn:(FViewCache *)oldViewCache operation:(id)operation writesCache:(FWriteTreeRef *)writesCache completeCache:(id )optCompleteCache; +- (FViewCache *) revertUserWriteOn:(FViewCache *)viewCache + path:(FPath *)path + writesCache:(FWriteTreeRef *)writesCache + completeCache:(id)optCompleteCache + accumulator:(FChildChangeAccumulator *)accumulator; + + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FViewProcessor.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FViewProcessor.m new file mode 100644 index 0000000..50a3594 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FViewProcessor.m @@ -0,0 +1,655 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FViewProcessor.h" +#import "FCompleteChildSource.h" +#import "FWriteTreeRef.h" +#import "FViewCache.h" +#import "FCacheNode.h" +#import "FNode.h" +#import "FOperation.h" +#import "FOperationSource.h" +#import "FChildChangeAccumulator.h" +#import "FNodeFilter.h" +#import "FOverwrite.h" +#import "FMerge.h" +#import "FAckUserWrite.h" +#import "FViewProcessorResult.h" +#import "FIRDataEventType.h" +#import "FChange.h" +#import "FEmptyNode.h" +#import "FChildrenNode.h" +#import "FPath.h" +#import "FKeyIndex.h" +#import "FCompoundWrite.h" +#import "FImmutableTree.h" + +/** +* An implementation of FCompleteChildSource that never returns any additional children +*/ +@interface FNoCompleteChildSource: NSObject +@end + +@implementation FNoCompleteChildSource ++ (FNoCompleteChildSource *) instance { + static FNoCompleteChildSource *source = nil; + static dispatch_once_t once; + dispatch_once(&once, ^{ + source = [[FNoCompleteChildSource alloc] init]; + }); + return source; +} + +- (id) completeChild:(NSString *)childKey { + return nil; +} + +- (FNamedNode *) childByIndex:(id)index afterChild:(FNamedNode *)child isReverse:(BOOL)reverse { + return nil; +} +@end + +/** +* An implementation of FCompleteChildSource that uses a FWriteTree in addition to any other server data or +* old event caches available to calculate complete children. +*/ +@interface FWriteTreeCompleteChildSource: NSObject +@property (nonatomic, strong) FWriteTreeRef *writes; +@property (nonatomic, strong) FViewCache *viewCache; +@property (nonatomic, strong) id optCompleteServerCache; +@end + +@implementation FWriteTreeCompleteChildSource +- (id) initWithWrites:(FWriteTreeRef *)writes viewCache:(FViewCache *)viewCache serverCache:(id)optCompleteServerCache { + self = [super init]; + if (self) { + self.writes = writes; + self.viewCache = viewCache; + self.optCompleteServerCache = optCompleteServerCache; + } + return self; +} + +- (id) completeChild:(NSString *)childKey { + FCacheNode *node = self.viewCache.cachedEventSnap; + if ([node isCompleteForChild:childKey]) { + return [node.node getImmediateChild:childKey]; + } else { + FCacheNode *serverNode; + if (self.optCompleteServerCache) { + // Since we're only ever getting child nodes, we can use the key index here + FIndexedNode *indexed = [FIndexedNode indexedNodeWithNode:self.optCompleteServerCache index:[FKeyIndex keyIndex]]; + serverNode = [[FCacheNode alloc] initWithIndexedNode:indexed isFullyInitialized:YES isFiltered:NO]; + } else { + serverNode = self.viewCache.cachedServerSnap; + } + return [self.writes calculateCompleteChild:childKey cache:serverNode]; + } +} + +- (FNamedNode *) childByIndex:(id)index afterChild:(FNamedNode *)child isReverse:(BOOL)reverse { + id completeServerData = self.optCompleteServerCache != nil + ? self.optCompleteServerCache + : self.viewCache.completeServerSnap; + return [self.writes calculateNextNodeAfterPost:child + completeServerData:completeServerData + reverse:reverse + index:index]; +} + +@end + +@interface FViewProcessor () +@property (nonatomic, strong) id filter; +@end + +@implementation FViewProcessor + +- (id)initWithFilter:(id)nodeFilter { + self = [super init]; + if (self) { + self.filter = nodeFilter; + } + return self; +} + +- (FViewProcessorResult *)applyOperationOn:(FViewCache *)oldViewCache operation:(id)operation writesCache:(FWriteTreeRef *)writesCache completeCache:(id )optCompleteCache { + FChildChangeAccumulator *accumulator = [[FChildChangeAccumulator alloc] init]; + FViewCache *newViewCache; + + if (operation.type == FOperationTypeOverwrite) { + FOverwrite *overwrite = (FOverwrite *) operation; + if (operation.source.fromUser) { + newViewCache = [self applyUserOverwriteTo:oldViewCache + changePath:overwrite.path + changedSnap:overwrite.snap + writesCache:writesCache + completeCache:optCompleteCache + accumulator:accumulator]; + } else { + NSAssert(operation.source.fromServer, @"Unknown source for overwrite."); + // We filter the node if it's a tagged update or the node has been previously filtered and the update is + // not at the root in which case it is ok (and necessary) to mark the node unfiltered again + BOOL filterServerNode = overwrite.source.isTagged || (oldViewCache.cachedServerSnap.isFiltered && + !overwrite.path.isEmpty); + newViewCache = [self applyServerOverwriteTo:oldViewCache + changePath:overwrite.path + snap:overwrite.snap + writesCache:writesCache + completeCache:optCompleteCache + filterServerNode:filterServerNode + accumulator:accumulator]; + } + } else if (operation.type == FOperationTypeMerge) { + FMerge *merge = (FMerge*)operation; + if (operation.source.fromUser) { + newViewCache = [self applyUserMergeTo:oldViewCache + path:merge.path + changedChildren:merge.children + writesCache:writesCache + completeCache:optCompleteCache + accumulator:accumulator]; + } else { + NSAssert(operation.source.fromServer, @"Unknown source for merge."); + // We filter the node if it's a tagged update or the node has been previously filtered + BOOL filterServerNode = merge.source.isTagged || oldViewCache.cachedServerSnap.isFiltered; + newViewCache = [self applyServerMergeTo:oldViewCache + path:merge.path + changedChildren:merge.children + writesCache:writesCache + completeCache:optCompleteCache + filterServerNode:filterServerNode + accumulator:accumulator]; + } + } else if (operation.type == FOperationTypeAckUserWrite) { + FAckUserWrite *ackWrite = (FAckUserWrite *) operation; + if (!ackWrite.revert) { + newViewCache = [self ackUserWriteOn:oldViewCache + ackPath:ackWrite.path + affectedTree:ackWrite.affectedTree + writesCache:writesCache + completeCache:optCompleteCache + accumulator:accumulator]; + } else { + newViewCache = [self revertUserWriteOn:oldViewCache + path:ackWrite.path + writesCache:writesCache + completeCache:optCompleteCache + accumulator:accumulator]; + } + } else if (operation.type == FOperationTypeListenComplete) { + newViewCache = [self listenCompleteOldCache:oldViewCache + path:operation.path + writesCache:writesCache + serverCache:optCompleteCache + accumulator:accumulator]; + } else { + [NSException raise:NSInternalInconsistencyException + format:@"Unknown operation encountered %ld.", (long)operation.type]; + return nil; + } + + NSArray *changes = [self maybeAddValueFromOldViewCache:oldViewCache newViewCache:newViewCache changes:accumulator.changes]; + FViewProcessorResult *results = [[FViewProcessorResult alloc] initWithViewCache:newViewCache changes:changes]; + return results; +} + +- (NSArray *) maybeAddValueFromOldViewCache:(FViewCache *)oldViewCache newViewCache:(FViewCache *)newViewCache changes:(NSArray *)changes { + NSArray *newChanges = changes; + FCacheNode *eventSnap = newViewCache.cachedEventSnap; + if (eventSnap.isFullyInitialized) { + BOOL isLeafOrEmpty = eventSnap.node.isLeafNode || eventSnap.node.isEmpty; + if ([changes count] > 0 || + !oldViewCache.cachedEventSnap.isFullyInitialized || + (isLeafOrEmpty && ![eventSnap.node isEqual:oldViewCache.completeEventSnap]) || + ![eventSnap.node.getPriority isEqual:oldViewCache.completeEventSnap.getPriority]) { + FChange *valueChange = [[FChange alloc] initWithType:FIRDataEventTypeValue indexedNode:eventSnap.indexedNode]; + NSMutableArray *mutableChanges = [changes mutableCopy]; + [mutableChanges addObject:valueChange]; + newChanges = mutableChanges; + } + } + return newChanges; +} + +- (FViewCache *) generateEventCacheAfterServerEvent:(FViewCache *)viewCache + path:(FPath *)changePath + writesCache:(FWriteTreeRef *)writesCache + source:(id)source + accumulator:(FChildChangeAccumulator *)accumulator { + FCacheNode *oldEventSnap = viewCache.cachedEventSnap; + if ([writesCache shadowingWriteAtPath:changePath] != nil) { + // we have a shadowing write, ignore changes. + return viewCache; + } else { + FIndexedNode *newEventCache; + if (changePath.isEmpty) { + // TODO: figure out how this plays with "sliding ack windows" + NSAssert(viewCache.cachedServerSnap.isFullyInitialized, @"If change path is empty, we must have complete server data"); + id nodeWithLocalWrites; + if (viewCache.cachedServerSnap.isFiltered) { + // We need to special case this, because we need to only apply writes to complete children, or + // we might end up raising events for incomplete children. If the server data is filtered deep + // writes cannot be guaranteed to be complete + id serverCache = viewCache.completeServerSnap; + FChildrenNode *completeChildren = ([serverCache isKindOfClass:[FChildrenNode class]]) ? serverCache : [FEmptyNode emptyNode]; + nodeWithLocalWrites = [writesCache calculateCompleteEventChildrenWithCompleteServerChildren:completeChildren]; + } else { + nodeWithLocalWrites = [writesCache calculateCompleteEventCacheWithCompleteServerCache:viewCache.completeServerSnap]; + } + FIndexedNode *indexedNode = [FIndexedNode indexedNodeWithNode:nodeWithLocalWrites index:self.filter.index]; + newEventCache = [self.filter updateFullNode:viewCache.cachedEventSnap.indexedNode + withNewNode:indexedNode + accumulator:accumulator]; + } else { + NSString *childKey = [changePath getFront]; + if ([childKey isEqualToString:@".priority"]) { + NSAssert(changePath.length == 1, @"Can't have a priority with additional path components"); + id oldEventNode = oldEventSnap.node; + id serverNode = viewCache.cachedServerSnap.node; + // we might have overwrites for this priority + id updatedPriority = [writesCache calculateEventCacheAfterServerOverwriteWithChildPath:changePath + existingEventSnap:oldEventNode + existingServerSnap:serverNode]; + if (updatedPriority != nil) { + newEventCache = [self.filter updatePriority:updatedPriority forNode:oldEventSnap.indexedNode]; + } else { + // priority didn't change, keep old node + newEventCache = oldEventSnap.indexedNode; + } + } else { + FPath *childChangePath = [changePath popFront]; + id newEventChild; + if ([oldEventSnap isCompleteForChild:childKey]) { + id serverNode = viewCache.cachedServerSnap.node; + id eventChildUpdate = [writesCache calculateEventCacheAfterServerOverwriteWithChildPath:changePath existingEventSnap:oldEventSnap.node existingServerSnap:serverNode]; + if (eventChildUpdate != nil) { + newEventChild = [[oldEventSnap.node getImmediateChild:childKey] updateChild:childChangePath withNewChild:eventChildUpdate]; + } else { + // Nothing changed, just keep the old child + newEventChild = [oldEventSnap.node getImmediateChild:childKey]; + } + } else { + newEventChild = [writesCache calculateCompleteChild:childKey cache:viewCache.cachedServerSnap]; + } + if (newEventChild != nil) { + newEventCache = [self.filter updateChildIn:oldEventSnap.indexedNode + forChildKey:childKey + newChild:newEventChild + affectedPath:childChangePath + fromSource:source + accumulator:accumulator]; + } else { + // No complete children available or no change + newEventCache = oldEventSnap.indexedNode; + } + } + } + return [viewCache updateEventSnap:newEventCache + isComplete:(oldEventSnap.isFullyInitialized || changePath.isEmpty) + isFiltered:self.filter.filtersNodes]; + } +} + +- (FViewCache *) applyServerOverwriteTo:(FViewCache *)oldViewCache changePath:(FPath *)changePath snap:(id)changedSnap + writesCache:(FWriteTreeRef *)writesCache completeCache:(id)optCompleteCache + filterServerNode:(BOOL)filterServerNode accumulator:(FChildChangeAccumulator *)accumulator { + FCacheNode *oldServerSnap = oldViewCache.cachedServerSnap; + FIndexedNode *newServerCache; + id serverFilter = filterServerNode ? self.filter : self.filter.indexedFilter; + + if (changePath.isEmpty) { + FIndexedNode *indexed = [FIndexedNode indexedNodeWithNode:changedSnap index:serverFilter.index]; + newServerCache = [serverFilter updateFullNode:oldServerSnap.indexedNode withNewNode:indexed accumulator:nil]; + } else if (serverFilter.filtersNodes && !oldServerSnap.isFiltered) { + // We want to filter the server node, but we didn't filter the server node yet, so simulate a full update + NSAssert(![changePath isEmpty], @"An empty path should been caught in the other branch"); + NSString *childKey = [changePath getFront]; + FPath *updatePath = [changePath popFront]; + id newChild = [[oldServerSnap.node getImmediateChild:childKey] updateChild:updatePath + withNewChild:changedSnap]; + FIndexedNode *indexed = [oldServerSnap.indexedNode updateChild:childKey withNewChild:newChild]; + newServerCache = [serverFilter updateFullNode:oldServerSnap.indexedNode withNewNode:indexed accumulator:nil]; + } else { + NSString *childKey = [changePath getFront]; + if (![oldServerSnap isCompleteForPath:changePath] && changePath.length > 1) { + // We don't update incomplete nodes with updates intended for other listeners. + return oldViewCache; + } + FPath *childChangePath = [changePath popFront]; + id childNode = [oldServerSnap.node getImmediateChild:childKey]; + id newChildNode = [childNode updateChild:childChangePath withNewChild:changedSnap]; + if ([childKey isEqualToString:@".priority"]) { + newServerCache = [serverFilter updatePriority:newChildNode forNode:oldServerSnap.indexedNode]; + } else { + newServerCache = [serverFilter updateChildIn:oldServerSnap.indexedNode + forChildKey:childKey + newChild:newChildNode + affectedPath:childChangePath + fromSource:[FNoCompleteChildSource instance] + accumulator:nil]; + } + } + FViewCache *newViewCache = [oldViewCache updateServerSnap:newServerCache + isComplete:(oldServerSnap.isFullyInitialized || changePath.isEmpty) + isFiltered:serverFilter.filtersNodes]; + id source = [[FWriteTreeCompleteChildSource alloc] initWithWrites:writesCache + viewCache:newViewCache + serverCache:optCompleteCache]; + return [self generateEventCacheAfterServerEvent:newViewCache + path:changePath + writesCache:writesCache + source:source + accumulator:accumulator]; +} + +- (FViewCache *) applyUserOverwriteTo:(FViewCache *)oldViewCache + changePath:(FPath *)changePath + changedSnap:(id)changedSnap + writesCache:(FWriteTreeRef *)writesCache + completeCache:(id)optCompleteCache + accumulator:(FChildChangeAccumulator *)accumulator { + FCacheNode *oldEventSnap = oldViewCache.cachedEventSnap; + FViewCache *newViewCache; + id source = [[FWriteTreeCompleteChildSource alloc] initWithWrites:writesCache + viewCache:oldViewCache + serverCache:optCompleteCache]; + if (changePath.isEmpty) { + FIndexedNode *newIndexed = [FIndexedNode indexedNodeWithNode:changedSnap index:self.filter.index]; + FIndexedNode *newEventCache = [self.filter updateFullNode:oldEventSnap.indexedNode + withNewNode:newIndexed + accumulator:accumulator]; + newViewCache = [oldViewCache updateEventSnap:newEventCache isComplete:YES isFiltered:self.filter.filtersNodes]; + } else { + NSString *childKey = [changePath getFront]; + if ([childKey isEqualToString:@".priority"]) { + FIndexedNode *newEventCache = [self.filter updatePriority:changedSnap + forNode:oldViewCache.cachedEventSnap.indexedNode]; + newViewCache = [oldViewCache updateEventSnap:newEventCache + isComplete:oldEventSnap.isFullyInitialized + isFiltered:oldEventSnap.isFiltered]; + } else { + FPath *childChangePath = [changePath popFront]; + id oldChild = [oldEventSnap.node getImmediateChild:childKey]; + id newChild; + if (childChangePath.isEmpty) { + // Child overwrite, we can replace the child + newChild = changedSnap; + } else { + id childNode = [source completeChild:childKey]; + if (childNode != nil) { + if ([[childChangePath getBack] isEqualToString:@".priority"] && [childNode getChild:[childChangePath parent]].isEmpty) { + // This is a priority update on an empty node. If this node exists on the server, the server + // will send down the priority in the update, so ignore for now + newChild = childNode; + } else { + newChild = [childNode updateChild:childChangePath withNewChild:changedSnap]; + } + } else { + newChild = [FEmptyNode emptyNode]; + } + } + if (![oldChild isEqual:newChild]) { + FIndexedNode *newEventSnap = [self.filter updateChildIn:oldEventSnap.indexedNode + forChildKey:childKey + newChild:newChild + affectedPath:childChangePath + fromSource:source + accumulator:accumulator]; + newViewCache = [oldViewCache updateEventSnap:newEventSnap isComplete:oldEventSnap.isFullyInitialized isFiltered:self.filter.filtersNodes]; + } else { + newViewCache = oldViewCache; + } + } + } + return newViewCache; +} + ++ (BOOL) cache:(FViewCache *)viewCache hasChild:(NSString *)childKey { + return [viewCache.cachedEventSnap isCompleteForChild:childKey]; +} + +/** +* @param changedChildren NSDictionary of child name (NSString*) to child value (id) +*/ +- (FViewCache *) applyUserMergeTo:(FViewCache *)viewCache + path:(FPath *)path + changedChildren:(FCompoundWrite *)changedChildren + writesCache:(FWriteTreeRef *)writesCache + completeCache:(id)serverCache + accumulator:(FChildChangeAccumulator *)accumulator { + // HACK: In the case of a limit query, there may be some changes that bump things out of the + // window leaving room for new items. It's important we process these changes first, so we + // iterate the changes twice, first processing any that affect items currently in view. + // TODO: I consider an item "in view" if cacheHasChild is true, which checks both the server + // and event snap. I'm not sure if this will result in edge cases when a child is in one but + // not the other. + __block FViewCache *curViewCache = viewCache; + + [changedChildren enumerateWrites:^(FPath *relativePath, id childNode, BOOL *stop) { + FPath *writePath = [path child:relativePath]; + if ([FViewProcessor cache:viewCache hasChild:[writePath getFront]]) { + curViewCache = [self applyUserOverwriteTo:curViewCache + changePath:writePath + changedSnap:childNode + writesCache:writesCache + completeCache:serverCache + accumulator:accumulator]; + } + }]; + + [changedChildren enumerateWrites:^(FPath *relativePath, id childNode, BOOL *stop) { + FPath *writePath = [path child:relativePath]; + if (![FViewProcessor cache:viewCache hasChild:[writePath getFront]]) { + curViewCache = [self applyUserOverwriteTo:curViewCache + changePath:writePath + changedSnap:childNode + writesCache:writesCache + completeCache:serverCache + accumulator:accumulator]; + } + }]; + + return curViewCache; +} + +- (FViewCache *) applyServerMergeTo:(FViewCache *)viewCache + path:(FPath *)path + changedChildren:(FCompoundWrite *)changedChildren + writesCache:(FWriteTreeRef *)writesCache + completeCache:(id)serverCache + filterServerNode:(BOOL)filterServerNode + accumulator:(FChildChangeAccumulator *)accumulator { + // If we don't have a cache yet, this merge was intended for a previously listen in the same location. Ignore it and + // wait for the complete data update coming soon. + if (viewCache.cachedServerSnap.node.isEmpty && !viewCache.cachedServerSnap.isFullyInitialized) { + return viewCache; + } + + // HACK: In the case of a limit query, there may be some changes that bump things out of the + // window leaving room for new items. It's important we process these changes first, so we + // iterate the changes twice, first processing any that affect items currently in view. + // TODO: I consider an item "in view" if cacheHasChild is true, which checks both the server + // and event snap. I'm not sure if this will result in edge cases when a child is in one but + // not the other. + __block FViewCache *curViewCache = viewCache; + FCompoundWrite *actualMerge; + if (path.isEmpty) { + actualMerge = changedChildren; + } else { + actualMerge = [[FCompoundWrite emptyWrite] addCompoundWrite:changedChildren atPath:path]; + } + id serverNode = viewCache.cachedServerSnap.node; + + NSDictionary *childCompoundWrites = actualMerge.childCompoundWrites; + [childCompoundWrites enumerateKeysAndObjectsUsingBlock:^(NSString *childKey, FCompoundWrite *childMerge, BOOL *stop) { + if ([serverNode hasChild:childKey]) { + id serverChild = [viewCache.cachedServerSnap.node getImmediateChild:childKey]; + id newChild = [childMerge applyToNode:serverChild]; + curViewCache = [self applyServerOverwriteTo:curViewCache + changePath:[[FPath alloc] initWith:childKey] + snap:newChild + writesCache:writesCache + completeCache:serverCache + filterServerNode:filterServerNode + accumulator:accumulator]; + } + }]; + + [childCompoundWrites enumerateKeysAndObjectsUsingBlock:^(NSString *childKey, FCompoundWrite *childMerge, BOOL *stop) { + bool isUnknownDeepMerge = ![viewCache.cachedServerSnap isCompleteForChild:childKey] && childMerge.rootWrite == nil; + if (![serverNode hasChild:childKey] && !isUnknownDeepMerge) { + id serverChild = [viewCache.cachedServerSnap.node getImmediateChild:childKey]; + id newChild = [childMerge applyToNode:serverChild]; + curViewCache = [self applyServerOverwriteTo:curViewCache + changePath:[[FPath alloc] initWith:childKey] + snap:newChild + writesCache:writesCache + completeCache:serverCache + filterServerNode:filterServerNode + accumulator:accumulator]; + } + }]; + + return curViewCache; +} + +- (FViewCache *) ackUserWriteOn:(FViewCache *)viewCache + ackPath:(FPath *)ackPath + affectedTree:(FImmutableTree *)affectedTree + writesCache:(FWriteTreeRef *)writesCache + completeCache:(id )optCompleteCache + accumulator:(FChildChangeAccumulator *)accumulator { + + if ([writesCache shadowingWriteAtPath:ackPath] != nil) { + return viewCache; + } + + // Only filter server node if it is currently filtered + BOOL filterServerNode = viewCache.cachedServerSnap.isFiltered; + + // Essentially we'll just get our existing server cache for the affected paths and re-apply it as a server update + // now that it won't be shadowed. + FCacheNode *serverCache = viewCache.cachedServerSnap; + if (affectedTree.value != nil) { + // This is an overwrite. + if ((ackPath.isEmpty && serverCache.isFullyInitialized) || [serverCache isCompleteForPath:ackPath]) { + return [self applyServerOverwriteTo:viewCache changePath:ackPath snap:[serverCache.node getChild:ackPath] + writesCache:writesCache completeCache:optCompleteCache + filterServerNode:filterServerNode accumulator:accumulator]; + } else if (ackPath.isEmpty) { + // This is a goofy edge case where we are acking data at this location but don't have full data. We + // should just re-apply whatever we have in our cache as a merge. + FCompoundWrite *changedChildren = [FCompoundWrite emptyWrite]; + for(FNamedNode *child in serverCache.node.childEnumerator) { + changedChildren = [changedChildren addWrite:child.node atKey:child.name]; + } + return [self applyServerMergeTo:viewCache path:ackPath changedChildren:changedChildren + writesCache:writesCache completeCache:optCompleteCache + filterServerNode:filterServerNode accumulator:accumulator]; + } else { + return viewCache; + } + } else { + // This is a merge. + __block FCompoundWrite *changedChildren = [FCompoundWrite emptyWrite]; + [affectedTree forEach:^(FPath *mergePath, id value) { + FPath *serverCachePath = [ackPath child:mergePath]; + if ([serverCache isCompleteForPath:serverCachePath]) { + changedChildren = [changedChildren addWrite:[serverCache.node getChild:serverCachePath] atPath:mergePath]; + } + }]; + return [self applyServerMergeTo:viewCache path:ackPath changedChildren:changedChildren + writesCache:writesCache completeCache:optCompleteCache + filterServerNode:filterServerNode accumulator:accumulator]; + } +} + +- (FViewCache *) revertUserWriteOn:(FViewCache *)viewCache + path:(FPath *)path + writesCache:(FWriteTreeRef *)writesCache + completeCache:(id)optCompleteCache + accumulator:(FChildChangeAccumulator *)accumulator { + if ([writesCache shadowingWriteAtPath:path] != nil) { + return viewCache; + } else { + id source = [[FWriteTreeCompleteChildSource alloc] initWithWrites:writesCache + viewCache:viewCache + serverCache:optCompleteCache]; + FIndexedNode *oldEventCache = viewCache.cachedEventSnap.indexedNode; + FIndexedNode *newEventCache; + if (path.isEmpty || [[path getFront] isEqualToString:@".priority"]) { + id newNode; + if (viewCache.cachedServerSnap.isFullyInitialized) { + newNode = [writesCache calculateCompleteEventCacheWithCompleteServerCache:viewCache.completeServerSnap]; + } else { + newNode = [writesCache calculateCompleteEventChildrenWithCompleteServerChildren:viewCache.cachedServerSnap.node]; + } + FIndexedNode *indexedNode = [FIndexedNode indexedNodeWithNode:newNode index:self.filter.index]; + newEventCache = [self.filter updateFullNode:oldEventCache withNewNode:indexedNode accumulator:accumulator]; + } else { + NSString *childKey = [path getFront]; + id newChild = [writesCache calculateCompleteChild:childKey cache:viewCache.cachedServerSnap]; + if (newChild == nil && [viewCache.cachedServerSnap isCompleteForChild:childKey]) { + newChild = [oldEventCache.node getImmediateChild:childKey]; + } + if (newChild != nil) { + newEventCache = [self.filter updateChildIn:oldEventCache + forChildKey:childKey + newChild:newChild + affectedPath:[path popFront] + fromSource:source + accumulator:accumulator]; + } else if (newChild == nil && [viewCache.cachedEventSnap.node hasChild:childKey]) { + // No complete child available, delete the existing one, if any + newEventCache = [self.filter updateChildIn:oldEventCache + forChildKey:childKey + newChild:[FEmptyNode emptyNode] + affectedPath:[path popFront] + fromSource:source + accumulator:accumulator]; + } else { + newEventCache = oldEventCache; + } + if (newEventCache.node.isEmpty && viewCache.cachedServerSnap.isFullyInitialized) { + // We might have reverted all child writes. Maybe the old event was a leaf node. + id complete = [writesCache calculateCompleteEventCacheWithCompleteServerCache:viewCache.completeServerSnap]; + if (complete.isLeafNode) { + FIndexedNode *indexed = [FIndexedNode indexedNodeWithNode:complete]; + newEventCache = [self.filter updateFullNode:newEventCache + withNewNode:indexed + accumulator:accumulator]; + } + } + } + BOOL complete = viewCache.cachedServerSnap.isFullyInitialized || [writesCache shadowingWriteAtPath:[FPath empty]] != nil; + return [viewCache updateEventSnap:newEventCache isComplete:complete isFiltered:self.filter.filtersNodes]; + } +} + +- (FViewCache *) listenCompleteOldCache:(FViewCache *)viewCache + path:(FPath *)path + writesCache:(FWriteTreeRef *)writesCache + serverCache:(id)servercache + accumulator:(FChildChangeAccumulator *)accumulator { + FCacheNode *oldServerNode = viewCache.cachedServerSnap; + FViewCache *newViewCache = [viewCache updateServerSnap:oldServerNode.indexedNode + isComplete:(oldServerNode.isFullyInitialized || path.isEmpty) + isFiltered:oldServerNode.isFiltered]; + return [self generateEventCacheAfterServerEvent:newViewCache path:path writesCache:writesCache source:[FNoCompleteChildSource instance] accumulator:accumulator]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FViewProcessorResult.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FViewProcessorResult.h new file mode 100644 index 0000000..e211d19 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FViewProcessorResult.h @@ -0,0 +1,30 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FViewCache; + + +@interface FViewProcessorResult : NSObject +@property (nonatomic, strong, readonly) FViewCache *viewCache; +/** +* List of FChanges. +*/ +@property (nonatomic, strong, readonly) NSArray *changes; + +- (id) initWithViewCache:(FViewCache *)viewCache changes:(NSArray *)changes; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FViewProcessorResult.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FViewProcessorResult.m new file mode 100644 index 0000000..3327888 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/FViewProcessorResult.m @@ -0,0 +1,35 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FViewProcessorResult.h" +#import "FViewCache.h" + +@interface FViewProcessorResult () +@property (nonatomic, strong, readwrite) FViewCache *viewCache; +@property (nonatomic, strong, readwrite) NSArray *changes; +@end + +@implementation FViewProcessorResult +- (id) initWithViewCache:(FViewCache *)viewCache changes:(NSArray *)changes { + self = [super init]; + if (self) { + self.viewCache = viewCache; + self.changes = changes; + } + return self; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Login/FAuthTokenProvider.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Login/FAuthTokenProvider.h new file mode 100644 index 0000000..363b82f --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Login/FAuthTokenProvider.h @@ -0,0 +1,38 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FTypedefs.h" +#import "FTypedefs_Private.h" + +@class FIRApp; + +@protocol FAuthTokenProvider + +- (void) fetchTokenForcingRefresh:(BOOL)forceRefresh withCallback:(fbt_void_nsstring_nserror)callback; + +- (void) listenForTokenChanges:(fbt_void_nsstring)listener; + +@end + +@interface FAuthTokenProvider : NSObject + ++ (id) authTokenProviderForApp:(FIRApp *)app; + +- (instancetype)init NS_UNAVAILABLE; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Login/FAuthTokenProvider.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Login/FAuthTokenProvider.m new file mode 100644 index 0000000..11da56d --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Login/FAuthTokenProvider.m @@ -0,0 +1,108 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FAuthTokenProvider.h" +#import "FUtilities.h" +#import +#import +#import "FIRDatabaseQuery_Private.h" +#import "FIRNoopAuthTokenProvider.h" + +@interface FAuthStateListenerWrapper : NSObject + +@property (nonatomic, copy) fbt_void_nsstring listener; + +@property (nonatomic, weak) FIRApp *app; + +@end + +@implementation FAuthStateListenerWrapper + +- (instancetype) initWithListener:(fbt_void_nsstring)listener app:(FIRApp *)app { + self = [super init]; + if (self != nil) { + self->_listener = listener; + self->_app = app; + [[NSNotificationCenter defaultCenter] addObserver:self + selector:@selector(authStateDidChangeNotification:) + name:FIRAuthStateDidChangeInternalNotification + object:nil]; + } + return self; +} + +- (void) authStateDidChangeNotification:(NSNotification *)notification { + NSDictionary *userInfo = notification.userInfo; + FIRApp *authApp = userInfo[FIRAuthStateDidChangeInternalNotificationAppKey]; + if (authApp == self.app) { + NSString *token = userInfo[FIRAuthStateDidChangeInternalNotificationTokenKey]; + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + self.listener(token); + }); + } +} + +- (void) dealloc { + [[NSNotificationCenter defaultCenter] removeObserver:self]; +} + +@end + + +@interface FIRFirebaseAuthTokenProvider : NSObject + +@property (nonatomic, strong) FIRApp *app; +/** Strong references to the auth listeners as they are only weak in FIRFirebaseApp */ +@property (nonatomic, strong) NSMutableArray *authListeners; + +- (instancetype) initWithFirebaseApp:(FIRApp *)app; + +@end + +@implementation FIRFirebaseAuthTokenProvider + +- (instancetype) initWithFirebaseApp:(FIRApp *)app { + self = [super init]; + if (self != nil) { + self->_app = app; + self->_authListeners = [NSMutableArray array]; + } + return self; +} + +- (void) fetchTokenForcingRefresh:(BOOL)forceRefresh withCallback:(fbt_void_nsstring_nserror)callback { + // TODO: Don't fetch token if there is no current user + [self.app getTokenForcingRefresh:forceRefresh withCallback:^(NSString * _Nullable token, NSError * _Nullable error) { + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + callback(token, error); + }); + }]; +} + +- (void) listenForTokenChanges:(_Nonnull fbt_void_nsstring)listener { + FAuthStateListenerWrapper *wrapper = [[FAuthStateListenerWrapper alloc] initWithListener:listener app:self.app]; + [self.authListeners addObject:wrapper]; +} + +@end + +@implementation FAuthTokenProvider + ++ (id) authTokenProviderForApp:(id)app { + return [[FIRFirebaseAuthTokenProvider alloc] initWithFirebaseApp:app]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Login/FIRNoopAuthTokenProvider.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Login/FIRNoopAuthTokenProvider.h new file mode 100644 index 0000000..e27ddb4 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Login/FIRNoopAuthTokenProvider.h @@ -0,0 +1,22 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FAuthTokenProvider.h" + +@interface FIRNoopAuthTokenProvider : NSObject + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Login/FIRNoopAuthTokenProvider.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Login/FIRNoopAuthTokenProvider.m new file mode 100644 index 0000000..8bf467b --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Login/FIRNoopAuthTokenProvider.m @@ -0,0 +1,33 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRNoopAuthTokenProvider.h" +#import "FAuthTokenProvider.h" +#import "FIRDatabaseQuery_Private.h" + +@implementation FIRNoopAuthTokenProvider + +- (void) fetchTokenForcingRefresh:(BOOL)forceRefresh withCallback:(fbt_void_nsstring_nserror)callback { + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + callback(nil, nil); + }); +} + +- (void) listenForTokenChanges:(fbt_void_nsstring)listener { + // no-op, because token never changes +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FCachePolicy.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FCachePolicy.h new file mode 100644 index 0000000..16b49fb --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FCachePolicy.h @@ -0,0 +1,41 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@protocol FCachePolicy + +- (BOOL)shouldPruneCacheWithSize:(NSUInteger)cacheSize numberOfTrackedQueries:(NSUInteger)numTrackedQueries; +- (BOOL)shouldCheckCacheSize:(NSUInteger)serverUpdatesSinceLastCheck; +- (float)percentOfQueriesToPruneAtOnce; +- (NSUInteger)maxNumberOfQueriesToKeep; + +@end + + +@interface FLRUCachePolicy : NSObject + +@property (nonatomic, readonly) NSUInteger maxSize; + +- (id)initWithMaxSize:(NSUInteger)maxSize; + +@end + +@interface FNoCachePolicy : NSObject + ++ (FNoCachePolicy *)noCachePolicy; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FCachePolicy.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FCachePolicy.m new file mode 100644 index 0000000..7da76ef --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FCachePolicy.m @@ -0,0 +1,79 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FCachePolicy.h" + +@interface FLRUCachePolicy () + +@property (nonatomic, readwrite) NSUInteger maxSize; + +@end + +static const NSUInteger kFServerUpdatesBetweenCacheSizeChecks = 1000; +static const NSUInteger kFMaxNumberOfPrunableQueriesToKeep = 1000; +static const float kFPercentOfQueriesToPruneAtOnce = 0.2f; + +@implementation FLRUCachePolicy + +- (id)initWithMaxSize:(NSUInteger)maxSize { + self = [super init]; + if (self != nil) { + self->_maxSize = maxSize; + } + return self; +} + +- (BOOL)shouldPruneCacheWithSize:(NSUInteger)cacheSize numberOfTrackedQueries:(NSUInteger)numTrackedQueries { + return cacheSize > self.maxSize || numTrackedQueries > kFMaxNumberOfPrunableQueriesToKeep; +} + +- (BOOL)shouldCheckCacheSize:(NSUInteger)serverUpdatesSinceLastCheck { + return serverUpdatesSinceLastCheck > kFServerUpdatesBetweenCacheSizeChecks; +} + +- (float)percentOfQueriesToPruneAtOnce { + return kFPercentOfQueriesToPruneAtOnce; +} + +- (NSUInteger)maxNumberOfQueriesToKeep { + return kFMaxNumberOfPrunableQueriesToKeep; +} + +@end + +@implementation FNoCachePolicy + ++ (FNoCachePolicy *)noCachePolicy { + return [[FNoCachePolicy alloc] init]; +} + +- (BOOL)shouldPruneCacheWithSize:(NSUInteger)cacheSize numberOfTrackedQueries:(NSUInteger)numTrackedQueries { + return NO; +} + +- (BOOL)shouldCheckCacheSize:(NSUInteger)serverUpdatesSinceLastCheck { + return NO; +} + +- (float)percentOfQueriesToPruneAtOnce { + return 0; +} + +- (NSUInteger)maxNumberOfQueriesToKeep { + return NSUIntegerMax; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FLevelDBStorageEngine.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FLevelDBStorageEngine.h new file mode 100644 index 0000000..84f3864 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FLevelDBStorageEngine.h @@ -0,0 +1,39 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FStorageEngine.h" +#import "FNode.h" +#import "FPath.h" +#import "FCompoundWrite.h" +#import "FQuerySpec.h" + +@class FCacheNode; +@class FTrackedQuery; +@class FPruneForest; +@class FRepoInfo; + +@interface FLevelDBStorageEngine : NSObject + ++ (NSString *) firebaseDir; + +- (id)initWithPath:(NSString *)path; + +- (void)runLegacyMigration:(FRepoInfo *)info; +- (void)purgeEverything; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FLevelDBStorageEngine.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FLevelDBStorageEngine.m new file mode 100644 index 0000000..68254ad --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FLevelDBStorageEngine.m @@ -0,0 +1,738 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FLevelDBStorageEngine.h" + +#import +#import "APLevelDB.h" +#import "FSnapshotUtilities.h" +#import "FWriteRecord.h" +#import "FTrackedQuery.h" +#import "FQueryParams.h" +#import "FEmptyNode.h" +#import "FPruneForest.h" +#import "FUtilities.h" +#import "FPendingPut.h" // For legacy migration + +@interface FLevelDBStorageEngine () + +@property (nonatomic, strong) NSString *basePath; +@property (nonatomic, strong) APLevelDB *writesDB; +@property (nonatomic, strong) APLevelDB *serverCacheDB; + +@end + +// WARNING: If you change this, you need to write a migration script +static NSString * const kFPersistenceVersion = @"1"; + +static NSString * const kFServerDBPath = @"server_data"; +static NSString * const kFWritesDBPath = @"writes"; + +static NSString * const kFUserWriteId = @"id"; +static NSString * const kFUserWritePath = @"path"; +static NSString * const kFUserWriteOverwrite = @"o"; +static NSString * const kFUserWriteMerge = @"m"; + +static NSString * const kFTrackedQueryId = @"id"; +static NSString * const kFTrackedQueryPath = @"path"; +static NSString * const kFTrackedQueryParams = @"p"; +static NSString * const kFTrackedQueryLastUse = @"lu"; +static NSString * const kFTrackedQueryIsComplete = @"c"; +static NSString * const kFTrackedQueryIsActive = @"a"; + +static NSString * const kFServerCachePrefix = @"/server_cache/"; +// '~' is the last non-control character in the ASCII table until 127 +// We wan't the entire range of thing stored in the DB +static NSString * const kFServerCacheRangeEnd = @"/server_cache~"; +static NSString * const kFTrackedQueriesPrefix = @"/tracked_queries/"; +static NSString * const kFTrackedQueryKeysPrefix = @"/tracked_query_keys/"; + +// Failed to load JSON because a valid JSON turns out to be NaN while deserializing +static const NSInteger kFNanFailureCode = 3840; + +static NSString* writeRecordKey(NSUInteger writeId) { + return [NSString stringWithFormat:@"%lu", (unsigned long)(writeId)]; +} + +static NSString* serverCacheKey(FPath *path) { + return [NSString stringWithFormat:@"%@%@", kFServerCachePrefix, ([path toStringWithTrailingSlash])]; +} + +static NSString* trackedQueryKey(NSUInteger trackedQueryId) { + return [NSString stringWithFormat:@"%@%lu", kFTrackedQueriesPrefix, (unsigned long)trackedQueryId]; +} + +static NSString* trackedQueryKeysKeyPrefix(NSUInteger trackedQueryId) { + return [NSString stringWithFormat:@"%@%lu/", kFTrackedQueryKeysPrefix, (unsigned long)trackedQueryId]; +} + +static NSString* trackedQueryKeysKey(NSUInteger trackedQueryId, NSString *key) { + return [NSString stringWithFormat:@"%@%lu/%@", kFTrackedQueryKeysPrefix, (unsigned long)trackedQueryId, key]; +} + +@implementation FLevelDBStorageEngine +#pragma mark - Constructors + +- (id)initWithPath:(NSString*)dbPath +{ + self = [super init]; + if (self) { + self.basePath = [[FLevelDBStorageEngine firebaseDir] stringByAppendingPathComponent:dbPath]; + /* For reference: + serverDataDB = [aPersistence createDbByName:@"server_data"]; + FPangolinDB *completenessDb = [aPersistence createDbByName:@"server_complete"]; + */ + [FLevelDBStorageEngine ensureDir:self.basePath markAsDoNotBackup:YES]; + [self runMigration]; + [self openDatabases]; + } + return self; +} + +- (void)runMigration { + // Currently we're at version 1, so all we need to do is write that to a file + NSString *versionFile = [self.basePath stringByAppendingPathComponent:@"version"]; + NSError *error; + NSString *oldVersion = [NSString stringWithContentsOfFile:versionFile encoding:NSUTF8StringEncoding error:&error]; + if (!oldVersion) { + // This is probably fine, we don't have a version file yet + BOOL success = [kFPersistenceVersion writeToFile:versionFile atomically:NO encoding:NSUTF8StringEncoding error:&error]; + if (!success) { + FFWarn(@"I-RDB076001", @"Failed to write version for database: %@", error); + } + } else if ([oldVersion isEqualToString:kFPersistenceVersion]) { + // Everythings fine no need for migration + } else { + // If we add more versions in the future, we need to run migration here + [NSException raise:NSInternalInconsistencyException format:@"Unrecognized database version: %@", oldVersion]; + } +} + +- (void)runLegacyMigration:(FRepoInfo *)info { + NSArray *dirPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); + NSString *documentsDir = [dirPaths objectAtIndex:0]; + NSString *firebaseDir = [documentsDir stringByAppendingPathComponent:@"firebase"]; + NSString* repoHashString = [NSString stringWithFormat:@"%@_%@", info.host, info.namespace]; + NSString *legacyBaseDir = [NSString stringWithFormat:@"%@/1/%@/v1", firebaseDir, repoHashString]; + if ([[NSFileManager defaultManager] fileExistsAtPath:legacyBaseDir]) { + FFWarn(@"I-RDB076002", @"Legacy database found, migrating..."); + // We only need to migrate writes + NSError *error = nil; + APLevelDB *writes = [APLevelDB levelDBWithPath:[legacyBaseDir stringByAppendingPathComponent:@"outstanding_puts"] error:&error]; + if (writes != nil) { + __block NSUInteger numberOfWritesRestored = 0; + // Maybe we could use write batches, but what the heck, I'm sure it'll go fine :P + [writes enumerateKeysAndValuesAsData:^(NSString *key, NSData *data, BOOL *stop) { + id pendingPut = [NSKeyedUnarchiver unarchiveObjectWithData:data]; + if ([pendingPut isKindOfClass:[FPendingPut class]]) { + FPendingPut *put = pendingPut; + id newNode = [FSnapshotUtilities nodeFrom:put.data priority:put.priority]; + [self saveUserOverwrite:newNode atPath:put.path writeId:[key integerValue]]; + numberOfWritesRestored++; + } else if ([pendingPut isKindOfClass:[FPendingPutPriority class]]) { + // This is for backwards compatibility. Older clients will save FPendingPutPriority. New ones will need to read it and translate. + FPendingPutPriority *putPriority = pendingPut; + FPath *priorityPath = [putPriority.path childFromString:@".priority"]; + id newNode = [FSnapshotUtilities nodeFrom:putPriority.priority priority:nil]; + [self saveUserOverwrite:newNode atPath:priorityPath writeId:[key integerValue]]; + numberOfWritesRestored++; + } else if ([pendingPut isKindOfClass:[FPendingUpdate class]]) { + FPendingUpdate *update = pendingPut; + FCompoundWrite *merge = [FCompoundWrite compoundWriteWithValueDictionary:update.data]; + [self saveUserMerge:merge atPath:update.path writeId:[key integerValue]]; + numberOfWritesRestored++; + } else { + FFWarn(@"I-RDB076003", @"Failed to migrate legacy write, meh!"); + } + }]; + FFWarn(@"I-RDB076004", @"Migrated %lu writes", (unsigned long)numberOfWritesRestored); + [writes close]; + FFWarn(@"I-RDB076005", @"Deleting legacy database..."); + BOOL success = [[NSFileManager defaultManager] removeItemAtPath:legacyBaseDir error:&error]; + if (!success) { + FFWarn(@"I-RDB076006", @"Failed to delete legacy database: %@", error); + } else { + FFWarn(@"I-RDB076007", @"Finished migrating legacy database."); + } + } else { + FFWarn(@"I-RDB076008", @"Failed to migrate old database: %@", error); + } + } +} + +- (void)openDatabases { + self.serverCacheDB = [self createDB:kFServerDBPath]; + self.writesDB = [self createDB:kFWritesDBPath]; +} + +- (void)purgeDatabase:(NSString*) dbPath { + NSString *path = [self.basePath stringByAppendingPathComponent:dbPath]; + NSError *error; + FFWarn(@"I-RDB076009", @"Deleting database at path %@", path); + BOOL success = [[NSFileManager defaultManager] removeItemAtPath:path error:&error]; + if (!success) { + [NSException raise:NSInternalInconsistencyException format:@"Failed to delete database files: %@", error]; + } +} + +- (void)purgeEverything { + [self close]; + [@[kFServerDBPath, kFWritesDBPath] + enumerateObjectsUsingBlock:^(NSString *dbPath, NSUInteger idx, BOOL *stop) { + [self purgeDatabase:dbPath]; + }]; + + [self openDatabases]; +} + +- (void)close { + // autoreleasepool will cause deallocation which will close the DB + @autoreleasepool { + [self.serverCacheDB close]; + self.serverCacheDB = nil; + [self.writesDB close]; + self.writesDB = nil; + } +} + ++ (NSString *) firebaseDir { + #if TARGET_OS_IOS || TARGET_OS_TV + NSArray *dirPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); + NSString *documentsDir = [dirPaths objectAtIndex:0]; + return [documentsDir stringByAppendingPathComponent:@"firebase"]; + #elif TARGET_OS_OSX + return [NSHomeDirectory() stringByAppendingPathComponent:@".firebase"]; + #endif +} + +- (APLevelDB *)createDB:(NSString *)dbName { + NSError *err = nil; + NSString *path = [self.basePath stringByAppendingPathComponent:dbName]; + APLevelDB *db = [APLevelDB levelDBWithPath:path error:&err]; + + if (err) { + FFWarn(@"I-RDB076036", @"Failed to read database persistence file '%@': %@", + dbName, [err localizedDescription]); + err = nil; + + // Delete the database and try again. + [self purgeDatabase:dbName]; + db = [APLevelDB levelDBWithPath:path error:&err]; + + if (err) { + NSString *reason = [NSString stringWithFormat:@"Error initializing persistence: %@", [err description]]; + @throw [NSException exceptionWithName:@"FirebaseDatabasePersistenceFailure" reason:reason userInfo:nil]; + } + } + + return db; +} + +- (void)saveUserOverwrite:(id)node atPath:(FPath *)path writeId:(NSUInteger)writeId { + NSDictionary *write = + @{ kFUserWriteId: @(writeId), + kFUserWritePath: [path toStringWithTrailingSlash], + kFUserWriteOverwrite: [node valForExport:YES] }; + NSError *error = nil; + NSData *data = [NSJSONSerialization dataWithJSONObject:write options:0 error:&error]; + NSAssert(data, @"Failed to serialize user overwrite: %@, (Error: %@)", write, error); + [self.writesDB setData:data forKey:writeRecordKey(writeId)]; +} + +- (void)saveUserMerge:(FCompoundWrite *)merge atPath:(FPath *)path writeId:(NSUInteger)writeId { + NSDictionary *write = + @{ kFUserWriteId: @(writeId), + kFUserWritePath: [path toStringWithTrailingSlash], + kFUserWriteMerge: [merge valForExport:YES] }; + NSError *error = nil; + NSData *data = [NSJSONSerialization dataWithJSONObject:write options:0 error:&error]; + NSAssert(data, @"Failed to serialize user merge: %@ (Error: %@)", write, error); + [self.writesDB setData:data forKey:writeRecordKey(writeId)]; +} + +- (void)removeUserWrite:(NSUInteger)writeId { + [self.writesDB removeKey:writeRecordKey(writeId)]; +} + +- (void)removeAllUserWrites { + __block NSUInteger count = 0; + NSDate *start = [NSDate date]; + id batch = [self.writesDB beginWriteBatch]; + [self.writesDB enumerateKeys:^(NSString *key, BOOL *stop) { + [batch removeKey:key]; + count++; + }]; + BOOL success = [batch commit]; + if (!success) { + FFWarn(@"I-RDB076010", @"Failed to remove all users writes on disk!"); + } else { + FFDebug(@"I-RDB076011", @"Removed %lu writes in %fms", (unsigned long)count, [start timeIntervalSinceNow]*-1000); + } +} + +- (NSArray *)userWrites { + NSDate *date = [NSDate date]; + NSMutableArray *writes = [NSMutableArray array]; + [self.writesDB enumerateKeysAndValuesAsData:^(NSString *key, NSData *data, BOOL *stop) { + NSError *error = nil; + NSDictionary *writeJSON = [NSJSONSerialization JSONObjectWithData:data options:0 error:&error]; + if (writeJSON == nil) { + if (error.code == kFNanFailureCode) { + FFWarn(@"I-RDB076012", @"Failed to deserialize write (%@), likely because of out of range doubles (Error: %@)", + [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding], + error); + FFWarn(@"I-RDB076013", @"Removing failed write with key %@", key); + [self.writesDB removeKey:key]; + } else { + [NSException raise:NSInternalInconsistencyException format:@"Failed to deserialize write: %@", error]; + } + } else { + NSInteger writeId = ((NSNumber *)writeJSON[kFUserWriteId]).integerValue; + FPath *path = [FPath pathWithString:writeJSON[kFUserWritePath]]; + FWriteRecord *writeRecord; + if (writeJSON[kFUserWriteMerge] != nil) { + // It's a merge + FCompoundWrite *merge = [FCompoundWrite compoundWriteWithValueDictionary:writeJSON[kFUserWriteMerge]]; + writeRecord = [[FWriteRecord alloc] initWithPath:path merge:merge writeId:writeId]; + } else { + // It's an overwrite + NSAssert(writeJSON[kFUserWriteOverwrite] != nil, @"Persisted write did not contain merge or overwrite!"); + id node = [FSnapshotUtilities nodeFrom:writeJSON[kFUserWriteOverwrite]]; + writeRecord = [[FWriteRecord alloc] initWithPath:path overwrite:node writeId:writeId visible:YES]; + } + [writes addObject:writeRecord]; + } + }]; + // Make sure writes are sorted + [writes sortUsingComparator:^NSComparisonResult(FWriteRecord *one, FWriteRecord *two) { + if (one.writeId < two.writeId) { + return NSOrderedAscending; + } else if (one.writeId > two.writeId) { + return NSOrderedDescending; + } else { + return NSOrderedSame; + } + }]; + FFDebug(@"I-RDB076014", @"Loaded %lu writes in %fms", (unsigned long)writes.count, [date timeIntervalSinceNow]*-1000); + return writes; +} + +- (id)serverCacheAtPath:(FPath *)path { + NSDate *start = [NSDate date]; + id data = [self internalNestedDataForPath:path]; + id node = [FSnapshotUtilities nodeFrom:data]; + FFDebug(@"I-RDB076015", @"Loaded node with %d children at %@ in %fms", [node numChildren], path, [start timeIntervalSinceNow]*-1000); + return node; +} + +- (id)serverCacheForKeys:(NSSet *)keys atPath:(FPath *)path { + NSDate *start = [NSDate date]; + __block id node = [FEmptyNode emptyNode]; + [keys enumerateObjectsUsingBlock:^(NSString *key, BOOL *stop) { + id data = [self internalNestedDataForPath:[path childFromString:key]]; + node = [node updateImmediateChild:key withNewChild:[FSnapshotUtilities nodeFrom:data]]; + }]; + FFDebug(@"I-RDB076016", @"Loaded node with %d children for %lu keys at %@ in %fms", [node numChildren], (unsigned long)keys.count, path, [start timeIntervalSinceNow]*-1000); + return node; +} + +- (void)updateServerCache:(id)node atPath:(FPath *)path merge:(BOOL)merge { + NSDate *start = [NSDate date]; + id batch = [self.serverCacheDB beginWriteBatch]; + // Remove any leaf nodes that might be higher up + [self removeAllLeafNodesOnPath:path batch:batch]; + __block NSUInteger counter = 0; + if (merge) { + // remove any children that exist + [node enumerateChildrenUsingBlock:^(NSString *childKey, id childNode, BOOL *stop) { + FPath *childPath = [path childFromString:childKey]; + [self removeAllWithPrefix:serverCacheKey(childPath) batch:batch database:self.serverCacheDB]; + [self saveNodeInternal:childNode atPath:childPath batch:batch counter:&counter]; + }]; + } else { + // remove everything + [self removeAllWithPrefix:serverCacheKey(path) batch:batch database:self.serverCacheDB]; + [self saveNodeInternal:node atPath:path batch:batch counter:&counter]; + } + BOOL success = [batch commit]; + if (!success) { + FFWarn(@"I-RDB076017", @"Failed to update server cache on disk!"); + } else { + FFDebug(@"I-RDB076018", @"Saved %lu leaf nodes for overwrite in %fms", (unsigned long)counter, [start timeIntervalSinceNow]*-1000); + } +} + +- (void)updateServerCacheWithMerge:(FCompoundWrite *)merge atPath:(FPath *)path { + NSDate *start = [NSDate date]; + __block NSUInteger counter = 0; + id batch = [self.serverCacheDB beginWriteBatch]; + // Remove any leaf nodes that might be higher up + [self removeAllLeafNodesOnPath:path batch:batch]; + [merge enumerateWrites:^(FPath *relativePath, id node, BOOL *stop) { + FPath *childPath = [path child:relativePath]; + [self removeAllWithPrefix:serverCacheKey(childPath) batch:batch database:self.serverCacheDB]; + [self saveNodeInternal:node atPath:childPath batch:batch counter:&counter]; + }]; + BOOL success = [batch commit]; + if (!success) { + FFWarn(@"I-RDB076019", @"Failed to update server cache on disk!"); + } else { + FFDebug(@"I-RDB076020", @"Saved %lu leaf nodes for merge in %fms", (unsigned long)counter, [start timeIntervalSinceNow]*-1000); + } +} + +- (void)saveNodeInternal:(id)node atPath:(FPath *)path batch:(id)batch counter:(NSUInteger *)counter { + id data = [node valForExport:YES]; + if(data != nil && ![data isKindOfClass:[NSNull class]]) { + [self internalSetNestedData:data forKey:serverCacheKey(path) withBatch:batch counter:counter]; + } +} + +- (NSUInteger)serverCacheEstimatedSizeInBytes { + // Use the exact size, because for pruning the approximate size can lead to weird situations where we prune everything + // because no compaction is ever run + return [self.serverCacheDB exactSizeFrom:kFServerCachePrefix to:kFServerCacheRangeEnd]; +} + +- (void)pruneCache:(FPruneForest *)pruneForest atPath:(FPath *)path { + // TODO: be more intelligent, don't scan entire database... + + __block NSUInteger pruned = 0; + __block NSUInteger kept = 0; + NSDate *start = [NSDate date]; + + NSString *prefix = serverCacheKey(path); + id batch = [self.serverCacheDB beginWriteBatch]; + + [self.serverCacheDB enumerateKeysWithPrefix:prefix usingBlock:^(NSString *dbKey, BOOL *stop) { + NSString *pathStr = [dbKey substringFromIndex:prefix.length]; + FPath *relativePath = [[FPath alloc] initWith:pathStr]; + if ([pruneForest shouldPruneUnkeptDescendantsAtPath:relativePath]) { + pruned++; + [batch removeKey:dbKey]; + } else { + kept++; + } + }]; + BOOL success = [batch commit]; + if (!success) { + FFWarn(@"I-RDB076021", @"Failed to prune cache on disk!"); + } else { + FFDebug(@"I-RDB076022", @"Pruned %lu paths, kept %lu paths in %fms", (unsigned long)pruned, (unsigned long)kept, [start timeIntervalSinceNow]*-1000); + } +} + +#pragma mark - Tracked Queries + +- (NSArray *)loadTrackedQueries { + NSDate *date = [NSDate date]; + NSMutableArray *trackedQueries = [NSMutableArray array]; + [self.serverCacheDB enumerateKeysWithPrefix:kFTrackedQueriesPrefix asData:^(NSString *key, NSData *data, BOOL *stop) { + NSError *error = nil; + NSDictionary *queryJSON = [NSJSONSerialization JSONObjectWithData:data options:0 error:&error]; + if (queryJSON == nil) { + if (error.code == kFNanFailureCode) { + FFWarn(@"I-RDB076023", @"Failed to deserialize tracked query (%@), likely because of out of range doubles (Error: %@)", + [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding], + error); + FFWarn(@"I-RDB076024", @"Removing failed tracked query with key %@", key); + [self.serverCacheDB removeKey:key]; + } else { + [NSException raise:NSInternalInconsistencyException format:@"Failed to deserialize tracked query: %@", error]; + } + } else { + NSUInteger queryId = ((NSNumber *)queryJSON[kFTrackedQueryId]).unsignedIntegerValue; + FPath *path = [FPath pathWithString:queryJSON[kFTrackedQueryPath]]; + FQueryParams *params = [FQueryParams fromQueryObject:queryJSON[kFTrackedQueryParams]]; + FQuerySpec *query = [[FQuerySpec alloc] initWithPath:path params:params]; + BOOL isComplete = [queryJSON[kFTrackedQueryIsComplete] boolValue]; + BOOL isActive = [queryJSON[kFTrackedQueryIsActive] boolValue]; + NSTimeInterval lastUse = [queryJSON[kFTrackedQueryLastUse] doubleValue]; + + FTrackedQuery *trackedQuery = [[FTrackedQuery alloc] initWithId:queryId + query:query + lastUse:lastUse + isActive:isActive + isComplete:isComplete]; + + [trackedQueries addObject:trackedQuery]; + } + }]; + FFDebug(@"I-RDB076025", @"Loaded %lu tracked queries in %fms", (unsigned long)trackedQueries.count, [date timeIntervalSinceNow]*-1000); + return trackedQueries; +} + +- (void)removeTrackedQuery:(NSUInteger)queryId { + NSDate *start = [NSDate date]; + id batch = [self.serverCacheDB beginWriteBatch]; + [batch removeKey:trackedQueryKey(queryId)]; + __block NSUInteger keyCount = 0; + [self.serverCacheDB enumerateKeysWithPrefix:trackedQueryKeysKeyPrefix(queryId) usingBlock:^(NSString *key, BOOL *stop) { + [batch removeKey:key]; + keyCount++; + }]; + + BOOL success = [batch commit]; + if (!success) { + FFWarn(@"I-RDB076026", @"Failed to remove tracked query on disk!"); + } else { + FFDebug(@"I-RDB076027", @"Removed query with id %lu (and removed %lu keys) in %fms", + (unsigned long)queryId, + (unsigned long)keyCount, + [start timeIntervalSinceNow]*-1000); + } +} + +- (void)saveTrackedQuery:(FTrackedQuery *)query { + NSDate *start = [NSDate date]; + NSDictionary *trackedQuery = + @{ + kFTrackedQueryId: @(query.queryId), + kFTrackedQueryPath: [query.query.path toStringWithTrailingSlash], + kFTrackedQueryParams: [query.query.params wireProtocolParams], + kFTrackedQueryLastUse: @(query.lastUse), + kFTrackedQueryIsComplete: @(query.isComplete), + kFTrackedQueryIsActive: @(query.isActive) + }; + NSError *error = nil; + NSData *data = [NSJSONSerialization dataWithJSONObject:trackedQuery options:0 error:&error]; + NSAssert(data, @"Failed to serialize tracked query (Error: %@)", error); + [self.serverCacheDB setData:data forKey:trackedQueryKey(query.queryId)]; + FFDebug(@"I-RDB076028", @"Saved tracked query %lu in %fms", (unsigned long)query.queryId, [start timeIntervalSinceNow]*-1000); +} + +- (void)setTrackedQueryKeys:(NSSet *)keys forQueryId:(NSUInteger)queryId { + NSDate *start = [NSDate date]; + __block NSUInteger removed = 0; + __block NSUInteger added = 0; + id batch = [self.serverCacheDB beginWriteBatch]; + NSMutableSet *seenKeys = [NSMutableSet set]; + // First, delete any keys that might be stored and are not part of the current keys + [self.serverCacheDB enumerateKeysWithPrefix:trackedQueryKeysKeyPrefix(queryId) asStrings:^(NSString *dbKey, NSString *actualKey, BOOL *stop) { + if ([keys containsObject:actualKey]) { + // Already in DB + [seenKeys addObject:actualKey]; + } else { + // Not part of set, delete key + [batch removeKey:dbKey]; + removed++; + } + }]; + + // Next add any keys that are missing in the database + [keys enumerateObjectsUsingBlock:^(NSString *childKey, BOOL *stop) { + if (![seenKeys containsObject:childKey]) { + [batch setString:childKey forKey:trackedQueryKeysKey(queryId, childKey)]; + added++; + } + }]; + BOOL success = [batch commit]; + if (!success) { + FFWarn(@"I-RDB076029", @"Failed to set tracked queries on disk!"); + } else { + FFDebug(@"I-RDB076030", @"Set %lu tracked keys (%lu added, %lu removed) for query %lu in %fms", + (unsigned long)keys.count, + (unsigned long)added, + (unsigned long)removed, + (unsigned long)queryId, + [start timeIntervalSinceNow]*-1000); + } +} + +- (void)updateTrackedQueryKeysWithAddedKeys:(NSSet *)added removedKeys:(NSSet *)removed forQueryId:(NSUInteger)queryId { + NSDate *start = [NSDate date]; + id batch = [self.serverCacheDB beginWriteBatch]; + [removed enumerateObjectsUsingBlock:^(NSString *key, BOOL *stop) { + [batch removeKey:trackedQueryKeysKey(queryId, key)]; + }]; + [added enumerateObjectsUsingBlock:^(NSString *key, BOOL *stop) { + [batch setString:key forKey:trackedQueryKeysKey(queryId, key)]; + }]; + BOOL success = [batch commit]; + if (!success) { + FFWarn(@"I-RDB076031", @"Failed to update tracked queries on disk!"); + } else { + FFDebug(@"I-RDB076032", @"Added %lu tracked keys, removed %lu for query %lu in %fms", (unsigned long)added.count, (unsigned long)removed.count, (unsigned long)queryId, [start timeIntervalSinceNow]*-1000); + } +} + +- (NSSet *)trackedQueryKeysForQuery:(NSUInteger)queryId { + NSDate *start = [NSDate date]; + NSMutableSet *set = [NSMutableSet set]; + [self.serverCacheDB enumerateKeysWithPrefix:trackedQueryKeysKeyPrefix(queryId) asStrings:^(NSString *dbKey, NSString *actualKey, BOOL *stop) { + [set addObject:actualKey]; + }]; + FFDebug(@"I-RDB076033", @"Loaded %lu tracked keys for query %lu in %fms", (unsigned long)set.count, (unsigned long)queryId, [start timeIntervalSinceNow]*-1000); + return set; +} + +#pragma mark - Internal methods + +- (void)removeAllLeafNodesOnPath:(FPath *)path batch:(id)batch { + while (!path.isEmpty) { + [batch removeKey:serverCacheKey(path)]; + path = [path parent]; + } + // Make sure to delete any nodes at the root + [batch removeKey:serverCacheKey([FPath empty])]; +} + +- (void)removeAllWithPrefix:(NSString *)prefix batch:(id)batch database:(APLevelDB *)database { + assert(prefix != nil); + + [database enumerateKeysWithPrefix:prefix usingBlock:^(NSString *key, BOOL *stop) { + [batch removeKey:key]; + }]; +} + +#pragma mark - Internal helper methods + +- (void)internalSetNestedData:(id)value forKey:(NSString *)key withBatch:(id)batch counter:(NSUInteger *)counter { + if([value isKindOfClass:[NSDictionary class]]) { + NSDictionary* dictionary = value; + [dictionary enumerateKeysAndObjectsUsingBlock:^(id childKey, id obj, BOOL *stop) { + assert(obj != nil); + NSString* childPath = [NSString stringWithFormat:@"%@%@/", key, childKey]; + [self internalSetNestedData:obj forKey:childPath withBatch:batch counter:counter]; + }]; + } + else { + NSData *data = [self serializePrimitive:value]; + [batch setData:data forKey:key]; + (*counter)++; + } +} + +- (id)internalNestedDataForPath:(FPath *)path { + NSAssert(path != nil, @"Path was nil!"); + + NSString *baseKey = serverCacheKey(path); + + // HACK to make sure iter is freed now to avoid race conditions (if self.db is deleted before iter, you get an access violation). + @autoreleasepool { + APLevelDBIterator* iter = [APLevelDBIterator iteratorWithLevelDB:self.serverCacheDB]; + + [iter seekToKey:baseKey]; + if (iter.key == nil || ![iter.key hasPrefix:baseKey]) { + // No data. + return nil; + } else { + return [self internalNestedDataFromIterator:iter andKeyPrefix:baseKey]; + } + } +} + +- (id) internalNestedDataFromIterator:(APLevelDBIterator*)iterator andKeyPrefix:(NSString*)prefix { + NSString* key = iterator.key; + + if ([key isEqualToString:prefix]) { + id result = [self deserializePrimitive:iterator.valueAsData]; + [iterator nextKey]; + return result; + } else { + NSMutableDictionary *dict = [[NSMutableDictionary alloc] init]; + while (key != nil && [key hasPrefix:prefix]) { + NSString *relativePath = [key substringFromIndex:prefix.length]; + NSArray* pathPieces = [relativePath componentsSeparatedByString:@"/"]; + assert(pathPieces.count > 0); + NSString *childName = pathPieces[0]; + NSString *childPath = [NSString stringWithFormat:@"%@%@/", prefix, childName]; + id childValue = [self internalNestedDataFromIterator:iterator andKeyPrefix:childPath]; + [dict setValue:childValue forKey:childName]; + + key = iterator.key; + } + return dict; + } +} + + +- (NSData*) serializePrimitive:(id)value { + // HACK: The built-in serialization only works on dicts and arrays. So we create an array and then strip off + // the leading / trailing byte (the [ and ]). + NSError *error = nil; + NSData *data = [NSJSONSerialization dataWithJSONObject:@[value] options:0 error:&error]; + NSAssert(data, @"Failed to serialize primitive: %@", error); + + return [data subdataWithRange:NSMakeRange(1, data.length - 2)]; +} + +- (id)fixDoubleParsing:(id)value __attribute__((no_sanitize("float-cast-overflow"))) { + // The parser for double values in JSONSerialization at the root takes some short-cuts and delivers wrong results + // (wrong rounding) for some double values, including 2.47. Because we use the exact bytes for hashing on the server + // this will lead to hash mismatches. The parser of NSNumber seems to be more in line with what the server expects, + // so we use that here + if ([value isKindOfClass:[NSNumber class]]) { + CFNumberType type = CFNumberGetType((CFNumberRef)value); + if (type == kCFNumberDoubleType || type == kCFNumberFloatType) { + // The NSJSON parser returns all numbers as double values, even those that contain no exponent. To + // make sure that the String conversion below doesn't unexpectedly reduce precision, we make sure that + // our number is indeed not an integer. + if ((double)(int64_t)[value doubleValue] != [value doubleValue]) { + NSString *doubleString = [value stringValue]; + return [NSNumber numberWithDouble:[doubleString doubleValue]]; + } else { + return [NSNumber numberWithLongLong:[value longLongValue]]; + } + } + } + return value; +} + +- (id) deserializePrimitive:(NSData*)data { + NSError *error = nil; + id result = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:&error]; + if (result != nil) { + return [self fixDoubleParsing:result]; + } else { + if (error.code == kFNanFailureCode) { + FFWarn(@"I-RDB076034", @"Failed to load primitive %@, likely because doubles where out of range (Error: %@)", + [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding], error); + return [NSNull null]; + } else { + [NSException raise:NSInternalInconsistencyException format:@"Failed to deserialiaze primitive: %@", error]; + return nil; + } + } + +} + ++ (void)ensureDir:(NSString*)path markAsDoNotBackup:(BOOL)markAsDoNotBackup { + NSError* error; + BOOL success = [[NSFileManager defaultManager] createDirectoryAtPath:path + withIntermediateDirectories:YES + attributes:nil + error:&error]; + if (!success) { + @throw [NSException exceptionWithName:@"FailedToCreatePersistenceDir" reason:@"Failed to create persistence directory." userInfo:@{ @"path": path }]; + } + + if (markAsDoNotBackup) { + NSURL *firebaseDirURL = [NSURL fileURLWithPath:path]; + success = [firebaseDirURL setResourceValue:@YES + forKey:NSURLIsExcludedFromBackupKey + error:&error]; + if (!success) { + FFWarn(@"I-RDB076035", @"Failed to mark firebase database folder as do not backup: %@", error); + [NSException raise:@"Error marking as do not backup" format:@"Failed to mark folder %@ as do not backup", firebaseDirURL]; + } + } +} + + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPendingPut.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPendingPut.h new file mode 100644 index 0000000..0d8de55 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPendingPut.h @@ -0,0 +1,55 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FPath.h" + +// These are all legacy classes and are used to migrate older persistence data base to newer ones +// These classes should not be used in newer code + +@interface FPendingPut : NSObject + +@property (nonatomic, strong) FPath* path; +@property (nonatomic, strong) id data; +@property (nonatomic, strong) id priority; + +- (id) initWithPath:(FPath*)aPath andData:(id)aData andPriority:aPriority; +- (void)encodeWithCoder:(NSCoder *)aCoder; +- (id)initWithCoder:(NSCoder *)aDecoder; +@end + + +@interface FPendingPutPriority : NSObject + +@property (nonatomic, strong) FPath* path; +@property (nonatomic, strong) id priority; + +- (id) initWithPath:(FPath*)aPath andPriority:(id)aPriority; +- (void)encodeWithCoder:(NSCoder *)aCoder; +- (id)initWithCoder:(NSCoder *)aDecoder; + +@end + + +@interface FPendingUpdate : NSObject + +@property (nonatomic, strong) FPath* path; +@property (nonatomic, strong) NSDictionary* data; + +- (id) initWithPath:(FPath*)aPath andData:(NSDictionary*)aData; +- (void)encodeWithCoder:(NSCoder *)aCoder; +- (id)initWithCoder:(NSCoder *)aDecoder; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPendingPut.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPendingPut.m new file mode 100644 index 0000000..12be825 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPendingPut.m @@ -0,0 +1,112 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FPendingPut.h" + +@implementation FPendingPut + +@synthesize path; +@synthesize data; + +- (id) initWithPath:(FPath *)aPath andData:(id)aData andPriority:(id)aPriority { + self = [super init]; + if (self) { + self.path = aPath; + self.data = aData; + self.priority = aPriority; + } + return self; +} + +- (void)encodeWithCoder:(NSCoder *)aCoder { + [aCoder encodeObject:[self.path description] forKey:@"path"]; + [aCoder encodeObject:self.data forKey:@"data"]; + [aCoder encodeObject:self.priority forKey:@"priority"]; +} + +- (id)initWithCoder:(NSCoder *)aDecoder { + self = [super init]; + if(self) { + self.path = [[FPath alloc] initWith:[aDecoder decodeObjectForKey:@"path"]]; + self.data = [aDecoder decodeObjectForKey:@"data"]; + self.priority = [aDecoder decodeObjectForKey:@"priority"]; + } + return self; +} + +@end + + +@implementation FPendingPutPriority + +@synthesize path; +@synthesize priority; + +- (id) initWithPath:(FPath *)aPath andPriority:(id)aPriority { + self = [super init]; + if (self) { + self.path = aPath; + self.priority = aPriority; + } + return self; +} + +- (void)encodeWithCoder:(NSCoder *)aCoder { + [aCoder encodeObject:[self.path description] forKey:@"path"]; + [aCoder encodeObject:self.priority forKey:@"priority"]; +} + +- (id)initWithCoder:(NSCoder *)aDecoder { + self = [super init]; + if(self) { + self.path = [[FPath alloc] initWith:[aDecoder decodeObjectForKey:@"path"]]; + self.priority = [aDecoder decodeObjectForKey:@"priority"]; + } + return self; +} + +@end + + +@implementation FPendingUpdate + +@synthesize path; +@synthesize data; + +- (id) initWithPath:(FPath *)aPath andData:(id)aData { + self = [super init]; + if (self) { + self.path = aPath; + self.data = aData; + } + return self; +} + +- (void)encodeWithCoder:(NSCoder *)aCoder { + [aCoder encodeObject:[self.path description] forKey:@"path"]; + [aCoder encodeObject:self.data forKey:@"data"]; +} + +- (id)initWithCoder:(NSCoder *)aDecoder { + self = [super init]; + if(self) { + self.path = [[FPath alloc] initWith:[aDecoder decodeObjectForKey:@"path"]]; + self.data = [aDecoder decodeObjectForKey:@"data"]; + } + return self; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPersistenceManager.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPersistenceManager.h new file mode 100644 index 0000000..a3688b3 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPersistenceManager.h @@ -0,0 +1,52 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#import "FNode.h" +#import "FCompoundWrite.h" +#import "FQuerySpec.h" +#import "FRepoInfo.h" +#import "FStorageEngine.h" +#import "FCachePolicy.h" +#import "FCacheNode.h" + +@interface FPersistenceManager : NSObject + +- (id)initWithStorageEngine:(id)storageEngine cachePolicy:(id)cachePolicy; +- (void)close; + +- (void)saveUserOverwrite:(id)node atPath:(FPath *)path writeId:(NSUInteger)writeId; +- (void)saveUserMerge:(FCompoundWrite *)merge atPath:(FPath *)path writeId:(NSUInteger)writeId; +- (void)removeUserWrite:(NSUInteger)writeId; +- (void)removeAllUserWrites; +- (NSArray *)userWrites; + +- (FCacheNode *)serverCacheForQuery:(FQuerySpec *)spec; +- (void)updateServerCacheWithNode:(id)node forQuery:(FQuerySpec *)spec; +- (void)updateServerCacheWithMerge:(FCompoundWrite *)merge atPath:(FPath *)path; + +- (void)applyUserWrite:(id)write toServerCacheAtPath:(FPath *)path; +- (void)applyUserMerge:(FCompoundWrite *)merge toServerCacheAtPath:(FPath *)path; + +- (void)setQueryComplete:(FQuerySpec *)spec; +- (void)setQueryActive:(FQuerySpec *)spec; +- (void)setQueryInactive:(FQuerySpec *)spec; + +- (void)setTrackedQueryKeys:(NSSet *)keys forQuery:(FQuerySpec *)query; +- (void)updateTrackedQueryKeysWithAddedKeys:(NSSet *)added removedKeys:(NSSet *)removed forQuery:(FQuerySpec *)query; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPersistenceManager.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPersistenceManager.m new file mode 100644 index 0000000..b488f3e --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPersistenceManager.m @@ -0,0 +1,191 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FPersistenceManager.h" +#import "FLevelDBStorageEngine.h" +#import "FCacheNode.h" +#import "FIndexedNode.h" +#import "FTrackedQueryManager.h" +#import "FTrackedQuery.h" +#import "FUtilities.h" +#import "FPruneForest.h" +#import "FClock.h" + +@interface FPersistenceManager () + +@property (nonatomic, strong) id storageEngine; +@property (nonatomic, strong) id cachePolicy; +@property (nonatomic, strong) FTrackedQueryManager *trackedQueryManager; +@property (nonatomic) NSUInteger serverCacheUpdatesSinceLastPruneCheck; + +@end + +@implementation FPersistenceManager + +- (id)initWithStorageEngine:(id)storageEngine cachePolicy:(id)cachePolicy { + self = [super init]; + if (self != nil) { + self->_storageEngine = storageEngine; + self->_cachePolicy = cachePolicy; + self->_trackedQueryManager = [[FTrackedQueryManager alloc] initWithStorageEngine:self.storageEngine + clock:[FSystemClock clock]]; + } + return self; +} + +- (void)close { + [self.storageEngine close]; + self.storageEngine = nil; + self.trackedQueryManager = nil; +} + +- (void)saveUserOverwrite:(id)node atPath:(FPath *)path writeId:(NSUInteger)writeId { + [self.storageEngine saveUserOverwrite:node atPath:path writeId:writeId]; +} + +- (void)saveUserMerge:(FCompoundWrite *)merge atPath:(FPath *)path writeId:(NSUInteger)writeId { + [self.storageEngine saveUserMerge:merge atPath:path writeId:writeId]; +} + +- (void)removeUserWrite:(NSUInteger)writeId { + [self.storageEngine removeUserWrite:writeId]; +} + +- (void)removeAllUserWrites { + [self.storageEngine removeAllUserWrites]; +} + +- (NSArray *)userWrites { + return [self.storageEngine userWrites]; +} + +- (FCacheNode *)serverCacheForQuery:(FQuerySpec *)query { + NSSet *trackedKeys; + BOOL complete; + // TODO[offline]: Should we use trackedKeys to find out if this location is a child of a complete query? + if ([self.trackedQueryManager isQueryComplete:query]) { + complete = YES; + FTrackedQuery *trackedQuery = [self.trackedQueryManager findTrackedQuery:query]; + if (!query.loadsAllData && trackedQuery.isComplete) { + trackedKeys = [self.storageEngine trackedQueryKeysForQuery:trackedQuery.queryId]; + } else { + trackedKeys = nil; + } + } else { + complete = NO; + trackedKeys = [self.trackedQueryManager knownCompleteChildrenAtPath:query.path]; + } + + id node; + if (trackedKeys != nil) { + node = [self.storageEngine serverCacheForKeys:trackedKeys atPath:query.path]; + } else { + node = [self.storageEngine serverCacheAtPath:query.path]; + } + + FIndexedNode *indexedNode = [FIndexedNode indexedNodeWithNode:node index:query.index]; + return [[FCacheNode alloc] initWithIndexedNode:indexedNode isFullyInitialized:complete isFiltered:(trackedKeys != nil)]; +} + +- (void)updateServerCacheWithNode:(id)node forQuery:(FQuerySpec *)query { + BOOL merge = !query.loadsAllData; + [self.storageEngine updateServerCache:node atPath:query.path merge:merge]; + [self setQueryComplete:query]; + [self doPruneCheckAfterServerUpdate]; +} + +- (void)updateServerCacheWithMerge:(FCompoundWrite *)merge atPath:(FPath *)path { + [self.storageEngine updateServerCacheWithMerge:merge atPath:path]; + [self doPruneCheckAfterServerUpdate]; +} + +- (void)applyUserMerge:(FCompoundWrite *)merge toServerCacheAtPath:(FPath *)path { + // TODO[offline]: rework this to be more efficient + [merge enumerateWrites:^(FPath *relativePath, id node, BOOL *stop) { + [self applyUserWrite:node toServerCacheAtPath:[path child:relativePath]]; + }]; +} + +- (void)applyUserWrite:(id)write toServerCacheAtPath:(FPath *)path { + // This is a hack to guess whether we already cached this because we got a server data update for this + // write via an existing active default query. If we didn't, then we'll manually cache this and add a + // tracked query to mark it complete and keep it cached. + // Unfortunately this is just a guess and it's possible that we *did* get an update (e.g. via a filtered + // query) and by overwriting the cache here, we'll actually store an incorrect value (e.g. in the case + // that we wrote a ServerValue.TIMESTAMP and the server resolved it to a different value). + // TODO[offline]: Consider reworking. + if (![self.trackedQueryManager hasActiveDefaultQueryAtPath:path]) { + [self.storageEngine updateServerCache:write atPath:path merge:NO]; + [self.trackedQueryManager ensureCompleteTrackedQueryAtPath:path]; + } +} + +- (void)setQueryComplete:(FQuerySpec *)query { + if (query.loadsAllData) { + [self.trackedQueryManager setQueriesCompleteAtPath:query.path]; + } else { + [self.trackedQueryManager setQueryComplete:query]; + } +} + +- (void)setQueryActive:(FQuerySpec *)spec { + [self.trackedQueryManager setQueryActive:spec]; +} + +- (void)setQueryInactive:(FQuerySpec *)spec { + [self.trackedQueryManager setQueryInactive:spec]; +} + +- (void)doPruneCheckAfterServerUpdate { + self.serverCacheUpdatesSinceLastPruneCheck++; + if ([self.cachePolicy shouldCheckCacheSize:self.serverCacheUpdatesSinceLastPruneCheck]) { + FFDebug(@"I-RDB078001", @"Reached prune check threshold. Checking..."); + NSDate *date = [NSDate date]; + self.serverCacheUpdatesSinceLastPruneCheck = 0; + BOOL canPrune = YES; + NSUInteger cacheSize = [self.storageEngine serverCacheEstimatedSizeInBytes]; + FFDebug(@"I-RDB078002", @"Server cache size: %lu", (unsigned long)cacheSize); + while (canPrune && [self.cachePolicy shouldPruneCacheWithSize:cacheSize + numberOfTrackedQueries:self.trackedQueryManager.numberOfPrunableQueries]) { + FPruneForest *pruneForest = [self.trackedQueryManager pruneOldQueries:self.cachePolicy]; + if (pruneForest.prunesAnything) { + [self.storageEngine pruneCache:pruneForest atPath:[FPath empty]]; + } else { + canPrune = NO; + } + cacheSize = [self.storageEngine serverCacheEstimatedSizeInBytes]; + FFDebug(@"I-RDB078003", @"Cache size after pruning: %lu", (unsigned long)cacheSize); + } + FFDebug(@"I-RDB078004", @"Pruning round took %fms", [date timeIntervalSinceNow]*-1000); + } +} + +- (void)setTrackedQueryKeys:(NSSet *)keys forQuery:(FQuerySpec *)query { + NSAssert(!query.loadsAllData, @"We should only track keys for filtered queries"); + FTrackedQuery *trackedQuery = [self.trackedQueryManager findTrackedQuery:query]; + NSAssert(trackedQuery.isActive, @"We only expect tracked keys for currently-active queries."); + [self.storageEngine setTrackedQueryKeys:keys forQueryId:trackedQuery.queryId]; +} + +- (void)updateTrackedQueryKeysWithAddedKeys:(NSSet *)added removedKeys:(NSSet *)removed forQuery:(FQuerySpec *)query { + NSAssert(!query.loadsAllData, @"We should only track keys for filtered queries"); + FTrackedQuery *trackedQuery = [self.trackedQueryManager findTrackedQuery:query]; + NSAssert(trackedQuery.isActive, @"We only expect tracked keys for currently-active queries."); + [self.storageEngine updateTrackedQueryKeysWithAddedKeys:added removedKeys:removed forQueryId:trackedQuery.queryId]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPruneForest.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPruneForest.h new file mode 100644 index 0000000..9e77217 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPruneForest.h @@ -0,0 +1,38 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FPath; + +@interface FPruneForest : NSObject + ++ (FPruneForest *)empty; + +- (BOOL)prunesAnything; +- (BOOL)shouldPruneUnkeptDescendantsAtPath:(FPath *)path; +- (BOOL)shouldKeepPath:(FPath *)path; +- (BOOL)affectsPath:(FPath *)path; +- (FPruneForest *)child:(NSString *)childKey; +- (FPruneForest *)childAtPath:(FPath *)childKey; +- (FPruneForest *)prunePath:(FPath *)path; +- (FPruneForest *)keepPath:(FPath *)path; +- (FPruneForest *)keepAll:(NSSet *)children atPath:(FPath *)path; +- (FPruneForest *)pruneAll:(NSSet *)children atPath:(FPath *)path; + +- (void)enumarateKeptNodesUsingBlock:(void (^)(FPath *path))block; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPruneForest.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPruneForest.m new file mode 100644 index 0000000..ae5ce91 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FPruneForest.m @@ -0,0 +1,177 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FPruneForest.h" + +#import "FImmutableTree.h" + +@interface FPruneForest () + +@property (nonatomic, strong) FImmutableTree *pruneForest; + +@end + +@implementation FPruneForest + +static BOOL (^kFPrunePredicate)(id) = ^BOOL(NSNumber *pruneValue) { + return [pruneValue boolValue]; +}; + +static BOOL (^kFKeepPredicate)(id) = ^BOOL(NSNumber *pruneValue) { + return ![pruneValue boolValue]; +}; + + ++ (FImmutableTree *)pruneTree { + static dispatch_once_t onceToken; + static FImmutableTree *pruneTree; + dispatch_once(&onceToken, ^{ + pruneTree = [[FImmutableTree alloc] initWithValue:@YES]; + }); + return pruneTree; +} + ++ (FImmutableTree *)keepTree { + static dispatch_once_t onceToken; + static FImmutableTree *keepTree; + dispatch_once(&onceToken, ^{ + keepTree = [[FImmutableTree alloc] initWithValue:@NO]; + }); + return keepTree; +} + +- (id) initWithForest:(FImmutableTree *)tree { + self = [super init]; + if (self != nil) { + self->_pruneForest = tree; + } + return self; +} + ++ (FPruneForest *)empty { + static dispatch_once_t onceToken; + static FPruneForest *forest; + dispatch_once(&onceToken, ^{ + forest = [[FPruneForest alloc] initWithForest:[FImmutableTree empty]]; + }); + return forest; +} + +- (BOOL)prunesAnything { + return [self.pruneForest containsValueMatching:kFPrunePredicate]; +} + +- (BOOL)shouldPruneUnkeptDescendantsAtPath:(FPath *)path { + NSNumber *shouldPrune = [self.pruneForest leafMostValueOnPath:path]; + return shouldPrune != nil && [shouldPrune boolValue]; +} + +- (BOOL)shouldKeepPath:(FPath *)path { + NSNumber *shouldPrune = [self.pruneForest leafMostValueOnPath:path]; + return shouldPrune != nil && ![shouldPrune boolValue]; +} + +- (BOOL)affectsPath:(FPath *)path { + return [self.pruneForest rootMostValueOnPath:path] != nil || ![[self.pruneForest subtreeAtPath:path] isEmpty]; +} + +- (FPruneForest *)child:(NSString *)childKey { + FImmutableTree *childPruneForest = [self.pruneForest.children get:childKey]; + if (childPruneForest == nil) { + if (self.pruneForest.value != nil) { + childPruneForest = [self.pruneForest.value boolValue] ? [FPruneForest pruneTree] : [FPruneForest keepTree]; + } else { + childPruneForest = [FImmutableTree empty]; + } + } else { + if (childPruneForest.value == nil && self.pruneForest.value != nil) { + childPruneForest = [childPruneForest setValue:self.pruneForest.value atPath:[FPath empty]]; + } + } + return [[FPruneForest alloc] initWithForest:childPruneForest]; +} + +- (FPruneForest *)childAtPath:(FPath *)path { + if (path.isEmpty) { + return self; + } else { + return [[self child:path.getFront] childAtPath:[path popFront]]; + } +} + +- (FPruneForest *)prunePath:(FPath *)path { + if ([self.pruneForest rootMostValueOnPath:path matching:kFKeepPredicate]) { + [NSException raise:NSInvalidArgumentException format:@"Can't prune path that was kept previously!"]; + } + if ([self.pruneForest rootMostValueOnPath:path matching:kFPrunePredicate]) { + // This path will already be pruned + return self; + } else { + FImmutableTree *newPruneForest = [self.pruneForest setTree:[FPruneForest pruneTree] atPath:path]; + return [[FPruneForest alloc] initWithForest:newPruneForest]; + } +} + +- (FPruneForest *)keepPath:(FPath *)path { + if ([self.pruneForest rootMostValueOnPath:path matching:kFKeepPredicate]) { + // This path will already be kept + return self; + } else { + FImmutableTree *newPruneForest = [self.pruneForest setTree:[FPruneForest keepTree] atPath:path]; + return [[FPruneForest alloc] initWithForest:newPruneForest]; + } +} + +- (FPruneForest *)keepAll:(NSSet *)children atPath:(FPath *)path { + if ([self.pruneForest rootMostValueOnPath:path matching:kFKeepPredicate]) { + // This path will already be kept + return self; + } else { + return [self setPruneValue:[FPruneForest keepTree] forAll:children atPath:path]; + } +} + +- (FPruneForest *)pruneAll:(NSSet *)children atPath:(FPath *)path { + if ([self.pruneForest rootMostValueOnPath:path matching:kFKeepPredicate]) { + [NSException raise:NSInvalidArgumentException format:@"Can't prune path that was kept previously!"]; + } + if ([self.pruneForest rootMostValueOnPath:path matching:kFPrunePredicate]) { + // This path will already be pruned + return self; + } else { + return [self setPruneValue:[FPruneForest pruneTree] forAll:children atPath:path]; + } +} + +- (FPruneForest *)setPruneValue:(FImmutableTree *)pruneValue forAll:(NSSet *)children atPath:(FPath *)path { + FImmutableTree *subtree = [self.pruneForest subtreeAtPath:path]; + __block FImmutableSortedDictionary *childrenDictionary = subtree.children; + [children enumerateObjectsUsingBlock:^(NSString *childKey, BOOL *stop) { + childrenDictionary = [childrenDictionary insertKey:childKey withValue:pruneValue]; + }]; + FImmutableTree *newSubtree = [[FImmutableTree alloc] initWithValue:subtree.value children:childrenDictionary]; + return [[FPruneForest alloc] initWithForest:[self.pruneForest setTree:newSubtree atPath:path]]; +} + +- (void)enumarateKeptNodesUsingBlock:(void (^)(FPath *))block { + [self.pruneForest forEach:^(FPath *path, id value) { + if (value != nil && ![value boolValue]) { + block(path); + } + }]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FStorageEngine.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FStorageEngine.h new file mode 100644 index 0000000..4f168e7 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FStorageEngine.h @@ -0,0 +1,53 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@protocol FNode; +@class FPruneForest; +@class FPath; +@class FCompoundWrite; +@class FQuerySpec; +@class FTrackedQuery; + +@protocol FStorageEngine + +- (void)close; + +- (void)saveUserOverwrite:(id)node atPath:(FPath *)path writeId:(NSUInteger)writeId; +- (void)saveUserMerge:(FCompoundWrite *)merge atPath:(FPath *)path writeId:(NSUInteger)writeId; +- (void)removeUserWrite:(NSUInteger)writeId; +- (void)removeAllUserWrites; +- (NSArray *)userWrites; + +- (id)serverCacheAtPath:(FPath *)path; +- (id)serverCacheForKeys:(NSSet *)keys atPath:(FPath *)path; +- (void)updateServerCache:(id)node atPath:(FPath *)path merge:(BOOL)merge; +- (void)updateServerCacheWithMerge:(FCompoundWrite *)merge atPath:(FPath *)path; +- (NSUInteger)serverCacheEstimatedSizeInBytes; + +- (void)pruneCache:(FPruneForest *)pruneForest atPath:(FPath *)path; + +- (NSArray *)loadTrackedQueries; +- (void)removeTrackedQuery:(NSUInteger)queryId; +- (void)saveTrackedQuery:(FTrackedQuery *)query; + +- (void)setTrackedQueryKeys:(NSSet *)keys forQueryId:(NSUInteger)queryId; +- (void)updateTrackedQueryKeysWithAddedKeys:(NSSet *)added removedKeys:(NSSet *)removed forQueryId:(NSUInteger)queryId; +- (NSSet *)trackedQueryKeysForQuery:(NSUInteger)queryId; + + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FTrackedQuery.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FTrackedQuery.h new file mode 100644 index 0000000..7bc8ef1 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FTrackedQuery.h @@ -0,0 +1,40 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FQuerySpec; + +@interface FTrackedQuery : NSObject + +@property (nonatomic, readonly) NSUInteger queryId; +@property (nonatomic, strong, readonly) FQuerySpec *query; +@property (nonatomic, readonly) NSTimeInterval lastUse; +@property (nonatomic, readonly) BOOL isComplete; +@property (nonatomic, readonly) BOOL isActive; + +- (id)initWithId:(NSUInteger)queryId query:(FQuerySpec *)query lastUse:(NSTimeInterval)lastUse isActive:(BOOL)isActive; +- (id)initWithId:(NSUInteger)queryId + query:(FQuerySpec *)query + lastUse:(NSTimeInterval)lastUse + isActive:(BOOL)isActive + isComplete:(BOOL)isComplete; + +- (FTrackedQuery *)updateLastUse:(NSTimeInterval)lastUse; +- (FTrackedQuery *)setComplete; +- (FTrackedQuery *)setActiveState:(BOOL)isActive; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FTrackedQuery.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FTrackedQuery.m new file mode 100644 index 0000000..1720805 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FTrackedQuery.m @@ -0,0 +1,102 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FTrackedQuery.h" + +#import "FQuerySpec.h" + +@interface FTrackedQuery () + +@property (nonatomic, readwrite) NSUInteger queryId; +@property (nonatomic, strong, readwrite) FQuerySpec *query; +@property (nonatomic, readwrite) NSTimeInterval lastUse; +@property (nonatomic, readwrite) BOOL isComplete; +@property (nonatomic, readwrite) BOOL isActive; + +@end + + +@implementation FTrackedQuery + +- (id)initWithId:(NSUInteger)queryId + query:(FQuerySpec *)query + lastUse:(NSTimeInterval)lastUse + isActive:(BOOL)isActive + isComplete:(BOOL)isComplete { + self = [super init]; + if (self != nil) { + self->_queryId = queryId; + self->_query = query; + self->_lastUse = lastUse; + self->_isComplete = isComplete; + self->_isActive = isActive; + } + return self; +} + +- (id)initWithId:(NSUInteger)queryId query:(FQuerySpec *)query lastUse:(NSTimeInterval)lastUse isActive:(BOOL)isActive { + return [self initWithId:queryId query:query lastUse:lastUse isActive:isActive isComplete:NO]; +} + +- (FTrackedQuery *)updateLastUse:(NSTimeInterval)lastUse { + return [[FTrackedQuery alloc] initWithId:self.queryId + query:self.query + lastUse:lastUse + isActive:self.isActive + isComplete:self.isComplete]; +} + +- (FTrackedQuery *)setComplete { + return [[FTrackedQuery alloc] initWithId:self.queryId + query:self.query + lastUse:self.lastUse + isActive:self.isActive + isComplete:YES]; +} + +- (FTrackedQuery *)setActiveState:(BOOL)isActive { + return [[FTrackedQuery alloc] initWithId:self.queryId + query:self.query + lastUse:self.lastUse + isActive:isActive + isComplete:self.isComplete]; +} + +- (BOOL)isEqual:(id)object { + if (![object isKindOfClass:[FTrackedQuery class]]) { + return NO; + } + FTrackedQuery *other = (FTrackedQuery *)object; + if (self.queryId != other.queryId) return NO; + if (self.query != other.query && ![self.query isEqual:other.query]) return NO; + if (self.lastUse != other.lastUse) return NO; + if (self.isComplete != other.isComplete) return NO; + if (self.isActive != other.isActive) return NO; + + return YES; +} + +- (NSUInteger)hash { + NSUInteger hash = self.queryId; + hash = hash * 31 + self.query.hash; + hash = hash * 31 + (self.isActive ? 1 : 0); + hash = hash * 31 + (NSUInteger)self.lastUse; + hash = hash * 31 + (self.isComplete ? 1 : 0); + hash = hash * 31 + (self.isActive ? 1 : 0); + return hash; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FTrackedQueryManager.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FTrackedQueryManager.h new file mode 100644 index 0000000..ba2631b --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FTrackedQueryManager.h @@ -0,0 +1,51 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@protocol FStorageEngine; +@protocol FClock; +@protocol FCachePolicy; +@class FQuerySpec; +@class FPath; +@class FTrackedQuery; +@class FPruneForest; + +@interface FTrackedQueryManager : NSObject + +- (id)initWithStorageEngine:(id)storageEngine clock:(id)clock; + +- (FTrackedQuery *)findTrackedQuery:(FQuerySpec *)query; + +- (BOOL)isQueryComplete:(FQuerySpec *)query; + +- (void)removeTrackedQuery:(FQuerySpec *)query; +- (void)setQueryComplete:(FQuerySpec *)query; +- (void)setQueriesCompleteAtPath:(FPath *)path; +- (void)setQueryActive:(FQuerySpec *)query; +- (void)setQueryInactive:(FQuerySpec *)query; + +- (BOOL)hasActiveDefaultQueryAtPath:(FPath *)path; +- (void)ensureCompleteTrackedQueryAtPath:(FPath *)path; + +- (FPruneForest *)pruneOldQueries:(id)cachePolicy; +- (NSUInteger)numberOfPrunableQueries; +- (NSSet *)knownCompleteChildrenAtPath:(FPath *)path; + +// For testing +- (void)verifyCache; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FTrackedQueryManager.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FTrackedQueryManager.m new file mode 100644 index 0000000..9176f25 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Persistence/FTrackedQueryManager.m @@ -0,0 +1,322 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FTrackedQueryManager.h" +#import "FImmutableTree.h" +#import "FLevelDBStorageEngine.h" +#import "FUtilities.h" +#import "FTrackedQuery.h" +#import "FPruneForest.h" +#import "FClock.h" +#import "FUtilities.h" +#import "FCachePolicy.h" + +@interface FTrackedQueryManager () + +@property (nonatomic, strong) FImmutableTree *trackedQueryTree; +@property (nonatomic, strong) id storageEngine; +@property (nonatomic, strong) id clock; +@property (nonatomic) NSUInteger currentQueryId; + +@end + +@implementation FTrackedQueryManager + +- (id)initWithStorageEngine:(id)storageEngine clock:(id)clock { + self = [super init]; + if (self != nil) { + self->_storageEngine = storageEngine; + self->_clock = clock; + self->_trackedQueryTree = [FImmutableTree empty]; + + NSTimeInterval lastUse = [clock currentTime]; + + NSArray *trackedQueries = [self.storageEngine loadTrackedQueries]; + [trackedQueries enumerateObjectsUsingBlock:^(FTrackedQuery *trackedQuery, NSUInteger idx, BOOL *stop) { + self.currentQueryId = MAX(trackedQuery.queryId + 1, self.currentQueryId); + if (trackedQuery.isActive) { + trackedQuery = [[trackedQuery setActiveState:NO] updateLastUse:lastUse]; + FFDebug(@"I-RDB081001", @"Setting active query %lu from previous app start inactive", (unsigned long)trackedQuery.queryId); + [self.storageEngine saveTrackedQuery:trackedQuery]; + } + [self cacheTrackedQuery:trackedQuery]; + }]; + } + return self; +} + ++ (void)assertValidTrackedQuery:(FQuerySpec *)query { + NSAssert(!query.loadsAllData || query.isDefault, @"Can't have tracked non-default query that loads all data"); +} + ++ (FQuerySpec *)normalizeQuery:(FQuerySpec *)query { + return query.loadsAllData ? [FQuerySpec defaultQueryAtPath:query.path] : query; +} + +- (FTrackedQuery *)findTrackedQuery:(FQuerySpec *)query { + query = [FTrackedQueryManager normalizeQuery:query]; + NSDictionary *set = [self.trackedQueryTree valueAtPath:query.path]; + return set[query.params]; +} + +- (void)removeTrackedQuery:(FQuerySpec *)query { + query = [FTrackedQueryManager normalizeQuery:query]; + FTrackedQuery *trackedQuery = [self findTrackedQuery:query]; + NSAssert(trackedQuery, @"Tracked query must exist to be removed!"); + + [self.storageEngine removeTrackedQuery:trackedQuery.queryId]; + NSMutableDictionary *trackedQueries = [self.trackedQueryTree valueAtPath:query.path]; + [trackedQueries removeObjectForKey:query.params]; +} + +- (void)setQueryActive:(FQuerySpec *)query { + [self setQueryActive:YES forQuery:query]; +} + +- (void)setQueryInactive:(FQuerySpec *)query { + [self setQueryActive:NO forQuery:query]; +} + +- (void)setQueryActive:(BOOL)isActive forQuery:(FQuerySpec *)query { + query = [FTrackedQueryManager normalizeQuery:query]; + FTrackedQuery *trackedQuery = [self findTrackedQuery:query]; + + // Regardless of whether it's now active or no langer active, we update the lastUse time + NSTimeInterval lastUse = [self.clock currentTime]; + if (trackedQuery != nil) { + trackedQuery = [[trackedQuery updateLastUse:lastUse] setActiveState:isActive]; + [self.storageEngine saveTrackedQuery:trackedQuery]; + } else { + NSAssert(isActive, @"If we're setting the query to inactive, we should already be tracking it!"); + trackedQuery = [[FTrackedQuery alloc] initWithId:self.currentQueryId++ + query:query + lastUse:lastUse + isActive:isActive]; + [self.storageEngine saveTrackedQuery:trackedQuery]; + } + + [self cacheTrackedQuery:trackedQuery]; +} + +- (void)setQueryComplete:(FQuerySpec *)query { + query = [FTrackedQueryManager normalizeQuery:query]; + FTrackedQuery *trackedQuery = [self findTrackedQuery:query]; + if (!trackedQuery) { + // We might have removed a query and pruned it before we got the complete message from the server... + FFWarn(@"I-RDB081002", @"Trying to set a query complete that is not tracked!"); + } else if (!trackedQuery.isComplete) { + trackedQuery = [trackedQuery setComplete]; + [self.storageEngine saveTrackedQuery:trackedQuery]; + [self cacheTrackedQuery:trackedQuery]; + } else { + // Nothing to do, already marked complete + } +} + +- (void)setQueriesCompleteAtPath:(FPath *)path { + [[self.trackedQueryTree subtreeAtPath:path] forEach:^(FPath *childPath, NSDictionary *trackedQueries) { + [trackedQueries enumerateKeysAndObjectsUsingBlock:^(FQueryParams *parms, FTrackedQuery *trackedQuery, BOOL *stop) { + if (!trackedQuery.isComplete) { + FTrackedQuery *newTrackedQuery = [trackedQuery setComplete]; + [self.storageEngine saveTrackedQuery:newTrackedQuery]; + [self cacheTrackedQuery:newTrackedQuery]; + } + }]; + }]; +} + +- (BOOL)isQueryComplete:(FQuerySpec *)query { + if ([self isIncludedInDefaultCompleteQuery:query]) { + return YES; + } else if (query.loadsAllData) { + // We didn't find a default complete query, so must not be complete. + return NO; + } else { + NSDictionary *trackedQueries = [self.trackedQueryTree valueAtPath:query.path]; + return [trackedQueries[query.params] isComplete]; + } +} + +- (BOOL)hasActiveDefaultQueryAtPath:(FPath *)path { + return [self.trackedQueryTree rootMostValueOnPath:path matching:^BOOL(NSDictionary *trackedQueries) { + return [trackedQueries[[FQueryParams defaultInstance]] isActive]; + }] != nil; +} + +- (void)ensureCompleteTrackedQueryAtPath:(FPath *)path { + FQuerySpec *query = [FQuerySpec defaultQueryAtPath:path]; + if (![self isIncludedInDefaultCompleteQuery:query]) { + FTrackedQuery *trackedQuery = [self findTrackedQuery:query]; + if (trackedQuery == nil) { + trackedQuery = [[FTrackedQuery alloc] initWithId:self.currentQueryId++ + query:query + lastUse:[self.clock currentTime] + isActive:NO + isComplete:YES]; + } else { + NSAssert(!trackedQuery.isComplete, @"This should have been handled above!"); + trackedQuery = [trackedQuery setComplete]; + } + [self.storageEngine saveTrackedQuery:trackedQuery]; + [self cacheTrackedQuery:trackedQuery]; + } +} + +- (BOOL)isIncludedInDefaultCompleteQuery:(FQuerySpec *)query { + return [self.trackedQueryTree findRootMostMatchingPath:query.path predicate:^BOOL(NSDictionary *trackedQueries) { + return [trackedQueries[[FQueryParams defaultInstance]] isComplete]; + }] != nil; +} + +- (void)cacheTrackedQuery:(FTrackedQuery *)query { + [FTrackedQueryManager assertValidTrackedQuery:query.query]; + NSMutableDictionary *trackedDict = [self.trackedQueryTree valueAtPath:query.query.path]; + if (trackedDict == nil) { + trackedDict = [NSMutableDictionary dictionary]; + self.trackedQueryTree = [self.trackedQueryTree setValue:trackedDict atPath:query.query.path]; + } + trackedDict[query.query.params] = query; +} + +- (NSUInteger) numberOfQueriesToPrune:(id)cachePolicy prunableCount:(NSUInteger)numPrunable { + NSUInteger numPercent = (NSUInteger)ceilf(numPrunable * [cachePolicy percentOfQueriesToPruneAtOnce]); + NSUInteger maxToKeep = [cachePolicy maxNumberOfQueriesToKeep]; + NSUInteger numMax = (numPrunable > maxToKeep) ? numPrunable - maxToKeep : 0; + // Make sure we get below number of max queries to prune + return MAX(numMax, numPercent); +} + +- (FPruneForest *)pruneOldQueries:(id)cachePolicy { + NSMutableArray *pruneableQueries = [NSMutableArray array]; + NSMutableArray *unpruneableQueries = [NSMutableArray array]; + [self.trackedQueryTree forEach:^(FPath *path, NSDictionary *trackedQueries) { + [trackedQueries enumerateKeysAndObjectsUsingBlock:^(FQueryParams *params, FTrackedQuery *trackedQuery, BOOL *stop) { + if (!trackedQuery.isActive) { + [pruneableQueries addObject:trackedQuery]; + } else { + [unpruneableQueries addObject:trackedQuery]; + } + }]; + }]; + [pruneableQueries sortUsingComparator:^NSComparisonResult(FTrackedQuery *q1, FTrackedQuery *q2) { + if (q1.lastUse < q2.lastUse) { + return NSOrderedAscending; + } else if (q1.lastUse > q2.lastUse) { + return NSOrderedDescending; + } else { + return NSOrderedSame; + } + }]; + + + __block FPruneForest *pruneForest = [FPruneForest empty]; + NSUInteger numToPrune = [self numberOfQueriesToPrune:cachePolicy prunableCount:pruneableQueries.count]; + + // TODO: do in transaction + for (NSUInteger i = 0; i < numToPrune; i++) { + FTrackedQuery *toPrune = pruneableQueries[i]; + pruneForest = [pruneForest prunePath:toPrune.query.path]; + [self removeTrackedQuery:toPrune.query]; + } + + // Keep the rest of the prunable queries + for (NSUInteger i = numToPrune; i < pruneableQueries.count; i++) { + FTrackedQuery *toKeep = pruneableQueries[i]; + pruneForest = [pruneForest keepPath:toKeep.query.path]; + } + + // Also keep unprunable queries + [unpruneableQueries enumerateObjectsUsingBlock:^(FTrackedQuery *toKeep, NSUInteger idx, BOOL *stop) { + pruneForest = [pruneForest keepPath:toKeep.query.path]; + }]; + + return pruneForest; +} + +- (NSUInteger)numberOfPrunableQueries { + __block NSUInteger count = 0; + [self.trackedQueryTree forEach:^(FPath *path, NSDictionary *trackedQueries) { + [trackedQueries enumerateKeysAndObjectsUsingBlock:^(FQueryParams *params, FTrackedQuery *trackedQuery, BOOL *stop) { + if (!trackedQuery.isActive) { + count++; + } + }]; + }]; + return count; +} + +- (NSSet *)filteredQueryIdsAtPath:(FPath *)path { + NSDictionary *queries = [self.trackedQueryTree valueAtPath:path]; + if (queries) { + NSMutableSet *ids = [NSMutableSet set]; + [queries enumerateKeysAndObjectsUsingBlock:^(FQueryParams *params, FTrackedQuery *query, BOOL *stop) { + if (!query.query.loadsAllData) { + [ids addObject:@(query.queryId)]; + } + }]; + return ids; + } else { + return [NSSet set]; + } +} + +- (NSSet *)knownCompleteChildrenAtPath:(FPath *)path { + NSAssert(![self isQueryComplete:[FQuerySpec defaultQueryAtPath:path]], @"Path is fully complete"); + + NSMutableSet *completeChildren = [NSMutableSet set]; + // First, get complete children from any queries at this location. + NSSet *queryIds = [self filteredQueryIdsAtPath:path]; + [queryIds enumerateObjectsUsingBlock:^(NSNumber *queryId, BOOL *stop) { + NSSet *keys = [self.storageEngine trackedQueryKeysForQuery:[queryId unsignedIntegerValue]]; + [completeChildren unionSet:keys]; + }]; + + // Second, get any complete default queries immediately below us. + [[[self.trackedQueryTree subtreeAtPath:path] children] enumerateKeysAndObjectsUsingBlock:^(NSString *childKey, FImmutableTree *childTree, BOOL *stop) { + if ([childTree.value[[FQueryParams defaultInstance]] isComplete]) { + [completeChildren addObject:childKey]; + } + }]; + + return completeChildren; +} + +- (void)verifyCache { + NSArray *storedTrackedQueries = [self.storageEngine loadTrackedQueries]; + NSMutableArray *trackedQueries = [NSMutableArray array]; + + [self.trackedQueryTree forEach:^(FPath *path, NSDictionary *queryDict) { + [trackedQueries addObjectsFromArray:queryDict.allValues]; + }]; + NSComparator comparator = ^NSComparisonResult(FTrackedQuery *q1, FTrackedQuery *q2) { + if (q1.queryId < q2.queryId) { + return NSOrderedAscending; + } else if (q1.queryId > q2.queryId) { + return NSOrderedDescending; + } else { + return NSOrderedSame; + } + }; + [trackedQueries sortUsingComparator:comparator]; + storedTrackedQueries = [storedTrackedQueries sortedArrayUsingComparator:comparator]; + + if (![trackedQueries isEqualToArray:storedTrackedQueries]) { + [NSException raise:NSInternalInconsistencyException format:@"Tracked queries and queries stored on disk don't match"]; + } +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDataEventType.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDataEventType.h new file mode 100644 index 0000000..916ce32 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDataEventType.h @@ -0,0 +1,38 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef Firebase_FIRDataEventType_h +#define Firebase_FIRDataEventType_h + +#import + +/** + * This enum is the set of events that you can observe at a Firebase Database location. + */ +typedef NS_ENUM(NSInteger, FIRDataEventType) { + /// A new child node is added to a location. + FIRDataEventTypeChildAdded, + /// A child node is removed from a location. + FIRDataEventTypeChildRemoved, + /// A child node at a location changes. + FIRDataEventTypeChildChanged, + /// A child node moves relative to the other child nodes at a location. + FIRDataEventTypeChildMoved, + /// Any data changes at a location or, recursively, at any child node. + FIRDataEventTypeValue +} NS_SWIFT_NAME(DataEventType); + +#endif diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDataSnapshot.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDataSnapshot.h new file mode 100644 index 0000000..02a1e6a --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDataSnapshot.h @@ -0,0 +1,147 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +@class FIRDatabaseReference; + +/** + * A FIRDataSnapshot contains data from a Firebase Database location. Any time you read + * Firebase data, you receive the data as a FIRDataSnapshot. + * + * FIRDataSnapshots are passed to the blocks you attach with observeEventType:withBlock: or observeSingleEvent:withBlock:. + * They are efficiently-generated immutable copies of the data at a Firebase Database location. + * They can't be modified and will never change. To modify data at a location, + * use a FIRDatabaseReference (e.g. with setValue:). + */ +NS_SWIFT_NAME(DataSnapshot) +@interface FIRDataSnapshot : NSObject + + +#pragma mark - Navigating and inspecting a snapshot + +/** + * Gets a FIRDataSnapshot for the location at the specified relative path. + * The relative path can either be a simple child key (e.g. 'fred') + * or a deeper slash-separated path (e.g. 'fred/name/first'). If the child + * location has no data, an empty FIRDataSnapshot is returned. + * + * @param childPathString A relative path to the location of child data. + * @return The FIRDataSnapshot for the child location. + */ +- (FIRDataSnapshot *)childSnapshotForPath:(NSString *)childPathString; + + +/** + * Return YES if the specified child exists. + * + * @param childPathString A relative path to the location of a potential child. + * @return YES if data exists at the specified childPathString, else NO. + */ +- (BOOL) hasChild:(NSString *)childPathString; + + +/** + * Return YES if the DataSnapshot has any children. + * + * @return YES if this snapshot has any children, else NO. + */ +- (BOOL) hasChildren; + + +/** + * Return YES if the DataSnapshot contains a non-null value. + * + * @return YES if this snapshot contains a non-null value, else NO. + */ +- (BOOL) exists; + + +#pragma mark - Data export + +/** + * Returns the raw value at this location, coupled with any metadata, such as priority. + * + * Priorities, where they exist, are accessible under the ".priority" key in instances of NSDictionary. + * For leaf locations with priorities, the value will be under the ".value" key. + */ +- (id __nullable) valueInExportFormat; + + +#pragma mark - Properties + +/** + * Returns the contents of this data snapshot as native types. + * + * Data types returned: + * + NSDictionary + * + NSArray + * + NSNumber (also includes booleans) + * + NSString + * + * @return The data as a native object. + */ +@property (strong, readonly, nonatomic, nullable) id value; + + +/** + * Gets the number of children for this DataSnapshot. + * + * @return An integer indicating the number of children. + */ +@property (readonly, nonatomic) NSUInteger childrenCount; + + +/** + * Gets a FIRDatabaseReference for the location that this data came from. + * + * @return A FIRDatabaseReference instance for the location of this data. + */ +@property (nonatomic, readonly, strong) FIRDatabaseReference * ref; + + +/** + * The key of the location that generated this FIRDataSnapshot. + * + * @return An NSString containing the key for the location of this FIRDataSnapshot. + */ +@property (strong, readonly, nonatomic) NSString* key; + + +/** + * An iterator for snapshots of the child nodes in this snapshot. + * You can use the native for..in syntax: + * + * for (FIRDataSnapshot* child in snapshot.children) { + * ... + * } + * + * @return An NSEnumerator of the children. + */ +@property (strong, readonly, nonatomic) NSEnumerator* children; + +/** + * The priority of the data in this FIRDataSnapshot. + * + * @return The priority as a string, or nil if no priority was set. + */ +@property (strong, readonly, nonatomic, nullable) id priority; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDatabase.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDatabase.h new file mode 100644 index 0000000..15c8700 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDatabase.h @@ -0,0 +1,168 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FIRDatabaseReference.h" + +@class FIRApp; + +NS_ASSUME_NONNULL_BEGIN + +/** + * The entry point for accessing a Firebase Database. You can get an instance by calling + * [FIRDatabase database]. To access a location in the database and read or write data, + * use [FIRDatabase reference]. + */ +NS_SWIFT_NAME(Database) +@interface FIRDatabase : NSObject + +/** + * The NSObject initializer that has been marked as unavailable. Use the `database` + * method instead + * + * @return An instancetype instance +*/ +- (instancetype) init __attribute__((unavailable("use the database method instead"))); + +/** + * Gets the instance of FIRDatabase for the default FIRApp. + * + * @return A FIRDatabase instance. + */ ++ (FIRDatabase *) database NS_SWIFT_NAME(database()); + +/** + * Gets a FirebaseDatabase instance for the specified URL. + * + * @param url The URL to the Firebase Database instance you want to access. + * @return A FIRDatabase instance. + */ ++ (FIRDatabase *)databaseWithURL:(NSString *)url NS_SWIFT_NAME(database(url:)); + +/** + * Gets a FirebaseDatabase instance for the specified URL, using the specified + * FirebaseApp. + * + * @param app The FIRApp to get a FIRDatabase for. + * @param url The URL to the Firebase Database instance you want to access. + * @return A FIRDatabase instance. + */ +// clang-format off ++ (FIRDatabase *)databaseForApp:(FIRApp *)app + URL:(NSString *)url NS_SWIFT_NAME(database(app:url:)); +// clang-format on + +/** + * Gets an instance of FIRDatabase for a specific FIRApp. + * + * @param app The FIRApp to get a FIRDatabase for. + * @return A FIRDatabase instance. + */ ++ (FIRDatabase *) databaseForApp:(FIRApp *)app NS_SWIFT_NAME(database(app:)); + +/** The FIRApp instance to which this FIRDatabase belongs. */ +@property (weak, readonly, nonatomic) FIRApp *app; + +/** + * Gets a FIRDatabaseReference for the root of your Firebase Database. + */ +- (FIRDatabaseReference *) reference; + +/** + * Gets a FIRDatabaseReference for the provided path. + * + * @param path Path to a location in your Firebase Database. + * @return A FIRDatabaseReference pointing to the specified path. + */ +- (FIRDatabaseReference *) referenceWithPath:(NSString *)path; + +/** + * Gets a FIRDatabaseReference for the provided URL. The URL must be a URL to a path + * within this Firebase Database. To create a FIRDatabaseReference to a different database, + * create a FIRApp} with a FIROptions object configured with the appropriate database URL. + * + * @param databaseUrl A URL to a path within your database. + * @return A FIRDatabaseReference for the provided URL. +*/ +- (FIRDatabaseReference *) referenceFromURL:(NSString *)databaseUrl; + +/** + * The Firebase Database client automatically queues writes and sends them to the server at the earliest opportunity, + * depending on network connectivity. In some cases (e.g. offline usage) there may be a large number of writes + * waiting to be sent. Calling this method will purge all outstanding writes so they are abandoned. + * + * All writes will be purged, including transactions and onDisconnect writes. The writes will + * be rolled back locally, perhaps triggering events for affected event listeners, and the client will not + * (re-)send them to the Firebase Database backend. + */ +- (void)purgeOutstandingWrites; + +/** + * Shuts down our connection to the Firebase Database backend until goOnline is called. + */ +- (void)goOffline; + +/** + * Resumes our connection to the Firebase Database backend after a previous goOffline call. + */ +- (void)goOnline; + +/** + * The Firebase Database client will cache synchronized data and keep track of all writes you've + * initiated while your application is running. It seamlessly handles intermittent network + * connections and re-sends write operations when the network connection is restored. + * + * However by default your write operations and cached data are only stored in-memory and will + * be lost when your app restarts. By setting this value to `YES`, the data will be persisted + * to on-device (disk) storage and will thus be available again when the app is restarted + * (even when there is no network connectivity at that time). Note that this property must be + * set before creating your first Database reference and only needs to be called once per + * application. + * + */ +@property (nonatomic) BOOL persistenceEnabled NS_SWIFT_NAME(isPersistenceEnabled); + +/** + * By default the Firebase Database client will use up to 10MB of disk space to cache data. If the cache grows beyond + * this size, the client will start removing data that hasn't been recently used. If you find that your application + * caches too little or too much data, call this method to change the cache size. This property must be set before + * creating your first FIRDatabaseReference and only needs to be called once per application. + * + * Note that the specified cache size is only an approximation and the size on disk may temporarily exceed it + * at times. Cache sizes smaller than 1 MB or greater than 100 MB are not supported. + */ +@property (nonatomic) NSUInteger persistenceCacheSizeBytes; + +/** + * Sets the dispatch queue on which all events are raised. The default queue is the main queue. + * + * Note that this must be set before creating your first Database reference. + */ +@property (nonatomic, strong) dispatch_queue_t callbackQueue; + +/** + * Enables verbose diagnostic logging. + * + * @param enabled YES to enable logging, NO to disable. + */ ++ (void) setLoggingEnabled:(BOOL)enabled; + +/** Retrieve the Firebase Database SDK version. */ ++ (NSString *) sdkVersion; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDatabaseQuery.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDatabaseQuery.h new file mode 100644 index 0000000..ef56643 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDatabaseQuery.h @@ -0,0 +1,314 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FIRDataEventType.h" +#import "FIRDataSnapshot.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + * A FIRDatabaseHandle is used to identify listeners of Firebase Database events. These handles + * are returned by observeEventType: and and can later be passed to removeObserverWithHandle: to + * stop receiving updates. + */ +typedef NSUInteger FIRDatabaseHandle NS_SWIFT_NAME(DatabaseHandle); + +/** + * A FIRDatabaseQuery instance represents a query over the data at a particular location. + * + * You create one by calling one of the query methods (queryOrderedByChild:, queryStartingAtValue:, etc.) + * on a FIRDatabaseReference. The query methods can be chained to further specify the data you are interested in + * observing + */ +NS_SWIFT_NAME(DatabaseQuery) +@interface FIRDatabaseQuery : NSObject + + +#pragma mark - Attach observers to read data + +/** + * observeEventType:withBlock: is used to listen for data changes at a particular location. + * This is the primary way to read data from the Firebase Database. Your block will be triggered + * for the initial data and again whenever the data changes. + * + * Use removeObserverWithHandle: to stop receiving updates. + * + * @param eventType The type of event to listen for. + * @param block The block that should be called with initial data and updates. It is passed the data as a FIRDataSnapshot. + * @return A handle used to unregister this block later using removeObserverWithHandle: + */ +- (FIRDatabaseHandle)observeEventType:(FIRDataEventType)eventType withBlock:(void (^)(FIRDataSnapshot *snapshot))block; + + +/** + * observeEventType:andPreviousSiblingKeyWithBlock: is used to listen for data changes at a particular location. + * This is the primary way to read data from the Firebase Database. Your block will be triggered + * for the initial data and again whenever the data changes. In addition, for FIRDataEventTypeChildAdded, FIRDataEventTypeChildMoved, and + * FIRDataEventTypeChildChanged events, your block will be passed the key of the previous node by priority order. + * + * Use removeObserverWithHandle: to stop receiving updates. + * + * @param eventType The type of event to listen for. + * @param block The block that should be called with initial data and updates. It is passed the data as a FIRDataSnapshot + * and the previous child's key. + * @return A handle used to unregister this block later using removeObserverWithHandle: + */ +- (FIRDatabaseHandle)observeEventType:(FIRDataEventType)eventType andPreviousSiblingKeyWithBlock:(void (^)(FIRDataSnapshot *snapshot, NSString *__nullable prevKey))block; + + +/** + * observeEventType:withBlock: is used to listen for data changes at a particular location. + * This is the primary way to read data from the Firebase Database. Your block will be triggered + * for the initial data and again whenever the data changes. + * + * The cancelBlock will be called if you will no longer receive new events due to no longer having permission. + * + * Use removeObserverWithHandle: to stop receiving updates. + * + * @param eventType The type of event to listen for. + * @param block The block that should be called with initial data and updates. It is passed the data as a FIRDataSnapshot. + * @param cancelBlock The block that should be called if this client no longer has permission to receive these events + * @return A handle used to unregister this block later using removeObserverWithHandle: + */ +- (FIRDatabaseHandle)observeEventType:(FIRDataEventType)eventType withBlock:(void (^)(FIRDataSnapshot *snapshot))block withCancelBlock:(nullable void (^)(NSError* error))cancelBlock; + + +/** + * observeEventType:andPreviousSiblingKeyWithBlock: is used to listen for data changes at a particular location. + * This is the primary way to read data from the Firebase Database. Your block will be triggered + * for the initial data and again whenever the data changes. In addition, for FIRDataEventTypeChildAdded, FIRDataEventTypeChildMoved, and + * FIRDataEventTypeChildChanged events, your block will be passed the key of the previous node by priority order. + * + * The cancelBlock will be called if you will no longer receive new events due to no longer having permission. + * + * Use removeObserverWithHandle: to stop receiving updates. + * + * @param eventType The type of event to listen for. + * @param block The block that should be called with initial data and updates. It is passed the data as a FIRDataSnapshot + * and the previous child's key. + * @param cancelBlock The block that should be called if this client no longer has permission to receive these events + * @return A handle used to unregister this block later using removeObserverWithHandle: + */ +- (FIRDatabaseHandle)observeEventType:(FIRDataEventType)eventType andPreviousSiblingKeyWithBlock:(void (^)(FIRDataSnapshot *snapshot, NSString *__nullable prevKey))block withCancelBlock:(nullable void (^)(NSError* error))cancelBlock; + + +/** + * This is equivalent to observeEventType:withBlock:, except the block is immediately canceled after the initial data is returned. + * + * @param eventType The type of event to listen for. + * @param block The block that should be called. It is passed the data as a FIRDataSnapshot. + */ +- (void)observeSingleEventOfType:(FIRDataEventType)eventType withBlock:(void (^)(FIRDataSnapshot *snapshot))block; + + +/** + * This is equivalent to observeEventType:withBlock:, except the block is immediately canceled after the initial data is returned. In addition, for FIRDataEventTypeChildAdded, FIRDataEventTypeChildMoved, and + * FIRDataEventTypeChildChanged events, your block will be passed the key of the previous node by priority order. + * + * @param eventType The type of event to listen for. + * @param block The block that should be called. It is passed the data as a FIRDataSnapshot and the previous child's key. + */ +- (void)observeSingleEventOfType:(FIRDataEventType)eventType andPreviousSiblingKeyWithBlock:(void (^)(FIRDataSnapshot *snapshot, NSString *__nullable prevKey))block; + + +/** + * This is equivalent to observeEventType:withBlock:, except the block is immediately canceled after the initial data is returned. + * + * The cancelBlock will be called if you do not have permission to read data at this location. + * + * @param eventType The type of event to listen for. + * @param block The block that should be called. It is passed the data as a FIRDataSnapshot. + * @param cancelBlock The block that will be called if you don't have permission to access this data + */ +- (void)observeSingleEventOfType:(FIRDataEventType)eventType withBlock:(void (^)(FIRDataSnapshot *snapshot))block withCancelBlock:(nullable void (^)(NSError* error))cancelBlock; + + +/** + * This is equivalent to observeEventType:withBlock:, except the block is immediately canceled after the initial data is returned. In addition, for FIRDataEventTypeChildAdded, FIRDataEventTypeChildMoved, and + * FIRDataEventTypeChildChanged events, your block will be passed the key of the previous node by priority order. + * + * The cancelBlock will be called if you do not have permission to read data at this location. + * + * @param eventType The type of event to listen for. + * @param block The block that should be called. It is passed the data as a FIRDataSnapshot and the previous child's key. + * @param cancelBlock The block that will be called if you don't have permission to access this data + */ +- (void)observeSingleEventOfType:(FIRDataEventType)eventType andPreviousSiblingKeyWithBlock:(void (^)(FIRDataSnapshot *snapshot, NSString *__nullable prevKey))block withCancelBlock:(nullable void (^)(NSError* error))cancelBlock; + + +#pragma mark - Detaching observers + +/** + * Detach a block previously attached with observeEventType:withBlock:. + * + * @param handle The handle returned by the call to observeEventType:withBlock: which we are trying to remove. + */ +- (void) removeObserverWithHandle:(FIRDatabaseHandle)handle; + + +/** + * Detach all blocks previously attached to this Firebase Database location with observeEventType:withBlock: + */ +- (void) removeAllObservers; + +/** + * By calling `keepSynced:YES` on a location, the data for that location will automatically be downloaded and + * kept in sync, even when no listeners are attached for that location. Additionally, while a location is kept + * synced, it will not be evicted from the persistent disk cache. + * + * @param keepSynced Pass YES to keep this location synchronized, pass NO to stop synchronization. +*/ + - (void) keepSynced:(BOOL)keepSynced; + + +#pragma mark - Querying and limiting + +/** +* queryLimitedToFirst: is used to generate a reference to a limited view of the data at this location. +* The FIRDatabaseQuery instance returned by queryLimitedToFirst: will respond to at most the first limit child nodes. +* +* @param limit The upper bound, inclusive, for the number of child nodes to receive events for +* @return A FIRDatabaseQuery instance, limited to at most limit child nodes. +*/ +- (FIRDatabaseQuery *)queryLimitedToFirst:(NSUInteger)limit; + + +/** +* queryLimitedToLast: is used to generate a reference to a limited view of the data at this location. +* The FIRDatabaseQuery instance returned by queryLimitedToLast: will respond to at most the last limit child nodes. +* +* @param limit The upper bound, inclusive, for the number of child nodes to receive events for +* @return A FIRDatabaseQuery instance, limited to at most limit child nodes. +*/ +- (FIRDatabaseQuery *)queryLimitedToLast:(NSUInteger)limit; + +/** + * queryOrderBy: is used to generate a reference to a view of the data that's been sorted by the values of + * a particular child key. This method is intended to be used in combination with queryStartingAtValue:, + * queryEndingAtValue:, or queryEqualToValue:. + * + * @param key The child key to use in ordering data visible to the returned FIRDatabaseQuery + * @return A FIRDatabaseQuery instance, ordered by the values of the specified child key. +*/ +- (FIRDatabaseQuery *)queryOrderedByChild:(NSString *)key; + +/** + * queryOrderedByKey: is used to generate a reference to a view of the data that's been sorted by child key. + * This method is intended to be used in combination with queryStartingAtValue:, queryEndingAtValue:, + * or queryEqualToValue:. + * + * @return A FIRDatabaseQuery instance, ordered by child keys. + */ +- (FIRDatabaseQuery *) queryOrderedByKey; + +/** + * queryOrderedByValue: is used to generate a reference to a view of the data that's been sorted by child value. + * This method is intended to be used in combination with queryStartingAtValue:, queryEndingAtValue:, + * or queryEqualToValue:. + * + * @return A FIRDatabaseQuery instance, ordered by child value. + */ +- (FIRDatabaseQuery *) queryOrderedByValue; + +/** + * queryOrderedByPriority: is used to generate a reference to a view of the data that's been sorted by child + * priority. This method is intended to be used in combination with queryStartingAtValue:, queryEndingAtValue:, + * or queryEqualToValue:. + * + * @return A FIRDatabaseQuery instance, ordered by child priorities. + */ +- (FIRDatabaseQuery *) queryOrderedByPriority; + +/** + * queryStartingAtValue: is used to generate a reference to a limited view of the data at this location. + * The FIRDatabaseQuery instance returned by queryStartingAtValue: will respond to events at nodes with a value + * greater than or equal to startValue. + * + * @param startValue The lower bound, inclusive, for the value of data visible to the returned FIRDatabaseQuery + * @return A FIRDatabaseQuery instance, limited to data with value greater than or equal to startValue + */ +- (FIRDatabaseQuery *)queryStartingAtValue:(nullable id)startValue; + +/** + * queryStartingAtValue:childKey: is used to generate a reference to a limited view of the data at this location. + * The FIRDatabaseQuery instance returned by queryStartingAtValue:childKey will respond to events at nodes with a value + * greater than startValue, or equal to startValue and with a key greater than or equal to childKey. This is most + * useful when implementing pagination in a case where multiple nodes can match the startValue. + * + * @param startValue The lower bound, inclusive, for the value of data visible to the returned FIRDatabaseQuery + * @param childKey The lower bound, inclusive, for the key of nodes with value equal to startValue + * @return A FIRDatabaseQuery instance, limited to data with value greater than or equal to startValue + */ +- (FIRDatabaseQuery *)queryStartingAtValue:(nullable id)startValue childKey:(nullable NSString *)childKey; + +/** + * queryEndingAtValue: is used to generate a reference to a limited view of the data at this location. + * The FIRDatabaseQuery instance returned by queryEndingAtValue: will respond to events at nodes with a value + * less than or equal to endValue. + * + * @param endValue The upper bound, inclusive, for the value of data visible to the returned FIRDatabaseQuery + * @return A FIRDatabaseQuery instance, limited to data with value less than or equal to endValue + */ +- (FIRDatabaseQuery *)queryEndingAtValue:(nullable id)endValue; + +/** + * queryEndingAtValue:childKey: is used to generate a reference to a limited view of the data at this location. + * The FIRDatabaseQuery instance returned by queryEndingAtValue:childKey will respond to events at nodes with a value + * less than endValue, or equal to endValue and with a key less than or equal to childKey. This is most useful when + * implementing pagination in a case where multiple nodes can match the endValue. + * + * @param endValue The upper bound, inclusive, for the value of data visible to the returned FIRDatabaseQuery + * @param childKey The upper bound, inclusive, for the key of nodes with value equal to endValue + * @return A FIRDatabaseQuery instance, limited to data with value less than or equal to endValue + */ +- (FIRDatabaseQuery *)queryEndingAtValue:(nullable id)endValue childKey:(nullable NSString *)childKey; + +/** + * queryEqualToValue: is used to generate a reference to a limited view of the data at this location. + * The FIRDatabaseQuery instance returned by queryEqualToValue: will respond to events at nodes with a value equal + * to the supplied argument. + * + * @param value The value that the data returned by this FIRDatabaseQuery will have + * @return A FIRDatabaseQuery instance, limited to data with the supplied value. + */ +- (FIRDatabaseQuery *)queryEqualToValue:(nullable id)value; + +/** + * queryEqualToValue:childKey: is used to generate a reference to a limited view of the data at this location. + * The FIRDatabaseQuery instance returned by queryEqualToValue:childKey will respond to events at nodes with a value + * equal to the supplied argument and with their key equal to childKey. There will be at most one node that matches + * because child keys are unique. + * + * @param value The value that the data returned by this FIRDatabaseQuery will have + * @param childKey The name of nodes with the right value + * @return A FIRDatabaseQuery instance, limited to data with the supplied value and the key. + */ +- (FIRDatabaseQuery *)queryEqualToValue:(nullable id)value childKey:(nullable NSString *)childKey; + + +#pragma mark - Properties + +/** +* Gets a FIRDatabaseReference for the location of this query. +* +* @return A FIRDatabaseReference for the location of this query. +*/ +@property (nonatomic, readonly, strong) FIRDatabaseReference * ref; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDatabaseReference.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDatabaseReference.h new file mode 100644 index 0000000..b96585e --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDatabaseReference.h @@ -0,0 +1,718 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FIRDatabaseQuery.h" +#import "FIRDatabase.h" +#import "FIRDataSnapshot.h" +#import "FIRMutableData.h" +#import "FIRTransactionResult.h" +#import "FIRServerValue.h" + +NS_ASSUME_NONNULL_BEGIN + +@class FIRDatabase; + +/** + * A FIRDatabaseReference represents a particular location in your Firebase Database + * and can be used for reading or writing data to that Firebase Database location. + * + * This class is the starting point for all Firebase Database operations. After you've + * obtained your first FIRDatabaseReference via [FIRDatabase reference], you can use it + * to read data (ie. observeEventType:withBlock:), write data (ie. setValue:), and to + * create new FIRDatabaseReferences (ie. child:). + */ +NS_SWIFT_NAME(DatabaseReference) +@interface FIRDatabaseReference : FIRDatabaseQuery + + +#pragma mark - Getting references to children locations + +/** + * Gets a FIRDatabaseReference for the location at the specified relative path. + * The relative path can either be a simple child key (e.g. 'fred') or a + * deeper slash-separated path (e.g. 'fred/name/first'). + * + * @param pathString A relative path from this location to the desired child location. + * @return A FIRDatabaseReference for the specified relative path. + */ +- (FIRDatabaseReference *)child:(NSString *)pathString; + +/** + * childByAppendingPath: is deprecated, use child: instead. + */ +- (FIRDatabaseReference *)childByAppendingPath:(NSString *)pathString __deprecated_msg("use child: instead"); + +/** + * childByAutoId generates a new child location using a unique key and returns a + * FIRDatabaseReference to it. This is useful when the children of a Firebase Database + * location represent a list of items. + * + * The unique key generated by childByAutoId: is prefixed with a client-generated + * timestamp so that the resulting list will be chronologically-sorted. + * + * @return A FIRDatabaseReference for the generated location. + */ +- (FIRDatabaseReference *) childByAutoId; + + +#pragma mark - Writing data + +/** Write data to this Firebase Database location. + +This will overwrite any data at this location and all child locations. + +Data types that can be set are: + +- NSString -- @"Hello World" +- NSNumber (also includes boolean) -- @YES, @43, @4.333 +- NSDictionary -- @{@"key": @"value", @"nested": @{@"another": @"value"} } +- NSArray + +The effect of the write will be visible immediately and the corresponding +events will be triggered. Synchronization of the data to the Firebase Database +servers will also be started. + +Passing null for the new value is equivalent to calling remove:; +all data at this location or any child location will be deleted. + +Note that setValue: will remove any priority stored at this location, so if priority +is meant to be preserved, you should use setValue:andPriority: instead. + +@param value The value to be written. + */ +- (void) setValue:(nullable id)value; + + +/** + * The same as setValue: with a block that gets triggered after the write operation has + * been committed to the Firebase Database servers. + * + * @param value The value to be written. + * @param block The block to be called after the write has been committed to the Firebase Database servers. + */ +- (void) setValue:(nullable id)value withCompletionBlock:(void (^)(NSError *__nullable error, FIRDatabaseReference * ref))block; + + +/** + * The same as setValue: with an additional priority to be attached to the data being written. + * Priorities are used to order items. + * + * @param value The value to be written. + * @param priority The priority to be attached to that data. + */ +- (void) setValue:(nullable id)value andPriority:(nullable id)priority; + + +/** + * The same as setValue:andPriority: with a block that gets triggered after the write operation has + * been committed to the Firebase Database servers. + * + * @param value The value to be written. + * @param priority The priority to be attached to that data. + * @param block The block to be called after the write has been committed to the Firebase Database servers. + */ +- (void) setValue:(nullable id)value andPriority:(nullable id)priority withCompletionBlock:(void (^)(NSError *__nullable error, FIRDatabaseReference * ref))block; + + +/** + * Remove the data at this Firebase Database location. Any data at child locations will also be deleted. + * + * The effect of the delete will be visible immediately and the corresponding events + * will be triggered. Synchronization of the delete to the Firebase Database servers will + * also be started. + * + * remove: is equivalent to calling setValue:nil + */ +- (void) removeValue; + + +/** + * The same as remove: with a block that gets triggered after the remove operation has + * been committed to the Firebase Database servers. + * + * @param block The block to be called after the remove has been committed to the Firebase Database servers. + */ +- (void) removeValueWithCompletionBlock:(void (^)(NSError *__nullable error, FIRDatabaseReference * ref))block; + +/** + * Sets a priority for the data at this Firebase Database location. + * Priorities can be used to provide a custom ordering for the children at a location + * (if no priorities are specified, the children are ordered by key). + * + * You cannot set a priority on an empty location. For this reason + * setValue:andPriority: should be used when setting initial data with a specific priority + * and setPriority: should be used when updating the priority of existing data. + * + * Children are sorted based on this priority using the following rules: + * + * Children with no priority come first. + * Children with a number as their priority come next. They are sorted numerically by priority (small to large). + * Children with a string as their priority come last. They are sorted lexicographically by priority. + * Whenever two children have the same priority (including no priority), they are sorted by key. Numeric + * keys come first (sorted numerically), followed by the remaining keys (sorted lexicographically). + * + * Note that priorities are parsed and ordered as IEEE 754 double-precision floating-point numbers. + * Keys are always stored as strings and are treated as numbers only when they can be parsed as a + * 32-bit integer + * + * @param priority The priority to set at the specified location. + */ +- (void) setPriority:(nullable id)priority; + + +/** + * The same as setPriority: with a block that is called once the priority has + * been committed to the Firebase Database servers. + * + * @param priority The priority to set at the specified location. + * @param block The block that is triggered after the priority has been written on the servers. + */ +- (void) setPriority:(nullable id)priority withCompletionBlock:(void (^)(NSError *__nullable error, FIRDatabaseReference * ref))block; + +/** + * Updates the values at the specified paths in the dictionary without overwriting other + * keys at this location. + * + * @param values A dictionary of the keys to change and their new values + */ +- (void) updateChildValues:(NSDictionary *)values; + +/** + * The same as update: with a block that is called once the update has been committed to the + * Firebase Database servers + * + * @param values A dictionary of the keys to change and their new values + * @param block The block that is triggered after the update has been written on the Firebase Database servers + */ +- (void) updateChildValues:(NSDictionary *)values withCompletionBlock:(void (^)(NSError *__nullable error, FIRDatabaseReference * ref))block; + + +#pragma mark - Attaching observers to read data + +/** + * observeEventType:withBlock: is used to listen for data changes at a particular location. + * This is the primary way to read data from the Firebase Database. Your block will be triggered + * for the initial data and again whenever the data changes. + * + * Use removeObserverWithHandle: to stop receiving updates. + * @param eventType The type of event to listen for. + * @param block The block that should be called with initial data and updates. It is passed the data as a FIRDataSnapshot. + * @return A handle used to unregister this block later using removeObserverWithHandle: + */ +- (FIRDatabaseHandle)observeEventType:(FIRDataEventType)eventType withBlock:(void (^)(FIRDataSnapshot *snapshot))block; + + +/** + * observeEventType:andPreviousSiblingKeyWithBlock: is used to listen for data changes at a particular location. + * This is the primary way to read data from the Firebase Database. Your block will be triggered + * for the initial data and again whenever the data changes. In addition, for FIRDataEventTypeChildAdded, FIRDataEventTypeChildMoved, and + * FIRDataEventTypeChildChanged events, your block will be passed the key of the previous node by priority order. + * + * Use removeObserverWithHandle: to stop receiving updates. + * + * @param eventType The type of event to listen for. + * @param block The block that should be called with initial data and updates. It is passed the data as a FIRDataSnapshot + * and the previous child's key. + * @return A handle used to unregister this block later using removeObserverWithHandle: + */ +- (FIRDatabaseHandle)observeEventType:(FIRDataEventType)eventType andPreviousSiblingKeyWithBlock:(void (^)(FIRDataSnapshot *snapshot, NSString *__nullable prevKey))block; + + +/** + * observeEventType:withBlock: is used to listen for data changes at a particular location. + * This is the primary way to read data from the Firebase Database. Your block will be triggered + * for the initial data and again whenever the data changes. + * + * The cancelBlock will be called if you will no longer receive new events due to no longer having permission. + * + * Use removeObserverWithHandle: to stop receiving updates. + * + * @param eventType The type of event to listen for. + * @param block The block that should be called with initial data and updates. It is passed the data as a FIRDataSnapshot. + * @param cancelBlock The block that should be called if this client no longer has permission to receive these events + * @return A handle used to unregister this block later using removeObserverWithHandle: + */ +- (FIRDatabaseHandle)observeEventType:(FIRDataEventType)eventType withBlock:(void (^)(FIRDataSnapshot *snapshot))block withCancelBlock:(nullable void (^)(NSError* error))cancelBlock; + + +/** + * observeEventType:andPreviousSiblingKeyWithBlock: is used to listen for data changes at a particular location. + * This is the primary way to read data from the Firebase Database. Your block will be triggered + * for the initial data and again whenever the data changes. In addition, for FIRDataEventTypeChildAdded, FIRDataEventTypeChildMoved, and + * FIRDataEventTypeChildChanged events, your block will be passed the key of the previous node by priority order. + * + * The cancelBlock will be called if you will no longer receive new events due to no longer having permission. + * + * Use removeObserverWithHandle: to stop receiving updates. + * + * @param eventType The type of event to listen for. + * @param block The block that should be called with initial data and updates. It is passed the data as a FIRDataSnapshot + * and the previous child's key. + * @param cancelBlock The block that should be called if this client no longer has permission to receive these events + * @return A handle used to unregister this block later using removeObserverWithHandle: + */ +- (FIRDatabaseHandle)observeEventType:(FIRDataEventType)eventType andPreviousSiblingKeyWithBlock:(void (^)(FIRDataSnapshot *snapshot, NSString *__nullable prevKey))block withCancelBlock:(nullable void (^)(NSError* error))cancelBlock; + + +/** + * This is equivalent to observeEventType:withBlock:, except the block is immediately canceled after the initial data is returned. + * + * @param eventType The type of event to listen for. + * @param block The block that should be called. It is passed the data as a FIRDataSnapshot. + */ +- (void)observeSingleEventOfType:(FIRDataEventType)eventType withBlock:(void (^)(FIRDataSnapshot *snapshot))block; + + +/** + * This is equivalent to observeEventType:withBlock:, except the block is immediately canceled after the initial data is returned. In addition, for FIRDataEventTypeChildAdded, FIRDataEventTypeChildMoved, and + * FIRDataEventTypeChildChanged events, your block will be passed the key of the previous node by priority order. + * + * @param eventType The type of event to listen for. + * @param block The block that should be called. It is passed the data as a FIRDataSnapshot and the previous child's key. + */ +- (void)observeSingleEventOfType:(FIRDataEventType)eventType andPreviousSiblingKeyWithBlock:(void (^)(FIRDataSnapshot *snapshot, NSString *__nullable prevKey))block; + + +/** + * This is equivalent to observeEventType:withBlock:, except the block is immediately canceled after the initial data is returned. + * + * The cancelBlock will be called if you do not have permission to read data at this location. + * + * @param eventType The type of event to listen for. + * @param block The block that should be called. It is passed the data as a FIRDataSnapshot. + * @param cancelBlock The block that will be called if you don't have permission to access this data + */ +- (void)observeSingleEventOfType:(FIRDataEventType)eventType withBlock:(void (^)(FIRDataSnapshot *snapshot))block withCancelBlock:(nullable void (^)(NSError* error))cancelBlock; + + +/** + * This is equivalent to observeEventType:withBlock:, except the block is immediately canceled after the initial data is returned. In addition, for FIRDataEventTypeChildAdded, FIRDataEventTypeChildMoved, and + * FIRDataEventTypeChildChanged events, your block will be passed the key of the previous node by priority order. + * + * The cancelBlock will be called if you do not have permission to read data at this location. + * + * @param eventType The type of event to listen for. + * @param block The block that should be called. It is passed the data as a FIRDataSnapshot and the previous child's key. + * @param cancelBlock The block that will be called if you don't have permission to access this data + */ +- (void)observeSingleEventOfType:(FIRDataEventType)eventType andPreviousSiblingKeyWithBlock:(void (^)(FIRDataSnapshot *snapshot, NSString *__nullable prevKey))block withCancelBlock:(nullable void (^)(NSError* error))cancelBlock; + +#pragma mark - Detaching observers + +/** + * Detach a block previously attached with observeEventType:withBlock:. + * + * @param handle The handle returned by the call to observeEventType:withBlock: which we are trying to remove. + */ +- (void) removeObserverWithHandle:(FIRDatabaseHandle)handle; + +/** + * By calling `keepSynced:YES` on a location, the data for that location will automatically be downloaded and + * kept in sync, even when no listeners are attached for that location. Additionally, while a location is kept + * synced, it will not be evicted from the persistent disk cache. + * + * @param keepSynced Pass YES to keep this location synchronized, pass NO to stop synchronization. + */ +- (void) keepSynced:(BOOL)keepSynced; + + +/** + * Removes all observers at the current reference, but does not remove any observers at child references. + * removeAllObservers must be called again for each child reference where a listener was established to remove the observers. + */ +- (void) removeAllObservers; + +#pragma mark - Querying and limiting + + +/** + * queryLimitedToFirst: is used to generate a reference to a limited view of the data at this location. + * The FIRDatabaseQuery instance returned by queryLimitedToFirst: will respond to at most the first limit child nodes. + * + * @param limit The upper bound, inclusive, for the number of child nodes to receive events for + * @return A FIRDatabaseQuery instance, limited to at most limit child nodes. + */ +- (FIRDatabaseQuery *)queryLimitedToFirst:(NSUInteger)limit; + + +/** + * queryLimitedToLast: is used to generate a reference to a limited view of the data at this location. + * The FIRDatabaseQuery instance returned by queryLimitedToLast: will respond to at most the last limit child nodes. + * + * @param limit The upper bound, inclusive, for the number of child nodes to receive events for + * @return A FIRDatabaseQuery instance, limited to at most limit child nodes. + */ +- (FIRDatabaseQuery *)queryLimitedToLast:(NSUInteger)limit; + +/** + * queryOrderBy: is used to generate a reference to a view of the data that's been sorted by the values of + * a particular child key. This method is intended to be used in combination with queryStartingAtValue:, + * queryEndingAtValue:, or queryEqualToValue:. + * + * @param key The child key to use in ordering data visible to the returned FIRDatabaseQuery + * @return A FIRDatabaseQuery instance, ordered by the values of the specified child key. + */ +- (FIRDatabaseQuery *)queryOrderedByChild:(NSString *)key; + +/** + * queryOrderedByKey: is used to generate a reference to a view of the data that's been sorted by child key. + * This method is intended to be used in combination with queryStartingAtValue:, queryEndingAtValue:, + * or queryEqualToValue:. + * + * @return A FIRDatabaseQuery instance, ordered by child keys. + */ +- (FIRDatabaseQuery *) queryOrderedByKey; + +/** + * queryOrderedByPriority: is used to generate a reference to a view of the data that's been sorted by child + * priority. This method is intended to be used in combination with queryStartingAtValue:, queryEndingAtValue:, + * or queryEqualToValue:. + * + * @return A FIRDatabaseQuery instance, ordered by child priorities. + */ +- (FIRDatabaseQuery *) queryOrderedByPriority; + +/** + * queryStartingAtValue: is used to generate a reference to a limited view of the data at this location. + * The FIRDatabaseQuery instance returned by queryStartingAtValue: will respond to events at nodes with a value + * greater than or equal to startValue. + * + * @param startValue The lower bound, inclusive, for the value of data visible to the returned FIRDatabaseQuery + * @return A FIRDatabaseQuery instance, limited to data with value greater than or equal to startValue + */ +- (FIRDatabaseQuery *)queryStartingAtValue:(nullable id)startValue; + +/** + * queryStartingAtValue:childKey: is used to generate a reference to a limited view of the data at this location. + * The FIRDatabaseQuery instance returned by queryStartingAtValue:childKey will respond to events at nodes with a value + * greater than startValue, or equal to startValue and with a key greater than or equal to childKey. + * + * @param startValue The lower bound, inclusive, for the value of data visible to the returned FIRDatabaseQuery + * @param childKey The lower bound, inclusive, for the key of nodes with value equal to startValue + * @return A FIRDatabaseQuery instance, limited to data with value greater than or equal to startValue + */ +- (FIRDatabaseQuery *)queryStartingAtValue:(nullable id)startValue childKey:(nullable NSString *)childKey; + +/** + * queryEndingAtValue: is used to generate a reference to a limited view of the data at this location. + * The FIRDatabaseQuery instance returned by queryEndingAtValue: will respond to events at nodes with a value + * less than or equal to endValue. + * + * @param endValue The upper bound, inclusive, for the value of data visible to the returned FIRDatabaseQuery + * @return A FIRDatabaseQuery instance, limited to data with value less than or equal to endValue + */ +- (FIRDatabaseQuery *)queryEndingAtValue:(nullable id)endValue; + +/** + * queryEndingAtValue:childKey: is used to generate a reference to a limited view of the data at this location. + * The FIRDatabaseQuery instance returned by queryEndingAtValue:childKey will respond to events at nodes with a value + * less than endValue, or equal to endValue and with a key less than or equal to childKey. + * + * @param endValue The upper bound, inclusive, for the value of data visible to the returned FIRDatabaseQuery + * @param childKey The upper bound, inclusive, for the key of nodes with value equal to endValue + * @return A FIRDatabaseQuery instance, limited to data with value less than or equal to endValue + */ +- (FIRDatabaseQuery *)queryEndingAtValue:(nullable id)endValue childKey:(nullable NSString *)childKey; + +/** + * queryEqualToValue: is used to generate a reference to a limited view of the data at this location. + * The FIRDatabaseQuery instance returned by queryEqualToValue: will respond to events at nodes with a value equal + * to the supplied argument. + * + * @param value The value that the data returned by this FIRDatabaseQuery will have + * @return A FIRDatabaseQuery instance, limited to data with the supplied value. + */ +- (FIRDatabaseQuery *)queryEqualToValue:(nullable id)value; + +/** + * queryEqualToValue:childKey: is used to generate a reference to a limited view of the data at this location. + * The FIRDatabaseQuery instance returned by queryEqualToValue:childKey will respond to events at nodes with a value + * equal to the supplied argument with a key equal to childKey. There will be at most one node that matches because + * child keys are unique. + * + * @param value The value that the data returned by this FIRDatabaseQuery will have + * @param childKey The key of nodes with the right value + * @return A FIRDatabaseQuery instance, limited to data with the supplied value and the key. + */ +- (FIRDatabaseQuery *)queryEqualToValue:(nullable id)value childKey:(nullable NSString *)childKey; + +#pragma mark - Managing presence + +/** + * Ensure the data at this location is set to the specified value when + * the client is disconnected (due to closing the browser, navigating + * to a new page, or network issues). + * + * onDisconnectSetValue: is especially useful for implementing "presence" systems, + * where a value should be changed or cleared when a user disconnects + * so that he appears "offline" to other users. + * + * @param value The value to be set after the connection is lost. + */ +- (void) onDisconnectSetValue:(nullable id)value; + + +/** + * Ensure the data at this location is set to the specified value when + * the client is disconnected (due to closing the browser, navigating + * to a new page, or network issues). + * + * The completion block will be triggered when the operation has been successfully queued up on the Firebase Database servers + * + * @param value The value to be set after the connection is lost. + * @param block Block to be triggered when the operation has been queued up on the Firebase Database servers + */ +- (void) onDisconnectSetValue:(nullable id)value withCompletionBlock:(void (^)(NSError *__nullable error, FIRDatabaseReference * ref))block; + + +/** + * Ensure the data at this location is set to the specified value and priority when + * the client is disconnected (due to closing the browser, navigating + * to a new page, or network issues). + * + * @param value The value to be set after the connection is lost. + * @param priority The priority to be set after the connection is lost. + */ +- (void) onDisconnectSetValue:(nullable id)value andPriority:(id)priority; + + +/** + * Ensure the data at this location is set to the specified value and priority when + * the client is disconnected (due to closing the browser, navigating + * to a new page, or network issues). + * + * The completion block will be triggered when the operation has been successfully queued up on the Firebase Database servers + * + * @param value The value to be set after the connection is lost. + * @param priority The priority to be set after the connection is lost. + * @param block Block to be triggered when the operation has been queued up on the Firebase Database servers + */ +- (void) onDisconnectSetValue:(nullable id)value andPriority:(nullable id)priority withCompletionBlock:(void (^)(NSError *__nullable error, FIRDatabaseReference * ref))block; + + +/** + * Ensure the data at this location is removed when + * the client is disconnected (due to closing the app, navigating + * to a new page, or network issues). + * + * onDisconnectRemoveValue is especially useful for implementing "presence" systems. + */ +- (void) onDisconnectRemoveValue; + + +/** + * Ensure the data at this location is removed when + * the client is disconnected (due to closing the app, navigating + * to a new page, or network issues). + * + * onDisconnectRemoveValueWithCompletionBlock: is especially useful for implementing "presence" systems. + * + * @param block Block to be triggered when the operation has been queued up on the Firebase Database servers + */ +- (void) onDisconnectRemoveValueWithCompletionBlock:(void (^)(NSError *__nullable error, FIRDatabaseReference * ref))block; + + + +/** + * Ensure the data has the specified child values updated when + * the client is disconnected (due to closing the browser, navigating + * to a new page, or network issues). + * + * + * @param values A dictionary of child node keys and the values to set them to after the connection is lost. + */ +- (void) onDisconnectUpdateChildValues:(NSDictionary *)values; + + +/** + * Ensure the data has the specified child values updated when + * the client is disconnected (due to closing the browser, navigating + * to a new page, or network issues). + * + * + * @param values A dictionary of child node keys and the values to set them to after the connection is lost. + * @param block A block that will be called once the operation has been queued up on the Firebase Database servers + */ +- (void) onDisconnectUpdateChildValues:(NSDictionary *)values withCompletionBlock:(void (^)(NSError *__nullable error, FIRDatabaseReference * ref))block; + + +/** + * Cancel any operations that are set to run on disconnect. If you previously called onDisconnectSetValue:, + * onDisconnectRemoveValue:, or onDisconnectUpdateChildValues:, and no longer want the values updated when the + * connection is lost, call cancelDisconnectOperations: + */ +- (void) cancelDisconnectOperations; + + +/** + * Cancel any operations that are set to run on disconnect. If you previously called onDisconnectSetValue:, + * onDisconnectRemoveValue:, or onDisconnectUpdateChildValues:, and no longer want the values updated when the + * connection is lost, call cancelDisconnectOperations: + * + * @param block A block that will be triggered once the Firebase Database servers have acknowledged the cancel request. + */ +- (void) cancelDisconnectOperationsWithCompletionBlock:(nullable void (^)(NSError *__nullable error, FIRDatabaseReference * ref))block; + + +#pragma mark - Manual Connection Management + +/** + * Manually disconnect the Firebase Database client from the server and disable automatic reconnection. + * + * The Firebase Database client automatically maintains a persistent connection to the Firebase Database server, + * which will remain active indefinitely and reconnect when disconnected. However, the goOffline( ) + * and goOnline( ) methods may be used to manually control the client connection in cases where + * a persistent connection is undesirable. + * + * While offline, the Firebase Database client will no longer receive data updates from the server. However, + * all database operations performed locally will continue to immediately fire events, allowing + * your application to continue behaving normally. Additionally, each operation performed locally + * will automatically be queued and retried upon reconnection to the Firebase Database server. + * + * To reconnect to the Firebase Database server and begin receiving remote events, see goOnline( ). + * Once the connection is reestablished, the Firebase Database client will transmit the appropriate data + * and fire the appropriate events so that your client "catches up" automatically. + * + * Note: Invoking this method will impact all Firebase Database connections. + */ ++ (void) goOffline; + +/** + * Manually reestablish a connection to the Firebase Database server and enable automatic reconnection. + * + * The Firebase Database client automatically maintains a persistent connection to the Firebase Database server, + * which will remain active indefinitely and reconnect when disconnected. However, the goOffline( ) + * and goOnline( ) methods may be used to manually control the client connection in cases where + * a persistent connection is undesirable. + * + * This method should be used after invoking goOffline( ) to disable the active connection. + * Once reconnected, the Firebase Database client will automatically transmit the proper data and fire + * the appropriate events so that your client "catches up" automatically. + * + * To disconnect from the Firebase Database server, see goOffline( ). + * + * Note: Invoking this method will impact all Firebase Database connections. + */ ++ (void) goOnline; + + +#pragma mark - Transactions + +/** + * Performs an optimistic-concurrency transactional update to the data at this location. Your block will be called with a FIRMutableData + * instance that contains the current data at this location. Your block should update this data to the value you + * wish to write to this location, and then return an instance of FIRTransactionResult with the new data. + * + * If, when the operation reaches the server, it turns out that this client had stale data, your block will be run + * again with the latest data from the server. + * + * When your block is run, you may decide to abort the transaction by returning [FIRTransactionResult abort]. + * + * @param block This block receives the current data at this location and must return an instance of FIRTransactionResult + */ +- (void) runTransactionBlock:(FIRTransactionResult * (^) (FIRMutableData* currentData))block; + + +/** + * Performs an optimistic-concurrency transactional update to the data at this location. Your block will be called with a FIRMutableData + * instance that contains the current data at this location. Your block should update this data to the value you + * wish to write to this location, and then return an instance of FIRTransactionResult with the new data. + * + * If, when the operation reaches the server, it turns out that this client had stale data, your block will be run + * again with the latest data from the server. + * + * When your block is run, you may decide to abort the transaction by returning [FIRTransactionResult abort]. + * + * @param block This block receives the current data at this location and must return an instance of FIRTransactionResult + * @param completionBlock This block will be triggered once the transaction is complete, whether it was successful or not. It will indicate if there was an error, whether or not the data was committed, and what the current value of the data at this location is. + */ +- (void)runTransactionBlock:(FIRTransactionResult * (^) (FIRMutableData* currentData))block andCompletionBlock:(void (^) (NSError *__nullable error, BOOL committed, FIRDataSnapshot *__nullable snapshot))completionBlock; + + + +/** + * Performs an optimistic-concurrency transactional update to the data at this location. Your block will be called with a FIRMutableData + * instance that contains the current data at this location. Your block should update this data to the value you + * wish to write to this location, and then return an instance of FIRTransactionResult with the new data. + * + * If, when the operation reaches the server, it turns out that this client had stale data, your block will be run + * again with the latest data from the server. + * + * When your block is run, you may decide to abort the transaction by return [FIRTransactionResult abort]. + * + * Since your block may be run multiple times, this client could see several immediate states that don't exist on the server. You can suppress those immediate states until the server confirms the final state of the transaction. + * + * @param block This block receives the current data at this location and must return an instance of FIRTransactionResult + * @param completionBlock This block will be triggered once the transaction is complete, whether it was successful or not. It will indicate if there was an error, whether or not the data was committed, and what the current value of the data at this location is. + * @param localEvents Set this to NO to suppress events raised for intermediate states, and only get events based on the final state of the transaction. + */ +- (void)runTransactionBlock:(FIRTransactionResult * (^) (FIRMutableData* currentData))block andCompletionBlock:(nullable void (^) (NSError *__nullable error, BOOL committed, FIRDataSnapshot *__nullable snapshot))completionBlock withLocalEvents:(BOOL)localEvents; + + +#pragma mark - Retrieving String Representation + +/** + * Gets the absolute URL of this Firebase Database location. + * + * @return The absolute URL of the referenced Firebase Database location. + */ +- (NSString *) description; + +#pragma mark - Properties + +/** + * Gets a FIRDatabaseReference for the parent location. + * If this instance refers to the root of your Firebase Database, it has no parent, + * and therefore parent( ) will return null. + * + * @return A FIRDatabaseReference for the parent location. + */ +@property (strong, readonly, nonatomic, nullable) FIRDatabaseReference * parent; + + +/** + * Gets a FIRDatabaseReference for the root location + * + * @return A new FIRDatabaseReference to root location. + */ +@property (strong, readonly, nonatomic) FIRDatabaseReference * root; + + +/** + * Gets the last token in a Firebase Database location (e.g. 'fred' in https://SampleChat.firebaseIO-demo.com/users/fred) + * + * @return The key of the location this reference points to. + */ +@property (strong, readonly, nonatomic, nullable) NSString* key; + +/** + * Gets the URL for the Firebase Database location referenced by this FIRDatabaseReference. + * + * @return The url of the location this reference points to. + */ +@property (strong, readonly, nonatomic) NSString* URL; + +/** + * Gets the FIRDatabase instance associated with this reference. + * + * @return The FIRDatabase object for this reference. + */ +@property (strong, readonly, nonatomic) FIRDatabase *database; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRMutableData.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRMutableData.h new file mode 100644 index 0000000..7445d71 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRMutableData.h @@ -0,0 +1,129 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +NS_ASSUME_NONNULL_BEGIN + +/** + * A FIRMutableData instance is populated with data from a Firebase Database location. + * When you are using runTransactionBlock:, you will be given an instance containing the current + * data at that location. Your block will be responsible for updating that instance to the data + * you wish to save at that location, and then returning using [FIRTransactionResult successWithValue:]. + * + * To modify the data, set its value property to any of the native types support by Firebase Database: + * + * + NSNumber (includes BOOL) + * + NSDictionary + * + NSArray + * + NSString + * + nil / NSNull to remove the data + * + * Note that changes made to a child FIRMutableData instance will be visible to the parent. + */ +NS_SWIFT_NAME(MutableData) +@interface FIRMutableData : NSObject + + +#pragma mark - Inspecting and navigating the data + + +/** + * Returns boolean indicating whether this mutable data has children. + * + * @return YES if this data contains child nodes. + */ +- (BOOL) hasChildren; + + +/** + * Indicates whether this mutable data has a child at the given path. + * + * @param path A path string, consisting either of a single segment, like 'child', or multiple segments, 'a/deeper/child' + * @return YES if this data contains a child at the specified relative path + */ +- (BOOL) hasChildAtPath:(NSString *)path; + + +/** + * Used to obtain a FIRMutableData instance that encapsulates the data at the given relative path. + * Note that changes made to the child will be visible to the parent. + * + * @param path A path string, consisting either of a single segment, like 'child', or multiple segments, 'a/deeper/child' + * @return A FIRMutableData instance containing the data at the given path + */ +- (FIRMutableData *)childDataByAppendingPath:(NSString *)path; + + +#pragma mark - Properties + + +/** + * To modify the data contained by this instance of FIRMutableData, set this to any of the native types supported by Firebase Database: + * + * + NSNumber (includes BOOL) + * + NSDictionary + * + NSArray + * + NSString + * + nil / NSNull to remove the data + * + * Note that setting this value will override the priority at this location. + * + * @return The current data at this location as a native object + */ +@property (strong, nonatomic, nullable) id value; + + +/** + * Set this property to update the priority of the data at this location. Can be set to the following types: + * + * + NSNumber + * + NSString + * + nil / NSNull to remove the priority + * + * @return The priority of the data at this location + */ +@property (strong, nonatomic, nullable) id priority; + + +/** + * @return The number of child nodes at this location + */ +@property (readonly, nonatomic) NSUInteger childrenCount; + + +/** + * Used to iterate over the children at this location. You can use the native for .. in syntax: + * + * for (FIRMutableData* child in data.children) { + * ... + * } + * + * Note that this enumerator operates on an immutable copy of the child list. So, you can modify the instance + * during iteration, but the new additions will not be visible until you get a new enumerator. + */ +@property (readonly, nonatomic, strong) NSEnumerator* children; + + +/** + * @return The key name of this node, or nil if it is the top-most location + */ +@property (readonly, nonatomic, strong, nullable) NSString* key; + + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRServerValue.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRServerValue.h new file mode 100644 index 0000000..365590c --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRServerValue.h @@ -0,0 +1,33 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +NS_ASSUME_NONNULL_BEGIN + +/** + * Placeholder values you may write into Firebase Database as a value or priority + * that will automatically be populated by the Firebase Database server. + */ +NS_SWIFT_NAME(ServerValue) +@interface FIRServerValue : NSObject + +/** + * Placeholder value for the number of milliseconds since the Unix epoch + */ ++ (NSDictionary *) timestamp; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRTransactionResult.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRTransactionResult.h new file mode 100644 index 0000000..d356c5c --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FIRTransactionResult.h @@ -0,0 +1,46 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FIRMutableData.h" + +NS_ASSUME_NONNULL_BEGIN + +/** + * Used for runTransactionBlock:. An FIRTransactionResult instance is a container for the results of the transaction. + */ +NS_SWIFT_NAME(TransactionResult) +@interface FIRTransactionResult : NSObject + +/** + * Used for runTransactionBlock:. Indicates that the new value should be saved at this location + * + * @param value A FIRMutableData instance containing the new value to be set + * @return An FIRTransactionResult instance that can be used as a return value from the block given to runTransactionBlock: + */ ++ (FIRTransactionResult *)successWithValue:(FIRMutableData *)value; + + +/** + * Used for runTransactionBlock:. Indicates that the current transaction should no longer proceed. + * + * @return An FIRTransactionResult instance that can be used as a return value from the block given to runTransactionBlock: + */ ++ (FIRTransactionResult *) abort; + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FirebaseDatabase.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FirebaseDatabase.h new file mode 100644 index 0000000..e52f5d6 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Public/FirebaseDatabase.h @@ -0,0 +1,29 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef FirebaseDatabase_h +#define FirebaseDatabase_h + +#import "FIRDatabase.h" +#import "FIRDatabaseQuery.h" +#import "FIRDatabaseReference.h" +#import "FIRDataEventType.h" +#import "FIRDataSnapshot.h" +#import "FIRMutableData.h" +#import "FIRServerValue.h" +#import "FIRTransactionResult.h" + +#endif /* FirebaseDatabase_h */ diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Realtime/FConnection.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Realtime/FConnection.h new file mode 100644 index 0000000..ed4879a --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Realtime/FConnection.h @@ -0,0 +1,52 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FWebSocketConnection.h" +#import "FTypedefs.h" + +@protocol FConnectionDelegate; + +@interface FConnection : NSObject + +@property (nonatomic, weak) id delegate; + +- (id)initWith:(FRepoInfo *)aRepoInfo andDispatchQueue:(dispatch_queue_t)queue lastSessionID:(NSString *)lastSessionID; + +- (void)open; +- (void)close; +- (void)sendRequest:(NSDictionary *)dataMsg sensitive:(BOOL)sensitive; + +// FWebSocketDelegate delegate methods +- (void)onMessage:(FWebSocketConnection *)fwebSocket withMessage:(NSDictionary *)message; +- (void)onDisconnect:(FWebSocketConnection *)fwebSocket wasEverConnected:(BOOL)everConnected; + +@end + +typedef enum { + DISCONNECT_REASON_SERVER_RESET = 0, + DISCONNECT_REASON_OTHER = 1 +} FDisconnectReason; + +@protocol FConnectionDelegate + +- (void)onReady:(FConnection *)fconnection atTime:(NSNumber *)timestamp sessionID:(NSString *)sessionID; +- (void)onDataMessage:(FConnection *)fconnection withMessage:(NSDictionary *)message; +- (void)onDisconnect:(FConnection *)fconnection withReason:(FDisconnectReason)reason; +- (void)onKill:(FConnection *)fconnection withReason:(NSString *)reason; + +@end + diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Realtime/FConnection.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Realtime/FConnection.m new file mode 100644 index 0000000..08014f6 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Realtime/FConnection.m @@ -0,0 +1,212 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FConnection.h" +#import "FConstants.h" + +typedef enum { + REALTIME_STATE_CONNECTING = 0, + REALTIME_STATE_CONNECTED = 1, + REALTIME_STATE_DISCONNECTED = 2, +} FConnectionState; + +@interface FConnection () { + FConnectionState state; +} + +@property (nonatomic, strong) FWebSocketConnection* conn; +@property (nonatomic, strong) FRepoInfo* repoInfo; + +@end + +#pragma mark - +#pragma mark FConnection implementation + +@implementation FConnection + +@synthesize delegate; +@synthesize conn; +@synthesize repoInfo; + +#pragma mark - +#pragma mark Initializers + +- (id)initWith:(FRepoInfo *)aRepoInfo andDispatchQueue:(dispatch_queue_t)queue lastSessionID:(NSString *)lastSessionID{ + self = [super init]; + if (self) { + state = REALTIME_STATE_CONNECTING; + self.repoInfo = aRepoInfo; + self.conn = [[FWebSocketConnection alloc] initWith:self.repoInfo andQueue:queue lastSessionID:lastSessionID]; + self.conn.delegate = self; + } + return self; +} + +#pragma mark - +#pragma mark Public method implementation + +- (void)open { + FFLog(@"I-RDB082001", @"Calling open in FConnection"); + [self.conn open]; +} + +- (void) closeWithReason:(FDisconnectReason)reason { + if (state != REALTIME_STATE_DISCONNECTED) { + FFLog(@"I-RDB082002", @"Closing realtime connection."); + state = REALTIME_STATE_DISCONNECTED; + + if (self.conn) { + FFLog(@"I-RDB082003", @"Calling close again."); + [self.conn close]; + self.conn = nil; + } + + [self.delegate onDisconnect:self withReason:reason]; + } +} + +- (void) close { + [self closeWithReason:DISCONNECT_REASON_OTHER]; +} + +- (void) sendRequest:(NSDictionary *)dataMsg sensitive:(BOOL)sensitive { + // since this came from the persistent connection, wrap it in a data message envelope + NSDictionary* msg = @{ + kFWPRequestType: kFWPRequestTypeData, + kFWPRequestDataPayload: dataMsg + }; + [self sendData:msg sensitive:sensitive]; +} + +#pragma mark - +#pragma mark Helpers + + +- (void) sendData:(NSDictionary *)data sensitive:(BOOL)sensitive { + if (state != REALTIME_STATE_CONNECTED) { + @throw [[NSException alloc] initWithName:@"InvalidConnectionState" reason:@"Tried to send data on an unconnected FConnection" userInfo:nil]; + } else { + if (sensitive) { + FFLog(@"I-RDB082004", @"Sending data (contents hidden)"); + } else { + FFLog(@"I-RDB082005", @"Sending: %@", data); + } + [self.conn send:data]; + } +} + +#pragma mark - +#pragma mark FWebSocketConnectinDelegate implementation + +// Corresponds to onConnectionLost in JS +- (void)onDisconnect:(FWebSocketConnection *)fwebSocket wasEverConnected:(BOOL)everConnected { + + self.conn = nil; + if (!everConnected && state == REALTIME_STATE_CONNECTING) { + FFLog(@"I-RDB082006", @"Realtime connection failed."); + + // Since we failed to connect at all, clear any cached entry for this namespace in case the machine went away + [self.repoInfo clearInternalHostCache]; + } else if (state == REALTIME_STATE_CONNECTED) { + FFLog(@"I-RDB082007", @"Realtime connection lost."); + } + + [self close]; +} + +// Corresponds to onMessageReceived in JS +- (void)onMessage:(FWebSocketConnection *)fwebSocket withMessage:(NSDictionary *)message { + NSString* rawMessageType = [message objectForKey:kFWPAsyncServerEnvelopeType]; + if(rawMessageType != nil) { + if([rawMessageType isEqualToString:kFWPAsyncServerDataMessage]) { + [self onDataMessage:[message objectForKey:kFWPAsyncServerEnvelopeData]]; + } + else if ([rawMessageType isEqualToString:kFWPAsyncServerControlMessage]) { + [self onControl:[message objectForKey:kFWPAsyncServerEnvelopeData]]; + } + else { + FFLog(@"I-RDB082008", @"Unrecognized server packet type: %@", rawMessageType); + } + } + else { + FFLog(@"I-RDB082009", @"Unrecognized raw server packet received: %@", message); + } +} + +- (void) onDataMessage:(NSDictionary *)message { + // we don't do anything with data messages, just kick them up a level + FFLog(@"I-RDB082010", @"Got data message: %@", message); + [self.delegate onDataMessage:self withMessage:message]; +} + +- (void) onControl:(NSDictionary *)message { + FFLog(@"I-RDB082011", @"Got control message: %@", message); + NSString* type = [message objectForKey:kFWPAsyncServerControlMessageType]; + if([type isEqualToString:kFWPAsyncServerControlMessageShutdown]) { + NSString* reason = [message objectForKey:kFWPAsyncServerControlMessageData]; + [self onConnectionShutdownWithReason:reason]; + } + else if ([type isEqualToString:kFWPAsyncServerControlMessageReset]) { + NSString* host = [message objectForKey:kFWPAsyncServerControlMessageData]; + [self onReset:host]; + } + else if ([type isEqualToString:kFWPAsyncServerHello]) { + NSDictionary* handshakeData = [message objectForKey:kFWPAsyncServerControlMessageData]; + [self onHandshake:handshakeData]; + } + else { + FFLog(@"I-RDB082012", @"Unknown control message returned from server: %@", message); + } +} + +- (void) onConnectionShutdownWithReason:(NSString *)reason { + FFLog(@"I-RDB082013", @"Connection shutdown command received. Shutting down..."); + + [self.delegate onKill:self withReason:reason]; + [self close]; +} + +- (void) onHandshake:(NSDictionary *)handshake { + NSNumber* timestamp = [handshake objectForKey:kFWPAsyncServerHelloTimestamp]; +// NSString* version = [handshake objectForKey:kFWPAsyncServerHelloVersion]; + NSString* host = [handshake objectForKey:kFWPAsyncServerHelloConnectedHost]; + NSString* sessionID = [handshake objectForKey:kFWPAsyncServerHelloSession]; + + self.repoInfo.internalHost = host; + + if (state == REALTIME_STATE_CONNECTING) { + [self.conn start]; + [self onConnection:self.conn readyAtTime:timestamp sessionID:sessionID]; + } +} + +- (void) onConnection:(FWebSocketConnection *)conn readyAtTime:(NSNumber *)timestamp sessionID:(NSString *)sessionID { + FFLog(@"I-RDB082014", @"Realtime connection established"); + state = REALTIME_STATE_CONNECTED; + + [self.delegate onReady:self atTime:timestamp sessionID:sessionID]; +} + +- (void) onReset:(NSString *)host { + FFLog(@"I-RDB082015", @"Got a reset; killing connection to: %@; Updating internalHost to: %@", repoInfo.internalHost, host); + self.repoInfo.internalHost = host; + + // Explicitly close the connection with SERVER_RESET so calling code knows to reconnect immediately. + [self closeWithReason:DISCONNECT_REASON_SERVER_RESET]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Realtime/FWebSocketConnection.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Realtime/FWebSocketConnection.h new file mode 100644 index 0000000..6a14d47 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Realtime/FWebSocketConnection.h @@ -0,0 +1,46 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FSRWebSocket.h" +#import "FUtilities.h" + +@protocol FWebSocketDelegate; + +@interface FWebSocketConnection : NSObject + +@property (nonatomic, weak) id delegate; + +- (id)initWith:(FRepoInfo *)repoInfo andQueue:(dispatch_queue_t)queue lastSessionID:(NSString *)lastSessionID; + +- (void) open; +- (void) close; +- (void) start; +- (void) send:(NSDictionary *)dictionary; + +- (void)webSocket:(FSRWebSocket *)webSocket didReceiveMessage:(id)message; +- (void)webSocketDidOpen:(FSRWebSocket *)webSocket; +- (void)webSocket:(FSRWebSocket *)webSocket didFailWithError:(NSError *)error; +- (void)webSocket:(FSRWebSocket *)webSocket didCloseWithCode:(NSInteger)code reason:(NSString *)reason wasClean:(BOOL)wasClean; + +@end + +@protocol FWebSocketDelegate + +- (void)onMessage:(FWebSocketConnection *)fwebSocket withMessage:(NSDictionary *)message; +- (void)onDisconnect:(FWebSocketConnection *)fwebSocket wasEverConnected:(BOOL)everConnected; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Realtime/FWebSocketConnection.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Realtime/FWebSocketConnection.m new file mode 100644 index 0000000..49d6bd8 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Realtime/FWebSocketConnection.m @@ -0,0 +1,308 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// Targetted compilation is ONLY for testing. UIKit is weak-linked in actual release build. + +#import + +#import +#import "FWebSocketConnection.h" +#import "FConstants.h" +#import "FIRDatabaseReference.h" +#import "FStringUtilities.h" +#import "FIRDatabase_Private.h" + +#if TARGET_OS_IOS || TARGET_OS_TV +#import +#endif + +@interface FWebSocketConnection () { + NSMutableString* frame; + BOOL everConnected; + BOOL isClosed; + NSTimer* keepAlive; +} + +- (void) shutdown; +- (void) onClosed; +- (void) closeIfNeverConnected; + +@property (nonatomic, strong) FSRWebSocket* webSocket; +@property (nonatomic, strong) NSNumber* connectionId; +@property (nonatomic, readwrite) int totalFrames; +@property (nonatomic, readonly) BOOL buffering; +@property (nonatomic, readonly) NSString* userAgent; +@property (nonatomic) dispatch_queue_t dispatchQueue; + +- (void)nop:(NSTimer *)timer; + +@end + +@implementation FWebSocketConnection + +@synthesize delegate; +@synthesize webSocket; +@synthesize connectionId; + +- (id)initWith:(FRepoInfo *)repoInfo andQueue:(dispatch_queue_t)queue lastSessionID:(NSString *)lastSessionID { + self = [super init]; + if (self) { + everConnected = NO; + isClosed = NO; + self.connectionId = [FUtilities LUIDGenerator]; + self.totalFrames = 0; + self.dispatchQueue = queue; + frame = nil; + + NSString* connectionUrl = [repoInfo connectionURLWithLastSessionID:lastSessionID]; + NSString* ua = [self userAgent]; + FFLog(@"I-RDB083001", @"(wsc:%@) Connecting to: %@ as %@", self.connectionId, connectionUrl, ua); + + NSURLRequest* req = [[NSURLRequest alloc] initWithURL:[[NSURL alloc] initWithString:connectionUrl]]; + self.webSocket = [[FSRWebSocket alloc] initWithURLRequest:req queue:queue andUserAgent:ua]; + [self.webSocket setDelegateDispatchQueue:queue]; + self.webSocket.delegate = self; + } + return self; +} + +- (NSString *) userAgent { + NSString* systemVersion; + NSString* deviceName; + BOOL hasUiDeviceClass = NO; + + // Targetted compilation is ONLY for testing. UIKit is weak-linked in actual release build. + #if TARGET_OS_IOS || TARGET_OS_TV + Class uiDeviceClass = NSClassFromString(@"UIDevice"); + if (uiDeviceClass) { + systemVersion = [uiDeviceClass currentDevice].systemVersion; + deviceName = [uiDeviceClass currentDevice].model; + hasUiDeviceClass = YES; + } + #endif + + if (!hasUiDeviceClass) { + NSDictionary *systemVersionDictionary = [NSDictionary dictionaryWithContentsOfFile:@"/System/Library/CoreServices/SystemVersion.plist"]; + systemVersion = [systemVersionDictionary objectForKey:@"ProductVersion"]; + deviceName = [systemVersionDictionary objectForKey:@"ProductName"]; + } + + NSString* bundleIdentifier = [[NSBundle mainBundle] bundleIdentifier]; + + // Sanitize '/'s in deviceName and bundleIdentifier for stats + deviceName = [FStringUtilities sanitizedForUserAgent:deviceName]; + bundleIdentifier = [FStringUtilities sanitizedForUserAgent:bundleIdentifier]; + + // Firebase/5/__//{device model / os (Mac OS X, iPhone, etc.}_ + NSString* ua = [NSString stringWithFormat:@"Firebase/%@/%@/%@/%@_%@", kWebsocketProtocolVersion, [FIRDatabase buildVersion], systemVersion, deviceName, bundleIdentifier]; + return ua; +} + +- (BOOL) buffering { + return frame != nil; +} + +#pragma mark - +#pragma mark Public FWebSocketConnection methods + +- (void) open { + FFLog(@"I-RDB083002", @"(wsc:%@) FWebSocketConnection open.", self.connectionId); + assert(delegate); + everConnected = NO; + // TODO Assert url + [self.webSocket open]; + dispatch_time_t when = dispatch_time(DISPATCH_TIME_NOW, kWebsocketConnectTimeout * NSEC_PER_SEC); + dispatch_after(when, self.dispatchQueue, ^{ + [self closeIfNeverConnected]; + }); +} + +- (void) close { + FFLog(@"I-RDB083003", @"(wsc:%@) FWebSocketConnection is being closed.", self.connectionId); + isClosed = YES; + [self.webSocket close]; +} + +- (void) start { + // Start is a no-op for websockets. +} + +- (void) send:(NSDictionary *)dictionary { + + [self resetKeepAlive]; + + NSData* jsonData = [NSJSONSerialization dataWithJSONObject:dictionary + options:kNilOptions error:nil]; + + NSString* data = [[NSString alloc] initWithData:jsonData + encoding:NSUTF8StringEncoding]; + + NSArray* dataSegs = [FUtilities splitString:data intoMaxSize:kWebsocketMaxFrameSize]; + + // First send the header so the server knows how many segments are forthcoming + if (dataSegs.count > 1) { + [self.webSocket send:[NSString stringWithFormat:@"%u", (unsigned int)dataSegs.count]]; + } + + // Then, actually send the segments. + for(NSString * segment in dataSegs) { + [self.webSocket send:segment]; + } +} + +- (void) nop:(NSTimer *)timer { + if (!isClosed) { + FFLog(@"I-RDB083004", @"(wsc:%@) nop", self.connectionId); + [self.webSocket send:@"0"]; + } + else { + FFLog(@"I-RDB083005", @"(wsc:%@) No more websocket; invalidating nop timer.", self.connectionId); + [timer invalidate]; + } +} + +- (void) handleNewFrameCount:(int) numFrames { + self.totalFrames = numFrames; + frame = [[NSMutableString alloc] initWithString:@""]; + FFLog(@"I-RDB083006", @"(wsc:%@) handleNewFrameCount: %d", self.connectionId, self.totalFrames); +} + +- (NSString *) extractFrameCount:(NSString *) message { + if ([message length] <= 4) { + int frameCount = [message intValue]; + if (frameCount > 0) { + [self handleNewFrameCount:frameCount]; + return nil; + } + } + [self handleNewFrameCount:1]; + return message; +} + +- (void) appendFrame:(NSString *) message { + [frame appendString:message]; + self.totalFrames = self.totalFrames - 1; + + if (self.totalFrames == 0) { + // Call delegate and pass an immutable version of the frame + NSDictionary* json = [NSJSONSerialization JSONObjectWithData:[frame dataUsingEncoding:NSUTF8StringEncoding] + options:kNilOptions + error:nil]; + frame = nil; + FFLog(@"I-RDB083007", @"(wsc:%@) handleIncomingFrame sending complete frame: %d", self.connectionId, self.totalFrames); + + @autoreleasepool { + [self.delegate onMessage:self withMessage:json]; + } + } +} + +- (void) handleIncomingFrame:(NSString *) message { + [self resetKeepAlive]; + if (self.buffering) { + [self appendFrame:message]; + } else { + NSString *remaining = [self extractFrameCount:message]; + if (remaining) { + [self appendFrame:remaining]; + } + } +} + +#pragma mark - +#pragma mark SRWebSocketDelegate implementation +- (void)webSocket:(FSRWebSocket *)webSocket didReceiveMessage:(id)message +{ + [self handleIncomingFrame:message]; +} + +- (void)webSocketDidOpen:(FSRWebSocket *)webSocket +{ + FFLog(@"I-RDB083008", @"(wsc:%@) webSocketDidOpen", self.connectionId); + + everConnected = YES; + + dispatch_async(dispatch_get_main_queue(), ^{ + self->keepAlive = [NSTimer scheduledTimerWithTimeInterval:kWebsocketKeepaliveInterval + target:self + selector:@selector(nop:) + userInfo:nil + repeats:YES]; + FFLog(@"I-RDB083009", @"(wsc:%@) nop timer kicked off", self.connectionId); + }); +} + +- (void)webSocket:(FSRWebSocket *)webSocket didFailWithError:(NSError *)error +{ + FFLog(@"I-RDB083010", @"(wsc:%@) didFailWithError didFailWithError: %@", self.connectionId, [error description]); + [self onClosed]; +} + +- (void)webSocket:(FSRWebSocket *)webSocket didCloseWithCode:(NSInteger)code reason:(NSString *)reason wasClean:(BOOL)wasClean +{ + FFLog(@"I-RDB083011", @"(wsc:%@) didCloseWithCode: %ld %@", self.connectionId, (long)code, reason); + [self onClosed]; +} + +#pragma mark - +#pragma mark Private methods + +/** + * Note that the close / onClosed / shutdown cycle here is a little different from the javascript client. + * In order to properly handle deallocation, no close-related action is taken at a higher level until we + * have received notification from the websocket itself that it is closed. Otherwise, we end up deallocating + * this class and the FConnection class before the websocket has a change to call some of its delegate methods. + * So, since close is the external close handler, we just set a flag saying not to call our own delegate method + * and close the websocket. That will trigger a callback into this class that can then do things like clean up + * the keepalive timer. + */ + +- (void) closeIfNeverConnected { + if (!everConnected) { + FFLog(@"I-RDB083012", @"(wsc:%@) Websocket timed out on connect", self.connectionId); + [self.webSocket close]; + } +} + +- (void) shutdown { + isClosed = YES; + + // Call delegate methods + [self.delegate onDisconnect:self wasEverConnected:everConnected]; + +} + +- (void) onClosed { + if (!isClosed) { + FFLog(@"I-RDB083013", @"Websocket is closing itself"); + [self shutdown]; + } + self.webSocket = nil; + if (keepAlive.isValid) { + [keepAlive invalidate]; + } +} + +- (void) resetKeepAlive { + NSDate* newTime = [NSDate dateWithTimeIntervalSinceNow:kWebsocketKeepaliveInterval]; + // Calling setFireDate is actually kinda' expensive, so wait at least 5 seconds before updating it. + if ([newTime timeIntervalSinceDate:keepAlive.fireDate] > 5) { + FFLog(@"I-RDB083014", @"(wsc:%@) resetting keepalive, to %@ ; old: %@", self.connectionId, newTime, [keepAlive fireDate]); + [keepAlive setFireDate:newTime]; + } +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FChildrenNode.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FChildrenNode.h new file mode 100644 index 0000000..9eebdae --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FChildrenNode.h @@ -0,0 +1,40 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FNode.h" +#import "FTypedefs.h" +#import "FTypedefs_Private.h" +#import "FImmutableSortedDictionary.h" + +@class FNamedNode; + +@interface FChildrenNode : NSObject + +- (id)initWithChildren:(FImmutableSortedDictionary *)someChildren; +- (id)initWithPriority:(id)aPriority children:(FImmutableSortedDictionary *)someChildren; + +// FChildrenNode specific methods + +- (void) enumerateChildrenAndPriorityUsingBlock:(void (^)(NSString *, id, BOOL *))block; + +- (FNamedNode *) firstChild; +- (FNamedNode *) lastChild; + +@property (nonatomic, strong) FImmutableSortedDictionary* children; +@property (nonatomic, strong) id priorityNode; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FChildrenNode.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FChildrenNode.m new file mode 100644 index 0000000..d53ae80 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FChildrenNode.m @@ -0,0 +1,385 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FChildrenNode.h" +#import "FEmptyNode.h" +#import "FConstants.h" +#import "FStringUtilities.h" +#import "FUtilities.h" +#import "FNamedNode.h" +#import "FMaxNode.h" +#import "FTransformedEnumerator.h" +#import "FSnapshotUtilities.h" +#import "FTransformedEnumerator.h" +#import "FPriorityIndex.h" +#import "FUtilities.h" + +@interface FChildrenNode () +@property (nonatomic, strong) NSString *lazyHash; +@end + +@implementation FChildrenNode + +// Note: The only reason we allow nil priority is to for EmptyNode, since we can't use +// EmptyNode as the priority of EmptyNode. We might want to consider making EmptyNode its own +// class instead of an empty ChildrenNode. + +- (id)init { + return [self initWithPriority:nil children:[FImmutableSortedDictionary dictionaryWithComparator:[FUtilities keyComparator]]]; +} + +- (id)initWithChildren:(FImmutableSortedDictionary *)someChildren { + return [self initWithPriority:nil children:someChildren]; +} + +- (id)initWithPriority:(id)aPriority children:(FImmutableSortedDictionary *)someChildren { + if (someChildren.isEmpty && aPriority != nil && ![aPriority isEmpty]) { + [NSException raise:NSInvalidArgumentException format:@"Can't create empty node with priority!"]; + } + self = [super init]; + if(self) { + self.children = someChildren; + self.priorityNode = aPriority; + } + return self; +} + +- (NSString *) description { + return [[self valForExport:YES] description]; +} + +#pragma mark - +#pragma mark FNode methods + + +- (BOOL) isLeafNode { + return NO; +} + +- (id) getPriority { + if (self.priorityNode) { + return self.priorityNode; + } else { + return [FEmptyNode emptyNode]; + } + +} + +- (id) updatePriority:(id)aPriority { + if ([self.children isEmpty]) { + return [FEmptyNode emptyNode]; + } else { + return [[FChildrenNode alloc] initWithPriority:aPriority children:self.children]; + } +} + +- (id) getImmediateChild:(NSString *) childName { + if ([childName isEqualToString:@".priority"]) { + return [self getPriority]; + } else { + id child = [self.children objectForKey:childName]; + return (child == nil) ? [FEmptyNode emptyNode] : child; + } +} + +- (id) getChild:(FPath *)path { + NSString* front = [path getFront]; + if(front == nil) { + return self; + } + else { + return [[self getImmediateChild:front] getChild:[path popFront]]; + } +} + +- (BOOL)hasChild:(NSString *)childName { + return ![self getImmediateChild:childName].isEmpty; +} + + +- (id) updateImmediateChild:(NSString *)childName withNewChild:(id)newChildNode { + NSAssert(newChildNode != nil, @"Should always be passing nodes."); + + if ([childName isEqualToString:@".priority"]) { + return [self updatePriority:newChildNode]; + } else { + FImmutableSortedDictionary *newChildren; + if (newChildNode.isEmpty) { + newChildren = [self.children removeObjectForKey:childName]; + } else { + newChildren = [self.children setObject:newChildNode forKey:childName]; + } + if (newChildren.isEmpty) { + return [FEmptyNode emptyNode]; + } else { + return [[FChildrenNode alloc] initWithPriority:self.getPriority children:newChildren]; + } + } +} + +- (id) updateChild:(FPath *)path withNewChild:(id)newChildNode { + NSString* front = [path getFront]; + if(front == nil) { + return newChildNode; + } else { + NSAssert(![front isEqualToString:@".priority"] || path.length == 1, @".priority must be the last token in a path."); + id newImmediateChild = [[self getImmediateChild:front] updateChild:[path popFront] withNewChild:newChildNode]; + return [self updateImmediateChild:front withNewChild:newImmediateChild]; + } +} + +- (BOOL) isEmpty { + return [self.children isEmpty]; +} + +- (int) numChildren { + return [self.children count]; +} + +- (id) val { + return [self valForExport:NO]; +} + +- (id) valForExport:(BOOL)exp { + if([self isEmpty]) { + return [NSNull null]; + } + + __block int numKeys = 0; + __block NSInteger maxKey = 0; + __block BOOL allIntegerKeys = YES; + + NSMutableDictionary* obj = [[NSMutableDictionary alloc] initWithCapacity:[self.children count]]; + [self enumerateChildrenUsingBlock:^(NSString *key, id childNode, BOOL *stop) { + [obj setObject:[childNode valForExport:exp] forKey:key]; + + numKeys++; + + // If we already found a string key, don't bother with any of this + if (!allIntegerKeys) { + return; + } + + // Treat leading zeroes that are not exactly "0" as strings + NSString* firstChar = [key substringWithRange:NSMakeRange(0, 1)]; + if ([firstChar isEqualToString:@"0"] && [key length] > 1) { + allIntegerKeys = NO; + } else { + NSNumber *keyAsNum = [FUtilities intForString:key]; + if (keyAsNum != nil) { + NSInteger keyAsInt = [keyAsNum integerValue]; + if (keyAsInt > maxKey) { + maxKey = keyAsInt; + } + } else { + allIntegerKeys = NO; + } + } + }]; + + if (!exp && allIntegerKeys && maxKey < 2 * numKeys) { + // convert to an array + NSMutableArray* array = [[NSMutableArray alloc] initWithCapacity:maxKey + 1]; + for (int i = 0; i <= maxKey; ++i) { + NSString* keyString = [NSString stringWithFormat:@"%i", i]; + id child = obj[keyString]; + if (child != nil) { + [array addObject:child]; + } else { + [array addObject:[NSNull null]]; + } + } + return array; + } else { + + if(exp && [self getPriority] != nil && !self.getPriority.isEmpty) { + obj[kPayloadPriority] = [self.getPriority val]; + } + + return obj; + } +} + +- (NSString *) dataHash { + if (self.lazyHash == nil) { + NSMutableString *toHash = [[NSMutableString alloc] init]; + + if (!self.getPriority.isEmpty) { + [toHash appendString:@"priority:"]; + [FSnapshotUtilities appendHashRepresentationForLeafNode:(FLeafNode *)self.getPriority + toString:toHash + hashVersion:FDataHashVersionV1]; + [toHash appendString:@":"]; + } + + __block BOOL sawPriority = NO; + [self enumerateChildrenUsingBlock:^(NSString *key, id node, BOOL *stop) { + sawPriority = sawPriority || [[node getPriority] isEmpty]; + *stop = sawPriority; + }]; + if (sawPriority) { + NSMutableArray *array = [NSMutableArray array]; + [self enumerateChildrenUsingBlock:^(NSString *key, id node, BOOL *stop) { + FNamedNode *namedNode = [[FNamedNode alloc] initWithName:key andNode:node]; + [array addObject:namedNode]; + }]; + [array sortUsingComparator:^NSComparisonResult(FNamedNode *namedNode1, FNamedNode *namedNode2) { + return [[FPriorityIndex priorityIndex] compareNamedNode:namedNode1 toNamedNode:namedNode2]; + }]; + [array enumerateObjectsUsingBlock:^(FNamedNode *namedNode, NSUInteger idx, BOOL *stop) { + NSString *childHash = [namedNode.node dataHash]; + if (![childHash isEqualToString:@""]) { + [toHash appendFormat:@":%@:%@", namedNode.name, childHash]; + } + }]; + } else { + [self enumerateChildrenUsingBlock:^(NSString *key, id node, BOOL *stop) { + NSString *childHash = [node dataHash]; + if (![childHash isEqualToString:@""]) { + [toHash appendFormat:@":%@:%@", key, childHash]; + } + }]; + } + self.lazyHash = [toHash isEqualToString:@""] ? @"" : [FStringUtilities base64EncodedSha1:toHash]; + } + return self.lazyHash; +} + +- (NSComparisonResult)compare:(id )other { + // children nodes come last, unless this is actually an empty node, then we come first. + if (self.isEmpty) { + if (other.isEmpty) { + return NSOrderedSame; + } else { + return NSOrderedAscending; + } + } else if (other.isLeafNode || other.isEmpty) { + return NSOrderedDescending; + } else if (other == [FMaxNode maxNode]) { + return NSOrderedAscending; + } else { + // Must be another node with children. + return NSOrderedSame; + } +} + +- (BOOL)isEqual:(id )other { + if (other == self) { + return YES; + } else if (other == nil) { + return NO; + } else if (other.isLeafNode) { + return NO; + } else if (self.isEmpty && [other isEmpty]) { + // Empty nodes do not have priority + return YES; + } else { + FChildrenNode *otherChildrenNode = other; + if (![self.getPriority isEqual:other.getPriority]) { + return NO; + } else if (self.children.count == otherChildrenNode.children.count) { + __block BOOL equal = YES; + [self enumerateChildrenUsingBlock:^(NSString *key, id node, BOOL *stop) { + id child = [otherChildrenNode getImmediateChild:key]; + if (![child isEqual:node]) { + equal = NO; + *stop = YES; + } + }]; + return equal; + } else { + return NO; + } + } +} + +- (NSUInteger)hash { + __block NSUInteger hashCode = 0; + [self enumerateChildrenUsingBlock:^(NSString *key, id node, BOOL *stop) { + hashCode = 31 * hashCode + key.hash; + hashCode = 17 * hashCode + node.hash; + }]; + return 17 * hashCode + self.priorityNode.hash; +} + +- (void) enumerateChildrenAndPriorityUsingBlock:(void (^)(NSString *, id, BOOL *))block +{ + if ([self.getPriority isEmpty]) { + [self enumerateChildrenUsingBlock:block]; + } else { + __block BOOL passedPriorityKey = NO; + [self enumerateChildrenUsingBlock:^(NSString *key, id node, BOOL *stop) { + if (!passedPriorityKey && [FUtilities compareKey:key toKey:@".priority"] == NSOrderedDescending) { + passedPriorityKey = YES; + BOOL stopAfterPriority = NO; + block(@".priority", [self getPriority], &stopAfterPriority); + if (stopAfterPriority) return; + } + block(key, node, stop); + }]; + } +} + +- (void) enumerateChildrenUsingBlock:(void (^)(NSString *, id, BOOL *))block +{ + [self.children enumerateKeysAndObjectsUsingBlock:block]; +} + +- (void) enumerateChildrenReverse:(BOOL)reverse usingBlock:(void (^)(NSString *, id, BOOL *))block +{ + [self.children enumerateKeysAndObjectsReverse:reverse usingBlock:block]; +} + +- (NSEnumerator *)childEnumerator +{ + return [[FTransformedEnumerator alloc] initWithEnumerator:self.children.keyEnumerator andTransform:^id(NSString *key) { + return [FNamedNode nodeWithName:key node:[self getImmediateChild:key]]; + }]; +} + +- (NSString *) predecessorChildKey:(NSString *)childKey +{ + return [self.children getPredecessorKey:childKey]; +} + +#pragma mark - +#pragma mark FChildrenNode specific methods + +- (id) childrenGetter:(id)key { + return [self.children objectForKey:key]; +} + +- (FNamedNode *)firstChild +{ + NSString *childKey = self.children.minKey; + if (childKey) { + return [[FNamedNode alloc] initWithName:childKey andNode:[self getImmediateChild:childKey]]; + } else { + return nil; + } +} + +- (FNamedNode *)lastChild +{ + NSString *childKey = self.children.maxKey; + if (childKey) { + return [[FNamedNode alloc] initWithName:childKey andNode:[self getImmediateChild:childKey]]; + } else { + return nil; + } +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FCompoundWrite.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FCompoundWrite.h new file mode 100644 index 0000000..c67cfc7 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FCompoundWrite.h @@ -0,0 +1,61 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FImmutableTree; +@protocol FNode; +@class FPath; + +/** +* This class holds a collection of writes that can be applied to nodes in unison. It abstracts away the logic with +* dealing with priority writes and multiple nested writes. At any given path, there is only allowed to be one write +* modifying that path. Any write to an existing path or shadowing an existing path will modify that existing write to +* reflect the write added. +*/ +@interface FCompoundWrite : NSObject + +- (id) initWithWriteTree:(FImmutableTree *)tree; + +/** + * Creates a compound write with NSDictionary from path string to object + */ ++ (FCompoundWrite *) compoundWriteWithValueDictionary:(NSDictionary *)dictionary; +/** + * Creates a compound write with NSDictionary from path string to node + */ ++ (FCompoundWrite *) compoundWriteWithNodeDictionary:(NSDictionary *)dictionary; + ++ (FCompoundWrite *) emptyWrite; + +- (FCompoundWrite *) addWrite:(id)node atPath:(FPath *)path; +- (FCompoundWrite *) addWrite:(id)node atKey:(NSString *)key; +- (FCompoundWrite *) addCompoundWrite:(FCompoundWrite *)node atPath:(FPath *)path; +- (FCompoundWrite *) removeWriteAtPath:(FPath *)path; +- (id)rootWrite; +- (BOOL) hasCompleteWriteAtPath:(FPath *)path; +- (id) completeNodeAtPath:(FPath *)path; +- (NSArray *) completeChildren; +- (NSDictionary *)childCompoundWrites; +- (FCompoundWrite *) childCompoundWriteAtPath:(FPath *)path; +- (id) applyToNode:(id)node; +- (void)enumerateWrites:(void (^)(FPath *path, idnode, BOOL *stop))block; + +- (NSDictionary *)valForExport:(BOOL)exportFormat; + +- (BOOL) isEmpty; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FCompoundWrite.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FCompoundWrite.m new file mode 100644 index 0000000..8887095 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FCompoundWrite.m @@ -0,0 +1,257 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FCompoundWrite.h" +#import "FImmutableTree.h" +#import "FNode.h" +#import "FPath.h" +#import "FNamedNode.h" +#import "FSnapshotUtilities.h" + +@interface FCompoundWrite () +@property (nonatomic, strong) FImmutableTree *writeTree; +@end + +@implementation FCompoundWrite + +- (id) initWithWriteTree:(FImmutableTree *)tree { + self = [super init]; + if (self) { + self.writeTree = tree; + } + return self; +} + ++ (FCompoundWrite *)compoundWriteWithValueDictionary:(NSDictionary *)dictionary { + __block FImmutableTree *writeTree = [FImmutableTree empty]; + [dictionary enumerateKeysAndObjectsUsingBlock:^(NSString *pathString, id value, BOOL *stop) { + id node = [FSnapshotUtilities nodeFrom:value]; + FImmutableTree *tree = [[FImmutableTree alloc] initWithValue:node]; + writeTree = [writeTree setTree:tree atPath:[[FPath alloc] initWith:pathString]]; + }]; + return [[FCompoundWrite alloc] initWithWriteTree:writeTree]; +} + ++ (FCompoundWrite *)compoundWriteWithNodeDictionary:(NSDictionary *)dictionary { + __block FImmutableTree *writeTree = [FImmutableTree empty]; + [dictionary enumerateKeysAndObjectsUsingBlock:^(NSString *pathString, id node, BOOL *stop) { + FImmutableTree *tree = [[FImmutableTree alloc] initWithValue:node]; + writeTree = [writeTree setTree:tree atPath:[[FPath alloc] initWith:pathString]]; + }]; + return [[FCompoundWrite alloc] initWithWriteTree:writeTree]; +} + ++ (FCompoundWrite *) emptyWrite { + static dispatch_once_t pred = 0; + static FCompoundWrite *empty = nil; + dispatch_once(&pred, ^{ + empty = [[FCompoundWrite alloc] initWithWriteTree:[[FImmutableTree alloc] initWithValue:nil]]; + }); + return empty; +} + +- (FCompoundWrite *) addWrite:(id)node atPath:(FPath *)path { + if (path.isEmpty) { + return [[FCompoundWrite alloc] initWithWriteTree:[[FImmutableTree alloc] initWithValue:node]]; + } else { + FTuplePathValue *rootMost = [self.writeTree findRootMostValueAndPath:path]; + if (rootMost != nil) { + FPath *relativePath = [FPath relativePathFrom:rootMost.path to:path]; + id value = [rootMost.value updateChild:relativePath withNewChild:node]; + return [[FCompoundWrite alloc] initWithWriteTree:[self.writeTree setValue:value atPath:rootMost.path]]; + } else { + FImmutableTree *subtree = [[FImmutableTree alloc] initWithValue:node]; + FImmutableTree *newWriteTree = [self.writeTree setTree:subtree atPath:path]; + return [[FCompoundWrite alloc] initWithWriteTree:newWriteTree]; + } + } +} + +- (FCompoundWrite *) addWrite:(id)node atKey:(NSString *)key { + return [self addWrite:node atPath:[[FPath alloc] initWith:key]]; +} + +- (FCompoundWrite *) addCompoundWrite:(FCompoundWrite *)compoundWrite atPath:(FPath *)path { + __block FCompoundWrite *newWrite = self; + [compoundWrite.writeTree forEach:^(FPath *childPath, id value) { + newWrite = [newWrite addWrite:value atPath:[path child:childPath]]; + }]; + return newWrite; +} + +/** +* Will remove a write at the given path and deeper paths. This will not modify a write at a higher location, +* which must be removed by calling this method with that path. +* @param path The path at which a write and all deeper writes should be removed. +* @return The new FWriteCompound with the removed path. +*/ +- (FCompoundWrite *) removeWriteAtPath:(FPath *)path { + if (path.isEmpty) { + return [FCompoundWrite emptyWrite]; + } else { + FImmutableTree *newWriteTree = [self.writeTree setTree:[FImmutableTree empty] atPath:path]; + return [[FCompoundWrite alloc] initWithWriteTree:newWriteTree]; + } +} + +/** +* Returns whether this FCompoundWrite will fully overwrite a node at a given location and can therefore be considered +* "complete". +* @param path The path to check for +* @return Whether there is a complete write at that path. +*/ +- (BOOL) hasCompleteWriteAtPath:(FPath *)path { + return [self completeNodeAtPath:path] != nil; +} + +/** +* Returns a node for a path if and only if the node is a "complete" overwrite at that path. This will not aggregate +* writes from depeer paths, but will return child nodes from a more shallow path. +* @param path The path to get a complete write +* @return The node if complete at that path, or nil otherwise. +*/ +- (id) completeNodeAtPath:(FPath *)path { + FTuplePathValue *rootMost = [self.writeTree findRootMostValueAndPath:path]; + if (rootMost != nil) { + FPath *relativePath = [FPath relativePathFrom:rootMost.path to:path]; + return [rootMost.value getChild:relativePath]; + } else { + return nil; + } +} + +// TODO: change into traversal method... +- (NSArray *) completeChildren { + NSMutableArray *children = [[NSMutableArray alloc] init]; + if (self.writeTree.value != nil) { + id node = self.writeTree.value; + [node enumerateChildrenUsingBlock:^(NSString *key, id node, BOOL *stop) { + [children addObject:[[FNamedNode alloc] initWithName:key andNode:node]]; + }]; + } else { + [self.writeTree.children enumerateKeysAndObjectsUsingBlock:^(NSString *childKey, FImmutableTree *childTree, BOOL *stop) { + if (childTree.value != nil) { + [children addObject:[[FNamedNode alloc] initWithName:childKey andNode:childTree.value]]; + } + }]; + } + return children; +} + + +// TODO: change into enumarate method +- (NSDictionary *)childCompoundWrites { + NSMutableDictionary *dict = [NSMutableDictionary dictionary]; + [self.writeTree.children enumerateKeysAndObjectsUsingBlock:^(NSString *key, FImmutableTree *childWrite, BOOL *stop) { + dict[key] = [[FCompoundWrite alloc] initWithWriteTree:childWrite]; + }]; + return dict; +} + +- (FCompoundWrite *) childCompoundWriteAtPath:(FPath *)path { + if (path.isEmpty) { + return self; + } else { + id shadowingNode = [self completeNodeAtPath:path]; + if (shadowingNode != nil) { + return [[FCompoundWrite alloc] initWithWriteTree:[[FImmutableTree alloc] initWithValue:shadowingNode]]; + } else { + return [[FCompoundWrite alloc] initWithWriteTree:[self.writeTree subtreeAtPath:path]]; + } + } +} + +- (id) applySubtreeWrite:(FImmutableTree *)subtreeWrite atPath:(FPath *)relativePath toNode:(id)node { + if (subtreeWrite.value != nil) { + // Since a write there is always a leaf, we're done here. + return [node updateChild:relativePath withNewChild:subtreeWrite.value]; + } else { + __block id priorityWrite = nil; + __block id blockNode = node; + [subtreeWrite.children enumerateKeysAndObjectsUsingBlock:^(NSString *childKey, FImmutableTree *childTree, BOOL *stop) { + if ([childKey isEqualToString:@".priority"]) { + // Apply priorities at the end so we don't update priorities for either empty nodes or forget to apply + // priorities to empty nodes that are later filled. + NSAssert(childTree.value != nil, @"Priority writes must always be leaf nodes"); + priorityWrite = childTree.value; + } else { + blockNode = [self applySubtreeWrite:childTree atPath:[relativePath childFromString:childKey] toNode:blockNode]; + } + }]; + // If there was a priority write, we only apply it if the node is not empty + if (![blockNode getChild:relativePath].isEmpty && priorityWrite != nil) { + blockNode = [blockNode updateChild:[relativePath childFromString:@".priority"] withNewChild:priorityWrite]; + } + return blockNode; + } +} + +- (void)enumerateWrites:(void (^)(FPath *, id, BOOL *))block { + __block BOOL stop = NO; + // TODO: add stop to tree iterator... + [self.writeTree forEach:^(FPath *path, id value) { + if (!stop) { + block(path, value, &stop); + } + }]; +} + +/** +* Applies this FCompoundWrite to a node. The node is returned with all writes from this FCompoundWrite applied to the node. +* @param node The node to apply this FCompoundWrite to +* @return The node with all writes applied +*/ +- (id) applyToNode:(id)node { + return [self applySubtreeWrite:self.writeTree atPath:[FPath empty] toNode:node]; +} + +/** +* Return true if this CompoundWrite is empty and therefore does not modify any nodes. +* @return Whether this CompoundWrite is empty +*/ +- (BOOL) isEmpty { + return self.writeTree.isEmpty; +} + +- (id) rootWrite { + return self.writeTree.value; +} + +- (BOOL)isEqual:(id)object { + if (![object isKindOfClass:[FCompoundWrite class]]) { + return NO; + } + FCompoundWrite *other = (FCompoundWrite *)object; + return [[self valForExport:YES] isEqualToDictionary:[other valForExport:YES]]; +} + +- (NSUInteger)hash { + return [[self valForExport:YES] hash]; +} + +- (NSDictionary *)valForExport:(BOOL)exportFormat { + NSMutableDictionary *dictionary = [NSMutableDictionary dictionary]; + [self.writeTree forEach:^(FPath *path, id value) { + dictionary[path.wireFormat] = [value valForExport:exportFormat]; + }]; + return dictionary; +} + +- (NSString *)description { + return [[self valForExport:YES] description]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FEmptyNode.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FEmptyNode.h new file mode 100644 index 0000000..ab404c2 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FEmptyNode.h @@ -0,0 +1,24 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FNode.h" + +@interface FEmptyNode : NSObject + ++ (id) emptyNode; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FEmptyNode.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FEmptyNode.m new file mode 100644 index 0000000..f41e118 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FEmptyNode.m @@ -0,0 +1,30 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FEmptyNode.h" +#import "FChildrenNode.h" + +@implementation FEmptyNode + ++ (id) emptyNode { + static FChildrenNode* empty = nil; + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + empty = [[FChildrenNode alloc] init]; + }); + return empty; +} +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FIndexedNode.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FIndexedNode.h new file mode 100644 index 0000000..fd2db37 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FIndexedNode.h @@ -0,0 +1,49 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + +#import + +#import "FNode.h" +#import "FIndex.h" +#import "FNamedNode.h" + +/** + * Represents a node together with an index. The index and node are updated in unison. In the case where the index + * does not affect the ordering (i.e. the ordering is identical to the key ordering) this class uses a fallback index + * to save memory. Everything operating on the index must special case the fallback index. + */ +@interface FIndexedNode : NSObject + +@property (nonatomic, strong, readonly) id node; + ++ (FIndexedNode *)indexedNodeWithNode:(id)node; ++ (FIndexedNode *)indexedNodeWithNode:(id)node index:(id)index; + +- (BOOL)hasIndex:(id)index; +- (FIndexedNode *)updateChild:(NSString *)key withNewChild:(id)newChildNode; +- (FIndexedNode *)updatePriority:(id)priority; + +- (FNamedNode *)firstChild; +- (FNamedNode *)lastChild; + +- (NSString *)predecessorForChildKey:(NSString *)childKey childNode:(id)childNode index:(id)index; + +- (void)enumerateChildrenReverse:(BOOL)reverse usingBlock:(void (^)(NSString *key, id node, BOOL *stop))block; + +- (NSEnumerator *)childEnumerator; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FIndexedNode.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FIndexedNode.m new file mode 100644 index 0000000..9dc60e1 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FIndexedNode.m @@ -0,0 +1,202 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIndexedNode.h" + +#import "FImmutableSortedSet.h" +#import "FIndex.h" +#import "FPriorityIndex.h" +#import "FKeyIndex.h" +#import "FChildrenNode.h" + +static FImmutableSortedSet *FALLBACK_INDEX; + +@interface FIndexedNode () + +@property (nonatomic, strong) id node; +/** + * The indexed set is initialized lazily to prevent creation when it is not needed + */ +@property (nonatomic, strong) FImmutableSortedSet *indexed; +@property (nonatomic, strong) id index; + +@end + +@implementation FIndexedNode + ++ (FImmutableSortedSet *)fallbackIndex { + static FImmutableSortedSet *fallbackIndex; + static dispatch_once_t once; + dispatch_once(&once, ^{ + fallbackIndex = [[FImmutableSortedSet alloc] init]; + }); + return fallbackIndex; +} + ++ (FIndexedNode *)indexedNodeWithNode:(id)node +{ + return [[FIndexedNode alloc] initWithNode:node index:[FPriorityIndex priorityIndex]]; +} + ++ (FIndexedNode *)indexedNodeWithNode:(id)node index:(id)index +{ + return [[FIndexedNode alloc] initWithNode:node index:index]; +} + +- (id)initWithNode:(id)node index:(id)index +{ + // Initialize indexed lazily + return [self initWithNode:node index:index indexed:nil]; +} + +- (id)initWithNode:(id)node index:(id)index indexed:(FImmutableSortedSet *)indexed +{ + self = [super init]; + if (self != nil) { + self->_node = node; + self->_index = index; + self->_indexed = indexed; + } + return self; +} + +- (void)ensureIndexed +{ + if (!self.indexed) { + if ([self.index isEqual:[FKeyIndex keyIndex]]) { + self.indexed = [FIndexedNode fallbackIndex]; + } else { + __block BOOL sawChild = NO; + [self.node enumerateChildrenUsingBlock:^(NSString *key, id node, BOOL *stop) { + sawChild = sawChild || [self.index isDefinedOn:node]; + *stop = sawChild; + }]; + if (sawChild) { + NSMutableDictionary *dict = [NSMutableDictionary dictionary]; + [self.node enumerateChildrenUsingBlock:^(NSString *key, id node, BOOL *stop) { + FNamedNode *namedNode = [[FNamedNode alloc] initWithName:key andNode:node]; + dict[namedNode] = [NSNull null]; + }]; + // Make sure to assign index here, because the comparator will be retained and using self will cause a + // cycle + id index = self.index; + self.indexed = [FImmutableSortedSet setWithKeysFromDictionary:dict + comparator:^NSComparisonResult(FNamedNode *namedNode1, FNamedNode *namedNode2) { + return [index compareNamedNode:namedNode1 toNamedNode:namedNode2]; + }]; + } else { + self.indexed = [FIndexedNode fallbackIndex]; + } + } + } +} + +- (BOOL)hasIndex:(id)index +{ + return [self.index isEqual:index]; +} + +- (FIndexedNode *)updateChild:(NSString *)key withNewChild:(id)newChildNode +{ + id newNode = [self.node updateImmediateChild:key withNewChild:newChildNode]; + if (self.indexed == [FIndexedNode fallbackIndex] && ![self.index isDefinedOn:newChildNode]) { + // doesn't affect the index, no need to create an index + return [[FIndexedNode alloc] initWithNode:newNode index:self.index indexed:[FIndexedNode fallbackIndex]]; + } else if (!self.indexed || self.indexed == [FIndexedNode fallbackIndex]) { + // No need to index yet, index lazily + return [[FIndexedNode alloc] initWithNode:newNode index:self.index]; + } else { + id oldChild = [self.node getImmediateChild:key]; + FImmutableSortedSet *newIndexed = [self.indexed removeObject:[FNamedNode nodeWithName:key node:oldChild]]; + if (![newChildNode isEmpty]) { + newIndexed = [newIndexed addObject:[FNamedNode nodeWithName:key node:newChildNode]]; + } + return [[FIndexedNode alloc] initWithNode:newNode index:self.index indexed:newIndexed]; + } +} + +- (FIndexedNode *)updatePriority:(id)priority +{ + return [[FIndexedNode alloc] initWithNode:[self.node updatePriority:priority] + index:self.index + indexed:self.indexed]; +} + +- (FNamedNode *)firstChild +{ + if (![self.node isKindOfClass:[FChildrenNode class]]) { + return nil; + } else { + [self ensureIndexed]; + if (self.indexed == [FIndexedNode fallbackIndex]) { + return [((FChildrenNode *)self.node) firstChild]; + } else { + return self.indexed.firstObject; + } + } +} + +- (FNamedNode *)lastChild +{ + if (![self.node isKindOfClass:[FChildrenNode class]]) { + return nil; + } else { + [self ensureIndexed]; + if (self.indexed == [FIndexedNode fallbackIndex]) { + return [((FChildrenNode *)self.node) lastChild]; + } else { + return self.indexed.lastObject; + } + } +} + +- (NSString *)predecessorForChildKey:(NSString *)childKey childNode:(id)childNode index:(id)index +{ + if (![self.index isEqual:index]) { + [NSException raise:NSInvalidArgumentException format:@"Index not available in IndexedNode!"]; + } + [self ensureIndexed]; + if (self.indexed == [FIndexedNode fallbackIndex]) { + return [self.node predecessorChildKey:childKey]; + } else { + FNamedNode *node = [self.indexed predecessorEntry:[FNamedNode nodeWithName:childKey node:childNode]]; + return node.name; + } +} + +- (void)enumerateChildrenReverse:(BOOL)reverse usingBlock:(void (^)(NSString *, id, BOOL *))block +{ + [self ensureIndexed]; + if (self.indexed == [FIndexedNode fallbackIndex]) { + [self.node enumerateChildrenReverse:reverse usingBlock:block]; + } else { + [self.indexed enumerateObjectsReverse:reverse usingBlock:^(FNamedNode *namedNode, BOOL *stop) { + block(namedNode.name, namedNode.node, stop); + }]; + } +} + +- (NSEnumerator *)childEnumerator +{ + [self ensureIndexed]; + if (self.indexed == [FIndexedNode fallbackIndex]) { + return [self.node childEnumerator]; + } else { + return [self.indexed objectEnumerator]; + } +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FLeafNode.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FLeafNode.h new file mode 100644 index 0000000..15e0132 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FLeafNode.h @@ -0,0 +1,28 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FNode.h" + + +@interface FLeafNode : NSObject + +- (id)initWithValue:(id)aValue; +- (id)initWithValue:(id)aValue withPriority:(id)aPriority; + +@property (nonatomic, strong) id value; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FLeafNode.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FLeafNode.m new file mode 100644 index 0000000..a26e057 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FLeafNode.m @@ -0,0 +1,250 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FLeafNode.h" +#import "FEmptyNode.h" +#import "FChildrenNode.h" +#import "FConstants.h" +#import "FImmutableSortedDictionary.h" +#import "FUtilities.h" +#import "FStringUtilities.h" +#import "FSnapshotUtilities.h" + +@interface FLeafNode () +@property (nonatomic, strong) id priorityNode; +@property (nonatomic, strong) NSString *lazyHash; + +@end + +@implementation FLeafNode + +@synthesize value; +@synthesize priorityNode; + +- (id)initWithValue:(id)aValue { + self = [super init]; + if (self) { + self.value = aValue; + self.priorityNode = [FEmptyNode emptyNode]; + } + return self; +} + +- (id)initWithValue:(id)aValue withPriority:(id)aPriority { + self = [super init]; + if (self) { + self.value = aValue; + [FSnapshotUtilities validatePriorityNode:aPriority]; + self.priorityNode = aPriority; + } + return self; +} + +#pragma mark - +#pragma mark FNode methods + +- (BOOL) isLeafNode { + return YES; +} + +- (id) getPriority { + return self.priorityNode; +} + +- (id) updatePriority:(id)aPriority { + return [[FLeafNode alloc] initWithValue:self.value withPriority:aPriority]; +} + +- (id) getImmediateChild:(NSString *) childName { + if ([childName isEqualToString:@".priority"]) { + return self.priorityNode; + } else { + return [FEmptyNode emptyNode]; + } +} + +- (id) getChild:(FPath *)path { + if (path.getFront == nil) { + return self; + } else if ([[path getFront] isEqualToString:@".priority"]) { + return [self getPriority]; + } else { + return [FEmptyNode emptyNode]; + } +} + +- (BOOL)hasChild:(NSString *)childName { + return [childName isEqualToString:@".priority"] && ![self getPriority].isEmpty; +} + + +- (NSString *)predecessorChildKey:(NSString *)childKey +{ + return nil; +} + +- (id) updateImmediateChild:(NSString *)childName withNewChild:(id)newChildNode { + if ([childName isEqualToString:@".priority"]) { + return [self updatePriority:newChildNode]; + } else if (newChildNode.isEmpty) { + return self; + } else { + FChildrenNode* childrenNode = [[FChildrenNode alloc] init]; + childrenNode = [childrenNode updateImmediateChild:childName withNewChild:newChildNode]; + childrenNode = [childrenNode updatePriority:self.priorityNode]; + return childrenNode; + } +} + +- (id) updateChild:(FPath *)path withNewChild:(id)newChildNode { + NSString* front = [path getFront]; + if(front == nil) { + return newChildNode; + } else if (newChildNode.isEmpty && ![front isEqualToString:@".priority"]) { + return self; + } else { + NSAssert(![front isEqualToString:@".priority"] || path.length == 1, @".priority must be the last token in a path."); + return [self updateImmediateChild:front withNewChild: + [[FEmptyNode emptyNode] updateChild:[path popFront] withNewChild:newChildNode]]; + } +} + +- (id) val { + return [self valForExport:NO]; +} + +- (id) valForExport:(BOOL)exp { + if(exp && !self.getPriority.isEmpty) { + return @{kPayloadValue : self.value, + kPayloadPriority : [[self getPriority] val]}; + } + else { + return self.value; + } +} + +- (BOOL)isEqual:(id )other { + if(other == self) { + return YES; + } else if (other.isLeafNode) { + FLeafNode *otherLeaf = other; + if ([FUtilities getJavascriptType:self.value] != [FUtilities getJavascriptType:otherLeaf.value]) { + return NO; + } + return [otherLeaf.value isEqual:self.value] && [otherLeaf.priorityNode isEqual:self.priorityNode]; + } else { + return NO; + } +} + +- (NSUInteger)hash { + return [self.value hash] * 17 + self.priorityNode.hash; +} + +- (id )withIndex:(id )index { + return self; +} + +- (BOOL)isIndexed:(id )index { + return YES; +} + +- (BOOL) isEmpty { + return NO; +} + +- (int) numChildren { + return 0; +} + +- (void) enumerateChildrenUsingBlock:(void (^)(NSString *, id, BOOL *))block +{ + // Nothing to iterate over +} + +- (void) enumerateChildrenReverse:(BOOL)reverse usingBlock:(void (^)(NSString *, id, BOOL *))block +{ + // Nothing to iterate over +} + +- (NSEnumerator *)childEnumerator +{ + // Nothing to iterate over + return [@[] objectEnumerator]; +} + +- (NSString *) dataHash { + if (self.lazyHash == nil) { + NSMutableString *toHash = [[NSMutableString alloc] init]; + [FSnapshotUtilities appendHashRepresentationForLeafNode:self toString:toHash hashVersion:FDataHashVersionV1]; + + self.lazyHash = [FStringUtilities base64EncodedSha1:toHash]; + } + return self.lazyHash; +} + +- (NSComparisonResult)compare:(id )other { + if (other == [FEmptyNode emptyNode]) { + return NSOrderedDescending; + } else if ([other isKindOfClass:[FChildrenNode class]]) { + return NSOrderedAscending; + } else { + NSAssert(other.isLeafNode, @"Compared against unknown type of node."); + return [self compareToLeafNode:(FLeafNode*)other]; + } +} + ++ (NSArray*) valueTypeOrder { + static NSArray* valueOrder = nil; + static dispatch_once_t once; + dispatch_once(&once, ^{ + valueOrder = @[kJavaScriptObject, kJavaScriptBoolean, kJavaScriptNumber, kJavaScriptString]; + }); + return valueOrder; +} + +- (NSComparisonResult) compareToLeafNode:(FLeafNode*)other { + NSString* thisLeafType = [FUtilities getJavascriptType:self.value]; + NSString* otherLeafType = [FUtilities getJavascriptType:other.value]; + NSUInteger thisIndex = [[FLeafNode valueTypeOrder] indexOfObject:thisLeafType]; + NSUInteger otherIndex = [[FLeafNode valueTypeOrder] indexOfObject:otherLeafType]; + assert(thisIndex >= 0 && otherIndex >= 0); + if (otherIndex == thisIndex) { + // Same type. Compare values. + if (thisLeafType == kJavaScriptObject) { + // Deferred value nodes are all equal, but we should also never get to this point... + return NSOrderedSame; + } else if (thisLeafType == kJavaScriptString) { + return [self.value compare:other.value options:NSLiteralSearch]; + } else { + return [self.value compare:other.value]; + } + } else { + return thisIndex > otherIndex ? NSOrderedDescending : NSOrderedAscending; + } +} + +- (NSString *) description { + return [[self valForExport:YES] description]; +} + +- (void) forEachChildDo:(fbt_bool_nsstring_node)action { + // There are no children, so there is nothing to do. + return; +} + + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FNode.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FNode.h new file mode 100644 index 0000000..1316756 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FNode.h @@ -0,0 +1,46 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FPath.h" +#import "FTypedefs_Private.h" + +@protocol FIndex; + +@protocol FNode + +- (BOOL) isLeafNode; +- (id) getPriority; +- (id) updatePriority:(id)priority; +- (id) getImmediateChild:(NSString *)childKey; +- (id) getChild:(FPath *)path; +- (NSString *) predecessorChildKey:(NSString *)childKey; +- (id) updateImmediateChild:(NSString *)childKey withNewChild:(id)newChildNode; +- (id) updateChild:(FPath *)path withNewChild:(id)newChildNode; +- (BOOL) hasChild:(NSString*)childKey; +- (BOOL) isEmpty; +- (int) numChildren; +- (id) val; +- (id) valForExport:(BOOL)exp; +- (NSString *) dataHash; +- (NSComparisonResult) compare:(id)other; +- (BOOL) isEqual:(id)other; +- (void)enumerateChildrenUsingBlock:(void (^)(NSString *key, id node, BOOL *stop))block; +- (void)enumerateChildrenReverse:(BOOL)reverse usingBlock:(void (^)(NSString *key, id node, BOOL *stop))block; + +- (NSEnumerator *)childEnumerator; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FSnapshotUtilities.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FSnapshotUtilities.h new file mode 100644 index 0000000..2a28788 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FSnapshotUtilities.h @@ -0,0 +1,45 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FNode.h" + +@class FImmutableSortedDictionary; +@class FCompoundWrite; +@class FLeafNode; +@protocol FNode; + +typedef NS_ENUM(NSInteger, FDataHashVersion) { + FDataHashVersionV1, + FDataHashVersionV2, +}; + +@interface FSnapshotUtilities : NSObject + ++ (id) nodeFrom:(id)val; ++ (id) nodeFrom:(id)val priority:(id)priority; ++ (id) nodeFrom:(id)val withValidationFrom:(NSString *)fn; ++ (id) nodeFrom:(id)val priority:(id)priority withValidationFrom:(NSString *)fn; ++ (FCompoundWrite *) compoundWriteFromDictionary:(NSDictionary *)values withValidationFrom:(NSString *)fn; ++ (void) validatePriorityNode:(id)priorityNode; ++ (void)appendHashRepresentationForLeafNode:(FLeafNode *)val + toString:(NSMutableString *)string + hashVersion:(FDataHashVersion)hashVersion; ++ (void)appendHashV2RepresentationForString:(NSString *)string toString:(NSMutableString *)mutableString; + ++ (NSUInteger)estimateSerializedNodeSize:(id)node; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FSnapshotUtilities.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FSnapshotUtilities.m new file mode 100644 index 0000000..c6012d3 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Snapshot/FSnapshotUtilities.m @@ -0,0 +1,301 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FSnapshotUtilities.h" +#import "FEmptyNode.h" +#import "FLeafNode.h" +#import "FConstants.h" +#import "FUtilities.h" +#import "FChildrenNode.h" +#import "FLLRBValueNode.h" +#import "FValidation.h" +#import "FMaxNode.h" +#import "FNamedNode.h" +#import "FCompoundWrite.h" + +@implementation FSnapshotUtilities + ++ (id) nodeFrom:(id)val { + return [FSnapshotUtilities nodeFrom:val priority:nil]; +} + ++ (id) nodeFrom:(id)val priority:(id)priority { + return [FSnapshotUtilities nodeFrom:val priority:priority withValidationFrom:@"nodeFrom:priority:"]; +} + ++ (id) nodeFrom:(id)val withValidationFrom:(NSString *)fn { + return [FSnapshotUtilities nodeFrom:val priority:nil withValidationFrom:fn]; +} + ++ (id) nodeFrom:(id)val priority:(id)priority withValidationFrom:(NSString *)fn { + return [FSnapshotUtilities nodeFrom:val priority:priority withValidationFrom:fn atDepth:0 path:[[NSMutableArray alloc] init]]; +} + ++ (id) nodeFrom:(id)val priority:(id)aPriority withValidationFrom:(NSString *)fn atDepth:(int)depth path:(NSMutableArray *)path { + @autoreleasepool { + return [FSnapshotUtilities internalNodeFrom:val priority:aPriority withValidationFrom:fn atDepth:depth path:path]; + } +} + ++ (id) internalNodeFrom:(id)val priority:(id)aPriority withValidationFrom:(NSString *)fn atDepth:(int)depth path:(NSMutableArray *)path { + + + if (depth > kFirebaseMaxObjectDepth) { + NSRange range; + range.location = 0; + range.length = 100; + NSString* pathString = [[path subarrayWithRange:range] componentsJoinedByString:@"."]; + @throw [[NSException alloc] initWithName:@"InvalidFirebaseData" reason:[NSString stringWithFormat:@"(%@) Max object depth exceeded: %@...", fn, pathString] userInfo:nil]; + } + + if (val == nil || val == [NSNull null]) { + // Null is a valid type to store + return [FEmptyNode emptyNode]; + } + + [FValidation validateFrom:fn isValidPriorityValue:aPriority withPath:path]; + id priority = [FSnapshotUtilities nodeFrom:aPriority]; + + id value = val; + BOOL isLeafNode = NO; + + if([value isKindOfClass:[NSDictionary class]]) { + NSDictionary* dict = val; + if(dict[kPayloadPriority] != nil) { + id rawPriority = [dict objectForKey:kPayloadPriority]; + [FValidation validateFrom:fn isValidPriorityValue:rawPriority withPath:path]; + priority = [FSnapshotUtilities nodeFrom:rawPriority]; + } + + if(dict[kPayloadValue] != nil) { + value = [dict objectForKey:kPayloadValue]; + if ([FValidation validateFrom:fn isValidLeafValue:value withPath:path]) { + isLeafNode = YES; + } else { + @throw [[NSException alloc] + initWithName:@"InvalidLeafValueType" + reason:[NSString stringWithFormat:@"(%@) Invalid data type used with .value. Can only use " + "NSString and NSNumber or be null. Found %@ instead.", + fn, [[value class] description]] userInfo:nil]; + } + } + } + + if([FValidation validateFrom:fn isValidLeafValue:value withPath:path]) { + isLeafNode = YES; + } + + if (isLeafNode) { + return [[FLeafNode alloc] initWithValue:value withPriority:priority]; + } + + // Unlike with JS, we have to handle the dictionary and array cases separately. + if ([value isKindOfClass:[NSDictionary class]]) { + NSDictionary* dval = (NSDictionary *)value; + NSMutableDictionary *children = [NSMutableDictionary dictionaryWithCapacity:dval.count]; + + // Avoid creating a million newPaths by appending to old one + for (id keyId in dval) { + [FValidation validateFrom:fn validDictionaryKey:keyId withPath:path]; + NSString* key = (NSString*)keyId; + + if (![key hasPrefix:kPayloadMetadataPrefix]) { + [path addObject:key]; + id childNode = [FSnapshotUtilities nodeFrom:dval[key] priority:nil withValidationFrom:fn atDepth:depth + 1 path:path]; + [path removeLastObject]; + + if (![childNode isEmpty]) { + children[key] = childNode; + } + } + } + + if ([children count] == 0) { + return [FEmptyNode emptyNode]; + } else { + FImmutableSortedDictionary *childrenDict = [FImmutableSortedDictionary fromDictionary:children + withComparator:[FUtilities keyComparator]]; + return [[FChildrenNode alloc] initWithPriority:priority children:childrenDict]; + } + } else if([value isKindOfClass:[NSArray class]]) { + NSArray* aval = (NSArray *)value; + NSMutableDictionary* children = [NSMutableDictionary dictionaryWithCapacity:aval.count]; + + for(int i = 0; i < [aval count]; i++) { + NSString* key = [NSString stringWithFormat:@"%i", i]; + [path addObject:key]; + id childNode = [FSnapshotUtilities nodeFrom:[aval objectAtIndex:i] priority:nil withValidationFrom:fn atDepth:depth + 1 path:path]; + [path removeLastObject]; + + if (![childNode isEmpty]) { + children[key] = childNode; + } + } + + if ([children count] == 0) { + return [FEmptyNode emptyNode]; + } else { + FImmutableSortedDictionary *childrenDict = [FImmutableSortedDictionary fromDictionary:children + withComparator:[FUtilities keyComparator]]; + return [[FChildrenNode alloc] initWithPriority:priority children:childrenDict]; + } + } else { + NSRange range; + range.location = 0; + range.length = MIN(path.count, 50); + NSString* pathString = [[path subarrayWithRange:range] componentsJoinedByString:@"."]; + + @throw [[NSException alloc] initWithName:@"InvalidFirebaseData" + reason:[NSString stringWithFormat:@"(%@) Cannot store object of type %@ at %@. " + "Can only store objects of type NSNumber, NSString, NSDictionary, and NSArray.", + fn, [[value class] description], pathString] userInfo:nil]; + } +} + ++ (FCompoundWrite *) compoundWriteFromDictionary:(NSDictionary *)values withValidationFrom:(NSString *)fn { + FCompoundWrite *compoundWrite = [FCompoundWrite emptyWrite]; + + NSMutableArray *updatePaths = [NSMutableArray arrayWithCapacity:values.count]; + for (NSString *keyId in values) { + id value = values[keyId]; + [FValidation validateFrom:fn validUpdateDictionaryKey:keyId withValue:value]; + + FPath* path = [FPath pathWithString:keyId]; + id node = [FSnapshotUtilities nodeFrom:value withValidationFrom:fn]; + + [updatePaths addObject:path]; + compoundWrite = [compoundWrite addWrite:node atPath:path]; + } + + // Check that the update paths are not descendants of each other. + [updatePaths sortUsingComparator:^NSComparisonResult(FPath* left, FPath* right) { + return [left compare:right]; + }]; + FPath *prevPath = nil; + for (FPath *path in updatePaths) { + if (prevPath != nil && [prevPath contains:path]) { + @throw [[NSException alloc] initWithName:@"InvalidFirebaseData" reason:[NSString stringWithFormat:@"(%@) Invalid path in object. Path (%@) is an ancestor of (%@).", fn, prevPath, path] userInfo:nil]; + } + prevPath = path; + } + + return compoundWrite; +} + ++ (void)validatePriorityNode:(id )priorityNode { + assert(priorityNode != nil); + if (priorityNode.isLeafNode) { + id val = priorityNode.val; + if ([val isKindOfClass:[NSDictionary class]]) { + NSDictionary* valDict __unused = (NSDictionary*)val; + NSAssert(valDict[kServerValueSubKey] != nil, @"Priority can't be object unless it's a deferred value"); + } else { + NSString *jsType __unused = [FUtilities getJavascriptType:val]; + NSAssert(jsType == kJavaScriptString || jsType == kJavaScriptNumber, @"Priority of unexpected type."); + } + } else { + NSAssert(priorityNode == [FMaxNode maxNode] || priorityNode.isEmpty, @"Priority of unexpected type."); + } + // Don't call getPriority() on MAX_NODE to avoid hitting assertion. + NSAssert(priorityNode == [FMaxNode maxNode] || priorityNode.getPriority.isEmpty, + @"Priority nodes can't have a priority of their own."); +} + ++ (void)appendHashRepresentationForLeafNode:(FLeafNode *)leafNode + toString:(NSMutableString *)string + hashVersion:(FDataHashVersion)hashVersion { + NSAssert(hashVersion == FDataHashVersionV1 || hashVersion == FDataHashVersionV2, + @"Unknown hash version: %lu", (unsigned long)hashVersion); + if (!leafNode.getPriority.isEmpty) { + [string appendString:@"priority:"]; + [FSnapshotUtilities appendHashRepresentationForLeafNode:leafNode.getPriority toString:string hashVersion:hashVersion]; + [string appendString:@":"]; + } + + NSString *jsType = [FUtilities getJavascriptType:leafNode.val]; + [string appendString:jsType]; + [string appendString:@":"]; + + + if (jsType == kJavaScriptBoolean) { + NSString *boolString = [leafNode.val boolValue] ? kJavaScriptTrue : kJavaScriptFalse; + [string appendString:boolString]; + } else if (jsType == kJavaScriptNumber) { + NSString *numberString = [FUtilities ieee754StringForNumber:leafNode.val]; + [string appendString:numberString]; + } else if (jsType == kJavaScriptString) { + if (hashVersion == FDataHashVersionV1) { + [string appendString:leafNode.val]; + } else { + NSAssert(hashVersion == FDataHashVersionV2, @"Invalid hash version found"); + [FSnapshotUtilities appendHashV2RepresentationForString:leafNode.val toString:string]; + } + } else { + [NSException raise:NSInvalidArgumentException format:@"Unknown value for hashing: %@", leafNode]; + } +} + ++ (void)appendHashV2RepresentationForString:(NSString *)string + toString:(NSMutableString *)mutableString { + string = [string stringByReplacingOccurrencesOfString:@"\\" withString:@"\\\\"]; + string = [string stringByReplacingOccurrencesOfString:@"\"" withString:@"\\\""]; + [mutableString appendString:@"\""]; + [mutableString appendString:string]; + [mutableString appendString:@"\""]; +} + ++ (NSUInteger)estimateLeafNodeSize:(FLeafNode *)leafNode { + NSString *jsType = [FUtilities getJavascriptType:leafNode.val]; + // These values are somewhat arbitrary, but we don't need an exact value so prefer performance over exact value + NSUInteger valueSize; + if (jsType == kJavaScriptNumber) { + valueSize = 8; // estimate each float with 8 bytes + } else if (jsType == kJavaScriptBoolean) { + valueSize = 4; // true or false need roughly 4 bytes + } else if (jsType == kJavaScriptString) { + valueSize = 2 + [leafNode.val length]; // add 2 for quotes + } else { + [NSException raise:NSInvalidArgumentException format:@"Unknown leaf type: %@", leafNode]; + return 0; + } + + if (leafNode.getPriority.isEmpty) { + return valueSize; + } else { + // Account for extra overhead due to the extra JSON object and the ".value" and ".priority" keys, colons, comma + NSUInteger leafPriorityOverhead = 2 + 8 + 11 + 2 + 1; + return leafPriorityOverhead + valueSize + [FSnapshotUtilities estimateLeafNodeSize:leafNode.getPriority]; + } +} + ++ (NSUInteger)estimateSerializedNodeSize:(id)node { + if ([node isEmpty]) { + return 4; // null keyword + } else if ([node isLeafNode]) { + return [FSnapshotUtilities estimateLeafNodeSize:node]; + } else { + NSAssert([node isKindOfClass:[FChildrenNode class]], @"Unexpected node type: %@", [node class]); + __block NSUInteger sum = 1; // opening brackets + [((FChildrenNode *)node) enumerateChildrenAndPriorityUsingBlock:^(NSString *key, idchild, BOOL *stop) { + sum += key.length; + sum += 4; // quotes around key and colon and (comma or closing bracket) + sum += [FSnapshotUtilities estimateSerializedNodeSize:child]; + }]; + return sum; + } +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FAtomicNumber.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FAtomicNumber.h new file mode 100644 index 0000000..589dc25 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FAtomicNumber.h @@ -0,0 +1,23 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@interface FAtomicNumber : NSObject + +- (NSNumber *) getAndIncrement; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FAtomicNumber.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FAtomicNumber.m new file mode 100644 index 0000000..4a14caa --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FAtomicNumber.m @@ -0,0 +1,54 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FAtomicNumber.h" + +@interface FAtomicNumber() { + unsigned long number; +} + +@property (nonatomic, strong) NSLock* lock; + +@end + +@implementation FAtomicNumber + +@synthesize lock; + +- (id)init +{ + self = [super init]; + if (self) { + number = 1; + self.lock = [[NSLock alloc] init]; + } + return self; +} + +- (NSNumber *) getAndIncrement { + NSNumber* result; + + // See: http://developer.apple.com/library/ios/#DOCUMENTATION/Cocoa/Conceptual/Multithreading/ThreadSafety/ThreadSafety.html#//apple_ref/doc/uid/10000057i-CH8-SW14 to improve, etc. + + [self.lock lock]; + result = [NSNumber numberWithUnsignedLong:number]; + number = number + 1; + [self.lock unlock]; + + return result; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FEventEmitter.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FEventEmitter.h new file mode 100644 index 0000000..069e10f --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FEventEmitter.h @@ -0,0 +1,33 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FIRDatabaseQuery.h" +#import "FIRDatabaseConfig.h" +#import "FTypedefs_Private.h" + +@interface FEventEmitter : NSObject + +- (id) initWithAllowedEvents:(NSArray *)theAllowedEvents queue:(dispatch_queue_t)queue; + +- (id) getInitialEventForType:(NSString *)eventType; +- (void) triggerEventType:(NSString *)eventType data:(id)data; + +- (FIRDatabaseHandle)observeEventType:(NSString *)eventType withBlock:(fbt_void_id)block; +- (void) removeObserverForEventType:(NSString *)eventType withHandle:(FIRDatabaseHandle)handle; + +- (void) validateEventType:(NSString *)eventType; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FEventEmitter.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FEventEmitter.m new file mode 100644 index 0000000..f7c569b --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FEventEmitter.m @@ -0,0 +1,145 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + +#import "FEventEmitter.h" +#import "FUtilities.h" +#import "FRepoManager.h" +#import "FIRDatabaseQuery_Private.h" + +@interface FEventListener : NSObject + +@property (nonatomic, copy) fbt_void_id userCallback; +@property (nonatomic) FIRDatabaseHandle handle; + +@end + +@implementation FEventListener + +@synthesize userCallback; +@synthesize handle; + +@end + + +@interface FEventEmitter () + +@property (nonatomic, strong) NSArray *allowedEvents; +@property (nonatomic, strong) NSMutableDictionary *listeners; +@property (nonatomic, strong) dispatch_queue_t queue; + +@end + + +@implementation FEventEmitter + +@synthesize allowedEvents; +@synthesize listeners; + +- (id) initWithAllowedEvents:(NSArray *)theAllowedEvents queue:(dispatch_queue_t)queue { + if (theAllowedEvents == nil || [theAllowedEvents count] == 0) { + @throw [NSException exceptionWithName:@"AllowedEventsValidation" reason:@"FEventEmitters must be initialized with at least one valid event." userInfo:nil]; + } + + self = [super init]; + + if (self) { + self.allowedEvents = [theAllowedEvents copy]; + self.listeners = [[NSMutableDictionary alloc] init]; + self.queue = queue; + } + + return self; +} + +- (id) getInitialEventForType:(NSString *)eventType { + @throw [NSException exceptionWithName:NSInternalInconsistencyException reason:@"You must override getInitialEvent: when subclassing FEventEmitter" userInfo:nil]; +} + +- (void) triggerEventType:(NSString *)eventType data:(id)data { + [self validateEventType:eventType]; + NSMutableDictionary *eventTypeListeners = [self.listeners objectForKey:eventType]; + for (FEventListener *listener in eventTypeListeners) { + [self triggerListener:listener withData:data]; + } +} + +- (void) triggerListener:(FEventListener *)listener withData:(id)data { + // TODO, should probably get this from FRepo or something although it ends up being the same. (Except maybe for testing) + if (listener.userCallback) { + dispatch_async(self.queue, ^{ + listener.userCallback(data); + }); + } +} + +- (FIRDatabaseHandle)observeEventType:(NSString *)eventType withBlock:(fbt_void_id)block { + [self validateEventType:eventType]; + + // Create listener + FEventListener *listener = [[FEventListener alloc] init]; + listener.handle = [[FUtilities LUIDGenerator] integerValue]; + listener.userCallback = block; // copies block automatically + + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + [self addEventListener:listener forEventType:eventType]; + }); + + return listener.handle; +} + +- (void) addEventListener:(FEventListener *)listener forEventType:(NSString *)eventType { + // Get or initializer listeners map [FIRDatabaseHandle -> callback block] for eventType + NSMutableArray *eventTypeListeners = [self.listeners objectForKey:eventType]; + if (eventTypeListeners == nil) { + eventTypeListeners = [[NSMutableArray alloc] init]; + [self.listeners setObject:eventTypeListeners forKey:eventType]; + } + + // Add listener and fire the current event for this listener + [eventTypeListeners addObject:listener]; + id initialData = [self getInitialEventForType:eventType]; + [self triggerListener:listener withData:initialData]; +} + +- (void) removeObserverForEventType:(NSString *)eventType withHandle:(FIRDatabaseHandle)handle { + [self validateEventType:eventType]; + + dispatch_async([FIRDatabaseQuery sharedQueue], ^{ + [self removeEventListenerWithHandle:handle forEventType:eventType]; + }); +} + +- (void)removeEventListenerWithHandle:(FIRDatabaseHandle)handle forEventType:(NSString *)eventType { + NSMutableArray *eventTypeListeners = [self.listeners objectForKey:eventType]; + for (FEventListener *listener in [eventTypeListeners copy]) { + if (handle == NSNotFound || handle == listener.handle) { + [eventTypeListeners removeObject:listener]; + } + } +} + + +- (void) validateEventType:(NSString *)eventType { + if ([self.allowedEvents indexOfObject:eventType] == NSNotFound) { + @throw [NSException exceptionWithName:@"InvalidEventType" + reason:[NSString stringWithFormat:@"%@ is not a valid event type. %@ is the list of valid events.", + eventType, self.allowedEvents] + userInfo:nil]; + } +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FNextPushId.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FNextPushId.h new file mode 100644 index 0000000..2da54f0 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FNextPushId.h @@ -0,0 +1,23 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@interface FNextPushId : NSObject + ++ (NSString *) get:(NSTimeInterval)now; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FNextPushId.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FNextPushId.m new file mode 100644 index 0000000..ee3ba13 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FNextPushId.m @@ -0,0 +1,63 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FNextPushId.h" +#import "FUtilities.h" + +static NSString *const PUSH_CHARS = @"-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"; + +@implementation FNextPushId + ++ (NSString *) get:(NSTimeInterval)currentTime { + static long long lastPushTime = 0; + static int lastRandChars[12]; + + long long now = (long long)(currentTime * 1000); + + BOOL duplicateTime = now == lastPushTime; + lastPushTime = now; + + unichar timeStampChars[8]; + for(int i = 7; i >= 0; i--) { + timeStampChars[i] = [PUSH_CHARS characterAtIndex:(now % 64)]; + now = (long long)floor(now / 64); + } + + NSMutableString* id = [[NSMutableString alloc] init]; + [id appendString:[NSString stringWithCharacters:timeStampChars length:8]]; + + + if(!duplicateTime) { + for(int i = 0; i < 12; i++) { + lastRandChars[i] = (int)floor(arc4random() % 64); + } + } + else { + int i = 0; + for(i = 11; i >= 0 && lastRandChars[i] == 63; i--) { + lastRandChars[i] = 0; + } + lastRandChars[i]++; + } + + for(int i = 0; i < 12; i++) { + [id appendFormat:@"%C", [PUSH_CHARS characterAtIndex:lastRandChars[i]]]; + } + + return [NSString stringWithString:id]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FParsedUrl.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FParsedUrl.h new file mode 100644 index 0000000..7145f86 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FParsedUrl.h @@ -0,0 +1,25 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FRepoInfo.h" +#import "FPath.h" + +@interface FParsedUrl : NSObject + +@property (nonatomic, strong) FRepoInfo* repoInfo; +@property (nonatomic, strong) FPath* path; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FParsedUrl.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FParsedUrl.m new file mode 100644 index 0000000..eb83330 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FParsedUrl.m @@ -0,0 +1,24 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FParsedUrl.h" + +@implementation FParsedUrl + +@synthesize repoInfo; +@synthesize path; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FStringUtilities.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FStringUtilities.h new file mode 100644 index 0000000..34ac9af --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FStringUtilities.h @@ -0,0 +1,26 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@interface FStringUtilities : NSObject + ++ (NSString *) base64EncodedSha1:(NSString *)str; ++ (NSString *) urlDecoded:(NSString *)url; ++ (NSString *) urlEncoded:(NSString *)url; ++ (NSString *) sanitizedForUserAgent:(NSString *)str; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FStringUtilities.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FStringUtilities.m new file mode 100644 index 0000000..dff58e0 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FStringUtilities.m @@ -0,0 +1,61 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FStringUtilities.h" +#import "NSData+SRB64Additions.h" + +@implementation FStringUtilities + +// http://stackoverflow.com/questions/3468268/objective-c-sha1 +// http://stackoverflow.com/questions/7310457/ios-objective-c-sha-1-and-base64-problem ++ (NSString *) base64EncodedSha1:(NSString *)str { + const char *cstr = [str cStringUsingEncoding:NSUTF8StringEncoding]; + // NSString reports length in characters, but we want it in bytes, which strlen will give us. + unsigned long dataLen = strlen(cstr); + NSData *data = [NSData dataWithBytes:cstr length:dataLen]; + uint8_t digest[CC_SHA1_DIGEST_LENGTH]; + CC_SHA1(data.bytes, (unsigned int)data.length, digest); + NSData* output = [[NSData alloc] initWithBytes:digest length:CC_SHA1_DIGEST_LENGTH]; + return [FSRUtilities base64EncodedStringFromData:output]; +} + ++ (NSString *) urlDecoded:(NSString *)url { + NSString* replaced = [url stringByReplacingOccurrencesOfString:@"+" withString:@" "]; + NSString* decoded = [replaced stringByRemovingPercentEncoding]; + // This is kind of a hack, but is generally how the js client works. We could run into trouble if + // some piece is a correctly escaped %-sequence, and another isn't. But, that's bad input anyways... + if (decoded) { + return decoded; + } else { + return replaced; + } +} + ++ (NSString *) urlEncoded:(NSString *)url { + // Didn't seem like there was an Apple NSCharacterSet that had our version of the encoding + // So I made my own, following RFC 2396 https://www.ietf.org/rfc/rfc2396.txt + // allowedCharacters = alphanum | "-" | "_" | "~" + NSCharacterSet *allowedCharacters = [NSCharacterSet characterSetWithCharactersInString:@"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_~"]; + return [url stringByAddingPercentEncodingWithAllowedCharacters:allowedCharacters]; +} + ++ (NSString *) sanitizedForUserAgent:(NSString *)str { + return [str stringByReplacingOccurrencesOfString:@"/|_" withString:@"|" options:NSRegularExpressionSearch range:NSMakeRange(0, [str length])]; +} + + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FTypedefs.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FTypedefs.h new file mode 100644 index 0000000..4a24ca5 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FTypedefs.h @@ -0,0 +1,45 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +#ifndef Firebase_FTypedefs_h +#define Firebase_FTypedefs_h + +/** + * Stub... + */ +@class FIRDataSnapshot; +@class FIRDatabaseReference; +@class FAuthData; +@protocol FNode; + +// fbt = Firebase Block Typedef + +typedef void (^fbt_void_void)(void); +typedef void (^fbt_void_datasnapshot_nsstring) (FIRDataSnapshot *snapshot, NSString *prevName); +typedef void (^fbt_void_datasnapshot) (FIRDataSnapshot *snapshot); +typedef void (^fbt_void_user)(FAuthData *user); +typedef void (^fbt_void_nsstring_id)(NSString* status, id data); +typedef void (^fbt_void_nserror_id)(NSError* error, id data); +typedef void (^fbt_void_nserror)(NSError *error); +typedef void (^fbt_void_nserror_ref)(NSError* error, FIRDatabaseReference * ref); +typedef void (^fbt_void_nserror_user)(NSError* error, FAuthData * user); +typedef void (^fbt_void_nserror_json)(NSError* error, NSDictionary* json); +typedef void (^fbt_void_nsdictionary)(NSDictionary *data); +typedef id (^fbt_id_node_nsstring)(id node, NSString* childName); + +#endif diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FUtilities.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FUtilities.h new file mode 100644 index 0000000..f7fe7a5 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FUtilities.h @@ -0,0 +1,75 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FParsedUrl.h" + +@interface FUtilities : NSObject + ++ (NSArray *) splitString:(NSString *)str intoMaxSize:(const unsigned int)size; ++ (NSNumber *) LUIDGenerator; ++ (FParsedUrl *) parseUrl:(NSString *)url; ++ (NSString *) getJavascriptType:(id)obj; ++ (NSError *) errorForStatus:(NSString *)status andReason:(NSString *)reason; ++ (NSNumber *) intForString:(NSString *)string; ++ (NSString *) ieee754StringForNumber:(NSNumber *)val; ++ (void) setLoggingEnabled:(BOOL)enabled; ++ (BOOL) getLoggingEnabled; + ++ (NSString*) minName; ++ (NSString*) maxName; ++ (NSComparisonResult) compareKey:(NSString *)a toKey:(NSString *)b; ++ (NSComparator) stringComparator; ++ (NSComparator) keyComparator; + ++ (double)randomDouble; + +@end + +typedef enum { + FLogLevelDebug = 1, + FLogLevelInfo = 2, + FLogLevelWarn = 3, + FLogLevelError = 4, + FLogLevelNone = 5 +} FLogLevel; + +// Log tags +FOUNDATION_EXPORT NSString *const kFPersistenceLogTag; + +#define FFLog(code, format, ...) FFDebug((code), (format), ##__VA_ARGS__) + +#define FFDebug(code, format, ...) do { \ + if (FFIsLoggingEnabled(FLogLevelDebug)) { \ + FIRLogDebug(kFIRLoggerDatabase, (code), (format), ##__VA_ARGS__); \ + } \ +} while(0) + +#define FFInfo(code, format, ...) do { \ + if (FFIsLoggingEnabled(FLogLevelInfo)) { \ + FIRLogError(kFIRLoggerDatabase, (code), (format), ##__VA_ARGS__); \ + } \ +} while(0) + +#define FFWarn(code, format, ...) do { \ + if (FFIsLoggingEnabled(FLogLevelWarn)) { \ + FIRLogWarning(kFIRLoggerDatabase, (code), (format), ##__VA_ARGS__); \ + } \ +} while(0) + +BOOL FFIsLoggingEnabled(FLogLevel logLevel); +void firebaseUncaughtExceptionHandler(NSException *exception); +void firebaseJobsTroll(void); diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FUtilities.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FUtilities.m new file mode 100644 index 0000000..d0a9a43 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FUtilities.m @@ -0,0 +1,390 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FUtilities.h" +#import "FStringUtilities.h" +#import "FConstants.h" +#import "FAtomicNumber.h" + +#define ARC4RANDOM_MAX 0x100000000 +#define INTEGER_32_MIN (-2147483648) +#define INTEGER_32_MAX 2147483647 + +#pragma mark - +#pragma mark C functions + +static FLogLevel logLevel = FLogLevelInfo; // Default log level is info +static NSMutableDictionary* options = nil; + +BOOL FFIsLoggingEnabled(FLogLevel level) { + return level >= logLevel; +} + +void firebaseJobsTroll(void) { + FFLog(@"I-RDB095001", @"password super secret; JFK conspiracy; Hello there! Having fun digging through Firebase? We're always hiring! jobs@firebase.com"); +} + +#pragma mark - +#pragma mark Private property and singleton specification + +@interface FUtilities() { + +} + +@property (nonatomic, strong) FAtomicNumber* localUid; + ++ (FUtilities*)singleton; + +@end + +@implementation FUtilities + +@synthesize localUid; + +- (id)init +{ + self = [super init]; + if (self) { + self.localUid = [[FAtomicNumber alloc] init]; + } + return self; +} + +// TODO: We really want to be able to set the log level ++ (void) setLoggingEnabled:(BOOL)enabled { + logLevel = enabled ? FLogLevelDebug : FLogLevelInfo; +} + ++ (BOOL) getLoggingEnabled { + return logLevel == FLogLevelDebug; +} + ++ (FUtilities*) singleton +{ + static dispatch_once_t pred = 0; + __strong static id _sharedObject = nil; + dispatch_once(&pred, ^{ + _sharedObject = [[self alloc] init]; // or some other init method + }); + return _sharedObject; +} + +// Refactor as a category of NSString ++ (NSArray *) splitString:(NSString *) str intoMaxSize:(const unsigned int) size { + if(str.length <= size) { + return [NSArray arrayWithObject:str]; + } + + NSMutableArray* dataSegs = [[NSMutableArray alloc] init]; + for(int c = 0; c < str.length; c += size) { + if (c + size > str.length) { + int rangeStart = c; + unsigned long rangeLength = size - ((c + size) - str.length); + [dataSegs addObject:[str substringWithRange:NSMakeRange(rangeStart, rangeLength)]]; + } + else { + int rangeStart = c; + int rangeLength = size; + [dataSegs addObject:[str substringWithRange:NSMakeRange(rangeStart, rangeLength)]]; + } + } + return dataSegs; +} + ++ (NSNumber *) LUIDGenerator { + FUtilities* f = [FUtilities singleton]; + return [f.localUid getAndIncrement]; +} + ++ (NSString *) decodePath:(NSString *)pathString { + NSMutableArray* decodedPieces = [[NSMutableArray alloc] init]; + NSArray* pieces = [pathString componentsSeparatedByString:@"/"]; + for (NSString* piece in pieces) { + if (piece.length > 0) { + [decodedPieces addObject:[FStringUtilities urlDecoded:piece]]; + } + } + return [NSString stringWithFormat:@"/%@", [decodedPieces componentsJoinedByString:@"/"]]; +} + ++ (FParsedUrl *) parseUrl:(NSString *)url { + NSString* original = url; + //NSURL* n = [[NSURL alloc] initWithString:url] + + NSString* host; + NSString* namespace; + bool secure; + + NSString* scheme = nil; + FPath* path = nil; + NSRange colonIndex = [url rangeOfString:@"//"]; + if (colonIndex.location != NSNotFound) { + scheme = [url substringToIndex:colonIndex.location - 1]; + url = [url substringFromIndex:colonIndex.location + 2]; + } + NSInteger slashIndex = [url rangeOfString:@"/"].location; + if (slashIndex == NSNotFound) { + slashIndex = url.length; + } + + host = [[url substringToIndex:slashIndex] lowercaseString]; + if (slashIndex >= url.length) { + url = @""; + } else { + url = [url substringFromIndex:slashIndex + 1]; + } + + NSArray *parts = [host componentsSeparatedByString:@"."]; + if([parts count] == 3) { + NSInteger colonIndex = [[parts objectAtIndex:2] rangeOfString:@":"].location; + if (colonIndex != NSNotFound) { + // we have a port, use the provided scheme + secure = [scheme isEqualToString:@"https"]; + } else { + secure = YES; + } + + namespace = [[parts objectAtIndex:0] lowercaseString]; + NSString* pathString = [self decodePath:[NSString stringWithFormat:@"/%@", url]]; + path = [[FPath alloc] initWith:pathString]; + } + else { + [NSException raise:@"No Firebase database specified." format:@"No Firebase database found for input: %@", url]; + } + + FRepoInfo* repoInfo = [[FRepoInfo alloc] initWithHost:host isSecure:secure withNamespace:namespace]; + + FFLog(@"I-RDB095002", @"---> Parsed (%@) to: (%@,%@); ns=(%@); path=(%@)", original, [repoInfo description], [repoInfo connectionURL], repoInfo.namespace, [path description]); + + FParsedUrl* parsedUrl = [[FParsedUrl alloc] init]; + parsedUrl.repoInfo = repoInfo; + parsedUrl.path = path; + + return parsedUrl; +} + +/* + case str: JString => priString + "string:" + str.s; + case bool: JBool => priString + "boolean:" + bool.value; + case double: JDouble => priString + "number:" + double.num; + case int: JInt => priString + "number:" + int.num; + case _ => { + error("Leaf node has value '" + data.value + "' of invalid type '" + data.value.getClass.toString + "'"); + ""; + } + */ + ++ (NSString *) getJavascriptType:(id)obj { + if ([obj isKindOfClass:[NSDictionary class]]) { + return kJavaScriptObject; + } else if([obj isKindOfClass:[NSString class]]) { + return kJavaScriptString; + } + else if ([obj isKindOfClass:[NSNumber class]]) { + // We used to just compare to @encode(BOOL) as suggested at + // http://stackoverflow.com/questions/2518761/get-type-of-nsnumber, but on arm64, @encode(BOOL) returns "B" + // instead of "c" even though objCType still returns 'c' (signed char). So check both. + if(strcmp([obj objCType], @encode(BOOL)) == 0 || + strcmp([obj objCType], @encode(signed char)) == 0) { + return kJavaScriptBoolean; + } + else { + return kJavaScriptNumber; + } + } + else { + return kJavaScriptNull; + } +} + ++ (NSError *) errorForStatus:(NSString *)status andReason:(NSString *)reason { + static dispatch_once_t pred = 0; + __strong static NSDictionary* errorMap = nil; + __strong static NSDictionary* errorCodes = nil; + dispatch_once(&pred, ^{ + errorMap = @{ + @"permission_denied": @"Permission Denied", + @"unavailable": @"Service is unavailable", + kFErrorWriteCanceled: @"Write cancelled by user" + }; + errorCodes = @{ + @"permission_denied": @1, + @"unavailable": @2, + kFErrorWriteCanceled: @3 + }; + }); + + if ([status isEqualToString:kFWPResponseForActionStatusOk]) { + return nil; + } else { + NSInteger code; + NSString* desc = nil; + if (reason) { + desc = reason; + } else if ([errorMap objectForKey:status] != nil) { + desc = [errorMap objectForKey:status]; + } else { + desc = status; + } + + if ([errorCodes objectForKey:status] != nil) { + NSNumber* num = [errorCodes objectForKey:status]; + code = [num integerValue]; + } else { + // XXX what to do here? + code = 9999; + } + + return [[NSError alloc] initWithDomain:kFErrorDomain code:code userInfo:@{NSLocalizedDescriptionKey: desc}]; + } +} + ++ (NSNumber *) intForString:(NSString *)string { + static NSCharacterSet *notDigits = nil; + if (!notDigits) { + notDigits = [[NSCharacterSet decimalDigitCharacterSet] invertedSet]; + } + if ([string rangeOfCharacterFromSet:notDigits].length == 0) { + NSInteger num; + NSScanner* scanner = [NSScanner scannerWithString:string]; + if ([scanner scanInteger:&num]) { + return [NSNumber numberWithInteger:num]; + } + } + return nil; +} + ++ (NSString *) ieee754StringForNumber:(NSNumber *)val { + double d = [val doubleValue]; + NSData* data = [NSData dataWithBytes:&d length:sizeof(double)]; + NSMutableString* str = [[NSMutableString alloc] init]; + const unsigned char* buffer = (const unsigned char*)[data bytes]; + for (int i = 0; i < data.length; i++) { + unsigned char byte = buffer[7 - i]; + [str appendFormat:@"%02x", byte]; + } + return str; +} + +static inline BOOL tryParseStringToInt(__unsafe_unretained NSString* str, NSInteger* integer) { + // First do some cheap checks (NOTE: The below checks are significantly faster than an equivalent regex :-( ). + NSUInteger length = str.length; + if (length > 11 || length == 0) { + return NO; + } + long long value = 0; + BOOL negative = NO; + NSUInteger i = 0; + if ([str characterAtIndex:0] == '-') { + if (length == 1) { + return NO; + } + negative = YES; + i = 1; + } + for(; i < length; i++) { + unichar c = [str characterAtIndex:i]; + // Must be a digit, or '-' if it's the first char. + if (c < '0' || c > '9') { + return NO; + } else { + int charValue = c - '0'; + value = value*10 + charValue; + } + } + + value = (negative) ? -value : value; + + if (value < INTEGER_32_MIN || value > INTEGER_32_MAX) { + return NO; + } else { + *integer = (NSInteger)value; + return YES; + } +} + ++ (NSString *) maxName { + static dispatch_once_t once; + static NSString *maxName; + dispatch_once(&once, ^{ + maxName = [[NSString alloc] initWithFormat:@"[MAX_NAME]"]; + }); + return maxName; +} + ++ (NSString *) minName { + static dispatch_once_t once; + static NSString *minName; + dispatch_once(&once, ^{ + minName = [[NSString alloc] initWithFormat:@"[MIN_NAME]"]; + }); + return minName; +} + ++ (NSComparisonResult) compareKey:(NSString *)a toKey:(NSString *)b { + if (a == b) { + return NSOrderedSame; + } else if (a == [FUtilities minName] || b == [FUtilities maxName]) { + return NSOrderedAscending; + } else if (b == [FUtilities minName] || a == [FUtilities maxName]) { + return NSOrderedDescending; + } else { + NSInteger aAsInt, bAsInt; + if (tryParseStringToInt(a, &aAsInt)) { + if (tryParseStringToInt(b, &bAsInt)) { + if (aAsInt > bAsInt) { + return NSOrderedDescending; + } else if (aAsInt < bAsInt) { + return NSOrderedAscending; + } else if (a.length > b.length) { + return NSOrderedDescending; + } else if (a.length < b.length) { + return NSOrderedAscending; + } else { + return NSOrderedSame; + } + } else { + return (NSComparisonResult) NSOrderedAscending; + } + } else if (tryParseStringToInt(b, &bAsInt)) { + return (NSComparisonResult) NSOrderedDescending; + } else { + // Perform literal character by character search to prevent a > b && b > a issues. + // Note that calling -(NSString *)decomposedStringWithCanonicalMapping also works. + return [a compare:b options:NSLiteralSearch]; + } + } +} + ++ (NSComparator) keyComparator { + return ^NSComparisonResult(__unsafe_unretained NSString *a, __unsafe_unretained NSString *b) { + return [FUtilities compareKey:a toKey:b]; + }; +} + ++ (NSComparator) stringComparator { + return ^NSComparisonResult(__unsafe_unretained NSString *a, __unsafe_unretained NSString *b) { + return [a compare:b]; + }; +} + ++ (double) randomDouble { + return ((double) arc4random() / ARC4RANDOM_MAX); +} + +@end + diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FValidation.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FValidation.h new file mode 100644 index 0000000..faa8f76 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FValidation.h @@ -0,0 +1,45 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FPath.h" +#import "FIRDataEventType.h" +#import "FParsedUrl.h" +#import "FTypedefs.h" + +@interface FValidation : NSObject + ++ (void) validateFrom:(NSString *)fn writablePath:(FPath *)path; ++ (void) validateFrom:(NSString *)fn knownEventType:(FIRDataEventType)event; ++ (void) validateFrom:(NSString *)fn validPathString:(NSString *)pathString; ++ (void) validateFrom:(NSString *)fn validRootPathString:(NSString *)pathString; ++ (void) validateFrom:(NSString *)fn validKey:(NSString *)key; ++ (void) validateFrom:(NSString *)fn validURL:(FParsedUrl *)parsedUrl; + ++ (void) validateToken:(NSString *)token; + +// Functions for handling passing errors back ++ (void) handleError:(NSError *)error withUserCallback:(fbt_void_nserror_id)userCallback; ++ (void) handleError:(NSError *)error withSuccessCallback:(fbt_void_nserror)userCallback; + +// Functions used for validating while creating snapshots in FSnapshotUtilities ++ (BOOL) validateFrom:(NSString*)fn isValidLeafValue:(id)value withPath:(NSArray*)path; ++ (void) validateFrom:(NSString*)fn validDictionaryKey:(id)keyId withPath:(NSArray*)path; ++ (void) validateFrom:(NSString*)fn validUpdateDictionaryKey:(id)keyId withValue:(id)value; ++ (void) validateFrom:(NSString*)fn isValidPriorityValue:(id)value withPath:(NSArray*)path; ++ (BOOL) validatePriorityValue:value; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FValidation.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FValidation.m new file mode 100644 index 0000000..f088da2 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/FValidation.m @@ -0,0 +1,312 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FValidation.h" +#import "FConstants.h" +#import "FParsedUrl.h" +#import "FTypedefs.h" + + +// Have to escape: * ? + [ ( ) { } ^ $ | \ . / +// See: https://developer.apple.com/library/mac/#documentation/Foundation/Reference/NSRegularExpression_Class/Reference/Reference.html + +NSString *const kInvalidPathCharacters = @"[].#$"; +NSString *const kInvalidKeyCharacters = @"[].#$/"; + +@implementation FValidation + ++ (void) validateFrom:(NSString *)fn writablePath:(FPath *)path { + if([[path getFront] isEqualToString:kDotInfoPrefix]) { + @throw [[NSException alloc] initWithName:@"WritablePathValidation" reason:[NSString stringWithFormat:@"(%@) failed to path %@: Can't modify data under %@", fn, [path description], kDotInfoPrefix] userInfo:nil]; + } +} + ++ (void) validateFrom:(NSString*)fn knownEventType:(FIRDataEventType)event { + switch (event) { + case FIRDataEventTypeValue: + case FIRDataEventTypeChildAdded: + case FIRDataEventTypeChildChanged: + case FIRDataEventTypeChildMoved: + case FIRDataEventTypeChildRemoved: + return; + break; + default: + @throw [[NSException alloc] initWithName:@"KnownEventTypeValidation" reason:[NSString stringWithFormat:@"(%@) Unknown event type: %d", fn, (int) event] userInfo:nil]; + break; + } +} + ++ (BOOL) isValidPathString:(NSString *)pathString { + static dispatch_once_t token; + static NSCharacterSet *badPathChars = nil; + dispatch_once(&token, ^{ + badPathChars = [NSCharacterSet characterSetWithCharactersInString:kInvalidPathCharacters]; + }); + return pathString != nil && [pathString length] != 0 && + [pathString rangeOfCharacterFromSet:badPathChars].location == NSNotFound; +} + ++ (void) validateFrom:(NSString *)fn validPathString:(NSString *)pathString { + if(! [self isValidPathString:pathString]) { + @throw [[NSException alloc] initWithName:@"InvalidPathValidation" reason:[NSString stringWithFormat:@"(%@) Must be a non-empty string and not contain '.' '#' '$' '[' or ']'", fn] userInfo:nil]; + } +} + ++ (void) validateFrom:(NSString *)fn validRootPathString:(NSString *)pathString { + static dispatch_once_t token; + static NSRegularExpression *dotInfoRegex = nil; + dispatch_once(&token, ^{ + dotInfoRegex = [NSRegularExpression regularExpressionWithPattern:@"^\\/*\\.info(\\/|$)" options:0 error:nil]; + }); + + NSString *tempPath = pathString; + // HACK: Obj-C regex are kinda' slow. Do a plain string search first before bothering with the regex. + if ([pathString rangeOfString:@".info"].location != NSNotFound) { + tempPath = [dotInfoRegex stringByReplacingMatchesInString:pathString options:0 range:NSMakeRange(0, pathString.length) withTemplate:@"/"]; + } + [self validateFrom:fn validPathString:tempPath]; +} + ++ (BOOL) isValidKey:(NSString *)key { + static dispatch_once_t token; + static NSCharacterSet *badKeyChars = nil; + dispatch_once(&token, ^{ + badKeyChars = [NSCharacterSet characterSetWithCharactersInString:kInvalidKeyCharacters]; + }); + return key != nil && key.length > 0 && [key rangeOfCharacterFromSet:badKeyChars].location == NSNotFound; +} + ++ (void) validateFrom:(NSString *)fn validKey:(NSString *)key { + if (![self isValidKey:key]) { + @throw [[NSException alloc] initWithName:@"InvalidKeyValidation" reason:[NSString stringWithFormat:@"(%@) Must be a non-empty string and not contain '/' '.' '#' '$' '[' or ']'", fn] userInfo:nil]; + } +} + ++ (void) validateFrom:(NSString *)fn validURL:(FParsedUrl *)parsedUrl { + NSString* pathString = [parsedUrl.path description]; + [self validateFrom:fn validRootPathString:pathString]; +} + +#pragma mark - +#pragma mark Authentication validation + ++ (BOOL) stringNonempty:(NSString *)str { + return str != nil && ![str isKindOfClass:[NSNull class]] && str.length > 0; +} + ++ (void) validateToken:(NSString *)token { + if (![FValidation stringNonempty:token]) { + [NSException raise:NSInvalidArgumentException format:@"Can't have empty string or nil for custom token"]; + } +} + +#pragma mark - +#pragma mark Handling authentication errors + +/** +* This function immediately calls the callback. +* It assumes that it is not on FirebaseWorker thread. +* It assumes it's on a user-controlled thread. +*/ ++ (void) handleError:(NSError *)error withUserCallback:(fbt_void_nserror_id)userCallback { + if (userCallback) { + userCallback(error, nil); + } +} + +/** +* This function immediately calls the callback. +* It assumes that it is not on FirebaseWorker thread. +* It assumes it's on a user-controlled thread. +*/ ++ (void) handleError:(NSError *)error withSuccessCallback:(fbt_void_nserror)userCallback { + if (userCallback) { + userCallback(error); + } +} + +#pragma mark - +#pragma mark Snapshot validation + ++ (BOOL) validateFrom:(NSString*)fn isValidLeafValue:(id)value withPath:(NSArray*)path { + if ([value isKindOfClass:[NSString class]]) { + // Try to avoid conversion to bytes if possible + NSString* theString = value; + if ([theString maximumLengthOfBytesUsingEncoding:NSUTF8StringEncoding] > kFirebaseMaxLeafSize && + [theString lengthOfBytesUsingEncoding:NSUTF8StringEncoding] > kFirebaseMaxLeafSize) { + NSRange range; + range.location = 0; + range.length = MIN(path.count, 50); + NSString* pathString = [[path subarrayWithRange:range] componentsJoinedByString:@"."]; + @throw [[NSException alloc] initWithName:@"InvalidFirebaseData" reason:[NSString stringWithFormat:@"(%@) String exceeds max size of %u utf8 bytes: %@", fn, (int)kFirebaseMaxLeafSize, pathString] userInfo:nil]; + } + return YES; + } + + else if ([value isKindOfClass:[NSNumber class]]) { + // Cannot store NaN, but otherwise can store NSNumbers. + if ([[NSDecimalNumber notANumber] isEqualToNumber:value]) { + NSRange range; + range.location = 0; + range.length = MIN(path.count, 50); + NSString* pathString = [[path subarrayWithRange:range] componentsJoinedByString:@"."]; + @throw [[NSException alloc] initWithName:@"InvalidFirebaseData" reason:[NSString stringWithFormat:@"(%@) Cannot store NaN at path: %@.", fn, pathString] userInfo:nil]; + } + return YES; + } + + else if ([value isKindOfClass:[NSDictionary class]]) { + NSDictionary* dval = value; + if (dval[kServerValueSubKey] != nil) { + if ([dval count] > 1) { + NSRange range; + range.location = 0; + range.length = MIN(path.count, 50); + NSString* pathString = [[path subarrayWithRange:range] componentsJoinedByString:@"."]; + @throw [[NSException alloc] initWithName:@"InvalidFirebaseData" reason:[NSString stringWithFormat:@"(%@) Cannot store other keys with server value keys.%@.", fn, pathString] userInfo:nil]; + } + return YES; + } + return NO; + } + + else if (value == [NSNull null] || value == nil) { + // Null is valid type to store at leaf + return YES; + } + + return NO; +} + ++ (NSString*) parseAndValidateKey:(id)keyId fromFunction:(NSString*)fn path:(NSArray*)path { + if (![keyId isKindOfClass:[NSString class]]) { + NSRange range; + range.location = 0; + range.length = MIN(path.count, 50); + NSString* pathString = [[path subarrayWithRange:range] componentsJoinedByString:@"."]; + @throw [[NSException alloc] initWithName:@"InvalidFirebaseData" reason:[NSString stringWithFormat:@"(%@) Non-string keys are not allowed in object at path: %@", fn, pathString] userInfo:nil]; + } + return (NSString*)keyId; +} + ++ (void) validateFrom:(NSString*)fn validDictionaryKey:(id)keyId withPath:(NSArray*)path { + NSString *key = [self parseAndValidateKey:keyId fromFunction:fn path:path]; + if (![key isEqualToString:kPayloadPriority] && ![key isEqualToString:kPayloadValue] && ![key isEqualToString:kServerValueSubKey] && ![FValidation isValidKey:key]) { + NSRange range; + range.location = 0; + range.length = MIN(path.count, 50); + NSString *pathString = [[path subarrayWithRange:range] componentsJoinedByString:@"."]; + @throw [[NSException alloc] initWithName:@"InvalidFirebaseData" reason:[NSString stringWithFormat:@"(%@) Invalid key in object at path: %@. Keys must be non-empty and cannot contain '/' '.' '#' '$' '[' or ']'", fn, pathString] userInfo:nil]; + } +} + ++ (void) validateFrom:(NSString*)fn validUpdateDictionaryKey:(id)keyId withValue:(id)value { + FPath *path = [FPath pathWithString:[self parseAndValidateKey:keyId fromFunction:fn path:@[]]]; + __block NSInteger keyNum = 0; + [path enumerateComponentsUsingBlock:^void (NSString *key, BOOL *stop) { + if ([key isEqualToString:kPayloadPriority] && keyNum == [path length] - 1) { + [self validateFrom:fn isValidPriorityValue:value withPath:@[]]; + } else { + keyNum++; + + if (![FValidation isValidKey:key]) { + @throw [[NSException alloc] initWithName:@"InvalidFirebaseData" reason:[NSString stringWithFormat:@"(%@) Invalid key in object. Keys must be non-empty and cannot contain '.' '#' '$' '[' or ']'", fn] userInfo:nil]; + } + } + }]; +} + ++ (void) validateFrom:(NSString*)fn isValidPriorityValue:(id)value withPath:(NSArray*)path { + [self validateFrom:fn isValidPriorityValue:value withPath:path throwError:YES]; +} + +/** +* Returns YES if priority is valid. +*/ ++ (BOOL)validatePriorityValue:value { + return [self validateFrom:nil isValidPriorityValue:value withPath:nil throwError:NO]; +} + +/** +* Helper for validating priorities. If passed YES for throwError, it'll throw descriptive errors on validation +* problems. Else, it'll just return YES/NO. +*/ ++ (BOOL) validateFrom:(NSString*)fn isValidPriorityValue:(id)value withPath:(NSArray*)path throwError:(BOOL)throwError { + if ([value isKindOfClass:[NSNumber class]]) { + if ([[NSDecimalNumber notANumber] isEqualToNumber:value]) { + if (throwError) { + NSRange range; + range.location = 0; + range.length = MIN(path.count, 50); + NSString *pathString = [[path subarrayWithRange:range] componentsJoinedByString:@"."]; + @throw [[NSException alloc] initWithName:@"InvalidFirebaseData" reason:[NSString stringWithFormat:@"(%@) Cannot store NaN as priority at path: %@.", fn, pathString] userInfo:nil]; + } else { + return NO; + } + } else if (value == (id) kCFBooleanFalse || value == (id) kCFBooleanTrue) { + if (throwError) { + NSRange range; + range.location = 0; + range.length = MIN(path.count, 50); + NSString *pathString = [[path subarrayWithRange:range] componentsJoinedByString:@"."]; + @throw [[NSException alloc] initWithName:@"InvalidFirebaseData" reason:[NSString stringWithFormat:@"(%@) Cannot store true/false as priority at path: %@.", fn, pathString] userInfo:nil]; + } else { + return NO; + } + } + } + else if ([value isKindOfClass:[NSDictionary class]]) { + NSDictionary *dval = value; + if (dval[kServerValueSubKey] != nil) { + if ([dval count] > 1) { + if (throwError) { + NSRange range; + range.location = 0; + range.length = MIN(path.count, 50); + NSString *pathString = [[path subarrayWithRange:range] componentsJoinedByString:@"."]; + @throw [[NSException alloc] initWithName:@"InvalidFirebaseData" reason:[NSString stringWithFormat:@"(%@) Cannot store other keys with server value keys as priority at path: %@.", fn, pathString] userInfo:nil]; + } else { + return NO; + } + } + } else { + if (throwError) { + NSRange range; + range.location = 0; + range.length = MIN(path.count, 50); + NSString *pathString = [[path subarrayWithRange:range] componentsJoinedByString:@"."]; + @throw [[NSException alloc] initWithName:@"InvalidFirebaseData" reason:[NSString stringWithFormat:@"(%@) Cannot store an NSDictionary as priority at path: %@.", fn, pathString] userInfo:nil]; + } else { + return NO; + } + } + } + else if ([value isKindOfClass:[NSArray class]]) { + if (throwError) { + NSRange range; + range.location = 0; + range.length = MIN(path.count, 50); + NSString *pathString = [[path subarrayWithRange:range] componentsJoinedByString:@"."]; + @throw [[NSException alloc] initWithName:@"InvalidFirebaseData" reason:[NSString stringWithFormat:@"(%@) Cannot store an NSArray as priority at path: %@.", fn, pathString] userInfo:nil]; + } else { + return NO; + } + } + + // It's valid! + return YES; +} +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleBoolBlock.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleBoolBlock.h new file mode 100644 index 0000000..bceeed2 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleBoolBlock.h @@ -0,0 +1,25 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FTypedefs.h" + +@interface FTupleBoolBlock : NSObject + +@property (nonatomic, readwrite) BOOL boolean; +@property (nonatomic, copy) fbt_void_void block; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleBoolBlock.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleBoolBlock.m new file mode 100644 index 0000000..c4cd8bf --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleBoolBlock.m @@ -0,0 +1,24 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FTupleBoolBlock.h" + +@implementation FTupleBoolBlock + +@synthesize boolean; +@synthesize block; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleCallbackStatus.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleCallbackStatus.h new file mode 100644 index 0000000..6ec2375 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleCallbackStatus.h @@ -0,0 +1,24 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FTypedefs_Private.h" + +@interface FTupleCallbackStatus : NSObject +@property (nonatomic, copy) fbt_void_nsstring_nsstring block; +@property (nonatomic) NSString* status; +@property (nonatomic) NSString* errorReason; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleCallbackStatus.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleCallbackStatus.m new file mode 100644 index 0000000..05914bf --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleCallbackStatus.m @@ -0,0 +1,22 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FTupleCallbackStatus.h" + +@implementation FTupleCallbackStatus +@synthesize block; +@synthesize status; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleFirebase.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleFirebase.h new file mode 100644 index 0000000..ff84bbb --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleFirebase.h @@ -0,0 +1,26 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FIRDatabaseReference.h" + +@interface FTupleFirebase : NSObject + +@property (nonatomic, strong) FIRDatabaseReference * one; +@property (nonatomic, strong) FIRDatabaseReference * two; +@property (nonatomic, strong) FIRDatabaseReference * three; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleFirebase.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleFirebase.m new file mode 100644 index 0000000..3956f8b --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleFirebase.m @@ -0,0 +1,25 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FTupleFirebase.h" + +@implementation FTupleFirebase + +@synthesize one; +@synthesize two; +@synthesize three; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleNodePath.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleNodePath.h new file mode 100644 index 0000000..fbf62c7 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleNodePath.h @@ -0,0 +1,28 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FPath.h" +#import "FNode.h" + +@interface FTupleNodePath : NSObject + +@property (nonatomic, strong) FPath* path; +@property (nonatomic, strong) id node; + +- (id) initWithNode:(id)aNode andPath:(FPath *)aPath; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleNodePath.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleNodePath.m new file mode 100644 index 0000000..eefc0c2 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleNodePath.m @@ -0,0 +1,33 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FTupleNodePath.h" + +@implementation FTupleNodePath + +@synthesize path; +@synthesize node; + +- (id) initWithNode:(id)aNode andPath:(FPath *)aPath { + self = [super init]; + if (self) { + self.path = aPath; + self.node = aNode; + } + return self; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleObjectNode.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleObjectNode.h new file mode 100644 index 0000000..6fcb746 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleObjectNode.h @@ -0,0 +1,27 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FNode.h" + +@interface FTupleObjectNode : NSObject + +- (id)initWithObject:(id)aObj andNode:(id)aNode; + +@property (nonatomic, strong) id node; +@property (nonatomic, strong) id obj; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleObjectNode.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleObjectNode.m new file mode 100644 index 0000000..4c533b0 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleObjectNode.m @@ -0,0 +1,32 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#import "FTupleObjectNode.h" + +@implementation FTupleObjectNode + +@synthesize obj; +@synthesize node; + +- (id)initWithObject:(id)aObj andNode:(id)aNode { + self = [super init]; + if (self) { + self.obj = aObj; + self.node = aNode; + } + return self; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleObjects.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleObjects.h new file mode 100644 index 0000000..4ff1fcf --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleObjects.h @@ -0,0 +1,24 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@interface FTupleObjects : NSObject + +@property (nonatomic, strong) id objA; +@property (nonatomic, strong) id objB; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleObjects.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleObjects.m new file mode 100644 index 0000000..a9e4c88 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleObjects.m @@ -0,0 +1,24 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FTupleObjects.h" + +@implementation FTupleObjects + +@synthesize objA; +@synthesize objB; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleOnDisconnect.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleOnDisconnect.h new file mode 100644 index 0000000..91ad5e4 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleOnDisconnect.h @@ -0,0 +1,27 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FTypedefs_Private.h" + +@interface FTupleOnDisconnect : NSObject + +@property (strong, nonatomic) NSString* pathString; +@property (strong, nonatomic) NSString* action; +@property (strong, nonatomic) id data; +@property (strong, nonatomic) fbt_void_nsstring_nsstring onComplete; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleOnDisconnect.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleOnDisconnect.m new file mode 100644 index 0000000..bd45822 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleOnDisconnect.m @@ -0,0 +1,26 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FTupleOnDisconnect.h" + +@implementation FTupleOnDisconnect + +@synthesize pathString; +@synthesize action; +@synthesize data; +@synthesize onComplete; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTuplePathValue.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTuplePathValue.h new file mode 100644 index 0000000..f7ed423 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTuplePathValue.h @@ -0,0 +1,25 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@class FPath; + +@interface FTuplePathValue : NSObject +@property (nonatomic, strong, readonly) FPath *path; +@property (nonatomic, strong, readonly) id value; +- (id) initWithPath:(FPath *)aPath value:(id)aValue; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTuplePathValue.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTuplePathValue.m new file mode 100644 index 0000000..49240aa --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTuplePathValue.m @@ -0,0 +1,38 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FTuplePathValue.h" +#import "FPath.h" + +@interface FTuplePathValue () +@property (nonatomic, strong, readwrite) id value; +@property (nonatomic, strong, readwrite) FPath *path; +@end + +@implementation FTuplePathValue +@synthesize path; +@synthesize value; + +- (id) initWithPath:(FPath *)aPath value:(id)aValue { + self = [super init]; + if (self) { + self.value = aValue; + self.path = aPath; + } + return self; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleRemovedQueriesEvents.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleRemovedQueriesEvents.h new file mode 100644 index 0000000..f986916 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleRemovedQueriesEvents.h @@ -0,0 +1,30 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import + +@interface FTupleRemovedQueriesEvents : NSObject +/** +* `FIRDatabaseQuery`s removed with [SyncPoint removeEventRegistration:] +*/ +@property (nonatomic, strong, readonly) NSArray *removedQueries; +/** +* cancel events as FEvent +*/ +@property (nonatomic, strong, readonly) NSArray *cancelEvents; + +- (id) initWithRemovedQueries:(NSArray *)removed cancelEvents:(NSArray *)events; +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleRemovedQueriesEvents.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleRemovedQueriesEvents.m new file mode 100644 index 0000000..818d16b --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleRemovedQueriesEvents.m @@ -0,0 +1,37 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FTupleRemovedQueriesEvents.h" + +@interface FTupleRemovedQueriesEvents () +@property (nonatomic, strong, readwrite) NSArray *removedQueries; +@property (nonatomic, strong, readwrite) NSArray *cancelEvents; +@end + +@implementation FTupleRemovedQueriesEvents +@synthesize removedQueries; +@synthesize cancelEvents; + +- (id) initWithRemovedQueries:(NSArray *)removed cancelEvents:(NSArray *)events { + self = [super init]; + if (self) { + self.removedQueries = removed; + self.cancelEvents = events; + } + return self; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleSetIdPath.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleSetIdPath.h new file mode 100644 index 0000000..5133d6d --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleSetIdPath.h @@ -0,0 +1,27 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FPath.h" + +@interface FTupleSetIdPath : NSObject + +- (id) initWithSetId:(NSNumber *)aSetId andPath:(FPath *)aPath; + +@property (strong, nonatomic) NSNumber* setId; +@property (strong, nonatomic) FPath* path; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleSetIdPath.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleSetIdPath.m new file mode 100644 index 0000000..5d3312b --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleSetIdPath.m @@ -0,0 +1,33 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FTupleSetIdPath.h" + +@implementation FTupleSetIdPath + +@synthesize path; +@synthesize setId; + +- (id) initWithSetId:(NSNumber *)aSetId andPath:(FPath *)aPath { + self = [super init]; + if (self) { + self.setId = aSetId; + self.path = aPath; + } + return self; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleStringNode.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleStringNode.h new file mode 100644 index 0000000..e3fec80 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleStringNode.h @@ -0,0 +1,27 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FNode.h" + +@interface FTupleStringNode : NSObject + +- (id)initWithString:(NSString *)aString andNode:(id)aNode; + +@property (nonatomic, strong) id node; +@property (nonatomic, strong) NSString* string; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleStringNode.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleStringNode.m new file mode 100644 index 0000000..f058a8e --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleStringNode.m @@ -0,0 +1,34 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FTupleStringNode.h" + +@implementation FTupleStringNode + +@synthesize string; +@synthesize node; + +- (id)initWithString:(NSString *)aString andNode:(id)aNode { + self = [super init]; + if (self) { + self.string = aString; + self.node = aNode; + } + return self; +} + + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleTSN.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleTSN.h new file mode 100644 index 0000000..bc62b2d --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleTSN.h @@ -0,0 +1,25 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FTupleStringNode.h" + +@interface FTupleTSN : NSObject + +@property (nonatomic, strong) FTupleStringNode* from; +@property (nonatomic, strong) FTupleStringNode* to; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleTSN.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleTSN.m new file mode 100644 index 0000000..348c319 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleTSN.m @@ -0,0 +1,24 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FTupleTSN.h" + +@implementation FTupleTSN + +@synthesize from; +@synthesize to; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleTransaction.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleTransaction.h new file mode 100644 index 0000000..c9dcf4b --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleTransaction.h @@ -0,0 +1,74 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FPath.h" +#import "FTypedefs_Private.h" +#import "FTypedefs.h" + +@interface FTupleTransaction : NSObject + +@property (nonatomic, strong) FPath* path; +@property (nonatomic, copy) fbt_transactionresult_mutabledata update; +@property (nonatomic, copy) fbt_void_nserror_bool_datasnapshot onComplete; +@property (nonatomic) FTransactionStatus status; + +/** +* Used when combining transaction at different locations to figure out which one goes first. +*/ +@property (nonatomic, strong) NSNumber* order; +/** +* Whether to raise local events for this transaction +*/ +@property (nonatomic) BOOL applyLocally; + +/** +* Count how many times we've retried the transaction +*/ +@property (nonatomic) int retryCount; + +/** +* Function to call to clean up our listener +*/ +@property (nonatomic, copy) fbt_void_void unwatcher; + +/** +* Stores why a transaction was aborted +*/ +@property (nonatomic, strong, readonly) NSString* abortStatus; +@property (nonatomic, strong, readonly) NSString* abortReason; + +- (void)setAbortStatus:(NSString *)abortStatus reason:(NSString *)reason; +- (NSError *)abortError; + +@property (nonatomic, strong) NSNumber *currentWriteId; + +/** +* Stores the input snapshot, before the update +*/ +@property (nonatomic, strong) id currentInputSnapshot; + +/** +* Stores the unresolved (for server values) output snapshot, after the update +*/ +@property (nonatomic, strong) id currentOutputSnapshotRaw; + +/** + * Stores the resolved (for server values) output snapshot, after the update + */ +@property (nonatomic, strong) id currentOutputSnapshotResolved; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleTransaction.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleTransaction.m new file mode 100644 index 0000000..bcff54e --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleTransaction.m @@ -0,0 +1,38 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FTupleTransaction.h" +#import "FUtilities.h" + +@interface FTupleTransaction () + +@property (nonatomic, strong) NSString *abortStatus; +@property (nonatomic, strong) NSString *abortReason; + +@end + +@implementation FTupleTransaction + +- (void)setAbortStatus:(NSString *)abortStatus reason:(NSString *)reason { + self.abortStatus = abortStatus; + self.abortReason = reason; +} + +- (NSError *)abortError { + return (self.abortStatus != nil) ? [FUtilities errorForStatus:self.abortStatus andReason:self.abortReason] : nil; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleUserCallback.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleUserCallback.h new file mode 100644 index 0000000..d598217 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleUserCallback.h @@ -0,0 +1,31 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import +#import "FTypedefs.h" +#import "FQueryParams.h" + +@interface FTupleUserCallback : NSObject + +- (id) initWithHandle:(NSUInteger)handle; + +@property (nonatomic, copy) fbt_void_datasnapshot_nsstring datasnapshotPrevnameCallback; +@property (nonatomic, copy) fbt_void_datasnapshot datasnapshotCallback; +@property (nonatomic, copy) fbt_void_nserror cancelCallback; +@property (nonatomic, copy) FQueryParams* queryParams; +@property (nonatomic) NSUInteger handle; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleUserCallback.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleUserCallback.m new file mode 100644 index 0000000..dc33bbd --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/Utilities/Tuples/FTupleUserCallback.m @@ -0,0 +1,35 @@ +/* + * Copyright 2017 Google + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "FTupleUserCallback.h" + +@implementation FTupleUserCallback + +@synthesize datasnapshotCallback; +@synthesize datasnapshotPrevnameCallback; +@synthesize cancelCallback; +@synthesize queryParams; +@synthesize handle; + +- (id) initWithHandle:(NSUInteger)theHandle { + self = [super init]; + if (self) { + self.handle = theHandle; + } + return self; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FArraySortedDictionary.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FArraySortedDictionary.h new file mode 100644 index 0000000..3ab7476 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FArraySortedDictionary.h @@ -0,0 +1,21 @@ +#import +#import "FImmutableSortedDictionary.h" + +/** + * This is an array backed implementation of FImmutableSortedDictionary. It uses arrays and linear lookups to achieve + * good memory efficiency while maintaining good performance for small collections. It also uses less allocations than + * a comparable red black tree. To avoid degrading performance with increasing collection size it will automatically + * convert to a FTreeSortedDictionary after an insert call above a certain threshold. + */ +@interface FArraySortedDictionary : FImmutableSortedDictionary + ++ (FArraySortedDictionary *)fromDictionary:(NSDictionary *)dictionary withComparator:(NSComparator)comparator; + +- (id)initWithComparator:(NSComparator)comparator; + +#pragma mark - +#pragma mark Properties + +@property (nonatomic, copy, readonly) NSComparator comparator; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FArraySortedDictionary.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FArraySortedDictionary.m new file mode 100644 index 0000000..15d2d8b --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FArraySortedDictionary.m @@ -0,0 +1,266 @@ +#import "FArraySortedDictionary.h" +#import "FTreeSortedDictionary.h" + +@interface FArraySortedDictionaryEnumerator : NSEnumerator + +- (id)initWithKeys:(NSArray *)keys startPos:(NSInteger)pos isReverse:(BOOL)reverse; +- (id)nextObject; + +@property (nonatomic) NSInteger pos; +@property (nonatomic) BOOL reverse; +@property (nonatomic, strong) NSArray *keys; + +@end + +@implementation FArraySortedDictionaryEnumerator + +- (id)initWithKeys:(NSArray *)keys startPos:(NSInteger)pos isReverse:(BOOL)reverse +{ + self = [super init]; + if (self != nil) { + self->_pos = pos; + self->_reverse = reverse; + self->_keys = keys; + } + return self; +} + +- (id)nextObject +{ + NSInteger pos = self->_pos; + if (pos >= 0 && pos < self.keys.count) { + if (self.reverse) { + self->_pos--; + } else { + self->_pos++; + } + return self.keys[pos]; + } else { + return nil; + } +} + +@end + +@interface FArraySortedDictionary () + +- (id)initWithComparator:(NSComparator)comparator; + +@property (nonatomic, copy, readwrite) NSComparator comparator; +@property (nonatomic, strong) NSArray *keys; +@property (nonatomic, strong) NSArray *values; + +@end + +@implementation FArraySortedDictionary + ++ (FArraySortedDictionary *)fromDictionary:(NSDictionary *)dictionary withComparator:(NSComparator)comparator +{ + NSMutableArray *keys = [NSMutableArray arrayWithCapacity:dictionary.count]; + [dictionary enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) { + [keys addObject:key]; + }]; + [keys sortUsingComparator:comparator]; + + [keys enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) { + if (idx > 0) { + if (comparator(keys[idx - 1], obj) != NSOrderedAscending) { + [NSException raise:NSInvalidArgumentException format:@"Can't create FImmutableSortedDictionary with keys with same ordering!"]; + } + } + }]; + + NSMutableArray *values = [NSMutableArray arrayWithCapacity:keys.count]; + NSInteger pos = 0; + for (id key in keys) { + values[pos++] = dictionary[key]; + } + NSAssert(values.count == keys.count, @"We added as many keys as values"); + return [[FArraySortedDictionary alloc] initWithComparator:comparator keys:keys values:values]; +} + +- (id)initWithComparator:(NSComparator)comparator +{ + self = [super init]; + if (self != nil) { + self->_comparator = comparator; + self->_keys = [NSArray array]; + self->_values = [NSArray array]; + } + return self; +} + +- (id)initWithComparator:(NSComparator)comparator keys:(NSArray *)keys values:(NSArray *)values +{ + self = [super init]; + if (self != nil) { + self->_comparator = comparator; + self->_keys = keys; + self->_values = values; + } + return self; +} + +- (NSInteger) findInsertPositionForKey:(id)key +{ + NSInteger newPos = 0; + while (newPos < self.keys.count && self.comparator(self.keys[newPos], key) < NSOrderedSame) { + newPos++; + } + return newPos; +} + +- (NSInteger) findKey:(id)key +{ + if (key == nil) { + return NSNotFound; + } + for (NSInteger pos = 0; pos < self.keys.count; pos++) { + NSComparisonResult result = self.comparator(key, self.keys[pos]); + if (result == NSOrderedSame) { + return pos; + } else if (result == NSOrderedAscending) { + return NSNotFound; + } + } + return NSNotFound; +} + +- (FImmutableSortedDictionary *) insertKey:(id)key withValue:(id)value +{ + NSInteger pos = [self findKey:key]; + + if (pos == NSNotFound) { + /* + * If we're above the threshold we want to convert it to a tree backed implementation to not have + * degrading performance + */ + if (self.count >= SORTED_DICTIONARY_ARRAY_TO_RB_TREE_SIZE_THRESHOLD) { + NSMutableDictionary *dict = [NSMutableDictionary dictionaryWithCapacity:self.count]; + for (NSInteger i = 0; i < self.keys.count; i++) { + dict[self.keys[i]] = self.values[i]; + } + dict[key] = value; + return [FTreeSortedDictionary fromDictionary:dict withComparator:self.comparator]; + } else { + NSMutableArray *newKeys = [NSMutableArray arrayWithArray:self.keys]; + NSMutableArray *newValues = [NSMutableArray arrayWithArray:self.values]; + NSInteger newPos = [self findInsertPositionForKey:key]; + [newKeys insertObject:key atIndex:newPos]; + [newValues insertObject:value atIndex:newPos]; + return [[FArraySortedDictionary alloc] initWithComparator:self.comparator keys:newKeys values:newValues]; + } + } else { + NSMutableArray *newKeys = [NSMutableArray arrayWithArray:self.keys]; + NSMutableArray *newValues = [NSMutableArray arrayWithArray:self.values]; + newKeys[pos] = key; + newValues[pos] = value; + return [[FArraySortedDictionary alloc] initWithComparator:self.comparator keys:newKeys values:newValues]; + } +} + +- (FImmutableSortedDictionary *) removeKey:(id)key +{ + NSInteger pos = [self findKey:key]; + if (pos == NSNotFound) { + return self; + } else { + NSMutableArray *newKeys = [NSMutableArray arrayWithArray:self.keys]; + NSMutableArray *newValues = [NSMutableArray arrayWithArray:self.values]; + [newKeys removeObjectAtIndex:pos]; + [newValues removeObjectAtIndex:pos]; + return [[FArraySortedDictionary alloc] initWithComparator:self.comparator keys:newKeys values:newValues]; + } +} + +- (id) get:(id)key +{ + NSInteger pos = [self findKey:key]; + if (pos == NSNotFound) { + return nil; + } else { + return self.values[pos]; + } +} + +- (id) getPredecessorKey:(id) key { + NSInteger pos = [self findKey:key]; + if (pos == NSNotFound) { + [NSException raise:NSInternalInconsistencyException format:@"Can't get predecessor key for non-existent key"]; + return nil; + } else if (pos == 0) { + return nil; + } else { + return self.keys[pos - 1]; + } +} + +- (BOOL) isEmpty { + return self.keys.count == 0; +} + +- (int) count +{ + return (int)self.keys.count; +} + +- (id) minKey +{ + return [self.keys firstObject]; +} + +- (id) maxKey +{ + return [self.keys lastObject]; +} + +- (void) enumerateKeysAndObjectsUsingBlock:(void (^)(id, id, BOOL *))block +{ + [self enumerateKeysAndObjectsReverse:NO usingBlock:block]; +} + +- (void) enumerateKeysAndObjectsReverse:(BOOL)reverse usingBlock:(void (^)(id, id, BOOL *))block +{ + if (reverse) { + BOOL stop = NO; + for (NSInteger i = self.keys.count - 1; i >= 0; i--) { + block(self.keys[i], self.values[i], &stop); + if (stop) return; + } + } else { + BOOL stop = NO; + for (NSInteger i = 0; i < self.keys.count; i++) { + block(self.keys[i], self.values[i], &stop); + if (stop) return; + } + } +} + +- (BOOL) contains:(id)key { + return [self findKey:key] != NSNotFound; +} + +- (NSEnumerator *) keyEnumerator { + return [self.keys objectEnumerator]; +} + +- (NSEnumerator *) keyEnumeratorFrom:(id)startKey { + NSInteger startPos = [self findInsertPositionForKey:startKey]; + return [[FArraySortedDictionaryEnumerator alloc] initWithKeys:self.keys startPos:startPos isReverse:NO]; +} + +- (NSEnumerator *) reverseKeyEnumerator { + return [self.keys reverseObjectEnumerator]; +} + +- (NSEnumerator *) reverseKeyEnumeratorFrom:(id)startKey { + NSInteger startPos = [self findInsertPositionForKey:startKey]; + // if there's no exact match, findKeyOrInsertPosition will return the index *after* the closest match, but + // since this is a reverse iterator, we want to start just *before* the closest match. + if (startPos >= self.keys.count || self.comparator(self.keys[startPos], startKey) != NSOrderedSame) { + startPos -= 1; + } + return [[FArraySortedDictionaryEnumerator alloc] initWithKeys:self.keys startPos:startPos isReverse:YES]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FImmutableSortedDictionary.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FImmutableSortedDictionary.h new file mode 100644 index 0000000..d6687d8 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FImmutableSortedDictionary.h @@ -0,0 +1,54 @@ +/** + * @fileoverview Implementation of an immutable SortedMap using a Left-leaning + * Red-Black Tree, adapted from the implementation in Mugs + * (http://mads379.github.com/mugs/) by Mads Hartmann Jensen + * (mads379@gmail.com). + * + * Original paper on Left-leaning Red-Black Trees: + * http://www.cs.princeton.edu/~rs/talks/LLRB/LLRB.pdf + * + * Invariant 1: No red node has a red child + * Invariant 2: Every leaf path has the same number of black nodes + * Invariant 3: Only the left child can be red (left leaning) + */ + +#import + +/** + * The size threshold where we use a tree backed sorted map instead of an array backed sorted map. + * This is a more or less arbitrary chosen value, that was chosen to be large enough to fit most of object kind + * of Firebase data, but small enough to not notice degradation in performance for inserting and lookups. + * Feel free to empirically determine this constant, but don't expect much gain in real world performance. + */ +#define SORTED_DICTIONARY_ARRAY_TO_RB_TREE_SIZE_THRESHOLD 25 + +@interface FImmutableSortedDictionary : NSObject + ++ (FImmutableSortedDictionary *)dictionaryWithComparator:(NSComparator)comparator; ++ (FImmutableSortedDictionary *)fromDictionary:(NSDictionary *)dictionary withComparator:(NSComparator)comparator; + +- (FImmutableSortedDictionary *) insertKey:(id)aKey withValue:(id)aValue; +- (FImmutableSortedDictionary *) removeKey:(id)aKey; +- (id) get:(id) key; +- (id) getPredecessorKey:(id) key; +- (BOOL) isEmpty; +- (int) count; +- (id) minKey; +- (id) maxKey; +- (void) enumerateKeysAndObjectsUsingBlock:(void(^)(id key, id value, BOOL *stop))block; +- (void) enumerateKeysAndObjectsReverse:(BOOL)reverse usingBlock:(void(^)(id key, id value, BOOL *stop))block; +- (BOOL) contains:(id)key; +- (NSEnumerator *) keyEnumerator; +- (NSEnumerator *) keyEnumeratorFrom:(id)startKey; +- (NSEnumerator *) reverseKeyEnumerator; +- (NSEnumerator *) reverseKeyEnumeratorFrom:(id)startKey; + +#pragma mark - +#pragma mark Methods similar to NSMutableDictionary + +- (FImmutableSortedDictionary *) setObject:(id)anObject forKey:(id)aKey; +- (id) objectForKey:(id)key; +- (FImmutableSortedDictionary *) removeObjectForKey:(id)aKey; + +@end + diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FImmutableSortedDictionary.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FImmutableSortedDictionary.m new file mode 100644 index 0000000..659c63b --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FImmutableSortedDictionary.m @@ -0,0 +1,142 @@ +#import "FImmutableSortedDictionary.h" +#import "FArraySortedDictionary.h" +#import "FTreeSortedDictionary.h" + +#define THROW_ABSTRACT_METHOD_EXCEPTION(sel) do { \ + @throw [NSException exceptionWithName:NSInternalInconsistencyException \ + reason:[NSString stringWithFormat:@"You must override %@ in a subclass", NSStringFromSelector(sel)] \ + userInfo:nil]; \ +} while(0) + +@implementation FImmutableSortedDictionary + ++ (FImmutableSortedDictionary *)dictionaryWithComparator:(NSComparator)comparator +{ + return [[FArraySortedDictionary alloc] initWithComparator:comparator]; +} + ++ (FImmutableSortedDictionary *)fromDictionary:(NSDictionary *)dictionary withComparator:(NSComparator)comparator +{ + if (dictionary.count <= SORTED_DICTIONARY_ARRAY_TO_RB_TREE_SIZE_THRESHOLD) { + return [FArraySortedDictionary fromDictionary:dictionary withComparator:comparator]; + } else { + return [FTreeSortedDictionary fromDictionary:dictionary withComparator:comparator]; + } +} + +- (FImmutableSortedDictionary *) insertKey:(id)aKey withValue:(id)aValue { + THROW_ABSTRACT_METHOD_EXCEPTION(@selector(insertKey:withValue:)); +} + +- (FImmutableSortedDictionary *) removeKey:(id)aKey { + THROW_ABSTRACT_METHOD_EXCEPTION(@selector(removeKey:)); +} + +- (id) get:(id) key { + THROW_ABSTRACT_METHOD_EXCEPTION(@selector(get:)); +} + +- (id) getPredecessorKey:(id) key { + THROW_ABSTRACT_METHOD_EXCEPTION(@selector(getPredecessorKey:)); +} + +- (BOOL) isEmpty { + THROW_ABSTRACT_METHOD_EXCEPTION(@selector(isEmpty)); +} + +- (int) count { + THROW_ABSTRACT_METHOD_EXCEPTION(@selector((count))); +} + +- (id) minKey { + THROW_ABSTRACT_METHOD_EXCEPTION(@selector(minKey)); +} + +- (id) maxKey { + THROW_ABSTRACT_METHOD_EXCEPTION(@selector(maxKey)); +} + +- (void) enumerateKeysAndObjectsUsingBlock:(void (^)(id, id, BOOL *))block { + THROW_ABSTRACT_METHOD_EXCEPTION(@selector(enumerateKeysAndObjectsUsingBlock:)); +} + +- (void) enumerateKeysAndObjectsReverse:(BOOL)reverse usingBlock:(void (^)(id, id, BOOL *))block { + THROW_ABSTRACT_METHOD_EXCEPTION(@selector(enumerateKeysAndObjectsReverse:usingBlock:)); +} + +- (BOOL) contains:(id)key { + THROW_ABSTRACT_METHOD_EXCEPTION(@selector(contains:)); +} + +- (NSEnumerator *) keyEnumerator { + THROW_ABSTRACT_METHOD_EXCEPTION(@selector(keyEnumerator)); +} + +- (NSEnumerator *) keyEnumeratorFrom:(id)startKey { + THROW_ABSTRACT_METHOD_EXCEPTION(@selector(keyEnumeratorFrom:)); +} + +- (NSEnumerator *) reverseKeyEnumerator { + THROW_ABSTRACT_METHOD_EXCEPTION(@selector(reverseKeyEnumerator)); +} + +- (NSEnumerator *) reverseKeyEnumeratorFrom:(id)startKey { + THROW_ABSTRACT_METHOD_EXCEPTION(@selector(reverseKeyEnumeratorFrom:)); +} + +- (BOOL)isEqual:(id)object { + if (![object isKindOfClass:[FImmutableSortedDictionary class]]) { + return NO; + } + FImmutableSortedDictionary *other = (FImmutableSortedDictionary *)object; + if (self.count != other.count) { + return NO; + } + __block BOOL isEqual = YES; + [self enumerateKeysAndObjectsUsingBlock:^(id key, id value, BOOL *stop) { + id otherValue = [other objectForKey:key]; + isEqual = isEqual && (value == otherValue || [value isEqual:otherValue]); + *stop = !isEqual; + }]; + return isEqual; +} + +- (NSUInteger)hash { + __block NSUInteger hash = 0; + [self enumerateKeysAndObjectsUsingBlock:^(id key, id value, BOOL *stop) { + hash = (hash * 31 + [key hash]) * 17 + [value hash]; + }]; + return hash; +} + +- (NSString *)description { + NSMutableString *str = [[NSMutableString alloc] init]; + __block BOOL first = YES; + [str appendString:@"{ "]; + [self enumerateKeysAndObjectsUsingBlock:^(id key, id value, BOOL *stop) { + if (!first) { + [str appendString:@", "]; + } + first = NO; + [str appendString:[NSString stringWithFormat:@"%@: %@", key, value]]; + }]; + [str appendString:@" }"]; + return str; +} + +#pragma mark - +#pragma mark Methods similar to NSMutableDictionary + +- (FImmutableSortedDictionary *) setObject:(__unsafe_unretained id)anObject forKey:(__unsafe_unretained id)aKey { + return [self insertKey:aKey withValue:anObject]; +} + +- (FImmutableSortedDictionary *) removeObjectForKey:(__unsafe_unretained id)aKey { + return [self removeKey:aKey]; +} + +- (id) objectForKey:(__unsafe_unretained id)key { + return [self get:key]; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FImmutableSortedSet.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FImmutableSortedSet.h new file mode 100644 index 0000000..ac15c2f --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FImmutableSortedSet.h @@ -0,0 +1,22 @@ +#import + +@interface FImmutableSortedSet : NSObject + ++ (FImmutableSortedSet *)setWithKeysFromDictionary:(NSDictionary *)array comparator:(NSComparator)comparator; + +- (BOOL)containsObject:(id)object; +- (FImmutableSortedSet *)addObject:(id)object; +- (FImmutableSortedSet *)removeObject:(id)object; +- (id)firstObject; +- (id)lastObject; +- (NSUInteger)count; +- (BOOL)isEmpty; + +- (id)predecessorEntry:(id)entry; + +- (void)enumerateObjectsUsingBlock:(void (^)(id obj, BOOL *stop))block; +- (void)enumerateObjectsReverse:(BOOL)reverse usingBlock:(void (^)(id obj, BOOL *stop))block; + +- (NSEnumerator *)objectEnumerator; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FImmutableSortedSet.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FImmutableSortedSet.m new file mode 100644 index 0000000..1953af1 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FImmutableSortedSet.m @@ -0,0 +1,115 @@ +#import "FImmutableSortedSet.h" +#import "FImmutableSortedDictionary.h" + +@interface FImmutableSortedSet () + +@property (nonatomic, strong) FImmutableSortedDictionary *dictionary; + +@end + +@implementation FImmutableSortedSet + ++ (FImmutableSortedSet *)setWithKeysFromDictionary:(NSDictionary *)dictionary comparator:(NSComparator)comparator +{ + FImmutableSortedDictionary *setDict = [FImmutableSortedDictionary fromDictionary:dictionary withComparator:comparator]; + return [[FImmutableSortedSet alloc] initWithDictionary:setDict]; +} + +- (id)initWithDictionary:(FImmutableSortedDictionary *)dictionary +{ + self = [super init]; + if (self != nil) { + self->_dictionary = dictionary; + } + return self; +} + +- (BOOL)contains:(id)object +{ + return [self.dictionary contains:object]; +} + +- (FImmutableSortedSet *)addObject:(id)object +{ + FImmutableSortedDictionary *newDictionary = [self.dictionary insertKey:object withValue:[NSNull null]]; + if (newDictionary != self.dictionary) { + return [[FImmutableSortedSet alloc] initWithDictionary:newDictionary]; + } else { + return self; + } +} + +- (FImmutableSortedSet *)removeObject:(id)object +{ + FImmutableSortedDictionary *newDictionary = [self.dictionary removeObjectForKey:object]; + if (newDictionary != self.dictionary) { + return [[FImmutableSortedSet alloc] initWithDictionary:newDictionary]; + } else { + return self; + } +} + +- (BOOL)containsObject:(id)object +{ + return [self.dictionary contains:object]; +} + +- (id)firstObject +{ + return [self.dictionary minKey]; +} + +- (id)lastObject +{ + return [self.dictionary maxKey]; +} + +- (id)predecessorEntry:(id)entry +{ + return [self.dictionary getPredecessorKey:entry]; +} + +- (NSUInteger)count +{ + return [self.dictionary count]; +} + +- (BOOL)isEmpty +{ + return [self.dictionary isEmpty]; +} + +- (void)enumerateObjectsUsingBlock:(void (^)(id, BOOL *))block +{ + [self enumerateObjectsReverse:NO usingBlock:block]; +} + +- (void)enumerateObjectsReverse:(BOOL)reverse usingBlock:(void (^)(id, BOOL *))block +{ + [self.dictionary enumerateKeysAndObjectsReverse:reverse usingBlock:^(id key, id value, BOOL *stop) { + block(key, stop); + }]; +} + +- (NSEnumerator *)objectEnumerator +{ + return [self.dictionary keyEnumerator]; +} + +- (NSString *)description +{ + NSMutableString *str = [[NSMutableString alloc] init]; + __block BOOL first = YES; + [str appendString:@"FImmutableSortedSet ( "]; + [self enumerateObjectsUsingBlock:^(id obj, BOOL *stop) { + if (!first) { + [str appendString:@", "]; + } + first = NO; + [str appendString:[NSString stringWithFormat:@"%@", obj]]; + }]; + [str appendString:@" )"]; + return str; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBEmptyNode.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBEmptyNode.h new file mode 100644 index 0000000..833f2a5 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBEmptyNode.h @@ -0,0 +1,27 @@ +#import +#import "FLLRBNode.h" + +@interface FLLRBEmptyNode : NSObject + ++ (id)emptyNode; + +- (id)copyWith:(id) aKey withValue:(id) aValue withColor:(FLLRBColor*) aColor withLeft:(id)aLeft withRight:(id)aRight; +- (id) insertKey:(id) aKey forValue:(id)aValue withComparator:(NSComparator)aComparator; +- (id) remove:(id) aKey withComparator:(NSComparator)aComparator; +- (int) count; +- (BOOL) isEmpty; +- (BOOL) inorderTraversal:(BOOL (^)(id key, id value))action; +- (BOOL) reverseTraversal:(BOOL (^)(id key, id value))action; +- (id) min; +- (id) minKey; +- (id) maxKey; +- (BOOL) isRed; +- (int) check; + +@property (nonatomic, strong) id key; +@property (nonatomic, strong) id value; +@property (nonatomic, strong) FLLRBColor* color; +@property (nonatomic, strong) id left; +@property (nonatomic, strong) id right; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBEmptyNode.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBEmptyNode.m new file mode 100644 index 0000000..3ca6f06 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBEmptyNode.m @@ -0,0 +1,72 @@ +#import "FLLRBEmptyNode.h" +#import "FLLRBValueNode.h" + +@implementation FLLRBEmptyNode + +@synthesize key, value, color, left, right; + +- (NSString *) description { + return [NSString stringWithFormat:@"[key=%@ val=%@ color=%@]", key, value, + (color != nil ? @"true" : @"false")]; +} + ++ (id)emptyNode +{ + static dispatch_once_t pred = 0; + __strong static id _sharedObject = nil; + dispatch_once(&pred, ^{ + _sharedObject = [[self alloc] init]; // or some other init method + }); + return _sharedObject; +} + +- (id)copyWith:(id) aKey withValue:(id) aValue withColor:(FLLRBColor*) aColor withLeft:(id)aLeft withRight:(id)aRight { + return self; +} + +- (id) insertKey:(id) aKey forValue:(id)aValue withComparator:(NSComparator)aComparator { + FLLRBValueNode* result = [[FLLRBValueNode alloc] initWithKey:aKey withValue:aValue withColor:nil withLeft:nil withRight:nil]; + return result; +} + +- (id) remove:(id) key withComparator:(NSComparator)aComparator { + return self; +} + +- (int) count { + return 0; +} + +- (BOOL) isEmpty { + return YES; +} + +- (BOOL) inorderTraversal:(BOOL (^)(id key, id value))action { + return NO; +} + +- (BOOL) reverseTraversal:(BOOL (^)(id key, id value))action { + return NO; +} + +- (id) min { + return self; +} + +- (id) minKey { + return nil; +} + +- (id) maxKey { + return nil; +} + +- (BOOL) isRed { + return NO; +} + +- (int) check { + return 0; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBNode.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBNode.h new file mode 100644 index 0000000..09b234c --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBNode.h @@ -0,0 +1,29 @@ +#import + +#define RED @true +#define BLACK @false + +typedef NSNumber FLLRBColor; + +@protocol FLLRBNode + +- (id)copyWith:(id) aKey withValue:(id) aValue withColor:(FLLRBColor*) aColor withLeft:(id)aLeft withRight:(id)aRight; +- (id) insertKey:(id) aKey forValue:(id)aValue withComparator:(NSComparator)aComparator; +- (id) remove:(id) key withComparator:(NSComparator)aComparator; +- (int) count; +- (BOOL) isEmpty; +- (BOOL) inorderTraversal:(BOOL (^)(id key, id value))action; +- (BOOL) reverseTraversal:(BOOL (^)(id key, id value))action; +- (id) min; +- (id) minKey; +- (id) maxKey; +- (BOOL) isRed; +- (int) check; + +@property (nonatomic, strong) id key; +@property (nonatomic, strong) id value; +@property (nonatomic, strong) FLLRBColor* color; +@property (nonatomic, strong) id left; +@property (nonatomic, strong) id right; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBValueNode.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBValueNode.h new file mode 100644 index 0000000..50438bb --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBValueNode.h @@ -0,0 +1,29 @@ +#import +#import "FLLRBNode.h" + +@interface FLLRBValueNode : NSObject + + +- (id)initWithKey:(id) key withValue:(id) value withColor:(FLLRBColor*) color withLeft:(id)left withRight:(id)right; +- (id)copyWith:(id) aKey withValue:(id) aValue withColor:(FLLRBColor*) aColor withLeft:(id)aLeft withRight:(id)aRight; +- (id) insertKey:(id) aKey forValue:(id)aValue withComparator:(NSComparator)aComparator; +- (id) remove:(id) aKey withComparator:(NSComparator)aComparator; +- (int) count; +- (BOOL) isEmpty; +- (BOOL) inorderTraversal:(BOOL (^)(id key, id value))action; +- (BOOL) reverseTraversal:(BOOL (^)(id key, id value))action; +- (id) min; +- (id) minKey; +- (id) maxKey; +- (BOOL) isRed; +- (int) check; + +- (BOOL) checkMaxDepth; + +@property (nonatomic, strong) id key; +@property (nonatomic, strong) id value; +@property (nonatomic, strong) FLLRBColor* color; +@property (nonatomic, strong) id left; +@property (nonatomic, strong) id right; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBValueNode.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBValueNode.m new file mode 100644 index 0000000..831b97f --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FLLRBValueNode.m @@ -0,0 +1,230 @@ +#import "FLLRBValueNode.h" +#import "FLLRBEmptyNode.h" + +@implementation FLLRBValueNode + +@synthesize key, value, color, left, right; + +- (NSString *) description { + return [NSString stringWithFormat:@"[key=%@ val=%@ color=%@]", key, value, + (color != nil ? @"true" : @"false")]; +} + +- (id)initWithKey:(__unsafe_unretained id) aKey withValue:(__unsafe_unretained id) aValue withColor:(__unsafe_unretained FLLRBColor*) aColor withLeft:(__unsafe_unretained id)aLeft withRight:(__unsafe_unretained id)aRight +{ + self = [super init]; + if (self) { + self.key = aKey; + self.value = aValue; + self.color = aColor != nil ? aColor : RED; + self.left = aLeft != nil ? aLeft : [FLLRBEmptyNode emptyNode]; + self.right = aRight != nil ? aRight : [FLLRBEmptyNode emptyNode]; + } + return self; +} + +- (id)copyWith:(__unsafe_unretained id) aKey withValue:(__unsafe_unretained id) aValue withColor:(__unsafe_unretained FLLRBColor*) aColor withLeft:(__unsafe_unretained id)aLeft withRight:(__unsafe_unretained id)aRight { + return [[FLLRBValueNode alloc] initWithKey:(aKey != nil) ? aKey : self.key + withValue:(aValue != nil) ? aValue : self.value + withColor:(aColor != nil) ? aColor : self.color + withLeft:(aLeft != nil) ? aLeft : self.left + withRight:(aRight != nil) ? aRight : self.right]; +} + +- (int) count { + return [self.left count] + 1 + [self.right count]; +} + +- (BOOL) isEmpty { + return NO; +} + +/** +* Early terminates if aciton returns YES. +* @return The first truthy value returned by action, or the last falsey value returned by action. +*/ +- (BOOL) inorderTraversal:(BOOL (^)(id key, id value))action { + return [self.left inorderTraversal:action] || + action(self.key, self.value) || + [self.right inorderTraversal:action]; +} + +- (BOOL) reverseTraversal:(BOOL (^)(id key, id value))action { + return [self.right reverseTraversal:action] || + action(self.key, self.value) || + [self.left reverseTraversal:action]; +} + +- (id) min { + if([self.left isEmpty]) { + return self; + } + else { + return [self.left min]; + } +} + +- (id) minKey { + return [[self min] key]; +} + +- (id) maxKey { + if([self.right isEmpty]) { + return self.key; + } + else { + return [self.right maxKey]; + } +} + +- (id) insertKey:(__unsafe_unretained id) aKey forValue:(__unsafe_unretained id)aValue withComparator:(NSComparator)aComparator { + NSComparisonResult cmp = aComparator(aKey, self.key); + FLLRBValueNode* n = self; + + if(cmp == NSOrderedAscending) { + n = [n copyWith:nil withValue:nil withColor:nil withLeft:[n.left insertKey:aKey forValue:aValue withComparator:aComparator] withRight:nil]; + } + else if(cmp == NSOrderedSame) { + n = [n copyWith:nil withValue:aValue withColor:nil withLeft:nil withRight:nil]; + } + else { + n = [n copyWith:nil withValue:nil withColor:nil withLeft:nil withRight:[n.right insertKey:aKey forValue:aValue withComparator:aComparator]]; + } + + return [n fixUp]; +} + +- (id) removeMin { + + if([self.left isEmpty]) { + return [FLLRBEmptyNode emptyNode]; + } + + FLLRBValueNode* n = self; + if(! [n.left isRed] && ! [n.left.left isRed]) { + n = [n moveRedLeft]; + } + + n = [n copyWith:nil withValue:nil withColor:nil withLeft:[(FLLRBValueNode*)n.left removeMin] withRight:nil]; + return [n fixUp]; +} + + +- (id) fixUp { + FLLRBValueNode* n = self; + if([n.right isRed] && ! [n.left isRed]) n = [n rotateLeft]; + if([n.left isRed] && [n.left.left isRed]) n = [n rotateRight]; + if([n.left isRed] && [n.right isRed]) n = [n colorFlip]; + return n; +} + +- (FLLRBValueNode*) moveRedLeft { + FLLRBValueNode* n = [self colorFlip]; + if([n.right.left isRed]) { + n = [n copyWith:nil withValue:nil withColor:nil withLeft:nil withRight:[(FLLRBValueNode*)n.right rotateRight]]; + n = [n rotateLeft]; + n = [n colorFlip]; + } + return n; +} + +- (FLLRBValueNode*) moveRedRight { + FLLRBValueNode* n = [self colorFlip]; + if([n.left.left isRed]) { + n = [n rotateRight]; + n = [n colorFlip]; + } + return n; +} + +- (id) rotateLeft { + id nl = [self copyWith:nil withValue:nil withColor:RED withLeft:nil withRight:self.right.left]; + return [self.right copyWith:nil withValue:nil withColor:self.color withLeft:nl withRight:nil];; +} + +- (id) rotateRight { + id nr = [self copyWith:nil withValue:nil withColor:RED withLeft:self.left.right withRight:nil]; + return [self.left copyWith:nil withValue:nil withColor:self.color withLeft:nil withRight:nr]; +} + +- (id) colorFlip { + id nleft = [self.left copyWith:nil withValue:nil withColor:[NSNumber numberWithBool:![self.left.color boolValue]] withLeft:nil withRight:nil]; + id nright = [self.right copyWith:nil withValue:nil withColor:[NSNumber numberWithBool:![self.right.color boolValue]] withLeft:nil withRight:nil]; + + return [self copyWith:nil withValue:nil withColor:[NSNumber numberWithBool:![self.color boolValue]] withLeft:nleft withRight:nright]; +} + +- (id) remove:(__unsafe_unretained id) aKey withComparator:(NSComparator)comparator { + id smallest; + FLLRBValueNode* n = self; + + if(comparator(aKey, n.key) == NSOrderedAscending) { + if(![n.left isEmpty] && ![n.left isRed] && ![n.left.left isRed]) { + n = [n moveRedLeft]; + } + n = [n copyWith:nil withValue:nil withColor:nil withLeft:[n.left remove:aKey withComparator:comparator] withRight:nil]; + } + else { + if([n.left isRed]) { + n = [n rotateRight]; + } + + if(![n.right isEmpty] && ![n.right isRed] && ![n.right.left isRed]) { + n = [n moveRedRight]; + } + + if(comparator(aKey, n.key) == NSOrderedSame) { + if([n.right isEmpty]) { + return [FLLRBEmptyNode emptyNode]; + } + else { + smallest = [n.right min]; + n = [n copyWith:smallest.key withValue:smallest.value withColor:nil withLeft:nil withRight:[(FLLRBValueNode*)n.right removeMin]]; + } + } + n = [n copyWith:nil withValue:nil withColor:nil withLeft:nil withRight:[n.right remove:aKey withComparator:comparator]]; + } + return [n fixUp]; +} + +- (BOOL) isRed { + return [self.color boolValue]; +} + +- (BOOL) checkMaxDepth { + int blackDepth = [self check]; + if(pow(2.0, blackDepth) <= ([self count] + 1)) { + return YES; + } + else { + return NO; + } +} + +- (int) check { + int blackDepth = 0; + + if([self isRed] && [self.left isRed]) { + @throw [[NSException alloc] initWithName:@"check" reason:@"Red node has a red child" userInfo:nil]; + } + + if([self.right isRed]) { + @throw [[NSException alloc] initWithName:@"check" reason:@"Right child is red" userInfo:nil]; + } + + blackDepth = [self.left check]; +// NSLog(err); + if(blackDepth != [self.right check]) { + NSString* err = [NSString stringWithFormat:@"(%@ -> %@)blackDepth: %d ; self.right check: %d", self.value, [self.color boolValue] ? @"red" : @"black", blackDepth, [self.right check]]; +// return 10; + @throw [[NSException alloc] initWithName:@"check" reason:err userInfo:nil]; + } + else { + int ret = blackDepth + ([self isRed] ? 0 : 1); +// NSLog(@"black depth is: %d; other is: %d, ret is: %d", blackDepth, ([self isRed] ? 0 : 1), ret); + return ret; + } +} + + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FTreeSortedDictionary.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FTreeSortedDictionary.h new file mode 100644 index 0000000..934ca8b --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FTreeSortedDictionary.h @@ -0,0 +1,30 @@ +/** + * @fileoverview Implementation of an immutable SortedMap using a Left-leaning + * Red-Black Tree, adapted from the implementation in Mugs + * (http://mads379.github.com/mugs/) by Mads Hartmann Jensen + * (mads379@gmail.com). + * + * Original paper on Left-leaning Red-Black Trees: + * http://www.cs.princeton.edu/~rs/talks/LLRB/LLRB.pdf + * + * Invariant 1: No red node has a red child + * Invariant 2: Every leaf path has the same number of black nodes + * Invariant 3: Only the left child can be red (left leaning) + */ + +#import +#import "FImmutableSortedDictionary.h" +#import "FLLRBNode.h" + +@interface FTreeSortedDictionary : FImmutableSortedDictionary + +@property (nonatomic, copy, readonly) NSComparator comparator; +@property (nonatomic, strong, readonly) id root; + +- (id)initWithComparator:(NSComparator)aComparator; + +// Override methods to return subtype +- (FTreeSortedDictionary *) insertKey:(id)aKey withValue:(id)aValue; +- (FTreeSortedDictionary *) removeKey:(id)aKey; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FTreeSortedDictionary.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FTreeSortedDictionary.m new file mode 100644 index 0000000..e9f0683 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FTreeSortedDictionary.m @@ -0,0 +1,326 @@ +#import "FTreeSortedDictionary.h" +#import "FLLRBEmptyNode.h" +#import "FLLRBValueNode.h" +#import "FTreeSortedDictionaryEnumerator.h" + +typedef void (^fbt_void_nsnumber_int)(NSNumber* color, NSUInteger chunkSize); + +@interface FTreeSortedDictionary () + +@property (nonatomic, strong) id root; +@property (nonatomic, copy, readwrite) NSComparator comparator; + +@end + +@implementation FTreeSortedDictionary + +- (id)initWithComparator:(NSComparator)aComparator { + self = [super init]; + if (self) { + self.root = [FLLRBEmptyNode emptyNode]; + self.comparator = aComparator; + } + return self; +} + +- (id)initWithComparator:(NSComparator)aComparator withRoot:(__unsafe_unretained id)aRoot { + self = [super init]; + if (self) { + self.root = aRoot; + self.comparator = aComparator; + } + return self; +} + +/** + * Returns a copy of the map, with the specified key/value added or replaced. + */ +- (FTreeSortedDictionary *) insertKey:(__unsafe_unretained id)aKey withValue:(__unsafe_unretained id)aValue { + return [[FTreeSortedDictionary alloc] initWithComparator:self.comparator + withRoot:[[self.root insertKey:aKey forValue:aValue withComparator:self.comparator] + copyWith:nil + withValue:nil + withColor:BLACK + withLeft:nil + withRight:nil]]; +} + + +- (FTreeSortedDictionary *) removeKey:(__unsafe_unretained id)aKey { + // Remove is somewhat expensive even if the key doesn't exist (the tree does rebalancing and stuff). So avoid it. + if (![self contains:aKey]) { + return self; + } else { + return [[FTreeSortedDictionary alloc] + initWithComparator:self.comparator + withRoot:[[self.root remove:aKey withComparator:self.comparator] + copyWith:nil + withValue:nil + withColor:BLACK + withLeft:nil + withRight:nil]]; + } +} + +- (id) get:(__unsafe_unretained id) key { + if (key == nil) { + return nil; + } + NSComparisonResult cmp; + id node = self.root; + while(![node isEmpty]) { + cmp = self.comparator(key, node.key); + if(cmp == NSOrderedSame) { + return node.value; + } + else if (cmp == NSOrderedAscending) { + node = node.left; + } + else { + node = node.right; + } + } + return nil; +} + +- (id) getPredecessorKey:(__unsafe_unretained id) key { + NSComparisonResult cmp; + id node = self.root; + id rightParent = nil; + while(![node isEmpty]) { + cmp = self.comparator(key, node.key); + if(cmp == NSOrderedSame) { + if(![node.left isEmpty]) { + node = node.left; + while(! [node.right isEmpty]) { + node = node.right; + } + return node.key; + } + else if (rightParent != nil) { + return rightParent.key; + } + else { + return nil; + } + } + else if (cmp == NSOrderedAscending) { + node = node.left; + } + else if (cmp == NSOrderedDescending) { + rightParent = node; + node = node.right; + } + } + @throw [NSException exceptionWithName:@"NonexistentKey" reason:@"getPredecessorKey called with nonexistent key." userInfo:@{@"key": [key description] }]; +} + +- (BOOL) isEmpty { + return [self.root isEmpty]; +} + +- (int) count { + return [self.root count]; +} + +- (id) minKey { + return [self.root minKey]; +} + +- (id) maxKey { + return [self.root maxKey]; +} + +- (void) enumerateKeysAndObjectsUsingBlock:(void (^)(id, id, BOOL *))block +{ + [self enumerateKeysAndObjectsReverse:NO usingBlock:block]; +} + +- (void) enumerateKeysAndObjectsReverse:(BOOL)reverse usingBlock:(void (^)(id, id, BOOL *))block +{ + if (reverse) { + __block BOOL stop = NO; + [self.root reverseTraversal:^BOOL(id key, id value) { + block(key, value, &stop); + return stop; + }]; + } else { + __block BOOL stop = NO; + [self.root inorderTraversal:^BOOL(id key, id value) { + block(key, value, &stop); + return stop; + }]; + } +} + +- (BOOL) contains:(__unsafe_unretained id)key { + return ([self objectForKey:key] != nil); +} + +- (NSEnumerator *) keyEnumerator { + return [[FTreeSortedDictionaryEnumerator alloc] + initWithImmutableSortedDictionary:self startKey:nil isReverse:NO]; +} + +- (NSEnumerator *) keyEnumeratorFrom:(id)startKey { + return [[FTreeSortedDictionaryEnumerator alloc] + initWithImmutableSortedDictionary:self startKey:startKey isReverse:NO]; +} + +- (NSEnumerator *) reverseKeyEnumerator { + return [[FTreeSortedDictionaryEnumerator alloc] + initWithImmutableSortedDictionary:self startKey:nil isReverse:YES]; +} + +- (NSEnumerator *) reverseKeyEnumeratorFrom:(id)startKey { + return [[FTreeSortedDictionaryEnumerator alloc] + initWithImmutableSortedDictionary:self startKey:startKey isReverse:YES]; +} + + +#pragma mark - +#pragma mark Tree Builder + +// Code to efficiently build a RB Tree +typedef struct _base1_2list { + unsigned int bits; + unsigned short count; + unsigned short current; +} Base1_2List; + +Base1_2List *base1_2List_new(unsigned int length); +void base1_2List_free(Base1_2List* list); +unsigned int log_base2(unsigned int num); +BOOL base1_2List_next(Base1_2List* list); + +unsigned int log_base2(unsigned int num) { + return (unsigned int)(log(num) / log(2)); +} + +/** + * Works like an iterator, so it moves to the next bit. Do not call more than list->count times. + * @return whether or not the next bit is a 1 in base {1,2}. + */ +BOOL base1_2List_next(Base1_2List* list) { + BOOL result = !(list->bits & (0x1 << list->current)); + list->current--; + return result; +} + +static inline unsigned bit_mask(int x) { + return (x >= sizeof(unsigned) * CHAR_BIT) ? (unsigned) -1 : (1U << x) - 1; +} + +/** + * We represent the base{1,2} number as the combination of a binary number and a number of bits that we care about + * We iterate backwards, from most significant bit to least, to build up the llrb nodes. 0 base 2 => 1 base {1,2}, 1 base 2 => 2 base {1,2} + */ +Base1_2List *base1_2List_new(unsigned int length) { + size_t sz = sizeof(Base1_2List); + Base1_2List* list = calloc(1, sz); + // Calculate the number of bits that we care about + list->count = (unsigned short)log_base2(length + 1); + unsigned int mask = bit_mask(list->count); + list->bits = (length + 1) & mask; + list->current = list->count - 1; + return list; +} + + +void base1_2List_free(Base1_2List* list) { + free(list); +} + ++ (id) buildBalancedTree:(NSArray *)keys dictionary:(NSDictionary *)dictionary subArrayStartIndex:(NSUInteger)startIndex length:(NSUInteger)length { + length = MIN(keys.count - startIndex, length); // Bound length by the actual length of the array + if (length == 0) { + return nil; + } else if (length == 1) { + id key = keys[startIndex]; + return [[FLLRBValueNode alloc] initWithKey:key withValue:dictionary[key] withColor:BLACK withLeft:nil withRight:nil]; + } else { + NSUInteger middle = length / 2; + id left = [FTreeSortedDictionary buildBalancedTree:keys dictionary:dictionary subArrayStartIndex:startIndex length:middle]; + id right = [FTreeSortedDictionary buildBalancedTree:keys dictionary:dictionary subArrayStartIndex:(startIndex+middle+1) length:middle]; + id key = keys[startIndex + middle]; + return [[FLLRBValueNode alloc] initWithKey:key withValue:dictionary[key] withColor:BLACK withLeft:left withRight:right]; + } +} + ++ (id) rootFrom12List:(Base1_2List *)base1_2List keyList:(NSArray *)keyList dictionary:(NSDictionary *)dictionary { + __block id root = nil; + __block id node = nil; + __block NSUInteger index = keyList.count; + + fbt_void_nsnumber_int buildPennant = ^(NSNumber* color, NSUInteger chunkSize) { + NSUInteger startIndex = index - chunkSize + 1; + index -= chunkSize; + id key = keyList[index]; + id childTree = [self buildBalancedTree:keyList dictionary:dictionary subArrayStartIndex:startIndex length:(chunkSize - 1)]; + id pennant = [[FLLRBValueNode alloc] initWithKey:key withValue:dictionary[key] withColor:color withLeft:nil withRight:childTree]; + //attachPennant(pennant); + if (node) { + node.left = pennant; + node = pennant; + } else { + root = pennant; + node = pennant; + } + }; + + for (int i = 0; i < base1_2List->count; ++i) { + BOOL isOne = base1_2List_next(base1_2List); + NSUInteger chunkSize = (NSUInteger)pow(2.0, base1_2List->count - (i + 1)); + if (isOne) { + buildPennant(BLACK, chunkSize); + } else { + buildPennant(BLACK, chunkSize); + buildPennant(RED, chunkSize); + } + } + return root; +} + +/** + * Uses the algorithm linked here: + * http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.46.1458 + */ + ++ (FImmutableSortedDictionary *)fromDictionary:(NSDictionary *)dictionary withComparator:(NSComparator)comparator +{ + // Steps: + // 0. Sort the array + // 1. Calculate the 1-2 number + // 2. Build From 1-2 number + // 0. for each digit in 1-2 number + // 0. calculate chunk size + // 1. build 1 or 2 pennants of that size + // 2. attach pennants and update node pointer + // 1. return root + NSMutableArray *sortedKeyList = [NSMutableArray arrayWithCapacity:dictionary.count]; + [dictionary enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) { + [sortedKeyList addObject:key]; + }]; + [sortedKeyList sortUsingComparator:comparator]; + + [sortedKeyList enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) { + if (idx > 0) { + if (comparator(sortedKeyList[idx - 1], obj) != NSOrderedAscending) { + [NSException raise:NSInvalidArgumentException format:@"Can't create FImmutableSortedDictionary with keys with same ordering!"]; + } + } + }]; + + Base1_2List* list = base1_2List_new((unsigned int)sortedKeyList.count); + id root = [self rootFrom12List:list keyList:sortedKeyList dictionary:dictionary]; + base1_2List_free(list); + + if (root != nil) { + return [[FTreeSortedDictionary alloc] initWithComparator:comparator withRoot:root]; + } else { + return [[FTreeSortedDictionary alloc] initWithComparator:comparator]; + } +} + +@end + diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FTreeSortedDictionaryEnumerator.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FTreeSortedDictionaryEnumerator.h new file mode 100644 index 0000000..d79fe8e --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FTreeSortedDictionaryEnumerator.h @@ -0,0 +1,9 @@ +#import +#import "FTreeSortedDictionary.h" + +@interface FTreeSortedDictionaryEnumerator : NSEnumerator + +- (id)initWithImmutableSortedDictionary:(FTreeSortedDictionary *)aDict startKey:(id)startKey isReverse:(BOOL)reverse; +- (id)nextObject; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FTreeSortedDictionaryEnumerator.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FTreeSortedDictionaryEnumerator.m new file mode 100644 index 0000000..2aca86e --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/FImmutableSortedDictionary/FImmutableSortedDictionary/FTreeSortedDictionaryEnumerator.m @@ -0,0 +1,83 @@ +#import "FTreeSortedDictionaryEnumerator.h" + +@interface FTreeSortedDictionaryEnumerator() +@property (nonatomic, strong) FTreeSortedDictionary* immutableSortedDictionary; +@property (nonatomic, strong) NSMutableArray* stack; +@property (nonatomic) BOOL isReverse; + +@end + +@implementation FTreeSortedDictionaryEnumerator + +- (id)initWithImmutableSortedDictionary:(FTreeSortedDictionary *)aDict + startKey:(id)startKey isReverse:(BOOL)reverse { + self = [super init]; + if (self) { + self.immutableSortedDictionary = aDict; + self.stack = [[NSMutableArray alloc] init]; + self.isReverse = reverse; + + NSComparator comparator = aDict.comparator; + id node = self.immutableSortedDictionary.root; + + NSInteger cmp; + while(![node isEmpty]) { + cmp = startKey ? comparator(node.key, startKey) : 1; + // flip the comparison if we're going in reverse + if (self.isReverse) cmp *= -1; + + if (cmp < 0) { + // This node is less than our start key. Ignore it. + if (self.isReverse) { + node = node.left; + } else { + node = node.right; + } + } else if (cmp == 0) { + // This node is exactly equal to our start key. Push it on the stack, but stop iterating: + [self.stack addObject:node]; + break; + } else { + // This node is greater than our start key, add it to the stack and move on to the next one. + [self.stack addObject:node]; + if (self.isReverse) { + node = node.right; + } else { + node = node.left; + } + } + } + } + return self; +} + +- (id)nextObject { + if([self.stack count] == 0) { + return nil; + } + + id node = nil; + @synchronized(self.stack) { + node = [self.stack lastObject]; + [self.stack removeLastObject]; + } + id result = node.key; + + if (self.isReverse) { + node = node.left; + while (![node isEmpty]) { + [self.stack addObject:node]; + node = node.right; + } + } else { + node = node.right; + while (![node isEmpty]) { + [self.stack addObject:node]; + node = node.left; + } + } + + return result; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/FSRWebSocket.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/FSRWebSocket.h new file mode 100644 index 0000000..1ca1815 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/FSRWebSocket.h @@ -0,0 +1,107 @@ +// +// Copyright 2012 Square Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +#import +#import + +typedef enum { + SR_CONNECTING = 0, + SR_OPEN = 1, + SR_CLOSING = 2, + SR_CLOSED = 3, + +} FSRReadyState; + +@class FSRWebSocket; + +extern NSString *const FSRWebSocketErrorDomain; + +@protocol FSRWebSocketDelegate; + +@interface FSRWebSocket : NSObject + +@property (nonatomic, weak) id delegate; + +@property (nonatomic, readonly) FSRReadyState readyState; +@property (nonatomic, readonly, retain) NSURL *url; + +// This returns the negotiated protocol. +// It will be niluntil after the handshake completes. +@property (nonatomic, readonly, copy) NSString *protocol; + +// Protocols should be an array of strings that turn into Sec-WebSocket-Protocol +- (id)initWithURLRequest:(NSURLRequest *)request protocols:(NSArray *)protocols queue:(dispatch_queue_t)queue andUserAgent:(NSString *)userAgent; +- (id)initWithURLRequest:(NSURLRequest *)request protocols:(NSArray *)protocols; +- (id)initWithURLRequest:(NSURLRequest *)request queue:(dispatch_queue_t)queue andUserAgent:(NSString *)userAgent; +- (id)initWithURLRequest:(NSURLRequest *)request; + +// Some helper constructors +- (id)initWithURL:(NSURL *)url protocols:(NSArray *)protocols; +- (id)initWithURL:(NSURL *)url; + +// Delegate queue will be dispatch_main_queue by default. +// You cannot set both OperationQueue and dispatch_queue. +- (void)setDelegateOperationQueue:(NSOperationQueue*) queue; +- (void)setDelegateDispatchQueue:(dispatch_queue_t)queue; + +// By default, it will schedule itself on +[NSRunLoop SR_networkRunLoop] using defaultModes. +- (void)scheduleInRunLoop:(NSRunLoop *)aRunLoop forMode:(NSString *)mode; +- (void)unscheduleFromRunLoop:(NSRunLoop *)aRunLoop forMode:(NSString *)mode; + +// SRWebSockets are intended one-time-use only. Open should be called once and only once +- (void)open; + +- (void)close; +- (void)closeWithCode:(NSInteger)code reason:(NSString *)reason; + +// Send a UTF8 String or Data +- (void)send:(id)data; + +@end + +@protocol FSRWebSocketDelegate + +// message will either be an NSString if the server is using text +// or NSData if the server is using binary +- (void)webSocket:(FSRWebSocket *)webSocket didReceiveMessage:(id)message; + +@optional + +- (void)webSocketDidOpen:(FSRWebSocket *)webSocket; +- (void)webSocket:(FSRWebSocket *)webSocket didFailWithError:(NSError *)error; +- (void)webSocket:(FSRWebSocket *)webSocket didCloseWithCode:(NSInteger)code reason:(NSString *)reason wasClean:(BOOL)wasClean; + +@end + + +@interface NSURLRequest (FCertificateAdditions) + +@property (nonatomic, retain, readonly) NSArray *FSR_SSLPinnedCertificates; + +@end + + +@interface NSMutableURLRequest (FCertificateAdditions) + +@property (nonatomic, retain) NSArray *FSR_SSLPinnedCertificates; + +@end + +@interface NSRunLoop (FSRWebSocket) + ++ (NSRunLoop *)FSR_networkRunLoop; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/FSRWebSocket.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/FSRWebSocket.m new file mode 100644 index 0000000..4cd481b --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/FSRWebSocket.m @@ -0,0 +1,1852 @@ +// +// Copyright 2012 Square Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +#import + +#import "FSRWebSocket.h" + +#if TARGET_OS_IOS || TARGET_OS_TV +#define HAS_ICU +#endif + +#import + +#ifdef HAS_ICU +#import +#endif + +#if TARGET_OS_IOS || TARGET_OS_TV +#import +#elif TARGET_OS_OSX +#import +#endif + +#import +#import +#import "fbase64.h" +#import "NSData+SRB64Additions.h" + +#if OS_OBJECT_USE_OBJC_RETAIN_RELEASE +#define sr_dispatch_retain(x) +#define sr_dispatch_release(x) +#define maybe_bridge(x) ((__bridge void *) x) +#else +#define sr_dispatch_retain(x) dispatch_retain(x) +#define sr_dispatch_release(x) dispatch_release(x) +#define maybe_bridge(x) (x) +#endif + +typedef enum { + SROpCodeTextFrame = 0x1, + SROpCodeBinaryFrame = 0x2, + //3-7Reserved + SROpCodeConnectionClose = 0x8, + SROpCodePing = 0x9, + SROpCodePong = 0xA, + //B-F reserved +} FSROpCode; + +typedef enum { + SRStatusCodeNormal = 1000, + SRStatusCodeGoingAway = 1001, + SRStatusCodeProtocolError = 1002, + SRStatusCodeUnhandledType = 1003, + // 1004 reserved + SRStatusNoStatusReceived = 1005, + // 1004-1006 reserved + SRStatusCodeInvalidUTF8 = 1007, + SRStatusCodePolicyViolated = 1008, + SRStatusCodeMessageTooBig = 1009, +} FSRStatusCode; + +typedef struct { + BOOL fin; +// BOOL rsv1; +// BOOL rsv2; +// BOOL rsv3; + uint8_t opcode; + BOOL masked; + uint64_t payload_length; +} frame_header; + +static NSString *const SRWebSocketAppendToSecKeyString = @"258EAFA5-E914-47DA-95CA-C5AB0DC85B11"; + +static inline int32_t validate_dispatch_data_partial_string(NSData *data); +static inline void SRFastLog(NSString *format, ...); + +@interface NSData (FSRWebSocket) + +- (NSString *)stringBySHA1ThenBase64Encoding; + +@end + + +@interface NSString (FSRWebSocket) + +- (NSString *)stringBySHA1ThenBase64Encoding; + +@end + + +@interface NSURL (FSRWebSocket) + +// The origin isn't really applicable for a native application +// So instead, just map ws -> http and wss -> https +- (NSString *)SR_origin; + +@end + +@interface _FSRRunLoopThread : NSThread + +@property (nonatomic, readonly) NSRunLoop *runLoop; + +@end + +static NSString *newSHA1String(const char *bytes, size_t length) { + uint8_t md[CC_SHA1_DIGEST_LENGTH]; + + CC_SHA1(bytes, (int)length, md); + + size_t buffer_size = ((sizeof(md) * 3 + 2) / 2); + + char *buffer = (char *)malloc(buffer_size); + + int len = f_b64_ntop(md, CC_SHA1_DIGEST_LENGTH, buffer, buffer_size); + if (len == -1) { + free(buffer); + return nil; + } else{ + return [[NSString alloc] initWithBytesNoCopy:buffer length:len encoding:NSASCIIStringEncoding freeWhenDone:YES]; + } +} + +@implementation NSData (FSRWebSocket) + +- (NSString *)stringBySHA1ThenBase64Encoding; +{ + return newSHA1String(self.bytes, self.length); +} + +@end + + +@implementation NSString (FSRWebSocket) + +- (NSString *)stringBySHA1ThenBase64Encoding; +{ + return newSHA1String(self.UTF8String, self.length); +} + +@end + +NSString *const FSRWebSocketErrorDomain = @"FSRWebSocketErrorDomain"; + +// Returns number of bytes consumed. returning 0 means you didn't match. +// Sends bytes to callback handler; +typedef size_t (^stream_scanner)(NSData *collected_data); + +typedef void (^data_callback)(FSRWebSocket *webSocket, NSData *data); + +@interface FSRIOConsumer : NSObject { + stream_scanner _scanner; + data_callback _handler; + size_t _bytesNeeded; + BOOL _readToCurrentFrame; + BOOL _unmaskBytes; +} +@property (nonatomic, copy, readonly) stream_scanner consumer; +@property (nonatomic, copy, readonly) data_callback handler; +@property (nonatomic, assign) size_t bytesNeeded; +@property (nonatomic, assign, readonly) BOOL readToCurrentFrame; +@property (nonatomic, assign, readonly) BOOL unmaskBytes; + +@end + +// This class is not thread-safe, and is expected to always be run on the same queue. +@interface FSRIOConsumerPool : NSObject + +- (id)initWithBufferCapacity:(NSUInteger)poolSize; + +- (FSRIOConsumer *)consumerWithScanner:(stream_scanner)scanner handler:(data_callback)handler bytesNeeded:(size_t)bytesNeeded readToCurrentFrame:(BOOL)readToCurrentFrame unmaskBytes:(BOOL)unmaskBytes; +- (void)returnConsumer:(FSRIOConsumer *)consumer; + +@end + +@interface FSRWebSocket () + +- (void)_writeData:(NSData *)data; +- (void)_closeWithProtocolError:(NSString *)message; +- (void)_failWithError:(NSError *)error; + +- (void)_disconnect; + +- (void)_readFrameNew; +- (void)_readFrameContinue; + +- (void)_pumpScanner; + +- (void)_pumpWriting; + +- (void)_addConsumerWithScanner:(stream_scanner)consumer callback:(data_callback)callback; +- (void)_addConsumerWithDataLength:(size_t)dataLength callback:(data_callback)callback readToCurrentFrame:(BOOL)readToCurrentFrame unmaskBytes:(BOOL)unmaskBytes; +- (void)_addConsumerWithScanner:(stream_scanner)consumer callback:(data_callback)callback dataLength:(size_t)dataLength; +- (void)_readUntilBytes:(const void *)bytes length:(size_t)length callback:(data_callback)dataHandler; +- (void)_readUntilHeaderCompleteWithCallback:(data_callback)dataHandler; + +- (void)_sendFrameWithOpcode:(FSROpCode)opcode data:(id)data; + +- (BOOL)_checkHandshake:(CFHTTPMessageRef)httpMessage; +- (void)_SR_commonInit; + +- (void)_initializeStreams; +- (void)_connect; + +@property (nonatomic) FSRReadyState readyState; + +@property (nonatomic) NSOperationQueue *delegateOperationQueue; +@property (nonatomic) dispatch_queue_t delegateDispatchQueue; + +@end + + +@implementation FSRWebSocket { + NSInteger _webSocketVersion; + + NSOperationQueue *_delegateOperationQueue; + dispatch_queue_t _delegateDispatchQueue; + dispatch_queue_t _workQueue; + NSMutableArray *_consumers; + + NSInputStream *_inputStream; + NSOutputStream *_outputStream; + + NSMutableData *_readBuffer; + NSInteger _readBufferOffset; + + NSMutableData *_outputBuffer; + NSInteger _outputBufferOffset; + + uint8_t _currentFrameOpcode; + size_t _currentFrameCount; + size_t _readOpCount; + uint32_t _currentStringScanPosition; + NSMutableData *_currentFrameData; + + NSString *_closeReason; + + NSString *_secKey; + + BOOL _pinnedCertFound; + + uint8_t _currentReadMaskKey[4]; + size_t _currentReadMaskOffset; + + BOOL _consumerStopped; + + BOOL _closeWhenFinishedWriting; + BOOL _failed; + + BOOL _secure; + NSURLRequest *_urlRequest; + NSString *_userAgent; + + CFHTTPMessageRef _receivedHTTPHeaders; + + BOOL _sentClose; + BOOL _didFail; + BOOL _cleanupScheduled; + int _closeCode; + + BOOL _isPumping; + + NSMutableSet *_scheduledRunloops; + + // We use this to retain ourselves. + __strong FSRWebSocket *_selfRetain; + + NSArray *_requestedProtocols; + FSRIOConsumerPool *_consumerPool; +} + +@synthesize delegate = _delegate; +@synthesize url = _url; +@synthesize readyState = _readyState; +@synthesize protocol = _protocol; + +static __strong NSData *CRLFCRLF; + ++ (void)initialize; +{ + CRLFCRLF = [[NSData alloc] initWithBytes:"\r\n\r\n" length:4]; +} + +- (id)initWithURLRequest:(NSURLRequest *)request protocols:(NSArray *)protocols queue:(dispatch_queue_t)queue andUserAgent:(NSString *)userAgent; +{ + self = [super init]; + if (self) { + assert(request.URL); + _url = request.URL; + NSString *scheme = [_url scheme]; + + _requestedProtocols = [protocols copy]; + _userAgent = userAgent; + + assert([scheme isEqualToString:@"ws"] || [scheme isEqualToString:@"http"] || [scheme isEqualToString:@"wss"] || [scheme isEqualToString:@"https"]); + _urlRequest = request; + + if ([scheme isEqualToString:@"wss"] || [scheme isEqualToString:@"https"]) { + _secure = YES; + } + + if (!queue) { + _delegateDispatchQueue = dispatch_get_main_queue(); + } else { + _delegateDispatchQueue = queue; + } + + [self _SR_commonInit]; + } + + return self; +} + +- (id)initWithURLRequest:(NSURLRequest *)request protocols:(NSArray *)protocols; +{ + return [self initWithURLRequest:request protocols:nil queue:nil andUserAgent:nil]; +} + +- (id)initWithURLRequest:(NSURLRequest *)request queue:(dispatch_queue_t)queue andUserAgent:(NSString *)userAgent; +{ + return [self initWithURLRequest:request protocols:nil queue:queue andUserAgent:userAgent]; +} + +- (id)initWithURLRequest:(NSURLRequest *)request; +{ + return [self initWithURLRequest:request protocols:nil]; +} + +- (id)initWithURL:(NSURL *)url; +{ + return [self initWithURL:url protocols:nil]; +} + +- (id)initWithURL:(NSURL *)url protocols:(NSArray *)protocols; +{ + NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url]; + return [self initWithURLRequest:request protocols:protocols]; +} + +- (void)_SR_commonInit; +{ + _readyState = SR_CONNECTING; + + _consumerStopped = YES; + + _webSocketVersion = 13; + + _workQueue = dispatch_queue_create(NULL, DISPATCH_QUEUE_SERIAL); + + // Going to set a specific on the queue so we can validate we're on the work queue + dispatch_queue_set_specific(_workQueue, (__bridge void *)self, maybe_bridge(_workQueue), NULL); + + sr_dispatch_retain(_delegateDispatchQueue); + + _readBuffer = [[NSMutableData alloc] init]; + _outputBuffer = [[NSMutableData alloc] init]; + + _currentFrameData = [[NSMutableData alloc] init]; + + _consumers = [[NSMutableArray alloc] init]; + + _consumerPool = [[FSRIOConsumerPool alloc] init]; + + _scheduledRunloops = [[NSMutableSet alloc] init]; + + [self _initializeStreams]; + + // default handlers +} + +- (void)assertOnWorkQueue; +{ + assert(dispatch_get_specific((__bridge void *)self) == maybe_bridge(_workQueue)); +} + +- (void)dealloc +{ + _inputStream.delegate = nil; + _outputStream.delegate = nil; + + [_inputStream close]; + [_outputStream close]; + + sr_dispatch_release(_workQueue); + _workQueue = NULL; + + if (_receivedHTTPHeaders) { + CFRelease(_receivedHTTPHeaders); + _receivedHTTPHeaders = NULL; + } + + if (_delegateDispatchQueue) { + sr_dispatch_release(_delegateDispatchQueue); + _delegateDispatchQueue = NULL; + } +} + +#ifndef NDEBUG + +- (void)setReadyState:(FSRReadyState)aReadyState; +{ + [self willChangeValueForKey:@"readyState"]; + assert(aReadyState > _readyState); + _readyState = aReadyState; + [self didChangeValueForKey:@"readyState"]; +} + +#endif + +- (void)open; +{ + assert(_url); + NSAssert(_readyState == SR_CONNECTING, @"Cannot call -(void)open on SRWebSocket more than once"); + + _selfRetain = self; + + [self _connect]; +} + +// Calls block on delegate queue +- (void)_performDelegateBlock:(dispatch_block_t)block; +{ + if (_delegateOperationQueue) { + [_delegateOperationQueue addOperationWithBlock:block]; + } else { + assert(_delegateDispatchQueue); + dispatch_async(_delegateDispatchQueue, block); + } +} + +- (void)setDelegateDispatchQueue:(dispatch_queue_t)queue; +{ + if (queue) { + sr_dispatch_retain(queue); + } + + if (_delegateDispatchQueue) { + sr_dispatch_release(_delegateDispatchQueue); + } + + _delegateDispatchQueue = queue; +} + +- (BOOL)_checkHandshake:(CFHTTPMessageRef)httpMessage; +{ + NSString *acceptHeader = CFBridgingRelease(CFHTTPMessageCopyHeaderFieldValue(httpMessage, CFSTR("Sec-WebSocket-Accept"))); + + if (acceptHeader == nil) { + return NO; + } + + NSString *concattedString = [_secKey stringByAppendingString:SRWebSocketAppendToSecKeyString]; + NSString *expectedAccept = [concattedString stringBySHA1ThenBase64Encoding]; + + return [acceptHeader isEqualToString:expectedAccept]; +} + +- (void)_HTTPHeadersDidFinish; +{ + NSInteger responseCode = CFHTTPMessageGetResponseStatusCode(_receivedHTTPHeaders); + + if (responseCode >= 400) { + SRFastLog(@"Request failed with response code %d", responseCode); + [self _failWithError:[NSError errorWithDomain:@"org.lolrus.SocketRocket" code:2132 userInfo:[NSDictionary dictionaryWithObject:[NSString stringWithFormat:@"received bad response code from server %u", (int)responseCode] forKey:NSLocalizedDescriptionKey]]]; + return; + + } + + if(![self _checkHandshake:_receivedHTTPHeaders]) { + [self _failWithError:[NSError errorWithDomain:FSRWebSocketErrorDomain code:2133 userInfo:[NSDictionary dictionaryWithObject:[NSString stringWithFormat:@"Invalid Sec-WebSocket-Accept response"] forKey:NSLocalizedDescriptionKey]]]; + return; + } + + NSString *negotiatedProtocol = CFBridgingRelease(CFHTTPMessageCopyHeaderFieldValue(_receivedHTTPHeaders, CFSTR("Sec-WebSocket-Protocol"))); + if (negotiatedProtocol) { + // Make sure we requested the protocol + if ([_requestedProtocols indexOfObject:negotiatedProtocol] == NSNotFound) { + [self _failWithError:[NSError errorWithDomain:FSRWebSocketErrorDomain code:2133 userInfo:[NSDictionary dictionaryWithObject:[NSString stringWithFormat:@"Server specified Sec-WebSocket-Protocol that wasn't requested"] forKey:NSLocalizedDescriptionKey]]]; + return; + } + + _protocol = negotiatedProtocol; + } + + self.readyState = SR_OPEN; + + if (!_didFail) { + [self _readFrameNew]; + } + + [self _performDelegateBlock:^{ + if ([self.delegate respondsToSelector:@selector(webSocketDidOpen:)]) { + [self.delegate webSocketDidOpen:self]; + }; + }]; +} + + +- (void)_readHTTPHeader; +{ + if (_receivedHTTPHeaders == NULL) { + _receivedHTTPHeaders = CFHTTPMessageCreateEmpty(NULL, NO); + } + + [self _readUntilHeaderCompleteWithCallback:^(FSRWebSocket *self, NSData *data) { + CFHTTPMessageAppendBytes(self->_receivedHTTPHeaders, (const UInt8 *)data.bytes, data.length); + + if (CFHTTPMessageIsHeaderComplete(self->_receivedHTTPHeaders)) { + SRFastLog(@"Finished reading headers %@", CFBridgingRelease(CFHTTPMessageCopyAllHeaderFields(self->_receivedHTTPHeaders))); + [self _HTTPHeadersDidFinish]; + } else { + [self _readHTTPHeader]; + } + }]; +} + +- (void)didConnect +{ + SRFastLog(@"Connected"); + CFHTTPMessageRef request = CFHTTPMessageCreateRequest(NULL, CFSTR("GET"), (__bridge CFURLRef)_url, kCFHTTPVersion1_1); + + // Set host first so it defaults + CFHTTPMessageSetHeaderFieldValue(request, CFSTR("Host"), (__bridge CFStringRef) + (_url.port != nil ? [NSString stringWithFormat:@"%@:%@", + _url.host, _url.port] : _url.host)); + + NSMutableData *keyBytes = [[NSMutableData alloc] initWithLength:16]; + int result = SecRandomCopyBytes(kSecRandomDefault, keyBytes.length, keyBytes.mutableBytes); + assert(result == 0); + _secKey = [FSRUtilities base64EncodedStringFromData:keyBytes]; + assert([_secKey length] == 24); + + CFHTTPMessageSetHeaderFieldValue(request, CFSTR("Upgrade"), CFSTR("websocket")); + CFHTTPMessageSetHeaderFieldValue(request, CFSTR("Connection"), CFSTR("Upgrade")); + if (_userAgent) { + CFHTTPMessageSetHeaderFieldValue(request, CFSTR("User-Agent"), (__bridge CFStringRef)_userAgent); + } + + CFHTTPMessageSetHeaderFieldValue(request, CFSTR("Sec-WebSocket-Key"), (__bridge CFStringRef)_secKey); + CFHTTPMessageSetHeaderFieldValue(request, CFSTR("Sec-WebSocket-Version"), (__bridge CFStringRef)[NSString stringWithFormat:@"%u", (int)_webSocketVersion]); + + CFHTTPMessageSetHeaderFieldValue(request, CFSTR("Origin"), (__bridge CFStringRef)_url.SR_origin); + + if (_requestedProtocols) { + CFHTTPMessageSetHeaderFieldValue(request, CFSTR("Sec-WebSocket-Protocol"), (__bridge CFStringRef)[_requestedProtocols componentsJoinedByString:@", "]); + } + + [_urlRequest.allHTTPHeaderFields enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) { + CFHTTPMessageSetHeaderFieldValue(request, (__bridge CFStringRef)key, (__bridge CFStringRef)obj); + }]; + + NSData *message = CFBridgingRelease(CFHTTPMessageCopySerializedMessage(request)); + + CFRelease(request); + + [self _writeData:message]; + [self _readHTTPHeader]; +} + +//- (void)_connectToHost:(NSString *)host port:(NSInteger)port; +- (void)_initializeStreams; +{ + NSInteger port = _url.port.integerValue; + if (port == 0) { + if (!_secure) { + port = 80; + } else { + port = 443; + } + } + NSString *host = _url.host; + + CFReadStreamRef readStream = NULL; + CFWriteStreamRef writeStream = NULL; + + CFStreamCreatePairWithSocketToHost(NULL, (__bridge CFStringRef)host, (int)port, &readStream, &writeStream); + + // XXX + CFReadStreamSetProperty(readStream, kCFStreamNetworkServiceType, kCFStreamNetworkServiceTypeBackground); + CFWriteStreamSetProperty(writeStream, kCFStreamNetworkServiceType, kCFStreamNetworkServiceTypeBackground); + + _outputStream = CFBridgingRelease(writeStream); + _inputStream = CFBridgingRelease(readStream); + + + if (_secure) { + NSMutableDictionary *SSLOptions = [[NSMutableDictionary alloc] init]; + + [_outputStream setProperty:(__bridge id)kCFStreamSocketSecurityLevelNegotiatedSSL forKey:(__bridge id)kCFStreamPropertySocketSecurityLevel]; + + // If we're using pinned certs, don't validate the certificate chain + if ([_urlRequest FSR_SSLPinnedCertificates].count) { + [SSLOptions setValue:[NSNumber numberWithBool:NO] forKey:(__bridge id)kCFStreamSSLValidatesCertificateChain]; + } + + [_outputStream setProperty:SSLOptions + forKey:(__bridge id)kCFStreamPropertySSLSettings]; + } + + _inputStream.delegate = self; + _outputStream.delegate = self; + + [_outputStream open]; + [_inputStream open]; +} + +- (void)_connect; +{ + if (!_scheduledRunloops.count) { + [self scheduleInRunLoop:[NSRunLoop FSR_networkRunLoop] forMode:NSDefaultRunLoopMode]; + } + + + [_outputStream open]; + [_inputStream open]; +} + +- (void)scheduleInRunLoop:(NSRunLoop *)aRunLoop forMode:(NSString *)mode; +{ + [_outputStream scheduleInRunLoop:aRunLoop forMode:mode]; + [_inputStream scheduleInRunLoop:aRunLoop forMode:mode]; + + [_scheduledRunloops addObject:@[aRunLoop, mode]]; +} + +- (void)unscheduleFromRunLoop:(NSRunLoop *)aRunLoop forMode:(NSString *)mode; +{ + [_outputStream removeFromRunLoop:aRunLoop forMode:mode]; + [_inputStream removeFromRunLoop:aRunLoop forMode:mode]; + + [_scheduledRunloops removeObject:@[aRunLoop, mode]]; +} + +- (void)close; +{ + [self closeWithCode:-1 reason:nil]; +} + +- (void)closeWithCode:(NSInteger)code reason:(NSString *)reason; +{ + assert(code); + dispatch_async(_workQueue, ^{ + if (self.readyState == SR_CLOSING || self.readyState == SR_CLOSED) { + return; + } + + BOOL wasConnecting = self.readyState == SR_CONNECTING; + + self.readyState = SR_CLOSING; + + SRFastLog(@"Closing with code %d reason %@", code, reason); + + if (wasConnecting) { + [self _disconnect]; + return; + } + + size_t maxMsgSize = [reason maximumLengthOfBytesUsingEncoding:NSUTF8StringEncoding]; + NSMutableData *mutablePayload = [[NSMutableData alloc] initWithLength:sizeof(uint16_t) + maxMsgSize]; + NSData *payload = mutablePayload; + + ((uint16_t *)mutablePayload.mutableBytes)[0] = EndianU16_BtoN(code); + + if (reason) { + NSRange remainingRange = {0}; + + NSUInteger usedLength = 0; + + BOOL success = [reason getBytes:(char *)mutablePayload.mutableBytes + sizeof(uint16_t) maxLength:payload.length - sizeof(uint16_t) usedLength:&usedLength encoding:NSUTF8StringEncoding options:NSStringEncodingConversionExternalRepresentation range:NSMakeRange(0, reason.length) remainingRange:&remainingRange]; + + assert(success); + assert(remainingRange.length == 0); + + if (usedLength != maxMsgSize) { + payload = [payload subdataWithRange:NSMakeRange(0, usedLength + sizeof(uint16_t))]; + } + } + + + [self _sendFrameWithOpcode:SROpCodeConnectionClose data:payload]; + }); +} + +- (void)_closeWithProtocolError:(NSString *)message; +{ + // Need to shunt this on the _callbackQueue first to see if they received any messages + [self _performDelegateBlock:^{ + [self closeWithCode:SRStatusCodeProtocolError reason:message]; + dispatch_async(self->_workQueue, ^{ + [self _disconnect]; + }); + }]; +} + +- (void)_failWithError:(NSError *)error; +{ + dispatch_async(_workQueue, ^{ + if (self.readyState != SR_CLOSED) { + self->_failed = YES; + [self _performDelegateBlock:^{ + if ([self.delegate respondsToSelector:@selector(webSocket:didFailWithError:)]) { + [self.delegate webSocket:self didFailWithError:error]; + } + }]; + + self.readyState = SR_CLOSED; + + SRFastLog(@"Failing with error %@", error.localizedDescription); + + [self _disconnect]; + [self _scheduleCleanup]; + } + }); +} + +- (void)_writeData:(NSData *)data; +{ + [self assertOnWorkQueue]; + + if (_closeWhenFinishedWriting) { + return; + } + [_outputBuffer appendData:data]; + [self _pumpWriting]; +} +- (void)send:(id)data; +{ + SRFastLog(@"Sending data %@", data); + NSAssert(self.readyState != SR_CONNECTING, @"Invalid State: Cannot call send: until connection is open"); + // TODO: maybe not copy this for performance + data = [data copy]; + dispatch_async(_workQueue, ^{ + if ([data isKindOfClass:[NSString class]]) { + [self _sendFrameWithOpcode:SROpCodeTextFrame data:[(NSString *)data dataUsingEncoding:NSUTF8StringEncoding]]; + } else if ([data isKindOfClass:[NSData class]]) { + [self _sendFrameWithOpcode:SROpCodeBinaryFrame data:data]; + } else if (data == nil) { + [self _sendFrameWithOpcode:SROpCodeTextFrame data:data]; + } else { + assert(NO); + } + }); +} + +- (void)handlePing:(NSData *)pingData; +{ + // Need to pingpong this off _callbackQueue first to make sure messages happen in order + [self _performDelegateBlock:^{ + dispatch_async(self->_workQueue, ^{ + [self _sendFrameWithOpcode:SROpCodePong data:pingData]; + }); + }]; +} + +- (void)handlePong; +{ + // NOOP +} + +- (void)_handleMessage:(id)message +{ + SRFastLog(@"Received message"); + [self _performDelegateBlock:^{ + if ([self.delegate respondsToSelector:@selector(webSocket:didReceiveMessage:)]) { + [self.delegate webSocket:self didReceiveMessage:message]; + } + }]; +} + + +static inline BOOL closeCodeIsValid(int closeCode) { + if (closeCode < 1000) { + return NO; + } + + if (closeCode >= 1000 && closeCode <= 1011) { + if (closeCode == 1004 || + closeCode == 1005 || + closeCode == 1006) { + return NO; + } + return YES; + } + + if (closeCode >= 3000 && closeCode <= 3999) { + return YES; + } + + if (closeCode >= 4000 && closeCode <= 4999) { + return YES; + } + + return NO; +} + +// Note from RFC: +// +// If there is a body, the first two +// bytes of the body MUST be a 2-byte unsigned integer (in network byte +// order) representing a status code with value /code/ defined in +// Section 7.4. Following the 2-byte integer the body MAY contain UTF-8 +// encoded data with value /reason/, the interpretation of which is not +// defined by this specification. + +- (void)handleCloseWithData:(NSData *)data; +{ + size_t dataSize = data.length; + __block uint16_t closeCode = 0; + + SRFastLog(@"Received close frame"); + + if (dataSize == 1) { + // TODO handle error + [self _closeWithProtocolError:@"Payload for close must be larger than 2 bytes"]; + return; + } else if (dataSize >= 2) { + [data getBytes:&closeCode length:sizeof(closeCode)]; + _closeCode = EndianU16_BtoN(closeCode); + if (!closeCodeIsValid(_closeCode)) { + [self _closeWithProtocolError:[NSString stringWithFormat:@"Cannot have close code of %d", _closeCode]]; + return; + } + if (dataSize > 2) { + _closeReason = [[NSString alloc] initWithData:[data subdataWithRange:NSMakeRange(2, dataSize - 2)] encoding:NSUTF8StringEncoding]; + if (!_closeReason) { + [self _closeWithProtocolError:@"Close reason MUST be valid UTF-8"]; + return; + } + } + } else { + _closeCode = SRStatusNoStatusReceived; + } + + [self assertOnWorkQueue]; + + if (self.readyState == SR_OPEN) { + [self closeWithCode:1000 reason:nil]; + } + dispatch_async(_workQueue, ^{ + [self _disconnect]; + }); +} + +- (void)_disconnect; +{ + [self assertOnWorkQueue]; + SRFastLog(@"Trying to disconnect"); + _closeWhenFinishedWriting = YES; + [self _pumpWriting]; +} + +- (void)_handleFrameWithData:(NSData *)frameData opCode:(NSInteger)opcode; +{ + // Check that the current data is valid UTF8 + + BOOL isControlFrame = (opcode == SROpCodePing || opcode == SROpCodePong || opcode == SROpCodeConnectionClose); + if (!isControlFrame) { + [self _readFrameNew]; + } else { + dispatch_async(_workQueue, ^{ + [self _readFrameContinue]; + }); + } + + switch (opcode) { + case SROpCodeTextFrame: { + NSString *str = [[NSString alloc] initWithData:frameData encoding:NSUTF8StringEncoding]; + if (str == nil && frameData) { + [self closeWithCode:SRStatusCodeInvalidUTF8 reason:@"Text frames must be valid UTF-8"]; + dispatch_async(_workQueue, ^{ + [self _disconnect]; + }); + + return; + } + [self _handleMessage:str]; + break; + } + case SROpCodeBinaryFrame: + [self _handleMessage:[frameData copy]]; + break; + case SROpCodeConnectionClose: + [self handleCloseWithData:frameData]; + break; + case SROpCodePing: + [self handlePing:frameData]; + break; + case SROpCodePong: + [self handlePong]; + break; + default: + [self _closeWithProtocolError:[NSString stringWithFormat:@"Unknown opcode %u", (int)opcode]]; + // TODO: Handle invalid opcode + break; + } +} + +- (void)_handleFrameHeader:(frame_header)frame_header curData:(NSData *)curData; +{ + assert(frame_header.opcode != 0); + + if (self.readyState != SR_OPEN) { + return; + } + + + BOOL isControlFrame = (frame_header.opcode == SROpCodePing || frame_header.opcode == SROpCodePong || frame_header.opcode == SROpCodeConnectionClose); + + if (isControlFrame && !frame_header.fin) { + [self _closeWithProtocolError:@"Fragmented control frames not allowed"]; + return; + } + + if (isControlFrame && frame_header.payload_length >= 126) { + [self _closeWithProtocolError:@"Control frames cannot have payloads larger than 126 bytes"]; + return; + } + + if (!isControlFrame) { + _currentFrameOpcode = frame_header.opcode; + _currentFrameCount += 1; + } + + if (frame_header.payload_length == 0) { + if (isControlFrame) { + [self _handleFrameWithData:curData opCode:frame_header.opcode]; + } else { + if (frame_header.fin) { + [self _handleFrameWithData:_currentFrameData opCode:frame_header.opcode]; + } else { + // TODO add assert that opcode is not a control; + [self _readFrameContinue]; + } + } + } else { + [self _addConsumerWithDataLength:(size_t)frame_header.payload_length callback:^(FSRWebSocket *self, NSData *newData) { + if (isControlFrame) { + [self _handleFrameWithData:newData opCode:frame_header.opcode]; + } else { + if (frame_header.fin) { + [self _handleFrameWithData:self->_currentFrameData opCode:frame_header.opcode]; + } else { + // TODO add assert that opcode is not a control; + [self _readFrameContinue]; + } + + } + } readToCurrentFrame:!isControlFrame unmaskBytes:frame_header.masked]; + } +} + +/* From RFC: + + 0 1 2 3 + 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + +-+-+-+-+-------+-+-------------+-------------------------------+ + |F|R|R|R| opcode|M| Payload len | Extended payload length | + |I|S|S|S| (4) |A| (7) | (16/64) | + |N|V|V|V| |S| | (if payload len==126/127) | + | |1|2|3| |K| | | + +-+-+-+-+-------+-+-------------+ - - - - - - - - - - - - - - - + + | Extended payload length continued, if payload len == 127 | + + - - - - - - - - - - - - - - - +-------------------------------+ + | |Masking-key, if MASK set to 1 | + +-------------------------------+-------------------------------+ + | Masking-key (continued) | Payload Data | + +-------------------------------- - - - - - - - - - - - - - - - + + : Payload Data continued ... : + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + | Payload Data continued ... | + +---------------------------------------------------------------+ + */ + +static const uint8_t SRFinMask = 0x80; +static const uint8_t SROpCodeMask = 0x0F; +static const uint8_t SRRsvMask = 0x70; +static const uint8_t SRMaskMask = 0x80; +static const uint8_t SRPayloadLenMask = 0x7F; + + +- (void)_readFrameContinue; +{ + assert((_currentFrameCount == 0 && _currentFrameOpcode == 0) || (_currentFrameCount > 0 && _currentFrameOpcode > 0)); + + [self _addConsumerWithDataLength:2 callback:^(FSRWebSocket *self, NSData *data) { + __block frame_header header = {0}; + + const uint8_t *headerBuffer = data.bytes; + assert(data.length >= 2); + + if (headerBuffer[0] & SRRsvMask) { + [self _closeWithProtocolError:@"Server used RSV bits"]; + return; + } + + uint8_t receivedOpcode = (SROpCodeMask & headerBuffer[0]); + + BOOL isControlFrame = (receivedOpcode == SROpCodePing || receivedOpcode == SROpCodePong || receivedOpcode == SROpCodeConnectionClose); + + if (!isControlFrame && receivedOpcode != 0 && self->_currentFrameCount > 0) { + [self _closeWithProtocolError:@"all data frames after the initial data frame must have opcode 0"]; + return; + } + + if (receivedOpcode == 0 && self->_currentFrameCount == 0) { + [self _closeWithProtocolError:@"cannot continue a message"]; + return; + } + + header.opcode = receivedOpcode == 0 ? self->_currentFrameOpcode : receivedOpcode; + + header.fin = !!(SRFinMask & headerBuffer[0]); + + + header.masked = !!(SRMaskMask & headerBuffer[1]); + header.payload_length = SRPayloadLenMask & headerBuffer[1]; + + headerBuffer = NULL; + + if (header.masked) { + [self _closeWithProtocolError:@"Client must receive unmasked data"]; + } + + size_t extra_bytes_needed = header.masked ? sizeof(self->_currentReadMaskKey) : 0; + + if (header.payload_length == 126) { + extra_bytes_needed += sizeof(uint16_t); + } else if (header.payload_length == 127) { + extra_bytes_needed += sizeof(uint64_t); + } + + if (extra_bytes_needed == 0) { + [self _handleFrameHeader:header curData:self->_currentFrameData]; + } else { + [self _addConsumerWithDataLength:extra_bytes_needed callback:^(FSRWebSocket *self, NSData *data) { + size_t mapped_size = data.length; + const void *mapped_buffer = data.bytes; + size_t offset = 0; + + if (header.payload_length == 126) { + assert(mapped_size >= sizeof(uint16_t)); + uint16_t newLen = EndianU16_BtoN(*(uint16_t *)(mapped_buffer)); + header.payload_length = newLen; + offset += sizeof(uint16_t); + } else if (header.payload_length == 127) { + assert(mapped_size >= sizeof(uint64_t)); + header.payload_length = EndianU64_BtoN(*(uint64_t *)(mapped_buffer)); + offset += sizeof(uint64_t); + } else { + assert(header.payload_length < 126 && header.payload_length >= 0); + } + + + if (header.masked) { + assert(mapped_size >= sizeof(self->_currentReadMaskOffset) + offset); + memcpy(self->_currentReadMaskKey, ((uint8_t *)mapped_buffer) + offset, sizeof(self->_currentReadMaskKey)); + } + + [self _handleFrameHeader:header curData:self->_currentFrameData]; + } readToCurrentFrame:NO unmaskBytes:NO]; + } + } readToCurrentFrame:NO unmaskBytes:NO]; +} + +- (void)_readFrameNew; +{ + dispatch_async(_workQueue, ^{ + [self->_currentFrameData setLength:0]; + + self->_currentFrameOpcode = 0; + self->_currentFrameCount = 0; + self->_readOpCount = 0; + self->_currentStringScanPosition = 0; + + [self _readFrameContinue]; + }); +} + +- (void)_pumpWriting; +{ + [self assertOnWorkQueue]; + + NSUInteger dataLength = _outputBuffer.length; + if (dataLength - _outputBufferOffset > 0 && _outputStream.hasSpaceAvailable) { + NSUInteger bytesWritten = [_outputStream write:_outputBuffer.bytes + _outputBufferOffset maxLength:dataLength - _outputBufferOffset]; + if (bytesWritten == -1) { + [self _failWithError:[NSError errorWithDomain:@"org.lolrus.SocketRocket" code:2145 userInfo:[NSDictionary dictionaryWithObject:@"Error writing to stream" forKey:NSLocalizedDescriptionKey]]]; + return; + } + + _outputBufferOffset += bytesWritten; + + if (_outputBufferOffset > 4096 && _outputBufferOffset > (_outputBuffer.length >> 1)) { + _outputBuffer = [[NSMutableData alloc] initWithBytes:(char *)_outputBuffer.bytes + _outputBufferOffset length:_outputBuffer.length - _outputBufferOffset]; + _outputBufferOffset = 0; + } + } + + if (_closeWhenFinishedWriting && + _outputBuffer.length - _outputBufferOffset == 0 && + (_inputStream.streamStatus != NSStreamStatusNotOpen && + _inputStream.streamStatus != NSStreamStatusClosed) && + !_sentClose) { + _sentClose = YES; + + @synchronized (self) { + [_outputStream close]; + [_inputStream close]; + + // TODO: Why are we missing the SocketRocket code to call unscheduleFromRunLoop??? + } + + if (!_failed) { + [self _performDelegateBlock:^{ + if ([self.delegate respondsToSelector:@selector(webSocket:didCloseWithCode:reason:wasClean:)]) { + [self.delegate webSocket:self didCloseWithCode:self->_closeCode reason:self->_closeReason wasClean:YES]; + } + }]; + } + [self _scheduleCleanup]; + } +} + +- (void)_addConsumerWithScanner:(stream_scanner)consumer callback:(data_callback)callback; +{ + [self assertOnWorkQueue]; + [self _addConsumerWithScanner:consumer callback:callback dataLength:0]; +} + +- (void)_addConsumerWithDataLength:(size_t)dataLength callback:(data_callback)callback readToCurrentFrame:(BOOL)readToCurrentFrame unmaskBytes:(BOOL)unmaskBytes; +{ + [self assertOnWorkQueue]; + assert(dataLength); + + [_consumers addObject:[_consumerPool consumerWithScanner:nil handler:callback bytesNeeded:dataLength readToCurrentFrame:readToCurrentFrame unmaskBytes:unmaskBytes]]; + [self _pumpScanner]; +} + +- (void)_addConsumerWithScanner:(stream_scanner)consumer callback:(data_callback)callback dataLength:(size_t)dataLength; +{ + [self assertOnWorkQueue]; + [_consumers addObject:[_consumerPool consumerWithScanner:consumer handler:callback bytesNeeded:dataLength readToCurrentFrame:NO unmaskBytes:NO]]; + [self _pumpScanner]; +} + + +- (void)_scheduleCleanup +{ + @synchronized(self) { + if (_cleanupScheduled) { + return; + } + + _cleanupScheduled = YES; + + // Cleanup NSStream delegate's in the same RunLoop used by the streams themselves: + // This way we'll prevent race conditions between handleEvent and SRWebsocket's dealloc + NSTimer *timer = [NSTimer timerWithTimeInterval:(0.0f) target:self selector:@selector(_cleanupSelfReference:) userInfo:nil repeats:NO]; + [[NSRunLoop FSR_networkRunLoop] addTimer:timer forMode:NSDefaultRunLoopMode]; + } +} + +- (void)_cleanupSelfReference:(NSTimer *)timer +{ + @synchronized(self) { + // Nuke NSStream delegate's + _inputStream.delegate = nil; + _outputStream.delegate = nil; + + // Remove the streams, right now, from the networkRunLoop + [_inputStream close]; + [_outputStream close]; + } + + // Cleanup selfRetain in the same GCD queue as usual + dispatch_async(_workQueue, ^{ + self->_selfRetain = nil; + }); +} + + +static const char CRLFCRLFBytes[] = {'\r', '\n', '\r', '\n'}; + +- (void)_readUntilHeaderCompleteWithCallback:(data_callback)dataHandler; +{ + [self _readUntilBytes:CRLFCRLFBytes length:sizeof(CRLFCRLFBytes) callback:dataHandler]; +} + +- (void)_readUntilBytes:(const void *)bytes length:(size_t)length callback:(data_callback)dataHandler; +{ + // TODO optimize so this can continue from where we last searched + stream_scanner consumer = ^size_t(NSData *data) { + __block size_t found_size = 0; + __block size_t match_count = 0; + + size_t size = data.length; + const unsigned char *buffer = data.bytes; + for (int i = 0; i < size; i++ ) { + if (((const unsigned char *)buffer)[i] == ((const unsigned char *)bytes)[match_count]) { + match_count += 1; + if (match_count == length) { + found_size = i + 1; + break; + } + } else { + match_count = 0; + } + } + return found_size; + }; + [self _addConsumerWithScanner:consumer callback:dataHandler]; +} + + +// Returns true if did work +- (BOOL)_innerPumpScanner { + + BOOL didWork = NO; + + if (self.readyState >= SR_CLOSING) { + return didWork; + } + + if (!_consumers.count) { + return didWork; + } + + size_t curSize = _readBuffer.length - _readBufferOffset; + if (!curSize) { + return didWork; + } + + FSRIOConsumer *consumer = [_consumers objectAtIndex:0]; + + size_t bytesNeeded = consumer.bytesNeeded; + + size_t foundSize = 0; + if (consumer.consumer) { + NSData *tempView = [NSData dataWithBytesNoCopy:(char *)_readBuffer.bytes + _readBufferOffset length:_readBuffer.length - _readBufferOffset freeWhenDone:NO]; + foundSize = consumer.consumer(tempView); + } else { + assert(consumer.bytesNeeded); + if (curSize >= bytesNeeded) { + foundSize = bytesNeeded; + } else if (consumer.readToCurrentFrame) { + foundSize = curSize; + } + } + + NSData *slice = nil; + if (consumer.readToCurrentFrame || foundSize) { + NSRange sliceRange = NSMakeRange(_readBufferOffset, foundSize); + slice = [_readBuffer subdataWithRange:sliceRange]; + + _readBufferOffset += foundSize; + + if (_readBufferOffset > 4096 && _readBufferOffset > (_readBuffer.length >> 1)) { + _readBuffer = [[NSMutableData alloc] initWithBytes:(char *)_readBuffer.bytes + _readBufferOffset length:_readBuffer.length - _readBufferOffset]; _readBufferOffset = 0; + } + + if (consumer.unmaskBytes) { + NSMutableData *mutableSlice = [slice mutableCopy]; + + NSUInteger len = mutableSlice.length; + uint8_t *bytes = mutableSlice.mutableBytes; + + for (int i = 0; i < len; i++) { + bytes[i] = bytes[i] ^ _currentReadMaskKey[_currentReadMaskOffset % sizeof(_currentReadMaskKey)]; + _currentReadMaskOffset += 1; + } + + slice = mutableSlice; + } + + if (consumer.readToCurrentFrame) { + [_currentFrameData appendData:slice]; + + _readOpCount += 1; + + if (_currentFrameOpcode == SROpCodeTextFrame) { + // Validate UTF8 stuff. + size_t currentDataSize = _currentFrameData.length; + if (_currentFrameOpcode == SROpCodeTextFrame && currentDataSize > 0) { + // TODO: Optimize the crap out of this. Don't really have to copy all the data each time + + size_t scanSize = currentDataSize - _currentStringScanPosition; + + NSData *scan_data = [_currentFrameData subdataWithRange:NSMakeRange(_currentStringScanPosition, scanSize)]; + int32_t valid_utf8_size = validate_dispatch_data_partial_string(scan_data); + + if (valid_utf8_size == -1) { + [self closeWithCode:SRStatusCodeInvalidUTF8 reason:@"Text frames must be valid UTF-8"]; + dispatch_async(_workQueue, ^{ + [self _disconnect]; + }); + return didWork; + } else { + _currentStringScanPosition += valid_utf8_size; + } + } + + } + + consumer.bytesNeeded -= foundSize; + + if (consumer.bytesNeeded == 0) { + [_consumers removeObjectAtIndex:0]; + consumer.handler(self, nil); + didWork = YES; + } + } else if (foundSize) { + [_consumers removeObjectAtIndex:0]; + consumer.handler(self, slice); + didWork = YES; + } + } + return didWork; +} + +-(void)_pumpScanner; +{ + [self assertOnWorkQueue]; + + if (!_isPumping) { + _isPumping = YES; + } else { + return; + } + + while ([self _innerPumpScanner]) { + + } + + _isPumping = NO; +} + +//#define NOMASK + +static const size_t SRFrameHeaderOverhead = 32; + +- (void)_sendFrameWithOpcode:(FSROpCode)opcode data:(id)data; +{ + [self assertOnWorkQueue]; + + NSAssert(data == nil || [data isKindOfClass:[NSData class]] || [data isKindOfClass:[NSString class]], @"Function expects nil, NSString or NSData"); + + size_t payloadLength = [data isKindOfClass:[NSString class]] ? [(NSString *)data lengthOfBytesUsingEncoding:NSUTF8StringEncoding] : [data length]; + + NSMutableData *frame = [[NSMutableData alloc] initWithLength:payloadLength + SRFrameHeaderOverhead]; + if (!frame) { + [self closeWithCode:SRStatusCodeMessageTooBig reason:@"Message too big"]; + return; + } + uint8_t *frame_buffer = (uint8_t *)[frame mutableBytes]; + + // set fin + frame_buffer[0] = SRFinMask | opcode; + + BOOL useMask = YES; +#ifdef NOMASK + useMask = NO; +#endif + + if (useMask) { + // set the mask and header + frame_buffer[1] |= SRMaskMask; + } + + size_t frame_buffer_size = 2; + + const uint8_t *unmasked_payload = NULL; + if ([data isKindOfClass:[NSData class]]) { + unmasked_payload = (uint8_t *)[data bytes]; + } else if ([data isKindOfClass:[NSString class]]) { + unmasked_payload = (const uint8_t *)[data UTF8String]; + } else { + assert(NO); + } + + if (payloadLength < 126) { + frame_buffer[1] |= payloadLength; + } else if (payloadLength <= UINT16_MAX) { + frame_buffer[1] |= 126; + *((uint16_t *)(frame_buffer + frame_buffer_size)) = EndianU16_BtoN((uint16_t)payloadLength); + frame_buffer_size += sizeof(uint16_t); + } else { + frame_buffer[1] |= 127; + *((uint64_t *)(frame_buffer + frame_buffer_size)) = EndianU64_BtoN((uint64_t)payloadLength); + frame_buffer_size += sizeof(uint64_t); + } + + if (!useMask) { + for (int i = 0; i < payloadLength; i++) { + frame_buffer[frame_buffer_size] = unmasked_payload[i]; + frame_buffer_size += 1; + } + } else { + uint8_t *mask_key = frame_buffer + frame_buffer_size; + int result = SecRandomCopyBytes(kSecRandomDefault, sizeof(uint32_t), (uint8_t *)mask_key); + assert(result == 0); + frame_buffer_size += sizeof(uint32_t); + + // TODO: could probably optimize this with SIMD + for (int i = 0; i < payloadLength; i++) { + frame_buffer[frame_buffer_size] = unmasked_payload[i] ^ mask_key[i % sizeof(uint32_t)]; + frame_buffer_size += 1; + } + } + + assert(frame_buffer_size <= [frame length]); + frame.length = frame_buffer_size; + + [self _writeData:frame]; +} + +- (void)stream:(NSStream *)aStream handleEvent:(NSStreamEvent)eventCode; +{ + __weak __typeof__(self) weakSelf = self; + + // turn on keep-alive for the output stream. + if (eventCode == NSStreamEventOpenCompleted && aStream == _outputStream) { + CFDataRef socketData = CFWriteStreamCopyProperty((CFWriteStreamRef)_outputStream, kCFStreamPropertySocketNativeHandle); + // In rare cases socketData might be nil (there are crash reports out there), in which case we'll have to just + // live without keep-alive :( + if (socketData != nil) { + CFSocketNativeHandle socket; + CFDataGetBytes(socketData, CFRangeMake(0, sizeof(CFSocketNativeHandle)), (UInt8 *)&socket); + CFRelease(socketData); + + int keepAliveOn = 1; + if (setsockopt(socket, SOL_SOCKET, SO_KEEPALIVE, &keepAliveOn, sizeof(keepAliveOn)) == -1) { + SRFastLog(@"Failed to turn on TCP keepalive for websocket"); + } + } + } + + if (_secure && !_pinnedCertFound && (eventCode == NSStreamEventHasBytesAvailable || eventCode == NSStreamEventHasSpaceAvailable)) { + + NSArray *sslCerts = [_urlRequest FSR_SSLPinnedCertificates]; + if (sslCerts) { + SecTrustRef secTrust = (__bridge SecTrustRef)[aStream propertyForKey:(__bridge id)kCFStreamPropertySSLPeerTrust]; + if (secTrust) { + NSInteger numCerts = SecTrustGetCertificateCount(secTrust); + for (NSInteger i = 0; i < numCerts && !_pinnedCertFound; i++) { + SecCertificateRef cert = SecTrustGetCertificateAtIndex(secTrust, i); + NSData *certData = CFBridgingRelease(SecCertificateCopyData(cert)); + + for (id ref in sslCerts) { + SecCertificateRef trustedCert = (__bridge SecCertificateRef)ref; + NSData *trustedCertData = CFBridgingRelease(SecCertificateCopyData(trustedCert)); + + if ([trustedCertData isEqualToData:certData]) { + _pinnedCertFound = YES; + break; + } + } + } + } + + if (!_pinnedCertFound) { + dispatch_async(_workQueue, ^{ + NSDictionary *userInfo = @{ NSLocalizedDescriptionKey : @"Invalid server cert" }; + [weakSelf _failWithError:[NSError errorWithDomain:@"org.lolrus.SocketRocket" code:23556 userInfo:userInfo]]; + }); + return; + } + } + } + + // SRFastLog(@"%@ Got stream event %d", aStream, eventCode); + dispatch_async(_workQueue, ^{ + [weakSelf safeHandleEvent:eventCode stream:aStream]; + }); +} + +- (void)safeHandleEvent:(NSStreamEvent)eventCode stream:(NSStream *)aStream +{ + switch (eventCode) { + case NSStreamEventOpenCompleted: { + SRFastLog(@"NSStreamEventOpenCompleted %@", aStream); + if (self.readyState >= SR_CLOSING) { + return; + } + + + assert(_readBuffer); + + if (self.readyState == SR_CONNECTING && aStream == _inputStream) { + [self didConnect]; + } + [self _pumpWriting]; + [self _pumpScanner]; + break; + } + + case NSStreamEventErrorOccurred: { + SRFastLog(@"NSStreamEventErrorOccurred %@ %@", aStream, [[aStream streamError] copy]); + /// TODO specify error better! + [self _failWithError:aStream.streamError]; + _readBufferOffset = 0; + [_readBuffer setLength:0]; + break; + + } + + case NSStreamEventEndEncountered: { + [self _pumpScanner]; + SRFastLog(@"NSStreamEventEndEncountered %@", aStream); + if (aStream.streamError) { + [self _failWithError:aStream.streamError]; + } else { + dispatch_async(_workQueue, ^{ + if (self.readyState != SR_CLOSED) { + self.readyState = SR_CLOSED; + [self _scheduleCleanup]; + } + + if (!self->_sentClose && !self->_failed) { + self->_sentClose = YES; + // If we get closed in this state it's probably not clean because we should be sending this when we send messages + [self _performDelegateBlock:^{ + if ([self.delegate respondsToSelector:@selector(webSocket:didCloseWithCode:reason:wasClean:)]) { + [self.delegate webSocket:self didCloseWithCode:0 reason:@"Stream end encountered" wasClean:NO]; + } + }]; + } + }); + } + + break; + } + + case NSStreamEventHasBytesAvailable: { + SRFastLog(@"NSStreamEventHasBytesAvailable %@", aStream); + const NSUInteger bufferSize = 2048; + uint8_t buffer[bufferSize]; + + while (_inputStream.hasBytesAvailable) { + NSInteger bytes_read = [_inputStream read:buffer maxLength:bufferSize]; + + if (bytes_read > 0) { + [_readBuffer appendBytes:buffer length:bytes_read]; + } else if (bytes_read < 0) { + [self _failWithError:_inputStream.streamError]; + } + + if (bytes_read != bufferSize) { + break; + } + }; + [self _pumpScanner]; + break; + } + + case NSStreamEventHasSpaceAvailable: { + SRFastLog(@"NSStreamEventHasSpaceAvailable %@", aStream); + [self _pumpWriting]; + break; + } + + default: + SRFastLog(@"(default) %@", aStream); + break; + } +} + +@end + + +@implementation FSRIOConsumer + +@synthesize bytesNeeded = _bytesNeeded; +@synthesize consumer = _scanner; +@synthesize handler = _handler; +@synthesize readToCurrentFrame = _readToCurrentFrame; +@synthesize unmaskBytes = _unmaskBytes; + +- (void)setupWithScanner:(stream_scanner)scanner handler:(data_callback)handler bytesNeeded:(size_t)bytesNeeded readToCurrentFrame:(BOOL)readToCurrentFrame unmaskBytes:(BOOL)unmaskBytes; +{ + _scanner = [scanner copy]; + _handler = [handler copy]; + _bytesNeeded = bytesNeeded; + _readToCurrentFrame = readToCurrentFrame; + _unmaskBytes = unmaskBytes; + assert(_scanner || _bytesNeeded); +} + +@end + +@implementation FSRIOConsumerPool { + NSUInteger _poolSize; + NSMutableArray *_bufferedConsumers; +} + +- (id)initWithBufferCapacity:(NSUInteger)poolSize; +{ + self = [super init]; + if (self) { + _poolSize = poolSize; + _bufferedConsumers = [[NSMutableArray alloc] initWithCapacity:poolSize]; + } + return self; +} + +- (id)init +{ + return [self initWithBufferCapacity:8]; +} + +- (FSRIOConsumer *)consumerWithScanner:(stream_scanner)scanner handler:(data_callback)handler bytesNeeded:(size_t)bytesNeeded readToCurrentFrame:(BOOL)readToCurrentFrame unmaskBytes:(BOOL)unmaskBytes; +{ + FSRIOConsumer *consumer = nil; + if (_bufferedConsumers.count) { + consumer = [_bufferedConsumers lastObject]; + [_bufferedConsumers removeLastObject]; + } else { + consumer = [[FSRIOConsumer alloc] init]; + } + + [consumer setupWithScanner:scanner handler:handler bytesNeeded:bytesNeeded readToCurrentFrame:readToCurrentFrame unmaskBytes:unmaskBytes]; + + return consumer; +} + +- (void)returnConsumer:(FSRIOConsumer *)consumer; +{ + if (_bufferedConsumers.count < _poolSize) { + [_bufferedConsumers addObject:consumer]; + } +} + +@end + +@implementation NSURLRequest (FCertificateAdditions) + +- (NSArray *)FSR_SSLPinnedCertificates; +{ + return [NSURLProtocol propertyForKey:@"FSR_SSLPinnedCertificates" inRequest:self]; +} + +@end + +@implementation NSMutableURLRequest (FCertificateAdditions) + +- (NSArray *)FSR_SSLPinnedCertificates; +{ + return [NSURLProtocol propertyForKey:@"FSR_SSLPinnedCertificates" inRequest:self]; +} + +- (void)setFSR_SSLPinnedCertificates:(NSArray *)FSR_SSLPinnedCertificates; +{ + [NSURLProtocol setProperty:FSR_SSLPinnedCertificates forKey:@"FSR_SSLPinnedCertificates" inRequest:self]; +} + +@end + +@implementation NSURL (FSRWebSocket) + +- (NSString *)SR_origin; +{ + NSString *scheme = [self.scheme lowercaseString]; + + if ([scheme isEqualToString:@"wss"]) { + scheme = @"https"; + } else if ([scheme isEqualToString:@"ws"]) { + scheme = @"http"; + } + + if (self.port != nil) { + return [NSString stringWithFormat:@"%@://%@:%@/", scheme, self.host, self.port]; + } else { + return [NSString stringWithFormat:@"%@://%@/", scheme, self.host]; + } +} + +@end + +// #define SR_ENABLE_LOG + +static inline void SRFastLog(NSString *format, ...) { +#ifdef SR_ENABLE_LOG + __block va_list arg_list; + va_start (arg_list, format); + + NSString *formattedString = [[NSString alloc] initWithFormat:format arguments:arg_list]; + + va_end(arg_list); + + NSLog(@"[SR] %@", formattedString); +#endif +} + + +#ifdef HAS_ICU + +static inline int32_t validate_dispatch_data_partial_string(NSData *data) { + + const void * contents = [data bytes]; + long size = [data length]; + + const uint8_t *str = (const uint8_t *)contents; + + + UChar32 codepoint = 1; + int32_t offset = 0; + int32_t lastOffset = 0; + while(offset < size && codepoint > 0) { + lastOffset = offset; + U8_NEXT(str, offset, size, codepoint); + } + + if (codepoint == -1) { + // Check to see if the last byte is valid or whether it was just continuing + if (!U8_IS_LEAD(str[lastOffset]) || U8_COUNT_TRAIL_BYTES(str[lastOffset]) + lastOffset < (int32_t)size) { + + size = -1; + } else { + uint8_t leadByte = str[lastOffset]; + U8_MASK_LEAD_BYTE(leadByte, U8_COUNT_TRAIL_BYTES(leadByte)); + + for (int i = lastOffset + 1; i < offset; i++) { + + if (U8_IS_SINGLE(str[i]) || U8_IS_LEAD(str[i]) || !U8_IS_TRAIL(str[i])) { + size = -1; + } + } + + if (size != -1) { + size = lastOffset; + } + } + } + + if (size != -1 && ![[NSString alloc] initWithBytesNoCopy:(char *)[data bytes] length:size encoding:NSUTF8StringEncoding freeWhenDone:NO]) { + size = -1; + } + + return (int32_t)size; +} + +#else + +// This is a hack, and probably not optimal +static inline int32_t validate_dispatch_data_partial_string(NSData *data) { + static const int maxCodepointSize = 3; + + for (int i = 0; i < maxCodepointSize; i++) { + NSString *str = [[NSString alloc] initWithBytesNoCopy:(char *)data.bytes length:data.length - i encoding:NSUTF8StringEncoding freeWhenDone:NO]; + if (str) { + return (int)(data.length - i); + } + } + + return -1; +} + +#endif + +static _FSRRunLoopThread *networkThread = nil; +static NSRunLoop *networkRunLoop = nil; + +@implementation NSRunLoop (FSRWebSocket) + ++ (NSRunLoop *)FSR_networkRunLoop { + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + networkThread = [[_FSRRunLoopThread alloc] init]; + networkThread.name = @"com.squareup.SocketRocket.NetworkThread"; + [networkThread start]; + networkRunLoop = networkThread.runLoop; + }); + + return networkRunLoop; +} + +@end + + +@implementation _FSRRunLoopThread { + dispatch_group_t _waitGroup; +} + +@synthesize runLoop = _runLoop; + +- (void)dealloc +{ + sr_dispatch_release(_waitGroup); +} + +- (id)init +{ + self = [super init]; + if (self) { + _waitGroup = dispatch_group_create(); + dispatch_group_enter(_waitGroup); + } + return self; +} + + +/** + * This is the main method of the thread on which the socket events are scheduled in a run loop. + */ +- (void)main; +{ + @autoreleasepool { + _runLoop = [NSRunLoop currentRunLoop]; + dispatch_group_leave(_waitGroup); + + // Add an empty run loop source to prevent runloop from spinning. + CFRunLoopSourceContext sourceCtx = { + .version = 0, + .info = NULL, + .retain = NULL, + .release = NULL, + .copyDescription = NULL, + .equal = NULL, + .hash = NULL, + .schedule = NULL, + .cancel = NULL, + .perform = NULL + }; + CFRunLoopSourceRef source = CFRunLoopSourceCreate(NULL, 0, &sourceCtx); + CFRunLoopAddSource(CFRunLoopGetCurrent(), source, kCFRunLoopDefaultMode); + CFRelease(source); + + while ([_runLoop runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]]) { + + } + assert(NO); + } +} + +- (NSRunLoop *)runLoop; +{ + dispatch_group_wait(_waitGroup, DISPATCH_TIME_FOREVER); + return _runLoop; +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/NSData+SRB64Additions.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/NSData+SRB64Additions.h new file mode 100644 index 0000000..bac393b --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/NSData+SRB64Additions.h @@ -0,0 +1,23 @@ +// +// Copyright 2012 Square Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +#import + +@interface FSRUtilities : NSObject + ++ (NSString *)base64EncodedStringFromData:(NSData *)data; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/NSData+SRB64Additions.m b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/NSData+SRB64Additions.m new file mode 100644 index 0000000..2be1d84 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/NSData+SRB64Additions.m @@ -0,0 +1,37 @@ +// +// Copyright 2012 Square Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +#import "NSData+SRB64Additions.h" +#import "fbase64.h" + +@implementation FSRUtilities + ++ (NSString *)base64EncodedStringFromData:(NSData *)data { + size_t buffer_size = ((data.length * 3 + 2) / 2); + + char *buffer = (char *)malloc(buffer_size); + + int len = f_b64_ntop(data.bytes, data.length, buffer, buffer_size); + + if (len == -1) { + free(buffer); + return nil; + } else{ + return [[NSString alloc] initWithBytesNoCopy:buffer length:len encoding:NSUTF8StringEncoding freeWhenDone:YES]; + } +} + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/fbase64.c b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/fbase64.c new file mode 100644 index 0000000..238c23c --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/fbase64.c @@ -0,0 +1,318 @@ +/* $OpenBSD: base64.c,v 1.5 2006/10/21 09:55:03 otto Exp $ */ + +/* + * Copyright (c) 1996 by Internet Software Consortium. + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS + * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE + * CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL + * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR + * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS + * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS + * SOFTWARE. + */ + +/* + * Portions Copyright (c) 1995 by International Business Machines, Inc. + * + * International Business Machines, Inc. (hereinafter called IBM) grants + * permission under its copyrights to use, copy, modify, and distribute this + * Software with or without fee, provided that the above copyright notice and + * all paragraphs of this notice appear in all copies, and that the name of IBM + * not be used in connection with the marketing of any product incorporating + * the Software or modifications thereof, without specific, written prior + * permission. + * + * To the extent it has a right to do so, IBM grants an immunity from suit + * under its patents, if any, for the use, sale or manufacture of products to + * the extent that such products are used for performing Domain Name System + * dynamic updates in TCP/IP networks by means of the Software. No immunity is + * granted for any product per se or for any other function of any product. + * + * THE SOFTWARE IS PROVIDED "AS IS", AND IBM DISCLAIMS ALL WARRANTIES, + * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + * PARTICULAR PURPOSE. IN NO EVENT SHALL IBM BE LIABLE FOR ANY SPECIAL, + * DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER ARISING + * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE, EVEN + * IF IBM IS APPRISED OF THE POSSIBILITY OF SUCH DAMAGES. + */ + +/* OPENBSD ORIGINAL: lib/libc/net/base64.c */ + + +// +// Distributed with modifications by Firebase ( https://www.firebase.com ) +// + +#if (!defined(HAVE_B64_NTOP) && !defined(HAVE___B64_NTOP)) || (!defined(HAVE_B64_PTON) && !defined(HAVE___B64_PTON)) + +#include +#include +#include +#include +#include + +#include +#include + +#include +#include + +#include "fbase64.h" + +static const char Base64[] = +"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; +static const char Pad64 = '='; + +/* (From RFC1521 and draft-ietf-dnssec-secext-03.txt) + The following encoding technique is taken from RFC 1521 by Borenstein + and Freed. It is reproduced here in a slightly edited form for + convenience. + + A 65-character subset of US-ASCII is used, enabling 6 bits to be + represented per printable character. (The extra 65th character, "=", + is used to signify a special processing function.) + + The encoding process represents 24-bit groups of input bits as output + strings of 4 encoded characters. Proceeding from left to right, a + 24-bit input group is formed by concatenating 3 8-bit input groups. + These 24 bits are then treated as 4 concatenated 6-bit groups, each + of which is translated into a single digit in the base64 alphabet. + + Each 6-bit group is used as an index into an array of 64 printable + characters. The character referenced by the index is placed in the + output string. + + Table 1: The Base64 Alphabet + + Value Encoding Value Encoding Value Encoding Value Encoding + 0 A 17 R 34 i 51 z + 1 B 18 S 35 j 52 0 + 2 C 19 T 36 k 53 1 + 3 D 20 U 37 l 54 2 + 4 E 21 V 38 m 55 3 + 5 F 22 W 39 n 56 4 + 6 G 23 X 40 o 57 5 + 7 H 24 Y 41 p 58 6 + 8 I 25 Z 42 q 59 7 + 9 J 26 a 43 r 60 8 + 10 K 27 b 44 s 61 9 + 11 L 28 c 45 t 62 + + 12 M 29 d 46 u 63 / + 13 N 30 e 47 v + 14 O 31 f 48 w (pad) = + 15 P 32 g 49 x + 16 Q 33 h 50 y + + Special processing is performed if fewer than 24 bits are available + at the end of the data being encoded. A full encoding quantum is + always completed at the end of a quantity. When fewer than 24 input + bits are available in an input group, zero bits are added (on the + right) to form an integral number of 6-bit groups. Padding at the + end of the data is performed using the '=' character. + + Since all base64 input is an integral number of octets, only the + ------------------------------------------------- + following cases can arise: + + (1) the final quantum of encoding input is an integral + multiple of 24 bits; here, the final unit of encoded + output will be an integral multiple of 4 characters + with no "=" padding, + (2) the final quantum of encoding input is exactly 8 bits; + here, the final unit of encoded output will be two + characters followed by two "=" padding characters, or + (3) the final quantum of encoding input is exactly 16 bits; + here, the final unit of encoded output will be three + characters followed by one "=" padding character. + */ + +#if !defined(HAVE_B64_NTOP) && !defined(HAVE___B64_NTOP) +int +f_b64_ntop(u_char const *src, size_t srclength, char *target, size_t targsize) +{ + size_t datalength = 0; + u_char input[3]; + u_char output[4]; + u_int i; + + while (2 < srclength) { + input[0] = *src++; + input[1] = *src++; + input[2] = *src++; + srclength -= 3; + + output[0] = input[0] >> 2; + output[1] = ((input[0] & 0x03) << 4) + (input[1] >> 4); + output[2] = ((input[1] & 0x0f) << 2) + (input[2] >> 6); + output[3] = input[2] & 0x3f; + + if (datalength + 4 > targsize) + return (-1); + target[datalength++] = Base64[output[0]]; + target[datalength++] = Base64[output[1]]; + target[datalength++] = Base64[output[2]]; + target[datalength++] = Base64[output[3]]; + } + + /* Now we worry about padding. */ + if (0 != srclength) { + /* Get what's left. */ + input[0] = input[1] = input[2] = '\0'; + for (i = 0; i < srclength; i++) + input[i] = *src++; + + output[0] = input[0] >> 2; + output[1] = ((input[0] & 0x03) << 4) + (input[1] >> 4); + output[2] = ((input[1] & 0x0f) << 2) + (input[2] >> 6); + + if (datalength + 4 > targsize) + return (-1); + target[datalength++] = Base64[output[0]]; + target[datalength++] = Base64[output[1]]; + if (srclength == 1) + target[datalength++] = Pad64; + else + target[datalength++] = Base64[output[2]]; + target[datalength++] = Pad64; + } + if (datalength >= targsize) + return (-1); + target[datalength] = '\0'; /* Returned value doesn't count \0. */ + return (int)(datalength); +} +#endif /* !defined(HAVE_B64_NTOP) && !defined(HAVE___B64_NTOP) */ + +#if !defined(HAVE_B64_PTON) && !defined(HAVE___B64_PTON) + +/* skips all whitespace anywhere. + converts characters, four at a time, starting at (or after) + src from base - 64 numbers into three 8 bit bytes in the target area. + it returns the number of data bytes stored at the target, or -1 on error. + */ + +int +f_b64_pton(char const *src, u_char *target, size_t targsize) +{ + u_int tarindex, state; + int ch; + char *pos; + + state = 0; + tarindex = 0; + + while ((ch = *src++) != '\0') { + if (isspace(ch)) /* Skip whitespace anywhere. */ + continue; + + if (ch == Pad64) + break; + + pos = strchr(Base64, ch); + if (pos == 0) /* A non-base64 character. */ + return (-1); + + switch (state) { + case 0: + if (target) { + if (tarindex >= targsize) + return (-1); + target[tarindex] = (pos - Base64) << 2; + } + state = 1; + break; + case 1: + if (target) { + if (tarindex + 1 >= targsize) + return (-1); + target[tarindex] |= (pos - Base64) >> 4; + target[tarindex+1] = ((pos - Base64) & 0x0f) + << 4 ; + } + tarindex++; + state = 2; + break; + case 2: + if (target) { + if (tarindex + 1 >= targsize) + return (-1); + target[tarindex] |= (pos - Base64) >> 2; + target[tarindex+1] = ((pos - Base64) & 0x03) + << 6; + } + tarindex++; + state = 3; + break; + case 3: + if (target) { + if (tarindex >= targsize) + return (-1); + target[tarindex] |= (pos - Base64); + } + tarindex++; + state = 0; + break; + } + } + + /* + * We are done decoding Base-64 chars. Let's see if we ended + * on a byte boundary, and/or with erroneous trailing characters. + */ + + if (ch == Pad64) { /* We got a pad char. */ + ch = *src++; /* Skip it, get next. */ + switch (state) { + case 0: /* Invalid = in first position */ + case 1: /* Invalid = in second position */ + return (-1); + + case 2: /* Valid, means one byte of info */ + /* Skip any number of spaces. */ + for (; ch != '\0'; ch = *src++) + if (!isspace(ch)) + break; + /* Make sure there is another trailing = sign. */ + if (ch != Pad64) + return (-1); + ch = *src++; /* Skip the = */ + /* Fall through to "single trailing =" case. */ + /* FALLTHROUGH */ + + case 3: /* Valid, means two bytes of info */ + /* + * We know this char is an =. Is there anything but + * whitespace after it? + */ + for (; ch != '\0'; ch = *src++) + if (!isspace(ch)) + return (-1); + + /* + * Now make sure for cases 2 and 3 that the "extra" + * bits that slopped past the last full byte were + * zeros. If we don't check them, they become a + * subliminal channel. + */ + if (target && target[tarindex] != 0) + return (-1); + } + } else { + /* + * We ended by seeing the end of the string. Make sure we + * have no partial bytes lying around. + */ + if (state != 0) + return (-1); + } + + return (tarindex); +} + +#endif /* !defined(HAVE_B64_PTON) && !defined(HAVE___B64_PTON) */ +#endif diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/fbase64.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/fbase64.h new file mode 100644 index 0000000..a9bf142 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/SocketRocket/fbase64.h @@ -0,0 +1,33 @@ +// Copyright 2012 Square Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +#ifndef FSocketRocket_base64_h +#define FSocketRocket_base64_h + +#include + +extern int +f_b64_ntop(u_char const *src, + size_t srclength, + char *target, + size_t targsize); + +extern int +f_b64_pton(char const *src, + u_char *target, + size_t targsize); + + +#endif diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/Wrap-leveldb/APLevelDB.h b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/Wrap-leveldb/APLevelDB.h new file mode 100644 index 0000000..c0baa22 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/Wrap-leveldb/APLevelDB.h @@ -0,0 +1,105 @@ +// +// APLevelDB.h +// +// Created by Adam Preble on 1/23/12. +// Copyright (c) 2012 Adam Preble. All rights reserved. +// +// 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. + +#import + +extern NSString * const APLevelDBErrorDomain; + +@class APLevelDBIterator; +@protocol APLevelDBWriteBatch; + +@interface APLevelDB : NSObject + +@property (nonatomic, readonly, strong) NSString *path; + ++ (APLevelDB *)levelDBWithPath:(NSString *)path error:(NSError *__autoreleasing*)errorOut; +- (void)close; + +- (BOOL)setData:(NSData *)data forKey:(NSString *)key; +- (BOOL)setString:(NSString *)str forKey:(NSString *)key; + +- (NSData *)dataForKey:(NSString *)key; +- (NSString *)stringForKey:(NSString *)key; + +- (BOOL)removeKey:(NSString *)key; + +- (NSArray *)allKeys; + +- (void)enumerateKeys:(void (^)(NSString *key, BOOL *stop))block; +- (void)enumerateKeysWithPrefix:(NSString *)prefix usingBlock:(void (^)(NSString *key, BOOL *stop))block; + +- (void)enumerateKeysAndValuesAsStrings:(void (^)(NSString *key, NSString *value, BOOL *stop))block; +- (void)enumerateKeysWithPrefix:(NSString *)prefix asStrings:(void (^)(NSString *key, NSString *value, BOOL *stop))block; + +- (void)enumerateKeysAndValuesAsData:(void (^)(NSString *key, NSData *value, BOOL *stop))block; +- (void)enumerateKeysWithPrefix:(NSString *)prefix asData:(void (^)(NSString *key, NSData *value, BOOL *stop))block; + +- (NSUInteger)approximateSizeFrom:(NSString *)from to:(NSString *)to; +- (NSUInteger)exactSizeFrom:(NSString *)from to:(NSString *)to; + +// Objective-C Subscripting Support: +// The database object supports subscripting for string-string and string-data key-value access and assignment. +// Examples: +// db[@"key"] = @"value"; +// db[@"key"] = [NSData data]; +// NSString *s = db[@"key"]; +// An NSInvalidArgumentException is raised if the key is not an NSString, or if the assigned object is not an +// instance of NSString or NSData. +- (id)objectForKeyedSubscript:(id)key; +- (void)setObject:(id)object forKeyedSubscript:(id)key; + +// Batch write/atomic update support: +- (id)beginWriteBatch; + +@end + + +@interface APLevelDBIterator : NSObject + ++ (id)iteratorWithLevelDB:(APLevelDB *)db; + +// Designated initializer: +- (id)initWithLevelDB:(APLevelDB *)db; + +- (BOOL)seekToKey:(NSString *)key; +- (NSString *)nextKey; +- (NSString *)key; +- (NSString *)valueAsString; +- (NSData *)valueAsData; + +@end + + +@protocol APLevelDBWriteBatch + +- (void)setData:(NSData *)data forKey:(NSString *)key; +- (void)setString:(NSString *)str forKey:(NSString *)key; + +- (void)removeKey:(NSString *)key; + +// Remove all of the buffered sets and removes: +- (void)clear; +- (BOOL)commit; + +@end diff --git a/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/Wrap-leveldb/APLevelDB.mm b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/Wrap-leveldb/APLevelDB.mm new file mode 100644 index 0000000..cdecce6 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/Firebase/Database/third_party/Wrap-leveldb/APLevelDB.mm @@ -0,0 +1,500 @@ +// +// APLevelDB.m +// +// Created by Adam Preble on 1/23/12. +// Copyright (c) 2012 Adam Preble. All rights reserved. +// +// 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. + +// +// Portions of APLevelDB are based on LevelDB-ObjC: +// https://github.com/hoisie/LevelDB-ObjC +// Specifically the SliceFromString/StringFromSlice macros, and the structure of +// the enumeration methods. License for those potions follows: +// +// Copyright (c) 2011 Pave Labs +// +// 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. +// + +#import "APLevelDB.h" + +#import "leveldb/db.h" +#import "leveldb/options.h" +#import "leveldb/write_batch.h" + +NSString * const APLevelDBErrorDomain = @"APLevelDBErrorDomain"; + +#define SliceFromString(_string_) (leveldb::Slice((char *)[_string_ UTF8String], [_string_ lengthOfBytesUsingEncoding:NSUTF8StringEncoding])) +#define StringFromSlice(_slice_) ([[NSString alloc] initWithBytes:_slice_.data() length:_slice_.size() encoding:NSUTF8StringEncoding]) + + +@interface APLevelDBWriteBatch : NSObject { + @package + leveldb::WriteBatch _batch; +} + +@property (nonatomic, strong) APLevelDB *levelDB; + +- (id)initWithLevelDB:(APLevelDB *)levelDB; +@end + + +#pragma mark - APLevelDB + +@interface APLevelDB () { + leveldb::DB *_db; + leveldb::ReadOptions _readOptions; + leveldb::WriteOptions _writeOptions; +} +- (id)initWithPath:(NSString *)path error:(NSError **)errorOut; ++ (leveldb::Options)defaultCreateOptions; +@property (nonatomic, readonly) leveldb::DB *db; +@end + + +@implementation APLevelDB + +@synthesize path = _path; +@synthesize db = _db; + ++ (APLevelDB *)levelDBWithPath:(NSString *)path error:(NSError *__autoreleasing *)errorOut +{ + return [[APLevelDB alloc] initWithPath:path error:errorOut]; +} + +- (id)initWithPath:(NSString *)path error:(NSError *__autoreleasing *)errorOut +{ + if ((self = [super init])) + { + _path = path; + + leveldb::Options options = [[self class] defaultCreateOptions]; + + leveldb::Status status = leveldb::DB::Open(options, [_path UTF8String], &_db); + + if (!status.ok()) + { + if (errorOut) + { + NSString *statusString = [[NSString alloc] initWithCString:status.ToString().c_str() encoding:NSUTF8StringEncoding]; + *errorOut = [NSError errorWithDomain:APLevelDBErrorDomain + code:0 + userInfo:[NSDictionary dictionaryWithObjectsAndKeys:statusString, NSLocalizedDescriptionKey, nil]]; + } + return nil; + } + + _writeOptions.sync = false; + } + return self; +} + +- (void)close { + if (_db != NULL) { + delete _db; + _db = NULL; + } +} + +- (void)dealloc +{ + if (_db != NULL) { + delete _db; + _db = NULL; + } +} + ++ (leveldb::Options)defaultCreateOptions +{ + leveldb::Options options; + options.create_if_missing = true; + return options; +} + +- (BOOL)setData:(NSData *)data forKey:(NSString *)key +{ + leveldb::Slice keySlice = SliceFromString(key); + leveldb::Slice valueSlice = leveldb::Slice((const char *)[data bytes], (size_t)[data length]); + leveldb::Status status = _db->Put(_writeOptions, keySlice, valueSlice); + return (status.ok() == true); +} + +- (BOOL)setString:(NSString *)str forKey:(NSString *)key +{ + // This could have been based on + leveldb::Slice keySlice = SliceFromString(key); + leveldb::Slice valueSlice = SliceFromString(str); + leveldb::Status status = _db->Put(_writeOptions, keySlice, valueSlice); + return (status.ok() == true); +} + +- (NSData *)dataForKey:(NSString *)key +{ + leveldb::Slice keySlice = SliceFromString(key); + std::string valueCPPString; + leveldb::Status status = _db->Get(_readOptions, keySlice, &valueCPPString); + + if (!status.ok()) + return nil; + else + return [NSData dataWithBytes:valueCPPString.data() length:valueCPPString.size()]; +} + +- (NSString *)stringForKey:(NSString *)key +{ + leveldb::Slice keySlice = SliceFromString(key); + std::string valueCPPString; + leveldb::Status status = _db->Get(_readOptions, keySlice, &valueCPPString); + + // We assume (dangerously?) UTF-8 string encoding: + if (!status.ok()) + return nil; + else + return [[NSString alloc] initWithBytes:valueCPPString.data() length:valueCPPString.size() encoding:NSUTF8StringEncoding]; +} + +- (BOOL)removeKey:(NSString *)key +{ + leveldb::Slice keySlice = SliceFromString(key); + leveldb::Status status = _db->Delete(_writeOptions, keySlice); + return (status.ok() == true); +} + +- (NSArray *)allKeys +{ + NSMutableArray *keys = [NSMutableArray array]; + [self enumerateKeys:^(NSString *key, BOOL *stop) { + [keys addObject:key]; + }]; + return keys; +} + +- (void)enumerateKeysAndValuesAsStrings:(void (^)(NSString *key, NSString *value, BOOL *stop))block +{ + [self enumerateKeysWithPrefix:@"" asStrings:block]; +} + +- (void)enumerateKeysWithPrefix:(NSString *)prefixString asStrings:(void (^)(NSString *, NSString *, BOOL *))block +{ + @autoreleasepool { + BOOL stop = NO; + leveldb::Iterator* iter = _db->NewIterator(leveldb::ReadOptions()); + leveldb::Slice prefix = SliceFromString(prefixString); + for (iter->Seek(prefix); iter->Valid(); iter->Next()) { + leveldb::Slice key = iter->key(), value = iter->value(); + if (key.starts_with(prefix)) { + NSString *k = StringFromSlice(key); + NSString *v = [[NSString alloc] initWithBytes:value.data() length:value.size() encoding:NSUTF8StringEncoding]; + block(k, v, &stop); + if (stop) + break; + } else { + break; + } + } + + delete iter; + } +} + +- (void)enumerateKeys:(void (^)(NSString *key, BOOL *stop))block +{ + [self enumerateKeysWithPrefix:@"" usingBlock:block]; +} + +- (void)enumerateKeysWithPrefix:(NSString *)prefixString usingBlock:(void (^)(NSString *key, BOOL *stop))block; +{ + @autoreleasepool { + BOOL stop = NO; + leveldb::Slice prefix = SliceFromString(prefixString); + leveldb::Iterator* iter = _db->NewIterator(leveldb::ReadOptions()); + for (iter->Seek(prefix); iter->Valid(); iter->Next()) { + leveldb::Slice key = iter->key(); + if (key.starts_with(prefix)) { + NSString *k = StringFromSlice(key); + block(k, &stop); + if (stop) + break; + } else { + break; + } + } + + delete iter; + } +} + +- (void)enumerateKeysAndValuesAsData:(void (^)(NSString *key, NSData *data, BOOL *stop))block +{ + [self enumerateKeysWithPrefix:@"" asData:block]; +} + +- (void)enumerateKeysWithPrefix:(NSString *)prefixString asData:(void (^)(NSString *, NSData *, BOOL *))block +{ + @autoreleasepool { + BOOL stop = NO; + leveldb::Iterator* iter = _db->NewIterator(leveldb::ReadOptions()); + leveldb::Slice prefix = SliceFromString(prefixString); + for (iter->Seek(prefix); iter->Valid(); iter->Next()) { + leveldb::Slice key = iter->key(), value = iter->value(); + if (key.starts_with(prefix)) { + NSString *k = StringFromSlice(key); + NSData *data = [NSData dataWithBytes:value.data() length:value.size()]; + block(k, data, &stop); + if (stop) + break; + } else { + break; + } + } + + delete iter; + } +} + +- (NSUInteger)exactSizeFrom:(NSString *)from to:(NSString *)to { + NSUInteger size = 0; + leveldb::Iterator* iter = _db->NewIterator(leveldb::ReadOptions()); + leveldb::Slice fromSlice = SliceFromString(from); + leveldb::Slice toSlice = SliceFromString(to); + iter->Seek(fromSlice); + while (iter->Valid() && iter->key().compare(toSlice) <= 0) { + size += iter->value().size(); + iter->Next(); + } + delete iter; + return size; +} + + +- (NSUInteger)approximateSizeFrom:(NSString *)from to:(NSString *)to { + leveldb::Range ranges[1]; + leveldb::Slice fromSlice = SliceFromString(from); + leveldb::Slice toSlice = SliceFromString(to); + ranges[0] = leveldb::Range(fromSlice, toSlice); + uint64_t sizes[1]; + _db->GetApproximateSizes(ranges, 1, sizes); + return (NSUInteger)sizes[0]; +} + +#pragma mark - Subscripting Support + +- (id)objectForKeyedSubscript:(id)key +{ + if (![key respondsToSelector: @selector(componentsSeparatedByString:)]) + { + [NSException raise:NSInvalidArgumentException format:@"key must be an NSString"]; + } + return [self stringForKey:key]; +} +- (void)setObject:(id)thing forKeyedSubscript:(id)key +{ + id idKey = (id) key; + if (![idKey respondsToSelector: @selector(componentsSeparatedByString:)]) + { + [NSException raise:NSInvalidArgumentException format:@"key must be NSString or NSData"]; + } + + if ([thing respondsToSelector:@selector(componentsSeparatedByString:)]) + [self setString:thing forKey:(NSString *)key]; + else if ([thing respondsToSelector:@selector(subdataWithRange:)]) + [self setData:thing forKey:(NSString *)key]; + else + [NSException raise:NSInvalidArgumentException format:@"object must be NSString or NSData"]; +} + +#pragma mark - Atomic Updates + +- (id)beginWriteBatch +{ + APLevelDBWriteBatch *batch = [[APLevelDBWriteBatch alloc] initWithLevelDB:self]; + return batch; +} + +- (BOOL)commitWriteBatch:(id)theBatch +{ + if (!theBatch) + return NO; + + APLevelDBWriteBatch *batch = theBatch; + + leveldb::Status status; + status = _db->Write(_writeOptions, &batch->_batch); + return (status.ok() == true); +} + +@end + + +#pragma mark - APLevelDBIterator + +@interface APLevelDBIterator () { + leveldb::Iterator *_iter; +} + +@property (nonatomic, strong) APLevelDB *levelDB; +@end + + + +@implementation APLevelDBIterator + ++ (id)iteratorWithLevelDB:(APLevelDB *)db +{ + APLevelDBIterator *iter = [[[self class] alloc] initWithLevelDB:db]; + return iter; +} + +- (id)initWithLevelDB:(APLevelDB *)db +{ + if ((self = [super init])) + { + // Hold on to the database so it doesn't get deallocated before the iterator is deallocated + self->_levelDB = db; + _iter = db.db->NewIterator(leveldb::ReadOptions()); + _iter->SeekToFirst(); + if (!_iter->Valid()) + return nil; + } + return self; +} + +- (id)init +{ + [NSException raise:@"BadInitializer" format:@"Use the designated initializer, -initWithLevelDB:, instead."]; + return nil; +} + +- (void)dealloc +{ + self->_levelDB = nil; + delete _iter; + _iter = NULL; +} + +- (BOOL)seekToKey:(NSString *)key +{ + leveldb::Slice target = SliceFromString(key); + _iter->Seek(target); + return _iter->Valid() == true; +} + +- (void)seekToFirst +{ + _iter->SeekToFirst(); +} + +- (void)seekToLast +{ + _iter->SeekToLast(); +} + +- (NSString *)nextKey +{ + _iter->Next(); + return [self key]; +} + +- (NSString *)key +{ + if (_iter->Valid() == false) + return nil; + leveldb::Slice value = _iter->key(); + return StringFromSlice(value); +} + +- (NSString *)valueAsString +{ + if (_iter->Valid() == false) + return nil; + leveldb::Slice value = _iter->value(); + return StringFromSlice(value); +} + +- (NSData *)valueAsData +{ + if (_iter->Valid() == false) + return nil; + leveldb::Slice value = _iter->value(); + return [NSData dataWithBytes:value.data() length:value.size()]; +} + +@end + + + +#pragma mark - APLevelDBWriteBatch + +@implementation APLevelDBWriteBatch + +- (id)initWithLevelDB:(APLevelDB *)levelDB { + self = [super init]; + if (self != nil) { + self->_levelDB = levelDB; + } + return self; +} + +- (void)setData:(NSData *)data forKey:(NSString *)key +{ + leveldb::Slice keySlice = SliceFromString(key); + leveldb::Slice valueSlice = leveldb::Slice((const char *)[data bytes], (size_t)[data length]); + _batch.Put(keySlice, valueSlice); +} +- (void)setString:(NSString *)str forKey:(NSString *)key +{ + leveldb::Slice keySlice = SliceFromString(key); + leveldb::Slice valueSlice = SliceFromString(str); + _batch.Put(keySlice, valueSlice); +} + +- (void)removeKey:(NSString *)key +{ + leveldb::Slice keySlice = SliceFromString(key); + _batch.Delete(keySlice); +} + +- (void)clear +{ + _batch.Clear(); +} + +- (BOOL)commit { + return [self.levelDB commitWriteBatch:self]; +} + +@end + diff --git a/Til to Code/Pods/FirebaseDatabase/LICENSE b/Til to Code/Pods/FirebaseDatabase/LICENSE new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/Til to Code/Pods/FirebaseDatabase/README.md b/Til to Code/Pods/FirebaseDatabase/README.md new file mode 100644 index 0000000..4414b3e --- /dev/null +++ b/Til to Code/Pods/FirebaseDatabase/README.md @@ -0,0 +1,179 @@ +# Firebase iOS Open Source Development [![Build Status](https://travis-ci.org/firebase/firebase-ios-sdk.svg?branch=master)](https://travis-ci.org/firebase/firebase-ios-sdk) + +This repository contains a subset of the Firebase iOS SDK source. It currently +includes FirebaseCore, FirebaseAuth, FirebaseDatabase, FirebaseFirestore, +FirebaseFunctions, FirebaseMessaging and FirebaseStorage. + +The repository also includes GoogleUtilities source. The +[GoogleUtilities](GoogleUtilities/README.md) pod is +a set of utilities used by Firebase and other Google products. + +Firebase is an app development platform with tools to help you build, grow and +monetize your app. More information about Firebase can be found at +[https://firebase.google.com](https://firebase.google.com). + +## Installation + +See the three subsections for details about three different installation methods. +1. [Standard pod install](README.md#standard-pod-install) +1. [Installing from the GitHub repo](README.md#installing-from-github) +1. [Experimental Carthage](README.md#carthage-ios-only) + +### Standard pod install + +Go to +[https://firebase.google.com/docs/ios/setup](https://firebase.google.com/docs/ios/setup). + +### Installing from GitHub + +For releases starting with 5.0.0, the source for each release is also deployed +to CocoaPods master and available via standard +[CocoaPods Podfile syntax](https://guides.cocoapods.org/syntax/podfile.html#pod). + +These instructions can be used to access the Firebase repo at other branches, +tags, or commits. + +#### Background + +See +[the Podfile Syntax Reference](https://guides.cocoapods.org/syntax/podfile.html#pod) +for instructions and options about overriding pod source locations. + +#### Accessing Firebase Source Snapshots + +All of the official releases are tagged in this repo and available via CocoaPods. To access a local +source snapshot or unreleased branch, use Podfile directives like the following: + +To access FirebaseFirestore via a branch: +``` +pod 'FirebaseCore', :git => 'https://github.com/firebase/firebase-ios-sdk.git', :branch => 'master' +pod 'FirebaseFirestore', :git => 'https://github.com/firebase/firebase-ios-sdk.git', :branch => 'master' +``` + +To access FirebaseMessaging via a checked out version of the firebase-ios-sdk repo do: + +``` +pod 'FirebaseCore', :path => '/path/to/firebase-ios-sdk' +pod 'FirebaseMessaging', :path => '/path/to/firebase-ios-sdk' +``` + +### Carthage (iOS only) + +An experimental Carthage distribution is now available. See +[Carthage](Carthage.md). + +## Development + +Follow the subsequent instructions to develop, debug, unit test, run integration +tests, and try out reference samples: + +``` +$ git clone git@github.com:firebase/firebase-ios-sdk.git +$ cd firebase-ios-sdk/Example +$ pod update +$ open Firebase.xcworkspace +``` + +Firestore and Functions have self contained Xcode projects. See +[Firestore/README.md](Firestore/README.md) and +[Functions/README.md](Functions/README.md). + +### Running Unit Tests + +Select a scheme and press Command-u to build a component and run its unit tests. + +### Running Sample Apps +In order to run the sample apps and integration tests, you'll need valid +`GoogleService-Info.plist` files for those samples. The Firebase Xcode project contains dummy plist +files without real values, but can be replaced with real plist files. To get your own +`GoogleService-Info.plist` files: + +1. Go to the [Firebase Console](https://console.firebase.google.com/) +2. Create a new Firebase project, if you don't already have one +3. For each sample app you want to test, create a new Firebase app with the sample app's bundle +identifier (e.g. `com.google.Database-Example`) +4. Download the resulting `GoogleService-Info.plist` and replace the appropriate dummy plist file +(e.g. in [Example/Database/App/](Example/Database/App/)); + +Some sample apps like Firebase Messaging ([Example/Messaging/App](Example/Messaging/App)) require +special Apple capabilities, and you will have to change the sample app to use a unique bundle +identifier that you can control in your own Apple Developer account. + +## Specific Component Instructions +See the sections below for any special instructions for those components. + +### Firebase Auth + +If you're doing specific Firebase Auth development, see +[AuthSamples/README.md](AuthSamples/README.md) for instructions about +building and running the FirebaseAuth pod along with various samples and tests. + +### Firebase Database + +To run the Database Integration tests, make your database authentication rules +[public](https://firebase.google.com/docs/database/security/quickstart). + +### Firebase Storage + +To run the Storage Integration tests, follow the instructions in +[FIRStorageIntegrationTests.m](Example/Storage/Tests/Integration/FIRStorageIntegrationTests.m). + +#### Push Notifications + +Push notifications can only be delivered to specially provisioned App IDs in the developer portal. +In order to actually test receiving push notifications, you will need to: + +1. Change the bundle identifier of the sample app to something you own in your Apple Developer +account, and enable that App ID for push notifications. +2. You'll also need to +[upload your APNs Provider Authentication Key or certificate to the Firebase Console](https://firebase.google.com/docs/cloud-messaging/ios/certs) +at **Project Settings > Cloud Messaging > [Your Firebase App]**. +3. Ensure your iOS device is added to your Apple Developer portal as a test device. + +#### iOS Simulator + +The iOS Simulator cannot register for remote notifications, and will not receive push notifications. +In order to receive push notifications, you'll have to follow the steps above and run the app on a +physical device. + +## Community Supported Efforts + +We've seen an amazing amount of interest and contributions to improve the Firebase SDKs, and we are +very grateful! We'd like to empower as many developers as we can to be able to use Firebase and +participate in the Firebase community. + +### macOS and tvOS +FirebaseAuth, FirebaseCore, FirebaseDatabase and FirebaseStorage now compile, run unit tests, and +work on macOS and tvOS, thanks to contributions from the community. There are a few tweaks needed, +like ensuring iOS-only, macOS-only, or tvOS-only code is correctly guarded with checks for +`TARGET_OS_IOS`, `TARGET_OS_OSX` and `TARGET_OS_TV`. + +For tvOS, checkout the [Sample](Example/tvOSSample). + +Keep in mind that macOS and tvOS are not officially supported by Firebase, and this repository is +actively developed primarily for iOS. While we can catch basic unit test issues with Travis, there +may be some changes where the SDK no longer works as expected on macOS or tvOS. If you encounter +this, please [file an issue](https://github.com/firebase/firebase-ios-sdk/issues). + +For installation instructions, see [above](README.md#accessing-firebase-source-snapshots). + +Note that the Firebase pod is not available for macOS and tvOS. Install a selection of the +`FirebaseAuth`, `FirebaseCore`, `FirebaseDatabase` and `FirebaseStorage` CocoaPods. + +## Roadmap + +See [Roadmap](ROADMAP.md) for more about the Firebase iOS SDK Open Source +plans and directions. + +## Contributing + +See [Contributing](CONTRIBUTING.md) for more information on contributing to the Firebase +iOS SDK. + +## License + +The contents of this repository is licensed under the +[Apache License, version 2.0](http://www.apache.org/licenses/LICENSE-2.0). + +Your use of Firebase is governed by the +[Terms of Service for Firebase Services](https://firebase.google.com/terms/). diff --git a/Til to Code/Pods/FirebaseInstanceID/CHANGELOG.md b/Til to Code/Pods/FirebaseInstanceID/CHANGELOG.md new file mode 100755 index 0000000..b81d158 --- /dev/null +++ b/Til to Code/Pods/FirebaseInstanceID/CHANGELOG.md @@ -0,0 +1,132 @@ +# 2018-10-25 -- v3.3.0 +- Fixed a crash caused by keychain operation when accessing default access group. (#1399, #1393) +- Remove internal APIs that are no longer used. + +# 2018-09-25 -- v3.2.2 +- Fixed a crash caused by NSUserDefaults being called on background thread. + +# 2018-08-14 -- v3.2.1 +- Fixed an issue that checkin is not cached properly when app first started. (#1561) + +# 2018-07-31 -- v3.2.0 +- Added support for global Firebase data collection flag. (#1219) +- Improved message tracking sent by server API. +- Fixed an issue that InstanceID doesn't compile in app extensions, allowing its +dependents like remote config to be working inside the app extensions. + +# 2018-06-19 -- v3.1.1 +- Ensure the checkin and tokens are refreshed if firebase project changed. +- Fixed an issue that checkin should be turned off when FCM's autoInitEnabled flag is off. + +# 2018-06-12 -- v3.1.0 +- Added a new API to fetch InstanceID and Token with a completion handler. The completion handler returns a FIRInstanceIDResult with a instanceID and a token properties. +- Deprecated the token method. +- Added support to log a new customized label provided by developer. + +# 2018-05-08 -- v3.0.0 +- Removed deprecated method `setAPNSToken:type` defined in FIRInstanceID, please use `setAPNSToken:type` defined in FIRMessaging instead. +- Removed deprecated enum `FIRInstanceIDAPNSTokenType` defined in FIRInstanceID, please use `FIRMessagingAPNSTokenType` defined in FIRMessaging instead. +- Fixed an issue that FCM scheduled messages were not tracked successfully. + +# 2018-03-06 -- v2.0.10 +- Improved documentation on InstanceID usage for GDPR. +- Improved the keypair handling during GCM to FCM migration. If you are migrating from GCM to FCM, we encourage you to update to this version and above. + +# 2018-02-06 -- v2.0.9 +- Improved support for language targeting for FCM service. Server updates happen more efficiently when language changes. +- Improved support for FCM token auto generation enable/disable functions. + +# 2017-12-11 -- v2.0.8 +- Fixed a crash caused by a reflection call during logging. +- Updating server with the latest parameters and deprecating old ones. + +# 2017-11-27 -- v2.0.7 +- Improve identity reset process, ensuring all information is reset during Identity deletion. + +# 2017-11-06 -- v2.0.6 +- Make token refresh weekly. +- Fixed a crash when performing token operation. + +# 2017-10-11 -- v2.0.5 +- Improved support for working in shared Keychain environments. + +# 2017-09-26 -- v2.0.4 +- Fixed an issue where the FCM token was not associating correctly with an APNs + device token, depending on when the APNs device token was made available. +- Fixed an issue where FCM tokens for different Sender IDs were not associating + correctly with an APNs device token. +- Fixed an issue that was preventing the FCM direct channel from being + established on the first start after 24 hours of being opened. + +# 2017-09-13 -- v2.0.3 +- Fixed a race condition where a token was not being generated on first start, + if Firebase Messaging was included and the app did not register for remote + notifications. + +# 2017-08-25 -- v2.0.2 +- Fixed a startup performance regression, removing a call which was blocking the + main thread. + +# 2017-08-07 -- v2.0.1 +- Fixed issues with token and app identifier being inaccessible when the device + is locked. +- Fixed a crash if bundle identifier is nil, which is possible in some testing + environments. +- Fixed a small memory leak fetching a new token. +- Moved to a new and simplified token storage system. +- Moved to a new queuing system for token fetches and deletes. +- Simplified logic and code around configuration and logging. +- Added clarification about the 'apns_sandbox' parameter, in header comments. + +# 2017-05-08 -- v2.0.0 +- Introduced an improved interface for Swift 3 developers +- Deprecated some methods and properties after moving their logic to the + Firebase Cloud Messaging SDK +- Fixed an intermittent stability issue when a debug build of an app was + replaced with a release build of the same version +- Removed swizzling logic that was sometimes resulting in developers receiving + a validation notice about enabling push notification capabilities, even though + they weren't using push notifications +- Fixed a notification that would sometimes fire twice in quick succession + during the first run of an app + +# 2017-03-31 -- v1.0.10 + +- Improvements to token-fetching logic +- Fixed some warnings in Instance ID +- Improved error messages if Instance ID couldn't be initialized properly +- Improvements to console logging + +# 2017-01-31 -- v1.0.9 + +- Removed an error being mistakenly logged to the console. + +# 2016-07-06 -- v1.0.8 + +- Don't store InstanceID plists in Documents folder. + +# 2016-06-19 -- v1.0.7 + +- Fix remote-notifications warning on app submission. + +# 2016-05-16 -- v1.0.6 + +- Fix CocoaPod linter issues for InstanceID pod. + +# 2016-05-13 -- v1.0.5 + +- Fix Authorization errors for InstanceID tokens. + +# 2016-05-11 -- v1.0.4 + +- Reduce wait for InstanceID token during parallel requests. + +# 2016-04-18 -- v1.0.3 + +- Change flag to disable swizzling to *FirebaseAppDelegateProxyEnabled*. +- Fix incessant Keychain errors while accessing InstanceID. +- Fix max retries for fetching IID token. + +# 2016-04-18 -- v1.0.2 + +- Register for remote notifications on iOS8+ in the SDK itself. diff --git a/Til to Code/Pods/FirebaseInstanceID/Frameworks/FirebaseInstanceID.framework/FirebaseInstanceID b/Til to Code/Pods/FirebaseInstanceID/Frameworks/FirebaseInstanceID.framework/FirebaseInstanceID new file mode 100755 index 0000000000000000000000000000000000000000..46aff495d0fb2bc23ffb824e05da5238f6c8e4cb GIT binary patch literal 5428736 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
~Ts~PP{~b8puSMYE{TeVy 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
W=_#i1d%K>>mZ*Yse}M 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�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

L~s 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

m}5G+#`qSxqZvjMXZYTFF#PY9OQ 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%0Do>HdX3zE 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%0D_RYTFn6~BaozyaDk6|nDe7w?i39>FXbYH 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

PWB5|@tor?Z|_yw}9WRsEauOBE@l3s-j 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≧e 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

V+`w`vv z@c;8~k1vjrGDV@b-P{&^OOa0DWCoSWH4q1%{^;k42FAft#Y(rDfj;u^q4rmp57%hG z|16G0df9fU{?NA!@=<|4m*I0bi=mhcm8=^ndr&aC?CjOP&PYb1Z*LU;&gb>} z05|_xpH@^ZuUcNlbJBr63h|*aw$6MU#D~ThpF#}Tr$hPBckl91V?GX<4@7=G7A~n; zw7j?kq5cXAa&qQB<<0B=75J#hVr=0s8i8^f|ZmoMkGUv?bN<))cnV0Gr&%z)C!(trHWDJ;e2!i|uu_gX!dyIiYk zbO}g*cEfY|`ZL%EtjQc++M3^z8-}zK=_RvsN|W>gFt6C_-j>T@(%zE-Sd@hZmi@y#4r8Z}6WE;~3uf{0lc~XnBssw`H8$i-9_V9<*U@3x`pI z=W?#ujB@Mu_TC+|^|R~hyO6#(Ro|uSJ+$X)qPNwa0bc*@dJrYfx!NRp%sV1ZURQ7a z^!l)@iCGRUk)Mw1isJ9Dt5t`u$7OxJH~3HbTcD_#T`y618CI&^_`B;hS&8nkf8F)> z*ZA{XUT2ZKc8}Y>pg+o-kQLzC|C#H1+jY<7Lf1yosOCR$Ta{zw*7ue3mRd(#isgqF zdptKjU-hiF9Au-1U_Y2BX7XX4aT)tMoj z8kzyhX0^iN2Rv zu=D9O?{qN5X>I4bT#Dezl9p-Z0nC3N6 zo(z^0^KG5?OS3e`z5Y8(RzAtcF;6dcUnWa)7A{|2=6#{Ln9p>IOP=;Cokp`In~9Cr zUz%Hw9usEvw>hn^jVjRJ6}+U@=TJ|GiHGvOk5L@2TE6|1kFQu&R3Bg zHUp29{ZR~{?jf)T*Zp4w`nmJnG^9Bj^{V;Z&g#iYp2W0dPpaeT%lTxCH@BtZ z`jt0{QoJP>ai>o*H>*>XaXemFWZ?7-Uhmk`^>8=wYW=3a1LVJD`9BB!zloJz-}gs> zO8V2%})dL)$=Y2U;Ud2=6!6AWB&yfZCA*@NB%#_ ztDpak{Ljd%ug{bJC3(f6Hsr(g?_m9sq(9ZC_4S>kk4du8@lZ_4-w%0<a>QU)E9p zaL>n0*sEQ6v`OtcWNo`-xE7uMv|b(fr?sd4^t-?Qe>z8fe`njjpe2kOdvTVx&Y2nQ zXCI|8Dz-2@F@D?j*Z%7B|NV`pe>VN&fB)g~8wVqYb+}zVmX3Xio7g+~0UNbL-!F%5 zxc}7|9l^6gB9o?W4X6!&U|86_vB7_`uqN*Dz?oa`oEdy~QdDYK^pnGrHr8i1M#W`h z)&G@qZ_>>3*%6I*#~;a^@yv#X_c#6g<=`1vA5M4s7q6+NXW5;yuzU%1Nm@c#diFFl)b!!qrYYOWso9fn- z230rKRYuoUHQ_U8WlbHfDxKpP7sVb6h&%KCnA7bs=f}pJ#+4I$cI=ol8)A>mh&|mL z(=~R?>44_YHT&u+osgHR70H^gy44AFDK&L3Wrx1hTvypxmy!^=I=gOlY0yj6p)ZvN zp{+;^t*NMcsdQ6SMd-?=q2oV1=IrjfPVJ689T2Pd-G=x@uHr#2g@wL!yW$tdjydtp zm}47aPJ6ycz-NnMX-N0(yH1adxfn3USs50(nkGA8ikw!2g;v+pRaMlj9MqW$V=s=4 zIa)M^=AVCm%*EX?M>oWtr3XAQAH5TEe0R+G-FH#f6}mm$30oT$x+b-*lH(E`TD>o{ zJLVWM%!oZ%#6h7Uu_t!NT-<#Zr4Db1{b)w)v7*?TN8{?&)P$zw2fdU~_fmy2Ydv*q zOG8%>Np)ytf+T;$QEm#VVHh;gfp(-)O6w|`L#z4^)<+yNf_Z<;@eOKh*ZX6rrLUza z(Hr^KT)w{{I?VZ*CsJeWE6z_t_HcS_4 z9q&#%wP{*o#?;1)`x-OSx-!zpAABeM$foqpjQg5`(hts@jMSEQ)3*hAS~8{{e>eSLKzc{U)P{_- z8ct-p@Zp5FEslI5Of&O+?Mq+8~Ngb!rtkt*8x3Z_h|;dw1%f&YV2rN@Ty%(KezcIOqS2H0S?}wEsUwTK#zqu~5%xPl7UEasD}E;T<(ox;%+NH37~nuDNV^ zIrnVwM2`u3o)b4JK8ky7BaA$4sQ;{uy9}^HA&*tRuyW{>f z(Gwi(3Hsl&=4IaT?He~9{D-N3njG+tN9NppGWtevbbTWK@>X2!&AU_s*XeL@t>b=;@exGU}Pb=Wk>W%e+xLeAA{N?xLc9Fl)!S*-h8J_}!X| zSY3UP1zKb7PiA>74+mzS{NmIbwJfb_HU%|=e|u9z+7F&^3l!u#v#vgvm!6)P+uWHk zD!g;{;_%!jM~8PlIXyf#XF_;q&fM_ar)GzDKD9nPcTQ4x=bZWBxlhjt?|gcEcy8`< z;hniz;knNY&ua>By6YR~cGqkRiy!7`a5^*RJe26ky(7sp_rpX_-kLU(N8^2l^9+^M9l+vDtqe;2{?Xt&CId5jM#S|GAJ}OwCZbHHf#zyHu1BZDd__gp>YQf5Dp!tizO znP{twmbz)Bn<{ETt62}SD66hp(-!nt4gYPrYaN%|&WN>Kft?X+6GJPTLs!OyGOw@p zgnB8NWrZUK&=ql^)vo2*$k57~&}ESkYaQ3VGvpJTbcTG7|F?__U;q9WN_R(9Y#7zm z{e|^KF&8$(o@aIWeoR+ke}4UjF(=*irWUqEk6*d-N1oxkJ$LSI5BX8gogWlN{Ms|( zGAn|Lh=*S*=p8mUY}j*Q!&0101-+YJiVR&9T~`pt5~;2t|DR;PH*)yF$l+x@cmAj+ z;#_mY2R(QGI(I}5*H12kxM~l%oE!0r+!2=|BQCdxu;Yw2k@cXQ0| zk2x}9%+dG1z|xo%ae;sO`$Joy&swqUAKl6G)w-}x`M*GDtFh^=V!`nP}`gc1^IaWYd8rAt_iTwxhN9_?Gx{EulB3m|I-CPj2Ik$OpZedU&VN{2% z$gNw^yLkn75>26N^M5t;G3{Zg#rgqq&>=Z8M5d+zG*Nrs~D zupZqo=5SH$1x8>|?8Oato!=dEVs~s8eY@c4dJOVfLWh2M%#aN^K* z{pw2A>acOI>R)!@26bBOf9`v)u(V&hzhiaS{r%c0D}p@vp@pfsNv3S)%cGr*Y0kU+ zEEYeu`O1$A4j10*6grLv+V!hzIsX!}>5t-P1juvyD|O{>X2gB7IMEHO``7K6voZWt zz$-}Xu`UlY!b?yDmfAiz^mp6@_ z-dB9yw<-Q5U-5>g>T4J^2|F8KeW+fvWgO3jn8&Fx9eB?Ur5}1IC0#pM)w%E zeDJHEwolmnPG+CCjK6#*IW*&s<2M9)5Be{1f*y_t>F@uizZ3FaO!#N71`l@+^v?N( zGlnN@Jv-*7KMHy8i{UqX@@czv+_nEJ(VqA_qTE)ry;ZX(YHs`wr|tUJyWV^{azv@S zO~V*#TOJuw7}pb!te+C+2NPd?|L-5#pS||Oe`v29*?IpD^Ik}tb;mCQVrQo0?bS)O z>p;Z#{OJ7nJ4RaPRFBC&QaEB(vo&YM$L(7;zw>y1bIxw~G&G~WZwx>2qacRUe`W^` z^A4vG4WXmH6#mFo-?)vPGGgK%Mi=_RUY))!Hvi4UBiSPp+!OXvb@7*5%8D9ajn8%a zGw!XRocYbKUiqZDVtUKWqPSQ4&dRnwE_~;3=eWMW#{RZ_+?GG;8xr68B$RIK^>tV6 zHyYm`oYEnUTdHfxL*51EOSn!YSqi020d&fTUeqdd| z6TVsIKO-MnG~l4QDXdrXE(Hl#<}6>5Jivt``6pMgCgDjlU4XP z*FM`3wBD&H663FC?5qDcd|^+7$7P(gPGbDwKMc6b6Xpyv>KI`7X;~}*lmU_;lj{n08U#uT~ zcl~?M)Ncvjl7{Ew0g0h$(E-sPH3g-$1hvOFE2BT^2>NoEWxIl=M_U$yRLdp|o7dDY zZMJNE(A0gFjUG0)-m>{YDcR0S=XlY+MR#=-22fw!?pIPOg2EEnPu!Ar)`>{))=Kdf zGmN-c800lfYuOaxHT=XGG2Lr;G3YA^=Das3H`}sd!=A~vES^gH4chy&9sRbAmW>ERm7_G~Vww`^(5*Q`uMSe-AMU%xrm=PAtFRe!l6OdeZSy?fx} zUmm#Y+JP~_-}_Sd_r4zgy)Q?7@2QyY{c&o`zsx=G@!A6q{N;hC-fI2&$<{yqsI}x= z>#%=qefG~=p8cnmXJ@oL`n?06=C*v=*79k0%cngppE|9dMz($$*ZOH<>!+U9Pjg#8 zEo}X?g8#RCTHo^NzPRA{PY&L(IpmwumSz56_pqM@2mGuyaA{XY;Eu5sllDXhG!Kut z+WXF?cfXTfUC|k|Br4+7%Z-QMe|p#4)GNPQG(2?Hx97a?`R>RGF`wnn-W>FuCtnX+ z6x^Qj;nDd|elw};J8QF??4V(D{vx;M$~V)poU)(n>sYie;}7P~7@_uVnBMZvuS@TH z^Tq#{y*Cew;^^AOdzfJubQlISIw)X+h^UCeq9TINu!tB@af!htIwN2pK}0~rC1wT? z(4fH$i5i1Tj7f|S8e@nt$*`!XXmEK9aSN`|Xp9;|G;ZI0x_gEZL7(@#zTZE;>z#|H zt4^IdRdwoAbuHa>|FnJ1yf~?|>kNsXm8NTKpmF8F+D_h`5>ID%+I>*S)Mthqv+bE$ zUsfT$wq|!)*4_<{-R(NX=yxXh=l|OIW9=PrP1|X&mFY#7to^&}+9^5Co^Z_mQ+sk_ z{lslP?_b~l_5ATiS06mFCu>mgCl@kYzDsuV)_aU947&cn?|09C9SP6O8uZhrE7o_s z^p|?=Kc0Elbsq*L&0e!$_=#gx{lD@4=~%6&;gWZsvY2Ymf@-TH%D~m0jU{r~iDUY} z;d);u<(5sNnQIE;{MhIr;)?;I#p}jQEphEIYRQPpckd7P`PaVR?v|v?KfLXNE?5D!Iw*BJlMJJr%_Ai3Mp0Z3<>cW^UIB$6IZVvS(UQ${*s@L9rY29as`=b;7HVNDA|HGBTX_JTitLLh7myp5vKl~i@=fv;5f1TCyXFeB;*PXbqc2e5)-^r32!MR>mY=E?5&&@3wSZ zOzeuH(tv_wwrJ%7p>QYv-g9$7<@M`d&l?f_K5hfOf4oufR_7_@+uvnrIbzYalVz9m zYM0@5tO9yHsUpvkGUXg;?=`!UPJT9ilecr-)@4x>y$ZVynG{$yAbi>0m7A;vAMN2A zZU0{E=;9R#kCz{AyjLFm&c6?*Se;lBG;Qek5vP1ZKFT{6f2Z@0I~V+_>p%X{{uQb= zXZIXaDc(A&-RvhHcg$(2)#u~3Pp(+p?d=XKxqtWqRl83(nKpi$V&*19Phi!}K@`xH!4ZYwY+@>f>7oW~A~ z8%;o_sTa}GH716;#KC)Mop@mF?e>{kn|X;g{Sz@~x9P9XPc6c(jt%BwnfI+BcD6o$ ziY$Moire8SF?eG#d#ge5ml12~;;A(ouw}t-TsWWA(JZFg;BrVOJ%tG-=7U(=#sBiE zK+FUS#8?vUgG3)?4?HOzSXL!Jkc8QEep+fyMk1{kWMJc{G~emy7<+X8m_A=FqQz-` zz1*MmayeT;n;ysAoUv}a`n$e` zy%FbYZZ795To#C2DZ_3qw{_C73v&W%s|J>Zhd?2i3ttW&SO9NT;l4JQkmk=uey|nh zWs_FoApHrc1Y$wGJT$PTDzKcJMDNWB+*%d*D2ynN!Ui;;m||>V1VO{KRdRV}Ol&cY zwds#NE7UKx;G(csmOlksWLO@-oY#wn19MocY2iNAHHr-{kUI@<@+exS*&po-?^~*1F>!Z{LoXJ|ojMt-m*$*5B4v!%o+wy`7N8Vxykr zUI)YB5I8TU<)h8`w*>HscJFXjIEK)YG?d;XW9jYOmxSVIP&&thf8oqqcrVZV9-23f z?wpmZOY=^dfqi*hJWlSznYoq;4bi1drKG}VB-1f*5M>$4z2d+MCru_Lq|c7SiJVi? zaX=EzhnYerOmd!>q2X+FLS{lTK3z{vVCfw^7Uycw*^2A{A739e>xEY*Qr_%6K<($F z_VFL!Ri9C1X;YC9~w?Pr_jt>_iktL@reU03wn z^!bYPFWba@-s|l)D<<|@(Yafx-_*D--%d}O*Y)$bUg^GZZ3nLHZ2jrBwug5u8MbiA zk?lviE!kGPBxPl(_*3*Pv@zYbO&YfT^jOnKEeQ`n(<{RUPF40*=lvV(u7y&Uf(=H# zEilJ0z{Z4}v8fHl7S}p7P;9(mIfs^QXdJ3zaSlB0?IhveVC4qa@!HR!gxzx{wND!M z3HI{+9qusOs=U_CEbA(@cFfk^R%~-Pd%L_!8iC2O3ln$1ZeilReb&-}$r?!&qbzYQ zbP#tHg{t+7B(`~-t@bcEcJ9tBP9USX9CkhOq4`tX+pyRH*u~xl@@) zc^iqO!swdXwbW0fnx~1%)`{KAthB`%m9LjlDG|@BTjI4!FX&)mUiIzW@x3-%jKi$8t}LM>TV3xrHt*|%a&p9%a3gXmXFgZXAzV4Jq`?HJtu)fzJ!Jv9 zwFd^f?v~r{?%8g)T(!GrCo1^hVrU>Y2|;V%0J}*KlhVz4_|l;+O}%vp3RbZpmsOpV zgh?t3LJe^4%}JJAc9#FPEXQ}M*2_&MUG5<{+0`blx*;}9DNotxYo#l9D>rJ3D`Zw{ z%<&^mdQ}MVt5PImU7*Nt+fa4UF4oC6uvjU{Sz9XeP^HL%)g=jDxeZ$nxb$PQeO1gq z%>JdFz0Yl3(pH{Xub1VC*x&)GuF^=WY%SC7jSiDacUReky{)hC7W+z8c4y-3WfAJB zF)Xt6$8Fc2ZG}pZq?jwAp=)V>lCU2VirU3#tnYELhN)4-;Y_Wg(qsvZ6}67-#jpIP zcetjMk9Br->rVwhCD&KIllY}%zh+^O(t02xe#K@~y&a{=%A}1&T@sp{NvV|;OI7V< zvTQ@hwIM}e8V(a}VxF5Ur?*&_H8Jnv-QDtn3)7vJA3o#fg=&rUnQ^#5f{M<9gMH(C zv2M@a-r_gGc?+C6EgXKbO6_5-G*p%BRA+>pB&E)oDDA5TTW5+`B(6Qs;w=P{(XgM3mYX zHTw(_4{@QYeH3X@pC7<8H8QUMv9%FmG%8&~+lc6$ZF&!PqO=0KsX`l)qYXKu4QbGZ ziYA>eHu&!C9iBdCV%`BT90P+76s9ftI-yQ&kBIo`ShNS++et#X_JnSN*-Wb02-QSD zHG{Xnfp@Q*y$v-L<(IYg1L_@etYFMpHb2RDMX=sQhVlmO5P2I9NkxN8Y}Zmpvbh3u zG3pM(9Oah;8*Nl}7B8!*Q2DB<39L&k(npc{*x|D5(D4D$?8>Ua<^sla7D=m-7wRV` z=26}6L-v&@p9jhpqn>fNOoj4&gYv~?O_cr$i&0*sju1Z`3oIYp+erpK%?#`I7nJQoC7bm5e`-6WwpmP`!e5*|45G>ZTG1kw_(RJD|(@>%4tgKKo z9-MuoYLxP$Q-@l`m%A0918`%l-r{=+G!5Myj|yv3VgAr|uHbvj+=Z8w9nF>&o+4OU zEF>Mz_OqH=?p6;;I;GVbPLeky4cIUok$0daUap>Ii{{TrJIbrQE7UQ*1!1fV?H5g3 zYkzeIEQV`)CHeltH1e_XO16#B)P(0GJ4vd!?x>$uIwI=O2O_32`8 zO_Wl7MG!(8c{eMfllS~qW8-Ly3B)NCcx7Uet*!h)XMP_oiKN>x62F$o#K%kqR$oRqngq4 zL8tWI0DXYKPwD;udRO?1L3bDEB-AkYozbz8$0Y8)^j`3{LD{`6 z=x=}yaZEqZvEXhluK{#QZzAZFzDW<8K=*`y0qB&ziGC1t+CTUhbfrM2e4Yl~4SxEu zxHvsX@ZKWmWNSo&mzM)u6hUe9G9Ts1q)%G(dWYg?7ZC$Mr)R}jTqKX9 zLryU0RJ{{$kvxtL#?hcteo}C;COYJ#gHGjKip!*D%2+Yz&Y+dyqHicna(06L3jBv~ zQT?0JJpg)V_|M^TGSQLlMbJCK--wIinfM=o4wxar8Rg=ct7qkVgHHMJ0o^h`;h>ZJaL_H~>p-XSP66FiUdm4) z=v2RpEaVVo5P`pcGyVjDe@rv}cLe^VX8daf{)Nr>zZCe_Hshzc2j%DMX8hL$ z{v*x!ZP0j$|9Uh2E}&C+pElzU5%}r7e9Q8_Ch+@$ZmFMifq!^2{`Um_xMuvH3jFUj z=m+d0!Ry+hY)B$v;Kl?+&^p|7?LC(v1E-=w#<(K=(G~2mQt#f&blR{Kp0Q zs%G@xK&O8BbI`pkL8o-z0^QTZ4>^ZHr}7tpZfftO{|lg#|6|bMH0!?+9@29;=$3j@pi?6H z(Pnf{fllwdTk;PQ=>IgMj}z!hn`ik`1iEK4dY(WJZbn}(&__3;?*^Upl?b}pR4(Z4 zioj1ZV#|C!7U1Oo7p!1KjX>A52hNXo3|LeQx_ z^aGvxV^e?lu|OZ*jQ+hqr*Ahc`F{f43-RZHPU8+v4%|;c?+*WFxGCI3_e5qWAGM&v zRL%4t(8&(YThcK`pdXDM9q=KEq2{4YEG*#~Q3Q)Z>m=e+Ue&%c{tESSD_;XaGO z*EbZ$$M^YIK7P-h32%zmgoX7C5hZ%ZN-hF(1Tgr~F-wX1?*KxA~`0~};V$J*V%5ENm*K^A;c>Ohx!K<$27`z6X z#qd+NUJkz&OYZlAlKZt-a=#ap+^@xw`@Nv#el3>V?*%3IYq8}1FDSXcFMsxf#ew!F zBQT#EX@Vf*0(gsR>J2RXKK{JInknADnW_jit>q4b*Pb~#$LQnVS7dqoCJ&eL+_{*h z5AsZz=Q}My0^$KL2)gbQvh#HW_5D5;1kfS3GosFTC|9O zmMp?2pvCGBXx3~5x&2I<@^~J+uXQ~%&vUZ|Cdh843!!|?biwoXRkx6jR*rssrrux) zG5j+%bnMvCd~;|<^Xbd0^f@xG)91+kOo`;V#<-o+q8|6zZj5lqb)q_Wg!C~=9 z0Q2*im7WkUYIaPyDGio`$7=P1<2PnBVV`l%XHIn!0y!KX%g~o5X8FXo_>kB#HH(c= zOF*ZWisnA#4SJ(hKK`@lrf;2F=QMvLZPL{Xq*{EJ{UU+Fh_7{)XFi+e)d6e@6YvW1OazgK<8R`A8X{vs6#*8|+N7MIYc#m46|{r}QR_=gj}qs_aYu@h4;XDH8vzbw7h48~g{%1h=qd_*7L zmZJLjwGz2$lEe3&LJ##Ul&7hMMO*MRpXUf+&psOjVoT%87WsYrUl7A5fKR?96j4(S zpPBIdH|)ZUr_Hqg|SRpZ63>{ z(3Y$g$E~+qEe%@Oz;){94h5-wUP!;BJxM{v5=#}r7xKZTu6wH}gt``62RLG4uTVXco)oc;`@YKI=GM_yT z2m2*cr{`7q5khBT0nx9t*A+64xgm7MerueN+odoWtifDaY z`+SwPIBIF$eT?Le*on3z^K%1#lc_b=Q7c9kU@|f@ziAF72shLDItXaRMgm&45zM4o zk@H*w6Xf?3l=t6GrkaZvvj1F56vRKL9)bTk_3-?C)z4?=C37kvL(S$yEmJYCYAwK| z=Vo$z`udx5#09lJwG#Mvn{C|!g$z71w-O*YEhksp3UkxH-t-zJz%*MPsWZLtdSpg# z%$Jzn0Q@5~tll(V>z#@tC==3|-oU~Gj8Sjh)Feii8kgSt&6HV8@9EQkkHr(yXH3gr zdXG%!64W#$%e29s2-eG|KM^zE(AhjAte72Ep#39eJ|#bX8_0hP;j!>fMfhFp$^C|K z@>4kZ&kONW5PlK<(-!f`UyI8F>FgKoM&Z5-cX!Y~6YlFECjxRyA*U3y638Jxr9=KA zfiD+)F`!q1Z!u_k@R6VR$UhgCC*)=b{BH^Vc)=fw_`%>mi};g38;khlr}*T56<1fp z?*~33%C8qOJAy&;10VT`kNiFek48L&nAs5oe@}#ypTf!SfvX$jIFcK83GP(hf2^2q z^pJyn^BqsH*L%;3`IP(=kNme09tAnkkb58gn+PXAg_Hj(E_cX5{yBYV!Pfv&jGlb^!Lza5t+qd|*; z9P(58MZ6(xCo=LGuHjNq^+`L3jY-{R27u;O~iW@{=6$d*E_MdY!=M1-ewi z>~ICG1Ng{KeB@UOd=l_^fZhRoZ9rqdM}FcX|05Ce%_R6^5H5rNzKHph{1i_9yLeB* z6Y1T=-5qzl&%o6~9`aA`qMZf5sUFB*k8m~O<1DNl4e*~tIQdB)`H$ivz0-RXq}T1j zeXDTaDBO#1CqA5|#kJpB$SVL1_H1syMXq{5ELtkM^3Wp7E{*SI;<8Z3pDjp1--C$&YPTuAc8g4&>4vtht`akF8d&9JKdr zg;%qbxI?BK+p?S=H_k7?UCh6_#ob9ZUS*Ovfi8g|p&QLT^x_D=a&bLk@HyS9NQ@tEK_Q)%hF9kBYz<8*i zSdOxhoBEdB0?#(^^akA?_m#M)n<94+E*kfAvDY(N$nQpOg`S~v!RhQsMCX3D@!#Y| zKWcXW$HM)&1wY1yW*&-XiaW!?P4AnT=p#@LlbgnYCbtgdGPyMtbQ;^3=*<6MZK^r1 zX&ta>S+g|`Zix@;ddD zCO(wor8~X?0203)@?X`h#m0aT*oI%Ll^v9ZBIReZiYBeQH8{d_ug>bO4THzWn^69Y`yuh&RXfHCY|owAIoo%d>ket+H9v-*e#1P08U1Y1((R>;Nn`KUk3QOaF-d~(1429GAK4IiJLHQUzm&w7kB^t=Rm@9@QVG!*|1n59Zn z4E~PCm-+WHJeqh6Zdh>NhYX6>ew#4ZF-zd`@j^VBT*$y9ol#*NK{5g$!!i#fN@%a~ z)W&%KvluRgkP(9bR*(?^8O@4il7SC^TgG2G3mG)NOBG~PLk2%(X%Z#mqg6bbdypZ= zSfBthEPs~e5oDydhDSpmQ6(bsN(?e7-aX_4V|*Gnnu{dJXcdnp5i+POj|3TTKKB!3 zaQbKoOGXbF!HCr!@5WmGS}04aSTcJdV>2Shyj(`BSTb6adL0tI2N{%h^%o2?(=tPF zn{?V5*3cs~EDR@^A}EDqMDH+<(VFX&(??4zMJ94-g2V0iQv9>L=Xhdy!$=qQ@TA}w*cbEp@DV(|kIO`iU}_vz5PQ)7Bq z;Ia^Q#||#ub}rteX7M(0@k$Xd^0|1cxOmICcwWuo<#X|J5$~3!d3q)s7~~VFr=g^` zV%&v1i4rNdiCpZ2r!kSh+OXzPLni;AY3wkS>56gzZ^aSXdJPn59Q?p1=?wpH`0tOl z^DEdnDZ_@Eft~MAq6aI|dQ%&Ri z7=}ZlW&3FVpUdVMhD6% zbt5YdYB&iQ4sUORSY8o?IkmLd+7|N3qCuxK_%tF#!v!phhr29%fRMXhA z1xfcG6V}jQkE!+DeM}br$75;>Hy?XNiaC54-sUfJ^+f1H1`fr^1w5x8>!GL9ET3}; zSH`->)cjgac+cdq68RCuOzljbm#Dn`aK?cH<97{ zCh8{{*bB+*33`+uDNK;W+mjW-+a?lDmg=$WQ{rt8oykflkMHSW^?66`%gdhrZHpRW zBLPoRbmYEsX~?niJ0km_Gn&RgCF4Ok)HM1yP!2VXUXEP5vYG=7FeXu2bnHG;dK`E} zvXb$U?vQ`^5!KvW6mo^zTz#*ojBhk>{>Ul|8|Cl*-K%K~!i0#I zf0mPHl5dOtA%l}T6Ou@q(~-OX{7O$s1J?%{!uBAq$Z^DPp@#!Hc2NkE@f+^{Pb@tlz`+u zdHC%e#=dLa&_?eV$Vkl#>ssdtth1h}CjA(nK|9mj4dDFDin$T~h=2Ye*}|EJPyhb; z;oh1JjN10cKS<(qzp;D)GLDe2GmcW`qW3D9aJr?e2$skH7Pwb>w~6 z)AomGn|Cv{R98*NTALoC%pQyva-8uR&K)PTtq&eDUL)%?ceAxUxi&e5D>tTHMPvhu zA8I(Ryoc9Nx>sE#Cztzi#&YZ&ryP}0>MXHh$cVodtgx@`i+g6waSarW#h9aEk1*!A>lH(~ zXc}{z_(yYB*}_=jz@DCf?3(VwzZ>n7loZeC;^Jn^O3C0c#>Q~Ku$mjNB`42_#Z=8a6zY`cDvX1Hi%;UtL(`?rp*21JowIZS zX)Qg7vogT7J;P*~!{mgNH!~8OfY^9jxC2{~5w5Rs zjR5a{+>hb9jjKHxIE#zcA7~u`!Q4FGyV3(!0s=}y4CGePJD za=>>&k7@yeC&1w)xHB3*HIJM}qI~;7q5!K0|1*J;DKyT4TOe@hB3WO*$(e}jr=G0w z3orrlP1Xc*<)uE4^g?S~+aaMkzcG5^;xkPM2hZPr$PbnQX4tQqap=c!p41x?Y7{Qk`^1T(V&W(iwon$!!{A$17Zq!%Z-au9rDv#1>#6 z({RwQ%w{HmAc^P7@-wtRaOBQZE@`UnY#fv9dUb_|35o**eGX=la*k5CIX8%0 zk)@;0VQLltmo!zCKa0Z_B^*$d&D<<#Ks>hja@h9-Lrh&mTgQ?94A zfai48r+ZNza7gw{OEgWy!nw{{=}6`|%qhL|Rgr7G*6!>EXPgfW2k@7E+u%}-oLq3h z`PQJ^tZ;77DVU9}C^8f%)Kn=UV%9ZP)>b;*8JU@_wwa5<;uLD6Vg}T#SNro&g~o{g zMZ_dT%v(yutrx*q)^ewMuM`8wbI{71;JrZiGyu`_Ih;rW^#rDtQgNHHzuutu^*K_Bjqv$1&u)41p(e_!G)IBdu$I&&*YJTrM^qd*Z}iVW1UzXh_c|2brh;Be9$gK@LrtyOhB6hc8LaT&I#EJH)Mtf1L&h= z1>&6bKb4A$0Jf@=qWIU13X~lRRi|Kp0~WGUtmY6;aWH(~u5e@$84fBJhd{}@LI>a| z_g&$H9#$R>1hWCTIRd8X=A3~gRWC4rQc^hZP?3Ksh(*phNYrvVyZr^x)%Mp@6{x<; zby7f|0vPqrmMe&IEiW?|C2OV}rt+;oaG;lG-{wnI7g3Qx z%sd>xOg)Kn>yeYHfkoj1K&j6eV61XxB5?S3FcgT|r)u{Lb zshCZ%tRmJ*EBee%(vCSS-S~hkPE^!Sd6XRX#$ARinMU3Z%VO&)r0$&v3o}ZRD(ze_ zlsQV{Pr}5cVX6rebA#GbQX#pZ@|0Dm-87!^P`_x^%7hZNbFJDf(Nl6%QZdIEdlZL}xq>hZ$q&H}!a+O+p4O69jvCFk^D*%Xa zV3q_9`L6q$X_7Y|0FkqZVXL2k$`spRHc`ZMP2ux2q$m523AnSU)Ui7c7238fJM`Vl zkJ^ofMpGM@Jh`VLqqN=MJg6rHKFwWhWA7fL3AI12WxlA%7M;B4&I5dY^sv51Sf{u` zrnIA^tG~3UFkYnz@Y69r*DMz0b`6mhExoML1drA+4{G#nra`{UdT72Vz{6e|vn)cT z8R9pU>2@%eLbSHNLl=oId)P*nphCUcck3^$Te(Z6d2Mt&^TtpsJFu{AlMXHyRd?$v zEn0n3rP2B&FpCZri6X9gm@?Dvz<61yQ&+5Md^ogFw9>Pqv~JBKm1g?#c;>sIt3>U) zyGiTTZB}V!?bI>nhL(s{c6aKD#Yj zO?tQw9vqmeS1n-(DbvY0BuG>ATWW(*w0x{&h)uz9l}J;3sI1|*s4`%Pa^*!B2@`N^ zOIYBZ46SHZ&xM<)GD=6{tjL8ubG8n%NgV6u{6-MF_|+v2OvY#Otv)WLV;81oTxWVt zcuhKFwIb$ozreex`pF1x|GCm8-X&J^rG+(i`_0YW!#Pm%)o-cBQ=&b6Bbk`(Q?CW3 zYAdp>cYQ8hy7l!Q83%*Pw4%qIx-wq%$Xr!HtZy!nLVf)*SMgA+KfdGQ9$j#Pap)Jx zD0liXQCAHsU3j~Gn*LFT!3@#AbY~JHk1n1$^pwH6?P7;rQ{_dokjzw%FJ#Pehp)2X z)tt;0w_UvKt1!4rRk~hPR^x4=Cb~HzIeq!6ie=lxm#4F(N*gp0&4o4>t{Dy10o#>J z70$}RSI8?Go3S*0)dl?*;>{^-Sg|7J+o{fhsm2@|=H7NWqi`B0)t@9w%+^T4QANveSsu^SyZF- z%_YuI->}$1k&VJTHm0z>)&Js@Du7dZ$w>GxfBydwr_{O=a7ydKdNf$|wuD7B;gk-{ z4F|$S=fWxu^%Q^?RedZ_QiHbz0+rNyf|vEAQtN&e7@?V7Hgf?|TVs>;B6!l!$7V!U zkqX%mz+oyeJR1nyo^6RFTmY4|5I$!siJb#X7@(9OgYX<&B|(|x7%@NE;5v6flYz9QLJb%9xGBN}>Q>975_^i`eoG(%9{ zUFH%t-y=uFAX($mHwS;#Pj$X2RJ+q9+ah$NYoLnJGQm*M<$Ysj>)7*c~ow3f+1{Y$K+HNEt*8T)+3zYueJaO%RKU*|Li!+{=Nk ze7z;pf7%1-|0;Ho&skx@bzI-!qCywEyaEqG3SAMYayBE5-pmR+Sedh7#`025 zV~9KKtXt6#Ka91oym>S0>QDs}+E;&pGJ&{b#-%Z`e~aWp$ctQ^nJd<4?aYv>CH1b1 z)pP+;mC3PlXCY)|znUnF+iqr^vOAtrF=II+(j%_+z?U;Rbdhgp%4NygM_T2F0$3+| zJ#=`HJ}4=nQFLSx+b=1hYxc0ksr?!*_=F8!OtHo9RYb`5EW-y$NCG*TDc?3qHMYCC z)*h&0KUQxW;poBbC)~`M>{m8Im-?Yufh!ZVt168_W-QR34;%01=rWeGLhjnFHOy*L zb)%{7g2kWPNxvSNEnu;Zd{;WIr+kMg`|HLUb&kp1zZkgwH9PNts(Vcaa-mafhWg}i zb4G6UExW0$Z>q^%$=WX}%K8nB;cTYtlG7Pv#L$$H6<-^!w5j^NDI>GQhwbx@56zZv ztGmU0u0_~>v*MJ?kM=evd&sx1z^8b;Mg}Ohk5^@M7mPnM_%r88pQ!haaFhrdsT@!~ zO;`V+hm6bu#@djc`c*|kKQp}Moa+srE!;4BIm_q~u00TUs$x}}@S7f?oRt}ue)8{} z8y%#-49(`3nMe1pPPA=UF|I?9ah)t~#kf;JC7Wf5V%L;`iNUgui_W`@{LW@vXL+hg zV*}T(vd0W+nYlTvd#6FFFYRPZrR<~ae)^a-pw&q^OVqo(|A&o*-PS#E>pB?iaY(`Y zHilP@@47TIyyD_QxA|r}4qt3FTjsS~j_4vt$Y+Ma29@fImqPUm1Afn1FuH8MPWh49 z98P|0bO~E*ZspzkS%2O>@07W=f1K0itlQQobF+vXTQ*u()MQPUw;Ek4o1%X*Vxf&f zN^eeMy&Fi!n|sDKsEbBAwii^N@mhnzFxcE8u2#u4V|kH$49LPN~aH+`GkO%eXU9NlICqMzz2M6Ze3vCN%e8hY$IkfT&2oxW4D z69!k;WN;S}3kY6=dlk4gZ<>6Y3e(9?QV+HpWEb?YtYV&XF zU-3n*xu{!u$E2zmBP5~ZWtWakudu8{`?+l$nmQl#583WiiIMN25?xSclT@|)&zulIK@4=-vm&%%q^@2ctsncL~XeTIR# zjZr4GjSNwAaFJ&=MPG&JB~8)SUD58VYG{gn{V=rtcT@Bfg=3Rq&{w9b#gT60H z{q3g4;qV{b-G#dO=FW7?=Q(}ts~&oUa?r)hPkpCm=bjweYe0YP2+7W&y*}tac69D8 z(T__HEXZG^%Is>Z4Nbk^$tQX)Jtd>z3^?hj=tPbP-7#m- z`h{%oY^x`mSM6lIyNCU}dDVH=F*oeV<_~VOj(OQnWOJiDmPd5i3Q%5jI^0jb=*jX} z0_6okLzKLT&xUH%B8iba^b2>t_W{;?>Qf5sXnIa2ShfCfg=<*K=O#VYN~5J0m*Z zLsrR0Kl!4o#rGFj;0NbL>>SoiNaDMT`dxblsCa{~P8ug-#HIp=yT9&vvecW=vYb## zDEG%)=groZ37uS1mh%;(HwY|xH;1ftGwM1pYTD$apW0*YOslzVS2G zIMSnPT;TSIN~f?lm?U(aaln7(;Ij~eVxbIwR6FX&pS;;KN0lV$oc zCsn_d<^+}C*o&CBtyPL!MynXHX2}Lca7~V!7jVDSzPd@)e!+Q9YhNiiBMt433r?ha zQgDtCy^wUpF|3b$wD?Zxj&{swa&Qp3jM?SNO z;{LIGX2TU%jUq0yOUGyy_GL^?>;8hXUuurYIX1>Rkf$mJVsX9686@!b)#eCJ#lP;0 z2MP?YXDu{2K@Apo$7rlW1n2nDg(fGcgPN!&C$O{sB~T}nEi^fiofv^S(YR1>DmH4w z<}#|Sd1u4I$%%rK1Dxim1nDhMqpV-sDma<^RHNVoj(1&?6HpXfMMv4p0%`>3Ok6ix z$iOVE%^bm*2}oMrsR-ICen+5U>bgvD&MnJdAvot5ZB`1rA@$-_0(ET6LX&fTolUVo z&4|etoQeS@;?)9mmNs8-QfehlRFiZ6GFv{gWjO;&1t)BEtKbZ@9t&(Lt~4dq6O4j0 z)+Vz?aMtC7)Co?ujgW7}Mj3BCz~ZL3WpCVb(%$IV&)DxolKzWNPBLerKNsy@A1h8C z`jxbPO`2WVYkzgp9&XdmSp52QeeW-RW+rOC7VSQeDo)##yiUqK((YS9H63)+fJq^5@UIcJ@Are1%q=5-UvZ?UzVYVffC<{Q8e_juQQz1hsj6R6o#Wi*OPo&5 zdG9}0d_$r}?m3vScf^NtK3MOu`rN%;1KudUQBWykUNagd4OkhtE_}6P{+zR8FEZQD zyy|>yX56Ci@|4~)w;njsO>uG0chwcH{YwH1Z**v9Gpk*~Ma_=0(axt{+q_8p?d-lY z%kCfbRQ&F9zFHI)xh^pAY)QNP^lKRxiyLETmAw)+^^C{< zaWz^!Y3`8PO4BLk+OPHt-(^P0yp#(Kl2NiAjtiH0d|D;b|K7pvOz2usfYp0;e}CU& zSe~`b{9jgftJ)Yo=$%8$br*D9{*`bL?;_t>yE8tPv3f9kyq}-1m9|&6109MIm=879 zo&2YrukDd}^XG{PV>fn-8&`LB>Vc2G8z0F9ob@#YOdNOojkp7)-@UP=eQZhKozPoK zZ;k#w`?aLQ!V&X}4%@a>vV&^6MfBRu6z_A`ecwiFwOiRivwSzRQD)q_&rz%v4P)*6 zdbj)|YVrCrs%vXo_Al#=|nwhUgdsGw&A+u?!TMmP5e z*7?;VhwoioyRP3S2Xu4)`5idv2`<;`Z?$`U$1=}S2icAjTd%XW(SginhwjIz7tZ{%gjot3NsSro-DcX*;+567bEBs96)f_>x5Ld~;Whc5Mib=vO%vog3dZ4o3y|xRJ2)uiSEtsk&Tc5% zHh!jaabN!t;k)lFyz!4s811rbE$Ec#46yc3Mb#o*(CJQXkEu?C4ryd06&uzh*>gp0 zR2SqGC=JWKs{_TOSu3^Mh!diA8)A5X^xx)jnf@?L zQte9Bmi)on+zubyx!|B~ZprpURSZvEEl|(QNISjGH6JkSYgJoT_h{?*zT1%E=n1K* z#kB)xj`CwaIdJdZ8JFT;|D6={Pmgh{58V6a=p!<~Z&Ds@|Mq&&-HlEILbiPJ%dN8D zcZZ)iR(-Ez{eo|+?(R+ba^$3ak!$clMD>VGTXHO?*T4yV4*$9T>-iIk&z!il(XOZfD zy56_=0wCn=3dH;4C(o;uuB_OraawX}TedvH-_1HK;~&2)J`j@yWS8ch*ii^`Bo8<{Y2C;KsEjOGDR8PWf@I?jO~MnIC3;o6<6fsN?;lJ0d(JaO+U~vjhbuvAHrdBW z#g!QWtU|Ry6xZ*wO=C`fxCN6XA@!K~IJjBHH6O78~%CY_>tFKq9L$>+< za7Ad;7w(h?fAq<|q|7zze-bpY>dM`(Ck>fbbmw75>>lOVcI-D_HFN64oT{A(cMsaP zSvT-R7w3{5n?@R9N}@lITxf{?;2rne%8{kqfs`{|fZ$9*;TmAA)zG4Y$s zzy5h8Id(_f!Q#I2I!vGN6|)0t7C9K-`pfjr)fb$nwHJjHga_tU6@~#jZ6Q(JRvIi0cojyDhRhD2>vA>N>xhvoIC{8YS3l`00neJY#p zRO_I)Sw#CHDQf#mxAEqO!e3eKa^B6k-p!>_=Q>TjXdu?{@$Sejaq!-p;9T**+S}~~ zxOsXv%cj3RKNat3X>G8io_XIIVrT2~r^xbWs`ArHfF^J7#(OHa8WexgdlllT7{?L} zJ@@~t&iRm=bF~34gh@|f3m-3Y;QbQ(2Y5H2xC_L1_X67q!H=>Bo)iO~UVb1cKQ%T# zEj1?tZ)o8?FyPde<~to7V}FaGw*>G$$0fXlz$$K{6s(ua*$UUnP}k#lVawopwgE3l zx%?(_ou(QEWbmMM*qn&*5DJ1fma=TJN=8NBE3zjIxV}ZNrtw(e3q#e?lsF_hLYKDBg7lEH@0? zOJxb%S{3*xj3|%71~j0UV!WdhL^~x_a(QRk|Ck+U(?2Rd6ZPwrKNGLhdF4;R9tqy4 zlfjLd7&8a6mDRXUb&X=f3*=4%oIHw_Y4+FDB)Z4Q+WW0nIk^p~DH@f*&J!_n)pI6y z&RTceAJMH6Vh0`ywBomgt#gE(K;4q&x}sUn3a|? zPM16@f&Z8wDKnvWI6IDqnYSbjolb!E^nt=lLdWoc_xwlt-lnr1D0UJed#5G5IV)M0 z=AAMF5LmkSDL7I;Db+HeA-c4wlvMbPOUXZ$5c<>Bq5|B;Kk;$M}jFtl$KE1ep1FiM-f({6u#<=LZ?DlhM!botP=%HwCV zf4g@6@}c@el~)hdY(8}Dx65a@Ro4G@XieqiQ->}`+J078Uw`xTq|@hXeycw;skXlI z=+(&3ZEX+lT5@BwF7C^>(}#BLmA}ZAj zpO3_s)`#Oi z*A^F-u5QS+9@fnyuOcfp+9YpyecRBV4Zc%T)yU5U!>D0E=;pGvtWSmQ#^MpzO!Ds5 zZPWipxQf+lX+h*Z@%wc zmGjO-sh29JcX$RIhY;mIh~j|6k?7s(BtX|8*XW|D!yxTwRDBDD*R{4ClnTnsQ^+ zQk4pguwr8QtE^|hAZEWStE{kg&8#+(`JZu|_%*rDQ`3?@V`cgxv@1r)MSobS(NA+}laQ zIsAI!jW>=P>@d8H`j;EYGmlZX#rQkS67AaWHEE`H2;UWStL|3rb`BWz20tc)QGI(V z=AP~PNm^~bU4d4`oc;){*GQ=KC%cAbU&zxA2iAP3%&OCeMAw48InuTugDDKrcxAT@ z_O`a!UnX*EFQ&c$K=c6>J{8`ECeKKBkuU$P)Wp1Ml;aQ@V<(g&5bZasaK>TQI=(ES z#LBPUFSed9nU2LbNXU0P$*Wws(ETz2T8Um!@2O<%cl$0+j`RBYGwsgTLwA%5V{0DZ&HBOLA6IlEUxhzr*L?s1IS`6kGS4jueXI;f4sNi{{%#$_uR}6{UTSUhx_cwQIAB>SU13{(_1MJ*(O(@sv~* zgzg}e`rIER-LFlUYu4?>@b{qe($}GLoy;nm=nZA0Le(Yj`=;iw3Iqj0 zN?xTb%1$A#Y?4wX-^|K$$6E>Yd{Jz-zriU*cFI~l&1rd8_Ll+lT#@0qGU#NfB0E@> zBD=*PsK|p23{+p6jby~RqEPkL_xsgY^;J%@T@H1?U%F_`9Xy4g4!!4F`{ib*)XwaT zBqu$lx=r&O=FLjGq0T1ed7u~1aV)ARHrS$*u9Lu0$YdDw)*Jl3@0~O2or!t1u&L9q zsUX-?7HmqEqm}QLPu0$!nCDymeeZCmNxu|}>=3I+icl>VIvt_X{seM#SKPim8>B8|79f zq2bHrigANWrpx^&2E4i3w=Owu^UwQZzQoAq^Xwzz2D^0YBq|+DO>%2J7Faur`1V=D zwa*vXNdtf}x6* zhAN}GOS($;p?@_xK5|@FH{;V;WSXSxg7=5oq7l78Eu))^*Eu_=X97%lE?IedxAI@1 zeU$@7Q_&^0PLe9AWThRm=%`_4N-FwKCF;oduQE-dxSwS;MQf5$wK1KXRbvODk&7zP zvQHj(T~eueD;2dzkN41b^aeM%=+g>As0FP+6eg+ccCazfe&AGX6nf9kcJv9;O#agM ztg=+3s`c{-M@Je6`u1aeDpSRxK3erzw)#D%mC9@0Vx44Hkd5?duftZ^F^sIEab@!^c}oaH?}a1h6%Q(_%LRJq1@Q~R&?RQa+UFh>2p z?t^x@zr(!IW7b8SS%<-}gMn2UC16S6)@YTy|H;7=Ykl9w8t<}13WF^;iWtBpo8*z@z!-~u!q^onEta_c;ot0{f_1}aj zcXu?m+C|^nPP1KOXmd=h@z3tImcL7!?oc>;TjC`e9%rN=2fA8 zszE#JfOe)vJIlhjQ)3-hmar8KE|tceGyp9lN&_f$pqPiGA~_9kb3@hAiBfZCR>2WB zS3u@f79FJ6g<7pW#FkPYRxid#_qM2Ux|7C@LVF;zqCNVs(l!{{Y8PT?YqUaW8V#oR zq+*CXMOLFd9HT%Fr?x@dbz))Qt7CcGbyGh_ogd%Nb=!r0?%Dn=DuL_Y3PQ>DOQRfQ zwrP{dF8EHprd!}uQ>Qk3HTBeGxqBu3J16&%!gcjv! z6#5H!Us!QZ@4Nxb2F6X&S5c{uyRW6;h7QBY=*^B+U$Z++4fq|BLeJN3)q~5`x67)e z5gNJC+u(avucv;59il#4bh(XclA4`nTVz-o8W?3@t>gHSPNG%(EJgb9HU z5TNTymDkXpbC;^2D1@rv-j6g#b|Dkfw4KgBN}2AaXPb7> zY}=F|bG_VgJey&*va8+LI@5!c9aQ3uPJI$}>PuObubQU4_fr?^%H8y@s7n$8bM;wQ zje+Vwh_Y>;tu1vQ!DgKe;GZ9Nd2iMOWy#qNnG|lh9WTDt$%MBe-&k zl~s;7XY8+-2x};Xf9eX1j(MGHjbn}a>IP#;f|pEJ&3u3w`z^;`8X%iyD|gJ{Mr}me zG_XKZ(oL-xx|_GG(oVlR77Fd5F5;lamy!b-TMQCeV;Ixcm>SOd=+tM+q;X2=E3%-& zdJoZuc$~~O4G;{A3JuEKJcHC^w7uJ*_isz<0w>=~O>59$e6LsO$7jcvhmP;4F4t;= zhr{sdT9w%u?PPY=I>jrMVx}`^3)GJtfGw;K6*0*)^wecWkl*2lAR*WCUs&0Q)svNOYk?R;QwO44;Z_b}a8y`mSM{Xo;%6Q`sWJcF}g#{Z7XB z3}vDpRjST)OAKF%o~mLy$E-DcEjrh!pmWhThVMkHU9NT3oHZClTU@=IwGRzdqM9yI z&M}V-`$RXoBsw=dH5?FO!BO}nK;H+Ta7Xb<^$39$`+wN`_P8jkH2!y(ff+6iBch@L z4v0lwa6mx7OT$G%Bpnrv)M5}&C~g8OnALDmwAAp{qU#!%m6{cnxz?JEmo+nM$*eWk zb-~osH6wBX73KGR-uJvS!!V5Y`~CZy4~KJ}?|II1p7WgNT;6*>;kY>tH0h{gIK?Lr zRAd1Bo&g{JxFY75hv%vQQ4+dQVJj4S38F(1z z-N3^waBqC@gSxR1_$UiJ5ja%g+|l=z?VST$1AH)Ws)yP|`n(F9+(d_e5M^rbHsBLM z&jTLMaN_?7xDxbE;MC8eeSQN@e)BQ#2@EIxARI(#LH`as+5*o5PPgHO;vce1a>{{| z-cJChIZ~9r9ylG(%>wRhfo}y)?M(%4+1~enM*+_VK9=#5K0gDe_Us1!gatkl&P46{ z4Y*~y#sW_QejoUg7W`GfX*^8sE9hm?6FBwPOyHLN^#yPY8}3!$Kdhs~qj0R46Z$>bU3*gTJ$2XF=qX-ablCumrOvC*LLG&M*h}HpzNx2pTxTJ}H z4{!`^&Q&6m6ZJd_9Dke|IF%FiYy?RDG#0qY51~&plapvAM-C-PPO6oh0N_;bQY-$k zjQ=$&{uJO;?{46h^=2_SpIFIx894s3q<=Pv-spRa@8ImUEnYi*9M&W$7Ba4 zhrYpMDW?fI*^%yIr*gzk{&R=Pi3V;d2Pf!xeV($CqX9k|<%@uaFgX&)NoV+5R`~0{ zHQ@UvaB+Sk{^P*M0e8XzJ=Q{wgIbusqJh(VAnNG}97CR)4qWsH(m#mtKM!1-H>iPH z;MC3+fLpdJ1vvTJI^dT6mJ2)-_zvJIJKu2=^)}rOZ|lU z#v)Dii24rzPP7iVWxYYbNzZiPmU_lBywnPRmf^2i;fopmmKDC1;eWHj-)8u?R`?-? z|7?Z-!0>xk_)Xwrpno4nj(;z^XrH0}Lc1mdw`|vVhNoHKGa0_b3eRQu8Y_G`!{4;R z|HAN3tniN+{tqksYv7U4|1xk|XGHy-h6s8O#$;%k_s~(^z{&qc1E=|b=La6f@I)(o z3d7T^@C6JnvBC`uf6WTt%<#9Z@DCaOnHByOa2j`KfSdLS@aMb0$!{HTa)R>3_6`dW z)~PVykBB(>dKz$=N9F*h@h9@<0w=#+1l+QJmjlO?!o3RIa{hS}IMw?OaB;lQJa8H~ z?FYUGZrTq3KM$Pjd;vJsL-o>l{~vJDqZK&ii@5txVI6Wu8!@$*^wa>S@8~f3+3=amJ5Zo4e?F zf$<-*;_qPm=dAcW9~IiwY{ee}oZ9IIXA#$T>X#|NF$Hmt0=Mk;fr6ZKR{TD| zY2S7gxaB%H3OLERZ6zlTIN6~WHnWy?$OKMy7y;bU4le>H|A_%^X@@^E{%5WDKVtm! zZe2_MZy8=~h5yRr?6Hy~e@v+Nh!y`(;MA@Qz%A_)1)SQ|0^G7)bAVI3db@RPR}qu{ zC~!+X*D?NBEB;-K|7k1!FBtzKEB^m5{#UK|?=k*&toZv56WaTk75`}9v=8_ZxVS$j ze~1STSKx@BRS#Jfy2V3EPW_Xwt z{t?3`Tj5_ZJk1LKiQ!AE@Vg9OV}5a+5azA;9@lOP9X}2F3KF12b2|NsP76K1PO!E)*_;oij5MS1i&sf^V0`E;jZ-U6#{U`}Rl(|#&D zCnG(rFvI*ZV=5gK+`W8I$n#xZ7%WQQ-;*r75W35kD!VY_)=m1Vo9XStX3nHZGm=xM zPmG^9ed3hZi8JusK|YT@V3>-}PNq(YesZD!&6t=pF*bSXbW3gi?;D-k{~X?Db}z8MrOc#H{6ep)v%Rgxn(Z9u9}nsU2; z57o+eVj;68Ha<{lRfgBlT;KuSW6_?T8yOUA)6s(kPw(2!px_8m1B>w*6fC&46>o^9 zD=%-Upb)`_O}xCJgF-^O@-kHLQfuB&(Q*N)-9CZ(;CaYenyvl}3bARE5G$K7Ev;$r zqN%3Lcydv3+Ps|1hpkX>6RR;5YG+jqwK=jv?X0VzR^v+;NuhRnBaB~4Y2{~D<&9>g zWSE`BG|c976lQ1946|v7Fgu0_vuTJhJBA1o4AHHxqUj4DcKssE=42EuIIT^;2)F4; z;dVSJd^Gv8@Td-LV4jbSkIB!+7ozi$3m0XY^Qc?0=PfGEEFz5mfJjnyZgz233g6~1 zw}>AC4{l|+%{~aX(+A-;`ykv-AA}2iVB2Oktvtq#mB$EHHuosMy*4-8#t2G~ zam_I{%`(Q0S;p8j%NRRm8Dn#djCqiqH~s{l@=vuWf#R| z^1H^o9Kq8cJky##&0@Bvuto+&SUI<_Vn>9CtIR`hzt5$5Men>LQL>AjIQ+ZJin zHYPVrH2NRe{fUOR+_gs9v`6F^8}c7wFUHqkz0-*l%-9VU>}U<+%jq_y1ZynzhYzt~ z5*r{)EA}@_e1%ETF%y&6p-Vtc&f?sl^!(g{?3~QPAbjsBLo$4h-OZW$d5dFxtB-X( z!ykMJPjvE1H*VR2A_COd*>$t}W1r1CN>*exCa&9Ha^lyP8T!RNe5 zSCd2(H_J;~RGeR!$#Yp0mW+HrQ`m>11hp4r7PDtKOCMO!;xlJLVE|&`)V%z>wBr2S z?DSOny4XX=;t!FZc?ia0@q1SfW~RgF2Xl#^(t0qb^>OxtOF*{u$%&{3mkLTRDZx{? zI8n7Iy_ngS`gTTfVSe5Mdp1(r_>!0)fO*>t`gnPWJ^wcOc26HxW1j+xdWL^eHz=(z zoyLq^t;FHdlSsQJQ9s0Y*Pg+~ioR?X3uhC*&=wodZ=jyYERLmbB*w;17X}AEoGb>5 zUCpWP9>2n7U+stf{F|tJ9P}%;Z%ENsAM&$rqU7j|47;uD>FaRz8^|2NJ`*%%ha~nL zUv1vKJW!zdWbOlGb{$Ck1Lnn9i*n~J9y2nH9zY+NonJHt&zWn4Pip3-rH{(iW##8( zj+&H***Y&hb5h)>`0T>Wd6;@fC1uYWH6wpfVS45$TdPAXeZ4U#_y1+-5Ki0)Ye#C= zsouPJ2uy4|TbAfy`4Cz7mBC7?xPS;e7K6fK1$o#7M37;zf;^}oT!Wpbj(SEY45Wt@ z3; znqpFF_iKs|eNj>n5fp4oNKi-*Vl1vq3MatDvnsY$C)1_LBn#f|XIogV>EM_@1ZAMD zQ$RNPgGSpa5fqwAC%!DMQreagW=}@A?J{HRm5DIb%Z?yy%ZRimBUr-=F0Ek4;xE|40#b`SOnxp_TKG@LR8q?CnGr zS1<)>a7%X9$$WK>*-Y?#OLy(+!?=uTZC(CkPL3e?p-+I38Ce;#HuldrP?7HX+a06= zyEvZ3tF_&mic6W+trAWe1&c$$WCh{WRd7TP{G!`i@rP)v`2{&4qKljOg?d9mtoa!( z`mi;BXpYzcf9%R;57pT2WL(|sfxnxXn7ZA}#G2jBOalMt9?Ud4xO?*+;?x>>3{%+Z zl$mW5mpXgO5bbUyCunqNPbEYXb}J#;uv>;`#BLc8Ib!GXS^RQi*Y6qs!<@%6k1BDP z^eCCNl;`7hu({=%*qKCfZ&wo9j8^c5s zS~V|RoY8DHFI+U4bt%zUwo8rX-CsDjKvzstyIwN2$TeRx_5h?{l^4bx0*i~ctBr|5qrm~*T&d&VLog1sL%QaZxymXg~u>8H@mj6c5D`|5wIoqf3 zxsiC)Z1G53-Qh-NWEasbT_fof`p5#@V3t|Ljl|VgoSYt+HZPk?D@ZRIxgc*5H!^pA zPJWsI7Uj<`=0;8};;YnJR{RIkc`kTf0fba;M*8{{2_~XBYqP2+lZ49*CN&-ejW1Yxui3wZ!56% zkViDtNAwEhH-pwYaC_;wwQ}SWP5DH>g!~lLe-iq<0=fkGL{mP|c?hJ>e8hN0H1}D= zRId)@u5QAYk5_YhlYu3n9MM#c=n2Tb1bQ3tV?akBpJ>V_IuwEA_=8V_`kb7&y^jF% z1|QMHN3<96JzvK&>yV=c?TLJ%DW7O10@*`>nB;XRxKH9xegfn<0BconyND)!qMPyj z1@T>FG2Si3_eVMSF916Yez8A@KFRp@vv@c710ioQ_}>TiHu#Aq`9#+u%z*qF7FV;l z5HZ;?hsBAAsXyZplm1%7q*plPQ~!lZxxM3ng+RX8pF}@`eCj_V@<)L7N50sfMEfG2 z`fr$=+dB-j7xKmaB$}Q-AwAmV{4?meEr_Z98;Gg?M!8_W*(iSn*g3h`eng*Pe1};4 zA^55NdEnmvAK5$KHZ3d|GyL=!*JD&*@x2O-}VG(J1Ii)hLxT7mpz(3mgwdVzL8KGBp<^mRx6 z8Nl2#i1F@(+*622?*oq9Co;?nG1c7OL%{Yqa=VD8azxi7UjaG+`3FJoK|axxPc**5 z#LL+NJ~!Z5;Hw3;5qv}wAJNr}Zz=d_p4tOF4Zw=QC(c_$=OJH(avLG11oU&rCz|9C zJs&`BsDWB-s2-FYBh^c*X;HP=474;TWN|HGYTp*bRR1fGKMwWnME%vkRzN<{B%f#l z<6p}73&0wI4fK35E(Zo-50^<2{OLVi2?wS678w?hj1A)jcfm*}eq zBAW1M-O`IYggCAUQ`^ypQRHIb`nvVDDS# zMf7gu-+&(B>$$xjg2uZ)b`eeTh~9=k@@kk~$Dr3%U>hy;B6>B`s|NK{gI-~w7tsa; zl2gLs=a^oHz@G;!!$L2j^~i6A9+l853-oN{6HR&%os2;8rZByfnD6MlD2Wz&5go(y zx`=w>L65W0i|B9!k~0i^G%i}f7X<7P@QLGuXf*=)=|INs2L1r>E8Q@zfGNOFH0ejQ z4EdMPj}6cZuj8W^%kLtZ@`=9VAjrFgnCd_4z{PxKMwcfdYD8@RnEK_5gu(Nv!31IXtv?~Fsf5%fOf6HWOVro{{nG0pBrT2QB!BK7cS4eD#d)Ao%tH!#k8r@`!#Lf#hvt z`ke&dc3@j9^dtIp1d_Lw@tp(TdSG~8sHq)9S0a$SW#A(_Tm_#2SPA$O}U%2e%ey39x@%*8P0rUJBh;f)9)3bOki&I#PKIHRtEKXu^0*k4gR9?$sYA4aq ziH}hiA5(h?AHia3FVWOqiq$Npb`wqQrkL78F|~(cQk-IHKgHC3iV^W~4LS=vvT7Eu zWN{^8oKBG$SX_V@f3h4FXR(;p62f)(2e*+WAtw2>cHl5yHjd#D3=d^^AYu%2Spdsd zvwUxc(^^6Du%7VpR19}xxPsxdR*)Q0g7`Z?Q2p(Q3BQGZgf}xB>j{rvW%wnAH!}P@ z!_PAO48t23ev09=p5RYLYX-?TGW;OJ4=|k83eu;Z;d>aqli@oUUd!;U3^yRAep!Z? z`XLK3{_yU0p*}rglADZ}_>x#0$6_sFDmRYBBM`$xvOpFGuvpDvZx+*hO?;j#rg@v_ z4)_bTvz__PEyUEnR~deZ;f)MG!|(=%pJKR?;RhLhfZ=-(qbk`>mcN7L*D`!7!)qA6 zk>S-0U(N8946kIkf#J&-Uc&HVh8HkAhv8Wa&tSNo;d2?D!ti8<>lmKI@C1g(F+32l z8`>3snEFG7nA!=9x2FOz^&=vFexU@-Ya;zP5?X|4gcyWaggAtW2=NF{AW)r?5E2n4 zBakk>=p3blq;uTYsDRSs8=D!9eE^-K;Bo97xHr(b#8ZNFJHuBZJr;@*j(rVR!f@<` zxNOFM5NSV#)7Xe$_#<$dQ!Gt$%N$m31X?x)h9H?IknY3MI8VmC#?sYDA7}gq$o_%h zr-6OP>cV+n&V%WObHtpE;W)3%xv_e2E}DNw8`Y&n`V8vB@d8(kmsz>8v>qKo$KZq) zBdullR;0hh0!28zPq>z)vyhHs=`&ayUq#!9=K$~mhMz(j`+pw4h4f68UJZVl_lW-> z(&IJ2DyP(v?W}MjC(oZxZB) z>HR>&G}cg4dbtJvW(yq6H1W_rQY<^kBCUb`BK{0?6w^m7(sdR(thGqf`5KXbsRh2! zqF!PUdFVW*n0B||Z?j0#d@J%OEcmhSHQ^B!_2ygPI0tLuq4Tt&oX0HWms^yje36IF zkBVt}U$>YZYf-ixpoqU=AxCE+hu(cD@^He9;ucRsaMoAsyWMcpjl+Bo5EF-cn0t6W zf_uoz-QDV7TJSebbj!3vA9RVF?#D9SU)n_-disj9zNKE^FyGhFt?sGwp2KG*8H}r` z-ERC8B=C1t2}$9;67!uS-9+;DNHFw4%?V01U-5_dF87v+Z+hzfaw*nN!V^3_6|=Z+ zoBJb|Sk26)tI-c}sn}dfxHd}{rtQ9|$6UZv&4bHyb?z?K!edFMcVpS;&YpSyz$Il- zXS1K!za>}X4@iB8OWWkx<^m?8JcRALmV8M2cP(V9?ty*4mwU*5u;4YD%+AdtmO4Gm zC4NhOa|QPMM9`_*OEJW$&-@S*Cq9{C`LrhnTbI{wuwoWZ>R3F|)@7K&KgH*!EuXqJ z)gnAu^N`a9H6ke0`hIp{exjMl`i}qZYMON8pVy;#lRbI_7vvuaOwY~8$eaK5W0#URS+bYZ%Y(t(?cGd zoo9teh+2Gv-X5d6>qABMSb3Qb&u;nT>;uJGd*(9_EWx_gE~9!uW?p7tcDh|AzFGV; zm7JYt2zf5?p+6$5U$04YkfOjQS zU_IyBS4k`-_Qf;yy!C+&#|DP|D%DVu&0Y2xMcsJEd#39YD!kbNha7B{g+HI$n)g zlAc*moQn6pb(4W}2mxTeij(ss!`6?jru@o5`KhUK(aF(f&H%^=1nGts@{){#7XIA5 znE@##qljL|QJ6Wu$XZ4cWZ;wl7s_PRLk2sxL<@x^OCNl(_*v?d zYI>otz+l~$6S(lAM^?RBXp0_tke^%rAcOW*CdgVwAYN#ngItxLAj1e5y-eIf!qOhp zxz>HV5i;n#_{$)}^4GO3{I1WWjI|#15U>&jYM35@|KrR9g$cFrvEtH#?miab3*Uxg zs%g+z{A}q#eVdbARBWw>7B6}yUk@BA*dy?^EnlCPU7Vhuk;&>vO-)Lgg`3L6pAIq% z`{3)4L9%T9&@XK3EaY0tX!uUJHhADidop;NX6L3Y$jr{0pKslkh%>@iS7Yw6`dRpC zUQTLJY3{uIoYaEi!fx}27Ba}!10loGj?CYAv1le6fHX@A-*}=5G_aipF_j}3C7`nq zr`(6n;({VhG19e4{)cOC{JX?)s*F0sip(Ji;oFq$?_4PGQp9P-(bUMXzLGcaI zE!Xvr#S>>qoGeQ-ptJ3CXLO5i8W4%*>C!motj@MCJ0C}ht$$D5^K|nX(e%_VQCzf<(#EX>1$MT@o6;`yBp z_0^w|-JWchtua7a4AW7;YeM{vS*my?TCD4o#cSdpL#fG-tK{VgwutR?L`e_6;P|BOP#sHL!ZaKl{QH}-@ z+<6T;+gv-n_e$yoS-E?oTRt>#Y2yX_v#ZV8&bGEg(Jil76>=@m0IufyS zN!*KZw_%aMtRLGs-PC5z`RjJK>NQt24xMc;@p`|2wnVqQ&zGkDkYrH{3+_`d)ucDc zry4`~dV^7~w}$fX_a!S#DjwkWyqNrE;sCVE$gCU~sV z;&O4HKb6FN-JaawS?#*Bv+etP`~T+ro*!T8ANP`4KP`~HPo=aiRnCZ=qg(dObNbCw zinN2vhN;alv6wS9+>Yb?r0@=xny;@p4tOkHzFxWk{eLgICB&qUMD13sjt_xWZ{BmM z>1?aL=ZyOPa*t}=a?fi|0NNaYHox}-4C9{2e%Yy@7%#7MSWS??IH0-k?Q7Vn6U6Lz*e$J=I$N@%~(PkLy#vUiL( zFiBv%&>OSvb+#q*)|>{*VRqn4a3iR1!!b`L`A4^`8cl7FZkeJZX-nf^y=%B{1NDu$ zNB=`%we@;fhMy0UT37Nji?(H&gHTRCqZDP3mM(<{ynxaU{W!l~zp0$LtW{ToIEP)G zZ65bL8sR5ejAyD1Gx&Ma49-hpE>a7cTsblN|V562Oh{{@f6MtiLwikIi^ArnRlD3rP<_i(MV$qi=V} z;94msV09|){)d2q$^J(ncCJv z3x!p|Wh>^YtkSsN)h{M^tncdQCt)3gH zZQfwewl=1rmI$(mOHC=poW}5NJ6Agmbq?$xifZo*YiL^!>Zvt^iL;7xhcJ>IJAT;f zQZp@{@;ck@-xbTBhCQU{@$4mE*=Y~)o%`yMItB%(-l0H}Ny40W#XHvQmC3f)j zP#qY#yu|NK5*zM1#+z&U(u5zoD~rdxpb_l7I!&;*wq=n+DZffYx11cpWg%B8tHvnM zI#$!Xz&-K;y#4EIPV@ZZzrLo>$leWPZP*I!I@>niB~O0+ZVLWyxJz?F_1&K41PAk+ zAQ9$-rFYGZ0kPdx)GbkM4zp!O`x zE`irb+BpO1H1#g#|GU&HiD*mTN2s+LfiV6=~nxT*16bURNo;Ru0ab1np!~Z zti0o}wPSBmYbalzwsm?m^T5`Y5Wxd!B~oPd&Kj5{efR5Y(g2A+w_dipvuy#dMF!d@ zX`~*w;em!#GbPT+|OHrWs3$T`b_-_1Cq zj?b=EV@D$Ul;(5Er!=46{{+4jjB@-et4+cF{}b9NYg@og(oBI6fZL`#g36kqzw+fK;a&F2YwEDiDw-FCztxwGxl+t2LPw(8Yg z_dB#FeeV-t|7&|r--netsYRG$z2V6?T*?|u;#Xc_rg`T`&RdbS1!Mu z)Dl%-{8h)Sb*4A9p7!m1w{ls%vfOq>-~QSq`u0CuysPIV%ub}4pN@Nc*8BeH>vluK z;A)Awe|101FM727v3S|0&bB$XY4-2W&;B!SYg>=^cHmdg{_AP&Quz;gms{_)8#^0S zXWPWvwCbdMq^#kxt&&v z9J&R0$f;)?`mb9W*E`F#y0fjL-4$hSx07{R`TxJSE0At(cgFu;+NrJA+egYp;mcVZVX(pQlUPCGbx#-YdRt=ju!18Ze8e z#J?IpJ3bm*+3nRI36e8-{gQ$xs1%ToSgi0PWUfgAYmoND;Py|eLIT7cc850Wu+D2DrdG>)g+wI z;)=jW7m`IV8LuucCM{Gz<{xXgKr7DVOZn*}%z7K_tzQMiyB#o=T&E{EmL zuo8g=<)kmlfx=U80-tGz%dLf_lk$r3ajdkQNqKl9UVdIi5y!vhma*_v)0L#SMTKd_ z+4*@p7^My7!MKklw<6k^YLM_|OgJxY>RuqS~#HVL5inOAJC#2s7p5-Xl%Di%~K^ZBb5fEYyc97vvWePa&IS zr}IuV1*g}ea8?&SVX`xcomhf%)pT2gFm6z7F5W&NxFH%^5KsL@R~v*2s5V;6@tVez zPRv_`F@(zU7Lec>#TW^!MpJ7{uTf>Kh0^r-k4bSDdJ`8eO3O*k7w*y^S4=O=EKbgU zJ~NM>F9ezV7$?1$BGWS$F2XD1p`F?PqPQ-%74YsZOb%uqan?Y+OwuIGLHP?H2cr`& zQSA;#ajCYLQw4WOO&1I(I-W>dcn&9GqWf~GMJUyM8WQ;|Mit#LtY}}5*Y^xTn#(EA{lUYh#RGOErPQz8cw2V>{TSkx?_b}$DF@>10AX}Hz zMfp8U@Xw^q!z%QADpn?VrKwJSgsO*XgSf?^+Q&5}yl7E6eEtD7+lVX} zcj6q#&CH`$%#Z+@?@TOoQD}skA9OU{O?ZKM8CRpS+|1nk!qOl%V#+Zb>3kEc z8EwrL$?0gTtqjqpyKYGMy7*6hPUebx?)rm;|g0um$l8}x>2F;VRkluwf&8d2%zrY1ZnoEg)0glUPo_!AKzamZZ zFX3MzP4jRu(y?ee&C@R+{b!_U-YrM^d!%U&UxTzGlzI*IQrZ4UZ%29~(o>P9x%myG zcOgyl^B$x(;d*C1<6nnPqq&;o9L94Qhk%nl-y%(OI^ma*KEd$+Ax-l;@i?O_tpUX2 zgY>_^Lwb%x`d6f>?T;f(YYg#BMVi(VDw~Ehttb1DUWhcUE1w}`BFuImYYeE9}h5-AI1r`TvG_d;?SQ4-&fcfE?xL8&PECtwT3oHd# zKClTE7_CR7lXd|72q7Dx1mQgdBf>p|UbqJ$93c@Q9ibHA4Fq~fwGzscu4;t$;9KNh zXPJ+UWA|M&Al3$lYc)}!+6ZlM2)8(b(!fFlj9(Xkq(>md^JP#<%v~t3rwfsYKOVtB z8p&bEvszPep_+7)gzPSi*%4eiXLAO&Mq|6|Wc+)`wwNM`#cE3A5nfp!sJ6w&Emkn7LeL^gUQ+2c)KM|OSN7^WL%>9bnDwqP0lh;!BNSef zT|(BcOsMu$$HuRGiyIIUb16Yty)NLGE_zzo>ZXdzugE6FJ59sutcwyxK4Kku{1m1wF8^i`#Sa)Z9A zu%@asOIlK0Rp?b!TmzZXB108K6>_J*oaTE{qCVf`bI#~}$b8EzXiIDUmP9 zk|MW2BR3ROEy=1VE|3@1*w+7u&xN{PXX<>gwDT~%t3ho?xF1Xe96pu|#b)zU2aLTFMV zFAOB)1@v-_)BrcAfdN@hg=bY2)XIy^opl{u24$LjPL)w(&o=p>7E?>Zy~^=b`H#!I z?!(Pq=C<{6`i&e;+Tdi^R~9JK|ETqn8ggqk|3s)=Mrh?eYMP|rLGs+e*Lh| zi8}8Sb-hmb`P}fM^f|rn#b{q@5qheYs%tPi7zqp@UAA z`JAqUC;MDD>~qfGbJEZIl;GQHpYw;kuh`cA|GODKA^cG{JLA^E`;}VKCs_Hb+Py`m z{7LJ6quM=J?f$FI{iarVS*y&|DzE9?uOZ#w^t;NvMeClcS2i~|{i0IdGAIp^mC~`N zVk0?O{WKDymN7eyu=xQ>VPt;B-f) zY-v`aEzm!=LD{5rzuL74lJRJQQ95o%#n`RgrTwmTZ_+6L%bVg?sI5`nYF4&1I9=4a zU(qY66{xEg^)^bh4Y3g?jz(^jj^B4U!WcWA`&maiv{Wm9;#9X(%9a9j6E*5GdPGN^ z_&c{p5_w8GuKw`A1F?|@E5;&$ww#F_yAqll9a|k63FK@=r17XX7dIYFuB?dM7(1v& z3L}rLl#Z`8ciA*|bR3lVRj<5-#u}Bsq83w2>klV5=q0;*<-XZLp2Q^>Wm(4}4pxji z5gWN$I=()3!oD)};P?Yl=#Sov+)*)p2hy>FPQ{Kpffm^`^`&a%?<(a*Be@(Jc+Cg} z$c4}mW`7&I@#wfyv4e~i<2D|RfbTK=V<`qBhV`a29VMlSg%;%h*Hf-2vnO8cjm8IC# z82Ig90`_Ub2C1q*ZQkASyCXZx9JjQ(YH6Tc&#zxa)l~&qv|%VI!S+TDyfmw#P+wJ? zRTU0~f~s)r0~PWjVIzcXn}+s;*avo-_Gv4q^|@Z>gH06lr-oQ+PWz~Ws)7Q0#r3|Y zo4n8STL|ozu%ocI@}d<526+iois-J)l``KWY2H6zmB-c&J5uaYuwAL^b*#?!)M0Pz zxUe%h9X=sa(1FKIhe=6lv}@HwsTg*xB!Wl$2E zdGFJQeNQ7zdrsd=yxKPQw1w~-g?u4;HcPrxQB|zRb`;xw?0C&yR8HLo`@?{+9*!3v zlXh`_-X~1z@f&q%&n_f4Ku;Vdcs<}Sp{^Gg&e!$AX79*hZ;p3h?9EQ4+1Zops;~zx zA^rJ=SZK}{Kkw&#-d^#Vs^SRw5`K8T2%j&p=ay)NpLe6g7b<YaB%-31Y(BT3 z{_qLmFd;yHPMakwa2m974R;L3zLRjg>W8>brM5=p)_97G3kc^O4FYRUyxpYXL(RD zosaC3tWtB_Q#dyg;-BE6&R8zn5U`^X|9+~htM>FrTEE)0GT=#-!L>AE(iZ>3nvVZC zdo=aun$*V?oQviOLxUkirPdl;s>>oBGzZKq3szn$a0*41TH>*F=##yNCf)BGeXKa* z=;!Lwx29%k4O+=awd>CbGvb^#bUwcB_l`au3RMCpA2Z2>xcWcYS?MHG_^M?71?xj6 zZq(fF>=U_RNW@o<*R9~noZP%LdX+@t;4JfRsFc+fY~fix?-OvOGwz#9if>v*tqk>( zL_5Y5tmShapDy|K@w$r+5(kAUfLrnB9gl6V{IYYM%gXzX>)w7jM(Q9NkZ^R;Y0qg# zE_EJpNH{$>va`}trckNW#@fS94!u_%9dFKjybkBDB=RVgVT6}f9g@ziN~n;;`S*9K zUKQu14LqIB?K-haa?JlRr|MVtd1*BtW^!L9;00$x7C2R}`L9rQ=Z4E$*&wEFa zz4~Pbx45}lEhlM8SS{Hxwt30i}}FmU#UN2NQT z40o#?vsq)f7;u!^vcW;RbBeE9?bux!LrcaJ4x`oD`l|MfzjG}chDa4UU%dvFEYH%l zy4A*P4lyX-`jSiBC|8~`aEJZp75|Cv3aS5iV}SSLalJi%o18A=B2RJ-vd6|t71cYS zVIa=zW@NAC)Jbotb*qeTCGFUyKsUUzL9p6i)V*I?wREMzS*ECdCrZ^GXV9+UJfl4& z182$|WD4D`kd?dR3{(1+Ylk{)4*cF*61Xw?%rJ*zyH(qV_4d-f563N^S)LN`yrPzn z+KC?n`E;gY+9pNg_PLpAbs6`|z#-hue|kx@pS$?IVi=|O+@p{MG}J@4S2k%qeTG*A zrk@CWdO%!nwf3v$)URyW6unXAd~1(ldw_1=Ky__)X3ES}+|1!e4T-X=vj@c8c8LGc z#c#KVBzNC?3WY-V*N}E-c&K-M3^Y}HuNuC5XChwlHKede79AYd+snX}MMgcfQnE?W zzP&i}MDi-`z2TK$37Ph{khv&%p>Is`P=`MSKI<1Z)4%c6E3jAc2X3us%L|!C)O>lk zqr^d`s(JIpw^S1ioJ4l!12+Y7UtX?4u7gX8(=-o7gEnN0O1tT#wy}>SCc;s>`DEj( zoMc|Yp{vse#J%XRRZWhD9+NjG%p2eYKlA*`fb0)bdQC%DXf-P|uc!5uIPBP~+OAO5 zPV{yyNA7H7d1-xJ{a)cDb7iLo%2aA~?b{x!0>YL<4@3B{Y?*`NqyZYmJgtBnwR#g} z7`b^*JH3G3{3>RpzZPyXVtJqg*<*9&fj9&Atw3fE`SWrwxa6oKeA#yYzhs_3?r$Uh z4&Pa}e8?Mr$24S+IV%)b(Qz@8C9Bc!*i}Tte^sy%b*%J1s?XnL>Is+-DZEZw4#1wI#yk;cs&=CCEPf5MScVG?+` zKBBy3)QLFU%{eG8Hg2WC1=EU37yFd+aOdGiy&Pm&&-=k}niZd}AJ6p}!Olk2SB=f8 zpbZ)ADk_SxpdOHpG2pMF*D@T-H7J+jP?mFFs*xAg%8S%;96B!6$^{aMT)n#$xlk=H z;W?M8Bmv9yd=d%v`(CMVIUdPjX zahi#?2u=NQ>XXhZ@h3@VH5?w*;qX|c!^ld9K^;d%9ju7hc{HNq2u?bT#qlZ*=jtV6 zcSz}615RpmIG9g8oRZQJV21+^TqCNFjyfg9abuM6=quNtjAu+)znHRKMkv4siSm+Of{C_@HO&`bZlh>(qj)E9fgDQN@*mtYN!~uLppAc zq9V23adx2N+*-$QSk)GnWHbeye+5U&RFD~gwjQuu$$?Z+W|G1Xcc3^A3q1D-?PkV3sQ|hUG?O`we z^YTwEU)5}Uw9xCxg+$NK(x=P`Z3n*m-Nwng08-}d}H zUh(#NdI2c5NMn7!GfLx(z4i3|Hp*?6`>12qag0rrfDp7FITza~}))s@IAc zrrdwLzp%2|ocqZbSLKRiQ|{ES7FKePnj}ve>)Ol7qTc^3tgJO__2Xwz)fHu%)GX`*Fejb7 z{p!t*aWcF`Yv7eo1NCgp#Ar(zbjJnc`cXY^kjy>Ph9 zMH)Huu!Kek_w%4(1(i=F{r9eLa|Krh_T!Dd5)Olb;ImX zFF#gL*KceRJ`(dw*3bSt=+h^>3WRJh0HH_UxDD)E-ac3~)328Gi3Oz!z-|nZ1lt{I`0)&p)=f_8aBa zVd}zdy8aO{JH;;4|J8AM6-xcqZ!mXc?2g``qL*TNsXf-;g zb>i_K)zj1U9n1fIPCGrl(Jy`_N!jT&m@6L-DMhbTOmsOq$|U8T{_?e|JW>@t1xtn&BcE~@muEN7ndBkn3iC!y|x*(TNGc7;wvnQ4|ezQ>o6BDEIn`~O=m7{ z{2jF)FxUQ8)mUw%MzX>m7Q-znOXBFY)hYj8*W^b_?twOL)#2v&N!7wg>0H}i>9^+e z$yu*?x|gjnMnC_Wi@Ss-*?-G-`>xoOSkAu_+Tin#&)vTp>-Oj-nJY&_c&zW{!SBD| zHFubEKel3IKR$QA=Dc~tXkR|il2*GbAcgO_v%j6cUvT-TZpNf~zTWzu7IrqBtUCPm zdcDK|dHOGAlpovVe)P$qhaJc}jccpqtN!b|;!lZqwI{q33V3_`bG)0ztia5GpwV8< zfhGl-66UsPjwO4HU_-Wf-GQ@uFLNgy3|P4C2sgzvg9T5%7*gT)nn{80{&ehrN@=25 zf$&ws2Rm&wE3nj~|6^`Vrt#t1d+7Viyb6bz7QM*CxjCBZ>83&7xbeVwy~eD-)?o{; z9o9`YDe&9Oi=S3STUg)&SfFAGQ-B-r#Qb*Iw#5Ig{W*WtSA$nx?)o1#li~7Cevgr{pOgX zN5xc=C4Szv3jVyvtia?x{fD_--YELQwhtc(D)72*o~@TXId{J1>NJxA^Z$&l2sB$_ z=a_}xA8nY<6fkNxY>D>UbNbVt_7;`oR!QepPQ;58oY8Qn@Dez#Jyq6NUM1#Ac8sN z)d^*PIi{J#mW}$K*1hadRB?EtS%GrLN1UYIW(C|_-S|D3sDN+3ltj0TO>94fz3~W5 zve$950@qXYjT%ETQ$VL#zI>YI-F>ISGMC5d-rN^5*73+RPHVj7>73BC=k%$2p3ajb z@5#moJojykd$9wz0waU}t%!SP_K0y3nE{j8DS~SP}o-KrK&D3p4>+Vt<<5i}S+$ zb^OoEW7qa?526cIZ);RoC~FEuL!&%Y#*|5d_O z@ZAVBcKfH}t{O*j`WnWfPuRGv%KH+O5&I0Iw&=Wc!dclx|CO)0ExJ@O;RZ_r?ckHEIk!c%(F5aF zzN!uiIaBBKe1Tt3`GFHU`JjE#D-I|w`p5d@H9HLw1Q?^eiy5Q*g#srbd075pHA^vRQ;ppX6&qRJ6RheFoq^nxC@MD z^u11ULQ?DJd66X(>O8NrBqYU41ctdyeW$SGsYbWiEV-zl}u7o&Zr zn9=DhiOc7+SQ5gXW67MRet9g}5T2_4R`B!vCIk{wNh&#~n7!@lRuycbxq zQLSub$&9pq7g@5S(ftxjqP8n6sr3)I%960;b(Ylm^}WH8MnCVHED1X_vm{h+VM*w4 zizU(B?JNnocUTgp?qEr{(S4SL1g%tXuEZk&F)Rsv<5+Tv!_at^guV$Zc}(w?$dYJg z5=%~x89Id}p}LMGq55=|gpygT;v0?1$-0F%s@vPK6^74 z`|2kT!zhdGzqqa+8%O<@HnF6%e_@(8p~qf7v&=AZ^c`-_^#4ir|9P7tEdDqksPSvBrLVml)oA|0Xvl`GREs4`-!0dq0++Ei7`ccU&-7|EkO5#>I1AGUP_y zr&KbDPw&Y_&2iT6_c)d_G~sNb=A%u9`NQkJo)xq8J=wT9 z&My?}Wd@H%qesftrux&9{?ep+J!M;yVTSIFCiQnIwN1M3Ce<}*`Xp{|;=Y^oW|OMV z(>t0P*X!PDs-E%m+f5DA6W?jl|1fE1Q$fGkyPE1}%--G9uwnMQP4z!a+SAlLBk{c^ zW52}rn~XCOKWJ*`mssD_*e7vsQ|*kz51Sfa*L~E~JWIE)sd;+h$4%NkiTj)MedhkP zsbI$31HCJHbN`yKM{)+*dDn6&`angvmrG^e73FDFb%vCAfr0zITvmt0_m1as20bQk zSYD@$+9?gDS-JNS!{7T9etlUrF-4_)>KWDeN=Jvq|91Q~HpScU)UzNbN|*jZWQ6gl zR3eAGbPwddG@0@BhCFVec4)w=fa%VG&X0vo8>*Z(;F{lhZ|QR}E>n|t#kLrh2W*Il z`AZ{))*PV^ovUTNIhn4=^zZ_EfJ<)Jv ziuAsIPF!VNQpUW#J9Zfy2N+iAh9*7o_}{O$)Vx3A@4g!(X;A~4t5|AF|CKWw0}H3@ zy0-Y~Ab-yn++_75*4E4YKQorQ?TGo?zOhe!{`R%2LZ#n*cz)aeq3vA&qNv*c@mW}K z!Ic&y!)ptoks>blOIFK8L_;McUrdc%U=fmAfQpy5ms^UaMd_<#YG`I^)(dHdW(8_S zdCAnbSIr8`O3QqWOwH@>^PD-e48yYd{=fZKhcnOTe9m*udCqmt%$ympVn*?`$xnQd z^YPQKESYhoHnrD(KHE8S_Ct5QvVTwbjxEza`z-30uP>bQnmYJDCoFBcsRRCXH2=w+ zQkF^{+`2j0_-1+vDTg!jmmhs_d`*zNqvTXl1 zMN{7!@ydeFzCZo)lrP@-aa#X|)X@=|=;)OpKCV7KeadSlzBu^D({3?IHCco7i)se{ z^9Rc{7SDy8N%`ZS-@o&pPoLJSopL6oFESijyK>=_^Hm9_qBX8Zs>k+;jE_q=GOnAR za>udL=Pz~d=IxiTG(IjmE^eUCqxtw454ZHXUg@nA$A*z!K1ZH>VuP6K<;%~t-MBb) z*3lV{t48iyA98NZ(LEQQiX6S_$Tw|oS7-Y5-L_qZYQH#lR!mdfAIu=%i+0=@a3U$v zYu*0uW}NJ?^2e_-l4^$yU+~H7!}AsgEdBX>&VfJ_=Hj~_sqWDr_FIor&d)haG$i#9UdifES*7e}K=BRn_KaD!n#7|NvDTbjS|#^0B(__4VEuc@KBvXOPYOg`hjUCDTp7T&*mZe8Lg4*lcm8;(e(scU9t+O4m9CyS zet*&2Ia7MM>ztkujbaH3{VHJpzjC5huFPMtG=I*d{JXZ!xKw{*%7&kRu*{sD_>cWF zexE&QP07pOM9uE~gxk>{qnw`k;tN~%r+TZ0?>|^Ddu~+xice|C94>e&4jlxBj80 zXDAjf-ZI!S&G$A|?O{oA$DDQiBP+I^(@yOgT!{@FFU-M;rPTXWBMzZ+h@w&uw9 zIaemVdw6)isyh8xO~{^@IFG>SJ!=>GEZwqc@!`U3pHGJrFY*cLw=!Yt!BwADuk!1E zJR_*}E@#i)OOLFdJMOOcKK|bKDVC@3lqbSgd~dnZIO3kq%Y1&^=C|U*?|oJsQQhqq zH2AgAS5^&xbw+B9_G(O$Rgc<{l1o}S+yuw3(ckQKuN=fXZj8TaWu zbLk1#d&g6ysO+M>!}nYY+&SW2)*jxR;C5@x(bWZWPOciT;M}=)zwDjAVn#v3&Ji1a zPWbep-PDY$jKThKzQ6p&TJ0W>N1xHCAN@SI@WXRC#ZQZg4>~`1>;ASsLdT90i};Iw ze&6=)lu;AEaHkeMf6zKtcg>6=7ea2b8vX9BEd%`@cYX6sSyio^5jE%WQYJVgMSOszy9&1 zOJDY1{v+&r?f!`?KEAZ$(2eE8_y4gY|HfPIor`K)_sy=vQS*OHnmyZVz^nVum{vbG z;M4tQ-hO$F+tweW9A5omSE6YA9{-fmHe>qD7cnNi!-u6|yLB%-ek^4Fwf-!5!-gIG z{*Tk>9VYZ1TS;{|?P$q1nf0D6`eX7#^Oo-4d2N^f_?-s}`mc`O?Y(ei^1@@s*S+*= zXll!^FT}p&GA8esb|32!5WK|wl{H6?UieKMFuuC_)%>mdk*POd4d0)z^tX9?efuS3 z_&F{g6PNhrtGXWl{=Dw( z@_JRwtYh`xAVqzMS;u zDY_+#kM0%6Ox^3BL=1M^T@s=nw{-SP554x`_mxBF|4Ec*G)3-+x^2=JTYd> z{k7>YezNhUH+}-eY51t3f zH{A8zMYoGdZo#^}^r$wT^x175kY!l-03Jm-j8}&oN8mjadOPW&=S)+#x!K*q>FN4z z;bjZ(kU2eKjTauTIzjEMvIS|H1y6Y`ptme*%l+xSp;med>Ab-)9gp?m0q+Cs?FkFh)3?EIrRC5Y*v$zhAm*sIr(_KA6rGRPX%Fu>*h@zaji%kp^|Z&(pZH=^Cfe^t+~nM!?*(t&``o|CG7Y;r75V2Eq+uhf zOzc!qlv5~=Xq34qouY~@$fYfp6v<$p1=8~m+T~b^XJurYi_(g7=2-G_^3yEXG=~XE zqhs}nmYJ5^=tAtjqo;k}^)tmx=_3OI0}OgUd^R9|+OSANP=FyII5HsU{(`*xoWg<< zZ1{r>IIvSw4sG3|j~yO6bf`WhCOTResL?E0tk)ZYD#{vLG!AV(12qXR0SFDMsPB~( z6stR6h}a#xr&W7cTN&#ajEz?h8X^{i>}l11uB}`e7pz^{c0lJJECj0$Y8@S&k7;AQ zs#Jppmb-i!=9SUC_<>@VrG1NE82W1WM~b^|es%8Bp&3KFzdUr{(jl+Dv9x%rYsMQx zr@JnlJalQ_L3Kgt8C$0p=gb}WM#j+Mz>Mw>yxiAm)0Xc0w=H?(nI#9`Iyh*_mIF)j zm(@9LLf=9!hj(|y`#ZDBy3I)~ti_vUdr)s95AUh?q2E5d?GjC0$`5$xkF^EibKD1@ zb>?md*wb%lpm@0rZ;a7ne6$2?*5g42xINXe{-CmV%rl$5I94KzuD@AlyeIczbyCci zNuR5Z9VSo+c7Le+aEo8R7}F@N>ri!b*?ledHC8n}=jAz3Q=uAPJHGIv=Kf*&ifMvh zv|;<}r&C{kdq?YTx4yb&gHZK1^}g!zr^@wSb(&YzdwMhV5U9Xgo`qo|LNBIA?f2ta4F1-@Lm#Fx_MV;GgW$?4+K_ z!&E%&;4w^{ahGmYtHXl16;-d5HF<^Uoil}at!sC6v&sMJefpy@hRcH4HK4R{pz||# zSD2c5dY}19Z@wQ7koM5{^l&yomrZD zES{aM4la+V$^&zantj4zFV9|@issafNrp%CR^f1O>uFLSUoZ7uf$pD7p8wIs?b-w1 z=k*@2=gXj^Xs_JfoAui5+P~?XCp#a2*9mw*3i)Y zM)$nfk<>*=<(ic0?KMkx{6V9psyh{c^9!Q2y*18nyr60B-)+|MGR;a=om2DiHS>M* z_We-N{efJgdXI2;lDpSH=Y38UCShQYo+hIfI!W>5`Ax{sNXpqBoP3O&^+S3`tYEQ< z=^Fx`Jbl*sXN>NdH+C#z`s%#aPf+jcZ7uGYc@^%Cj@_dTez-ty^fAP1wf^enx`e9M zibo!Kc%jMecl z!0nL<)i1rd>74Ln_Vg#C%7&a=xzerf+3g!PIQqRx@JR+o5eyy2khuquxuz!6u~fB7 zRd*@D7x(_5R!^js^8%88xFyJ%{PVHeaJ7fmfgo%RdCEA}WZ19QsTNubEbLofS@Zbz z?+!jg9WwSdwIG7*%sv&T=Nla>-79yyMjO1Iy>@?A??v8Tf% z?9mm7y|pD&z53%Ntg$zzp83r1i0N=D6})q=3R8Wbes>@6@bYD8EeHFoW}?$QhlBc1 zw5^n{(zrbi=H*RIWnKc^7M<)&bz`^8<`IU1{Y_q9FJHT3*D%M-(#iABwr$t;{2{OR z=KWs=na~1S0#GPs6iP4(W!CJ;^FMeuz@i66L+1pdIcwqmyBZ?*u!Ir(b{PqyRU8; z)mb-G(6Ui=-Zki?(3_h4Pfa81i2Hs_c5X)QDo^M2u15CzQ3rtR*O5 z&V3i0l+d2pYIlDx9lLR9yDZC4mfkz49O!4(<2%Q2r81!#m3t3}#!g9A@4H({%ft+g zT3fB69!%0pV-@|(dh90z7w=-R_D5}pwZCOCP7V$g_byYtIYjM)wegmTUZujOhP;Zn z1Gy;Lq*yB2l+P))m#D-MF4#Sk#HJHaJFXY;xxvEZGrC_6 zh5i4&e9(%{U3OPsdQu@q)P_eNI#6BSfWY-1 z-7Jd^o~Bc)0_j`oCguMXZhloU_v&%)xB5-B_vGa7R3ZDqK7KyWZD4Z7msQneON5%hFGn3v zEn`LY8f&CO#nB+xJ-q_uwu%Z%oP(UY@3^D-jl6&w-Y5-yT6^loNNuld@Iqax5Uy`; za>lXCeRT8tZttdz*J@DQ#(>u+*@c(O6!HIxNSciuexP_uutA-%?gx)t$u z;HO?S&EdSJdB+?eFFq}bIVu+T;%78d(H!v_IF*+)+uTRPv}5 zJ$kXRuHN{p9Q8N!fWl;FZ%yT}J*Lvh&fm5{rk`0a&Ix*|n+NFCk;Ua~juz;*1^w!p zi>v90KE|OruE>dyb1EB-uNEBB#Yd7S&sY5h8vB{`;xj~C@78Xb%0pB1<^rk>^D)c2 z*yr_u^mHTfD1Gg^`?JU^kLy_EI7?>MVZ&BHPQE{==J)m(YpisjyLGZDjL*{* z;(Vob;mOf{uV@zMcxct`<}$pXTg4|b-LJb#BkB1Cb@OPtAMN7jg|=RC7uq`Y7IopJ zulE+qz2W%1)0USl_jC5lS`%4mtlLSQ|6;nr8M)n0*7;u@Z=BWM`IlNd z|G*e@{x!~+gqb{>ag~E^qdviF%Ez(`lq!dq`!N*~c3>)W##g(&%plFbx_kD?a(T|Z zvI6tjvrB$Ifvb^EdQgg5L7kKF_r_sGg5!Ula!jW1O^pE0R%t(IZSS(0W287WeXGk$ zROMpLc3e}s*7R(@!%Z`Dr(xoL)+B6i@$Qj--^}?vs$1Qh;dM-y#k`89!OPsE=tnnr zH8HQ_##u!a>byw+=IrU*deZo%#{<->CU}+Uy^g!|GnD&C7dU52t3A4~m{+xsf#y#ltIll4!%&_5Z_KV@U?*NVB#Y0Pb6J?RpMI;t#mAirP| zxEiydU6=*ULwBXC#L2R9AO~9EHLVO2p-{T?IZPKxh2*=p8IvL-4Owexa`_UMYHN3+MfX&XVfEb`X%goVuT3yV-JL%mcQ{enr5xcp~-&{oBXe4 z@aqI$V{iq7*A5g?j`3!KIZ2&3Cuve+PGab(>WOuV-R12Cdi<5v-R)D6OXKUiX)I0Q z_avmcY8H!);B1dyU9$Ct>h-$C4;pn97-SME1uwD2f9>~5dZW2VltG&6pOsJbU7X@@ ziH=Kh&wkk{X<?G{I_hNDM_1q(RrFQCu)dsio{i?uccf<(taA2kPRmZ@( zKp{*vIUnIER?z6_t91RPx_bWbqg7k?^eFek`okU*`bxDkvT{$TtlgZ&!vQquPr%i` zW50$YXKx?D2!$$kyyc67u9FSW;rq)Jm`^a)2pt;Mg}6x-)`>%2n?63S`$ zp~@s&=&}13Oba3$jjtI^x<}l-`X14DJHO|lfzF>$D=Pc6zc$9S>N9a}aZ%mJ3764G z&fz}cC5iWGznWB$UYDMtjv3(mxRXQW6O<++r78J@qj&W)r`x-LU*lE(R+UGWu(I)j z9apWY&^5;J*+fS4sJ-5pUyJJ->z=EaM>KL^}9=>-A$KhLNk^=&Sc(QCG<-- zFF$RZ@9tQs1(fW##B}=ZESDOd`|cyIWx2d)71|`LbRXg1gjqXY7ozq(-?I02m%4|CaCI1aFD5ZSR66TqV-Nh`7E&*U*b-ZD>BS@Er1@uVt$y z;MeG-q(8}UD(oGN1TVm z>1ZxSKeN8`yhpq){5PBTtbar{?>UP(SNnA;<~_bv6K-*CzfL_JEUrOO9Dg?N5!avE z*FR|-n72eYJdS2C$Jh)elu8b&1W%-8kaV4Twc{M@sydF+(oE|#^`8c+4~T7g@iTwu z_ViFWI&am+=ne-+SI>3#X+1)=svR&O;zu`+Y^4*+9jI;Q4%g7nf!k9(fsI=fP8_#X zFZEUFvuKDp%SN7cPh#YOFJ0&Ui>{Xr#O-y(m{RC!og5fmY3*gb>M4JyIhu74sBNV& zf9F%Jvpv3W5AeoBdUS7eR;xyxRVN*4ToU_hoGG!=q_0-jyc{x8)-#)4DZ5tPRGZb? zQHRfXPOS4TUG+}ye9ceJ+N|Eoy^oJy(2{?4ent062X)57{WtD<>E%fd>2(f&cxKh& z$+aOh+J^9o#mu+S+t6fMe%erxGV~f6 z!UvUtZFgB$cy!Gl?rJU^tirPJ!M@sQ9>P}jkxqc|lb1B^D(~lhmGmBX zzR!W)>KLQe1LfCoz1WC8=PEj%GU^FU)Yt7&q4Q~_zOI%Qu z_A4fFC3L1`QFVK3SKm-?v$n8Hi!5qPx$CjsvPX}ip(V&BpFWRGZC_|#7AP*dSgH3S!&hF-oQ(jsY1O(^F@$DH(61%l@|OpthkGM&YXLR#}{Ut{sa zkV11}x@H$}&2HX_k<)_p(4SGrG+;(y(p*Y|50!rnO?D3n7*w+{*3A#WWY@7T%71MS zno`pReszcP7q72XtK0i+)9K`z9Co4DRsT#I45P1Ki!f@juQ#23BHFqDv-`e?nBB=n z6P7kc23d3Wt#~7#{d#v44ZFS?iUdEiUc8?Ly-V8D(t0|%@Q%_#;|@tB)uvf=^m2Ru;b|QwTYpYA71*^mt+~N2zj{bvYC{Ya-a>`GvW&eUMPmgh>}S>sY>f{5 z-@zAcQX6J)@DVC#!GzXXm3+F_C(TbVWfL;rau&jMsn_mTVU*n%Q0AsKwKdv4Lbb9Y5UH_e#B z@~ZxU2CQ0Dx=(t!$x{6mU1()jbf-mLGsgbK)nBRuD^-E*bB|{*Eu(d~5X?2JwbGi) zQ?OqE(ih~W^Qrnwwc_5?{uebBU#Q;I*Y-EKReY&B=-tx4-ml^-)!RO2`y2c#T2)&H zMhs{gU2#VBwr}cy`bR2$RJHil4$zOSIIlYCdwf9M_=*dvmj?OWo0M1ao9et@!o3%3 zD}Gni-k*JM(#ndfs>b_k?=4(iaZOb@X ze}vz~LlspHH~drm%8pmecUU&8+Rt>dVv)nPVU2#eQx%IH4h=)H+0TL-E7Ort565Mu z=^XRGA{xzk<8V-2N#Z!UZUE|fi@-hL(S4v{aL2&C{h)}`U*gek7W^XN_P8708GuW> z!3lb74gj3)>5KwS^@4DXuORFKPV3Fdz-jE1@XvtvfSd`O!b$ikju$HMbHE3JHxIav zjIYJw1>tLeBRXq(h6AU0Hi0Cvg2L&11~GS0yya%3|yYh*El~|!GE9g$0+#wf%k=; zzX2zEOY!~yoUV7C0#1FWl>RHgDZk~w<@xP_N<;Zs4xI8Q>6rk0IOMN@8)SF|@Ce8~ zP`Fe+5`QOfijTgdak@29{?ehj$Wo+p4)Ix~RF)A@xtk+&)`@2LO)%Ncoe}e;Rl{$kTvRI4S)%Iln@|ABsAC zKX~*l32IN0o)qA*kiP^juWu`WBk97uP)_NU^w$HY@(2em)gKKS)p$a%mWsP^hAVI)?VFU2NGCUR_rSAZ6d3(H}3}a9`lk#;C zIE9}CoZ7vFUjQ!DJRsjzM zJ`{MEjQ=@svZEQeRPNNTo&!$(Q7LfBpQOLnePX;DfXm|@1)R$9IB7h^qF_H{UDU4@gx7&1ORNk~^dgRn-aWvnd>_U^{XI($5`G*wOfMwkpnAb@@P7kN z_MMJHDlZlE-|Hvlb2)IS{gMH~fFtR`8#qXxq-O$fsyF*^P(31?^ehHW_Pm8dDi^|= zfm8Z}RPA~+z`p_x69{90lfR_@I&iXk4sdyTJYY;p&(ktJv}iCKIF;W^z$tzyJr>|2 zARhw$fDB&?obmk1Y zoboN@HyJq9w|@brew5(=o&-+3kATbVQ_cCO75qBRzoOuO!1+BLJL>;}^X~^P*MEug zM=JPQR2oXpWCec+a7zCy1wV%Kmnirq&flcqmva7x3jT87;n4pjaH)JL!h^uQf$Lyf zJzTOI+4%x+XUMcU1O8j>c?mf6gCPJtBpmgJ`b0{9JaD=F^}s2=Q-I6u^AP8kD)*vAw9XQ#?2RNok*80{9ofzde z8n`^a0l+E0e*-ShZzAUxEBKk5zfi%i;QZGV{FR*lo`T=V`TtSy4|D!63jPJo$9^&$ z((jB;nbLnRaC!QDfm41TQ1C}^{-X;1l7sr`Nf+y(M^ z;N4{SS>V+F{07|Gzo8!922SbJfGjVUdoT!6z6Jo7=PMLA@uGlBdZ_+C0-WL<4;=rk z=}7@j@lFJ2)em_(=jST;C7fRjT+&bd?X#R;t>7;MPUF+_z^&sB?XwOz*=H_rxqX^Ae}#g7ob%sQ@Go=zCknnBCPSqE8wKAV zIHl*hf*;5E?yeovlg|0WfXmZAhx20<{952pEu;aL+jA{&vS$`>xjh@X{<#YMhq?Y2 z6#6f4{+kNEGbW{!-#rSxFK~+Q8{jnlNaIu_aB45V0hihfwciQAso&Oi@7Qmb04KW* z1unP4V&D{SG;n!2ZU#>AP6aNH_d~A#DTV%4uD?d1|0>tNL7~4_h-lB6|5q8G@F#%#!0o0L^DWt@3^>`r54e2%S__=)FbcTb4m*I89i{@8+u=XJ z?*~2`xF1|eKTRe`&sv2ZFW{u-U4@=7;508h3Y_xC+ArKkfm1$z0Z#Rc;ZXb}a7wqj zhd6I#INJU~&i4i`=da`Z2nD~H^B+_2PjY^)g8v8SFI4b7!o>8{DfofFDgEy&_+vQ# zn1Y|f`M)ao6`Zee>zLoQoIeP-Jij|Re}sa6g7YUS_-&kDsNlPYi`OAbfa8?epZfFB z5Ii971@6vqs-KgAQ~CWHxKuw0pTYSTfa^G)D#!xh0g!J2#}FizFUs*9;6oq}yGyKJ ztbC#88{oZwPXvB9=ac^5IX)e@r=$n^yGMw;e*o_(!}Y)^eJ=vPM}|joe3JrC=6I6= zpU(0BDDWzdUr^wyIgZWCI>fu3pAX#$|JY`Cmipsz`y0VL4jZA_$USL8711`2?aik z<1-X^Ja7y>!eZd)lCAZyl=DAS@L%Bg7Yckc$A3}adpNE}qmk$L6vz82@ZUKeq`=*9 zvE3W#8?C_a6HNr8U>97Ben zLSsZ%YPGZL2(ev<0hhO5J@7u@jREc@@o^Hx@pJ{A!tpr@JfGt)D)4HKZ&u*zIKEqf z@8bAL1^xxc+Z6akj=LgL^7OktDCWyYf%|eiN`XJb@ni*_%JC-^coFcSuvZ0ef5~p> zS62h4e)TQjXdOSS+|KK4!+=Ozu?8Btjy6!NHHv%%iWSDD;RD4&QHBu9!*&SK zOv(_Vg=~iq4W$er+Q@bYn>i1%lk=d!w6v@l`59?x0mCMDu(#~1@Or5#@G^*+nwAzD zA6t-LTw=~InSfWi^QW;lwUaGbmLf}jh9v;+d8f_D&o}2;GSf1$=&kSkX|}q7fFL_Y z4zg+FAUj45vT5WXJ4Oz&Y2+X~Mh+5=$)8EmJo3Kq?x3}L4$ z2o}wv3}L5n2HR|%!FHNwuxJ)#9HK#N*2oZ>IS;Xu^AMXk53!T;kPvGfPD=|7v{R1@ zEk)QIA#Vb@_{3Rn7Gz9M%gLWvFrC%ifRND6)i)r-rolq&7%U_rZQKMj zlniXeV3|;2&X^uUF;Vjf2#HMN@n%|zGq5cJwrNN!$tz@@p#~fAhX#s%$gh}SMZi#- zwLjEO?GLqC`$O&2{!p7;OqiW6CQK~sKOJ{-ig|I2&c}ui(~2y`#kTtKFgqPan9U9& z%ua_97AmhhVRq_HmZc;k+nU0xg1_aIWb*+P{b8pH6c%Qq0K>vr0ft4`^0R5!a65(# zw>fHs+p$l$P5Xq~u}`?oDiv<0N`>33QsH*0RCpw_N`$Q{A7L|(5q9zzVKa{rcJdez zI&Q*a`I(lY+}RkVMivzn6g^^@-QJ;NB06qDTn^iu#9Sovurc+Bu-QdK*y$o7M9Z`f zCoBQ&vD=EoW>tx_Q&l1ZW&O~o+=6s-F6)T8=tv@iB#+#j5=)UeH*FdV)1E43lW_$l zIaxUwX4@UFG*v2 zB3beZOJ=8KnBgszb98L%(Ruf^iEsw&qyb>-aT@pi6GJL&CEhh_6>Sv=Im*p56P zFi_E>rc6rW*U#1hVi1_N%Q{feUvM_RE>J27QgpczTT#9etZ38{tSDItRtzT+tfdn@_&2N+ej3ORhUukxL0yP`7CfHw@v1XOWtDKti2>9H*6I)>ziEZ03AqvAtY}9W`@*5V`UI0uPn_hHfcZnvsFS#YHIERbv~zf9R)e)bZCUH5Wv$vM>?M@sYrF_kRGxjDGt$;qRuVRKPQ zK%pTgq9cxUGt{2qPU}V;N^AnQ-LqsS7EGIFDYC1DQos$$)>_EGaWjh8yfeyf&N5)l zBIV^i(_uGQLB7o}@i|DZ{Rq2SVPJ*G>})Yl|0`B0n8MrwbLQWm5Oo2y*OFpq-<=b5)U|C=#!!DL&VrfnZlf=G(Uz&yfHOmpG27i$v zn{^=|GNP+ujEuBfLgEBncArJ;AI&!RE48Nyy=x)wACfIk%|O+(TSiz}vPf0JerwLB z3*6aUwRHDH*1bnrXt99z>$Dpwu9fLxc zmQzq1j@@+)(+UcvNxGPQz-w# ztjmrTTazw3bh~pdF$3+BF1d_Zmne3acKv13rN4CIWvggu=G8@EMn>8(7#}%g1MyVR z4z{OWb~M?TdD&rioOszG-s!wcOtp=Pm)LtMW?pt8v^(*#6Hc6W*&|q|U3N&kJfvBd z9VTW7ynDA!y6%WAE9$7Jc0%x!Sf^ZesJ3QYcIaJAxakI?>O7y$)oicak?e08%j4SIt=Wx8B?N+##YE=&){*t zj_bM{v~_nzRQ0E~Sy&6OsXHLhj`o0{JJipuE~~)*TR`4UWQJk4F6jy_J=YRlRAipb zlgW(R`L?C)yan6KTgd;GM5(piVJK;y*Woh6b}B>dr83NRm~eYxB0Ac!Lp_Y`aP7#o zbYawhNZXMI8tla$DAlNrl^Az~?1qxcN*OA|ZYari%21NoY_*wyK*@T_P!V?H>cSd9 zcC8TvYgiv%vD0r!^@W!YJ-qiPPwyqB(E}OK-suTGo(o0pg6!Hqs0;fC*|mRA7xoXb zYyY4w>>p&;{y~u)t2KY5k7u^4DjY18j=~zjQZ2PvLxLq+DMLwCvK>mYl`@oMCEKAS zTPZ_HR{=rP*09$6zhaeJtnhf~&sLqsV}G`* zeTZE%;?Y0ZGdJze{z-A+=|7uK@p1o9*t2u{3kZcd+0#;?cnHvD_<&HUPAJMRRLX|U z@(YzRqYNe02HT;eI-v*^Ce;R;p~3?1aHz8}$FyA(VNyM^9iLR2l&O?jmF-Ye8>EM$ z|FUa2UVLFF3>(E8hEia~8wRu6^6$dl;dbpEF10~L{=@BBExZe>h1<1Sco(%V+-~g) z@1pjF+pT@!um-bMgzd%>(M7%^?B+Y7i+o4e&38m7T6^cG2$cg%`(uQEGP*=a_EMBt zgk&k3bv8mVK^r%LJx%y$adlCvBJI{HJX0v^;5s~1XuD&grwX}G$HxklMv_0+Cq7sB zCmD$BqR1lc7FlFy+MPaLXuH>ml*-6vSV5e|)YayOF>?)m7O|u=Jb^5Q2&pPw(B3xH?3AAsQz^?2PXx}b@ zVRtxyby_pvA4rrvg(zx5hC4lm$ZaTI^s@()a+PHJ&$it0gNVuoI6nPJe2cMj{PZlM zvSir->VdVO`Eyy;OP)?1Qp@P%(W&euRZ`h^3el<5r4Ul7cM8#| z9Y`TMnS*E0dck2;C3$p}^UjwOJPzyigjJQ~(JALVj^Iu?mpnS4&m zhT)E>Fbt2Q(IV?Gy2m}N&|F+>DHev|{xTNthndrJ1ao0V@vv$6GlXGzS-86@g2e?{ zCBm@r#Vk6b6sZmO8eVd@2twX@ov_1*4G-XDcBf0A=?WFnqS9?u!@vVoao z@sKO6SwBV6l4dCg3X~2{0OtPBuuHGe-vSx?#8~}Fej7&`^laho2JY5z zcRqK^xI2ftMR2DgTo&APxF#;s{x>8iaXAk0k3jmce_KNWFeBn8ne0w-6z7L<{t)hZ zB3uM`UK*jHA21!lkxb!8cEv&Qs5$={_UR${5?o5xSvO%v2>3AwPkZ~EaT7L?OyNmx z<@}SJPx}Rt9X{ZABgeNuPaQV)Igj+$1KS8aB$FPJ*WoZB++sIjosKrD06qkJB+Un& z2z(CQX>cdPeH3mG^d%m{9u)h8hA?0O&_^2zLhdIfigrU=9dJGKC}gmKOCM`HlKmXmEvmS&Mql z^G|Xc_UOoho}b{F;C{>9lid9j;mKa52!9yZK7^O-NAfxxl)q)*-9Wr1SD~R6*mK~K zOz9xG8VBXSjPpyt_e1_RgFgpYA^0Q{pX4WTP<}HxKNWld{%gR00$2+8Bom+HF*ry+ zw)AJ|2?O63{y%^p1uO`Bl8H~UKMvAAnDYmKe-Y{Z6nr0GeZVJ~_#}JaFoUlFkNTI8 z?yxs7HF#2gLo#jpPU*OY{nt!zFTo}GC%9y%lih_K{SZD1;lBoUth=y@Wc=2Wd>H;I zWbYRAFOUzwpJehUc^?i+cN1LFw+;M4gnt|Qb^@yhpJd{byaoPVkf*@E5%Na(lT7|3 z*W#e`y~y3g+?~(eGVacSOY!AG-+9<&CiE2n%Yr_VNgv7SbbyEW7=Il2xronGD>S44 z8v{Pc#3wl({+^IOfWBnNM);FV{v?OsAbkOFDSl7zb?|QkzYj1s@JS{<$*%CvhMbJ} zJRqy#Pcr$Fj7|J^7-7$lPlN^yBeOY%+}6z^N$ksU)2?>1l?!ISJt@_HN;?;6gp0sksCy25^C z4a7 z1zgJKVeWp)-Mw(hPOCJ+j(M=(ryfGXTfmlUgiRz<{3O2!e?4@TV9WlEkQc+BWb!Au zn*5Po%nKT7AXkt-Pd~{|!#@u7e&>FnVLs$J@F$tVlU#y>?D8aBO3xH7Cv!Ot;b}Zr z5B&+ij0i7{4`KG!u0{>hHz5(lkAFv;-x)*iQfhrlAV5n zOY*61!jAO_zYF2d06X4I*hDg=o8%)nD0~a&ZwH^|OPFsp>;m={_|p7|$ za2JD5<=k`^>;??`4O`2d;ne*3yPxiVD{sv%cz?bYtaz5ux;cgQ6 z$H1S5{x<~}t{*p%Om-moAsngD9|8Aoa1C(DoYq91AV6dKwfe+_?B-g_qX`^rLG&Dip0)LXppX813r*>6+2=fid>)|i8 zGm`7zPvg&v@ZSl!7XH$BMDj8ml+Wkjl3mKcKaO;cLwe=|n+HD06d%c@@TYtxqTi^3 zTnK+D-y~6BHmHRit%wKvLN?Hz_v_TcCX&f6B(K3i^=%$_MwH){UTELIO28wTcqA9X z-xFz=kMdjuIT!vUlRwGX@MrzzXRtrybofi z3B1G5`!#qMfc*d-$&@dWcXQrO@U{VO1MdT1+rcB5cqG5gdF#Pz0p71C#vfp7z$2M> zB(KCl`C7*Li@>je|1Ic!4%mF~NhUtYWjH8bb2z^c{EhH8Kz|9aT<}RIKFR4gNdH96 zPXPY_{O5t62rLeKl8H}p6b{lK!udnE{+Zwh02?gRPqGgV(%+Bs@hx|j-?zZ;1xyRR zlwXpaagct2^S^Zvb~GXWBjEq!0J}Q~n@FbgkbDyUnP{h_=zq>a{sR6alRwEv;J+7q z?5ElA1LQ;SCzA zOnj0TbQ0-t2!lbjC!7W6-ld!avpJO%zFlRwF+@UMsdM1(g% zPJutkS=D&k6Zu>y?fIrFPPqG^h%BKT()c)r~ zk2A0vLVJHe@>M}x-%Uh%1<04+pTyHk^4CyE_B+nqBi!AKaEaiRAzTZvCWIpyzqKUq z!a?P<9WJF~Gx$^Bk2=y&4{QVYB;&W18)U1GWe}lJQ$hGR6~@-cs=5fbRuw9PEO2X4TucThHAs+}+6C_1vxF?keuqa(5YbYq-0ZyVcyS;%*st$>tPqDR)b_Tgcs9 z?q+j0le;GFqC8mmRPLs5H;KE6+)dza9CwY}9l_lQ?uKyJz+Hdt`f=BnyL#^S$`{E- zE>k{8ru36PrJH0umnoejQ+(u4@sJFM$(dX>!9_DylYPmh_^=$MPUNx??r4OU;*;X> z<^Fo^Qaq%eGC+DLK60xZ#Cl8P9M#_v?iRuYSB-Ixxfst_c#LDr#rVbCB+S3IbOo?LXPKhJe%X095-=%3dd79p2G1Yjwf)Yxxqvej8W*lZvE+m^G)@Qn!#W<5vru^5AY&bk$wq`5gM-pTW3=g>pz4;9p3fJ18)_oJgA+zBtk|A;jllN8p^+ z{0NW1c^{sJl{k0cX+DPYjXXVi_`gVc;799|(L6o026~gHAshHLu75pvz4-Z6oL}Sl zy@m4!c)ZkES(hx2Mz@q8oB3wT^~-?NT$mLV-q^E6`(PcVWQHoa4%l)<{aF&$Bh!69-JTGIGzg-7I1zc z&i~8f!gB}0I~=dUIjxtuA>FzG7+<;FQemH$I9`wQb0}lt9LM=KemGF{6MrUs#2x)1L<FfpEt!B5)nzh7}YMc8tN!^%>dI)3VGtx$RMRe8ZwcFt)uI znC&~$%U<5-fVaQ3#uZ4Lh;UK1RR~9hM6US=+~&O_?t^)lH~jLp0xjwLT0d+S*; z1M&)JKLX0h|9xjYrsc2Mm<_5}E0MibK-%qpqT^1j#XAK49=)P@*m(gQ#$(ST`=z1~E{v@)EK=jnNy?t=)rCzp;0;kD);0_s;Q}6uYTPeNmYVAI&OC{LexTno9 z7iIG5&bPASl5$%jp}jj|`x0?l=e@-!0&344w{|4d=H`xqy;saTZ@_1d-f3iKwzgcd$M0(QEqh_a&2sE9 zI`%bo^C@k$W>1~%O<4XU#AsXF0{%&u*iKtnM%hjLo$hb+C(%xTy*h1>V?SoQdu7>; z&i=k|_JVfY_Q@X8?lw&J0!rfq{_$1xSJTJ9O=rTUctMHGXz2 zjb#HN1Zxn2UX-X$B+#|&L09HNA@R$9#O*73UW-iA?r$lp4I27IwZV4i#pfy`*{j=kb>nNs;){87z z#c63BbtFOuWp5SNaTq!%J@{eeO8jvhd6trF`mSB4yd*)#S*%agNtx&2C{5B&N{1zv zQbG3Un2rd7l=fgcs9=U!prZv9 zLX8jiQn*5-gVxgJKUw`KnO)eqe#}FezJdS;#Ai;dL2adj?7`ZvqJB_$P(97XdMky~ zH`=PF={Y4C1(_BeLt0v5;>5Am=mb4%x^+Vb6>tfMYsiO`HZrSjj+ah2!BO|)H{hhstN|!4xgSDPVE%e+p#Rq?v=n{-?4{zSY4y`r>HtavHtv^M;^E2 zaq%6;e~rDWUQ$u-9IuP-AAkGG<=bWPesJ4vJH?jmiB%e>&Njw-13z{`|52&yhHuetLkSjzE61=c24NA zpk9qUI4!+>Wf{_Ly!-@Dl`3105Q}a*02|iCn&Wb^TM+!? zS)8%AomM%=Ya0Z;-Zc919Gz;Q7~+(BX&lZ}#>9-mXB}Uu5wmBP9dlMa%VMzPj70_@wwnh_yRXRcMN_S~m%pig9k; zQbWVzOoNn@OSeMfo#V-B|Ggyy1jHLJu7DMSc&>~dQm!aZDxcd|PTe9qo?x1KF_sU~ z5{tAr)e1FKlKXE}GJPN4dhb`^u7b~RU)jyVe0Zx2v7b$%+*9nteTVtHeak7{sdnR5 zXvhw4y?tdfLtkh78Y`dDxSIK_WUZJ4=ksojzbJI~Z;fsnz*)x2{*Qu>a#)!xmV@!~h2l9>B91QEbK@LppeNLb7V=c_ z?JHAmQOQqYx+XGRWZy?`QEtZF`s$pch0aDZR{X8h_-^&@pA~wv*Icx~VN{M=jFKHF zeBdprv8y^@_p!YC-ZEa^URp_|sX?e{O6k?O*>T6O;?7leAj0-!JRP%14b$+rwVpb` zvXpn#t&bWg1o5xmq!PS(lj=ey;|njB#yyS_BVr@8kQ)pEUHeT*!6sTsi5~Gx! zx|xcEj;-b1#dn8Cq{&`QWAykoLLpa=k&)NHK1`NqMj9 zfNf%-Hr%8dv(rRugbJj*mm=?Y^(6cDl@*M$44RFXYgyCmkBBJ=^UoGjAF%=LfQug5HaC<{_N%vJd08xAyd#ROV?nss2p4N%=yVI=z4P zqVe{Xl=ti3arhVIeMpBKB(T(tWcqgMDF^NPqF9b^F;r@Y2E_6H*?MRkYVGA-sIQD4 z-Ikn0p-Yi#AzN3YLmK+rtcZ8htGuZ_da`)jSv>Vtjg;PQ%ty`Q%4a%^my^7qi`lUI zi$b=;Ko|7yZbRHQ-@bD32GxpRZcteyadx_u?Fu&8=PSlKd4p`;hs9>RtY@u<%0=wA zqM_###@ly;>@tAyUjKEFV`*GaybF3qD)mO_Aa~mhAwamesqEmnZm$_HU)51wRX(Mp zt1gw*pjU5D-@FXHQmJk#>($7g`bjl^ih3ihWB<`|7;EF?Pu?my;FePOXEG&myfPHcnf}-4^`fp_%c?n z(Z1St7Lq&p zjh7dBmr>nN8QXH1_StczasA@mvZ)@8ZgbO%IiNP=%Gyxrb@gWIBOZ+x24ehYapYfj ztTA3r9t^Itv2ET{r0;3e>!I-ml#-VEK?fI%(I|h$pLo5J&7YF5JNO43R{0w*&MR}_ z?J|KeMqWn`*5<`hMD>Bn?g8c#f&6GTYnB-=AJ;*z@F;TZF!112-+HQ*_cPAm>rU~G zC^sME`Sz82uN&hNTBUaH#Ta*AKX_GxUc%V6%|u!#4(gv>n6ES9Ft*h&AE#wf{MWCs z{{NbDywhgq<;KgYEPjWVO5?h{@Myf_K#KnyNRyd<>?j1Ty@PA^|rl^QN8v0@b;A&q^>)wyJGFA-buB?*p|S0 zC$V>bn(3PheHi&zI*e_PTYE3Dhs$N09F~h1mJ6ESh&AyE*o;#9IJ3mxV3mvS8{4w1 zF&I+|M;Y5DT4ha~JJ_*1jcp;x0?qm`NAWRfiiE$#u^OIGMNhut~+iKe(BUxVXrru4DvQb|%wrw{G)Xv!$LfExGjBRgqz{D1O zVMhek4CKEQTq7!fbnQuN9JH(`(7Kb5S1{9(QV@-guJDiVVjZoppr~ZRjPy8sUnK)e zl(VA*_!gH~Wl>Brmt>F5w}Mf^tRj5iH>DsRAGeDVKRJWX#UXGOfN`|Sky|h=enx%< zyLlg#hi`J@YAzNRmr=M26(!L6C4EX&Ty4UK&P(uRt70+uW66p1sU(UrN-)z#+a!)> zTZ?I$B*r(F z(k(@#I0hI?5boW!tBk_;-tjSKNh7YSODI9H_?{oWOp{+CWLmP!GjdDDn)8vdB9`xw zr7&D^G$T?9$=st$EO{Kk3KG8gB#3L(Y?V#Qx4=HN#|nylB#N73d=@h=w!5)cU}Q_; zjn3~}uu%dfTr{14&lP5i>Ukcxy*ng3r&w0VnFW?&Qq340ieHhnk^)v*Jcm>VY^BDU z0;(WUIr8cxE-F##P-=N*6tJ`yPVqCoeJk)9*}hGtRC1YkK%m4zT3~w7u+hk)^il3R zY7;^SLkJyiEK25QX(XX@DRgXJXN(NX3zh zV-XI#8!a^Bpgmq_Ul^!oYbLa|Lu)jOd%reTn)R$FX)h4z(`Z6G9!s%g>Prel2AvEt z2C&XaV7-bScOS4~jm1cK=(CCn^7QF!CEFkJ9YuXd{ozzuN+^Jy%Fh}jVipso7kfI2 z+M3Ke$i37kJ2i=^!sz^&^aVjZ%d$RG>Y(+sNEr41*n9K1sH^XP{51IqF|^9h@dUQBA}7sl9HKkP&4gqg=wZ`#g>thk@_(+Gsq>k zdXxDsGt1xeyym``aTtg`kMHll&pdc>?|I&H&pr3tbI*P4FZGZW^Gv~Zn$C0LRDAFO zw(uMoHFDy}=_a@N8?Uia^>1o)>A%xbI$E|m{jEhlzIoH=dyX8+%do}@cjB6GDo&2` zzigI+d>jJ<6=S4m9~D{is~wf@Ro9TK)fb*Gf37v#W59w-0L5 zMn5`tZ0$$$gLq`PCzsCaq8b;B{A%PsL4G3gn~{GG*8^rEza9A}F_{)4zlZWR#`#@? z{J)Xk0Q`OA1JEIw^L5ClAWw6@3Hc)AX>OiG{uJ^wXTL-KXWY|U&18Ou6PPsDsjVlF zr#Nv9`31;R>>zw4@^6Em@E4G$ctH58$RA<&+sIQaAbmbYp5nzX$bW%6^_gNqBTlG( z2mU{S(~tV!1nhTU_kq#*P~xL&5p?gbGtM~+SS@IJ2bejAF7f=sF@^!yCShBQtqR*= zY+qyh5nC}DBDti;K8y{G&v`aRr`e#5MEg3wAe|;OP^Z=T`Ew}(G1o}>Q_)bXhZJo4jrA1=9nKxu=gI`Q+sc+&MQdmQeO zUC9LUg2C$|nxt_urGLnJQL)1i8%2M2>GR13ud(9D_4bioz5M%V6{^SV{MVPoR`gLv z#gx6q_4kjw6zf#6&Z{vYVsb%wThZk;(zqDeWSsEs1>YTbX6T*!_=zgH7gVLoE9Cj! zrAw>ixlN@(6{X8}%a^N5v(%+Q>e8H=(j4T|it@|k`BkMs8hKt?QLaM1LMN|vtuJu9 zQtiqWx}HpOua9s&TkU$z;9l?HcDCB_sE6xWl!`Q^nflUvZ@EEVnpIhvpC-wxD9uup z=2SwaB->C5QCVCwn3LR(iPY!Y+|JdyUh;4~2T`2+1rN9L1@6Zp+|O0Hp7n4$C#sU? z?=H>aWXtnNlYB*Ku6JpWp>%nye0f!ARz+!$w>&qtG&fDMJWswnO@h))jogq~x;(8Y zCsUqXXou1iQGwlz9VLuQ+3I5g?xE;)vtKCov3p=R^WP0HwX$}NODI< zTB{w;dAME`xpCPFc`mxlDM)klLLtvHl;&iXW_L1XvinsJ*P}^p=>DZPx2x5zM+@99 zzydng>vgWp)vlMS9nscpm_3|RtWe1FwWV1Y7nMA3x4hN$7<7nmKbeFLnfI54&%?+(|^fX9S$c^OQEl~XhH+zoT=7`6X&dPQe zy)I3nJEv2LYceWdzDRB;*LxmqbGt+ux?U}CyH)LozF)6%YpQl_s&;JhaJ%V2`Ez>r z?<3r)M;NIpYOclPVDMFFtCW*VRF!7N%5&3-mcs0CKaO?R=f<73=!{pPTUk;h(yhvWe3V{C?=~#gw5TE^t5VG3cDm z{X(_-`2ts(o(9*Gb?zsTr+MUliFaKq^E4~A6q9r*qE?z@g`zY^k12*whFNSD_uMd{ zFq*Br-y#M=CV8fZYm><>`C-kjD9ubGQF(co_3{{B$>Ddy@|Nv87AR!yRg24cbl1Rz7#e;Ce;mepc^zzS(y?J(4>vx29TR|uB}OUL8Uvo3<_S0C<`@j9P|Hu1j$`j;d z&V~a8dB(7|%Td~gTToMg_xF9Hi#@s z-cSc;(FB#d=N5JNNoku0K>vu$UA7HT3B5~7cMny(h-2r~Y8-#!xX|A-)=oWdm2`vG z&SLz#SX^Dv$0dG!xqY$M1myumzBX=)=lIHd-`Tpf_2b&qM-`l%W}KnL;ICBc40aU- zA!5xT6U&0KYnie@6sbinTZc^OH6;G8`vHwP+J=wSCvQ(m(;0LkAGQ4tu~VaMH{5@8 z-7oigyC{^goIE(L1F`pvlaCDG^Ki$2P>B>@&Ik(*1gI?8!kP_lx^T6-uSLwyI7h?p4+> z##H!dHI5ra@=&E=q)MkgIgeZ2R4R)0^pRDpZdB>Kvlif`Fr2i}GelPL{0(DE_cvVL z8neYPKlyb(FDooJfZ5LwGQ2bC^veKO}0S0p;^)lb&4;j~IOc}hArA+Az1ZOAjSmY4eU z*FEV!k6RR1AUZuHMb@%8L#0c)mCU^mS1Ot|w7;z7<#3fQ{hfK-n{jKT^L2(Q$HSkk z5lM$d$SSsa)#_pMs|l}e?5|sn=e#b*iREC?JOBI{C%!c7nnGFSCpJi5Dy&tDL$Z|B zo*3hjiR*WjxeUF(yfFICkn0|vUckz(>(sqOQv$^a(irLP$!-c@FQR*E0%N!qukF*; zh>8@kZ$xjpqR>@4lxuob#ivN|azN3r>(eALxA!O|vR=ERtBZk0x8KeW{vntNl$;7J_%6A?%L^{Be+zyqBC%9? zscPXWeYC;g^?pzcmvAsLZ7^ys8exMnFLl-8*D6r<#`xQBD&bmcUE48@ffEe~2J7L- z%E3B4_v(nF9MrkAJNg>THFMle{Lgx#WI5Q6Od&PK4O#z$EDq#{k+GhT{q+bb^p`0= z>Z8`(wOd!ji5_o!yN^VnY>F`4dx&&YDD-|ZrMhD9xFIex*0@5rPABbc;QBX<#Kko( z5Y-f67l-phy+^X6)SA+;w4zLdJdgIwi*m42dPov%z+aK$(+N(CTAWt2J1ydzS7_u} zRq|}~Pw$kglN(87@RD{5a;aLL$8)Yw%CijeMM|d?9M9h(`w2o?Wc%^ICi(8FMD?nK zs#OVkiRR9##60=ZgwmyVY-lf3QTouLcKeTYcGWuj>RQ>y?e_msJ6+c}eXMc*FXwz& z?R+c2>59fVL+yMy)9JspPHk%Ej8>=rwA)`waB9;L+ikV;HO_g&iPnD47W5r2>X%mF z_-tFh3lXlTlU$$0(It*^>)hxtv%v9ak~ZI8dDRcZL+SjT_A?0YSollo0f8vNvQq73?vqJ}w%FKq^ zBSm2_%U&&H+RXH}nO$WQWb%PkkcqQlE1Kka-3kAa9Al@_?ts!R1K!f^^nI1n#diCP z@CS|aFSSnB;0CoaxXKR+&Nr1#w`yfSwL5*RbGoc_y3}s}i_ZC0g;RUY_9S_3O=)gs z5jBcaXXJkJ*W|?tThFMNH42Xb9`O@X+wML4udgrX=G_|~_2rV~zrU38#kHj04sG@N zs60LYN!M+g6Ppj*8U4&xmoMHrUb%7Tx7jPsj`1C~y1qScPHDfNQ*vLOJv8d;Ya!qM z&rsd-r5gWM{qr(|a%bwN*>=5E4nsCbCH$G%F!wo4in`$S1ssQUTK{Q)^Fu0!p{CM} zXBBN`rG0Y^iYk%ASnMz0EgRd;>usWyj(U3K5N?M5d1KrVS;J>uby&G@kIdR}lY$~M zUzn%nuLGR@`ShBH)%A0^DE_)Z?b-zkhWo1$hT6*bs|2~>nfrUyKjkG6aXPBIVA=2h z)ihIS>;7Ki3{&ZI!vj^*O{JQ~UgErt($W`VA{=FvanOns`>3~}1}Cs{!$*xhRHqDx z(^Csv?Pp?JRnq*E?_GR&#A8k+TjL5v#BFfTLrMR1UI!&u0 zDZFFU8j1?ul^1XIt+Huwe{>sCa>L(J&3HyrHld?>lV7W%+EiV#zTm&|hO-^j zKOKtd%|dnWR}$JhaDV>Ndby!SmVW-{$_4sW^;JP}8s3mK7u&ut3@-j9Rwm{QWI*S& zvNPTei%dQg?5K^@z1ZOgyBB6|tZxkx#vyH$ovMJw!SAcu&{d+v>tO}-QU7Vf+oExb zYaIr1-|Dz_n(E3>TL<1@?i@}K4L%)zH}-=n(yrq^|ylm+DR^SRA2C4RKFlp&-;rX zSM~h{xuL}lmb+P{f3rRzxWjU*qY4H~?{sv1(g?f0ZVut5t}pGQjVv=+?%odlC-qgP z>U-i){ToyD*>-2#9rUK^r%=7ZRK5Ilwf%n0?FraTF#7oQY1)NJ?XP%gI5qr1{dTlX zxjx|9H$OMNq5p54(&T<2PZSI;HnsCblil=@4l7OVY<)-@Su2bX!qA(UO?6d57|>l< zZKrA@_gg)uE_79d$^EiF5|2~-(&2vFdi9NO>s#_Miz)`UNyF{O`8rf>kjgkrVXk=B zZbPrkq0fYE%jz2`>h+gcwFW32!=dki;7t!VP)-Iy+W8VXMZ;QX85cjGmJ&rnu~S+5zSgv zuy}nf8xqMy$tLH9pS%i0yf023lXj>0LfnYMW9Dn6>*7WXderNl^t-r#s7JlHRp0fx zU6J-v=}f$)ONBLs|EXN6)%z;(21Wn|LL64luc(+N#7N_}rmgG;9TPvccTPJG-}&AS~TDwjGh57|%=c?A>VdD!cn zZJf9YfKkYo3tc{+#CL+PR$HM6wjD9dU}OiEKK9Z!sViPvj<+ove-5jk-dJ0-4+=2A z;IZyamsjGYpR4Oc-K zT<+(8Dwk_vb@JsRP9h9Pl;;P-&Z$R12gah04g5>m*iXlk#HI1t@|>sBJv1aVT@pQS z#?w{iw%tB?WQ@lHLguaiGPP2ww21@NVV@Gmcf$=?K{_d4t{d>h%l-mv+cT^e`sSzhA zY<{2YJvKqPYO>g7O3>J8bB9b@BU_c0U=Ur_RmN~-wF%=wcQ=Hq^9wG0lJMyuL*b*w zY^kbTRCvi|eZMHTc?mN6_5EV!IxMTK>mL|9SDo*7+C!e5;KA3C57-$|Vr2Yxt=+Q* zV|ItmZWqh0td;L(*?nsJcUbnBR{3EQ`T?IE%tg6?62{nwPe!?HgZoV*K+ zjp&s!u~9KYgi2{ttU#9DZtQ{F?R4ELBV%r++|9^X6)~VpWX#?a4XR+-+XaIvS@xdD zyNYFt3%zStwp{%1A(q`L9^S;V6%qYgP3TpYMHB5Td!TSc8PgDG1*HWF{)l%q&>j0<&uy?EQ=$Xj^uYFk;hsUdu)kgapw%d&^+2G+1FM(6;`o|imwh-ERbM_3jT zYFQR`Xk^(-MUONIyoICoGSwkB-snz~?RIf;V|Jb08# zCe6C)U;C@e0>hi$Uvjgi><}H?HC~c2`DNMJ_ahx^R=qSpKjN{`wVTc?G`#6^hMP6@ zJ<-9PGbI^I56jM8U*TBu=R*Va|9&c{_Sb%k3~&DX9QRGqLD50n$oQQ?cJ|z4hngP) z`s@EFX!td%?8nlFzHtsdIH)k=(ZH{tRn+`BwZDEuQtfnc@tacnS+=T!E`b?C^3IO; zu6aq5JfgaBdj0A*i~G#7^*QJ=H)BZi+3~S8FIA+BNcwbo51M5gb7mjW2Rr?~X<1{$zk*)W27dEfFZr|I=)P~=n;7f5?f2fR8{U0x@Y3C~3NI(oyDv3H zob%tHjZVpRk*6I`_+DM{~lSd!#0{Xv9~e4t}uP_0%U%B_BMLbw9b`G54C-9lM&R zkDpQLH+BAq0pfkqlj>70g}>;%B9B-7d2sWd|EOJ0OnkB7_U&)RyxGvUB;=Wy{d%9e zb*u8PO+PG)PJVSk#LhiYo{^PX6|)wo?F=)A_DdsdxH*Nm( z_Iu%P5AL(#+so-IUcMW&>+94xm47XM{nMnNu(wY=HFuYDLrTue4ymvIaJ%iB38Ox^ zmi_A7q{HD`Ki+li>gzM+xS#sr{hvShY1fV0>or*JPFZ+c(-hpKX3? z!|{3EVPjq|`sr5Shw}8$+kac$7WhHD?91<}J_w&Ms_5#H z1ly~H`%h)Rzj#_zQ^>0)FQ@JORnZsb^jqx#I3^MBOZ!xx&Dg2y`@K{Zxz44s~U(R>?I-v=z{(H)m z(G$i+HRK#vo9jJn)ED0^`~6Uc%R{rKL8TX$~$CL%O2e%y_#OFB$BZcN`16|0m3f6VV2%?)i# zpK(2ZYuc2XKGQdUnsag1MW#4WM?*fjsOpBXf6j%BB$ zstux~(3vi;f2JKOsn0p!HL>@~cvI%Q#v+v#)S6FKV{| zyLK!a@cFe{2mW|^0{ZdZ5w~48ygyTLK3~Ui#YL)NAubjX6`8&6_Zp-PIXj|$Ua&BYH!y0~k$M?sfyDne$`_t!(8$o~A&+}-ES-H)o zm%(=FfK4mhhiyq)vn%qcr{c$N_$g$}P4~?kqLcEDyw&jh9lsAI`fjMcd3&qV!jFGU zy&k40-GAz$X3U?tlWt_*nKkiWXFd_UY|iF4t`1Z+r02fuu>Io*_=tClbV`|6X?a{?FzLQQJZ@gW(?b#0+ZXJ1R0r9K)P20Zywf67hl;5ow>V z7hRkdeIxCQ{c5qsV`9UUFD^#+e$2+rrC0r>Xw|zBYo2=I?Zmp0hr%{xJh^|tm%ASS zVAG;m?=AVv(dpy7xMAAI{uHZS8!LRv0+&t<==HhRx~+dc+iE^_llN2^WAmvOL+6J) zdFJhq&wYn|8=>9$s(UHo-pZM!4c}#jei;$@pSd4Bv&YHlNY0$s!v@GLBVDjVm%egr z$3mUWnypilSHw^H_}irXxsCq&5F3}fy6-TCS?BK-ulRbxzfQS(T{-#YQ=9L!wm$Y% z?yaJN$Hc|A+g;|zzZ{T$=0JY$1qWA$e2_nIM!P<8RZHzy`(cY+4`*H3@@mxPiQk5% z-`x7{D>0vc8l%djBei zfuT<;{I*BG8kYa-?caN+B~(YP?mK!#pY$oOJ@#_Yvb%j2PTMne&-8a!JoMD`H*v2q zu3;D9Fe5-=aBXaJo!>_^rYuTZ+)y5Az#UJxV|1y*70&rbrPFPLQ-DJxZXLq?O|J7b zHauI=K>ljUm~zRO=Dc#;*tJqYcPeG#4zEl}ZeD4oy0m|DFQ=OobdGRY6tCz1#lLyl+WAb1_X(nzT!>wny zx%G|>#4b0KCMrsos`xun_#!tWJ^otA{vG&p>kUYa?hG%FKJ4_#r)!Hv3ArTtG# zb^eK?t5}yRoG$8|+tf}s(F?UVZf2xwK__t^S%LfcR@}Gcc3tE?Uo}~a%RXCi%_PB# zbp$t3<>8jn$?>-XGL_UUbBZ=dy;J0sv>Q3Ls(7J7#IW>uP#M} zm4R$1|HKX#a7vd$A6)UkEoqg#WM82b?V*N{LlN4h2JNAOup`tL{;F3bA@?FfTG35O zcuQ0$UBGE@a2SXSLAdNA55_&h7+>$wrMSz_yEL()6!+p~;Tn;*9KMjR#{K6=lig$0 zQDqMOL;8DFtkWHBYD)7=Q1tQNrt0r8uBl>jMrF2$TcOFHJ1}qSNw25cqw(;GZC3C| zbyl#gtxmltDeI}!EHxfeQ}eG&>F$-N#s|RCb5nhy)YDV5veTC=HizQqO)Kg+ylUld zN~hwfI@C43Ol2f{Z%xO0T1MiPyvs6@vPLdmf;T}X&BI$L@xgcVhQ=jjB~w#TOENNy zqRdO9=;bx)gsdfa*HTV;YWDJ!w4|)W?DQ4*F#O^~diyO;B*aCj<5P1}Gw4C9R5iV$ zMxATylsd%M&sU@N#w&dmFYpP``1@*n144ZLA6~L(aeC$wdd5&qLZ_xLqN-7&qDG8R zPm7F*;07xcY2|A5Gk%4JOP?sj+xr1n2w)F@-f#FtDVsIg`hbR3hZcvTs6GJ>>qMVx zw55R!t?DlwiZ(x%0QtY$CvTZjE%w9KQ zhy7#O_HXQ1xnV@g2>Vw?4Bjw&$GFD%|zCE0`6LJtDi+hyTaYlD2njLgcY zF_?NaQ6Vi2g;!jURy*SQCql{1}m?~WUq)W4O&Lm0A ze?yMzEsdgA!t=cIYWtp?&&{d%Q>ptbqhG2_889pM6)*?%@-8qO^*$e=ALp=UsI;!u zD|v{vxOT0o&jdwbL0t3r%un{Y1*ydgIPVBe(Dt_7y@L<8);kSU)@iuYk4TS}6|@=D zsw&wIX@g_IT0`B)BBk^akN*t3Pp{rBf2dU}4GGeIu`}!xrsOh6rHOPt+9BRuVzJ!be(!o&iaTIR6ixXvc2CUtkA=B)p0Ahkeh2x%oGujIYdJHAVfb24OAMZ|OH%XSjDn3H<83?`SfE~7B~?TeEPpAlUoX}5grd=96-RWp3LVZy zo^w#!9vr02SoZYUXBGSYtceWCNJ%(*w9I4tU~XEv)UfqyVo5t#5hRJ-;(N9?l@R>=lA<@o+5-1Ev>ha=3;0fl@9TdbHv96iBlT6)u56uP7&8TlnfLHaz#&; z=oB#yWy7R(Rm09*7K_7@69PRHIDa}yblJJUFIgWBYJc76I+Luzx#DvqOP3E>3onKh z2IUn6sAG6{s~U1URpsZsMJX-X)Ur8cldig-rzXasoaCn!4L_tiIpw}mHCXm(??Qd% zz~ls*dN>6sU;MGdZJAW|Bej`HZGPYkl7WSflW{$5osR8`wv)=%DXC)#YK82FBza`3c~h_0 zHj$X3c@Pu(V))s@wyIS|J=0cigCy}xNRkbPLS;~)YFO44(=gQqh^k4lJ{*$w7uY2! zXPZn`JG3%YtMofGH|@PXH3Rocn{+lS6{T^ioiQ}~sNbhcMtF-x-H!BerE#Fi8GR0; zW1M~IJDOd*ByL5C%9)}8O{~25T#it_aD!~W^qB4wwb%AugFD(SaE5%P9R-9{VB1)TrsLbt#OsI*vd0gh(Geu= zAxP8MQxh4~h4)Cv>{^ui>LH{bgtXX0TSV_~{EH=5*h%grHUAygj+l){`Hb--w(!T& zf$Iasy5 zTuFa%o5>X-Mu^5>0yzqkwtb(%Y|?r@A-+D4YF47=^ppXG^Nf>Xrg(N)TL~wDhj}Qj z3UifvWG8pn(6MS59@A})(wD2$Q?Z6TJuQlR20nlp+~V>>B*L}ip(16wNOzT3Tqh|C z>lUR=Z$;$BiWBkJ&gVBqB69aa|7Xc)6zbsvGWdWJKA?jSRM1%X!JgSLto)aQ4ky7d z91JtSaLCLDB)IFJ|0SvMtr+BbOULrDn$|?bYC}g{UYzl$bluKgTrwYB&0?{F54vmk z=z5)^Yt>2$x~P9CNP2XPVCSnvieh`jRX#LTHtxk*7$uPjeLn2p>@SVh{XpGSp}P@J z1;!XDzVlCMW7TGpFlUJR`P!-$4;BTvM?5_anJjy6ylw|?HdwZ9;k>8{%pTrsmG*w; zl~3z6$2AJkGO6s(j$s|EQiynpkCMNxv#pD|X)=7?lj^NP0H_*ren{mIl@OTE57{yV zQJO-r;gQfq$JJ`u=fI~`%*Mq5KCH%!h=tEr!TFOgHyctg^{!%GY`_HBjhQkH-rj_P ztC|CbfFnMV<(P>lFtQggaJ3vpFqvkM{~`0WbqLz&EsfyE%Le(zW^(z-yvzSiE)VQ< zfb?j8VGQO!Fb2hMNNFaN)%mTWeTFGg>1wh_W&&1v|@C z!-ZUb72HV+wGHq$k2-VR?t{O#G>+G80P<|zU)m?XU(#@qr{=Vu{Q*6H<~u^hPg*H| zDmoIUq9;3jqnZ(o1;2`4s~3_tHSr6+ab^FWcd};*zWOg(+3nJ3WtW|U?_o{9OZ#fg z(GH5V;`(^$1a+04-R54x8nk*TLcY^*X`S9@q0Pk&H%(Jr;W(==o+tZPhotdt-It z9(lyvy-z=8bZ>QE1div5>y%#KW=84cdKxY)SUz8l`edZUMH(F{J$hMG;O3_ts+3BU z9!0vQmk^YkYxSGjl;VXRe8hv&a~mAX3{Uu~YlIG~dn4jFW9mHBSQk-t+@xbNE%mf6 zbL)Z|H z*96yu0cQIKTiCuq>#&)!J|zRou+p>j+ICCC{QhO0DnB)D6EE79_p&L96gNu`M8Tp3 zWYOlM-f3pRxqiO*I(4!tADvv-&}VJyL&*^jDSk{A_CfOIW2cJ7XH)CTDVwTPyLD%u zZ+Sb3?RRfqQ2C@drApk(?l%{q#?!KatVa9Giw=3*>8HWIK!tu2*Z->O?Dv`W4L$}o zh^x0&+e{Y3bFT!MvLPMWfnz$duRPL`9hlI>2N7S)nOP;@BSe%TM65@M(9m+Zjdruw z0oe&;Hlj)`qDl)E^g3G5RR}K;4nTA=#1oAKGqkD>0ptv=5gD|&2V)5?a-}^4CkjWj zpr54$y;zI|J%(25UHZIPB~yuQI0Y+OscY>ZEzJgTtd`j3ix7?uP&k@{CA;ClCA;0G znL%s*5;!risH7CDz4~SNxX!OI*B z++1cfzZ>xouk$5Lsjg$`X|#wvU+j2SG)U#-x*## zt=D=5KB7f2TF_%re<7yEYVeu>{+Fc2djyaZ)@AB*ARR%)^%>WHV?G^29kQ9Nkb8}) zIHHzNOr)J5O|ker{osq);i-4|c6JJh5=q+|pWYIEB`uIQG^IT&Pr-g}i5N zPqgf7kVWepYGbrp>ki#JRwL?_C(&i=5GvI!*a=#4C?Zql=x*G9DTphM*Cc0BjDJ+* z@90ANPW%!5(5a?uws53S8K3P!4#)>M?aTU21|fhd%>rojXVOMGU@I^lxVSk)47ww7 zFBcA68jm^bmp1C;5%xucTOu+G-Wc+TTI0Q(4yNd`Oj%c9 zW$_;D)r$^ZhQo(v$?6f4nh=~+h*E*rk1$}jRE^!AI)4O}Wr$THaq!X5x43RoHDa4Y zg(CwG2k>Ypws}*~+F5`=c)ArqD?^2>^ z{6+gy)pX1;1qUus4^ueo1IaaX;G(Akmm?JC^rBy&D1J$5ykrNd5Ep39de!~f;ONKi zYPHb*O9DH(C`MfKz=Sa#O<;fPqG=bSZn$WORQ7qtUPgPt14k3n#c!C7CK~#ijwYTc zGX{+`+u3pc2pV)3kSS(Z9{Uy4p-)9@x1QIX&Yks^ivDX~xKvW`t)y6Y$j~-Loz5Rg zVmO$rXeITFeo1QMIU&^f9d)Eaow=qHU~`9PBkQN=^jO}<`g6tsZgHt`(bEYfy0gis z-#Ddgmdr~*jo_E0=09!OVMn?j>cCUPjd#N+XIyua;$%u4;^dveiBeCMZ_~d1Qrhw4 zbu2L+=a|Q8iu1jtb&k?aE97;D3NVA!ICK!DHGh^M6=RpxRIlN(c|AIA62{U(hwuOQ zI^_K$9qf1=MBh3IV^XEp(aO*3%pcQ5Jun_@4BNnO91j(CKs`AP9dLA2r@yg{YaMMI z($%k3sc9cQ4#0D)iJ2DrNm8h^w`zq=@#hIBs`;Kz~DBb}TY?<+z@@;3zzjA<+gS9swaMZo#} z5a76Px&vPXoX$@S0Z#P<{uK=Ov%pJ%hk|bm@G!Iv=k!$B$Cw|E>l=_TMpfYb5nS>UMJAwL}8D9}Fv*D##)c?x(i zXm{9DYld$J?h1N3@PP~``+NkPZiZY6JkE??hRzWEKJf8o_$1({#z|pJ>Yt!zHgG@C z!+`sn@$Upq^pn7`JHzvno@aoEfG!74b|pE4JHserKpzGEh#4Nwa481U9A6Eb`Wp#c zYsOy-oW^Mda60Z48e~m5P3@0HZ ze~9Qo`Tc;C{7~TL@&f^qeIEx-_NI18{z@i?t{0i>xt__Xv5@mN<3Db}f0XgJTJT?F z{C`;R-vy4(4|7U{M|82n4l00SK~vc5@Dtc=4sZ|POMt5xzXJL{3!K*f7lDK9uyZkR zxDK}gIHpX8{7T>u$Grwzh#Lgd0LLHq0dRADPB8wjEcmZ5{vR#)rEq$ZZ!39FzAJE& zKM1(F{7~TJPhr3XJ*i(482DybPM@KjGx|1XD+`QI84pGVuq9akATy7zXzP` zME*edDd1%1@%vlw>lyz<3;sOD zKhJ`H6XQ2n@V~|QH(BsE11CM+0WSDC_4j+=)Zb5$H}9_mAnAVvxVioVfzvqN18&~m z5XP^-;1$-o6Y=>+DBO#XZe`L8qiPg}_U zgvqb8kbi>7|CfdQ%fKmK(6_#YxJUM(MH)ri3E<}T@c>Tt`4PBze?x$ieI%Ha=KXzw z@ecxS&cB55kG9}{f$>ka;D3$rFRQ~yv_J0Snz+!_~{*)=KPl#|8o}ne=`1;EcgcwG3v9=fGP=t|776PfL{bY z1*tF}Ujt6_bTs~<%N_Vzz-gX_0~hQ=^YjzoWQWPX&F%0laB6n}aPxls!T5_T_k|r`^f?0DT%XCnNuMu)o9mO#5@NfCquU6?ia{L-v0SIPL$@8#p`mOCkR&;MD(E;DVmi?vKEUo&(%`zfSCJ zv|A={bGr=yPW&Yn{G%BE%NG3O7*6kAHJ6jf@J}r8z$Y=h+5%s|@b@h6=NSIE1-_Z# z7cKC&8UDKk{wc$q9UrvMcfiTd=snxyzk;9NVR*O&-fOt=cx)>0Fo9oz;|<^>XRQVQ zJchq!fj`6WBNq53hM%&)-)8uA3%rTpA{-o>>)*z3df3k#zY9DZdX54<#!Ua95k|Yv z`@)6&K$>6iz-c}jfK&Vs>@%O?l@_>x;WZZc7KS%j;0GAqYJs0%_#F%UD#MjHzhSPA zc%~B-tSP7iwKfQCg19t#`-yEdF?14)* z`W^<&fBifvK4R+BM6blZd-=49IX-Ucw8W{8CnQc88$&hu68f-tB0hJ{hKS{>bWt3lTIgS+O}TH_Dtn%_^8m^dFF*+@+E?ZK<&yLi!lVq#PbK16{} z#xKT4is=>d{EfI%Qs<{;r7liM^~G(xiOUu*#y1=0b$q$gy2o_mGJZy%dC(ty{kj=4 zKjWBL*67CEenxu>Q)l8-d`W~i9*^+z!_4Qc&JbU}ZidHC%ZrT57Cx05gKrKPKWTtZ zg_v5xq?kB0f<9bg!aBF^>t`HUiw^p0x*l(Tqk%1J7)@(^rWy@wS;J^r>otr9wya?^ zt@Rp4lbOsuk^igxX8_0Kny++!M+UBtr-HWxQqfk3M+5ZH|i1X^{0z;0Y1(9#7= zFR<^n|AAKBAg~)Z7;V)JMt9=|qpe1s(cMIz(N>*fbT`g1+G?a9-AybRZRs+`(A%xG zMqBlkpl-Y+$f~ylb>l5TR=p*t8*d4+>McRtcuP?5KUubV_K_BTat3LwOwJ&yRtxUN zYQa{m7Tk^1f&=*Wg9EL!A8ge=!QI#=_#fG)>o3R{b+TrYV53cXya$)k`CDDa57wtH z%FM|(ez%BsU4-WdQy4Tp-DC1;<6fvJqhs%Z@lKi4gZ;=(@_W8(%rD5+mGRYD4JcX* z7nt^B0^5DISb($^(S>L9)moiJT8p^Cc&++})*_-XUSmYD)WIT(GF}V6H=-d{yBlJy zyS^b-`xau+HzwC=-$E?<#&|9I#vhybhFJ8C@mlna@mloFi27+PI%gE&r|}b9&MPr) z;?!voIOa(t8%~Oz+Oq>J3xoSI%=If_1n!FS4XS8`|+~`uBaii%v<3`(c#*N17 zjE^>ToG;|}u>Y>VLLFm_>UrFWkBA%_pU5IxMn>);-xPca5PNx9zRR*x=ZSi7`1Mae zXg6m`^1_rv<71tC79UQWnz|UDGsN?e{;V(~H7PsQytF5pba5cacPk@(eritoB0B0z z%F6N0)TC?8^oUr7PekH_dT4asl+>JMS&R9vDL!EJsd&ILbzc0E1^6r?{~)GsQdSCC z=|TDE2`{}T3Y&eyZ%$A6t$gRtXw4*({$}d;L}X9)LVBcIPXvX|!PneUVK)9FnD`>1 z@J&WM6^qX>E?Jb6zBs!lT0ijJ!XBx|e{4=@F2Cnh==+c6Ux@5kP4-2~iI(4k>{0Cp zI`@y;wz5mpqgK24a%qq1(rG2?tI-)3q~@@Po%4G#mh3a1yseA^fCvH-7cW_C{0wU% zed)C)^1462)}#JF0eT3#n~%x%NK98}+j>-)nZ?=%2Sa-#;DN7sGQ(1o!vWcn#S8c+ z%5&0iMk6=ahfJ30lfEQ77!Q_f7A#q^AR~2AQp%|Ggfx5CpPoEwD*sv8Q4d5(D__F&UG)FQDq`GEH!dT_`~&NVP|U~l2g-Y(Ocx7D;)9Xi zw2}yo4B6kSCAgm?REj_LH!5U z4`x);0%AOz63&VI-5L;Y#%_5*kCi=mEXqJ@C+4m4`}%cL!`I)~e2>oy3C{Qrt99=- z*7XkPPVc~fs6bc#V!i3n-8CI#y-sjUy#}4;ZOPD`X3X-&%e&s;JRq0+rjhGVnv1I zE-nLF>cC$I>|P683AC<=KgOIt?P+a#`}zx(e=s8W`U^IvZ7e`AmW7G|f|;z>g0cAXftXP?J~LhC~lAQ;5D zRG7sm6|Q7Ws@Bplv@EkLhJRz70Kp0t{R|ZPZ&jl}!3vhOx^LMT7tnWYYC>ZUP~~TWi7!})@um{ zv#ix^fEwM&xs2Bq|Hg=;1!Gw>79^O-s)|8^u`Fu|X0l#OFqUO4!A#a`3C6OlC78*2 zEt-P=;5M0_9G!*EVe>l(o@Zr#2X$e~;BIXh+=VTJyR~I7Y{|!(U>MJeF2P+`Ex22& z1^+{8VD{6c8zz>OEGw4FjU)2Gu+G2$Uz7$L;E5pb>2(hf{cr~Wd$i~fdm>M!H()L&!2 zLOS)A@ptMkScz}b^aF@FD-2%wAF>NZ~?Qc8eNzR7csl4(aB&! ze>z!A&`R66qdmWp$<(m8PG}vatC?Mu&~X;O&ut;e*RSJ9r*ny5&(0-+K|7ZS7VTUz zIzt$6zN|+VHdz&8cI0WH`CF79_~%2fbZGH==ZVV8Incsuy$lN+`far-ZE>4=r^$8nUY1@8DC%U?E<#djF0F_Y$UG&eAFK= z@NEQE4nCoOM3-SBc?QN82)<%qE6n(a&c#M{SO`9{<8<&X1~wmjf?bK8$;$DJ;J&$_ zr<;`%JrNu3kzYj5z)-3~ihJZ21)`n-awAbM6qp9}h$j0HJsevQ_`DcDz9n?{X_U_d zzdNu#;3t~+iB_V#7&p_;Q*irSK|7$FXeuXKhK=OW3kj(GJ9gaRSk#Y&ynA*ScRPHd zn8_phCN>TD&Lj0fdIJ1?UcvM372Lj)z>a~RXp&EKBR1;aM=U*vl-jF7O6}pN#1az)ZYP+^EB$sfE+cjzK}yS$syW-@yi(hU0d$(M(9@|aNb%U^qK}YL{|>RVhLyj8l;mxJ zJkswh^sNH63GxJei7sdSC5-=R*1ih%Hvr2sYoF*W#-D+d+J_zZ_7fOB9x1gO2{|*+ zF6^-{7T6<@Lp1e+XpF<*L+IDjXh#d$7v)4#Inl#WPUC}d+ZP0SD9VNLB3g}&#$^Cf zYL7mPH5%z(3Zp+etw$ULc2{BYXQHp8T#t4#&~7`PRk?z4qN!b?zehRQXARo@3G{iC z3-%)V1U3!YX+%nPKZ2C>IEa+=*p2!JAWsbcehb)6)F+zc6TOY`S2F%`@F$@Bedx0u z7`_v~hiKv_I*aiw1YZsCM<91Gu=(I4n)ryG%lHz&w;MRpeba!&gO6z9BRYohg@Z4e zaPaAXX~D8^wpd;G=l(E9^M{m<#xX_&~G+HnM|^rS$v{(Rby>^fpV+vGg=c zkFm6trRYCj?*LM=<5oH17{+0nJ=O(am2$)}=08MNpnM$S!rSocjiA?{oM`GN(IqIK zhW^!~e``S(qMT?dCmMdok6SKMY7hRvj|0YgUna0L@C)NWbTZ?gjg;cb6r|Ko#3|nI zB9W4u;gGWz?O@*Q(*W~?9HOaRq6c6jf9b>c?Z8j*Jkx>OrvxSgzYyPvz9%!vZAVJ= zt~2@qqt7z>sLUAmsoiE^wK7xOC;A}c+XX)Ihdbcg3v4_11pgpEIXoL-Z7s)B1)ux^FJ%i6|G=JECK; zk-SKxWY0kG(|VE&{!m~V@C)k;(IZh#aUlWiX+e9VT!<4ydtxJbu1HCq4E!|T6Clq4 zm>B%R{3rS^8{_<640(2-@7kE=Khd{sjPia$O7bp&pW-vt!+lqQwSr%W*FjOTbiH~R{(v+E`Z;Fa_mR$y9DeU_=zTY zM4!e+_Q3uy&tDII^2ZwRHv#(y{DOZH{XWXcpWlamM?qtMyTiYUuE9p~-aty@Rt5f8 z$g6_9oxrw&pJ-~IXnMB>@s)#*;xDyZ0jvysLOdqgfQ|aK0x8MQK}z-Jqh1;64M6-@ z2rL=(h$i_&kH<#!q8WcE_-TA_?6B_d?4n(CA(v>fAJIcm-i&s)Al~?b zR->F~Dks_%<+N^%M7bAe70QKmjA$2>Ya!2FiQ_}iPADgu>Ju%+Mtc7xHl}xwl3q8( z++h{?yil(l*i|vNhiIxt^m&w%9#_$BE9f&Q7xW_fB+5yTT$G;!eFEizUPL!xqj9K5 zO6?s2Kdq+~;6DQF0QiOVmFTw^|8AtTzE(1NJyNP)hWdF-pK@Tus82NMOZ2mhKMyI@ zUyPLcJs&C6pN9H5;O~ohI}=y}>Jv@%i5`!Q^o?fxLEtyQ9=cxKzHq|8Pc-op?ThkE z)c1$HP|(9sPBfJhP2Y{D_WK~E_U*u*f%2K)cLIjbwC^FB_=)DQQTumAM*emYj+0QH z3I5x_u8VM-#Q2G(_u-TL^GK=Q8Kl%s6Y9+a-+I(L0jv@Ah^BUk{)q7(V*J~{uSfYI z@b3gx34Wr9pXiM!r~Tjau)|i+Yf&!j4->rxnee+2TL1(pjwqVcOH zItv@gTZokSXM_I;%3)_C&cBa%5=F7c}1UvWIB=s)<%%BRdg9sTWe5`jEOJ9fjqH z%10pW!&2g-as?~LGR1kL90^T1BKg#S6om9?mgccEhozY;&0uL7OXsmv&r;ZnmjgTT zDcOhQCa^S~rLY%|N3&GNQnC~AYgrn|QVmN-vJ`#b`Mg-FW+~Z$>XRKPB|A_`cA%6x zPN{;W$n!K3J|(?z*um?Iwj4-LqIF1#CcTIzeTXJKh*mS2+9jIWqjGA8Xe2yM`aBGr z%7-9zKnfq=`Gz4SMlYmD=pDfhjhJsVen(h(fTcA^ar#8Mm!%Yos2#*FK1JN((+ZZB zvlOq}=J8^d8d#cv6pc#LkU|IPJfzs&mm(hVIN}hGQ~V)3n&CQzhcjHm@R1Bh+~N6M zkrJfBKWe8B5%^Ow+=1bUH#{z7I8`G4d$0%b-$6<&w~-Rw&hVQIzsm4S3~y!ld4`{5 z_-Tf>Fua-JO$={jcrC+^F#Hh14=}uj;d>dro8dbdUd8aO46kJPMut}~yqw`>3@>K5 zf#FXxJdfcy49{eE2E)@BK9AvghR)@D#pG5vX%eO=b?!GN zALrt^W+wkF>$-jX7cW_Q8q|+Y4z9|AMG!V+I8YMbziLKl*jvHs?z>1 zPb=gLpqr2{G2`E1hA%eD*O~E9J)tg+J3I1g%-Ry0;rV8DFPPGLSAglBC)RY=_h)n6-iO#pGJhi?_rJKbXsXlk@NCa7%UY>ScLwz2 z$y&D9yHE^Wl34{n9l4uFRlmAFjzdR(~~OQ$F(^<5z&)7?Rq50 z+A~@`QQ(0`e|pqXSM#z*l^=Xkq$dhmnT$PZNpQ3tF?W6IUQbkfz=jVzKGl=j)*t!m zNzH%!IDJoq_TXuxo`~s*V~6%=Y`T3osVAyHfYm3>dQ!KGM@V{7mFaDK(5xpF%%95a z6wC3n#e*@;_znc@v)SP{*l(0JP;L5YOj$Kv2?Ele|Bw9W(W5~H`Go}WJbJqa_7I}d zQd6EvU!0I7y!tMCMBL(>)U3rx8Hp+W!GV5B!AbKpNdel_5UnOTIVDJwn(8+%I4L>E zFV%Mmv@!lp-2L${>{@f!1?BfCvHQvGrGIK8jq3|me}^Vvza3?i;t+%1u)ELy5)*S$ z^XLGN{Sp(Wjh#UUY-Yb0+V4kw+K)A$%$+h)&LFTPCZ^!Y9=zX=0hThTKIu%y9_Byn zs(1V#W4^f%HP=mxhJao**WzJy-fF>4Um0OgWleU-^LrXpA`e{5WYrEBh ze=7xEDuKbu#&-`Aqa&t8m>Qvb5Yj*vX=*Q&=jz_Dq%Bw(W-xr*Q}lp1dXp_0x&J>;0T zCvddCD|y={M)&I*T`_b%f7vD6Qcq3^?lv13z-~QnmWc0*cbQP_j&WVWA~f(>3)sj%XPn2iP4@oFM0(e zDbw!%_5tepi#%h1ibllbN81A12Q9c(ZYZ_%@B3=}-+f;b^WoKY-TmKod`z1AT;psC zYh*FX7&nx@eBS`A@BjAF{lXaCtxK8IBi*l$JkZkT*EoF|c#0r<;(pz&V>}o2TZjJM z|7|(?qPumFM~CzMq@HEmC%NhO6L_9fvc;`UJdbAw&rDv!C%|+6w`uov_&*uiifcZ+ z%GtDkSn;mtZK^e!uf=(i1*u1m-q+oV&*VIf);D6KfrVROBY=&xz&wDtT44QvIapwh z!0zgeZE%B)Eq{2m0#@V%D>}YalM%Dz7qRrU80U)UUkwRHeK38}d@9HzZv18V|JZx? zfT*f1e*6qG%nUFL1CovkI6PET)L}s6Wep47@W`<@pJTy`?d|bmv28yO;g=S`5AHUB!bA}lR@!S30-|zR&J$l%Ct-bczYp?y7 zv(ICHV10#__@-YH&{Nz$^!x~I7pMN?n4|iSZyaR`rbr#fU-Rhqe?8>IG5%fFFfCnj zW9|m9x?=A3AB()an7jVta$*p(Lu~wFit(4kFsU!cbbTl0uJn1(_7179#<->SMA;#! zc17aUfvNUIvQ)<+d8(wyKh?EZR;0e&Lp!F0afCE1VN#vJk+HTB89PB!`>0nk`urac+Yl-VdCbcly<4fvM z{tur*?u2{&%Vi~0p5kG7Yk56b4c(wYh?Fi5?NOfd#{P&qKcwF4_)r-a(kS6d=Re%h zn)AT}vh>df=CbcTAWNM#(%5f#K)wH`2i+STxqLr7VEmuCWBjMZ?(f;W7aoXNyBi+Z z#W^9j!^TIypL{^2e)FJ9iQ_GvV_xjWQ~ZrG1@#*0Cy#!wdSLD)uicUVljs8v2A0I! z6$YYBc{KhVQpG)ZUv9r8N1wzPa&Gw?Yek-4d{<*wYdk>-(yM>hBcQyF)j)zudulmKj;@H0JZReeH@L=1#Io-JvfGW z;*N4G%}wkKnTWI*Yz{3X%^D`NbRt{sF1B3sEX;4nW49z`KpZbsefu0^)_^%kNcyAL zJWoFmu(M}4>#v~?_>JWApa+bf!aRF8n`gZKpQ~?A3S@ktgZ0m&-@UT+bo6693Neq@Nts+F2^>bpBID1w~CW=S&g_MlU+4JX(m^X7i zOAjBPl0gP%#^|ziEXS;gNKTgJj?`slaSMzI*k29zv(nN>&7O+9q=zMs>)IY&9A4RXvppU1>V2uiLl5%=sB3 z<|U`(klAVJ*!O5&R_6GWbR7&&NseA@v5U2rvo0!&&C$lZj1)MNS(u)TY*eac@kQ5- zTyv9W%zdJr4NSUqiPk|UKt5VS(0iNoj_2n%t8q5ryo&QjocC~w(f7LG^u-8$4m@P+rzR}WYmEnYGrt^I#eB~VzNUi&SVFw z%sd8cVj#`Ju!zrwI1XAn(seD_OxNx7{Dt0Srsrd`F>sO*AB8v%7mWFczliv5WU%CW z3%qHRj(p??ivI)GhvW~6e~CENBNg!zh|~Il4!XXlcjavl1&C`L@1luNPt5oRf>?8T z(HhgmA@1h2YLZ0hx4wAW`@ett+L-fC|MdOm^B?V%+1DZ!K7(=e49>~Uo4wA(BQHjj z>$@hZRxm;+Q-!VNAqrzwxiJgzRKwyz(c)5Lh*Ff3YRDFgmZ(K0kE&eHt7RTcp2ta@ zS5=fpLz%}py;qgDXG59uVQ-HHr1F%;bggl*zeuk&W|SBgr}A@(j2UucRta?SGxbKO z%3$gstn)g;Q(S2BJZJJ~_VzdjRgBj~Z_f+4UPq$5&XsyJczd4Xm5LVcFlI2qMLA^2 zVzDvX-x#7dE{Yc|Dm7*l8AJR<+408gRQ{qI(V|p7Qqz?peY$Z`sv#>~lv&cT{Z*b9 z%bZV_d7a~Vk^O8%Y%Hhj{6%8XqRz5k_4Yho>3JmAfCT;q8% znPO2ks?3PVa@0aB%F!FM(v6vaab}X&HE)l@I!{!;xykcdnaAN=uZ!@2+T%v0M_rjm zbD1;Bx&yaIGU6p-(c(~J2HHg~%Gn`m^f&?=qP$M(&?u;g*YPrsYh}*JRh8>?Bg*TD z&PzW;VO*>ig(UJ9`5PCdQ)G$SxFl7y0G8y4GW?12GFrKWuSYj1fdjdg3Q0Almx{8i zjdcS}24k8$>vE~G4NaaXrM0FZ@;tn?@ky@yA-dUX%sbA)Th!tB^+NsLN`E^o@0!-2 z6PWB0dKO-$1d;ljT0xO#m{UR@2Ypb3+Mk~;>{+;sIj-eb;-_x}`YsKzF8S&bnWT$g zONmlYp!5#yBd8VdM)VPUozELv>|j>~5oWmp^BF>wkJwR>yiCx=Z)-mOT+S~ma(5e9 zw9+YGFiN)fkOxohhnpRBu8Mw2wLqZee>-A)jKjJ|kNO@BTNTVZRx{f5r2LUUUZ}*E zUy6Lc?h5%5F%I_hSO5GYS1TAPJx{s}Del(^z z@=<=i!60a?7_rIc*^>K@mT&%Hx@`8JeS;Y$tLUo{7O|158v`EYZ!#F1aje44uL6UM z-3WcrsaA^~_RZ)sJiYj}sI3kTjL#48Y_)u!l0E3sUqTPc-So|USZiL}YPSVa*Wazj zsyMn&U$X<8oD?HoYrfxQ9DFF128WE6J}tiDWzL}E`CWfE!PPZTwDr&rg%oKkqiBgvTge-#dEkwnDc)kGkoXD>sY( z-8bJOCN*{LE3YuJ7lj^0FZS@1HOP7Dq-FAmP_fS*9}kbBiJtJbI89J0o+H}(!V1G~ zL#bj;gxR6rJGeD%*kLRzN>5kMUl^*7D6LTKSmjxN0Xh~gOXwL<{@!O{d8P6>BDBon ztuGdo?&e<_5K~_nCHvz|pKFZ@v7Qmx9bu5&FrIloG&EG~=%eW|pqh7q*Sl-#6OezdGS_$5aaVn`_i3rrXN1a$86+{c&TD<+^IeMi{Ig8%W7nrJ@c#_ZG*|ML6?(Y)~pb+J-l1pTw4815#CSAg?^7X=>p`>2;G5(hO zNR~ErOD%Ix&+XdK*lnrK<7%!~GiLH8j|QzZzBJeKBs;g$kBBbzj?MT^jEdZ?IP*V>Cyqmp(MBKv%GGpxz5mhG0Nk#&SPmACR?xiO3x~aI3Lz|UBkRr z>3O`V8-6J;ZQ@4+zbP-&R}Q{!*Dv30V7^_?`&EMv8bWtehu*J>T+ffF)r6H)N0##< zw(^IqH$>+1BktQp9@KpA@`O|S1d~?U6!CV zOux5mkxaBuZk#R`Ws8lAOYk#_Ul|d8Lo-5+OSH!HB2fr_KJM9P;Fm~YoL(YYQe@21 z8=p#RX;a@{6w(_?>6c2E-x!xG3YXgn(yL0BxeAvn>C)d!(k6w=+(zjyEl$k|(k3;D z-BGw)XIuubx$nKckQL`JwJ`NPTp_M!SLK@KRMop&@)__29jluzG%Y zz2<3?CakahEER!7xUJKjK}xJT!9jm~v8!Hg!)nkdi1P2CPRd0s$U=nnOO z@}g+}`e=V!&9HJ!XzgQMUEtYJ>2@QPRDiPkw5?GVEW=e*O2WGdG-Xx;4N#_RH_Cym)fhcH?)KGuGZyZM%}PAZOar zz*CpLy)$*g8%GDv7`G|wo9nvYD>nN{Ph7bb{!_t`qgVGFyy>;!hmW?tHLduw>bWnz z#VB|@#)T3&GepQ`X?J@E?=wJyN>0T zU5y`hkMng9viCZ(BY!XV%!~Bn^BAO?RuAv<;Vi`}KRK(f;nwCu+2Y@d=#52Oe7Z}u z1XFm;%jD|1KI^BP30sp4xgl${j2>lczxvhpymx~}g*%%NznODqYlfl8Cbj>0?>b9r z!c?`dkN@oRw~9vEi}>^W@T&>^rqz9CRcI=V$qM#zw&B+4RrVr{HFeg)3XRE{y7`UX zB7-$``)d`NT5D=^QLIQazg6=Ot12}0*3_MAQ$*F))V`Z5G!53&JL_Ua25ai9Z55hE zYwE!_mx=f}t(v#*tzt=_mWxtk-O76rKMW+J>ceH^Frf1|afc6crld#~YID#Gj3$It4N*3=fS zMPeUo>isT;1UaL{EmNp!xOGj-2+Nd=37rLW`Q;PUrtoD=k*zJuf1S5T>}$=QEvZ$w z3+X;L-Nw$2RCZ7NKv_B*-|-WDGpA0~D9!a-n~NSv9m981t~?)CJNTtSe>AN&M)F^J zO88rA|9oSq@PhaHnAV;%H@JM9F5YT<`D~MC-UzOXGHagdj}IM~>;bRD2qNOYU2U9h zxZM3&Uk5wZFQF9)xw2^Afe~JtodY7}Rn~q!uV=b3-K}*LjQ!3uXIbtrYaPEp9q(AW zdW6?Q=bbOgFIcmyJkpJNYxV_~O-Y6_YxmY1LH2%D7o|&gCdw~bv)@JbQfu}#*O^Jn zbi>v*a%0E$Or@WwdY&Jafb2lnzKj35v+#VYi@up7Iule9=ceF1ToqA1Q>VAO=)xlH zzp7-tM(EiVEx$bbmg&GU-P5hL3%Z*7n`HYMftbc7Q@1evq~qN+$34IKTJ*vI$xmzW z1r6~d-g(Dm=OlTvuY-)695Q<)W++=M0ztKakxl68ExyQ6XaFXdm{FyKUT7Uc#5L^AK?)%ag`y>+wz{YN;khLCoj<3UkAV zHg{}O(Y0snXL{<{ijq;<_`O@IW=hp0KzbOZpK84BsdGH0fMwxNLCmfG@weD2P>*96 z&6YJ!UDbLqS{f>JXycPVjUIpxvFIIS_K+-(OEjH|bN_-sUWboLK3!3y6S98VPhLc1M+#2iq~~uHrcNEIgezaIc+G zY6_Js^gjxgQmXM>HJ(zd6O26%M)A$8e>6J2%%!?ynNvkQ_g31OQ`2Q4nOTP^$|K$s z%3M~S_7-KTd8`_d=jmK~vtV|*NNyIakMc}43+9Rzo6Lenuba6dv*0WBA}v?m(iTw? z7ky9dn8HQh*E-JPqTBV3FLBWiN*(8M(T_}y3#{BsE}DZiJ{SEbXPhewmZ;iZ#owp>$FeLMHe_#6mij8>JPa*@ZL_V(p_8>7QV+u z_f1XEc*eMz-TD>(J07{H;XumSlWAu!EjWAk)w9K;&OXdN`*7J=;fk~KhMk=^@a!)C zhFuK}yCNHw#-3Hl8dNb2s*w$<2@R?#4XWe@mApYUw?UQFpn9c2mEWLR*`O+EP?a{Q z${SP%8&tIoDn)~;zCm@ZLDkZry4Rp$&Z@*`RmuicsLal7Udo#@<15~rxMfY=>Pq=k zuYaDJmvr_WuMO*B-n;+ZwBlc9WQG3Z^~HC0_Pn+0J)yH9@Id6W?cbfcoj7e<&nv&& z-LtvZd)2dlZ~1B4hVQaGhwa=gTNUUzXT83+)?r71rzrn=>KtZ)x@2`+x6s;t(=L_Q z7B1JkH=~dAjiODVF<+!zVtzloTytS^Uuovrced(2`y~0Z-(q_DGIs*))B%&3qnE^! z#nOL`oE(!MGqQQh)N^ldn|>-Qc=y~fZyX)5W!^NeqeruDygW7gNAXODtx?;03x24K zkK4F-OLqBs{^M#&IBQXja@gE~M}N5f>Ez*&H;x_6nwc}Y*OsG~7oHn6>eHi{ zODde_Z##SQ&XnO#e<-}X=(|zfuD<^BlFtHMPMOt>xvpC>@%OGD9i8##l%Y$%g*To1 zt$(N6<=>QV{rS$xE3(5;Y!Ny6_G=aeE(A$p-j(V{e~|6v}yjL zv!mV}bF`&Aa^&E3%l_y$^_}c@7rMWHcJj_aZ(NUBa&pw5%SW4MPmSz#^i=wR)!XiT zRQ*NnQZVmuGTTTe{xzv8 zO6+*DNYKZFIhj5>$n{vv#CQ+iz5{%B*Il?da#HB#HODTe$Hk4AQaG|tq-OYY&uw4R zO}JiAu&rf;Ly!L9;UgToEi!J{{^?iW{_wjfzMFq&d}3TmJ^v#^+- znqR##S}$6hgEh|r$yLVXCz!Vi?k&{8YHXnyogntw`Y~kYo>B}#6d$u zy(VlgKk^{ETB~bu&(?}wP8AJJ#rjq>RFCBr?ly|DaTD;KJ=8AJ8>fqn3*_vb$CBKD zpIf9qH`0RYrjnmjOSjU@H`F{X=sb>id(`B59?=QU6lua}Wyt=ms1C*QuaF?sR9anU;f7|ZvHS7yEj^4W8Fb`Pk5MP55R*L|uX(R}rldH!gEZ#*VyG3}rdvJ@^UzAbe zD*P6ugkt?x5fxfn9a@naaggf5E`y_qb3Zz)5!K{J)@#Dy;ks&xq$gIhqD7&ip}3cd z_QkE?cq9H!$Fdf;60p$qr(67s6}YdCFv%-kp(&Jf59{t%v_^fnwl>u#LF}%2N8a6g zcx}VU7XhUR{}Cp zW-Xkn%Lte^e|mC?E*bAs<4KWiLBn+!NmP_({@l4{Rko=bdQnQjA&vlvW)U9EWlYbU zy#yP6&6}QrhgU3-FhZjknUb9{H;T|Q6!h+nBHR4XOu?dQDE#rN)4W*&!;~t(Xat1~ zQuSke#rm+73g(6~50@!oJGInTYzhbCrcxuTQ!1l_s!fvP628VgNb*J#7^2{6lj0i* ze_dpdWX;JsSwIk@aw{pFYY5z@{4{8Ta(`gA{i*}y!Jn3f9~in{wQo=PewFG2)q(J^ zp&u#t9oVx?x&IT@{;_%fz9Au>g>2Y2bWiv`RkxshT$Tt88>S%Mc_uZxoWK~ ziNse>sr6ILkk1oew3E#2F7#IXsFkg-h?frXR=9`BeT9Xj*6mGM%rW~J5zi?lSt|{S z`Y5%?R2VfjUm@RFof>H_yIlHS;8d$2@3}V1WLV=dxXsH<7MdFNNvc0d>n@pbUgh!a zzLdoBw4)~Z`Qozu`v&r}(k2U!K;T~x2!Oy82sDs@t|v0%&?)d78DSTJhV>))JX!nM zZMDdknV^IFR_x1|R0BWac~_9@FHA|bzeh%^PZqdNu@afCQ*tY+g)uD>?DjL`OXsg9 z79Fw|M$AhoNvp0WVLhjvARBRX^@Eh#5#Mae1vc z-_@{%qM|S4@G4(Wso&J&QeJ8AN0jL+WGZ)?;3kHTC@Os|u+E0yt&+Rji}NbO?=M?F zLM>r%hntyPa0srbgDbq?3N>6&v@-3ea_afw+^T&8H4D=w7aWB^0|Zoa&*Q3bUrJ-S zGcw}PDcEnd;ist9{^lNLr;hSv$UCvCeHp=QgzMPehHtRFM3>j1Uxlue2@G#4?V3vO zlGR4EdAXZWrl|1}%`kVt7wo#{<)69C^}5Pu{bEXsmXI5$Z{;{_6}vtAh9NL1UG6Ow z4%jW{X|63$#z~~;Wa>U^ebbc+p|u}W!E_<&CPUr)Q8(?B^Tka{^n(o4tp;^F0)eg& zP(mOT0*zB_`oXWLXBWXZwth6G1PO{@rJZ^)s;C_hlQdv`(txc=15PIm5NK$WvGp!O zB$z6`36W-slp^9chdNA<>kuCLOI^$bfmZrn`l-s*a`#vatgx2Y^coO;Vh~T)$Ex37 zHhJV7a)@GtS|-Ve_O^Sk9DSsMMwGue`-;By(4+*d(w~ukmXUZPdXRsFe7&dSh*X#& zGVC!dNKP;RSWu<5Pms#G7A^IV9C^bKH8?|A7$X(_>#Ir{Y+HMY3?rMh39oxd^41sv zG1w+BAGK7hR2Ns4GFr({L05U5$~{Jzlpt4#g+I!AejgAO)wMcN6rGTet{fyj=W5XK zqLkMhf@`;GE4+8`l_e>mD`^gay-R(Zk7#}3BrALbl_rm+zVbk&1d~jEso+LlDS7}1 z!<$9?pBx}!hpEA{N+S>ScLaB#*d?jBv3p>sJBWAE`7RNt^)RZn0K!uA_{P2$wa%)P zno@sER&`~Od6;rABual)*Rxg;k?0V~@CR5_hPvn=4YSTPMHWuXn^n`80Afj=^swnA zXip&Rv8~!~D5OuPa@uvnIPGGm2w4UCA9NQjALh>=WYMjCLuWO&)(|A;&#v%R+QS*C zB^GByyWG@EKE%jH?^TNK(R_${=-upfl0oSg%vy6C#wPMrNHY7Qxz!&hNq40kRf{lh?BHVpxljqQJ0$iB#Dvd4th$%>d@;`*GqA#u#^|z_ z&Z{=ls7+{s*av!Odmdtj0noE5n<|g(BFrcen zMWc2&H!50uFe*sxnw-%mY zHow11UAf{D6V_x@w$3H_aq2IqPI`nu;=x(J>T4+?Ftbf#0{3~?ckedpKwyGkwNi0M*}Mu>--%kjIKi{I7iOtgUb z{62{r+T=rcT?>H*%%>*&m^4*m!j)^y6Dzd=&CizK4Z5-BZvHuC{CZ%@V*)X<)zSWW zxqVeAoPO8MWmkS;+m8QdI=nm8LDyoI>m~Y~cMrDHzNJv-qy4v{{bP3`0yeYABVgm< zO1b&BYp){TWYdtBeB|>IU&+I-cb<3YY4+Efn##@56{AK+qozt$G{^GumH7Gh)>~nIW-_^eu5G9dq-X;LT%1TQMxXbt z3L!&rEKr!=0Z>V0KKbM8B_+Mj=_lWGu8qB+pT1Eh-sY04d)?LlaCeI@Q*d8@HX6Z= zzdm#Ts{!N0iT%ETi2+S=2^^oo88}PmB?BDvojX1!XI?=#3E|Oh#5ErzN5>hYjY60s z#y&0x=>-Nxfp?`)F8(uz!G{RT7yDtK5iscz;{^DWPV&T$1mO$%JMevM_|rN0NA2Y2 zf=}NRIKfuxc@{l|;6Do*dtNfnaeT7pB>40$(E{+@I6jqo1$=s$$^d>4$0zx2Fmfd5 zec)65NI&ssfZrW7AKw<>GQYLlSHQ<-_)Jgm-7Wk8hFJr?2J~R?$=?<|r@<$GXM#W0 zhVO?9H}Yc*_+xDN8Q_ls-389H_4AkDdxKAh0w?PS0p9fopZYxUK$^>i!B@d2`%v{( zKhQn-Kfx#ash^RbSUVx_f`Lf>9f6bT&GI4NAAIT#NjNE=MLr6APtc2STH1y5WA7eT zer-GXg`E8McJgb%9|&F*PPmcPFGfYa1fRZT_!%d)zr~*KIQ@>iw)WiN^!Eba)*e@x z*&gh9)W&{)@X7u$?c`&@r}E~2Pu~Yw%GGgt^4saj0iW#L2)?bI#o$xFp~;TMmc?(o zIQgUP@dZx7FVRe6nXS__p?ha`Ml$lTYB}b?xNmaq_RW zlP}=p*R_-1%E|w;o%}&g{!lylbDVrrJNet3{O|4LWf;ul&o2D7_4Nmz>e~-|+xo_F z^0DpYr*ZO=+sVJe@fU$l{es$y`r#%{5AAPf>*qb3Jnd&;TW&okf4H6eHBO%P^0So} zVi5YGJUkV$&W9+sANbzj_dr}>W6!hTlOMvtx3wn;eDXsA__q3KKepcB&jsJlM$h}4 zo}zYoKIimoYp3Tt_+)1l_&zpz9&&n`+v(|w$%pLuvz?w`@X7wJSa;jnKa!KjUYTv| zp94P0#e;8|f2dvb;FEu*g5L|FWt^6QkExu&9-r*J6U(^!5PX`)XdfAi9-6Nz!6$o4 zz_+#MEcj&qF7R#r`8y|nq@BDAl#+a7JNbd&lm7edv80)8a;?uZYwDYp!K{Ab33PyVy?!wN9TkJy9S z`umG(5IUwJyo>&TYqgJP9rL6e9SF?luQ)y|CPiCN6_(Wz=1~W-g90BbJxJA&e9+_N zgV`j@o;6SSgxV_mSNOe-${q6fazi?jANqLtP&SFRvptq(N1DPOuPIR3QHH=yd>YuH zQv*BkYM|MzZJT&dU?=_v?9d^Bop>bB?2`6nbW(Fwhc#DqQgc;@HCJ^~b5(~mS9MZz zRfjcKby9Ox=u2%ns`-l^^T#Uqx}>A#RdwQ)pbp&<)QMYyRBa8g`Hra7inbE%z8HFp zl|h|2HYm8QM(ejqv)Knlx{Sq-)7pvigF@PB{mb`GkJH&n^8|I+F@rj3fnakBSY{#Y zP{i(Sz&50H$d8MSiyap`S`#}SfS`kd16iQ7VAWrz*FnK%Keihh!RD^n(Ih)4*zBYB zIm}(N;~ZuWw9jF#d&fD<9%z?ih`H_^<``n`gY9#e2W7`O%r!TAlEq?bI~rKrrnW3I zV$+az!GNfH+;AF#it(%u=q9()+A2V*^^wu58sJ?&MRLt^C zne}Ti^a9IgS{>CWq}{MKmmJd0r5sn)fjwp?{(WOQP}OF-dU8!T94Cuo{LK4Q;R`+N zIh8SJVP;A)Z@}ay==8Vvrk~A${;Pw_yz8WSbeZE^_q9!U%=og1umj3WbUecT zdjqVEiRKaZca)n4*x$+Vr151osDlA!-oCHh2>UxFKW2dao!0+98DIZ_zD|bMf1vI0 zqw9$~5}E;DJHn#nAP3uCn{dpIE=@X=A7nuQ?I_0}3ld}7G6q>-7(2`pY~IqZd@9quQ6%sW(&>4A6GDRGoLd$9O~4 zsW()Q@rJ5XZ>S#Q4OOS!P=!u!w{&CowP;;`cHD7Po%$;1F}@1w)K@{Oc9wLs9BwD_ z*Y$A6_6Bw8@1WpzYCB#OKSp(@jS>{nPIX5si(~qp7677b7z37P5Tw~ zlfaSx|H4IPA2QhdiN-S*JdQ{stUo*(PXitxJ>yL4gAmX93HNWm0uRmZ+X1f?ysp6e zBN|5;(Na!M067ov@sjRtF?e|K-~*ybj%a$OL3&#dlHO+E)FptQjO}Qyfp-x&bwraq z(dUpZM}8IbT>=gKzYmC}bfW8UlAapKxq}}MxmxhPfE>{zNAv+sZVx91ys_Q;z}smf zNAwPyJgItOAu1I^Ems@!Tt>J=GfRzv=-^~-0dFHlR-~HI?-eo z(Jvrf20MYXwtE`raY!ec(up34lgf)jNaaOxbO=Y|S?GR$$lpPJC3t<1pJ>WYv;rs9 zqX!qdAtXJH2uZJiqwfNrj<8>)z@w(;vB3ZPfN0V~^bMSp?;_-C@Vp8*2)i$VcMfty zlN`~614w!a2ax1VkQYOb8hUHMI|zBANuFrh;}*{t)7CB(#Fud)Jtro4JC44KXY7=I4I#;2 z;^;G6cpM?g*K+hhF5HO_&kED%9RSJ?+&fmTfTMG`a3&W{iKcX- z=OTS4=>EvR6m%-miKcX-laam^bO6$`Kx>gsG^G0&k7{_$Tz;2Jb5H)+~M{`VuGC06A)J z32>4xfOisdmi8z5I44&FIcirA$kl=eyt~$RCi(y;R}ML9p8&}11@A-1S=x)}ZJgX@ z$Wc2*Lar3NV#rzAjp((U99}`)5A0xOB;;0tmj^kb$uC4N<>WFT*8o0ngm>qFHxF_| zlN`~LaMJjlz=fl^FdiZKE0Qax82O{Y3$-bSXcZ^dA0g@S<7hco?mpzBy|UeH$|YLL z$=N}U#@!Lf3Bh}aPk}7skm$QG6z`6uH3O%O_IoBg>KouSLXK!0Wkg>RkkVb;u9=BNpFo1@sY(gT=Qi;N+G- zj`p%Hg`6I|Y{(IfqfC!K8Az{1zBr^W1w9YxMB`xb?@|$=@}_a&ILOx^9r)Y3UjPs9 zWwico5dADpvNswb&9C$x1?5*Fp9%R2kS_#0y#MzB(KyP8?t_!$6$nWluimi!a74a? zkoyq%q~PHv_XDDFlo3tubzt}i==~NK3CN#=sldSIOoAQ!r!6;*CuTI01^1DBYrBBdRt`BK@Q?1emQvcoD6rN(! zi`OImF7iuZ0PT}Va}mX9zr=1_{2Jm(q!WhI9_8aHjs~K=#>-&_#Mt8}L@e>ekg>$= zZTN55@cY{2rFWDp@)TO)t8LDIBmK9rkTmA) zWo-~YY#u5<=21_3G?Pwsm>+F1|J4UD|B1Fv9uEB{>N-?nxt_Qbyt)LZ;W~dooM!_CW!lMZaQ*!c8#G{!Wstg{IG&5NjJaop)8A&sOm7&SX zuwd29k+EB9v8@zPi!=Yw)!mlMP%!+BEZoe??ee5 z3h;|K9VFBKux*!)uxt{b!v~qlp~LoQTNn1Vpw>>(-i|Ejpmp_W&JH>1GRIaK;+!4W zTwKSdwAZl{*J%Dok+_-tkh;R$=WNw*Iv$Iua~e8GdoXm^9v#(%`YG*f-rkN-v?=w= z63&htumep^hfP2291llL{Q?dsg$}NdvkGkgJP8j+jj^7J45e5^JYEOeF0K2Cw6Dt! z=s;Ix#2EAK4x74kj)zkY9kd>hL5Hm$vF2+%dQ&<}(agkRXR~xU*M^jjbku`>24T%A z?0xQN{$4QwG#yx8$>VNV95wo<+(T2h9S`E(=0OJexC? z#n-vX<}{<#Jo-K2(eT>}9pg_H5IP9_Rcc>v#`PG8TyBj(?O}7kzbZ(zwhpGEwY(3z zz^?AB_O68RgPQh_8xNifTT2ORkpobBSiBw%af8RAj<&R*W9EqQ2HQvRb@%q!9U z=;#>p@n^Rfm)<8H{XUPCdWkJHk1aKj`XYLVj!l_{lHd*2O6D!<2WIT3aV#p$n1|$t zkq>#jBO4$69{8viYJ}jmkC}L)nxeti~Ix?Y0{Gu^RiZ8hsx!y}Q7xD|f3| zT$r8@zyHa}De7jRQ{~U4PT&9J*z?ZMO-{Fdmi-wI{}ZB%BXaWztqDjo%$Mx=SHGcV z!-YOkKw8qlS8U&lo{&BqC^AVb77Nf_+)&pafyMH0JS6xp$Mgh!8Fb4yTZwbvG}=g< z1bwoN#Mj_d*+^7^-rGi^0-UWj66K(a+emB&r@%(yUC>L|K0u>Jok*6?X{E(6uBiDc z$V_VGMJI}5qJR}ck}+0pf;dK_C7ydLPyIsra0{-LySaV6spSGXFt4*-&gWx%DFmCYinQK=3YO*sZw2 z@iHmifNKL-!tG&2+i-CRDmD-=41VAr1MkA%HQ%I^48k}eI2Jm?nOU}|F=qT17-9J+ zgJjKyWOA0Y;=d$Yuv<8sn@k%BmsDLQw-{xOq!(M00SEkiW=cj(%1qtDxmlSU%u5_w zJrFh| zbX!kj|1`q3dDWi?L$+Oi=q+?$-DOXaYtDyucYfBBl-QPX}_gHRWp6ffScw zTip(%Y?J@$v<@=-Rj92G*(~(FJkX3{T1SjeKp(b>ZDl)g_k;zkd?yl}b&Clz*xa3o zm}eWpx1#kM9dunyQM#{9*ROQ%nyypnKDYwslkQB?J?>>#98f+w>7eygM+cQbGXFxK zpmhqZDX6cUNBj|p8(f_3KR-nL68H`<&2c;v+cze8j0w6aO{Dr*r%@h*KXYei`C~yF_|EMx6RO@v9ME!tqZb zPGjK#_&*@N5_|#HJr5B72yv>HEA&yF$;Y%-{R(`#|4s+hKNvhbdt+qa(Ha3+nNaWu z*U6R_3Esck@zmf+q1aX~2E4BAc=6!*g6CmV#z^q+jE)HckM3t6+IqeT;vJj^a302a z1t&ej72;Wf8_qzS8l0&(vvF?0`8m$-asC@8?N34V@W+{sa;QIS#!1I|?!E=>!P5T7 zf()&JZI67=95~gCHlS5ALjQ_lwZJ05LR~Eg#SSwz6Al~y>mX$oPX(-s(&kQfsC&>dKS=b*JXju*3 zz0RqhIPfoTy~e@CQo3K)s%VF zReAt}jLM4Yb%bZ)>q}{4=1hOll2pS2y>SVHouOd^Ab}3^6o7PTZbCCrrLYI{wK8hN ztGq;hMhSLSHVjEOW&p|!ky26C4r8{AEFo|@aLPrfW*Aer1XUJ`GJyow5jfozw3i2r zxmd|Uq2A9B>ZNizWGVChta)ps$@8@4-(n}`km3rYFne@6z znx>RC(Vo*T`Y>P&)oH>Q0rr!Qtkd)~VTar5P@v&JX9+(Ns*3np68<$o$}~xTsTW>V zxHQ$1s+Jb%^+xHP1nKR1;T4ngI)K3eNHlCcUkQ{VSW>GA1#r(^o)y4oZ&Vnzm)@%( z7^4bJPi(%MZwO=ZBMxeMZZ$*z`KV+2u}OAXsr0vcX$xyVRm8?}HhTr_C*4VQrOWkn z>Ce~(yI%Mw3~rJBii$8U0Gw)4yIf;RG@<3FGG9%W^H7UW6QAAn_pi6C29gpi; zZ|tMYZeEUUmAySq=32LFiG0GeW+(%+;)I^(X8u9FjaQ_1_+L+B(MA8))Bejpp!~}F)Ww*Q zJqxc=gm64VS>R410eA9T^|W>;>`q$CbJ(2)dRZUAAwijr`8Ul*3| zU|1mTQkb8R?@;A4Qe5H?6{OQ{o|R{kbrA?@ExKHR_n#4VitCwwSjO;VwH#XJ=pyl# zz%UMsW9m&FylDFrrBYeSk1p|L3~#lapCaht)Za3$Pi1N8VrgUS4i)wZ>Q}SbV{kt-;^`y&v#C1p=|# z)A5RKj`7JW8HHQ_uMKwLBN+Q{DWS&b{M#Pra|^ zdA=Xb>z$(E4eTAm8}fcEZ`hULyx88ud82wC%Iog#{$XwZzK-Gnu8#2o20IoGa1E|2 zEp3dQ{=rza?(1>t8U4noQ^LlnXDw%RaAokgqYOXkD7G^P3XXUljNh-SIo4e^)l(vo z)b0`sh51A65(LBe=RV5y`t8j!?Q#9Xt73JTAlEN3&&?+wir2ks^!($cdfCwg)hzXj zOhHsXj&hlu^rA5k8tgWyDYU*YN z`fSv7iY$q%M_j3Pf-D){A;KomleK^%Vc|8gj4CC#XFy9&w?ThitOf3~aXMB90F}PC zY;h?-W<)uOu7oJMH^H$&?KHQ==}V;*T6C^W{7YO^;|dek+qnEL_xZC8%I5-Hy|CJ_ z6ng5E6;V`ggPV!fLB1h!ry8iB_LKbWr1dX*}E_Ej3Xoki6ih;0)9C3p5H_!7nr(z ztz>_P$}j7d?~>R+EzTbMcBOK_2nC~tp7P7LUOy&l_UVorsmNR6$*gt5X9%~NMZ1NX zT_}aUP5N)X-=w@ZP);e_WrSv!O7+6WS zHl=P8^au+_GIy&1Dm=2o_-3eP$Lq=X9fp++w@TM76!G`BrhfHq zsHVl5dd3O8Bd zwW1!md_S~UPQFX7Nr>LF_-j*-WldApsu?}()P6O-m^VwjrM0kk>LrKUG;4GB#Kp?Z z&$)@&%N)S81~p1_!E1F4)l>V`jQ4Vfh%`2>F^Yd&7VpdTuHJWA{`y&dc;n?lBIKQ$O18l6uUIScv9Ep zN8SWS%|X9Pb62nSoEsVa(N^!ly|n78kMzCY=+&PZHNxwn%eL|ItGykhT-X1lSK@n0 zlhq5)CX^i4?s(HLfxLifG?r@LuG9_~QOc-6mtS6>sXSmPo6_oK&5FF|9SsLtyXEk1 z_5+?0zC6Otok$mP`XX~Nmc#e5em+LTcawMENhx>HQ?R6-a^Aps{yh0A3Y^}&Dv{99M5=2E?EtT zcnSujTMgLRKXJEGKeDwS)I1LZOjZLLKhhqnQmQxu)L%Jxew417U2!>TYUL6`?u)I4 zT>dO?p(Fouzg!Nv)VLI$D0rpSkT)EiUht57xmMuFc|zHB=kxNr)=`)pkXWHCwHlH* zu{=u`zp-`j6n?DzN0rIyiON}(j>{^o9scskyhBcgBUS@;+P~CQxYlaGG^aEDB)?e< z$lulYhhxCHf(Wm!-F7@9Z|LnH=9)x1Xv)XR^&{P6+{pNON(DPk6Ul&={+q zmsZ;t@RaeTt_5qX282q#4U;G>2Go63GS*48t|0kX(Jk?=wFP&MYk3akcEuA;7ipb> z*6nLPU6k$=>}%5a4E1c$w*^z(#h>A#X8nfl4n)?q-$qGV@aYW>HT@}w364npwY*z;1Srx~6C49aIJ63;g}_tGP3{+ZCm2Y+VpxDT{d%(?6# zS^jKJg#l=*I*y_DcJ1ZzlEO{RwwT$H@E@Xl9Tcoe9>nBs%kI=~6v!AnOVm>~$?{j0 z$nDoN`bwg3z>*x7xp>!7NzZNRQ2Nce#hU{qbeNU=c8?Ja<}uYo(V^M$La#4MY^&q? znaljPO3wYElTNc^=qqFPD2Unh%<0@`8B;pPFcqZ=mPg|2BRPHbMu*((mUo#D-!)nb z^2zkO(Ab;NhMFaSWE-=trsoa;eI;r>fMmO_#IS+UH*pNT_nKGT79@0GlnRcc^a~%q zMLG}0P|u^IAm-q+_o7BKCOu1%|Kn#ljBS81mPgSrX3#CsBRscdTMcrWEuMWYmG)({ zS}v0|zUGMFP8T&xk`$rcD)GHE&~EX51319D^|Qgd9Y=V#KK_N#{Z_j9*S=xbucWG9 z>9}BjLv*nJ4nn_m^x!GFYNqWF+mFA-$#;ml6H-^0L+8<^1Q&nr^FILd=5q_z7}; zYo1UpDz+aRZ;tZhH~j6#w{U!!Ay95sd)c{BJJzf=!o(kGR(n_P5^mOYjsJ|8%M;2E z_UEE<`*EpU6nEzJT(pEAUSt)J+nY61@FSI66b6KH(Rlmk)m#)B;<+e_NZ_K0_AexI z(Ny~vQ@Lo4ePTKnMHOp&ToeVDT4e1f?ckz0{Ll(68frhm zWR2y%cfql3bb%hIQ*h>M1buoyARlIfNj13`-VP}ROc-*lBJOCCSxQ}zkaZh@xk zv4N(p83@-P+=K80!rKU4Ri>^gmFdhlgqbSS3+q&-;*SxpN8EJ$?vW#1=hkJfIvx^Z z3K7(VebuzSXxbanAgFX_HXXRD(&e)Mwa zg*nSyj48WrHz_}Q^J$Ng{pXCDoiE%^PrdqKFX^61e^gg){OGmN({t=)##y`UE~%Y1 zsXexg=vi1DoGAEOCotVTvcfBl5!)@B-Jz~@V5H>3EM~S&pNU9gWzw+Oc*^o z`nS<9j(Y34OkQtUz>+(Sw{D5Ls`FazB^qO1=q}SmZx$9Rp9f%Y;H!haxgH)qafVtF zz3EJ1;o%bL5Pc{xaL3PB$*;-^9&(cK5ZCE~S{aYKZkJ)`7a@&t} z^Z(ehdGNaJ3vay=FsAzYfh!OBMJEdznI?sB)h6j6AK{jbGVL1wnHyFV`qj*?*_NKY zM(pjg?abK1xNfDjVQ;gT!ZATTonw}XV?-lO&&9Z13hr_2=$-9}Q@u_ty!z=Y6OaGc z9{zaju{lnPQ5OiBcdu9z-^CQ!XHP(3%+T=tKc+31xOCL16Lp{dyY7|GzB%x=RJ|nE zzI%m1=DyYSt*WxkX_Df?{xOQJ(h?@^YS!X&uZDbact4F_a{raa70p9@b`ObKP6wZA6kAc&Rf6e^v-qb~>7CtMS&{~C>9(y(i{J3Gt zzU^P70HJwb@s(fioFDbf>k`x}zhP{BxJa=;O#*&vb?@~0Yt=SjfjNqP+NoDw66 z3Gz1i{B(D)KA83HDIbaVDCXCa+C7T3^V;iS8|RAOnh%TYx{qs)U)y`sJ24x_U3s>6 z;M6bjyN|y*a!*y|`0Z8spPYO~_LPszQ^_0bI->AY(HXBtdU<}Z>xN0{HJRsjo~lmD z-dN&w3OL<~?{r(!%_rLEHgL`z|C3wqEYtKIy`ta9p#BNXn@3;2z4zY%NzM~T7ytI$ zXux=fue#nNA=l@Jy%V<^58YG+4%@c<`=84r2PbVzgviV96koY}ry{a%!F65#Q_9lA zl<%nYo9mja#Ro@!_QCb+#iLz5Z8{eG*4yu#+PH$Zur6cI&goe>(l<94n*tAvl%BbM zt?b~)L7!c}u6%j)?7|B*8^`}J`ki5~uI(Y+92(UpMB=!%=g)bS2631EQ)&~w{jA`# zq!TxuKl<(9$)t6WjsiE_~H!bTjboG?5%pdCCAOGpGQMj;=6(XvB%F&BiL)r zV9kI5iV4wCQFHOazk>ewijRz0sql{o%qwlK5$A2`;wyf35*Tv=^JH!>1rpG8q+M`z zi{yl)nt-m?x*k(Teg%f&q@;RXe2`?l-7x~X4iX%b@Vf~AB{9egqlQ#B(jT=jIpOPg zZQdT|!wppzj!&s-K0KxQ$hE4I7xHdgyV!iB;YiihBeh$PT)WYHVP{ptjU$_?n$H|* zj&t~MB@1(X?qcnYh9gtz8mf+8jf>jpbad~kAIIrteEd@82;Tvj@Ad56f=yR&kCk32 z{cq!6e+``$JV)G*X7aT!Zy)Zy&)aTaANzfMocHyS?d#KJpZ8Py`t;c6t(c&))Bd6nQ{*Z zlIl$W#r?Q^lR6Dog+pE$Rb!-GGDr9g55n4We=VY9$ik=cHUo%J+!*{a8^_&-5DCTRu--$3R1! zUQCMlTcKF#6m)G1(>>6CGtft0)xMc`&ZJG~DVJ>O36N#BDyg}`$?D7*z!Y7LBJ~4L z>c#m^lI)t&bRc!MkoqHlm8r^$BoMf#C-WhaFE6Y=ZGFPUm zw>(hc0h5<98&E#Lh?TDoE8+*qHo+U98jR_#GaU-do=kU&Oyys-BUp3PlK+ZgLt{b3 z=T;}Go1|wHMHb8JmX-7dz_ufm+NESOGn0`rY{EaJp@VRDTVyY=T)_p z$a}*CCD}+74pSnv*Oc%7ANIaHE~@JN{|+-Sh%hXoq5=(wiiS8KAR^X`Aflp<>jyPs zS12|C5v*(w6kJkNR5UX%Q!_OzGc-$FQgbO>K1QY`E~&YsWQZ%j_jB*L!!V%Y=k@*b zcVArYIq&nF=RD7Ip0nI@@0`25+8RZ37FFNG*~|u$)%!rEm7vf~I`QYUQA&>Ug))jZLG3#OBqLfAoPE}hvY?UQh zncs(qzW)j}Nf8Su?(hrjvmoVY36w3}39a*BoK}yB7)O*6@ATu^MmC85#xGv&Cf&3q zGF1pSOKFb3zhXjdW+$1qUbcYKZo2i6^RH)rzrJ`Y0(U9!1p>&^*(?~2skD1-K#v&J zPhMy&)Fjod-E0<^4^TfMJuTg3drLg+U6qF-3%?f|?cvrTeA^Nlt=zxW#)u(icjwdB zV`0hM?{o!f1H1eMy9f<$( z1U`S=8=t?%H-h#Wd*Bd&6`D4fEtXaifRAxggG8~S%sO1CPMJIT3 z_EDu059(+wbfOtKJ$e5ec(6U%g9<*abNFMq3)Od@)C;?V!v6 z1`oltitC+S2|`ksz~X8wf-xg)ym(O!C3}eg69* zr{~z1?>7rp%Q&+Gkck#k1wRZTG5I4($==zKX?S0wMcM<{P@s>42Y8@|UyB-FUTB+R zKBx5%zg+%3AD+(~!Jmnqjwq$@n}s&Ay;f#JFRfK2i=A`9T!#+x)D_6tkZ=FLhWTue zU;LJ`LHTq4_wq0PUz9)le=ooK|Dyby|GoSR{}<&ynfE`}|DKmBpXO2U*}L=hmG9+! zw*6yI)1uD2vo-i^a3i0kg?8lmcb@3y?H}K6tDmb}=)Bj~erV2K2S4S!SbUROn427Q zBQF%5kO=Ky5C$|T!}il4KWlUCxxdRKw)Rq;#LGbb zMtSIGNsu2t&UCi7&!gd@fxdAY^$_R{Y^1$ekVC!ZV*kF&#= z=7XNA0ArfA!z)OmW2#d4O&|Xq@9f9+<_@Wecu(qSyKsk!f}A;$l@0|CW%F|8Np?Dv zJCrTRSs?k|(9Z8%e$8CY}@LkFH{(R}!LlYBdJi6k7aT1x9;dEVzb0d3n6a~6=h)>6L zB(7Jw;2%4Pj*i1f>w~K&24i}h#J>)y#1%M=&y(>FBJjAm8^YL-uQTFlz+DaSUciaI z$cR1=IEhmNoYILu@u6?t65lNV$+E%7J$>z|(+xA$|(DH^Vt4$9)3a4{=iz zLVAeu{|cOZD-igr45xBU(ZGoB6yO~Va3ye>TjT(DGQeL0J^=AGz=If03V zJQIPFJo|wg%JTtm74TZ%RBs}m?|_q>-C!g`Iqw1||9%7bYXNB&4K#> zCqD_sNq)-9gXfx~fWxF*Bu==VfCHO?ll(0mC+$BY($8Xi768-x8~B$1he+6j+2Gr= zz`nsrbl>9?+XX$)J`J4Y{1vAXC-Ema{{>Ec`2(DY>g9O^94^N_!3k67<*|lvRIat8 zak*WAQ@OOCu3@=Bz^Na29k{+9KtYokpC}_f?=e1^MtoK=K8ua`e8>2FWyI$+<8#=E z&t2dykmnL`C9a|!?9j;JTAb9RK`*k8J8+`Ie$9M+iuDo-946xYfKxsm2M`II>OBm& zVZF~}^w?Lr5&d#TPkT%o(r*V&{i>98`euCqc?>Q7}8H;^bWuc=|5n&rxE@s!-I|R?-)M82>&m` zQ;qOj49EW5jmkBJlau_bjc_N1e`$pKGMx4hH+Miw9m7l{8p}l|1ShC`X{yD5a48=!$$OPGW>TVJd@$~ zjPQjFx4?~(VY%xWPJ1{S;@>me&j>%maN2jmkp4Eqqm6KSmzLzuGQyo1zR(EwWB58F zd^p2*8R3(GQ@gGN9*C>hzDj|Ue3qEx)4YSnA;>qtsom1Pn>6nb@k)mGF~YAie7F&A z;wJEkGr~JD{9Pm5hv7?&@L>$!WQ0#<_+BIYeTG*V;l&L9+X&yra5Kxs`W|7plM#N2 z;XX$AV}=hk!rOKc>=12)djj`{eY1g!{WJM6nD;d+>kUyI%Paaih=D3A18BK<2}inVdVLoufBUnykN^}`XG7J zkE}IU%5%Q+ZuFUVgT1o!pZ05x<8!|8{y%=={W)KF_it=gqusj1PsR(oo>TP>=XXux z#pc1Lb?Vvdx6!?x^KEo5qYrrtpDFWt&bQIMdN&rkVcRkN)>ESB`j4D3uFv^$yjQcI zNcVcqm*c$z%Ql#&Ve6~sn#jxOQ|e4M!E((xzo)m+C(wl)-p})K!G1>idq2lty^TH` z&&qg?KYAN|KAz=xj=y;enu``2G&am|AH3%p&AVC0>irzY>h0CoO$>{Ie}tvPL?y;G z*93b%$M<>*7BsSJ@8|ecZ^43t$7x2Pi+sU;VxG_2_>PygrF_Ia@?I*F!6tJrm9NSE za4(me@6BH-i@^?dFO{#+R&+0w^VyryvF}eT;fDfrC%8b%h?yr&-;6n$^v>S>1e_ z)y=nA-F%zX&DTeC7Pp9({d7p<`Vw^VHL{9eE8k|V;%j6TM%%1ae4Dk3pOIAr8T^{H zil32H7_E_21R4B{YMjwFtDB!+GZusc57rC_8#ww!9W!r3?Whsj2)+!>m@%V-Z?zg> zo_>O{n!tj!n!tj&jNv|ly_&#+!J5E=#hSo^$(q1|&6>c1(VD=5M>K((*RoIZTJ~vP zOaJDz^!IA0D85{NmidBCPRt_ot}X6H#UACKS}le0!Cp;74q8Waz;TV!u+aEx5f+GIGOCAx{zD509B#ARsHQc~m6 zGO}A>7sLIPh5SIo{1M41$x#_8NeMCd@=9vU*u}s#`0bfnB00($-LMb!ODJowfpQDW z2{zt%xn-sC)4rA#A?!Nc5^96FVN1wiCxd(Q7D?V{7TLlw8g5c)Z|s(2diIR7CAp!N z(e1q9=G!gdfR5llKy|-D`Bpw6vJG zUX6MQ)^$Pf$#Lj&V&c+0lm5q!S(w+eo>_=Iw`&$j_`W%!QRgfsQO7QXo9~`qEU8iN z+@cIkI%lKF&U1U`W@&|vxN(wk|NLUn;G)m%o?pyC-#ZINHRzsSoEN1F{np^%fJs7r zK+ou&Tf(lPcWw!F);|xf=G%FQx|T zM&0s@b2RRiUrdh@j5_5P=Xp+_{Nl_g@OfSGiy1txM}Bec#vL;A_=XTthZyIax(H{L1gy!wtTeN8N zoJG4D%OhH}`CPt&4O;pL;5oy^%P|tCSudB%;9;m$A{L z8HVzGhN1kL7)p@G?-_>jYhoxy-^5UYJbq0agV8@jUq8R5hHddf z31(WO#rft@JeYV^f@ne`KAwJ}4UH4}h(>IZAX>3Wf@sDj38EdFB#4G=k|0{LNrLD) zO%k4^d7o!#-sf4G`#(!_e=mJK^2N90nFY%s^r0>9q{Tk>1?yg{wi`XQh-muQf`9X? z;a|^;v;-{1am_EyaXsUb5;A(?0Rz`FHX)rp_tukG_Dsd6l;hI5o*7YTScK^r6`jCE zrN*T9oRU0^>zOn;F(pa>(^DpAa6Lz)^98CKifs~FW6Hm`oP_tCchWb)R?E0;MZo5n za-UHgM=8bUFuHd^N8b(G4musMOwduB=qR4X=;A>~-x50pxv-yyR%<+iDSbp;*8 ziH_pHchdLKDBS^Z8>Ca5(kad%o!%V<&uucqQQl`1r*w+{B@@yoApJJp|NGM*o#Gd9 z;yv)BGoYh#-vZrPU?)K*%0cmiEPV#jk08F!Af4jhBX94GP9f{y&@0_f;B2VtNS z{fpwEIEkN{(cJ-EFt7jvI*R+@Bz~TtBR_r$I&WY-KqvY&#k=Ape$I?eVa9E91?FHt zM{!G}lb<*u-3D>|214&Q6u&0r-}6m6h%4TgPujuaW$d~MSG+f!v|7sTEW~@Jf5DIG zw;#n)?lX#$e^Go1PP`|aM86jy`dOgg4Zp*l!P^Re%>+HgiJszFj6Mz5uAooE)g9MZ zT=Cv<(wpoWjw|sS!paYXJ+#0=49cgt8Yh(>!01)1{8=d9515BR`4sQU=#>;kK66~D zT#n%nO@wm)GU0YEfS#*R?rmU~O}Nh}PI^%M0@5p{FZ=co|OOvkr85$ae;OHUTRE z9mRlj=qKm9(6-hRXf^{LE+{eaCQKCFHzK8Ml03p)C3#!c|k0m}j%#fcxq z({Pe}iHtrH^odB9$+>N@z}^5o#fhHc;W$apQH*{7=y#*sRLBtu>^0C+oaia;kCXU& zGy1Nej|V^eo@Sc|Fjvr1oaia;$mkTHBYy}3ojouM(24#*aWkZ&FXh&t-P<8=# zABsOkfaI*hmF#tq<93!ot^<(s8nEB-(?^QqD5ZE6PLlH^u0($r^pPmP5ak~Ob^!Dg z$5Bf03Y^4$7p_FV4)h1WuibR`J+KncQyfPr#aH1Z{zbSF{XEdW0e(loe<83rpr<&F zQi{*QN&Mf%mFQzZuS9=Y)(Yc4us1m96QhYelw?m!@ zkZ&B~Ly%5!9HkTw#!2#FtmVt|0sR={cQEI+`2#~A{29e@lv2D0PNH|imE>~(eHrY( z5bfC+7~bLkjN&*-DURPr?bIT_3j7=qw?sO{ag?$+{Z81DAn?ZU!2d1)Wc=@+E!DUJ zlc7xhN-|I!a`IRDO%=sG*wvj~-Pl#hu2dG$L0B3@>4L5yJ}^zJTG> zXAqxv8J@-PM25#RocaplAI|VG4A(L|nBi)M2Qpm6aOw+4PIrbo;!2PM{!#h%6v3Yj z!z~$Z&TtvSDHG8@X7yKxE0Ns8mGCB&W`=KM_&SD{Fnl$`iy2 zgUcntLeR zgr@NWb>rmb9#Ho@#1hZdFi3Vh~O8#>uzM(7pyZfYQrjeQI3~h_!M<%D5NFJrCj3| z)PkP-o|}=<;%^;avi1$0BfezLCJ#MdGQYvoR^ukx{Hr`-x6|+j5Qmpz_@&y|gxJX} zx%u}LS>khFht$*X??a*ng|+9T*u;e7I58TR6de~E8yD-DloC4)%g#nUU9%6|o3B>k zl|-n(zx{6T=#;by3JFT#Un0#AUb_iGD@`9Iz9PybWp8>KvBw*Vjb1x{$!clze3*Oj zOIqyJyB1J3ex0iY8Jhj|K@0Ldr*E9pg6z-k5L=Slph2~S9J1=)Si_GOS|A>BG zFe7Pcp-tvNEzQ{I*Ap!huVH4!zvSPtOoD*)7V=B>En;=k{Is)IFF$`}!=Y*jD!uR# zVx`iX|BtY*udh<+=hfHGho_0OXl}S3jolp*V&WoHz5B+*^zEaH@s3f&`t^xXd3pIw z_V$gA^NRJ2Mc?h2LZxFLyN9=);+BH$J^48{rqQ$}&2dU0PWL{|9jhzwi~?!JxZ+lf zKk0sgj);hixU38zEX2nQ3?I`Fr_h_Yhobzrjp1|$h5fRyprNBQIwB%s@H%Hg@)RM8 zcw-)vKLvC95ZWZj;2?hD0UnbLnM6bcYsP5ARP3Pwfoa{oyn`S|;UBp7Y)Ixq;6Wph z9yR8nYbV@W$K!^b%2r?G@6Yx06kuapEPRW{jd^Sb4|k-jW;_bP1GjyR4#p#W8h*rt z-$QzB*kUKCr2e=&^EH^1@L%^`@qAr_+W65Ug9Cj z5tm3(kZz4_dZ8np<%0OIQm{uAngM6EK&|zo;W>+3(_TY6PqZ-@vFyx^1 z-!jNyco_0CsF#fF)TZ_FCwL4+=AT~7L+`A{y7-_@>%ha&RnVmbHtl985W_5I4&MZ=IA$`&4Zs$CL~2oiAzYHoMNm?0eDawO9c<3!@y6I6C={IlcG}+BT_Tc zn)rHQg}@^VJPhm8%z$ARgawAwOA32|Qv3pJN99vKTI0Keco44k*U^5EfTbS&ezRzn z{N7Gj2I7=BVY+7?*TBb67LoAI*U~R$m1$}Zx>VF~5=~7-G_EGu!83we#oNUnzs{M& zht%J{SuYFWJjPXOYS$`}&S`43-b9xLI!U}ueEt33>R$(4RsA2g+*+H4XliFEN8ePv zO0-#^a7WsadQEMbQsQceRRDW~aWrYfu?KQ&<9TicjlCCgNwR|#@ulNSMw%n-6QCZv z%q8QqgEckp^0`~Z&j_x+zpS3hTT-tKF)6$A9k)l&b-23hYZK@?w08MaSqSmtT(g7C z<1HfV@4pLfmu*DJl*paVmz`Qqy8NV1A-4*}+_VE3%n7 z9(1GXP0Gr?Bm4He&RNYXGYhc^aRMF!TN0lE^*ZpjVA`h|@X*wFl9fyZZ9I8NUaijs z^#xuMO>KytdICNO*9!LU#8Wx&^7as@YBF52f{72T(|HDkq>}h|f~jm7^fk9}B`a`} z9o9ZI3n2^CJk``*#HNWvqp3}`BTiJ`TxY6r?+~s?y1f4WAAFv3$fK$K zp5tk2l&oCx4Jz$8IIZWr`O-}I(g@x6bZD(f1G?dG9aTaRPgu)UoK08=esIGa! z^UDf8e%(y14l!R`e}CiCSs}8G$Lrim>hG^b{-4I_h^yJmU{$>GtNQ!Jyfn+6${;uWN;S#n2r1Cz#rG>TN1hH(b$t14Q5!R14O?C=1xa1wsn>^UTJ}^^<2aRUt**@( zkj=a#Q!02#D|iXKSVa~JhlOrEAua!Ua<q-bff!8cDdHM4kb>e{Q` zf@JF2o9Rs@8xP4!c*#CulJ(#v%f5L0x?+N+CYa}|uHBa=w1OGIm33T6c*sbUlE;^y z18FohZmfJ6eANYMnS5IM6Wc(piS_hWgQs3$HVrl6U` z$0j_n;&Y6H2B)>6PPWi`*b~k@wDS0M^LX+>;$%}iBY0%U@j5O1_%%LvKi(GW^!do* zUXV{2qCm*wN&WpEpor`=KjfVoW?azO`unbYzE^l1w0u5wtx3A*>swq6ecc^3IiYuZ zv>^Et(n|KEby1HC=b;Pq=ksc6mW(3F#2#JlT7UoUW2(E`k7Xg&#hi<4h&q8<2T6AM zvF+;fbv`A#tD&psxJ2Q^&e@!`$ z_kzv$kUYB|%L|EbIZ{)j)p~2!-~WQowHY#S9s=$9$3p+K_A%<8PyGm~t&5M>*z1puN?M#+)D9aLkSI%Q9b0*4kY*gkno@*Lkro)~t=&i?s z?ybibyo{3{YijCLRKJ><=mCZ{tG^%4=N$XE4az>t+fxmn>5kk(`IOMd4x1|e)*@$x z7jjD4gk%Q?JveUBDn97J&lWbFxuvgu-mcIN_0*d$J*Bc^G1(NgqZ)CCYfYt+mD?6} zEN;J&i!T`9xThUF%<*xD;_e~Zx>rlowHbW5GlHoXvEfU#daMg6zsp(otyI@WkJ9qi z?GCx>?{j?mlSgKtefUU?|MwsHeWkATXhe1E5&6MikJPnpqs;i+TBg+nKIQx)(~vgB zZCCaP=?%IwkK9A-KdQff@)7kkKR;@HSJL{Ef$LA%DD75qg$|qA6~Fp<{r&xqs79BZ z(A1PG1zUFXZfwghA8BgVxsa8})3SqYSG9^C4UX%PQ&UsPawYQ=>RMMmx4O1#Z{$E< z@9oF;7-rNbxh#1n*mBj(;I2z7R=FnBVkwa?qT45%|;miXhb2e3wmT->=MGc3T=uk74S$IV!Ims|0Al=-j8T3P(89h zxaT8F{O`fnPq#OJ_?>~JwIKf^;?ftsuzCgQ{kTob5=6?^#1FkRJ`c-x2u_@cGrXPqV5Q2bM!qu2F&;V0_#D!QCLyEo`7pJ9-s^}QfqGeGi;4b~C9cSE>jB^X zA4o!+Hnm0>Sv-{zd}S^jKF9oHu@|V$@>IWoigUF9)hZj(`&Cf67K+jy=4pO-U=q>_ zCC}q2vVuF4l_H7SV@X!9e3gXP4)cGWdMh}ZxXQutEk^GK`b0k56WqJ-+}o`5Tuk;@ z!RIM@U<#TZtnRxaZ($VpOL`S%2b-;K#kas&Jmvcjq?l>m=I273dv-8-Srdmnk`NX0 zbY$gq121P5cIQj8U+J}&Y#GV(nDoE|6qfv)JUh5Ma(3lQ^G0dP5a_Ng387Xrn5PbT zUr6qk~LCm~q*3s|5`8t~tlaSWvF=&R;o2OMh$PH1~*rf`zJy6O+md_M(iG6(d zc-^rw>Q$)scHncheW1gLjrrdLHP71$_7?fdc?#JBQ^-)p=eKal3ies{>LwSyCe2sY z-~YFc>bs^+xKFuVN1SieQ4e#ij(Vyqbu@FmSVuG0Kk7{J|6H9M|9`EcdF`1x>a$MO zwZ{L-I_kNO*ID8JkvawbAF4z9=lSoeBN>*fNjFXHo4t7*^z&}aKV|Bg5_|*;=_WK* zZK|V|xS`G-T-MdK!T-`a8~k5WXNUhE*3nF>xXu^--40e0LVxG5r~dweI%S9-KcD{Y z+8y*&dF8sVQ&4&VUpkd+1K!znLu+Q*3FX#g*ZWY8tkXFYrJD_q(UqsKgBk)17Ii+gVU zCm|z#U=|jmU`qCcD1f%_N{l1c*Z?FtF(u~hh=kK6zTAaysmx#KT=U3N%oACOhvLh`aQcy zPbk`mKb{JaJvn|A7}8FQ<1)Sc)UT`5uER%D<+}P%XzZx4QE}<1SpSZ5^(TP0maCWd z|4r3#V_*^`Uw=wSIMmc;A|aToK9qhQ}NkB!cA=YG-m<)RZLnA(xmkWeRLSRS6Hmj816AHLQH0hdWW&3NY6pM4dROt7nkoTeJkQvKIRXKA3>bf6X~FMHR5hUl#iQX zagx>}>7evi5XX`}e^5LCaazx&gW}^6H{_R!IR5y9(sK}@=Sy@@d?DiEnk~iuL|i2# z^Xctvh3_AU^dX4Tx~CW)i8x-x)5jwbr)O7m5Wlw&?=D37coE`;`fNd5JcxcP;^KNO z#lJ>;h(UhZY~4_PE5t#@A4K04aYKDNB5rDsUW9lzgZOU54a?h)xFNrzh|{_-9mM}M z;)eXrB5r7pD~KDG{}m8i*V!RDbB~BGiHBLIHj!YqlHBKcllt6ybv4{YN49^aX zk5D)}JwHoGPRKxqIyq`uVg_q9cy(lQ!jx%g{2+v;#qVR7GA&~;1|r%5KO`j$-5b9b zSpX$#5))IVrw7F)CQeI?O4IONE+z0ylA3WNhI|%QQgB>)41Rvek4Rz$NW_l=Q5kWX z5QUd?Cbp7@h{EfGrF_(E%y3*(ie^;Gl;L znU)+A92Y%pN&tqhbUaGoM^3zO6TmevrebK&FfKqCL}6vjJmO+UPm30egrfKdyS#>6 zVqEf+jChWhi5N9{rp=Exe31|)c}f^gAy=$^R~U#oEjeRA_CWObaa7gGQ;5yz4A?zD zkRTls2GH;-GE=~=#zF}dLvFZF;tBd{AB*XQ*E8f`<4|9n>Lw3*mh5tVcKs30n~+ zye;~EsuwHp8;0<=3?GU)3e_X=>4xx+z}thS55gn|@uuhf{{`*>oW>ur6_rnE>oM+Z z#hHhQh+hUh$xh!Xqoayl@8L@0$?p~I`C*j!pI$52Vn9&E@4f(NJdCzfxfLy6|LOf- z-XHPXYq$RRE~S3EjpAU7s#_q^8HlutoYnabNLLlyuxu`j?%oJj%Rhw`&^u=O05pM zI94H5qRLN=%+Ge0>mu{hiu1GMrCEjfX%6`r#o#GT*X4s%8g~rDQO-vs%5&9DXDb{p zyEvW&E6(|M7pHSM&PO!PXGv z*`?FX<$Yae=2pnR%(S@`*NKB(l{T9a@P4O^Rsnwzi{bv z_x$Op6qupTpAj#g3Q4l$Y3_u)gIX?@>fi>&Fd(Zbzxe#r5_v{LW&MRJgD}-j$8t#7 zs%j^cqSw^VVHUnl^mUHIQ@Gjt+!`x0TduV>sd(i@@;iB?>%nTL%OsNHwH&9KQY$F? z*IuW?rH+S7tq!|5-E^Vw*+}P$8fQ`gRZ~LzD;qot&I$2s-76xr?WbzBQB1|1ZP${o!jg9XY=y^f4|~;fS2~GgXBQg>Q3BAvrFbW z(~?}Pq}<1ZaiJBm_yhjCa{~_t^<5zCUl#P*_ME`oLH*06eT$@hw@do2%k94o;h;{( zf&vdq`)|+bTM^W0dys#nGyu1gikm9yE1b>cLd8Eeii;JBE0t#VY!ufk6iF&Ybp@sB z`sPXd9SiEq$@&%T4?GsssUkP9Xutou{ej?FEDZ#!LTMxs|D#pl!^3}9n*FJ?uC63j zckU>zUr^lBDrzdtu2d+lS1P#vhlBbTNmb?h`$3Y!LH^r=AS471D3|sx$_?DE>01^Q zusx^~2+D&xl?C<9%k9hM_1hiPX8c6FFz?_AUU7CJjlQN zdD&Ig*Haa@wTjD?W)C6o9mPLTgtJbnR8*_2uW`je{$)^EswT-L(89k$8VHeAH#O!z zYU^s1;s(@LTK}!KzM@jxyF(VZsI~qxQgKCTorJPVVD<|Vb!CwM;r*zo{@eHZR|NIv zu4+k!nnJ}T&IT1xld8C)woXDW8<^3$MyvRT+brpOOd43Ww_|xw-`%*a>1-qouNW2^x+!#Y*%*U#{9ql5QB@eu z@>7)!V=+ILJ*SW2W)$YnaF<8&olkmUerh~*?^#(GjO4(x<8#v@^E2Y}{XmeK?}t&_ zT%IlrTNq?jG=gK)ZqjCH;8r{RRqBKx5Au^DhLY2$mztlN`n>Fs&L^uK&++{~MmG!x z&+9g!MXFAo1(E!l3iD@<^S&s@Gw7l*5M%y;AqHbjsnvl}=VN;vF+O5gIjMQ&h@?WQ z!@yCPpYD!&$(^dppTS|ogbbHmoDNEqP~>v8;}L#zLzjN7lm?MMCE?PvVtH0%u5W67 z8m1WtU|8IkpJ_vq(8LKynH*N?%N5Lk$}k|SDdUOLT4x%MBAtKV%Ma5zPQRlR{Qws! z-7Bm3GACXbK-XL4wc)0e!H|6|(l&coEbw~fy8IrzH7%+(T~nbq0E9^yu+ zLO2`gTZN9&YnnGLOU%c6>$=7sMuFPt^bjhlZ;Ao)mX`?OnH*FmYv-`A{b)ry<2y7MsGE@4j>jZxnl zu~C(J0d>&o&c&{R7VAvbg6#Uol|U`$OpxuVeB<&xTB z)zn1|i6b^vm6b}(J8pMrZC3fgX$N)R5bmHkchM_^D_rDdqSGy~<=ocU^qVQ`Fd+Cy z*(ZZ+y$1}ki{iQro+sJv_KKNyX`X|6gm*MI@W(k4pDx49w9D)}sQ;7p78mzpv1EIf z{$|=0?{-i}q(yPF2ZN%kwV8IMWe4??QBmBdgYzZZyN)%}erV~SPDxAPe)w^j#HX8; znf4=D2le!maoiOzEcVG2j-2|PlkwcYgNr2hx{WZ?mJ~UtbG@UuwnyelGTh~6+O-}X z)$_lM=6sLnY$oHb&Q>!dN8;Aqc0e(FYsi@H(l-&%4bAH=4I^aO_U=-JcEinn>W`tT z#n?I0wTjA(tY%>LnR90pn75KEw4Vhys;23Nx2>*_3>ll}B#$5KL=Lj$NLkQn$qe5R zPP^IrW}$E1L^ykK8iqrvIJJhi!II+E%-3YbW_uX}hRUBR$*Ck$kd59ugWS(LNYtl}sE3`F zY#LYKv{s@0*e!1yVuVO3zm88(f9=CnQ!#R8b(g` z_Ckkt;OIQ?uuFf(&YXL6cQRd@<)JYhI8=~h>ur~Gn_Vt1ey!alwA|M@^L2%@{Zk=a$MJK_P_aJ_ zueZQ>FxV_~V0Xxl#`T@Y574!vPf0NpKkgwrE|t$5Ic)9t z1+d0Otwfhf(n^nnPU+#OTr)UT_wM=%iOGbyysb)+#kObA390;Wyi2?@x+H9<)W(C| z1(oIZi_fK@1tTAB8ng1V%cXsE_{+6=7xRNk#SF}@IO`cId0L4)T`9+OBvUOHq6j2K zS{p^DD&<)`ei(dW_#|mz7(mzWDB#U+o_6I*GJTu zjxsl$U~cNin-NqvEPU}5)6c!vyQ9*7_zUUKM7TQ|?jI#OpH1_)_kaU2H6KwbKEO)4}TYxOK-J?>QH` zhkv&4rcRId^(q|TUOB+MY;Ui}`}!5+1}xa$3v=r-OsR7*tHXRZpfZT2#bx_@RqXGF z`6Wg72bSgZ+r7UR=5~3~zK{0>R^|q-lLl^%hnk|wb+aR~ zn7c$uF=tBOD954$!kCo6Aei5z)y>YvJ$a}+E8OdeUMh(LB;1|rzj43+;{gFxG&i;I z0q2t0qbf`%L>gGt0SqxSlTWAh2)Um_zQ7GrlL*YEN@!t%7D2+NlG(RwEy~rc4b6T_ ztGK6A+$$vGC#o7MaSv`1Fk{C318yhEW<8u8p`5KPnXQeKstgsx6r@-_<5_ijsX|e$ zvi=9GRMz)iT&HWJy^x` z$3ucnq)dOXEaT_vQTNMNyM4bPA$z>zniUbpw%7T-_sf+_HAjn!x}Hy;QPtnG+uWdx z?A^n^-4M64e}B(!&&s$~HdyM+s?aIT`VXEZth_A=RhriB(4&|n)*jiFKP zY$1!9dGgCkIkUHRs4&L_2N}7{z*~`l`#W^e2uoL`Kw#cervwJwo0==hrtGak%vC%bkJw_NIMzN*CtSBqAB}$ z`^~ItQp;6Q4OBs$Lwpa2RNB!cCYo}h`W>$g<}^^XdG(O*X_3liBB&~e>g;UGRiy@0 zy$AVS&{L&@>M&0gV!3LsNTvH(>h5dek&}O4+OgAsSe7)w3Uor@Nc@7NA7Rtt|Kz z+RVT}ht&KF-F}SZoucg0-u)F5W>>FRQotu{|^IMblZoldFwTn}anb%^}|O@|OIJhvhYc>Qj^lWi`0Kz3F#a?^KnKh6_-uy_uEO-#;@dYXd9i zLOII0K;>L`C-VGW?NEI=Qy-w5aD6$8&dSI2vb>`&$GOtFJgA_doI5ik&+n^j5OZ-o zvX5`b-rC|&FUuOSC)k{~QEl@SJ%O{Y{lZj-KgBw6XgxAVsneoP*1L!QSJlu8st4xu z%WGg~{hGxYf6KZCX;#>m2bDBPv+>i^?fX>2SqD~8RbU}=$wLq3HEeH>{L+v0Rl5H} zlj-JPi&c7HQOQQ!yA_VS7!#z-zjrI^%$TyDq8vVRbLU%3)!n>J6;89ZxaCTyZB{JY z@SoY8oy?XDnZ-KKp<|Thu0_k8MtpB^Ccv`WGJWe`(Y8FOyg|CnTT-|0FB>IxufNVk z|4P#Jom9QiEI?!zFaqrGoWkknI*UX7EIpR7UUbaIu-y=M^rH1`7p6JXiMERmh3$&T zcKtjY@2a+sVg9TwT5F>5FNHtf4)>oN6)IMJNw0yXvvdOzs(nmDKS1mH$NrU0CaothNeie|@JS-(q^(CROZ$G6UE3bo@+pXO!4ncJ4FLgcAFG6U+aMN^P*#g>NdI z25fDx)wZ~T&PE1hPE z?6}sw!rww4u;4rHSDP@`_xi1=YQJ@cLu3zq$8@b%Mt<3=`i`ml-s-<*yR2!b`P`uC z=DWq3KlZ~$s`<(e(%7KLxv2SbQ_IIiaU1l77hQ%fUoc&`fxW${@N>secqA2m-f?S! z?h`%r;j0i;q(;9xF#m?L*-CxWU$jzj-sQ2_^i#t>xd?Yc-}zt3kNHvSm!K{U*x`eZ@+f*U|~=#yX10S@*scj`Xx$%@K~pI<|eH_jXTu&`~7Y0_7Brn zT(|f0Z`)KfRGeSn8&_0yqxIv?*{o{{mp52fuRG${))&3(%yeC%dF0~noqm4ZI<&84 zz1U;}Z=zl%P`#{i-n!T!t-;b6{WJ2Fp3Kq}*A~vFe(yv-wV&)O^n3Cj^51qcE7B|f z^CIi>E(?aTKKy1@-Mi(tBMU#(+wR!IN+*+@dasfHo`0j`O?Q2@c6&V|Un>>{Q#_Ik zo?W^^G{xpu+L_PdP4Q4V%5MK~adxuobq|}o_Ct;?ls}fQbDmQyI^o*);e;wU;i7u$ zP=CvRMP+?t+tfDEP}bSmt+1a%qS(elEuwRjhpCOt2z}$1)Q0|P?!dMEWa$mvT|c|S z{+16!cH8A(H<{QiciXzup`yWdF@rPmQybKg3^VC4SF=G>=dcTE)(SOy=|kBlJLw2f zo#R1Jrz6zKf4!BPquD#6I(GA*jvuMB(C$Az+Z$#W7mKbbB$M=m`lU^>Q3`3O$ZpF( zuFYZf80J2@Zh{E6KWyZ`jHe5~(o*OYbH6%@KcKhLP^nNxJ2a?nQN9z^PX64_-ON62@Rd$&&bw@E z@RjhD@*5Z1zMgWRVB|+jVO{ zhvbHl+jV$GeuY>I6(g3KV+U6*Y8ch$%tz=5*CvKr^5V#yL_3H!bar%KWXL__n ze)XCqY6;(LbG!8}oHhQ_6+60l_n!6Yrz@^?^Y9&jS!9trH7}jhh>q=w!YrpOleOZ| zg6xAEhT z7gx>Je5CK$q$_?{rU)9`CC5aV6JGV1j|R9*Z`4I8?SApMeAG~x4?VVKIE0A;9Nri` zy8F7ZGo}Zwo$y8%ug7Eb-9_5hQ-cm4d`k|fQi`$~qg+Aq6Q z{hP^Av;LwJjrwADqD9iOHx*x&A2a`==*@#)hGtkKFPp6RD)e28lrGm?M)qtUt7^xo z$QpF0+>Trw5YSr5M^F!(gWZ;lZR<>J_&FeJ+C;ij}%n6R3q)L*=bOb7ZLOw;wuS(`VXilRqry-u_lKdl#p3VSvtMkyBw3%O5H?*Pz@0D5Y<@Ra3w!qBPLA@u0E6^R0tQwyG^RzG8?@S!A=xERK$4Mi8 zK9w^4?0cCX{qcA2Zyo1sxVrW3w@*5La`e))v%}2h1Yk$zw`3b_15~F+D*n_ut3Tj; zy-!cYI+DcKj3vM;7c^HOrk3npbEKN$;9zJF7pioQAcOLb(tOER>%% z*LDtaT4`n`@EkclniC)_SxjcZ#oJlxHjB-iTp&DQu{Dwf?^=|Vuwbc23Cr`1uJw8r z+;YKU6AON&ZoQcWr|aa~Sn#_Gt-oSHWc!*0mwnw@D9Q^@9a#|C+bEd!ifdXH+@`o$ z$bzESEckhaMNbxN)3y!cZ(XNiL0dc5Z7c`@ zDp}CW&dsZxKnnpwr5Q3+_$ly?ch&XDi+s1W5F&_cH3C+l3MW< z3&K?8EZDQ!?mHH&Rw}+{K^GUhKUwfbh2km;!r0eX@Op{jdIP~)7y*rqQ+h#xRm=*R(;m7%nRMR2-IF9Ed`P>XQV=9 zwC~E?cl}s_#CC83%e_t6`dt=;8Z%iChSpDHrdI7@VY%L2<@-3 z;H?Xa8!Wi&zszUuD)1y;5PEQp%E!-6BNYi;a^L-gC5 zwH3?%TUwzV^xC!DVS)t?y{-!$&WzEwI4GP2du$vqkp%}A9}t86tAgHOsDHtJ7Chv1 zK{H7}5BV1cy~%>1g~1UG9K@i1K~OwHQCb2E_Sm>j45GBR7>B_n!EZByAsY{fLAPJ| zuA*v4u6Vai(#)Efzm<6Wgwl z?C22+f)XOIDjU1EW8~*1eL#?c{MHlO9zc2#(nIA{o6NV3)i_0d?%J-o;cR$*G+|Aj@86{zVFC5(-m7R zdQEH_y`#sm#IYNH-Bj6G7J4mq@td7pN|z3NXK`NM@OF2{+Svt+Kiz&1B}8>Y+sLZl-lFn=c{c%7ky z)8TxMm{%xa(RY-f;aSnCHtFxjubSem zz4u%>n)ZFznlnHAvn|kS!;OtONhT)0$>cj)*(bK~sp_gL8>Wi-uws_;O|w;-t3umU zn&(w*%d@c^eZxIC$gV0`I+8o>y)DnpW%&NS!*U$P$ifOv-K?GaIU}7acX1EhZ#Qzb zxolu~>joihatpgIsW{zn&u?4*dGy}o6_c*}?DP#;ap=bOiCeN)zSi^StJlBzFnrCT zD+&JnpJd)Ro%YLb7r%VGYW*jl-_Cw`({t(4F=66LV@syrXbu^_wRC6d1V*Khdac3I&2!%m$Tv29o2 z`k$x$`OUlIfBJdarRnE~{W5a)59+0DJ0+NO%(3})MS0mAoxyqfJhoJksRpJjyR%cAL&z%Z4RT;>=N`ezfJl=!U6_T(HhOTq}&C|tSy6r$-{{wcj z{)sFK`YJp7wGn&H|Kj7+|J`qoUr(RpjQUG|$|Af_Qf$7ZgMW!_!N6|Qzw7CF^oxXmRSz;hUYT-#{Gef{ zKO3@=xPN-|)a|c^f0Vs);kr?!$Gx4NbiHwAv3btC!d8#E4RYx?W9_2dj$f>}dhhL3 z3%3qg8StLY_3HK>al?6Qwi{_bdta)5zy69-r&8_@?f?F_3G=)!ee>a)nWrY+3*5c= z*zPcDf7KtZ{-x(=+r@eQ#~1m`{%V0w-=7DC?aT2o8+*drfuCAhSsmSf%lkWzk0VZH zWY~VZ=G3X%|JY1&{^C@!)1(tBW&ZVQ6hChG$3JZdpX7XMS_(CepQpv`eBASw1PAvG zBd(6#?78SV)EQ=ZYX7c2tJlo@_Uf)L-*~$GhWq>@1Kxf+Y{=5vef!^ZUa|Cm(0ERL zd2WsK3QY|Ek0R>3p^M7lJHIP&&!0(Y5dFe!BjA?fqS0 z6YUiRaqrA{!|a0-SMCPfGIRNCjQim?)-O6yLPdS69te5lR)1XnQZXia>1XpZZ{Ghk zeEOofaZ{gcetX5$f9~uIe0S;5UA2!lpYpsl{1nwj_>K*SuDFft(`(U{xPX7Z^Za(& zy@BUT+*jjpD0Q54S(E9QE@b$(0jHK~L>S&-agN_V?MjS-Pw$*5WIRO3TH$ zmaltn_Ezr8^S82z`rQ9y1aIgb^J5%BV;&zanb*IobYF(g1?xdEnTyw(CoE_m?jGHK zi0j%trNz2}%*Ey|uItZ?EC^X4c0Usb#hr0LKegVs-CD2pF&`8Zy3f&eez1Dx&2vOdbp{qx_u<$)i6cq6g0|FA*1`=$j13_g=HMBT1n z^=m7xW;kt>#pYC1_kEAA_ddSoJ%7Gl?S~F^+pn>!K6y(u^Oy4(QQu$N`pwZARsUPB z!8`92Ij>(aEk)=-g|73Xo;@N<3wr9}rsnl@n4)aA>yrql;fhm7sdWWY*WT&K@Sm^m z=bOdVfFqwIMK1bP_qv1j@@l*N_sR;)?E7vQ+kNzeHT(a#ojpEJI&bx<4fLIb=+*{9~m|Q!{jGU#8vM0_-4fw`_SV$$MyN2RX=!$>iqOd)^~v$ZXEpE zZ}lYVdt$4GO6AAX?SqyrnS-rN2tkXLeIpPAoO-}I(YE50x!eODlFuI+bw zrsQAW^+7xJs+rYFnP~#KLXYj{7eghpJ@&f}lsQX!*l;UB8k(e(S`!OA4;7C@_~S=Y7}xgvDX?{381a6JtiL5}))c z_@=pL`IXvx<(AAxp4qufTG6q)Z?9ANy!}QWP2W}c#QBS9_snyhTG=T&Bn9^vd{U_{ zvZ>xS=#}?n|Bt&uPZ>z`T@Be=9n1YXf?j2)kal3QTqiz4Hc<`Ymd7nJ^@T0$W zerR#}b2E>pWWBIz)RM&4Uq8MicmIPUmlb~g;PdnE`%lHTd9&_$@7TOK5#JtLm@;$x zUl%QUFzc@m=DEH1m!&I@WPSBW$*_lato$_K`5lFy8NS+4^kv+gFBku1{=+Y?`YP@D zmsfwi@~fBE{G;^FS4zIw{O~JlzpH=#m39AY`s$S@ermymlO|kVsmAq%FjuSZ!EWE> zBNfxD5{wmX)$w?GvjlG>m+PH*vGOq;N_sXJ&oFnC zRO89aC-A^RGM=AQud^sumsDDGm3MUvqtjsA+t1f~f79cIX9vQx2k8MqyeQF{=D%G3 zbSxf-#S;^Il+*A;G(ET6Gjg?A{Y17pik|sYM_K97M~fNH&#PBob%xqC*2+}Z%9TF+ zn;NyHlkw2U#V)V^(38)~bUclZryo1`|EJP?@jN8|kf+OWJcxnEt!w%J``V1#5{y+! zJROZkC#Kyfi#?`{ZEVwgnuDiKDhn;;#o6>^O)*{osjIx}i-q17IeLy4Ph5Y4=Y(}$ z7f=gbFrJyGmluu(_~Px4Q(g2d=no42q&E2w4vPC(H7g7FdYuTGb3jcVyi&5Re$16kJPS#J$TXq z&+FC>bNLFT;OXe-eQ|i=!?=%s*hG8`gpeEY(Osyfa$09X3_RS?rqPU{CrZ{B)lqo& zMDlcQDxNyQV?=m1B)IafUqyQ1Q5rm(laB{#^j`UTub(*YpL;xh>hk&%o@B-o<{X}a zUaP|mK=hk*|72Z4mFBMKyMk&qn+~+hlE9kgx*t-m!D%PpamxI z27X%M!W>#5LYFW#VbUbsqWHKtZk%iLrfMB$4lU!3wYxf5#sPR4Kul;^&z&Wq3EB?5 zu{Er%OVg<-PZ$}d*{t|nZ>$V&>(U+3ly6N8(`>!ep`9GYg{eN*D3vb9GzmTxit*!0 z-3~|kWOx+C7P)O5Q?z-~YaaI(dA#}B6I&-`O!9bX(zvY?U;D$>qIcah{xIor_pM7O zZ5=bdE;K#k-N%b^o*4Isj7dd?43F5C#yIcV?eW>3=kDL|+~;q9KK{Ag9na-&t5fd6 z{6jCHdAQ@rb6iJRx7bpP_aNHPx1&4T%Fg*7!gJbqj;sZbo%@~V#|w7^7jIpVN8Q0c z%a1{f2juZE7T#%SqYJ}nI$V=QIzol}KS=4Zj_^8FJ5Ka9kC|UGZCG^TZnp4GT@mH~;Mpv}=?Ovtp%WwVRCbwY4KOei-dh%}{oWz@Wm?wv2 zDK4}JFKf=L^sK_F0grLjk38mc{EgfYePf$TqF%$j{MS-Lx>>Jtb@}LsPm3kN6l&Ig zrc)_qs$B$DI9O*CZY|F0)d%Y=@mkH%S64aB{(~~(U{|(Dt2vx7y6oxBADVp(Mt`lU z{NFWI=GXq&ta~>`pQPF3qH57ipAcXSF*c5K*)XEaTr+CVh?FG?pC_z6sylaoJz~*h zXZ4{*g+Zs(r>7WE(&H_$3OBXOTV$1mioVd|7I#;*&qy!VvX&)Ry~6L;W!|AxjzHa( zZfxt>t7-o>?=GLVuS3J1e?QBrDfmqL$m#8Ip$De46|Y^o@h}9ALm(6a#c@8lcOB4a z_G--9ik9sG8VKuLkjqEep(J0W>4a}FjZnq$?LgP*Gn96t5pEU5S^M4Eh(fD&-ZuQ+Js%78L|HM-iiF zIz~PZ2laZBrll&byF%x)+xdGdR$3KYH7H_q^nxxzMN>rcs)vt}<8q z_-I_q6zh!-SQQ4?=8kRYMxAT>(Jzl?`PG9@Lhqg z-@lM&gesA*-#F~6>NFFzTJ4Rx;;+x+^3P#z>9RgWg5S+9ZzF%1@>p|ZsWq?6|7+E~ zd)>C=j>vYYakpK3+H4?i9Q)$xBwv2j}Q1a(x>Z?1}n7uV#7X+{DoOw|t_M8vGYF3$R=K1-I zbGZ*)$vk$mwpiqSIATXl!K_&Q`QLk04=aDoEl%J0o7t`#hn2TtH`$}dZSMK^k1bRm zs!|+USef`TCxK21T5H@w5MNYtVRUuI)m% z*X3XkB<&ng7Qgy{N57%hRhOxNmLn*j@xIZfmNEUdrUa&Goj-Xas`&laVqQAk)$Mf= zT}I)rX?`PW{r<36jKoH@vhjOQb6xBo!*Wfk55u^ZPHSC0{EHf_I-Zr@9Qy&W^7Wip z>7U2Bw7DD{=B~74resc~A?B>2A@<{lWht4n-rH2&y^)*TY~CK{S~g7iDynhf*&F-2 znm753oab1I7eBUqduXyVDRMrNK-`TlvUFi`}+gv8`LxML#T$kw7_8w2@vNH zkALsgywII@*PhQXhhRAMgcN+%bJywZ3JrER^$YK3)s)k$vdXe{smnAB!UX?in1a0Z z1)nvlY0io7zO+~Knz>}D%YuCerYI-+K=~cW+w5NZepa?K%H7ur10GeNpe8GnENO<4 zDdyALTSh^N#RFo^&KS&Roz9Wn^h?v>-D%uu8=-obAItO&F^pyRy>DfH{mkCCa=&)3 za;fHO8i#SX*|pi@gD!Xey827p7m*6HHP5Mq` `*G9a^hZJty3 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

ioMe4 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�h<}Lm4!m!@ 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≶*`bhh5 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

~?et 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

gMZ;}#R>xo6i4(axL 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

i`a+jd#_jr?R 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

U=-fv^QAcydKx!~>Z5`%cz%$(YI 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

Cpd7Z@Y+g8D2@4;5aC~k{oL96|*3=#M4+Nd;X zs<0D=aoOLU$s&a^b+d!n!o%;VwrL6Xv!NN)!*6MxJwI(8ocGD8HWHE4zn_%%xd-Kb zMEwt*9k`!ty4@6Q+h2(5{bboxI}e}J7J<&SC_EI^ZB5XwZEjpbf+0O`c6wH>fq&vL z#C~;xmyh9nt@DO=ZeYlWNS&tR&~}_^u(tuhQ2rO^5fKp@O?X6jNGQ)^bnfa3^btx! zm@YhZcKDn*>81#6YE+t57dj^_Ei_6Ol8z@6)A1bWLd>zmpL zTX{w%59;to7UW@S&T0PEdA`Y_q0ek=vd&yEmjSl&ZZmoRBq2DIo&ptr87u}#-W+Rz z!be0c(OfNmr-0*(Z1UTLo1s+RAn1qFE(dix3vxOt#8y8qTyxPO+Aqkfv;BnFj$hW3 zrcs|phpm1ZCNG60(K30bp`Vxsi{c5BmqU*xW~a}|v6Yu)qo0|{^QyAc2jdW=GI{gU zb2I3@KwbPLPn5?DUkZ8FN7wq`TXRnOJkqXfdChF$v62a?!1XfKho(w+9~CY$?CF=e z#6(v>UFCVf-{{Z@gbTv;v9&)l*g{x&@%`4E9DDXlVe*1l3L}$OTgBi1Ak?0IygV|X zt-s_kc>zow-csM`=*E6jAGvsbvrBz!X7aW$DR17NJd0D?`iqXWubs?jiMXFYr!7^& z`^GydivR{-(UtiqTX`+4V>7aZ?YMbI^6IwRuNPJyS=kG77tYJf$+eZIXZ|L(g%ph- z=QQL|lSX&ZZGG62muMqzI+NGJTC0k2@GZoeeR z%h+M5-wc66_#Ffyy=zSoPu$8zXA(#w!Q9!gH>Zg!-r64Q|o+T~>sPxZE@53TSguW@`2l@apohc_Psf%U%^ zWL@1V3Q8;!^%oULE_abybdljSVg&CAvOq{ZfyFmS^%bP&%DoFidYRI=gn7XRO zn?(>CanX%R6;85B1X(}B|DoZ}oi((mN-oOVjhvQ0;j7Ebs=CIPj~og$X^)P;ansFx zOf#>?%|y3{>TbHt9MgQ$P3<~ZiLaoz1vj~EYWU%e&Xt^hy%Z)%EPK9=nv0NO`KU1v z2~8)V*(R4qfB_t1nqV{D=}sk;H9}8T;D*HVQJ+xh%7^#m3wa~%?kT9{PBO~2W?&;! zV%hn`vi*Rm`c9zwAln17;hhlrA3T;`f;J^V>cp~tF;!_b z5klV}mx9EyKLrD!yFl$&ieLO~?l4IFkW!aNcz{eSyG|VfFVtBOiZB)a25-t)m5{m! zQh5WEN1TFN38G=X#SoCMiVfiJo2hr1_GQWRsVAo}i!qPpD4;QE2WSxS}`m1X%ma#Y0uZ> z4nfgxQ=a7!w8aWNw%~x_gpo^sMYVc}GFVHK-$i(kZ8>FiBf)e09UQRB^nN;Mv?1& zkfNqorw=RD2!j-?h?28j6mS)@S~*-<6ad&P!hBm51Hx!r{t0yj7%;Jlu_dNI?Kbx$aWB zbd%DjYf3f|;b$NbXK8G)qq5AR@@C#GSy6>V^b-88iKqdc#H=TGE=qMrU_qG*aAsvm z3dHs6m?0C_7x~ZVP!xVmUvog?v8iDjbdb-$Q~DlF#x@pumP3!5P6I2mL zpZAfD$B&UvI^INp>`*Pkg~C4&U^f=9#Et;Ha-WZ({aD9&nLyqJFQuVPYTSn`aDW8- z6FGI8UP<6lf>;1>q$-KVCTlbXz&vDxW48M8Rci|ufaOv9&4)9{&T<}A$C z4AN_Y2I+@r(iW!!)gUVk%U?4ax2fl*2lpU=B@$ORHF*43law@?rPR#9JD?~7$Q`7= zw;0?lHqA?CiS6E$77Df?Gxv$i+>8WVLubd#;_%MGd1;yj3v)I6O=?ZHX{m-*U^G1U z(hR)&i;tn=o3dwTWG+b;4M4^WwyKdaLWNAz2Z#$r0mG&YOBgn3*yDzddShHdwb|vh zu2H)Tmdbvd)wNwNRE8KY`T{JRG@7%^-I;|fKn5V*PPebch=5^(`ErS2!KtRvViPYO zizev-tn9qk@KJ&f({Gb-xy*_8SJ^fY3xgQ%jClqfd>12}^1oud`X2FpSv)2noenX5 z0E@?LxYHrVhq8ET^wx(MKa#~`xaxF>@tG`M-zm1E{BN@OvE9VeMG_ss0lyou0aQZp{4joE+2K zbZTWWSZ|BrsJls8fTe&Xrg>8{@xr!{=qN3hmQMGwCi9QH;e~P72NA>Z_bwrR0@gDp z&*5JgAHywPz#5;xOD&kz-N@dqp>);*a=Yfq{ftm z3v&gfpgO(sk@s{VqmGV-6Ia@Ve#a8T08J*4OB1V@px{*=Lj`)L#=kLW4py5&e zSsDIJ$HH1h@0WDy45!hc%XgEs*&vNpkrdpL&~UvrMyC&nr@N%x3PxkvoWd&ED>;(K?a-(nU&%qE`NKb3P88y{a` zRNU`+kcBTWdWBIbIUNoaqrr@hWRz}^(UHOEi;U9uf#@iL|C9an6u?o*{O7;*e<3x; zy

iB7QGwycdH_{C9Qz_$d;ZF(Ze!og_Y??z;#8WXDt&ZQzEDufO)|*MFV-?ZZEw z|779aJ!;1$-s=9CqdbcVR4)gAzHcFw75M{SjBAo5$m)@kgB+FKezNjZvu2D# z{JLK8GWSqVoziQ9b7(PS!A4O+C z7hD5w557%zP$ZR{t5TZk^Ie=@TeZ)De81EF51i5aeOK*wHs9w^zRwx6&+&S{<2bK& zz3lJTmhX3_&Zni?^^CvI6^SpGqf{)ZEXn4S*@-2~l!`^hlI#rWa%D-bu_V%~B+H0c zMV-(7eBaB}K3swCA(P+bYS)%Hze6UU<0e1IJR{eYpL;-&MOFulGG->PG*ic_oo4CCf7ud89vI5G&33?Jk;@(N_c@IsOEjc8O5yL*BJqPtN4pra zbXiqNmRHGQ6u+WmX;n$KmtuJyEFfL9Q<0-B$*w4gL|)A>dpoDO;_uVeikk8}V?@39 znHPaGND<8`QHo`{lI*IINF-4zmhS{!vWz=r^lA53T{pX)s`F_#p+a3xRr#KgJaF3R zdKu~=Xha?Pw1I&?xh$L@%A^8MyTt7Vr@2<|d)eRT2rO^U8A_MKB{B+^CJ-L6-- z&DXg7l;U+U=&^ZN5>}-Yox7t-57anWKxOu}2c3Ia&0M zhLJ^ux|)ROJ(5vH2{APZ16C*KY7i?ms#@z*zoe+RdetSZ+b_-Xc8%L5t?H`Q4Kgot zZV=VRRf4%;6)9n)Ha-&@Z zO>U}HKc=YWb8bIXsBY-pE@|B6r>L%1sD5mggW*QA{CbM2)u`fHRX;V$uePWzYwhb_ z6#H?)fZ7CIZNo_9UY9UnPlB#l8pB;ytFA*&PEFZq-L7V-ZltK%n&rQzsBX5aP!{Mv zzgg9)ce~QL2$E4KLY;Kvj>6b2U8Vh^cWc$Ee&9{<6V%qKZndj!Hp?%hxLr1?s1(Sn z3i-B3^vwynriSPZ(ouWrb#)1&xQpOSQDt-LTWZzKEYuN|=n|?Ug=+8@ZdbjoCBf&k zWWcWc=$3|&P0|6o;$rtmAFiqIe}pVNU|0P}R9O=k_>&{T38ET&z|$i2J1fzjEJU^H zDp3V?t?@6u?tW=kUFLJY-cA;^HKJ5Z>v!KqE=m~BcFs3uGXPy z$j4Aq79C`<8yZl|0d<8amk!PenU&I!sMd-OhvdEDvc|2onMAd>tKcEGP_xbQOLeNN z%_=+vnJ{XDRC^Dfgy%HG)+P*q^A{CHbG$F1-Ya|Zr7G3GnyDQ@e=3NT=KsGd{x4ne z&fwq3|0ES=r)INObD-6?Esh4nEBU@Rt6ke#ebKu%Rr@qmyEggzUiYW-Ge*A)aeh~X z;j+qif4*OH$B3yZ$*nBOQY)4Ol|*9TNK`DzC|rbb8RKckpo4J`-8%+K8s+_IIOe-< zi1O(e#Ay)JDwZirNR+u`X`+Hg9}G7^iY199OSmg>e%Gpf%=I*w9*OhYU+s$#yrtC_ zqu3P;8P%?b@_mn2V_f$At{!8Y?;(s4!g#0gJzMXCp`V6(TmAVFfAP+eB^WEAKVJ|l z&G~`ecRxm)?vocTODxIBD#_NAL}FOPpjk-;$;&8Qf`LzO8G3|i07|i6;@5%+L#t00 zWhxbzy)2rJ;$sBI#G_EuXuwWGO6Qaf8$PAW6+U%|`OS z2e?dWz0eaT4=5eX9W@rV3c=ClJ^6V`J%6_>3G+p|pVzxcU#WKKU1|<0a>@^h)0R5b zhxjW8yCnK2dwGnh)CBG?GQO#tLMrz!hY7!0Hw1gtytDO za7Ph-E*4c+czPsPtnO7Lo2afh=p*q8#LdYg?wTPXdYMcw&5>1QZ4Do@LHpa?zwX|0 zBC&UK@^w%DH9t=_=PRXVscd{=q2#H=m6B%?OC`$_izTa?iY1%99IBkxMJH_z7+-nk zypu<3Kdx1CK*{Y7YN)T5WHuj|c--^R{cU$ARVW`xNG=JhYHexJNMeqzd%e_S@ZG!K zsWDqx4eHF_9}LGH;AX|&w+x)X9bbI? zuXvcePWfVUeUcz|a$EA+mSJ~`HWwDEaa7=vYJH(cOcJ-@gph8l#{JI+vj>mM+W6PF z9ZpWlAw^kh`7%B-MRM$s>eNduxWOWszCciD+(Vk*`;FfGrxPxzhPP#}<2gUA;nv+6 zck~f|+{kTd;R4$(RTUX;yvUcJUtj&YKb`vY>*wtglKY~gbo6?6Y1;Y#Y0>&P>5lb& z(#G}Uq;2a*NM#%PN&`1|N=I*SlcwdqB*^U@xc?E8TYh+Pp?rN|ulPf&B~uPVVsM6&Ksk!0KWwUXV3$|d{9=c~eSg>&q2XP=aQ)jPOV?&`XrVUF^QVSknH z9Of>+GHif6Xt;085j?s$cHT0re!;T3RIDB9R!vwh*?f47UxPUtz|5Ceqs8osX zsubmlMx8^7?4We{E~@1*N8M%Vl|CaihdeyjU4p2}K}~^QcqDtwby7FwtmZV$@jfno zMe8!0e9HF7xwNNbW@-HJqKhqYL4V&^oz-rhK4DQ-mRXzh4pgY$=)a`hoYt#Vm#3bv z2f#NQTLEMdkTqf7Ygr?8I=$w*P@T%JVxhOsM3u5~u)-mu#sykU8|kS3VA}N3&kGCV zr@XWBB6N%Q57|_Gp~bwV7qUo6Y%Z=udd<}k2lGxInRsffj;lHy>gnfGv1Evkn@Z(e z_L0lG3Pszj(rbl6U&gOg@+MarHvI=V@cd`3iLX`E&tB7kj2Lw|af5cdpj= zs;-lN+TQD;QHA;CO-zWhR6}1k+;*IzbbLzb7|9hHZWk|AD;9f|7&O#TW=%gv{5#an zd(_VJ+IxN4uDVdAy4c?9mlU^lOoK2@hp0L^rj_5PxLwC|vyNufpXzD4*#KvakT3OW#4p6eJQn8chjucYJt!<(6&xfBWO%_YVKqe*2}B+s@y(IrQqQCmL=nicWgY`^3%Nx{)J3 zt<3!S+27weeDKnykRcQIeSfRwFEb~3{QalJ-)zl&<@`I561@Y~nU{<->eUVN0^?}q z8QVJoJ!IKQ8+>2z^*Y=hoTTP&ZR!11$*O01q#u;_IuKen!9&Jxf^A+E5U1TV`kSA3 z79MlCxlSgbS7UHR+Y{AC2R*uEWT0te!Y88GKGGl$SuV+)>~$<_gedp8d6mq676h;F zcQE|AC|Iql3W!S~$tPDn?t0e&clYQf+jDMSFS?(RX9W$ZTI4^vY|lm0`ZCqZ50VNT z=suL$_shSfm9z&qnfNWbH5cpql&j>mme?0Q$|~UoT4Epdj?ovLd_L7m=pZUhG4#d4eJ??O?J^21f&P~2A32Aw?-B$Q6 z*PfinjN1Mw%08XS-dy>aqTyU%oP_G7Ztb`)Y7;77EW!!~bUOWW<(XE6^gGeKued(s zAzMP`t@W+awu!>D=O8SDgx!8+kaHo}nXr<}wFxyH!s@n;ac<~{J$S1&p;nBox*b=% z8m0WnO&2VSOlKD= zcU=`{M&6LRU9waevyR@I0Bgj)s&l%Lhf>cJKdj{CW8U2$uNi7sA*@YD|Bquho) zoZ+Fg@80-4Wb zJqoi{c9^wxyLO`V)4+TO!Pg%QbUf_2^3#soCOV%Azcs-lh)-Slc|46{*rYX zUNGFTq2Mu9!jBzJzQ(avKl#^54vs>bo*dNcRJ6<9^)g5D0~lmR-(5Lg3m$axWCrr)n)isJs0vdj^t^Enr;3Du{y5w3tQxH z8`Uvap*W;kiLROTfL{(!eLd2pRcySmep7wkNzdC9sAR^tbs_7k2F=54(5SgseX#W@ zd0t2I@v0|Axm@f>{;tnEnav%^+b(6DYe?xxp8rKF-*7anZ^?PJ;U%}i-&kLY4*HRj z^1kw~Eb=F>QS}?@vZF(Or0+W!H68L-UxRvjQNDh@YoCWD&wFet8Zbob@NHo5jHtjn zMYodX{kb5KbG|mPC1KlX-|YH8&d84~@D5|*jspz^9(vw2(0n*;;F}lYQk^t76$WK5 zkF7WBK9;F@=OWOhY|b)cs)Lf6i=Kd$qdy&4Dw)XDVSM0^x{9D3iZ2J7c@vTk8WV4w zDDS zx1J9n8C2c(i@$551Gf?ZI=nXdyVts@$CC_U*siNkey1oIW~MMFXwvpm;h4U99uS0V z`>i^(mxc%E$IIijKQz^jY7X5!f4G$Wdqq|gRK=mEpOvHk{>ZNUr?@)4H~{J@O8+d0 z!1JJ9Y-tWc{?JH1gb*BN`f(}yu7Z>9<;<-V!eRD5Hq^sd*O$|>*Vv#q%g1eVIgR2- z1r}r!o>V27!PR9k02z%a3#mXxV%ErL@FIDxgiD~p(2)?(dr%Wz@MhErVXETSW&N)> zaxMynxRj;6bo+Lv68${BD&N4>RWT0K;9MtVxS0=<-Snx2`qp<9oOzh~B614#s|@sZ z$IS_+!Q&3d5*)lFK}|0d1QlinRR#p@ba<%F?4Sx7Q+Oe$B0fAQKVDPhZk`fUXZ9FU zelw_STTrRPkV=P#b`}ghV7~BBjfbXS4fjmU7Uk!qtq*Q?dbwuJ3iD>wgYluM?FeZ@ zy{;)`Twbr1;a7}1FZwiB`N- zeZMnxoaVFB?TfB4#^hGd>+Ce(DvM3%^SI;zrqH&VVr&wFU`4YSi~FkLsp$@5yjJh` zCp+yc4-~{~_q*=TPG@f$?I6_44aoyz*(o$nWT!Xd9vII~VeVvhI=#BjBz79$G^j%; zJDu&*RPQ68g+UH2!_6OfU7KDhYVkVvokL!E_1Xi`0?WmG4}qn0ha+>5HzhoaDrTqD zN#ZICUm0_yN);pvS2ufIt0|0aQ8(-Lvv(%A{kugfFg|>xP^;HVC2OixkK8T{5pqza zD2qec>7!o7VT@r)P;t0$y0$n|DhSmUPt9YeDaDV~u+!#3ys1&pEvxv6(+q_IoTHG; zTs&RPPN#cK5ru{@s4{38%ks%e$H&;|Q#&0WXQwl29jCK2iR<_@HKTG}YTn-BQseuT zOU*1-*P1`(yVlI_ga1MJACCVB{Eu?2**eCx=Ix2DHD5gDT61oeYt1L-n)!wAz4YyS zKTdV2xpZOozkc7{r}uk*IKMYW^4?a{yIWs;ckAEZ-TL#pTbJ$LT2}MNY!|OJMH_rtB}0Gb5biig{#)97~1D) zlbdiV?VB3MT2upCY+pk6pGw<*Y6t!rPK|CnCHw5u=+90yes)TB;8fdzQ$+_)1vZ^Z zYdW=~=~P?Osld-qrG0*C$LFU451mRo^zV~lW{-+0`427Hz@7E+UM^10)Og4f3i=N# zZUp?SDFkq82EqOP0PiZ@Pw=)dz}s#U9PYfmcz9s_veMy$$N6s_UgTI2_{?d?yjMRB z2yj}|f0jAm``q!H-Z(e+Snwn5BS*L=m7ZvBc-YayU7~RZ@JMJ%<6sAk&**Y(7Z}E+-BLY@QBzn@R&4Gaq;7S~Y(K1Uy$Q6}B@%&7&6z`}XaBdDi+qy~-cBb?x(2#h=Ol@@v{>+cvp#Gd>(u5I1Ji@ENCS z<6d2TrvKb&%Rk$nUhzuX=YM~D@nG*^O&h9jE_Ltw*qbT8#jecQsPCWlRD71->Un(~ zc3#a22plN?$IBH?Q-em0IPilh@?WD~JAC5Cdy}en|K-l$P5;P@S$=!)rb{vVk7+aJ zuSv>0KI)BO+JgAw^WEM%(WV{s$(Mh zsoXla@6*pOy)k{3--$H~f7`v~>#J#-j+wQ-s-WyiB@45k3|{q3uEU`WeWgm_ z8T|&-9@g)(d1*T)E&pfoN1sprrNZ~sFBf0iaW3=sh>7Fe&bRHJ`N2_x#vN`}J?e$i zFRn{nymb1*W8e5u$N?3#+3WR^#j7M^4(tdQ??k!8Z#{uZ>g&FKTimnHCXZi#BYMrg$5f4upe-@}`zG+)2^x5cv8rhPMN#rngO-`zLz^&gJ#g?{m5q|n08 z{8D-@@}F6=?&=fi27Tl&q0f8yZ9jZ6_oH0{-yE~&R@!H;XZ4MK@~C&k0nN~J`)`KC z%pbA7%(VRW=GV8s_EXd!LmuCBFxS`g_P@&BI*oN6Wzp&P*T#pZPSrglc{Wm$Tp~R% zPw(xjTQAAfYFx)X6~w8MXXu*WytHLs%9YD&>QXrA=KU$9eYYM6*QLDtd)%3=uNzL} z=GIIa_vxj~=U<+gd*Z~cj~6_=qTz51Imr+EvufWT_P00AFW4GAd_;M}FWG9W1LSAAK3HaYIBJs^_QY z?yTJOSXX?+AD;w&#N$Ikl1G$JPuRFV{g1T`vvXhGykOJSNsl~~(za#N)th_%Gb}af zNj`FAYu2+*K0Nu;a~s}B)jO`*a$?A=SC{;4%&;NPHf8VLWypEz>Aof3U()!z8hG5# z@1@~}16!W_WzL0${I7@o(pFNR?9gbadh*2OiCdx<-)Q^h#P^e{;y!#nEGReV*tW4R z1WbH0cgWP7iC-hKI{OYag?>%$w(ED$F{SRZqx_17WQJGT7k&hi{> zS?tIBE&e^yk=QCiJB->rmlzd)$xuYmJ~c&@nU;KMzZ;gyZ#zQlQgev`E6HA1_{IJA z{9&~Br$zNI+7cp7ZK}pf5FKucCjb&4n~U!i`n z0*|eQK_vz(p<{O;7BjH+&T-2$xZMew>X)cVD0T6U_71FgQGcMRDI*|7=^6T}m$(18 zriw??yhcj6_20jrU$SWYZuw*xCp=w%2akp)XxJWoYba?x9<&f1SL!)-D!wa(C&PqS zatvc{IAFU z4tjc;HO@c4p-IWcQ)=0{ndv!8@nBfCAt!TrdP-7)COLgc`aC?Agr}_NMJAS~$M~6$Oz`Qo)7*X&yR_L0w455GQdfoIX1 zyLuhoGrUh^G?S(VtF)j-?&ni~o(`y8lt zr41d}9^&tNh4)qN815a=y$!_?ey4Mp|SJyGN~lxj!%WVv``YK4O*jgUOB))Cn`f8gS;q3T~`|SE<}7hx=A)rK2};_tjd?{ZT^#_jkG5%c`%dq zwo7E`pNjnJl6>c2?UT-`rW%RAr%aogGEAeCk9aqDh?SN6Ib|7yPX zL)*U%o&LlJ>9wmD9IkRS)})_y(4G#>1=0>gEth!B^KR5|g~O%ZGtX_Tb^&PS!Q%ur z^aq&l3b36ATL>)l0ccVIG%6_h4IcC}0(7fcaJWt}{e$!?(p}$%-j-@FQipF@9TMoO#F{I)~s+YV)K7dV|;%Qf$Q zdq)}<@$LBW^5*yGl#W}m%C@S)bJBRtO!LQ{XV6(?sMsr5I z+9h|})4{sar~s!pt={Q5C*@z&O@8W~Ed_0_RaFQcVXSxjd_tVR|L@V7f$|Bx3ygLB z&wEtn_piwJU+v{NL0M2gq4G%Rgqqb}>WRvN{E6lxj*3`#guhZA6c;MVS37(ob?}n) z3moBCoL1|PMc~SG?W&d{i$;ls+=Myas)1f1n$6H~>-3jtzH(%_+O*_3)H|o7ZG*q}(vtE8u9_S=kNB>~zezhm&78|#mkONhc{VZTV_)CLPtoiI4??R`Pw1Z_)2)# z$$ICv%?f3PrYdg0-gWCFX{oUdsj&lR$4;Fcdoh7}%V`;JX^d~_jc*x^Z<&p6RTs{{^M=oKOAh2|CTCQ_5ZJW0zPu&)XgqKcQDF+zwwgubHjf!Q8fN zxl>TArY%;H)>ubA9X?6fv=o(C--?=RlFydyAC}PWI8Z(gzRL|*TVNDB?K>W7FY0DV zU~{8JH`Ybwce?V`l>=BCQ@(6I)B-Q^B2Ql;mxQHe>EP$P zP3{x4hqbx&rS;@3b@H)EM(Px)37A6bvkHw58MTK~)RMQ+Plsqp>f5dknT;)ZP&ch` z=r-fV>XrglGS|rshm6eq3(^Z(<@t}*88^0S9aa@eLsO065PHT(cDl6wXDZ%GFV82m zhqLBcvi3ITzabY(7~0zZGY-DBJ2Zsr1~F4$o9wxUy}#(DI}k>RvYXmvV7MFE(A6 zllxsuovWUUSGK=&tcdfPs77h{q`kJp6}QU$Idofd(J)sHlGSsAo?Gd~3_AT4WB=`v zxVEy~ZS$-;qCHNDXolevqyB-3p$R5AC(qvvlcc zvvNf~SK3$I^tey5DgCL-1uywVY6|kX#22VLsmEx$Vdc;r@mcjPswm~}R3oSRH2e8u z#8tCis7iKq=YA(~D1Y2CT$UYoy7B_`%Iie02w0rbDqH_ri`iv>djCU~(Y)xIEPOl- zx|76Gw8rerDq!QUsgIJ<>(wq#Us&uAGYE5nq9I~6RQgWS)wAhAjk9GykBgPO?Lpml zU%~d0@hwM(Y%%Wk^r=W;!PMR+B-734EhfA0hVLAwk11J9 zloOI|JMq3~>eLliOdDG$+5YvtjYu}qAQh8cd*cDisUmQaMR}+HI8CXH3d)iy&9xZV zs^Dz9^$)m~O1MYSFV0w5kAA-qowy3Uxdt6~B6{#Dn#6p#Z+Jt_;u-QQ7*}Xw^d>rV zni$n#0BD|dZe#sN`-V%s_&E>|BMlh(Lh$UNA>nKbQe|W0SQ$+thaXLVJc-SD><8&O z8XKx;Y?va!$nkC#a(Rl_g25Ko4{RD0*t|->wxtjw*(tR6;nG+chOR6H^lVC?0dJYI z&UiS*4V+CSG*JCcBT)VWG`4xrG%G%UCS-|T7_V%mgK0 zAyMYulxl?oR5Il+p0RRw9aMS>V_x-e%+l2TFiYFn3*%**BQ(E7Y|rH{rojb=NyBlw zLB)AK?PJCW_RHwvz0MAMon?ES<$Il#d!3#4I=k$3R(Zxc=)a`_>Lfo_o#%(G1vG43 zq*IRj)#th}7pN-wNOm$x(Y6z(`;eCz#kL(p+tT=LY4s z;w0st%J3L*l+10&F6fwN#TyFTr905qx45o;Mz&BGexANykUg|j9CY?oC)Ib%>{>@) zYIGc3Z@au?OuU!aH?Ll;e%tSf@W47ZEg5E!?E@Hr1NcG!Il4 zm`_>8(}hL#b7p2)hWiJ5tA7xOd(JI1sKCmI(_dzN;nNOtRx`!dga=6{XVA3*ih+v^ z_c>0oY>W067RhI;t)!3WEmpyvxc;U2oIR z%@v}}tyI9dXbQItEr6zQJHcS|h9mC-!xAvKf?*37_JP4n4Q@Zp!BVNgg`g!Bdc$qw zXd>4vNBhX4cG)O_+qO}=%rQek4BA1VFB+V`8`!Go8sxN;K6Az&CXKLBptmfJzy5$r za=7N;qI`y3QaN~s=(nLC`5>cDzH((R=cqz6E}c0_J7XoyBlmwr{B)Q!-O6eGAIUlQ zKa%s!|47bP|E(Ol=g?aw`Owwj!&c+3X0@_k+6c#Y19_wJHWlai;G@H&;lDXXX+Cjv zh`zwm{M4u8LMgc3oelk~is&jH^Q4wRhX&R0^+fj|gzJWJ)FB4)702Y#b*7ytDOpnQt=Dm`h@;VTWDd?k!eC;41uu|?(e(tMhfnGfug z#l~kB>i=!l%lcW+m4BB#9KVmyEGu;En=(`UKMAd}LgjD$KkU7ITvXNeKYoVcNrhp2 z3>9!tRD8k#0SC~UaX^OzCAG5B00D&rK|n;!8lHp+F)}Oa_JCb0>S|G$Q8#Y`m{Qq| z%!o{TC z9kBcV;kshhDZ&bF4t#gI-ZSe*!fG9`vv;}Xlqy2S^Dv?fD=-QNVNMFiIIF_klZ0U! zI4v4_(6w442m=AbRO->?TNEdT>V~UxOP)|X@9R6FeQ(LLiiiA7BeX|Ko>RQxpE)A$ zXvqtTFa4`VG=5X^qT;fD!-&q)CI3*=2Xu_+{E-bQ`krbiI&hG3TX8%!fa^sx;073r z|3s98|8x<21^=6FsY4{xb0RC%gzeR2T7+(HD4fB4WIxi2_;^A| z>hE`er~Z`i6M-kYe+xX-lkiEv6P-JRrFJBI0q{gO5qL-bPXMn0p5F68dJsMN$=jTs z-rM0we++n_gvap*P21=%0w0JxT^jsnd|c5d=q%d*B^tH0 zMqdd$#fMeEQ#(?>JO_LP@(%zX&hZM!a|C!AcmD!jiVuW$1#`lGFT;lbKNWa2&H;uv z@L39c81gp)AL@XA5O|`?1%8SHelPI&Cp-zfqx_!%N%Fr2yrcX-1CQ__(DwpKF3CQl zU=-@F%fLJKS1|BUO}GlYV}IQQJheMS*}dJ{fv0vS0`J)F8qR+<@Q(cN`qzp5(a?ct<;Y1U$*J4R}X+e&Y0vGI}MPkLdTy=mUW#zQ=)=2V zU*Pn58U4GQ{x%u?*PK3IM*j<^uaeOZ#$tu!*&(B!1U$*}wv0ZW(|<0bPv!JyWc2rQ zdQWtUqrQ)E`T*b|noZv~IDNE?{v%GGB%}Wcc>EKx9q{CDo)Dh;r3!e*ewhF~>HC6= zzX5pCcdr8<@{?pv|D}w6EvG*(qkjZ=nx_Y#F3tav|Gxk{jTb-Q9mh*Er;h+$S|^Zz zp8`+*8V9`OZ-hS$JjuTpct?AZl0?5sMn4pIqA!urPvQ8-WcWDXX`QzVc*$?c4tbpZ zOBsC?$Dfzs>wzB+K5iJ4!GL53;&T9avcnYMG1M4-Ao}YV@EYVzz*D~wJ>eA^abC*; zUd!>sM+-d3_c-v<{6+XBz*Bqsfv5IayWmp}JlX3k@KPKgKY0Rp%DeRMZs%8kC%X*= z-qFqnIDV20|1HNGWcc4W{&pGO2TBtE92tH*$Ct_QH*x&qGW_iv|B4Ks%kl5Y@Rh)m z9lrwJ7C&LPH#xl*Zps|>{g~rN%kbZGyiSI{%JKB&1V=tMj287xm*J;!{CXLF4#(rM zif(+8IsSPWel5qpBf~$)@rPvi7l5aA(P`jmK4E?WJA4T|$vx7`Vf~DbIuAUJ+o`~_ z^$RLc2YQYX@v~+4K#r#u>^ss&b9|u;zmVgrW%z84e^!RC;P|&>_@_C(U50;?3ABvlANBLcXM13dA@FO|iD8q*XKLK{5uPaP+u=7&jX`Ge=Pvw&RD}bkY zb{FuD_dAaRPjT>FM?7Svi) zRx-^=NjNKsa8eS8oj>bl zW3u$2;%=`1IRpZk{o2p)=Z$&}odfGxCtoa8?#ioP)Z5b=W3ZNRJoOUQZqN>e}leETlKI zUJs%D^|#kU-R%Xr*Ha-)dJ``r?r!gp&&q`!$fBcbLNa;;)n=yHYCEtK9^}2)`x~+kM2slG;!#}nHJrV6vwK>vCmrKh^Dv;(H~(E-!0$Hlt8HJ^FfG-sYR&8eqN>%-LHqN(k@Nv|sI zQ^jzx8?F&or1u{)Rx*DK7dy-8hzl3HMP5TRtMeM7apg5czjj_j^lo_#(RR*jh!&L9 zh!Ab(v_^zzC3%fLG>>qqc|;$YM~Ir+`;K|4LHtZY-+mh5bl6AqG3+Cpx>iIVt`({6 z@!e?28w_@t#ly;Wk8_v>MItsUhD18GXQXIPo0ZvEmKt%GR6`Lv4hvSnL z%wII$I6omde%``G2F$q0#C3k`LiQ>1bi7@>J73O0=6oC*>4dMyE}1CoJS93?>lC}h zmzhgN35Hp53CVpBh-Q)qXj$QW86q)+Al&}Fd{my^sV*sN>nZ0v9r}$Vcix#HkxmC( zq|BqZ?VJv^>9QF?q@C{6DW*Gfije6}Jz%=ics*U#tD*}|cj(m~PSS^YY~IP)$c({N zkr{*2IyHt)W(<*5=hPTFnK3x6Q)B3y8bc>DhA6MjnK7``j5o|mfPeR44mfI(ILHl) z7A+8$wK80YPP9=Ev}mLrXwgb?bd+eO9%#`{JVXz*)dMX?+a74= zT1Gk7GAc?Mz(EuZl9Ji-!?~d)N-;ECYnY1>hKJz?L!*=(WGuBF|NUf zu~!x185jO^jzgmmJ2yXrwUE9bqi{|Bs@qbt*JO07zYvePWTYqLu2_+g->qOa|G*PC z$H#UnF{KtHD>ysJoFWhg2L3Cy!cgkE+}_ZdO;t0bzl841(s#3$XbOD zf)u7@vOLV@n3GnrWZlgC+_lnomGQx%+*PUgCj7eOA}#CbjLZ=FvUFB@2)@U{SmCxd zCuYJ}lVn`!t*lxjeoZl)GvL zd&sL;7nvLxJ_WYQ&X|&wTQD7udTFN=h>w!x=C8=jU6GxUlbSX)D=9N~RmRl#Rd8E; zKPWzSsx$(oCS)y}x-fT5ep<%VZoY2cX2|)!3L)YOQ;Z>Ex?2#DirEO67D>7n$wNu^(q3ap@5*%#C881zu|!1Jf(g&|j3#0M z9w~GPC&@kIiAZJ(D7}i+BcAk1*(02YO*q7pUaN}Xq}O6Gn)F)i5KMZd=^jgZC9{Q+ zUMadol3uCofuvWG?r}u4RquhMS2o?_2xnstB+1v>@=ajdy9voXw_U}OkWgo3Az{39 zn$yy7UK-)FG?JH2cUr3BrBO~xL$$m()VW-tVadJk2a5|@zL@GhUTyI(!GVaa;vBYw zd0F?H299*L)8LdI8^e86!Pc-Sz%}-8+dbBcc~;MD%HmhzNP#cH4ixMkhx|Hj_&#SyZJh|s^#r+K0WNi_3B|CPTz}tbUo}N((8J$kFJM( zIDIen(e+{Mo zZL5uUE^dMS@lisc`=vib%whv$=UZjLT@oSCC*w2O28!8m6~7oFY0 z)ua8GYn0EsMtSNr$_uYiUdhYptgbWp>UcSwNpn`d^BVl$y$1hwUcQMjSM;zCZ&y&P zUmz%o)e5zjhi5IQCWD^NO^%fzqva-wSiAK2)Yd-J@+HQrYEmXbo7kQnCqZh1Ul7q(A^8V-`8Ke-5sDi zc^z~ILH9AIw%c(X?Z$%c!Ru%@8+65-j{K2bQoqb9V}7&% z<6e(&H46|v;vd8Fp@2BT?LU#{HGmrAhx5D-AkKUHd-D8W@OvC(_x}x$_?-pBxp4ne zJbx6Bj`kk}yb0y|dH$b(QOLi}^9_Jh{~184zlB3OKTUKS0I8ikp3ej%IhOMLt$-xw z%{)H~ko1_&^HTvyPkc0ko~fJpJI0_qs|O^y z2YGn~&#&kCJU|>{9eNkXCvto=hgv{tZyYc8<#-h!@xP2XOy%bQshv(hlJhVimH&&E z@8;#t^YSNnc_q(p1SCEMfW#+*?g`>40Yeb%3V&#zGZ^MK?Rr+NNMK=O-2Jii~%5Bb*t zV?h5hAlc*ZfKYj;ndb{Q%m$?Xy#tW!l?VuXCC=gHGXTl%Qvu07{(xkMVSq&E&daZY z2%&c9Wk72093b&K1vmllYo7lMknC#V`4T|lQw&J;Rs)hesXV`c!?_%<10=p$K&m&9 zmyZI(zoG6t|0{$ce&+#+A3fhi^$r74y?^uaRzRxv63;)u;lqGbuN;u-tplWbIe{}1bX_PUfBl}rZ#eu6kmy0m&cd1Ck%c0aE>$fK-1PAk_~9r1~QO zss3O@c^@FPvl5WT*>ax03y{W{ z1`z!-vlbA~wIn8?9q8$<2b_j!Ud!_uo>%j{!1Gn*>O7Qviu>A|L=gx2&qiIKp!`s#-uikEN;t#Pc62Ga%MLs$xJq`r)3( zA&pDww3S?^GQe-_G%EfLM~LtQ_CO@r{5Ocd7=CujlwW5vpoA z9p5Nrhurj>BLMHGou4&GVi-Zvw=cpN#{QG5;riKr?;>X&l!>IQ(-rbC|-Rok`;z+UQ9)R*=Hp5XkX`~Sr}FWv7?<9X@+{u`c`?&s;df5cC^ zf4`HrC*7~pbIVjN-Jh56a_N2?UtVJ6(*3uAoCSfljvjWyMbF<;UWedA*T+1c$MXX@ zy_x6lk?Qk2y?c%7ck+BP&+8E6=!)QZ4R3EM$%Ba?$yY2tMox{o?bIQ-=q1oT&_P3v zh3hf2Hwv~kp$=W0Jg?<>0#xqH^E9X^ujhGMms4KH^Lx-9eKaF+dE?z~)j=tb6wcxfhGaM6ZuIJDeo+an6hLbT~XIjTPxAHqRH>56bbT?V|<O+cd2mAV<%j$lx zsrN>E96auwwA-27KFN&I)8^6FAtHuXW^O({$C4hmsu0g*L^C@@GkZtdyC%Au>R^0b zBcNL)nXk@ve13%w)NW_zg*irJvN-W47t&9iVKh3}BO=`oeq-%2CUk0~PGi5c_M|3M zt3@`9{Y5$=B0{5y3J(txY49fL_yzWd3Kr2D0}@kL;X^n1$r)OmPB%RxbXlq{YWcKf zsj2B{q2Xz|sOeGDbfFpP(?fF6G`l|j6F)X&C!_ZW(Ul|uK|5Z2->>>+ z1??a7xH!LpHR$pDjO7J#epb#;s%z%_lE6>2D0{7vjW6eygQt?{{U5Mrcl)(*e(TBT zxT?U<@xpCEw@Z>QBb%h7caOvx78&d$CSJda3*$Le)ORuD!#*F~mhn3(u@2{l?;aHt zIMcU1SfrEeSF08Ib8z6|N`CppfQ4I;nG3ly~P z)#Kv!%gfI#%+1a!D3tSC40-61oYr@i$WOmeA&~8`1tAqNI>-KS#xIlelj1=z=a&S2 z+@vyo%d!g7a?>*ycN)L+88V&$AbYXvtO&H=C%HB+=?36`e8niDd+-}CN->w$(oR)e zgCFx3+gIA;_WLL2C+WKZ{A8C*Upju2npTJ>Vc2>$IU&}OzK!$iL|~$;3jD}l7Q=pg zC{wrCuH@v5%;e?y6iV48A0G`^5|BeL^1r`G^HAY)X zr$K)&V8arHa2k73sAro)XzzmlQ~XQz30MXoJIdGcznk=oRim!aiODJ7EvpN_DY^oz%L6K06U!(vm zzZ$N7fm)X_XQGzLas>H=YEn_Sxq8N!n=P(m5~^8%GhF=)JmwP*R_o^KA!AT;zgUy8 z@uq5~>KOw}7S{ocKH?Qt{4Et*I!tBzeD5+WF)TIQZAf0)N(zaJSpEY}n?ZUNKdgX7 z&BoIv%P3Q|TN{3mFj?l1Vrx(=YDHYc+GLJ}NhYd3b1x}g9Wf4MP?Fdfu6_=LHE$Gc*%F1c8zx2LbsuxquBd)Pv}%BRm0sEVmYFIPG7s+1uDY z7oeo)T};8N%#8LtQ`p{vC1;vIo@n_v(Xubz@^6!6V`D;fj@nd>A8o+K^2OCpO_sR! z1j}z%KaIESPq2JXa9@JuDl2G9u$*U!Cf?U#pU0yYt0Rihbb=*3DADpuf+fca&B!kj zYTRC!gcp%EVnzwIf|03uX?wioOVJXNl zRBvqJMiBL*ik&vKDRF0%St}Xm8yL(=n9HV`y-7G0B{HmeDi~>u6B5W| z8SoZ~W3tTkG}Um_T(v#vi-CZ?g&`9x8#FLxK@b@;2R(5f#<1Ba9cVP%C^yD_R7ql0 zelu0y+Ah(vUS*wWs@`j&BU_(}I#qA1f-2P;&GdI~F)KkLkCS}Qb=cS-S%)--jo9Bd z_P37xg$aPK$KR5DWO0X~hDZPl%Q#uSWe9m(2{u_ijJI6jg9v`ejPV}27YQ(muemo! z&uYRe5nl>N##i4PqzV0%jB~r1RAg@S!+8uHlVxcm6$f*7Fjd3BBYqf7rehX?v^F<_ z=g$0V3>8JtOBAW7HNHAFNGpzmHBE`tg+V$|3tlPFa+=()I^tZJ%^ zEb@xJ0^257x?t~MyC+`lWbSs`!gveV{wKbsNN=jyAi9&OtW^_VU8H&2gAG&BJL9YG zLpN|&K}L&lUVWbqvk8LiQX4y(18jV%H)tHEfDOUqxYZl9BG5r7hq?|kstKNNLQln8 zU^=dd=>7XdjhL&k0EU29YqBU=U^7{ah$JG~Vnig7lD_fP_iNaoF=|ZJaqS>P<7vUn zYzQ!jt|Eh0T2|3))t+xdP8ux79pFXrEXhDR_@KX-DpMTyepUfKzdQXn_!Qn z;Ljs{1EaH*1`9c#(NLgKg2a1#MFO=k)(&D#V7Pi%3LE0E{GKfo$W1X>Ih0Zq z7nd{4&WABZSSc7IeN~*Cr4@-yPWvQXb|y2ylGvU|Ya>L(zc@1{;$dyrN5x zh{N1PV}p_nkTw8<*;ZR<8v)>oB)T|PPbLa@9GhW&M8Iq_S-u2=MA*x|kh3++B~KI; zLHLan%|frGreI{Rg4R2LgoqRoP1T8Qto&PPMv7=bDU;h)ON>9SF+7BIz{6KDoiWe8 z3SJS966XW1L5LXOfu#%e4dO1=2?>_p6D%3lL`x^u7fo1SbYn!lDoTJb)R0(l76vK2 zowLTUGGBXGQP37wDi#`85r=SFEXHI>wGA366|onE=n{mcndF8PuezD&IVxuXjupXH zeE7D~1dX*9Dr07)Ht`2*FzR3YE!&qV8+OcV*wS3<=qVqgFIi8Ed~23AURy(iIE-`n z5I#R`!Kh@;#X5&6;SeJ*Vr_b1XhH|(;xx@^Nj}?3TMP(m5fDr)7+gI@Ly%U_y@Ucb zHXKK5FXR7zGVn2DXR?9yr!3%NxWUm87HKs#0>_WKjpFV-s6;U%hrOglFa>PU1rjSx z`jr2Oo|ih7tw6pQ0R-IFg}E=*b)Udp;l~*1ze~O)@j8%L@oR$RXPc8I)U0WUx482~ z?QALb$6IDgu^&mSBDny_kdsb9i|9w1NSW_a7u%fFmldApB0_5l>^5b-7GvChutN*3 z36?)7_)8NMnTh!aP$d4jpB74*Ugu!q>osyVtOsb2IQW-MMt>?`1AvVRH0g8@P>6@C zsY8F|lkqXqj5w*H0SZ&q5w}w&~$xEd^i4WkztK?8bzS_m)@ zd1s}z!}(G9o} zsE%+)`!IriF!E}f)5-V}+RY%+?Rx(*yy78;1LJK~( zV<+gT&OecwVASHj2LIJQ6O=X=gCbeoR zh@A;H7zx!HMCteS9C#|geXm+7j{rcYJOu=aT@q})#0b1sj2!6Y8>V% zxB67j>0A*>GIX<9D~u0fQJP0c9~2ub_CeFAh$}z2W(1ld>w=WT5pVOWndVg$wZO>Y zhq#h{gVb_pj+~XrMq+edfsny1enD@&!^6qqKSPkS`lt>4ttxXnnze~bMIhdk6fW* zEGqoe-`?BY_*{*er!**s^U1u9+fAaXX}33PsUY)^%T-4dQp>h|H|{wVR-f`HbR8U! zn3DsVXlzx~vz*%sR;hxF31b+<9CZeAt=PQ>C3#F-=t)y`g_hxKSk)*`<~!89PM{?tO=)9HJA7sO|1WEO0@dH%Jh84et6Rf^WNbAd5Hl zUW~uGFCpeR@?oFS8|}lidM^nLgBeM`nnyI0s}ZeAT_p}V7_QNHNXf_J^6O`;=C4<}&)nU=imt8zUCT$7)y?d?D%E z%J2LURUv;Gel?|A#_91IlR7cR4Lz#TCfWEZ{p6+j?`ve5^38FappkulavmCKfkATklp9OS^d9tB} z+FXt5h;U*c3+Uvil2OSunkZjkO|bmOryM^s)3740_F-ivHSxOu@v3%HFqzm`!w7=) z$-6O-1O{q|*u)1CwImIs%Pa^_?!<_|F9o=Lu-)O{7VBzZQBOSX{&;MScn(|j_9|@f z(4_t-(6;DM#RfGj$|r4#c-S!&2OrXO%OdV2n)lME6AB0X|TkLBF%WR*nQRJ(C!6W`j7FAr3~2Ule-GUQbCW3cu4N%JJm{@|^68E`g!N0! zPhy~`Pkx6EuI$d{XT&-ojEb#-Kq?Zmz0qUd-YeH}{?uL&*66c1Oj z-&NToxfrh56!5L1uaQVtB8qN9edAO5CjQzcQ!6rX+U<}CZo@iDjL^K_`TRveI+l_0 zm~NlWp;jYG&=7trLc+m&Z84UDwLb`1YbEfc(;g3>_T{t2zw zMTtP9*3(|kQDm@?6t8p0Abf}=|3T(&Qpx`%%)-G-AvHTYH%*}A?OBDHv3SAu3Y-Ow zwqX|1f#_%fhh~;%tyq(v!Or~6#|g94LVSFsK)`|NJVSQ29G#vaGR8s7c{uP8Eg+GY zT8zWGY2rJ+Z7htrYgQFT3#-?#H(k$PzAz)dC<{k-^D_$a=vCW`au-6VG>E~N+#;ik z7P50!%wDr9EjDA>nibJ_QFj53BjRXuMl=pcLh$?y=)=AQWowc&?d2$EZXQ!BdS%AC zq|_`li6bRwe0FX=d$M8Snq>uPc>4?lmQ2+-|DJQomgPoyGXPWdyOedzL-c8HQNL!h;DhcQI#G~2;yr;+m z@l6}a!TR9WlZCCWg5KCqo7#YrM6eU@Zv3d<&@-C#&`?9l9#U?_5 zt*?6NYRPB%5a?Pg`lu@D!j4>vMy6hYy=dSFsrmV->qsSIDvm1AnPjnG*1EV=IDAjT zbkzzfUsy=vT6E`vXjU1HC7uKq#B=;v1#vVCG2+;<#c1Xc%>R*;9euWG6q`ZAm34k} zR>49z*RtGV2*F?FpEPeFiHnvvZ@X99M4!*vunC1wAw3krYex%GEr|~rpktp1E7{8h zI1Ao~pJR^`a>QEbFE$e0gV>?WA&GYI0{7x|fOGLE!~Es!!2&W^B0ZRpZ$nUEMB4~c zpfAi#%grXYqZf?>h)+_$bkdg#coB`M*V%-#72W&;O`v(^`6EXS;onS|4mY3qbF zc{rXaiiO@G2kOODyFH#k6BQ}S0~HIz_7m?c{6-7xLwr&wOO{9H402+8un zAkOO2`RR}NIqFY2{Eov*9C~X+`XCM`a~Q$ltsE}ra6N|)a=44bvmCn9A_P|)hZ!8^ zb6CpZLma-wVH<}X9G>EEz-W;lojsu|mc!dQe2K#kIQ*K!3mk^ycnMua99D8z!(ly# zA9DC9hhK8|BZt3m=#Dc_bdBXOfo*26{9O6`Ii1?|7 zkgTlqDa>1@U>HkFDrb)z@uw^_|I=~3RA5UX&8m#G8rHA|(Mux_?$MgD`pFvc;T9yF zK0x!oCQ-3|g zw^ff0jid|<8Kc9(g(4jY`c&$=1MSl8($7xChj`Kh zJXSwJlfEW{v=Ln;t3b0VSCfsekw6_5YD4;L{(2+ue<=(?c>$Lw4Ku}xj1X}aU3AOj z1&&kcqA|!j&ZmnUTw?Nq$wm~)CRlkWM~!Z4Y8L-TPaZdU-sIbQ#C`HhX;P3^beK}4 z>W<{hz78u+CaEod%bJWe8KWUFwJIl-&n-P#=4&XaSvfrqN&syhVp@7Gg-<^=0;&98 z6GYTBTZx#E%9l|NmMZ4R6k7kM7M=E~zI9@4xKrnZxcSY;4lPm^Ls3>HXk%Vq{iWxLzBr(}zal z(Z@(i3P_7kEQ&^v9@7Sjkkn&}(1&a7ITQ)Acn!`Bj3mBP`L-fnd<%znZ@>o@@5BOs z=Em+7^`oWx1k6f;LqOtWG<%7{k{D9XSrkHr?r6UFcetl!lbyskf~icJLus@E4Q~pE zDY`cpuCq5!MK^_OZBn4>O%RHk;BGRgUQQ2keb1IwQ$t}AYcLRs?42T0!!cCCK;3#@ zjK9omvgjzMlx`TY#-#NZex(&Q^7Wqd+?eERn>hZTvH`G}<6C9;hdBO28U9(0|6GRu z7ssEJ;lJbfUu5{R9RH^bf29|^_gGOAxn9!!fM=+rsR#o(yXdMQ_<%oYD1=JP-uhfi_Xz~L?q-{SBCSzfZI zB$p(I)bCP1OZ_VKqttH_jO2EZ`a$9&*;&dPsqUXp#*bNein z^}|Y@@2x()pOEGb`TUV5^GB(@-XO_=qdbCipDXDp(FbY7)XOsYr2Aeueh1fQkBt61 zj{mm|ug0@cbRCu9=WzT58Ga?l)5}*KFK>;QlgrbaeRpwsFBu={epn;J)AMF@N&X|| z1mOjapDv?s=Xkk1(*3vG&fjqQI2j-5eqT<1t`~ag{$EZn-Dk`3(tWnPT@4hZ@hM#{ z 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

A=PmKR0 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

BNv^rF@KqO8LN)Aa?1&c-p1%;`?fiLQPI) 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%0D>=EYpQZ_m#k+~`ya25m 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 M3gD#wz4)KTZv%f;;AV3m{yA{c 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

YN*Mx8A$1)GvWY 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 ^zQ;G{d+)4|97AsSPP`|H9$=iOa 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�|R^eKtP~FLkIR_=|IuccAwo06wT+z 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 z z(er`0v?Sz;XiR7HR3N(C1ha_71weE~3G+lW&H<9#1R%PCgm@8+aX=-)CJ~K1P^cdu z@uO}9yVE!q_BYl5U*Wii$v!J#A`@^AP!C)IP1YNZp3wI&ia)jG~#NPs32CQS@ zT3`;s)ht{AT!OHLg>!*P2%A|r5jY=V6ASBs_aMx(unssCVStcdJ1`Gnst3pt^3Mh~ zA)E!Q17-pb0v`m{0+#}*ycxi1U^TluXe=U&me-%h_2zg*4kkV5;rGFU+;9g)z z@^o;LN(uuv1G`ZFPXIfC1;BP-A&}bZ7GNFlNnj1I0$2^)1gru+4=e-50WHACfd#;F zU@kBgm=0VEGy~@WsU1%SCITM=#sfD3O+f4e)Ea;rfO=pV&>uJn$OB7(9>DcL9dH6r z16&8>fF;1|DDOyM7m)Jp1Qr9^frEjqK(tlCzlwlO2oD6-0Urh)1XBIMh9pw(FOpM@ zFx77^@KInoumBhj^aGlJl->Yb2-E{zfc`+rj|Y;!cmNeZ9gyT|fUAK3p}sB16n`o+ zLlZ-uAw}X()ee5bRv@ZU)dKt{R{UO<-IS^2?eY#eDDqahOx_HXk6b*bl|sqK*a#Lymr9;0c!cB0bTg*7|;ny+kkfb9#Yq-m5M#;TJ?Ul zTwbBBM5s%3O?6$RmRD)EYt-@zO{GRIFVmFcx7?}133+Q;abBls)X3xqHFY>Ys5yk+ zW~UY>nY_`d89a?nO*lW~)QIy#PIXR7MaiJDLFI#x@1S=4TAWLq@Ge=r!6}oY!dgXw~xS!Mg^dG=sMfMhOR3;{4`d%Mi8v+TiP;TpHYk-%9r? z)WvnTn{IM>t6Lj>o7|e+)bcj>c6YV>q`v&8C3y z@OTPqSbQeQ!+!xa3>+$IJV@Wk;*U@x1;37kFXEi^+at1bS1G*{t^pWC(XkH=i}*bl z|9y}}{L;MFgF_Got&7FGFnxFy7T$*gnN>_5y04@3(!AK$gGBlMjDIikru_6QJelMp zY+&InEIyHiM=^VtSomK|UOWpwP5GgtaEBe}xJ>qdJ_ngT#mwH)Jlt58-#nK76XHky zW)?0We#m=-$s0)dLtZPB_nI@p$n!em&tmpYXW&qkbdCTG5#+of5@t3@%xy*2U(cx zO!0Lr9K-6jiG|-{>04O%3DOVslLWo!@TL4vJ`eEG@hr(ln7({Uhl==7o&xaEk;L+A zW%B;R>iY_l=fva{u=KZ)K9Dz$h3{kXq}C)E$+7qI%hmC6Shtt`K95N8|4w>AZPOa0MV zsz20MJF~}3(iiDZv-AeaAK?xbzCiYYk9)BCrTaxK@@%CGHjdxPUf{pZ_)k!KKpLsP zIYH?WKM?JZjt=ry=#b0gji>yXOp3pS`d|y z&SGILv*#S>Ovgt|ULK35c~au1_o~rR$mG4s!g8kHt1SI5WPk8~%;LAR@?U1*HLSeX zSl9(f{AxE*{?Dv@K`eZL)t`}tY5tY?V_0||=>z)=Vg7oI+B4$kv-sy&`qeC)%=CGL zh5y0IQ_jL~vh+19{46Wa+bleX+2?&0zMb?z{u@~S^u7_w|0fpzGRZ^yK^9-c26@sm()I((VDbQY$0NQ&=Z;pdpV;Xpc4$$ltPKJ%Aj

  • o43=Lw%Wn+T7xH|9 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 ad%WFClI6nPveR9Njx_hUmWOdUuKxibu;2&) literal 0 HcmV?d00001 diff --git a/Til to Code/Pods/FirebaseInstanceID/Frameworks/FirebaseInstanceID.framework/Headers/FIRInstanceID.h b/Til to Code/Pods/FirebaseInstanceID/Frameworks/FirebaseInstanceID.framework/Headers/FIRInstanceID.h new file mode 100755 index 0000000..97777e1 --- /dev/null +++ b/Til to Code/Pods/FirebaseInstanceID/Frameworks/FirebaseInstanceID.framework/Headers/FIRInstanceID.h @@ -0,0 +1,304 @@ +#import + +NS_ASSUME_NONNULL_BEGIN + +@class FIRInstanceIDResult; +/** + * @memberof FIRInstanceID + * + * The scope to be used when fetching/deleting a token for Firebase Messaging. + */ +FOUNDATION_EXPORT NSString *const kFIRInstanceIDScopeFirebaseMessaging + NS_SWIFT_NAME(InstanceIDScopeFirebaseMessaging); + +#if defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0 +/** + * Called when the system determines that tokens need to be refreshed. + * This method is also called if Instance ID has been reset in which + * case, tokens and FCM topic subscriptions also need to be refreshed. + * + * Instance ID service will throttle the refresh event across all devices + * to control the rate of token updates on application servers. + */ +FOUNDATION_EXPORT const NSNotificationName kFIRInstanceIDTokenRefreshNotification + NS_SWIFT_NAME(InstanceIDTokenRefresh); +#else +/** + * Called when the system determines that tokens need to be refreshed. + * This method is also called if Instance ID has been reset in which + * case, tokens and FCM topic subscriptions also need to be refreshed. + * + * Instance ID service will throttle the refresh event across all devices + * to control the rate of token updates on application servers. + */ +FOUNDATION_EXPORT NSString *const kFIRInstanceIDTokenRefreshNotification + NS_SWIFT_NAME(InstanceIDTokenRefreshNotification); +#endif // defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0 + +/** + * @related FIRInstanceID + * + * The completion handler invoked when the InstanceID token returns. If + * the call fails we return the appropriate `error code` as described below. + * + * @param token The valid token as returned by InstanceID backend. + * + * @param error The error describing why generating a new token + * failed. See the error codes below for a more detailed + * description. + */ +typedef void (^FIRInstanceIDTokenHandler)(NSString *__nullable token, NSError *__nullable error) + NS_SWIFT_NAME(InstanceIDTokenHandler); + +/** + * @related FIRInstanceID + * + * The completion handler invoked when the InstanceID `deleteToken` returns. If + * the call fails we return the appropriate `error code` as described below + * + * @param error The error describing why deleting the token failed. + * See the error codes below for a more detailed description. + */ +typedef void (^FIRInstanceIDDeleteTokenHandler)(NSError *error) + NS_SWIFT_NAME(InstanceIDDeleteTokenHandler); + +/** + * @related FIRInstanceID + * + * The completion handler invoked when the app identity is created. If the + * identity wasn't created for some reason we return the appropriate error code. + * + * @param identity A valid identity for the app instance, nil if there was an error + * while creating an identity. + * @param error The error if fetching the identity fails else nil. + */ +typedef void (^FIRInstanceIDHandler)(NSString *__nullable identity, NSError *__nullable error) + NS_SWIFT_NAME(InstanceIDHandler); + +/** + * @related FIRInstanceID + * + * The completion handler invoked when the app identity and all the tokens associated + * with it are deleted. Returns a valid error object in case of failure else nil. + * + * @param error The error if deleting the identity and all the tokens associated with + * it fails else nil. + */ +typedef void (^FIRInstanceIDDeleteHandler)(NSError *__nullable error) + NS_SWIFT_NAME(InstanceIDDeleteHandler); + +/** + * @related FIRInstanceID + * + * The completion handler invoked when the app identity and token are fetched. If the + * identity wasn't created for some reason we return the appropriate error code. + * + * @param result The result containing an identity for the app instance and a valid token, + * nil if there was an error while creating the result. + * @param error The error if fetching the identity or token fails else nil. + */ +typedef void (^FIRInstanceIDResultHandler)(FIRInstanceIDResult *__nullable result, + NSError *__nullable error) + NS_SWIFT_NAME(InstanceIDResultHandler); + +/** + * Public errors produced by InstanceID. + */ +typedef NS_ENUM(NSUInteger, FIRInstanceIDError) { + // Http related errors. + + /// Unknown error. + FIRInstanceIDErrorUnknown = 0, + + /// Auth Error -- GCM couldn't validate request from this client. + FIRInstanceIDErrorAuthentication = 1, + + /// NoAccess -- InstanceID service cannot be accessed. + FIRInstanceIDErrorNoAccess = 2, + + /// Timeout -- Request to InstanceID backend timed out. + FIRInstanceIDErrorTimeout = 3, + + /// Network -- No network available to reach the servers. + FIRInstanceIDErrorNetwork = 4, + + /// OperationInProgress -- Another similar operation in progress, + /// bailing this one. + FIRInstanceIDErrorOperationInProgress = 5, + + /// InvalidRequest -- Some parameters of the request were invalid. + FIRInstanceIDErrorInvalidRequest = 7, +} NS_SWIFT_NAME(InstanceIDError); + +/** + * A class contains the results of InstanceID and token query. + */ +NS_SWIFT_NAME(InstanceIDResult) +@interface FIRInstanceIDResult : NSObject + +/** + * An instanceID uniquely identifies the app instance. + */ +@property(nonatomic, readonly, copy) NSString *instanceID; + +/* + * Returns a Firebase Messaging scoped token for the firebase app. + */ +@property(nonatomic, readonly, copy) NSString *token; + +@end + +/** + * Instance ID provides a unique identifier for each app instance and a mechanism + * to authenticate and authorize actions (for example, sending an FCM message). + * + * Once an InstanceID is generated, the library periodically sends information about the + * application and the device where it's running to the Firebase backend. To stop this. see + * `[FIRInstanceID deleteIDWithHandler:]`. + * + * Instance ID is long lived but, may be reset if the device is not used for + * a long time or the Instance ID service detects a problem. + * If Instance ID is reset, the app will be notified via + * `kFIRInstanceIDTokenRefreshNotification`. + * + * If the Instance ID has become invalid, the app can request a new one and + * send it to the app server. + * To prove ownership of Instance ID and to allow servers to access data or + * services associated with the app, call + * `[FIRInstanceID tokenWithAuthorizedEntity:scope:options:handler]`. + */ +NS_SWIFT_NAME(InstanceID) +@interface FIRInstanceID : NSObject + +/** + * FIRInstanceID. + * + * @return A shared instance of FIRInstanceID. + */ ++ (instancetype)instanceID NS_SWIFT_NAME(instanceID()); + +/** + * Unavailable. Use +instanceID instead. + */ +- (instancetype)init __attribute__((unavailable("Use +instanceID instead."))); + +#pragma mark - Tokens + +/** + * Returns a result of app instance identifier InstanceID and a Firebase Messaging scoped token. + * param handler The callback handler invoked when an app instanceID and a default token + * are generated and returned. If instanceID and token fetching fail for some + * reason the callback is invoked with nil `result` and the appropriate error. + */ +- (void)instanceIDWithHandler:(FIRInstanceIDResultHandler)handler; + +/** + * Returns a Firebase Messaging scoped token for the firebase app. + * + * @return Returns the stored token if the device has registered with Firebase Messaging, otherwise + * returns nil. + */ +- (nullable NSString *)token __deprecated_msg("Use instanceIDWithHandler: instead."); + +/** + * Returns a token that authorizes an Entity (example: cloud service) to perform + * an action on behalf of the application identified by Instance ID. + * + * This is similar to an OAuth2 token except, it applies to the + * application instance instead of a user. + * + * This is an asynchronous call. If the token fetching fails for some reason + * we invoke the completion callback with nil `token` and the appropriate + * error. + * + * This generates an Instance ID if it does not exist yet, which starts periodically sending + * information to the Firebase backend (see `[FIRInstanceID getIDWithHandler:]`). + * + * Note, you can only have one `token` or `deleteToken` call for a given + * authorizedEntity and scope at any point of time. Making another such call with the + * same authorizedEntity and scope before the last one finishes will result in an + * error with code `OperationInProgress`. + * + * @see FIRInstanceID deleteTokenWithAuthorizedEntity:scope:handler: + * + * @param authorizedEntity Entity authorized by the token. + * @param scope Action authorized for authorizedEntity. + * @param options The extra options to be sent with your token request. The + * value for the `apns_token` should be the NSData object + * passed to the UIApplicationDelegate's + * `didRegisterForRemoteNotificationsWithDeviceToken` method. + * The value for `apns_sandbox` should be a boolean (or an + * NSNumber representing a BOOL in Objective C) set to true if + * your app is a debug build, which means that the APNs + * device token is for the sandbox environment. It should be + * set to false otherwise. If the `apns_sandbox` key is not + * provided, an automatically-detected value shall be used. + * @param handler The callback handler which is invoked when the token is + * successfully fetched. In case of success a valid `token` and + * `nil` error are returned. In case of any error the `token` + * is nil and a valid `error` is returned. The valid error + * codes have been documented above. + */ +- (void)tokenWithAuthorizedEntity:(NSString *)authorizedEntity + scope:(NSString *)scope + options:(nullable NSDictionary *)options + handler:(FIRInstanceIDTokenHandler)handler; + +/** + * Revokes access to a scope (action) for an entity previously + * authorized by `[FIRInstanceID tokenWithAuthorizedEntity:scope:options:handler]`. + * + * This is an asynchronous call. Call this on the main thread since InstanceID lib + * is not thread safe. In case token deletion fails for some reason we invoke the + * `handler` callback passed in with the appropriate error code. + * + * Note, you can only have one `token` or `deleteToken` call for a given + * authorizedEntity and scope at a point of time. Making another such call with the + * same authorizedEntity and scope before the last one finishes will result in an error + * with code `OperationInProgress`. + * + * @param authorizedEntity Entity that must no longer have access. + * @param scope Action that entity is no longer authorized to perform. + * @param handler The handler that is invoked once the unsubscribe call ends. + * In case of error an appropriate error object is returned + * else error is nil. + */ +- (void)deleteTokenWithAuthorizedEntity:(NSString *)authorizedEntity + scope:(NSString *)scope + handler:(FIRInstanceIDDeleteTokenHandler)handler; + +#pragma mark - Identity + +/** + * Asynchronously fetch a stable identifier that uniquely identifies the app + * instance. If the identifier has been revoked or has expired, this method will + * return a new identifier. + * + * Once an InstanceID is generated, the library periodically sends information about the + * application and the device where it's running to the Firebase backend. To stop this. see + * `[FIRInstanceID deleteIDWithHandler:]`. + * + * @param handler The handler to invoke once the identifier has been fetched. + * In case of error an appropriate error object is returned else + * a valid identifier is returned and a valid identifier for the + * application instance. + */ +- (void)getIDWithHandler:(FIRInstanceIDHandler)handler NS_SWIFT_NAME(getID(handler:)); + +/** + * Resets Instance ID and revokes all tokens. + * + * This method also triggers a request to fetch a new Instance ID and Firebase Messaging scope + * token. Please listen to kFIRInstanceIDTokenRefreshNotification when the new ID and token are + * ready. + * + * This stops the periodic sending of data to the Firebase backend that began when the Instance ID + * was generated. No more data is sent until another library calls Instance ID internally again + * (like FCM, RemoteConfig or Analytics) or user explicitly calls Instance ID APIs to get an + * Instance ID and token again. + */ +- (void)deleteIDWithHandler:(FIRInstanceIDDeleteHandler)handler NS_SWIFT_NAME(deleteID(handler:)); + +@end + +NS_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/FirebaseInstanceID/Frameworks/FirebaseInstanceID.framework/Headers/FirebaseInstanceID.h b/Til to Code/Pods/FirebaseInstanceID/Frameworks/FirebaseInstanceID.framework/Headers/FirebaseInstanceID.h new file mode 100755 index 0000000..053ec2b --- /dev/null +++ b/Til to Code/Pods/FirebaseInstanceID/Frameworks/FirebaseInstanceID.framework/Headers/FirebaseInstanceID.h @@ -0,0 +1 @@ +#import "FIRInstanceID.h" diff --git a/Til to Code/Pods/FirebaseInstanceID/Frameworks/FirebaseInstanceID.framework/Modules/module.modulemap b/Til to Code/Pods/FirebaseInstanceID/Frameworks/FirebaseInstanceID.framework/Modules/module.modulemap new file mode 100755 index 0000000..2058956 --- /dev/null +++ b/Til to Code/Pods/FirebaseInstanceID/Frameworks/FirebaseInstanceID.framework/Modules/module.modulemap @@ -0,0 +1,6 @@ +framework module FirebaseInstanceID { + umbrella header "FirebaseInstanceID.h" + export * + module * { export *} + link framework "Security" + link framework "SystemConfiguration"} diff --git a/Til to Code/Pods/FirebaseInstanceID/README.md b/Til to Code/Pods/FirebaseInstanceID/README.md new file mode 100755 index 0000000..25fe219 --- /dev/null +++ b/Til to Code/Pods/FirebaseInstanceID/README.md @@ -0,0 +1,10 @@ +# InstanceID SDK for iOS + +Instance ID provides a unique ID per instance of your apps and also provides a +mechanism to authenticate and authorize actions, like sending messages via +Firebase Cloud Messaging (FCM). + + +Please visit [our developer +site](https://developers.google.com/instance-id/) for integration instructions, +documentation, support information, and terms of service. diff --git a/Til to Code/Pods/GTMSessionFetcher/LICENSE b/Til to Code/Pods/GTMSessionFetcher/LICENSE new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/Til to Code/Pods/GTMSessionFetcher/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/Til to Code/Pods/GTMSessionFetcher/README.md b/Til to Code/Pods/GTMSessionFetcher/README.md new file mode 100644 index 0000000..478efde --- /dev/null +++ b/Til to Code/Pods/GTMSessionFetcher/README.md @@ -0,0 +1,23 @@ +# Google Toolbox for Mac - Session Fetcher # + +**Project site**
    +**Discussion group** + +[![Build Status](https://travis-ci.org/google/gtm-session-fetcher.svg?branch=master)](https://travis-ci.org/google/gtm-session-fetcher) + +`GTMSessionFetcher` makes it easy for Cocoa applications to perform http +operations. The fetcher is implemented as a wrapper on `NSURLSession`, so its +behavior is asynchronous and uses operating-system settings on iOS and Mac OS X. + +Features include: +- Simple to build; only one source/header file pair is required +- Simple to use: takes just two lines of code to fetch a request +- Supports upload and download sessions +- Flexible cookie storage +- Automatic retry on errors, with exponential backoff +- Support for generating multipart MIME upload streams +- Easy, convenient logging of http requests and responses +- Supports plug-in authentication such as with GTMAppAuth +- Easily testable; self-mocking +- Automatic rate limiting when created by the `GTMSessionFetcherService` factory class +- Fully independent of other projects diff --git a/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcher.h b/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcher.h new file mode 100644 index 0000000..56eb1ca --- /dev/null +++ b/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcher.h @@ -0,0 +1,1309 @@ +/* Copyright 2014 Google Inc. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// GTMSessionFetcher is a wrapper around NSURLSession for http operations. +// +// What does this offer on top of of NSURLSession? +// +// - Block-style callbacks for useful functionality like progress rather +// than delegate methods. +// - Out-of-process uploads and downloads using NSURLSession, including +// management of fetches after relaunch. +// - Integration with GTMAppAuth for invisible management and refresh of +// authorization tokens. +// - Pretty-printed http logging. +// - Cookies handling that does not interfere with or get interfered with +// by WebKit cookies or on Mac by Safari and other apps. +// - Credentials handling for the http operation. +// - Rate-limiting and cookie grouping when fetchers are created with +// GTMSessionFetcherService. +// +// If the bodyData or bodyFileURL property is set, then a POST request is assumed. +// +// Each fetcher is assumed to be for a one-shot fetch request; don't reuse the object +// for a second fetch. +// +// The fetcher will be self-retained as long as a connection is pending. +// +// To keep user activity private, URLs must have an https scheme (unless the property +// allowedInsecureSchemes is set to permit the scheme.) +// +// Callbacks will be released when the fetch completes or is stopped, so there is no need +// to use weak self references in the callback blocks. +// +// Sample usage: +// +// _fetcherService = [[GTMSessionFetcherService alloc] init]; +// +// GTMSessionFetcher *myFetcher = [_fetcherService fetcherWithURLString:myURLString]; +// myFetcher.retryEnabled = YES; +// myFetcher.comment = @"First profile image"; +// +// // Optionally specify a file URL or NSData for the request body to upload. +// myFetcher.bodyData = [postString dataUsingEncoding:NSUTF8StringEncoding]; +// +// [myFetcher beginFetchWithCompletionHandler:^(NSData *data, NSError *error) { +// if (error != nil) { +// // Server status code or network error. +// // +// // If the domain is kGTMSessionFetcherStatusDomain then the error code +// // is a failure status from the server. +// } else { +// // Fetch succeeded. +// } +// }]; +// +// There is also a beginFetch call that takes a pointer and selector for the completion handler; +// a pointer and selector is a better style when the callback is a substantial, separate method. +// +// NOTE: Fetches may retrieve data from the server even though the server +// returned an error, so the criteria for success is a non-nil error. +// The completion handler is called when the server status is >= 300 with an NSError +// having domain kGTMSessionFetcherStatusDomain and code set to the server status. +// +// Status codes are at +// +// +// Background session support: +// +// Out-of-process uploads and downloads may be created by setting the fetcher's +// useBackgroundSession property. Data to be uploaded should be provided via +// the uploadFileURL property; the download destination should be specified with +// the destinationFileURL. NOTE: Background upload files should be in a location +// that will be valid even after the device is restarted, so the file should not +// be uploaded from a system temporary or cache directory. +// +// Background session transfers are slower, and should typically be used only +// for very large downloads or uploads (hundreds of megabytes). +// +// When background sessions are used in iOS apps, the application delegate must +// pass through the parameters from UIApplicationDelegate's +// application:handleEventsForBackgroundURLSession:completionHandler: to the +// fetcher class. +// +// When the application has been relaunched, it may also create a new fetcher +// instance to handle completion of the transfers. +// +// - (void)application:(UIApplication *)application +// handleEventsForBackgroundURLSession:(NSString *)identifier +// completionHandler:(void (^)())completionHandler { +// // Application was re-launched on completing an out-of-process download. +// +// // Pass the URLSession info related to this re-launch to the fetcher class. +// [GTMSessionFetcher application:application +// handleEventsForBackgroundURLSession:identifier +// completionHandler:completionHandler]; +// +// // Get a fetcher related to this re-launch and re-hook up a completionHandler to it. +// GTMSessionFetcher *fetcher = [GTMSessionFetcher fetcherWithSessionIdentifier:identifier]; +// NSURL *destinationFileURL = fetcher.destinationFileURL; +// fetcher.completionHandler = ^(NSData *data, NSError *error) { +// [self downloadCompletedToFile:destinationFileURL error:error]; +// }; +// } +// +// +// Threading and queue support: +// +// Networking always happens on a background thread; there is no advantage to +// changing thread or queue to create or start a fetcher. +// +// Callbacks are run on the main thread; alternatively, the app may set the +// fetcher's callbackQueue to a dispatch queue. +// +// Once the fetcher's beginFetch method has been called, the fetcher's methods and +// properties may be accessed from any thread. +// +// Downloading to disk: +// +// To have downloaded data saved directly to disk, specify a file URL for the +// destinationFileURL property. +// +// HTTP methods and headers: +// +// Alternative HTTP methods, like PUT, and custom headers can be specified by +// creating the fetcher with an appropriate NSMutableURLRequest. +// +// +// Caching: +// +// The fetcher avoids caching. That is best for API requests, but may hurt +// repeat fetches of static data. Apps may enable a persistent disk cache by +// customizing the config: +// +// fetcher.configurationBlock = ^(GTMSessionFetcher *configFetcher, +// NSURLSessionConfiguration *config) { +// config.URLCache = [NSURLCache sharedURLCache]; +// }; +// +// Or use the standard system config to share cookie storage with web views +// and to enable disk caching: +// +// fetcher.configuration = [NSURLSessionConfiguration defaultSessionConfiguration]; +// +// +// Cookies: +// +// There are three supported mechanisms for remembering cookies between fetches. +// +// By default, a standalone GTMSessionFetcher uses a mutable array held +// statically to track cookies for all instantiated fetchers. This avoids +// cookies being set by servers for the application from interfering with +// Safari and WebKit cookie settings, and vice versa. +// The fetcher cookies are lost when the application quits. +// +// To rely instead on WebKit's global NSHTTPCookieStorage, set the fetcher's +// cookieStorage property: +// myFetcher.cookieStorage = [NSHTTPCookieStorage sharedHTTPCookieStorage]; +// +// To share cookies with other apps, use the method introduced in iOS 9/OS X 10.11: +// myFetcher.cookieStorage = +// [NSHTTPCookieStorage sharedCookieStorageForGroupContainerIdentifier:kMyCompanyContainedID]; +// +// To ignore existing cookies and only have cookies related to the single fetch +// be applied, make a temporary cookie storage object: +// myFetcher.cookieStorage = [[GTMSessionCookieStorage alloc] init]; +// +// Note: cookies set while following redirects will be sent to the server, as +// the redirects are followed by the fetcher. +// +// To completely disable cookies, similar to setting cookieStorageMethod to +// kGTMHTTPFetcherCookieStorageMethodNone, adjust the session configuration +// appropriately in the fetcher or fetcher service: +// fetcher.configurationBlock = ^(GTMSessionFetcher *configFetcher, +// NSURLSessionConfiguration *config) { +// config.HTTPCookieAcceptPolicy = NSHTTPCookieAcceptPolicyNever; +// config.HTTPShouldSetCookies = NO; +// }; +// +// If the fetcher is created from a GTMSessionFetcherService object +// then the cookie storage mechanism is set to use the cookie storage in the +// service object rather than the static storage. Disabling cookies in the +// session configuration set on a service object will disable cookies for all +// fetchers created from that GTMSessionFetcherService object, since the session +// configuration is propagated to the fetcher. +// +// +// Monitoring data transfers. +// +// The fetcher supports a variety of properties for progress monitoring +// progress with callback blocks. +// GTMSessionFetcherSendProgressBlock sendProgressBlock +// GTMSessionFetcherReceivedProgressBlock receivedProgressBlock +// GTMSessionFetcherDownloadProgressBlock downloadProgressBlock +// +// If supplied by the server, the anticipated total download size is available +// as [[myFetcher response] expectedContentLength] (and may be -1 for unknown +// download sizes.) +// +// +// Automatic retrying of fetches +// +// The fetcher can optionally create a timer and reattempt certain kinds of +// fetch failures (status codes 408, request timeout; 502, gateway failure; +// 503, service unavailable; 504, gateway timeout; networking errors +// NSURLErrorTimedOut and NSURLErrorNetworkConnectionLost.) The user may +// set a retry selector to customize the type of errors which will be retried. +// +// Retries are done in an exponential-backoff fashion (that is, after 1 second, +// 2, 4, 8, and so on.) +// +// Enabling automatic retries looks like this: +// myFetcher.retryEnabled = YES; +// +// With retries enabled, the completion callbacks are called only +// when no more retries will be attempted. Calling the fetcher's stopFetching +// method will terminate the retry timer, without the finished or failure +// selectors being invoked. +// +// Optionally, the client may set the maximum retry interval: +// myFetcher.maxRetryInterval = 60.0; // in seconds; default is 60 seconds +// // for downloads, 600 for uploads +// +// Servers should never send a 400 or 500 status for errors that are retryable +// by clients, as those values indicate permanent failures. In nearly all +// cases, the default standard retry behavior is correct for clients, and no +// custom client retry behavior is needed or appropriate. Servers that send +// non-retryable status codes and expect the client to retry the request are +// faulty. +// +// Still, the client may provide a block to determine if a status code or other +// error should be retried. The block returns YES to set the retry timer or NO +// to fail without additional fetch attempts. +// +// The retry method may return the |suggestedWillRetry| argument to get the +// default retry behavior. Server status codes are present in the +// error argument, and have the domain kGTMSessionFetcherStatusDomain. The +// user's method may look something like this: +// +// myFetcher.retryBlock = ^(BOOL suggestedWillRetry, NSError *error, +// GTMSessionFetcherRetryResponse response) { +// // Perhaps examine error.domain and error.code, or fetcher.retryCount +// // +// // Respond with YES to start the retry timer, NO to proceed to the failure +// // callback, or suggestedWillRetry to get default behavior for the +// // current error domain and code values. +// response(suggestedWillRetry); +// }; + + +#import + +#if TARGET_OS_IPHONE +#import +#endif +#if TARGET_OS_WATCH +#import +#endif + +// By default it is stripped from non DEBUG builds. Developers can override +// this in their project settings. +#ifndef STRIP_GTM_FETCH_LOGGING + #if !DEBUG + #define STRIP_GTM_FETCH_LOGGING 1 + #else + #define STRIP_GTM_FETCH_LOGGING 0 + #endif +#endif + +// Logs in debug builds. +#ifndef GTMSESSION_LOG_DEBUG + #if DEBUG + #define GTMSESSION_LOG_DEBUG(...) NSLog(__VA_ARGS__) + #else + #define GTMSESSION_LOG_DEBUG(...) do { } while (0) + #endif +#endif + +// Asserts in debug builds (or logs in debug builds if GTMSESSION_ASSERT_AS_LOG +// or NS_BLOCK_ASSERTIONS are defined.) +#ifndef GTMSESSION_ASSERT_DEBUG + #if DEBUG && !defined(NS_BLOCK_ASSERTIONS) && !GTMSESSION_ASSERT_AS_LOG + #undef GTMSESSION_ASSERT_AS_LOG + #define GTMSESSION_ASSERT_AS_LOG 1 + #endif + + #if DEBUG && !GTMSESSION_ASSERT_AS_LOG + #define GTMSESSION_ASSERT_DEBUG(...) NSAssert(__VA_ARGS__) + #elif DEBUG + #define GTMSESSION_ASSERT_DEBUG(pred, ...) if (!(pred)) { NSLog(__VA_ARGS__); } + #else + #define GTMSESSION_ASSERT_DEBUG(pred, ...) do { } while (0) + #endif +#endif + +// Asserts in debug builds, logs in release builds (or logs in debug builds if +// GTMSESSION_ASSERT_AS_LOG is defined.) +#ifndef GTMSESSION_ASSERT_DEBUG_OR_LOG + #if DEBUG && !GTMSESSION_ASSERT_AS_LOG + #define GTMSESSION_ASSERT_DEBUG_OR_LOG(...) NSAssert(__VA_ARGS__) + #else + #define GTMSESSION_ASSERT_DEBUG_OR_LOG(pred, ...) if (!(pred)) { NSLog(__VA_ARGS__); } + #endif +#endif + +// Macro useful for examining messages from NSURLSession during debugging. +#if 0 +#define GTM_LOG_SESSION_DELEGATE(...) GTMSESSION_LOG_DEBUG(__VA_ARGS__) +#else +#define GTM_LOG_SESSION_DELEGATE(...) +#endif + +#ifndef GTM_NULLABLE + #if __has_feature(nullability) // Available starting in Xcode 6.3 + #define GTM_NULLABLE_TYPE __nullable + #define GTM_NONNULL_TYPE __nonnull + #define GTM_NULLABLE nullable + #define GTM_NONNULL_DECL nonnull // GTM_NONNULL is used by GTMDefines.h + #define GTM_NULL_RESETTABLE null_resettable + + #define GTM_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_BEGIN + #define GTM_ASSUME_NONNULL_END NS_ASSUME_NONNULL_END + #else + #define GTM_NULLABLE_TYPE + #define GTM_NONNULL_TYPE + #define GTM_NULLABLE + #define GTM_NONNULL_DECL + #define GTM_NULL_RESETTABLE + #define GTM_ASSUME_NONNULL_BEGIN + #define GTM_ASSUME_NONNULL_END + #endif // __has_feature(nullability) +#endif // GTM_NULLABLE + +#if (TARGET_OS_TV \ + || TARGET_OS_WATCH \ + || (!TARGET_OS_IPHONE && defined(MAC_OS_X_VERSION_10_12) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_12) \ + || (TARGET_OS_IPHONE && defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0)) +#define GTMSESSION_DEPRECATE_ON_2016_SDKS(_MSG) __attribute__((deprecated("" _MSG))) +#else +#define GTMSESSION_DEPRECATE_ON_2016_SDKS(_MSG) +#endif + +#ifndef GTM_DECLARE_GENERICS + #if __has_feature(objc_generics) + #define GTM_DECLARE_GENERICS 1 + #else + #define GTM_DECLARE_GENERICS 0 + #endif +#endif + +#ifndef GTM_NSArrayOf + #if GTM_DECLARE_GENERICS + #define GTM_NSArrayOf(value) NSArray + #define GTM_NSDictionaryOf(key, value) NSDictionary + #else + #define GTM_NSArrayOf(value) NSArray + #define GTM_NSDictionaryOf(key, value) NSDictionary + #endif // __has_feature(objc_generics) +#endif // GTM_NSArrayOf + +// For iOS, the fetcher can declare itself a background task to allow fetches +// to finish when the app leaves the foreground. +// +// (This is unrelated to providing a background configuration, which allows +// out-of-process uploads and downloads.) +// +// To disallow use of background tasks during fetches, the target should define +// GTM_BACKGROUND_TASK_FETCHING to 0, or alternatively may set the +// skipBackgroundTask property to YES. +#if TARGET_OS_IPHONE && !TARGET_OS_WATCH && !defined(GTM_BACKGROUND_TASK_FETCHING) + #define GTM_BACKGROUND_TASK_FETCHING 1 +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +#if (TARGET_OS_TV \ + || TARGET_OS_WATCH \ + || (!TARGET_OS_IPHONE && defined(MAC_OS_X_VERSION_10_11) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_11) \ + || (TARGET_OS_IPHONE && defined(__IPHONE_9_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_9_0)) + #ifndef GTM_USE_SESSION_FETCHER + #define GTM_USE_SESSION_FETCHER 1 + #endif +#endif + +#if !defined(GTMBridgeFetcher) + // These bridge macros should be identical in GTMHTTPFetcher.h and GTMSessionFetcher.h + #if GTM_USE_SESSION_FETCHER + // Macros to new fetcher class. + #define GTMBridgeFetcher GTMSessionFetcher + #define GTMBridgeFetcherService GTMSessionFetcherService + #define GTMBridgeFetcherServiceProtocol GTMSessionFetcherServiceProtocol + #define GTMBridgeAssertValidSelector GTMSessionFetcherAssertValidSelector + #define GTMBridgeCookieStorage GTMSessionCookieStorage + #define GTMBridgeCleanedUserAgentString GTMFetcherCleanedUserAgentString + #define GTMBridgeSystemVersionString GTMFetcherSystemVersionString + #define GTMBridgeApplicationIdentifier GTMFetcherApplicationIdentifier + #define kGTMBridgeFetcherStatusDomain kGTMSessionFetcherStatusDomain + #define kGTMBridgeFetcherStatusBadRequest GTMSessionFetcherStatusBadRequest + #else + // Macros to old fetcher class. + #define GTMBridgeFetcher GTMHTTPFetcher + #define GTMBridgeFetcherService GTMHTTPFetcherService + #define GTMBridgeFetcherServiceProtocol GTMHTTPFetcherServiceProtocol + #define GTMBridgeAssertValidSelector GTMAssertSelectorNilOrImplementedWithArgs + #define GTMBridgeCookieStorage GTMCookieStorage + #define GTMBridgeCleanedUserAgentString GTMCleanedUserAgentString + #define GTMBridgeSystemVersionString GTMSystemVersionString + #define GTMBridgeApplicationIdentifier GTMApplicationIdentifier + #define kGTMBridgeFetcherStatusDomain kGTMHTTPFetcherStatusDomain + #define kGTMBridgeFetcherStatusBadRequest kGTMHTTPFetcherStatusBadRequest + #endif // GTM_USE_SESSION_FETCHER +#endif + +GTM_ASSUME_NONNULL_BEGIN + +// Notifications +// +// Fetch started and stopped, and fetch retry delay started and stopped. +extern NSString *const kGTMSessionFetcherStartedNotification; +extern NSString *const kGTMSessionFetcherStoppedNotification; +extern NSString *const kGTMSessionFetcherRetryDelayStartedNotification; +extern NSString *const kGTMSessionFetcherRetryDelayStoppedNotification; + +// Completion handler notification. This is intended for use by code capturing +// and replaying fetch requests and results for testing. For fetches where +// destinationFileURL or accumulateDataBlock is set for the fetcher, the data +// will be nil for successful fetches. +// +// This notification is posted on the main thread. +extern NSString *const kGTMSessionFetcherCompletionInvokedNotification; +extern NSString *const kGTMSessionFetcherCompletionDataKey; +extern NSString *const kGTMSessionFetcherCompletionErrorKey; + +// Constants for NSErrors created by the fetcher (excluding server status errors, +// and error objects originating in the OS.) +extern NSString *const kGTMSessionFetcherErrorDomain; + +// The fetcher turns server error status values (3XX, 4XX, 5XX) into NSErrors +// with domain kGTMSessionFetcherStatusDomain. +// +// Any server response body data accompanying the status error is added to the +// userInfo dictionary with key kGTMSessionFetcherStatusDataKey. +extern NSString *const kGTMSessionFetcherStatusDomain; +extern NSString *const kGTMSessionFetcherStatusDataKey; +extern NSString *const kGTMSessionFetcherStatusDataContentTypeKey; + +// When a fetch fails with an error, these keys are included in the error userInfo +// dictionary if retries were attempted. +extern NSString *const kGTMSessionFetcherNumberOfRetriesDoneKey; +extern NSString *const kGTMSessionFetcherElapsedIntervalWithRetriesKey; + +// Background session support requires access to NSUserDefaults. +// If [NSUserDefaults standardUserDefaults] doesn't yield the correct NSUserDefaults for your usage, +// ie for an App Extension, then implement this class/method to return the correct NSUserDefaults. +// https://developer.apple.com/library/ios/documentation/General/Conceptual/ExtensibilityPG/ExtensionScenarios.html#//apple_ref/doc/uid/TP40014214-CH21-SW6 +@interface GTMSessionFetcherUserDefaultsFactory : NSObject + ++ (NSUserDefaults *)fetcherUserDefaults; + +@end + +#ifdef __cplusplus +} +#endif + +typedef NS_ENUM(NSInteger, GTMSessionFetcherError) { + GTMSessionFetcherErrorDownloadFailed = -1, + GTMSessionFetcherErrorUploadChunkUnavailable = -2, + GTMSessionFetcherErrorBackgroundExpiration = -3, + GTMSessionFetcherErrorBackgroundFetchFailed = -4, + GTMSessionFetcherErrorInsecureRequest = -5, + GTMSessionFetcherErrorTaskCreationFailed = -6, +}; + +typedef NS_ENUM(NSInteger, GTMSessionFetcherStatus) { + // Standard http status codes. + GTMSessionFetcherStatusNotModified = 304, + GTMSessionFetcherStatusBadRequest = 400, + GTMSessionFetcherStatusUnauthorized = 401, + GTMSessionFetcherStatusForbidden = 403, + GTMSessionFetcherStatusPreconditionFailed = 412 +}; + +#ifdef __cplusplus +extern "C" { +#endif + +@class GTMSessionCookieStorage; +@class GTMSessionFetcher; + +// The configuration block is for modifying the NSURLSessionConfiguration only. +// DO NOT change any fetcher properties in the configuration block. +typedef void (^GTMSessionFetcherConfigurationBlock)(GTMSessionFetcher *fetcher, + NSURLSessionConfiguration *configuration); +typedef void (^GTMSessionFetcherSystemCompletionHandler)(void); +typedef void (^GTMSessionFetcherCompletionHandler)(NSData * GTM_NULLABLE_TYPE data, + NSError * GTM_NULLABLE_TYPE error); +typedef void (^GTMSessionFetcherBodyStreamProviderResponse)(NSInputStream *bodyStream); +typedef void (^GTMSessionFetcherBodyStreamProvider)(GTMSessionFetcherBodyStreamProviderResponse response); +typedef void (^GTMSessionFetcherDidReceiveResponseDispositionBlock)(NSURLSessionResponseDisposition disposition); +typedef void (^GTMSessionFetcherDidReceiveResponseBlock)(NSURLResponse *response, + GTMSessionFetcherDidReceiveResponseDispositionBlock dispositionBlock); +typedef void (^GTMSessionFetcherChallengeDispositionBlock)(NSURLSessionAuthChallengeDisposition disposition, + NSURLCredential * GTM_NULLABLE_TYPE credential); +typedef void (^GTMSessionFetcherChallengeBlock)(GTMSessionFetcher *fetcher, + NSURLAuthenticationChallenge *challenge, + GTMSessionFetcherChallengeDispositionBlock dispositionBlock); +typedef void (^GTMSessionFetcherWillRedirectResponse)(NSURLRequest * GTM_NULLABLE_TYPE redirectedRequest); +typedef void (^GTMSessionFetcherWillRedirectBlock)(NSHTTPURLResponse *redirectResponse, + NSURLRequest *redirectRequest, + GTMSessionFetcherWillRedirectResponse response); +typedef void (^GTMSessionFetcherAccumulateDataBlock)(NSData * GTM_NULLABLE_TYPE buffer); +typedef void (^GTMSessionFetcherSimulateByteTransferBlock)(NSData * GTM_NULLABLE_TYPE buffer, + int64_t bytesWritten, + int64_t totalBytesWritten, + int64_t totalBytesExpectedToWrite); +typedef void (^GTMSessionFetcherReceivedProgressBlock)(int64_t bytesWritten, + int64_t totalBytesWritten); +typedef void (^GTMSessionFetcherDownloadProgressBlock)(int64_t bytesWritten, + int64_t totalBytesWritten, + int64_t totalBytesExpectedToWrite); +typedef void (^GTMSessionFetcherSendProgressBlock)(int64_t bytesSent, + int64_t totalBytesSent, + int64_t totalBytesExpectedToSend); +typedef void (^GTMSessionFetcherWillCacheURLResponseResponse)(NSCachedURLResponse * GTM_NULLABLE_TYPE cachedResponse); +typedef void (^GTMSessionFetcherWillCacheURLResponseBlock)(NSCachedURLResponse *proposedResponse, + GTMSessionFetcherWillCacheURLResponseResponse responseBlock); +typedef void (^GTMSessionFetcherRetryResponse)(BOOL shouldRetry); +typedef void (^GTMSessionFetcherRetryBlock)(BOOL suggestedWillRetry, + NSError * GTM_NULLABLE_TYPE error, + GTMSessionFetcherRetryResponse response); + +typedef void (^GTMSessionFetcherTestResponse)(NSHTTPURLResponse * GTM_NULLABLE_TYPE response, + NSData * GTM_NULLABLE_TYPE data, + NSError * GTM_NULLABLE_TYPE error); +typedef void (^GTMSessionFetcherTestBlock)(GTMSessionFetcher *fetcherToTest, + GTMSessionFetcherTestResponse testResponse); + +void GTMSessionFetcherAssertValidSelector(id GTM_NULLABLE_TYPE obj, SEL GTM_NULLABLE_TYPE sel, ...); + +// Utility functions for applications self-identifying to servers via a +// user-agent header + +// The "standard" user agent includes the application identifier, taken from the bundle, +// followed by a space and the system version string. Pass nil to use +mainBundle as the source +// of the bundle identifier. +// +// Applications may use this as a starting point for their own user agent strings, perhaps +// with additional sections appended. Use GTMFetcherCleanedUserAgentString() below to +// clean up any string being added to the user agent. +NSString *GTMFetcherStandardUserAgentString(NSBundle * GTM_NULLABLE_TYPE bundle); + +// Make a generic name and version for the current application, like +// com.example.MyApp/1.2.3 relying on the bundle identifier and the +// CFBundleShortVersionString or CFBundleVersion. +// +// The bundle ID may be overridden as the base identifier string by +// adding to the bundle's Info.plist a "GTMUserAgentID" key. +// +// If no bundle ID or override is available, the process name preceded +// by "proc_" is used. +NSString *GTMFetcherApplicationIdentifier(NSBundle * GTM_NULLABLE_TYPE bundle); + +// Make an identifier like "MacOSX/10.7.1" or "iPod_Touch/4.1 hw/iPod1_1" +NSString *GTMFetcherSystemVersionString(void); + +// Make a parseable user-agent identifier from the given string, replacing whitespace +// and commas with underscores, and removing other characters that may interfere +// with parsing of the full user-agent string. +// +// For example, @"[My App]" would become @"My_App" +NSString *GTMFetcherCleanedUserAgentString(NSString *str); + +// Grab the data from an input stream. Since streams cannot be assumed to be rewindable, +// this may be destructive; the caller can try to rewind the stream (by setting the +// NSStreamFileCurrentOffsetKey property) or can just use the NSData to make a new +// NSInputStream. This function is intended to facilitate testing rather than be used in +// production. +// +// This function operates synchronously on the current thread. Depending on how the +// input stream is implemented, it may be appropriate to dispatch to a different +// queue before calling this function. +// +// Failure is indicated by a returned data value of nil. +NSData * GTM_NULLABLE_TYPE GTMDataFromInputStream(NSInputStream *inputStream, NSError **outError); + +#ifdef __cplusplus +} // extern "C" +#endif + + +#if !GTM_USE_SESSION_FETCHER +@protocol GTMHTTPFetcherServiceProtocol; +#endif + +// This protocol allows abstract references to the fetcher service, primarily for +// fetchers (which may be compiled without the fetcher service class present.) +// +// Apps should not need to use this protocol. +@protocol GTMSessionFetcherServiceProtocol +// This protocol allows us to call into the service without requiring +// GTMSessionFetcherService sources in this project + +@property(atomic, strong) dispatch_queue_t callbackQueue; + +- (BOOL)fetcherShouldBeginFetching:(GTMSessionFetcher *)fetcher; +- (void)fetcherDidCreateSession:(GTMSessionFetcher *)fetcher; +- (void)fetcherDidBeginFetching:(GTMSessionFetcher *)fetcher; +- (void)fetcherDidStop:(GTMSessionFetcher *)fetcher; + +- (GTMSessionFetcher *)fetcherWithRequest:(NSURLRequest *)request; +- (BOOL)isDelayingFetcher:(GTMSessionFetcher *)fetcher; + +@property(atomic, assign) BOOL reuseSession; +- (GTM_NULLABLE NSURLSession *)session; +- (GTM_NULLABLE NSURLSession *)sessionForFetcherCreation; +- (GTM_NULLABLE id)sessionDelegate; +- (GTM_NULLABLE NSDate *)stoppedAllFetchersDate; + +// Methods for compatibility with the old GTMHTTPFetcher. +@property(readonly, strong, GTM_NULLABLE) NSOperationQueue *delegateQueue; + +@end // @protocol GTMSessionFetcherServiceProtocol + +#ifndef GTM_FETCHER_AUTHORIZATION_PROTOCOL +#define GTM_FETCHER_AUTHORIZATION_PROTOCOL 1 +@protocol GTMFetcherAuthorizationProtocol +@required +// This protocol allows us to call the authorizer without requiring its sources +// in this project. +- (void)authorizeRequest:(GTM_NULLABLE NSMutableURLRequest *)request + delegate:(id)delegate + didFinishSelector:(SEL)sel; + +- (void)stopAuthorization; + +- (void)stopAuthorizationForRequest:(NSURLRequest *)request; + +- (BOOL)isAuthorizingRequest:(NSURLRequest *)request; + +- (BOOL)isAuthorizedRequest:(NSURLRequest *)request; + +@property(strong, readonly, GTM_NULLABLE) NSString *userEmail; + +@optional + +// Indicate if authorization may be attempted. Even if this succeeds, +// authorization may fail if the user's permissions have been revoked. +@property(readonly) BOOL canAuthorize; + +// For development only, allow authorization of non-SSL requests, allowing +// transmission of the bearer token unencrypted. +@property(assign) BOOL shouldAuthorizeAllRequests; + +- (void)authorizeRequest:(GTM_NULLABLE NSMutableURLRequest *)request + completionHandler:(void (^)(NSError * GTM_NULLABLE_TYPE error))handler; + +#if GTM_USE_SESSION_FETCHER +@property (weak, GTM_NULLABLE) id fetcherService; +#else +@property (weak, GTM_NULLABLE) id fetcherService; +#endif + +- (BOOL)primeForRefresh; + +@end +#endif // GTM_FETCHER_AUTHORIZATION_PROTOCOL + +#if GTM_BACKGROUND_TASK_FETCHING +// A protocol for an alternative target for messages from GTMSessionFetcher to UIApplication. +// Set the target using +[GTMSessionFetcher setSubstituteUIApplication:] +@protocol GTMUIApplicationProtocol +- (UIBackgroundTaskIdentifier)beginBackgroundTaskWithName:(nullable NSString *)taskName + expirationHandler:(void(^ __nullable)(void))handler; +- (void)endBackgroundTask:(UIBackgroundTaskIdentifier)identifier; +@end +#endif + +#pragma mark - + +// GTMSessionFetcher objects are used for async retrieval of an http get or post +// +// See additional comments at the beginning of this file +@interface GTMSessionFetcher : NSObject + +// Create a fetcher +// +// fetcherWithRequest will return an autoreleased fetcher, but if +// the connection is successfully created, the connection should retain the +// fetcher for the life of the connection as well. So the caller doesn't have +// to retain the fetcher explicitly unless they want to be able to cancel it. ++ (instancetype)fetcherWithRequest:(GTM_NULLABLE NSURLRequest *)request; + +// Convenience methods that make a request, like +fetcherWithRequest ++ (instancetype)fetcherWithURL:(NSURL *)requestURL; ++ (instancetype)fetcherWithURLString:(NSString *)requestURLString; + +// Methods for creating fetchers to continue previous fetches. ++ (instancetype)fetcherWithDownloadResumeData:(NSData *)resumeData; ++ (GTM_NULLABLE instancetype)fetcherWithSessionIdentifier:(NSString *)sessionIdentifier; + +// Returns an array of currently active fetchers for background sessions, +// both restarted and newly created ones. ++ (GTM_NSArrayOf(GTMSessionFetcher *) *)fetchersForBackgroundSessions; + +// Designated initializer. +// +// Applications should create fetchers with a "fetcherWith..." method on a fetcher +// service or a class method, not with this initializer. +// +// The configuration should typically be nil. Applications needing to customize +// the configuration may do so by setting the configurationBlock property. +- (instancetype)initWithRequest:(GTM_NULLABLE NSURLRequest *)request + configuration:(GTM_NULLABLE NSURLSessionConfiguration *)configuration; + +// The fetcher's request. This may not be set after beginFetch has been invoked. The request +// may change due to redirects. +@property(strong, GTM_NULLABLE) NSURLRequest *request; + +// Set a header field value on the request. Header field value changes will not +// affect a fetch after the fetch has begun. +- (void)setRequestValue:(GTM_NULLABLE NSString *)value forHTTPHeaderField:(NSString *)field; + +// The fetcher's request (deprecated.) +// +// Exposing a mutable object in the interface was convenient but a bad design decision due +// to thread-safety requirements. Clients should use the request property and +// setRequestValue:forHTTPHeaderField: instead. +@property(atomic, readonly, GTM_NULLABLE) NSMutableURLRequest *mutableRequest + GTMSESSION_DEPRECATE_ON_2016_SDKS("use 'request' or '-setRequestValue:forHTTPHeaderField:'"); + +// Data used for resuming a download task. +@property(atomic, readonly, GTM_NULLABLE) NSData *downloadResumeData; + +// The configuration; this must be set before the fetch begins. If no configuration is +// set or inherited from the fetcher service, then the fetcher uses an ephemeral config. +// +// NOTE: This property should typically be nil. Applications needing to customize +// the configuration should do so by setting the configurationBlock property. +// That allows the fetcher to pick an appropriate base configuration, with the +// application setting only the configuration properties it needs to customize. +@property(atomic, strong, GTM_NULLABLE) NSURLSessionConfiguration *configuration; + +// A block the client may use to customize the configuration used to create the session. +// +// This is called synchronously, either on the thread that begins the fetch or, during a retry, +// on the main thread. The configuration block may be called repeatedly if multiple fetchers are +// created. +// +// The configuration block is for modifying the NSURLSessionConfiguration only. +// DO NOT change any fetcher properties in the configuration block. Fetcher properties +// may be set in the fetcher service prior to fetcher creation, or on the fetcher prior +// to invoking beginFetch. +@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherConfigurationBlock configurationBlock; + +// A session is created as needed by the fetcher. A fetcher service object +// may maintain sessions for multiple fetches to the same host. +@property(atomic, strong, GTM_NULLABLE) NSURLSession *session; + +// The task in flight. +@property(atomic, readonly, GTM_NULLABLE) NSURLSessionTask *sessionTask; + +// The background session identifier. +@property(atomic, readonly, GTM_NULLABLE) NSString *sessionIdentifier; + +// Indicates a fetcher created to finish a background session task. +@property(atomic, readonly) BOOL wasCreatedFromBackgroundSession; + +// Additional user-supplied data to encode into the session identifier. Since session identifier +// length limits are unspecified, this should be kept small. Key names beginning with an underscore +// are reserved for use by the fetcher. +@property(atomic, strong, GTM_NULLABLE) GTM_NSDictionaryOf(NSString *, NSString *) *sessionUserInfo; + +// The human-readable description to be assigned to the task. +@property(atomic, copy, GTM_NULLABLE) NSString *taskDescription; + +// The priority assigned to the task, if any. Use NSURLSessionTaskPriorityLow, +// NSURLSessionTaskPriorityDefault, or NSURLSessionTaskPriorityHigh. +@property(atomic, assign) float taskPriority; + +// The fetcher encodes information used to resume a session in the session identifier. +// This method, intended for internal use returns the encoded information. The sessionUserInfo +// dictionary is stored as identifier metadata. +- (GTM_NULLABLE GTM_NSDictionaryOf(NSString *, NSString *) *)sessionIdentifierMetadata; + +#if TARGET_OS_IPHONE && !TARGET_OS_WATCH +// The app should pass to this method the completion handler passed in the app delegate method +// application:handleEventsForBackgroundURLSession:completionHandler: ++ (void)application:(UIApplication *)application + handleEventsForBackgroundURLSession:(NSString *)identifier + completionHandler:(GTMSessionFetcherSystemCompletionHandler)completionHandler; +#endif + +// Indicate that a newly created session should be a background session. +// A new session identifier will be created by the fetcher. +// +// Warning: The only thing background sessions are for is rare download +// of huge, batched files of data. And even just for those, there's a lot +// of pain and hackery needed to get transfers to actually happen reliably +// with background sessions. +// +// Don't try to upload or download in many background sessions, since the system +// will impose an exponentially increasing time penalty to prevent the app from +// getting too much background execution time. +// +// References: +// +// "Moving to Fewer, Larger Transfers" +// https://forums.developer.apple.com/thread/14853 +// +// "NSURLSession’s Resume Rate Limiter" +// https://forums.developer.apple.com/thread/14854 +// +// "Background Session Task state persistence" +// https://forums.developer.apple.com/thread/11554 +// +@property(assign) BOOL useBackgroundSession; + +// Indicates if the fetcher was started using a background session. +@property(atomic, readonly, getter=isUsingBackgroundSession) BOOL usingBackgroundSession; + +// Indicates if uploads should use an upload task. This is always set for file or stream-provider +// bodies, but may be set explicitly for NSData bodies. +@property(atomic, assign) BOOL useUploadTask; + +// Indicates that the fetcher is using a session that may be shared with other fetchers. +@property(atomic, readonly) BOOL canShareSession; + +// By default, the fetcher allows only secure (https) schemes unless this +// property is set, or the GTM_ALLOW_INSECURE_REQUESTS build flag is set. +// +// For example, during debugging when fetching from a development server that lacks SSL support, +// this may be set to @[ @"http" ], or when the fetcher is used to retrieve local files, +// this may be set to @[ @"file" ]. +// +// This should be left as nil for release builds to avoid creating the opportunity for +// leaking private user behavior and data. If a server is providing insecure URLs +// for fetching by the client app, report the problem as server security & privacy bug. +// +// For builds with the iOS 9/OS X 10.11 and later SDKs, this property is required only when +// the app specifies NSAppTransportSecurity/NSAllowsArbitraryLoads in the main bundle's Info.plist. +@property(atomic, copy, GTM_NULLABLE) GTM_NSArrayOf(NSString *) *allowedInsecureSchemes; + +// By default, the fetcher prohibits localhost requests unless this property is set, +// or the GTM_ALLOW_INSECURE_REQUESTS build flag is set. +// +// For localhost requests, the URL scheme is not checked when this property is set. +// +// For builds with the iOS 9/OS X 10.11 and later SDKs, this property is required only when +// the app specifies NSAppTransportSecurity/NSAllowsArbitraryLoads in the main bundle's Info.plist. +@property(atomic, assign) BOOL allowLocalhostRequest; + +// By default, the fetcher requires valid server certs. This may be bypassed +// temporarily for development against a test server with an invalid cert. +@property(atomic, assign) BOOL allowInvalidServerCertificates; + +// Cookie storage object for this fetcher. If nil, the fetcher will use a static cookie +// storage instance shared among fetchers. If this fetcher was created by a fetcher service +// object, it will be set to use the service object's cookie storage. See Cookies section above for +// the full discussion. +// +// Because as of Jan 2014 standalone instances of NSHTTPCookieStorage do not actually +// store any cookies (Radar 15735276) we use our own subclass, GTMSessionCookieStorage, +// to hold cookies in memory. +@property(atomic, strong, GTM_NULLABLE) NSHTTPCookieStorage *cookieStorage; + +// Setting the credential is optional; it is used if the connection receives +// an authentication challenge. +@property(atomic, strong, GTM_NULLABLE) NSURLCredential *credential; + +// Setting the proxy credential is optional; it is used if the connection +// receives an authentication challenge from a proxy. +@property(atomic, strong, GTM_NULLABLE) NSURLCredential *proxyCredential; + +// If body data, body file URL, or body stream provider is not set, then a GET request +// method is assumed. +@property(atomic, strong, GTM_NULLABLE) NSData *bodyData; + +// File to use as the request body. This forces use of an upload task. +@property(atomic, strong, GTM_NULLABLE) NSURL *bodyFileURL; + +// Length of body to send, expected or actual. +@property(atomic, readonly) int64_t bodyLength; + +// The body stream provider may be called repeatedly to provide a body. +// Setting a body stream provider forces use of an upload task. +@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherBodyStreamProvider bodyStreamProvider; + +// Object to add authorization to the request, if needed. +// +// This may not be changed once beginFetch has been invoked. +@property(atomic, strong, GTM_NULLABLE) id authorizer; + +// The service object that created and monitors this fetcher, if any. +@property(atomic, strong) id service; + +// The host, if any, used to classify this fetcher in the fetcher service. +@property(atomic, copy, GTM_NULLABLE) NSString *serviceHost; + +// The priority, if any, used for starting fetchers in the fetcher service. +// +// Lower values are higher priority; the default is 0, and values may +// be negative or positive. This priority affects only the start order of +// fetchers that are being delayed by a fetcher service when the running fetchers +// exceeds the service's maxRunningFetchersPerHost. A priority of NSIntegerMin will +// exempt this fetcher from delay. +@property(atomic, assign) NSInteger servicePriority; + +// The delegate's optional didReceiveResponse block may be used to inspect or alter +// the session task response. +// +// This is called on the callback queue. +@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherDidReceiveResponseBlock didReceiveResponseBlock; + +// The delegate's optional challenge block may be used to inspect or alter +// the session task challenge. +// +// If this block is not set, the fetcher's default behavior for the NSURLSessionTask +// didReceiveChallenge: delegate method is to use the fetcher's respondToChallenge: method +// which relies on the fetcher's credential and proxyCredential properties. +// +// Warning: This may be called repeatedly if the challenge fails. Check +// challenge.previousFailureCount to identify repeated invocations. +// +// This is called on the callback queue. +@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherChallengeBlock challengeBlock; + +// The delegate's optional willRedirect block may be used to inspect or alter +// the redirection. +// +// This is called on the callback queue. +@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherWillRedirectBlock willRedirectBlock; + +// The optional send progress block reports body bytes uploaded. +// +// This is called on the callback queue. +@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherSendProgressBlock sendProgressBlock; + +// The optional accumulate block may be set by clients wishing to accumulate data +// themselves rather than let the fetcher append each buffer to an NSData. +// +// When this is called with nil data (such as on redirect) the client +// should empty its accumulation buffer. +// +// This is called on the callback queue. +@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherAccumulateDataBlock accumulateDataBlock; + +// The optional received progress block may be used to monitor data +// received from a data task. +// +// This is called on the callback queue. +@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherReceivedProgressBlock receivedProgressBlock; + +// The delegate's optional downloadProgress block may be used to monitor download +// progress in writing to disk. +// +// This is called on the callback queue. +@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherDownloadProgressBlock downloadProgressBlock; + +// The delegate's optional willCacheURLResponse block may be used to alter the cached +// NSURLResponse. The user may prevent caching by passing nil to the block's response. +// +// This is called on the callback queue. +@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherWillCacheURLResponseBlock willCacheURLResponseBlock; + +// Enable retrying; see comments at the top of this file. Setting +// retryEnabled=YES resets the min and max retry intervals. +@property(atomic, assign, getter=isRetryEnabled) BOOL retryEnabled; + +// Retry block is optional for retries. +// +// If present, this block should call the response block with YES to cause a retry or NO to end the +// fetch. +// See comments at the top of this file. +@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherRetryBlock retryBlock; + +// Retry intervals must be strictly less than maxRetryInterval, else +// they will be limited to maxRetryInterval and no further retries will +// be attempted. Setting maxRetryInterval to 0.0 will reset it to the +// default value, 60 seconds for downloads and 600 seconds for uploads. +@property(atomic, assign) NSTimeInterval maxRetryInterval; + +// Starting retry interval. Setting minRetryInterval to 0.0 will reset it +// to a random value between 1.0 and 2.0 seconds. Clients should normally not +// set this except for unit testing. +@property(atomic, assign) NSTimeInterval minRetryInterval; + +// Multiplier used to increase the interval between retries, typically 2.0. +// Clients should not need to set this. +@property(atomic, assign) double retryFactor; + +// Number of retries attempted. +@property(atomic, readonly) NSUInteger retryCount; + +// Interval delay to precede next retry. +@property(atomic, readonly) NSTimeInterval nextRetryInterval; + +#if GTM_BACKGROUND_TASK_FETCHING +// Skip use of a UIBackgroundTask, thus requiring fetches to complete when the app is in the +// foreground. +// +// Targets should define GTM_BACKGROUND_TASK_FETCHING to 0 to avoid use of a UIBackgroundTask +// on iOS to allow fetches to complete in the background. This property is available when +// it's not practical to set the preprocessor define. +@property(atomic, assign) BOOL skipBackgroundTask; +#endif // GTM_BACKGROUND_TASK_FETCHING + +// Begin fetching the request +// +// The delegate may optionally implement the callback or pass nil for the selector or handler. +// +// The delegate and all callback blocks are retained between the beginFetch call until after the +// finish callback, or until the fetch is stopped. +// +// An error is passed to the callback for server statuses 300 or +// higher, with the status stored as the error object's code. +// +// finishedSEL has a signature like: +// - (void)fetcher:(GTMSessionFetcher *)fetcher +// finishedWithData:(NSData *)data +// error:(NSError *)error; +// +// If the application has specified a destinationFileURL or an accumulateDataBlock +// for the fetcher, the data parameter passed to the callback will be nil. + +- (void)beginFetchWithDelegate:(GTM_NULLABLE id)delegate + didFinishSelector:(GTM_NULLABLE SEL)finishedSEL; + +- (void)beginFetchWithCompletionHandler:(GTM_NULLABLE GTMSessionFetcherCompletionHandler)handler; + +// Returns YES if this fetcher is in the process of fetching a URL. +@property(atomic, readonly, getter=isFetching) BOOL fetching; + +// Cancel the fetch of the request that's currently in progress. The completion handler +// will not be called. +- (void)stopFetching; + +// A block to be called when the fetch completes. +@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherCompletionHandler completionHandler; + +// A block to be called if download resume data becomes available. +@property(atomic, strong, GTM_NULLABLE) void (^resumeDataBlock)(NSData *); + +// Return the status code from the server response. +@property(atomic, readonly) NSInteger statusCode; + +// Return the http headers from the response. +@property(atomic, strong, readonly, GTM_NULLABLE) GTM_NSDictionaryOf(NSString *, NSString *) *responseHeaders; + +// The response, once it's been received. +@property(atomic, strong, readonly, GTM_NULLABLE) NSURLResponse *response; + +// Bytes downloaded so far. +@property(atomic, readonly) int64_t downloadedLength; + +// Buffer of currently-downloaded data, if available. +@property(atomic, readonly, strong, GTM_NULLABLE) NSData *downloadedData; + +// Local path to which the downloaded file will be moved. +// +// If a file already exists at the path, it will be overwritten. +// Will create the enclosing folders if they are not present. +@property(atomic, strong, GTM_NULLABLE) NSURL *destinationFileURL; + +// The time this fetcher originally began fetching. This is useful as a time +// barrier for ignoring irrelevant fetch notifications or callbacks. +@property(atomic, strong, readonly, GTM_NULLABLE) NSDate *initialBeginFetchDate; + +// userData is retained solely for the convenience of the client. +@property(atomic, strong, GTM_NULLABLE) id userData; + +// Stored property values are retained solely for the convenience of the client. +@property(atomic, copy, GTM_NULLABLE) GTM_NSDictionaryOf(NSString *, id) *properties; + +- (void)setProperty:(GTM_NULLABLE id)obj forKey:(NSString *)key; // Pass nil for obj to remove the property. +- (GTM_NULLABLE id)propertyForKey:(NSString *)key; + +- (void)addPropertiesFromDictionary:(GTM_NSDictionaryOf(NSString *, id) *)dict; + +// Comments are useful for logging, so are strongly recommended for each fetcher. +@property(atomic, copy, GTM_NULLABLE) NSString *comment; + +- (void)setCommentWithFormat:(NSString *)format, ... NS_FORMAT_FUNCTION(1, 2); + +// Log of request and response, if logging is enabled +@property(atomic, copy, GTM_NULLABLE) NSString *log; + +// Callbacks are run on this queue. If none is supplied, the main queue is used. +@property(atomic, strong, GTM_NULL_RESETTABLE) dispatch_queue_t callbackQueue; + +// The queue used internally by the session to invoke its delegate methods in the fetcher. +// +// Application callbacks are always called by the fetcher on the callbackQueue above, +// not on this queue. Apps should generally not change this queue. +// +// The default delegate queue is the main queue. +// +// This value is ignored after the session has been created, so this +// property should be set in the fetcher service rather in the fetcher as it applies +// to a shared session. +@property(atomic, strong, GTM_NULL_RESETTABLE) NSOperationQueue *sessionDelegateQueue; + +// Spin the run loop or sleep the thread, discarding events, until the fetch has completed. +// +// This is only for use in testing or in tools without a user interface. +// +// Note: Synchronous fetches should never be used by shipping apps; they are +// sufficient reason for rejection from the app store. +// +// Returns NO if timed out. +- (BOOL)waitForCompletionWithTimeout:(NSTimeInterval)timeoutInSeconds; + +// Test block is optional for testing. +// +// If present, this block will cause the fetcher to skip starting the session, and instead +// use the test block response values when calling the completion handler and delegate code. +// +// Test code can set this on the fetcher or on the fetcher service. For testing libraries +// that use a fetcher without exposing either the fetcher or the fetcher service, the global +// method setGlobalTestBlock: will set the block for all fetchers that do not have a test +// block set. +// +// The test code can pass nil for all response parameters to indicate that the fetch +// should proceed. +// +// Applications can exclude test block support by setting GTM_DISABLE_FETCHER_TEST_BLOCK. +@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherTestBlock testBlock; + ++ (void)setGlobalTestBlock:(GTM_NULLABLE GTMSessionFetcherTestBlock)block; + +// When using the testBlock, |testBlockAccumulateDataChunkCount| is the desired number of chunks to +// divide the response data into if the client has streaming enabled. The data will be divided up to +// |testBlockAccumulateDataChunkCount| chunks; however, the exact amount may vary depending on the +// size of the response data (e.g. a 1-byte response can only be divided into one chunk). +@property(atomic, readwrite) NSUInteger testBlockAccumulateDataChunkCount; + +#if GTM_BACKGROUND_TASK_FETCHING +// For testing or to override UIApplication invocations, apps may specify an alternative +// target for messages to UIApplication. ++ (void)setSubstituteUIApplication:(nullable id)substituteUIApplication; ++ (nullable id)substituteUIApplication; +#endif // GTM_BACKGROUND_TASK_FETCHING + +// Exposed for testing. ++ (GTMSessionCookieStorage *)staticCookieStorage; ++ (BOOL)appAllowsInsecureRequests; + +#if STRIP_GTM_FETCH_LOGGING +// If logging is stripped, provide a stub for the main method +// for controlling logging. ++ (void)setLoggingEnabled:(BOOL)flag; ++ (BOOL)isLoggingEnabled; + +#else + +// These methods let an application log specific body text, such as the text description of a binary +// request or response. The application should set the fetcher to defer response body logging until +// the response has been received and the log response body has been set by the app. For example: +// +// fetcher.logRequestBody = [binaryObject stringDescription]; +// fetcher.deferResponseBodyLogging = YES; +// [fetcher beginFetchWithCompletionHandler:^(NSData *data, NSError *error) { +// if (error == nil) { +// fetcher.logResponseBody = [[[MyThing alloc] initWithData:data] stringDescription]; +// } +// fetcher.deferResponseBodyLogging = NO; +// }]; + +@property(atomic, copy, GTM_NULLABLE) NSString *logRequestBody; +@property(atomic, assign) BOOL deferResponseBodyLogging; +@property(atomic, copy, GTM_NULLABLE) NSString *logResponseBody; + +// Internal logging support. +@property(atomic, readonly) NSData *loggedStreamData; +@property(atomic, assign) BOOL hasLoggedError; +@property(atomic, strong, GTM_NULLABLE) NSURL *redirectedFromURL; +- (void)appendLoggedStreamData:(NSData *)dataToAdd; +- (void)clearLoggedStreamData; + +#endif // STRIP_GTM_FETCH_LOGGING + +@end + +@interface GTMSessionFetcher (BackwardsCompatibilityOnly) +// Clients using GTMSessionFetcher should set the cookie storage explicitly themselves. +// This method is just for compatibility with the old GTMHTTPFetcher class. +- (void)setCookieStorageMethod:(NSInteger)method; +@end + +// Until we can just instantiate NSHTTPCookieStorage for local use, we'll +// implement all the public methods ourselves. This stores cookies only in +// memory. Additional methods are provided for testing. +// +// iOS 9/OS X 10.11 added +[NSHTTPCookieStorage sharedCookieStorageForGroupContainerIdentifier:] +// which may also be used to create cookie storage. +@interface GTMSessionCookieStorage : NSHTTPCookieStorage + +// Add the array off cookies to the storage, replacing duplicates. +// Also removes expired cookies from the storage. +- (void)setCookies:(GTM_NULLABLE GTM_NSArrayOf(NSHTTPCookie *) *)cookies; + +- (void)removeAllCookies; + +@end + +// Macros to monitor synchronization blocks in debug builds. +// These report problems using GTMSessionCheckDebug. +// +// GTMSessionMonitorSynchronized Start monitoring a top-level-only +// @sync scope. +// GTMSessionMonitorRecursiveSynchronized Start monitoring a top-level or +// recursive @sync scope. +// GTMSessionCheckSynchronized Verify that the current execution +// is inside a @sync scope. +// GTMSessionCheckNotSynchronized Verify that the current execution +// is not inside a @sync scope. +// +// Example usage: +// +// - (void)myExternalMethod { +// @synchronized(self) { +// GTMSessionMonitorSynchronized(self) +// +// - (void)myInternalMethod { +// GTMSessionCheckSynchronized(self); +// +// - (void)callMyCallbacks { +// GTMSessionCheckNotSynchronized(self); +// +// GTMSessionCheckNotSynchronized is available for verifying the code isn't +// in a deadlockable @sync state when posting notifications and invoking +// callbacks. Don't use GTMSessionCheckNotSynchronized immediately before a +// @sync scope; the normal recursiveness check of GTMSessionMonitorSynchronized +// can catch those. + +#ifdef __OBJC__ +#if DEBUG + #define __GTMSessionMonitorSynchronizedVariableInner(varname, counter) \ + varname ## counter + #define __GTMSessionMonitorSynchronizedVariable(varname, counter) \ + __GTMSessionMonitorSynchronizedVariableInner(varname, counter) + + #define GTMSessionMonitorSynchronized(obj) \ + NS_VALID_UNTIL_END_OF_SCOPE id \ + __GTMSessionMonitorSynchronizedVariable(__monitor, __COUNTER__) = \ + [[GTMSessionSyncMonitorInternal alloc] initWithSynchronizationObject:obj \ + allowRecursive:NO \ + functionName:__func__] + + #define GTMSessionMonitorRecursiveSynchronized(obj) \ + NS_VALID_UNTIL_END_OF_SCOPE id \ + __GTMSessionMonitorSynchronizedVariable(__monitor, __COUNTER__) = \ + [[GTMSessionSyncMonitorInternal alloc] initWithSynchronizationObject:obj \ + allowRecursive:YES \ + functionName:__func__] + + #define GTMSessionCheckSynchronized(obj) { \ + GTMSESSION_ASSERT_DEBUG( \ + [GTMSessionSyncMonitorInternal functionsHoldingSynchronizationOnObject:obj], \ + @"GTMSessionCheckSynchronized(" #obj ") failed: not sync'd" \ + @" on " #obj " in %s. Call stack:\n%@", \ + __func__, [NSThread callStackSymbols]); \ + } + + #define GTMSessionCheckNotSynchronized(obj) { \ + GTMSESSION_ASSERT_DEBUG( \ + ![GTMSessionSyncMonitorInternal functionsHoldingSynchronizationOnObject:obj], \ + @"GTMSessionCheckNotSynchronized(" #obj ") failed: was sync'd" \ + @" on " #obj " in %s by %@. Call stack:\n%@", __func__, \ + [GTMSessionSyncMonitorInternal functionsHoldingSynchronizationOnObject:obj], \ + [NSThread callStackSymbols]); \ + } + +// GTMSessionSyncMonitorInternal is a private class that keeps track of the +// beginning and end of synchronized scopes. +// +// This class should not be used directly, but only via the +// GTMSessionMonitorSynchronized macro. +@interface GTMSessionSyncMonitorInternal : NSObject +- (instancetype)initWithSynchronizationObject:(id)object + allowRecursive:(BOOL)allowRecursive + functionName:(const char *)functionName; +// Return the names of the functions that hold sync on the object, or nil if none. ++ (NSArray *)functionsHoldingSynchronizationOnObject:(id)object; +@end + +#else + #define GTMSessionMonitorSynchronized(obj) do { } while (0) + #define GTMSessionMonitorRecursiveSynchronized(obj) do { } while (0) + #define GTMSessionCheckSynchronized(obj) do { } while (0) + #define GTMSessionCheckNotSynchronized(obj) do { } while (0) +#endif // !DEBUG +#endif // __OBJC__ + + +GTM_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcher.m b/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcher.m new file mode 100644 index 0000000..24a65e0 --- /dev/null +++ b/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcher.m @@ -0,0 +1,4595 @@ +/* Copyright 2014 Google Inc. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if !defined(__has_feature) || !__has_feature(objc_arc) +#error "This file requires ARC support." +#endif + +#import "GTMSessionFetcher.h" + +#import + +#ifndef STRIP_GTM_FETCH_LOGGING + #error GTMSessionFetcher headers should have defaulted this if it wasn't already defined. +#endif + +GTM_ASSUME_NONNULL_BEGIN + +NSString *const kGTMSessionFetcherStartedNotification = @"kGTMSessionFetcherStartedNotification"; +NSString *const kGTMSessionFetcherStoppedNotification = @"kGTMSessionFetcherStoppedNotification"; +NSString *const kGTMSessionFetcherRetryDelayStartedNotification = @"kGTMSessionFetcherRetryDelayStartedNotification"; +NSString *const kGTMSessionFetcherRetryDelayStoppedNotification = @"kGTMSessionFetcherRetryDelayStoppedNotification"; + +NSString *const kGTMSessionFetcherCompletionInvokedNotification = @"kGTMSessionFetcherCompletionInvokedNotification"; +NSString *const kGTMSessionFetcherCompletionDataKey = @"data"; +NSString *const kGTMSessionFetcherCompletionErrorKey = @"error"; + +NSString *const kGTMSessionFetcherErrorDomain = @"com.google.GTMSessionFetcher"; +NSString *const kGTMSessionFetcherStatusDomain = @"com.google.HTTPStatus"; +NSString *const kGTMSessionFetcherStatusDataKey = @"data"; // data returned with a kGTMSessionFetcherStatusDomain error +NSString *const kGTMSessionFetcherStatusDataContentTypeKey = @"data_content_type"; + +NSString *const kGTMSessionFetcherNumberOfRetriesDoneKey = @"kGTMSessionFetcherNumberOfRetriesDoneKey"; +NSString *const kGTMSessionFetcherElapsedIntervalWithRetriesKey = @"kGTMSessionFetcherElapsedIntervalWithRetriesKey"; + +static NSString *const kGTMSessionIdentifierPrefix = @"com.google.GTMSessionFetcher"; +static NSString *const kGTMSessionIdentifierDestinationFileURLMetadataKey = @"_destURL"; +static NSString *const kGTMSessionIdentifierBodyFileURLMetadataKey = @"_bodyURL"; + +// The default max retry interview is 10 minutes for uploads (POST/PUT/PATCH), +// 1 minute for downloads. +static const NSTimeInterval kUnsetMaxRetryInterval = -1.0; +static const NSTimeInterval kDefaultMaxDownloadRetryInterval = 60.0; +static const NSTimeInterval kDefaultMaxUploadRetryInterval = 60.0 * 10.; + +// The maximum data length that can be loaded to the error userInfo +static const int64_t kMaximumDownloadErrorDataLength = 20000; + +#ifdef GTMSESSION_PERSISTED_DESTINATION_KEY +// Projects using unique class names should also define a unique persisted destination key. +static NSString * const kGTMSessionFetcherPersistedDestinationKey = + GTMSESSION_PERSISTED_DESTINATION_KEY; +#else +static NSString * const kGTMSessionFetcherPersistedDestinationKey = + @"com.google.GTMSessionFetcher.downloads"; +#endif + +GTM_ASSUME_NONNULL_END + +// +// GTMSessionFetcher +// + +#if 0 +#define GTM_LOG_BACKGROUND_SESSION(...) GTMSESSION_LOG_DEBUG(__VA_ARGS__) +#else +#define GTM_LOG_BACKGROUND_SESSION(...) +#endif + +#ifndef GTM_TARGET_SUPPORTS_APP_TRANSPORT_SECURITY + #if (TARGET_OS_TV \ + || TARGET_OS_WATCH \ + || (!TARGET_OS_IPHONE && defined(MAC_OS_X_VERSION_10_11) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_11) \ + || (TARGET_OS_IPHONE && defined(__IPHONE_9_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_9_0)) + #define GTM_TARGET_SUPPORTS_APP_TRANSPORT_SECURITY 1 + #endif +#endif + +@interface GTMSessionFetcher () + +@property(atomic, strong, readwrite, GTM_NULLABLE) NSData *downloadedData; +@property(atomic, strong, readwrite, GTM_NULLABLE) NSData *downloadResumeData; + +#if GTM_BACKGROUND_TASK_FETCHING +// Should always be accessed within an @synchronized(self). +@property(assign, nonatomic) UIBackgroundTaskIdentifier backgroundTaskIdentifier; +#endif + +@property(atomic, readwrite, getter=isUsingBackgroundSession) BOOL usingBackgroundSession; + +@end + +#if !GTMSESSION_BUILD_COMBINED_SOURCES +@interface GTMSessionFetcher (GTMSessionFetcherLoggingInternal) +- (void)logFetchWithError:(NSError *)error; +- (void)logNowWithError:(GTM_NULLABLE NSError *)error; +- (NSInputStream *)loggedInputStreamForInputStream:(NSInputStream *)inputStream; +- (GTMSessionFetcherBodyStreamProvider)loggedStreamProviderForStreamProvider: + (GTMSessionFetcherBodyStreamProvider)streamProvider; +@end +#endif // !GTMSESSION_BUILD_COMBINED_SOURCES + +GTM_ASSUME_NONNULL_BEGIN + +static NSTimeInterval InitialMinRetryInterval(void) { + return 1.0 + ((double)(arc4random_uniform(0x0FFFF)) / (double) 0x0FFFF); +} + +static BOOL IsLocalhost(NSString * GTM_NULLABLE_TYPE host) { + // We check if there's host, and then make the comparisons. + if (host == nil) return NO; + return ([host caseInsensitiveCompare:@"localhost"] == NSOrderedSame + || [host isEqual:@"::1"] + || [host isEqual:@"127.0.0.1"]); +} + +static NSDictionary *GTM_NULLABLE_TYPE GTMErrorUserInfoForData( + NSData *GTM_NULLABLE_TYPE data, NSDictionary *GTM_NULLABLE_TYPE responseHeaders) { + NSMutableDictionary *userInfo = [NSMutableDictionary dictionary]; + + if (data.length > 0) { + userInfo[kGTMSessionFetcherStatusDataKey] = data; + + NSString *contentType = responseHeaders[@"Content-Type"]; + if (contentType) { + userInfo[kGTMSessionFetcherStatusDataContentTypeKey] = contentType; + } + } + + return userInfo.count > 0 ? userInfo : nil; +} + +static GTMSessionFetcherTestBlock GTM_NULLABLE_TYPE gGlobalTestBlock; + +@implementation GTMSessionFetcher { + NSMutableURLRequest *_request; // after beginFetch, changed only in delegate callbacks + BOOL _useUploadTask; // immutable after beginFetch + NSURL *_bodyFileURL; // immutable after beginFetch + GTMSessionFetcherBodyStreamProvider _bodyStreamProvider; // immutable after beginFetch + NSURLSession *_session; + BOOL _shouldInvalidateSession; // immutable after beginFetch + NSURLSession *_sessionNeedingInvalidation; + NSURLSessionConfiguration *_configuration; + NSURLSessionTask *_sessionTask; + NSString *_taskDescription; + float _taskPriority; + NSURLResponse *_response; + NSString *_sessionIdentifier; + BOOL _wasCreatedFromBackgroundSession; + BOOL _didCreateSessionIdentifier; + NSString *_sessionIdentifierUUID; + BOOL _userRequestedBackgroundSession; + BOOL _usingBackgroundSession; + NSMutableData * GTM_NULLABLE_TYPE _downloadedData; + NSError *_downloadFinishedError; + NSData *_downloadResumeData; // immutable after construction + NSData * GTM_NULLABLE_TYPE _downloadTaskErrorData; // Data for when download task fails + NSURL *_destinationFileURL; + int64_t _downloadedLength; + NSURLCredential *_credential; // username & password + NSURLCredential *_proxyCredential; // credential supplied to proxy servers + BOOL _isStopNotificationNeeded; // set when start notification has been sent + BOOL _isUsingTestBlock; // set when a test block was provided (remains set when the block is released) + id _userData; // retained, if set by caller + NSMutableDictionary *_properties; // more data retained for caller + dispatch_queue_t _callbackQueue; + dispatch_group_t _callbackGroup; // read-only after creation + NSOperationQueue *_delegateQueue; // immutable after beginFetch + + id _authorizer; // immutable after beginFetch + + // The service object that created and monitors this fetcher, if any. + id _service; // immutable; set by the fetcher service upon creation + NSString *_serviceHost; + NSInteger _servicePriority; // immutable after beginFetch + BOOL _hasStoppedFetching; // counterpart to _initialBeginFetchDate + BOOL _userStoppedFetching; + + BOOL _isRetryEnabled; // user wants auto-retry + NSTimer *_retryTimer; + NSUInteger _retryCount; + NSTimeInterval _maxRetryInterval; // default 60 (download) or 600 (upload) seconds + NSTimeInterval _minRetryInterval; // random between 1 and 2 seconds + NSTimeInterval _retryFactor; // default interval multiplier is 2 + NSTimeInterval _lastRetryInterval; + NSDate *_initialBeginFetchDate; // date that beginFetch was first invoked; immutable after initial beginFetch + NSDate *_initialRequestDate; // date of first request to the target server (ignoring auth) + BOOL _hasAttemptedAuthRefresh; // accessed only in shouldRetryNowForStatus: + + NSString *_comment; // comment for log + NSString *_log; +#if !STRIP_GTM_FETCH_LOGGING + NSMutableData *_loggedStreamData; + NSURL *_redirectedFromURL; + NSString *_logRequestBody; + NSString *_logResponseBody; + BOOL _hasLoggedError; + BOOL _deferResponseBodyLogging; +#endif +} + +#if !GTMSESSION_UNIT_TESTING ++ (void)load { + [self fetchersForBackgroundSessions]; +} +#endif + ++ (instancetype)fetcherWithRequest:(GTM_NULLABLE NSURLRequest *)request { + return [[self alloc] initWithRequest:request configuration:nil]; +} + ++ (instancetype)fetcherWithURL:(NSURL *)requestURL { + return [self fetcherWithRequest:[NSURLRequest requestWithURL:requestURL]]; +} + ++ (instancetype)fetcherWithURLString:(NSString *)requestURLString { + return [self fetcherWithURL:(NSURL *)[NSURL URLWithString:requestURLString]]; +} + ++ (instancetype)fetcherWithDownloadResumeData:(NSData *)resumeData { + GTMSessionFetcher *fetcher = [self fetcherWithRequest:nil]; + fetcher.comment = @"Resuming download"; + fetcher.downloadResumeData = resumeData; + return fetcher; +} + ++ (GTM_NULLABLE instancetype)fetcherWithSessionIdentifier:(NSString *)sessionIdentifier { + GTMSESSION_ASSERT_DEBUG(sessionIdentifier != nil, @"Invalid session identifier"); + NSMapTable *sessionIdentifierToFetcherMap = [self sessionIdentifierToFetcherMap]; + GTMSessionFetcher *fetcher = [sessionIdentifierToFetcherMap objectForKey:sessionIdentifier]; + if (!fetcher && [sessionIdentifier hasPrefix:kGTMSessionIdentifierPrefix]) { + fetcher = [self fetcherWithRequest:nil]; + [fetcher setSessionIdentifier:sessionIdentifier]; + [sessionIdentifierToFetcherMap setObject:fetcher forKey:sessionIdentifier]; + fetcher->_wasCreatedFromBackgroundSession = YES; + [fetcher setCommentWithFormat:@"Resuming %@", + fetcher && fetcher->_sessionIdentifierUUID ? fetcher->_sessionIdentifierUUID : @"?"]; + } + return fetcher; +} + ++ (NSMapTable *)sessionIdentifierToFetcherMap { + // TODO: What if a service is involved in creating the fetcher? Currently, when re-creating + // fetchers, if a service was involved, it is not re-created. Should the service maintain a map? + static NSMapTable *gSessionIdentifierToFetcherMap = nil; + + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + gSessionIdentifierToFetcherMap = [NSMapTable strongToWeakObjectsMapTable]; + }); + return gSessionIdentifierToFetcherMap; +} + +#if !GTM_ALLOW_INSECURE_REQUESTS ++ (BOOL)appAllowsInsecureRequests { + // If the main bundle Info.plist key NSAppTransportSecurity is present, and it specifies + // NSAllowsArbitraryLoads, then we need to explicitly enforce secure schemes. +#if GTM_TARGET_SUPPORTS_APP_TRANSPORT_SECURITY + static BOOL allowsInsecureRequests; + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + NSBundle *mainBundle = [NSBundle mainBundle]; + NSDictionary *appTransportSecurity = + [mainBundle objectForInfoDictionaryKey:@"NSAppTransportSecurity"]; + allowsInsecureRequests = + [[appTransportSecurity objectForKey:@"NSAllowsArbitraryLoads"] boolValue]; + }); + return allowsInsecureRequests; +#else + // For builds targeting iOS 8 or 10.10 and earlier, we want to require fetcher + // security checks. + return YES; +#endif // GTM_TARGET_SUPPORTS_APP_TRANSPORT_SECURITY +} +#else // GTM_ALLOW_INSECURE_REQUESTS ++ (BOOL)appAllowsInsecureRequests { + return YES; +} +#endif // !GTM_ALLOW_INSECURE_REQUESTS + + +- (instancetype)init { + return [self initWithRequest:nil configuration:nil]; +} + +- (instancetype)initWithRequest:(NSURLRequest *)request { + return [self initWithRequest:request configuration:nil]; +} + +- (instancetype)initWithRequest:(GTM_NULLABLE NSURLRequest *)request + configuration:(GTM_NULLABLE NSURLSessionConfiguration *)configuration { + self = [super init]; + if (self) { + if (![NSURLSession class]) { + Class oldFetcherClass = NSClassFromString(@"GTMHTTPFetcher"); + if (oldFetcherClass && request) { + self = [[oldFetcherClass alloc] initWithRequest:(NSURLRequest *)request]; + } else { + self = nil; + } + return self; + } +#if GTM_BACKGROUND_TASK_FETCHING + _backgroundTaskIdentifier = UIBackgroundTaskInvalid; +#endif + _request = [request mutableCopy]; + _configuration = configuration; + + NSData *bodyData = request.HTTPBody; + if (bodyData) { + _bodyLength = (int64_t)bodyData.length; + } else { + _bodyLength = NSURLSessionTransferSizeUnknown; + } + + _callbackQueue = dispatch_get_main_queue(); + _callbackGroup = dispatch_group_create(); + _delegateQueue = [NSOperationQueue mainQueue]; + + _minRetryInterval = InitialMinRetryInterval(); + _maxRetryInterval = kUnsetMaxRetryInterval; + + _taskPriority = -1.0f; // Valid values if set are 0.0...1.0. + + _testBlockAccumulateDataChunkCount = 1; + +#if !STRIP_GTM_FETCH_LOGGING + // Encourage developers to set the comment property or use + // setCommentWithFormat: by providing a default string. + _comment = @"(No fetcher comment set)"; +#endif + } + return self; +} + +- (id)copyWithZone:(NSZone *)zone { + // disallow use of fetchers in a copy property + [self doesNotRecognizeSelector:_cmd]; + return nil; +} + +- (NSString *)description { + NSString *requestStr = self.request.URL.description; + if (requestStr.length == 0) { + if (self.downloadResumeData.length > 0) { + requestStr = @""; + } else if (_wasCreatedFromBackgroundSession) { + requestStr = @""; + } else { + requestStr = @""; + } + } + return [NSString stringWithFormat:@"%@ %p (%@)", [self class], self, requestStr]; +} + +- (void)dealloc { + GTMSESSION_ASSERT_DEBUG(!_isStopNotificationNeeded, + @"unbalanced fetcher notification for %@", _request.URL); + [self forgetSessionIdentifierForFetcherWithoutSyncCheck]; + + // Note: if a session task or a retry timer was pending, then this instance + // would be retained by those so it wouldn't be getting dealloc'd, + // hence we don't need to stopFetch here +} + +#pragma mark - + +// Begin fetching the URL (or begin a retry fetch). The delegate is retained +// for the duration of the fetch connection. + +- (void)beginFetchWithCompletionHandler:(GTM_NULLABLE GTMSessionFetcherCompletionHandler)handler { + GTMSessionCheckNotSynchronized(self); + + _completionHandler = [handler copy]; + + // The user may have called setDelegate: earlier if they want to use other + // delegate-style callbacks during the fetch; otherwise, the delegate is nil, + // which is fine. + [self beginFetchMayDelay:YES mayAuthorize:YES]; +} + +// Begin fetching the URL for a retry fetch. The delegate and completion handler +// are already provided, and do not need to be copied. +- (void)beginFetchForRetry { + GTMSessionCheckNotSynchronized(self); + + [self beginFetchMayDelay:YES mayAuthorize:YES]; +} + +- (GTMSessionFetcherCompletionHandler)completionHandlerWithTarget:(GTM_NULLABLE_TYPE id)target + didFinishSelector:(GTM_NULLABLE_TYPE SEL)finishedSelector { + GTMSessionFetcherAssertValidSelector(target, finishedSelector, @encode(GTMSessionFetcher *), + @encode(NSData *), @encode(NSError *), 0); + GTMSessionFetcherCompletionHandler completionHandler = ^(NSData *data, NSError *error) { + if (target && finishedSelector) { + id selfArg = self; // Placate ARC. + NSMethodSignature *sig = [target methodSignatureForSelector:finishedSelector]; + NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:sig]; + [invocation setSelector:(SEL)finishedSelector]; + [invocation setTarget:target]; + [invocation setArgument:&selfArg atIndex:2]; + [invocation setArgument:&data atIndex:3]; + [invocation setArgument:&error atIndex:4]; + [invocation invoke]; + } + }; + return completionHandler; +} + +- (void)beginFetchWithDelegate:(GTM_NULLABLE_TYPE id)target + didFinishSelector:(GTM_NULLABLE_TYPE SEL)finishedSelector { + GTMSessionCheckNotSynchronized(self); + + GTMSessionFetcherCompletionHandler handler = [self completionHandlerWithTarget:target + didFinishSelector:finishedSelector]; + [self beginFetchWithCompletionHandler:handler]; +} + +- (void)beginFetchMayDelay:(BOOL)mayDelay + mayAuthorize:(BOOL)mayAuthorize { + // This is the internal entry point for re-starting fetches. + GTMSessionCheckNotSynchronized(self); + + NSMutableURLRequest *fetchRequest = _request; // The request property is now externally immutable. + NSURL *fetchRequestURL = fetchRequest.URL; + NSString *priorSessionIdentifier = self.sessionIdentifier; + + // A utility block for creating error objects when we fail to start the fetch. + NSError *(^beginFailureError)(NSInteger) = ^(NSInteger code){ + NSString *urlString = fetchRequestURL.absoluteString; + NSDictionary *userInfo = @{ + NSURLErrorFailingURLStringErrorKey : (urlString ? urlString : @"(missing URL)") + }; + return [NSError errorWithDomain:kGTMSessionFetcherErrorDomain + code:code + userInfo:userInfo]; + }; + + // Catch delegate queue maxConcurrentOperationCount values other than 1, particularly + // NSOperationQueueDefaultMaxConcurrentOperationCount (-1), to avoid the additional complexity + // of simultaneous or out-of-order delegate callbacks. + GTMSESSION_ASSERT_DEBUG(_delegateQueue.maxConcurrentOperationCount == 1, + @"delegate queue %@ should support one concurrent operation, not %ld", + _delegateQueue.name, + (long)_delegateQueue.maxConcurrentOperationCount); + + if (!_initialBeginFetchDate) { + // This ivar is set only here on the initial beginFetch so need not be synchronized. + _initialBeginFetchDate = [[NSDate alloc] init]; + } + + if (self.sessionTask != nil) { + // If cached fetcher returned through fetcherWithSessionIdentifier:, then it's + // already begun, but don't consider this a failure, since the user need not know this. + if (self.sessionIdentifier != nil) { + return; + } + GTMSESSION_ASSERT_DEBUG(NO, @"Fetch object %@ being reused; this should never happen", self); + [self failToBeginFetchWithError:beginFailureError(GTMSessionFetcherErrorDownloadFailed)]; + return; + } + + if (fetchRequestURL == nil && !_downloadResumeData && !priorSessionIdentifier) { + GTMSESSION_ASSERT_DEBUG(NO, @"Beginning a fetch requires a request with a URL"); + [self failToBeginFetchWithError:beginFailureError(GTMSessionFetcherErrorDownloadFailed)]; + return; + } + + // We'll respect the user's request for a background session (unless this is + // an upload fetcher, which does its initial request foreground.) + self.usingBackgroundSession = self.useBackgroundSession && [self canFetchWithBackgroundSession]; + + NSURL *bodyFileURL = self.bodyFileURL; + if (bodyFileURL) { + NSError *fileCheckError; + if (![bodyFileURL checkResourceIsReachableAndReturnError:&fileCheckError]) { + // This assert fires when the file being uploaded no longer exists once + // the fetcher is ready to start the upload. + GTMSESSION_ASSERT_DEBUG_OR_LOG(0, @"Body file is unreachable: %@\n %@", + bodyFileURL.path, fileCheckError); + [self failToBeginFetchWithError:fileCheckError]; + return; + } + } + + NSString *requestScheme = fetchRequestURL.scheme; + BOOL isDataRequest = [requestScheme isEqual:@"data"]; + if (isDataRequest) { + // NSURLSession does not support data URLs in background sessions. +#if DEBUG + if (priorSessionIdentifier || self.sessionIdentifier) { + GTMSESSION_LOG_DEBUG(@"Converting background to foreground session for %@", + fetchRequest); + } +#endif + [self setSessionIdentifierInternal:nil]; + self.useBackgroundSession = NO; + } + +#if GTM_ALLOW_INSECURE_REQUESTS + BOOL shouldCheckSecurity = NO; +#else + BOOL shouldCheckSecurity = (fetchRequestURL != nil + && !isDataRequest + && [[self class] appAllowsInsecureRequests]); +#endif + + if (shouldCheckSecurity) { + // Allow https only for requests, unless overridden by the client. + // + // Non-https requests may too easily be snooped, so we disallow them by default. + // + // file: and data: schemes are usually safe if they are hardcoded in the client or provided + // by a trusted source, but since it's fairly rare to need them, it's safest to make clients + // explicitly whitelist them. + BOOL isSecure = + requestScheme != nil && [requestScheme caseInsensitiveCompare:@"https"] == NSOrderedSame; + if (!isSecure) { + BOOL allowRequest = NO; + NSString *host = fetchRequestURL.host; + + // Check schemes first. A file scheme request may be allowed here, or as a localhost request. + for (NSString *allowedScheme in _allowedInsecureSchemes) { + if (requestScheme != nil && + [requestScheme caseInsensitiveCompare:allowedScheme] == NSOrderedSame) { + allowRequest = YES; + break; + } + } + if (!allowRequest) { + // Check for localhost requests. Security checks only occur for non-https requests, so + // this check won't happen for an https request to localhost. + BOOL isLocalhostRequest = (host.length == 0 && [fetchRequestURL isFileURL]) || IsLocalhost(host); + if (isLocalhostRequest) { + if (self.allowLocalhostRequest) { + allowRequest = YES; + } else { + GTMSESSION_ASSERT_DEBUG(NO, @"Fetch request for localhost but fetcher" + @" allowLocalhostRequest is not set: %@", fetchRequestURL); + } + } else { + GTMSESSION_ASSERT_DEBUG(NO, @"Insecure fetch request has a scheme (%@)" + @" not found in fetcher allowedInsecureSchemes (%@): %@", + requestScheme, _allowedInsecureSchemes ?: @" @[] ", fetchRequestURL); + } + } + + if (!allowRequest) { +#if !DEBUG + NSLog(@"Insecure fetch disallowed for %@", fetchRequestURL.description ?: @"nil request URL"); +#endif + [self failToBeginFetchWithError:beginFailureError(GTMSessionFetcherErrorInsecureRequest)]; + return; + } + } // !isSecure + } // (requestURL != nil) && !isDataRequest + + if (self.cookieStorage == nil) { + self.cookieStorage = [[self class] staticCookieStorage]; + } + + BOOL isRecreatingSession = (self.sessionIdentifier != nil) && (fetchRequest == nil); + + self.canShareSession = !isRecreatingSession && !self.usingBackgroundSession; + + if (!self.session && self.canShareSession) { + self.session = [_service sessionForFetcherCreation]; + // If _session is nil, then the service's session creation semaphore will block + // until this fetcher invokes fetcherDidCreateSession: below, so this *must* invoke + // that method, even if the session fails to be created. + } + + if (!self.session) { + // Create a session. + if (!_configuration) { + if (priorSessionIdentifier || self.usingBackgroundSession) { + NSString *sessionIdentifier = priorSessionIdentifier; + if (!sessionIdentifier) { + sessionIdentifier = [self createSessionIdentifierWithMetadata:nil]; + } + NSMapTable *sessionIdentifierToFetcherMap = [[self class] sessionIdentifierToFetcherMap]; + [sessionIdentifierToFetcherMap setObject:self forKey:self.sessionIdentifier]; + +#if (TARGET_OS_TV \ + || TARGET_OS_WATCH \ + || (!TARGET_OS_IPHONE && defined(MAC_OS_X_VERSION_10_10) && MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_10) \ + || (TARGET_OS_IPHONE && defined(__IPHONE_8_0) && __IPHONE_OS_VERSION_MIN_REQUIRED >= __IPHONE_8_0)) + // iOS 8/10.10 builds require the new backgroundSessionConfiguration method name. + _configuration = + [NSURLSessionConfiguration backgroundSessionConfigurationWithIdentifier:sessionIdentifier]; +#elif (!TARGET_OS_IPHONE && defined(MAC_OS_X_VERSION_10_10) && MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_10) \ + || (TARGET_OS_IPHONE && defined(__IPHONE_8_0) && __IPHONE_OS_VERSION_MIN_REQUIRED < __IPHONE_8_0) + // Do a runtime check to avoid a deprecation warning about using + // +backgroundSessionConfiguration: on iOS 8. + if ([NSURLSessionConfiguration respondsToSelector:@selector(backgroundSessionConfigurationWithIdentifier:)]) { + // Running on iOS 8+/OS X 10.10+. +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wunguarded-availability" +// Disable unguarded availability warning as we can't use the @availability macro until we require +// all clients to build with Xcode 9 or above. + _configuration = + [NSURLSessionConfiguration backgroundSessionConfigurationWithIdentifier:sessionIdentifier]; +#pragma clang diagnostic pop + } else { + // Running on iOS 7/OS X 10.9. + _configuration = + [NSURLSessionConfiguration backgroundSessionConfiguration:sessionIdentifier]; + } +#else + // Building with an SDK earlier than iOS 8/OS X 10.10. + _configuration = + [NSURLSessionConfiguration backgroundSessionConfiguration:sessionIdentifier]; +#endif + self.usingBackgroundSession = YES; + self.canShareSession = NO; + } else { + _configuration = [NSURLSessionConfiguration ephemeralSessionConfiguration]; + } +#if !GTM_ALLOW_INSECURE_REQUESTS + _configuration.TLSMinimumSupportedProtocol = kTLSProtocol12; +#endif + } // !_configuration + _configuration.HTTPCookieStorage = self.cookieStorage; + + if (_configurationBlock) { + _configurationBlock(self, _configuration); + } + + id delegate = [_service sessionDelegate]; + if (!delegate || !self.canShareSession) { + delegate = self; + } + self.session = [NSURLSession sessionWithConfiguration:_configuration + delegate:delegate + delegateQueue:self.sessionDelegateQueue]; + GTMSESSION_ASSERT_DEBUG(self.session, @"Couldn't create session"); + + // Tell the service about the session created by this fetcher. This also signals the + // service's semaphore to allow other fetchers to request this session. + [_service fetcherDidCreateSession:self]; + + // If this assertion fires, the client probably tried to use a session identifier that was + // already used. The solution is to make the client use a unique identifier (or better yet let + // the session fetcher assign the identifier). + GTMSESSION_ASSERT_DEBUG(self.session.delegate == delegate, @"Couldn't assign delegate."); + + if (self.session) { + BOOL isUsingSharedDelegate = (delegate != self); + if (!isUsingSharedDelegate) { + _shouldInvalidateSession = YES; + } + } + } + + if (isRecreatingSession) { + _shouldInvalidateSession = YES; + + // Let's make sure there are tasks still running or if not that we get a callback from a + // completed one; otherwise, we assume the tasks failed. + // This is the observed behavior perhaps 25% of the time within the Simulator running 7.0.3 on + // exiting the app after starting an upload and relaunching the app if we manage to relaunch + // after the task has completed, but before the system relaunches us in the background. + [self.session getTasksWithCompletionHandler:^(NSArray *dataTasks, NSArray *uploadTasks, + NSArray *downloadTasks) { + if (dataTasks.count == 0 && uploadTasks.count == 0 && downloadTasks.count == 0) { + double const kDelayInSeconds = 1.0; // We should get progress indication or completion soon + dispatch_time_t checkForFeedbackDelay = + dispatch_time(DISPATCH_TIME_NOW, (int64_t)(kDelayInSeconds * NSEC_PER_SEC)); + dispatch_after(checkForFeedbackDelay, dispatch_get_main_queue(), ^{ + if (!self.sessionTask && !fetchRequest) { + // If our task and/or request haven't been restored, then we assume task feedback lost. + [self removePersistedBackgroundSessionFromDefaults]; + NSError *sessionError = + [NSError errorWithDomain:kGTMSessionFetcherErrorDomain + code:GTMSessionFetcherErrorBackgroundFetchFailed + userInfo:nil]; + [self failToBeginFetchWithError:sessionError]; + } + }); + } + }]; + return; + } + + self.downloadedData = nil; + self.downloadedLength = 0; + + if (_servicePriority == NSIntegerMin) { + mayDelay = NO; + } + if (mayDelay && _service) { + BOOL shouldFetchNow = [_service fetcherShouldBeginFetching:self]; + if (!shouldFetchNow) { + // The fetch is deferred, but will happen later. + // + // If this session is held by the fetcher service, clear the session now so that we don't + // assume it's still valid after the fetcher is restarted. + if (self.canShareSession) { + self.session = nil; + } + return; + } + } + + NSString *effectiveHTTPMethod = [fetchRequest valueForHTTPHeaderField:@"X-HTTP-Method-Override"]; + if (effectiveHTTPMethod == nil) { + effectiveHTTPMethod = fetchRequest.HTTPMethod; + } + BOOL isEffectiveHTTPGet = (effectiveHTTPMethod == nil + || [effectiveHTTPMethod isEqual:@"GET"]); + + BOOL needsUploadTask = (self.useUploadTask || self.bodyFileURL || self.bodyStreamProvider); + if (_bodyData || self.bodyStreamProvider || fetchRequest.HTTPBodyStream) { + if (isEffectiveHTTPGet) { + fetchRequest.HTTPMethod = @"POST"; + isEffectiveHTTPGet = NO; + } + + if (_bodyData) { + if (!needsUploadTask) { + fetchRequest.HTTPBody = _bodyData; + } +#if !STRIP_GTM_FETCH_LOGGING + } else if (fetchRequest.HTTPBodyStream) { + if ([self respondsToSelector:@selector(loggedInputStreamForInputStream:)]) { + fetchRequest.HTTPBodyStream = + [self performSelector:@selector(loggedInputStreamForInputStream:) + withObject:fetchRequest.HTTPBodyStream]; + } +#endif + } + } + + // We authorize after setting up the http method and body in the request + // because OAuth 1 may need to sign the request body + if (mayAuthorize && _authorizer && !isDataRequest) { + BOOL isAuthorized = [_authorizer isAuthorizedRequest:fetchRequest]; + if (!isAuthorized) { + // Authorization needed. + // + // If this session is held by the fetcher service, clear the session now so that we don't + // assume it's still valid after authorization completes. + if (self.canShareSession) { + self.session = nil; + } + + // Authorizing the request will recursively call this beginFetch:mayDelay: + // or failToBeginFetchWithError:. + [self authorizeRequest]; + return; + } + } + + // set the default upload or download retry interval, if necessary + if ([self isRetryEnabled] && self.maxRetryInterval <= 0) { + if (isEffectiveHTTPGet || [effectiveHTTPMethod isEqual:@"HEAD"]) { + [self setMaxRetryInterval:kDefaultMaxDownloadRetryInterval]; + } else { + [self setMaxRetryInterval:kDefaultMaxUploadRetryInterval]; + } + } + + // finally, start the connection + NSURLSessionTask *newSessionTask; + BOOL needsDataAccumulator = NO; + if (_downloadResumeData) { + newSessionTask = [_session downloadTaskWithResumeData:_downloadResumeData]; + GTMSESSION_ASSERT_DEBUG_OR_LOG(newSessionTask, + @"Failed downloadTaskWithResumeData for %@, resume data %lu bytes", + _session, (unsigned long)_downloadResumeData.length); + } else if (_destinationFileURL && !isDataRequest) { + newSessionTask = [_session downloadTaskWithRequest:fetchRequest]; + GTMSESSION_ASSERT_DEBUG_OR_LOG(newSessionTask, @"Failed downloadTaskWithRequest for %@, %@", + _session, fetchRequest); + } else if (needsUploadTask) { + if (bodyFileURL) { + newSessionTask = [_session uploadTaskWithRequest:fetchRequest + fromFile:bodyFileURL]; + GTMSESSION_ASSERT_DEBUG_OR_LOG(newSessionTask, + @"Failed uploadTaskWithRequest for %@, %@, file %@", + _session, fetchRequest, bodyFileURL.path); + } else if (self.bodyStreamProvider) { + newSessionTask = [_session uploadTaskWithStreamedRequest:fetchRequest]; + GTMSESSION_ASSERT_DEBUG_OR_LOG(newSessionTask, + @"Failed uploadTaskWithStreamedRequest for %@, %@", + _session, fetchRequest); + } else { + GTMSESSION_ASSERT_DEBUG_OR_LOG(_bodyData != nil, + @"Upload task needs body data, %@", fetchRequest); + newSessionTask = [_session uploadTaskWithRequest:fetchRequest + fromData:(NSData * GTM_NONNULL_TYPE)_bodyData]; + GTMSESSION_ASSERT_DEBUG_OR_LOG(newSessionTask, + @"Failed uploadTaskWithRequest for %@, %@, body data %lu bytes", + _session, fetchRequest, (unsigned long)_bodyData.length); + } + needsDataAccumulator = YES; + } else { + newSessionTask = [_session dataTaskWithRequest:fetchRequest]; + needsDataAccumulator = YES; + GTMSESSION_ASSERT_DEBUG_OR_LOG(newSessionTask, @"Failed dataTaskWithRequest for %@, %@", + _session, fetchRequest); + } + self.sessionTask = newSessionTask; + + if (!newSessionTask) { + // We shouldn't get here; if we're here, an earlier assertion should have fired to explain + // which session task creation failed. + [self failToBeginFetchWithError:beginFailureError(GTMSessionFetcherErrorTaskCreationFailed)]; + return; + } + + if (needsDataAccumulator && _accumulateDataBlock == nil) { + self.downloadedData = [NSMutableData data]; + } + if (_taskDescription) { + newSessionTask.taskDescription = _taskDescription; + } + if (_taskPriority >= 0) { +#if TARGET_OS_TV || TARGET_OS_WATCH + BOOL hasTaskPriority = YES; +#elif (!TARGET_OS_IPHONE && defined(MAC_OS_X_VERSION_10_10) && MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_10) \ + || (TARGET_OS_IPHONE && defined(__IPHONE_8_0) && __IPHONE_OS_VERSION_MIN_REQUIRED >= __IPHONE_8_0) + BOOL hasTaskPriority = YES; +#else + BOOL hasTaskPriority = [newSessionTask respondsToSelector:@selector(setPriority:)]; +#endif + if (hasTaskPriority) { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wunguarded-availability" +// Disable unguarded availability warning as we can't use the @availability macro until we require +// all clients to build with Xcode 9 or above. + newSessionTask.priority = _taskPriority; +#pragma clang diagnostic pop + } + } + +#if GTM_DISABLE_FETCHER_TEST_BLOCK + GTMSESSION_ASSERT_DEBUG(_testBlock == nil && gGlobalTestBlock == nil, @"test blocks disabled"); + _testBlock = nil; +#else + if (!_testBlock) { + if (gGlobalTestBlock) { + // Note that the test block may pass nil for all of its response parameters, + // indicating that the fetch should actually proceed. This is useful when the + // global test block has been set, and the app is only testing a specific + // fetcher. The block simulation code will then resume the task. + _testBlock = gGlobalTestBlock; + } + } + _isUsingTestBlock = (_testBlock != nil); +#endif // GTM_DISABLE_FETCHER_TEST_BLOCK + +#if GTM_BACKGROUND_TASK_FETCHING + id app = [[self class] fetcherUIApplication]; + // Background tasks seem to interfere with out-of-process uploads and downloads. + if (app && !self.skipBackgroundTask && !self.useBackgroundSession) { + // Tell UIApplication that we want to continue even when the app is in the + // background. +#if DEBUG + NSString *bgTaskName = [NSString stringWithFormat:@"%@-%@", + [self class], fetchRequest.URL.host]; +#else + NSString *bgTaskName = @"GTMSessionFetcher"; +#endif + __block UIBackgroundTaskIdentifier bgTaskID = [app beginBackgroundTaskWithName:bgTaskName + expirationHandler:^{ + // Background task expiration callback - this block is always invoked by + // UIApplication on the main thread. + if (bgTaskID != UIBackgroundTaskInvalid) { + @synchronized(self) { + if (bgTaskID == self.backgroundTaskIdentifier) { + self.backgroundTaskIdentifier = UIBackgroundTaskInvalid; + } + } + [app endBackgroundTask:bgTaskID]; + } + }]; + @synchronized(self) { + self.backgroundTaskIdentifier = bgTaskID; + } + } +#endif + + if (!_initialRequestDate) { + _initialRequestDate = [[NSDate alloc] init]; + } + + // We don't expect to reach here even on retry or auth until a stop notification has been sent + // for the previous task, but we should ensure that we don't unbalance that. + GTMSESSION_ASSERT_DEBUG(!_isStopNotificationNeeded, @"Start notification without a prior stop"); + [self sendStopNotificationIfNeeded]; + + [self addPersistedBackgroundSessionToDefaults]; + + [self setStopNotificationNeeded:YES]; + + [self postNotificationOnMainThreadWithName:kGTMSessionFetcherStartedNotification + userInfo:nil + requireAsync:NO]; + + // The service needs to know our task if it is serving as NSURLSession delegate. + [_service fetcherDidBeginFetching:self]; + + if (_testBlock) { +#if !GTM_DISABLE_FETCHER_TEST_BLOCK + [self simulateFetchForTestBlock]; +#endif + } else { + // We resume the session task after posting the notification since the + // delegate callbacks may happen immediately if the fetch is started off + // the main thread or the session delegate queue is on a background thread, + // and we don't want to post a start notification after a premature finish + // of the session task. + [newSessionTask resume]; + } +} + +NSData * GTM_NULLABLE_TYPE GTMDataFromInputStream(NSInputStream *inputStream, NSError **outError) { + NSMutableData *data = [NSMutableData data]; + + [inputStream open]; + NSInteger numberOfBytesRead = 0; + while ([inputStream hasBytesAvailable]) { + uint8_t buffer[512]; + numberOfBytesRead = [inputStream read:buffer maxLength:sizeof(buffer)]; + if (numberOfBytesRead > 0) { + [data appendBytes:buffer length:(NSUInteger)numberOfBytesRead]; + } else { + break; + } + } + [inputStream close]; + NSError *streamError = inputStream.streamError; + + if (streamError) { + data = nil; + } + if (outError) { + *outError = streamError; + } + return data; +} + +#if !GTM_DISABLE_FETCHER_TEST_BLOCK + +- (void)simulateFetchForTestBlock { + // This is invoked on the same thread as the beginFetch method was. + // + // Callbacks will all occur on the callback queue. + _testBlock(self, ^(NSURLResponse *response, NSData *responseData, NSError *error) { + // Callback from test block. + if (response == nil && responseData == nil && error == nil) { + // Assume the fetcher should execute rather than be tested. + self->_testBlock = nil; + self->_isUsingTestBlock = NO; + [self->_sessionTask resume]; + return; + } + + GTMSessionFetcherBodyStreamProvider bodyStreamProvider = self.bodyStreamProvider; + if (bodyStreamProvider) { + bodyStreamProvider(^(NSInputStream *bodyStream){ + // Read from the input stream into an NSData buffer. We'll drain the stream + // explicitly on a background queue. + [self invokeOnCallbackQueue:dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0) + afterUserStopped:NO + block:^{ + NSError *streamError; + NSData *streamedData = GTMDataFromInputStream(bodyStream, &streamError); + + dispatch_async(dispatch_get_main_queue(), ^{ + // Continue callbacks on the main thread, since serial behavior + // is more reliable for tests. + [self simulateDataCallbacksForTestBlockWithBodyData:streamedData + response:response + responseData:responseData + error:(error ?: streamError)]; + }); + }]; + }); + } else { + // No input stream; use the supplied data or file URL. + NSURL *bodyFileURL = self.bodyFileURL; + if (bodyFileURL) { + NSError *readError; + self->_bodyData = [NSData dataWithContentsOfURL:bodyFileURL + options:NSDataReadingMappedIfSafe + error:&readError]; + error = readError; + } + + // No stream provider. + + // In real fetches, nothing happens until the run loop spins, so apps have leeway to + // set callbacks after they call beginFetch. We'll mirror that fetcher behavior by + // delaying callbacks here at least to the next spin of the run loop. That keeps + // immediate, synchronous setting of callback blocks after beginFetch working in tests. + dispatch_async(dispatch_get_main_queue(), ^{ + [self simulateDataCallbacksForTestBlockWithBodyData:self->_bodyData + response:response + responseData:responseData + error:error]; + }); + } + }); +} + +- (void)simulateByteTransferReportWithDataLength:(int64_t)totalDataLength + block:(GTMSessionFetcherSendProgressBlock)block { + // This utility method simulates transfer progress with up to three callbacks. + // It is used to call back to any of the progress blocks. + int64_t sendReportSize = totalDataLength / 3 + 1; + int64_t totalSent = 0; + while (totalSent < totalDataLength) { + int64_t bytesRemaining = totalDataLength - totalSent; + sendReportSize = MIN(sendReportSize, bytesRemaining); + totalSent += sendReportSize; + [self invokeOnCallbackQueueUnlessStopped:^{ + block(sendReportSize, totalSent, totalDataLength); + }]; + } +} + +- (void)simulateDataCallbacksForTestBlockWithBodyData:(NSData * GTM_NULLABLE_TYPE)bodyData + response:(NSURLResponse *)response + responseData:(NSData *)suppliedData + error:(NSError *)suppliedError { + __block NSData *responseData = suppliedData; + __block NSError *responseError = suppliedError; + + // This method does the test simulation of callbacks once the upload + // and download data are known. + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + // Get copies of ivars we'll access in async invocations. This simulation assumes + // they won't change during fetcher execution. + NSURL *destinationFileURL = _destinationFileURL; + GTMSessionFetcherWillRedirectBlock willRedirectBlock = _willRedirectBlock; + GTMSessionFetcherDidReceiveResponseBlock didReceiveResponseBlock = _didReceiveResponseBlock; + GTMSessionFetcherSendProgressBlock sendProgressBlock = _sendProgressBlock; + GTMSessionFetcherDownloadProgressBlock downloadProgressBlock = _downloadProgressBlock; + GTMSessionFetcherAccumulateDataBlock accumulateDataBlock = _accumulateDataBlock; + GTMSessionFetcherReceivedProgressBlock receivedProgressBlock = _receivedProgressBlock; + GTMSessionFetcherWillCacheURLResponseBlock willCacheURLResponseBlock = + _willCacheURLResponseBlock; + + // Simulate receipt of redirection. + if (willRedirectBlock) { + [self invokeOnCallbackUnsynchronizedQueueAfterUserStopped:YES + block:^{ + willRedirectBlock((NSHTTPURLResponse *)response, self->_request, + ^(NSURLRequest *redirectRequest) { + // For simulation, we'll assume the app will just continue. + }); + }]; + } + + // If the fetcher has a challenge block, simulate a challenge. + // + // It might be nice to eventually let the user determine which testBlock + // fetches get challenged rather than always executing the supplied + // challenge block. + if (_challengeBlock) { + [self invokeOnCallbackUnsynchronizedQueueAfterUserStopped:YES + block:^{ + if (self->_challengeBlock) { + NSURL *requestURL = self->_request.URL; + NSString *host = requestURL.host; + NSURLProtectionSpace *pspace = + [[NSURLProtectionSpace alloc] initWithHost:host + port:requestURL.port.integerValue + protocol:requestURL.scheme + realm:nil + authenticationMethod:NSURLAuthenticationMethodHTTPBasic]; + id unusedSender = + (id)[NSNull null]; + NSURLAuthenticationChallenge *challenge = + [[NSURLAuthenticationChallenge alloc] initWithProtectionSpace:pspace + proposedCredential:nil + previousFailureCount:0 + failureResponse:nil + error:nil + sender:unusedSender]; + self->_challengeBlock(self, challenge, ^(NSURLSessionAuthChallengeDisposition disposition, + NSURLCredential * GTM_NULLABLE_TYPE credential){ + // We could change the responseData and responseError based on the disposition, + // but it's easier for apps to just supply the expected data and error + // directly to the test block. So this simulation ignores the disposition. + }); + } + }]; + } + + // Simulate receipt of an initial response. + if (response && didReceiveResponseBlock) { + [self invokeOnCallbackUnsynchronizedQueueAfterUserStopped:YES + block:^{ + didReceiveResponseBlock(response, ^(NSURLSessionResponseDisposition desiredDisposition) { + // For simulation, we'll assume the disposition is to continue. + }); + }]; + } + + // Simulate reporting send progress. + if (sendProgressBlock) { + [self simulateByteTransferReportWithDataLength:(int64_t)bodyData.length + block:^(int64_t bytesSent, + int64_t totalBytesSent, + int64_t totalBytesExpectedToSend) { + // This is invoked on the callback queue unless stopped. + sendProgressBlock(bytesSent, totalBytesSent, totalBytesExpectedToSend); + }]; + } + + if (destinationFileURL) { + // Simulate download to file progress. + if (downloadProgressBlock) { + [self simulateByteTransferReportWithDataLength:(int64_t)responseData.length + block:^(int64_t bytesDownloaded, + int64_t totalBytesDownloaded, + int64_t totalBytesExpectedToDownload) { + // This is invoked on the callback queue unless stopped. + downloadProgressBlock(bytesDownloaded, totalBytesDownloaded, + totalBytesExpectedToDownload); + }]; + } + + NSError *writeError; + [responseData writeToURL:destinationFileURL + options:NSDataWritingAtomic + error:&writeError]; + if (writeError) { + // Tell the test code that writing failed. + responseError = writeError; + } + } else { + // Simulate download to NSData progress. + if ((accumulateDataBlock || receivedProgressBlock) && responseData) { + [self simulateByteTransferWithData:responseData + block:^(NSData *data, + int64_t bytesReceived, + int64_t totalBytesReceived, + int64_t totalBytesExpectedToReceive) { + // This is invoked on the callback queue unless stopped. + if (accumulateDataBlock) { + accumulateDataBlock(data); + } + + if (receivedProgressBlock) { + receivedProgressBlock(bytesReceived, totalBytesReceived); + } + }]; + } + + if (!accumulateDataBlock) { + _downloadedData = [responseData mutableCopy]; + } + + if (willCacheURLResponseBlock) { + // Simulate letting the client inspect and alter the cached response. + NSData *cachedData = responseData ?: [[NSData alloc] init]; // Always have non-nil data. + NSCachedURLResponse *cachedResponse = + [[NSCachedURLResponse alloc] initWithResponse:response + data:cachedData]; + [self invokeOnCallbackUnsynchronizedQueueAfterUserStopped:YES + block:^{ + willCacheURLResponseBlock(cachedResponse, ^(NSCachedURLResponse *responseToCache){ + // The app may provide an alternative response, or nil to defeat caching. + }); + }]; + } + } + _response = response; + } // @synchronized(self) + + NSOperationQueue *queue = self.sessionDelegateQueue; + [queue addOperationWithBlock:^{ + // Rather than invoke failToBeginFetchWithError: we want to simulate completion of + // a connection that started and ended, so we'll call down to finishWithError: + NSInteger status = responseError ? responseError.code : 200; + if (status >= 200 && status <= 399) { + [self finishWithError:nil shouldRetry:NO]; + } else { + [self shouldRetryNowForStatus:status + error:responseError + forceAssumeRetry:NO + response:^(BOOL shouldRetry) { + [self finishWithError:responseError shouldRetry:shouldRetry]; + }]; + } + }]; +} + +- (void)simulateByteTransferWithData:(NSData *)responseData + block:(GTMSessionFetcherSimulateByteTransferBlock)transferBlock { + // This utility method simulates transfering data to the client. It divides the data into at most + // "chunkCount" chunks and then passes each chunk along with a progress update to transferBlock. + // This function can be used with accumulateDataBlock or receivedProgressBlock. + + NSUInteger chunkCount = MAX(self.testBlockAccumulateDataChunkCount, (NSUInteger) 1); + NSUInteger totalDataLength = responseData.length; + NSUInteger sendDataSize = totalDataLength / chunkCount + 1; + NSUInteger totalSent = 0; + while (totalSent < totalDataLength) { + NSUInteger bytesRemaining = totalDataLength - totalSent; + sendDataSize = MIN(sendDataSize, bytesRemaining); + NSData *chunkData = [responseData subdataWithRange:NSMakeRange(totalSent, sendDataSize)]; + totalSent += sendDataSize; + [self invokeOnCallbackQueueUnlessStopped:^{ + transferBlock(chunkData, + (int64_t)sendDataSize, + (int64_t)totalSent, + (int64_t)totalDataLength); + }]; + } +} + +#endif // !GTM_DISABLE_FETCHER_TEST_BLOCK + +- (void)setSessionTask:(NSURLSessionTask *)sessionTask { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (_sessionTask != sessionTask) { + _sessionTask = sessionTask; + if (_sessionTask) { + // Request could be nil on restoring this fetcher from a background session. + if (!_request) { + _request = [_sessionTask.originalRequest mutableCopy]; + } + } + } + } // @synchronized(self) +} + +- (NSURLSessionTask * GTM_NULLABLE_TYPE)sessionTask { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _sessionTask; + } // @synchronized(self) +} + ++ (NSUserDefaults *)fetcherUserDefaults { + static NSUserDefaults *gFetcherUserDefaults = nil; + + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + Class fetcherUserDefaultsClass = NSClassFromString(@"GTMSessionFetcherUserDefaultsFactory"); + if (fetcherUserDefaultsClass) { + gFetcherUserDefaults = [fetcherUserDefaultsClass fetcherUserDefaults]; + } else { + gFetcherUserDefaults = [NSUserDefaults standardUserDefaults]; + } + }); + return gFetcherUserDefaults; +} + +- (void)addPersistedBackgroundSessionToDefaults { + NSString *sessionIdentifier = self.sessionIdentifier; + if (!sessionIdentifier) { + return; + } + NSArray *oldBackgroundSessions = [[self class] activePersistedBackgroundSessions]; + if ([oldBackgroundSessions containsObject:_sessionIdentifier]) { + return; + } + NSMutableArray *newBackgroundSessions = + [NSMutableArray arrayWithArray:oldBackgroundSessions]; + [newBackgroundSessions addObject:sessionIdentifier]; + GTM_LOG_BACKGROUND_SESSION(@"Add to background sessions: %@", newBackgroundSessions); + + NSUserDefaults *userDefaults = [[self class] fetcherUserDefaults]; + [userDefaults setObject:newBackgroundSessions + forKey:kGTMSessionFetcherPersistedDestinationKey]; + [userDefaults synchronize]; +} + +- (void)removePersistedBackgroundSessionFromDefaults { + NSString *sessionIdentifier = self.sessionIdentifier; + if (!sessionIdentifier) return; + + NSArray *oldBackgroundSessions = [[self class] activePersistedBackgroundSessions]; + if (!oldBackgroundSessions) { + return; + } + NSMutableArray *newBackgroundSessions = + [NSMutableArray arrayWithArray:oldBackgroundSessions]; + NSUInteger sessionIndex = [newBackgroundSessions indexOfObject:sessionIdentifier]; + if (sessionIndex == NSNotFound) { + return; + } + [newBackgroundSessions removeObjectAtIndex:sessionIndex]; + GTM_LOG_BACKGROUND_SESSION(@"Remove from background sessions: %@", newBackgroundSessions); + + NSUserDefaults *userDefaults = [[self class] fetcherUserDefaults]; + if (newBackgroundSessions.count == 0) { + [userDefaults removeObjectForKey:kGTMSessionFetcherPersistedDestinationKey]; + } else { + [userDefaults setObject:newBackgroundSessions + forKey:kGTMSessionFetcherPersistedDestinationKey]; + } + [userDefaults synchronize]; +} + ++ (GTM_NULLABLE NSArray *)activePersistedBackgroundSessions { + NSUserDefaults *userDefaults = [[self class] fetcherUserDefaults]; + NSArray *oldBackgroundSessions = + [userDefaults arrayForKey:kGTMSessionFetcherPersistedDestinationKey]; + if (oldBackgroundSessions.count == 0) { + return nil; + } + NSMutableArray *activeBackgroundSessions = nil; + NSMapTable *sessionIdentifierToFetcherMap = [self sessionIdentifierToFetcherMap]; + for (NSString *sessionIdentifier in oldBackgroundSessions) { + GTMSessionFetcher *fetcher = [sessionIdentifierToFetcherMap objectForKey:sessionIdentifier]; + if (fetcher) { + if (!activeBackgroundSessions) { + activeBackgroundSessions = [[NSMutableArray alloc] init]; + } + [activeBackgroundSessions addObject:sessionIdentifier]; + } + } + return activeBackgroundSessions; +} + ++ (NSArray *)fetchersForBackgroundSessions { + NSUserDefaults *userDefaults = [[self class] fetcherUserDefaults]; + NSArray *backgroundSessions = + [userDefaults arrayForKey:kGTMSessionFetcherPersistedDestinationKey]; + NSMapTable *sessionIdentifierToFetcherMap = [self sessionIdentifierToFetcherMap]; + NSMutableArray *fetchers = [NSMutableArray array]; + for (NSString *sessionIdentifier in backgroundSessions) { + GTMSessionFetcher *fetcher = [sessionIdentifierToFetcherMap objectForKey:sessionIdentifier]; + if (!fetcher) { + fetcher = [self fetcherWithSessionIdentifier:sessionIdentifier]; + GTMSESSION_ASSERT_DEBUG(fetcher != nil, + @"Unexpected invalid session identifier: %@", sessionIdentifier); + [fetcher beginFetchWithCompletionHandler:nil]; + } + GTM_LOG_BACKGROUND_SESSION(@"%@ restoring session %@ by creating fetcher %@ %p", + [self class], sessionIdentifier, fetcher, fetcher); + if (fetcher != nil) { + [fetchers addObject:fetcher]; + } + } + return fetchers; +} + +#if TARGET_OS_IPHONE && !TARGET_OS_WATCH ++ (void)application:(UIApplication *)application + handleEventsForBackgroundURLSession:(NSString *)identifier + completionHandler:(GTMSessionFetcherSystemCompletionHandler)completionHandler { + GTMSessionFetcher *fetcher = [self fetcherWithSessionIdentifier:identifier]; + if (fetcher != nil) { + fetcher.systemCompletionHandler = completionHandler; + } else { + GTM_LOG_BACKGROUND_SESSION(@"%@ did not create background session identifier: %@", + [self class], identifier); + } +} +#endif + +- (NSString * GTM_NULLABLE_TYPE)sessionIdentifier { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _sessionIdentifier; + } // @synchronized(self) +} + +- (void)setSessionIdentifier:(NSString *)sessionIdentifier { + GTMSESSION_ASSERT_DEBUG(sessionIdentifier != nil, @"Invalid session identifier"); + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + GTMSESSION_ASSERT_DEBUG(!_session, @"Unable to set session identifier after session created"); + _sessionIdentifier = [sessionIdentifier copy]; + _usingBackgroundSession = YES; + _canShareSession = NO; + [self restoreDefaultStateForSessionIdentifierMetadata]; + } // @synchronized(self) +} + +- (void)setSessionIdentifierInternal:(GTM_NULLABLE NSString *)sessionIdentifier { + // This internal method only does a synchronized set of the session identifier. + // It does not have side effects on the background session, shared session, or + // session identifier metadata. + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _sessionIdentifier = [sessionIdentifier copy]; + } // @synchronized(self) +} + +- (NSDictionary * GTM_NULLABLE_TYPE)sessionUserInfo { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (_sessionUserInfo == nil) { + // We'll return the metadata dictionary with internal keys removed. This avoids the user + // re-using the userInfo dictionary later and accidentally including the internal keys. + NSMutableDictionary *metadata = [[self sessionIdentifierMetadataUnsynchronized] mutableCopy]; + NSSet *keysToRemove = [metadata keysOfEntriesPassingTest:^BOOL(id key, id obj, BOOL *stop) { + return [key hasPrefix:@"_"]; + }]; + [metadata removeObjectsForKeys:[keysToRemove allObjects]]; + if (metadata.count > 0) { + _sessionUserInfo = metadata; + } + } + return _sessionUserInfo; + } // @synchronized(self) +} + +- (void)setSessionUserInfo:(NSDictionary * GTM_NULLABLE_TYPE)dictionary { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + GTMSESSION_ASSERT_DEBUG(_sessionIdentifier == nil, @"Too late to assign userInfo"); + _sessionUserInfo = dictionary; + } // @synchronized(self) +} + +- (GTM_NULLABLE NSDictionary *)sessionIdentifierDefaultMetadata { + GTMSessionCheckSynchronized(self); + + NSMutableDictionary *defaultUserInfo = [[NSMutableDictionary alloc] init]; + if (_destinationFileURL) { + defaultUserInfo[kGTMSessionIdentifierDestinationFileURLMetadataKey] = + [_destinationFileURL absoluteString]; + } + if (_bodyFileURL) { + defaultUserInfo[kGTMSessionIdentifierBodyFileURLMetadataKey] = [_bodyFileURL absoluteString]; + } + return (defaultUserInfo.count > 0) ? defaultUserInfo : nil; +} + +- (void)restoreDefaultStateForSessionIdentifierMetadata { + GTMSessionCheckSynchronized(self); + + NSDictionary *metadata = [self sessionIdentifierMetadataUnsynchronized]; + NSString *destinationFileURLString = metadata[kGTMSessionIdentifierDestinationFileURLMetadataKey]; + if (destinationFileURLString) { + _destinationFileURL = [NSURL URLWithString:destinationFileURLString]; + GTM_LOG_BACKGROUND_SESSION(@"Restoring destination file URL: %@", _destinationFileURL); + } + NSString *bodyFileURLString = metadata[kGTMSessionIdentifierBodyFileURLMetadataKey]; + if (bodyFileURLString) { + _bodyFileURL = [NSURL URLWithString:bodyFileURLString]; + GTM_LOG_BACKGROUND_SESSION(@"Restoring body file URL: %@", _bodyFileURL); + } +} + +- (NSDictionary * GTM_NULLABLE_TYPE)sessionIdentifierMetadata { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return [self sessionIdentifierMetadataUnsynchronized]; + } +} + +- (NSDictionary * GTM_NULLABLE_TYPE)sessionIdentifierMetadataUnsynchronized { + GTMSessionCheckSynchronized(self); + + // Session Identifier format: "com.google.__ + if (!_sessionIdentifier) { + return nil; + } + NSScanner *metadataScanner = [NSScanner scannerWithString:_sessionIdentifier]; + [metadataScanner setCharactersToBeSkipped:nil]; + NSString *metadataString; + NSString *uuid; + if ([metadataScanner scanUpToString:@"_" intoString:NULL] && + [metadataScanner scanString:@"_" intoString:NULL] && + [metadataScanner scanUpToString:@"_" intoString:&uuid] && + [metadataScanner scanString:@"_" intoString:NULL] && + [metadataScanner scanUpToString:@"\n" intoString:&metadataString]) { + _sessionIdentifierUUID = uuid; + NSData *metadataData = [metadataString dataUsingEncoding:NSUTF8StringEncoding]; + NSError *error; + NSDictionary *metadataDict = + [NSJSONSerialization JSONObjectWithData:metadataData + options:0 + error:&error]; + GTM_LOG_BACKGROUND_SESSION(@"User Info from session identifier: %@ %@", + metadataDict, error ? error : @""); + return metadataDict; + } + return nil; +} + +- (NSString *)createSessionIdentifierWithMetadata:(NSDictionary * GTM_NULLABLE_TYPE)metadataToInclude { + NSString *result; + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + // Session Identifier format: "com.google.__ + GTMSESSION_ASSERT_DEBUG(!_sessionIdentifier, @"Session identifier already created"); + _sessionIdentifierUUID = [[NSUUID UUID] UUIDString]; + _sessionIdentifier = + [NSString stringWithFormat:@"%@_%@", kGTMSessionIdentifierPrefix, _sessionIdentifierUUID]; + // Start with user-supplied keys so they cannot accidentally override the fetcher's keys. + NSMutableDictionary *metadataDict = + [NSMutableDictionary dictionaryWithDictionary:(NSDictionary * GTM_NONNULL_TYPE)_sessionUserInfo]; + + if (metadataToInclude) { + [metadataDict addEntriesFromDictionary:(NSDictionary *)metadataToInclude]; + } + NSDictionary *defaultMetadataDict = [self sessionIdentifierDefaultMetadata]; + if (defaultMetadataDict) { + [metadataDict addEntriesFromDictionary:defaultMetadataDict]; + } + if (metadataDict.count > 0) { + NSData *metadataData = [NSJSONSerialization dataWithJSONObject:metadataDict + options:0 + error:NULL]; + GTMSESSION_ASSERT_DEBUG(metadataData != nil, + @"Session identifier user info failed to convert to JSON"); + if (metadataData.length > 0) { + NSString *metadataString = [[NSString alloc] initWithData:metadataData + encoding:NSUTF8StringEncoding]; + _sessionIdentifier = + [_sessionIdentifier stringByAppendingFormat:@"_%@", metadataString]; + } + } + _didCreateSessionIdentifier = YES; + result = _sessionIdentifier; + } // @synchronized(self) + return result; +} + +- (void)failToBeginFetchWithError:(NSError *)error { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _hasStoppedFetching = YES; + } + + if (error == nil) { + error = [NSError errorWithDomain:kGTMSessionFetcherErrorDomain + code:GTMSessionFetcherErrorDownloadFailed + userInfo:nil]; + } + + [self invokeFetchCallbacksOnCallbackQueueWithData:nil + error:error]; + [self releaseCallbacks]; + + [_service fetcherDidStop:self]; + + self.authorizer = nil; +} + ++ (GTMSessionCookieStorage *)staticCookieStorage { + static GTMSessionCookieStorage *gCookieStorage = nil; + + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + gCookieStorage = [[GTMSessionCookieStorage alloc] init]; + }); + return gCookieStorage; +} + +#if GTM_BACKGROUND_TASK_FETCHING + +- (void)endBackgroundTask { + // Whenever the connection stops or background execution expires, + // we need to tell UIApplication we're done. + UIBackgroundTaskIdentifier bgTaskID; + @synchronized(self) { + bgTaskID = self.backgroundTaskIdentifier; + if (bgTaskID != UIBackgroundTaskInvalid) { + self.backgroundTaskIdentifier = UIBackgroundTaskInvalid; + } + } + + if (bgTaskID != UIBackgroundTaskInvalid) { + id app = [[self class] fetcherUIApplication]; + [app endBackgroundTask:bgTaskID]; + } +} + +#endif // GTM_BACKGROUND_TASK_FETCHING + +- (void)authorizeRequest { + GTMSessionCheckNotSynchronized(self); + + id authorizer = self.authorizer; + SEL asyncAuthSel = @selector(authorizeRequest:delegate:didFinishSelector:); + if ([authorizer respondsToSelector:asyncAuthSel]) { + SEL callbackSel = @selector(authorizer:request:finishedWithError:); + NSMutableURLRequest *mutableRequest = [self.request mutableCopy]; + [authorizer authorizeRequest:mutableRequest + delegate:self + didFinishSelector:callbackSel]; + } else { + GTMSESSION_ASSERT_DEBUG(authorizer == nil, @"invalid authorizer for fetch"); + + // No authorizing possible, and authorizing happens only after any delay; + // just begin fetching + [self beginFetchMayDelay:NO + mayAuthorize:NO]; + } +} + +- (void)authorizer:(id)auth + request:(NSMutableURLRequest *)authorizedRequest + finishedWithError:(NSError *)error { + GTMSessionCheckNotSynchronized(self); + + if (error != nil) { + // We can't fetch without authorization + [self failToBeginFetchWithError:error]; + } else { + @synchronized(self) { + _request = authorizedRequest; + } + [self beginFetchMayDelay:NO + mayAuthorize:NO]; + } +} + + +- (BOOL)canFetchWithBackgroundSession { + // Subclasses may override. + return YES; +} + +// Returns YES if the fetcher has been started and has not yet stopped. +// +// Fetching includes waiting for authorization or for retry, waiting to be allowed by the +// service object to start the request, and actually fetching the request. +- (BOOL)isFetching { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return [self isFetchingUnsynchronized]; + } +} + +- (BOOL)isFetchingUnsynchronized { + GTMSessionCheckSynchronized(self); + + BOOL hasBegun = (_initialBeginFetchDate != nil); + return hasBegun && !_hasStoppedFetching; +} + +- (NSURLResponse * GTM_NULLABLE_TYPE)response { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + NSURLResponse *response = [self responseUnsynchronized]; + return response; + } // @synchronized(self) +} + +- (NSURLResponse * GTM_NULLABLE_TYPE)responseUnsynchronized { + GTMSessionCheckSynchronized(self); + + NSURLResponse *response = _sessionTask.response; + if (!response) response = _response; + return response; +} + +- (NSInteger)statusCode { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + NSInteger statusCode = [self statusCodeUnsynchronized]; + return statusCode; + } // @synchronized(self) +} + +- (NSInteger)statusCodeUnsynchronized { + GTMSessionCheckSynchronized(self); + + NSURLResponse *response = [self responseUnsynchronized]; + NSInteger statusCode; + + if ([response respondsToSelector:@selector(statusCode)]) { + statusCode = [(NSHTTPURLResponse *)response statusCode]; + } else { + // Default to zero, in hopes of hinting "Unknown" (we can't be + // sure that things are OK enough to use 200). + statusCode = 0; + } + return statusCode; +} + +- (NSDictionary * GTM_NULLABLE_TYPE)responseHeaders { + GTMSessionCheckNotSynchronized(self); + + NSURLResponse *response = self.response; + if ([response respondsToSelector:@selector(allHeaderFields)]) { + NSDictionary *headers = [(NSHTTPURLResponse *)response allHeaderFields]; + return headers; + } + return nil; +} + +- (NSDictionary * GTM_NULLABLE_TYPE)responseHeadersUnsynchronized { + GTMSessionCheckSynchronized(self); + + NSURLResponse *response = [self responseUnsynchronized]; + if ([response respondsToSelector:@selector(allHeaderFields)]) { + NSDictionary *headers = [(NSHTTPURLResponse *)response allHeaderFields]; + return headers; + } + return nil; +} + +- (void)releaseCallbacks { + // Avoid releasing blocks in the sync section since objects dealloc'd by + // the blocks being released may call back into the fetcher or fetcher + // service. + dispatch_queue_t NS_VALID_UNTIL_END_OF_SCOPE holdCallbackQueue; + GTMSessionFetcherCompletionHandler NS_VALID_UNTIL_END_OF_SCOPE holdCompletionHandler; + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + holdCallbackQueue = _callbackQueue; + holdCompletionHandler = _completionHandler; + + _callbackQueue = nil; + _completionHandler = nil; // Setter overridden in upload. Setter assumed to be used externally. + } + + // Set local callback pointers to nil here rather than let them release at the end of the scope + // to make any problems due to the blocks being released be a bit more obvious in a stack trace. + holdCallbackQueue = nil; + holdCompletionHandler = nil; + + self.configurationBlock = nil; + self.didReceiveResponseBlock = nil; + self.challengeBlock = nil; + self.willRedirectBlock = nil; + self.sendProgressBlock = nil; + self.receivedProgressBlock = nil; + self.downloadProgressBlock = nil; + self.accumulateDataBlock = nil; + self.willCacheURLResponseBlock = nil; + self.retryBlock = nil; + self.testBlock = nil; + self.resumeDataBlock = nil; +} + +- (void)forgetSessionIdentifierForFetcher { + GTMSessionCheckSynchronized(self); + [self forgetSessionIdentifierForFetcherWithoutSyncCheck]; +} + +- (void)forgetSessionIdentifierForFetcherWithoutSyncCheck { + // This should be called inside a @synchronized block (except during dealloc.) + if (_sessionIdentifier) { + NSMapTable *sessionIdentifierToFetcherMap = [[self class] sessionIdentifierToFetcherMap]; + [sessionIdentifierToFetcherMap removeObjectForKey:_sessionIdentifier]; + _sessionIdentifier = nil; + _didCreateSessionIdentifier = NO; + } +} + +// External stop method +- (void)stopFetching { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + // Prevent enqueued callbacks from executing. + _userStoppedFetching = YES; + } // @synchronized(self) + [self stopFetchReleasingCallbacks:YES]; +} + +// Cancel the fetch of the URL that's currently in progress. +// +// If shouldReleaseCallbacks is NO then the fetch will be retried so the callbacks +// need to still be retained. +- (void)stopFetchReleasingCallbacks:(BOOL)shouldReleaseCallbacks { + [self removePersistedBackgroundSessionFromDefaults]; + + id service; + NSMutableURLRequest *request; + + // If the task or the retry timer is all that's retaining the fetcher, + // we want to be sure this instance survives stopping at least long enough for + // the stack to unwind. + __autoreleasing GTMSessionFetcher *holdSelf = self; + + BOOL hasCanceledTask = NO; + + [holdSelf destroyRetryTimer]; + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _hasStoppedFetching = YES; + + service = _service; + request = _request; + + if (_sessionTask) { + // In case cancelling the task or session calls this recursively, we want + // to ensure that we'll only release the task and delegate once, + // so first set _sessionTask to nil + // + // This may be called in a callback from the task, so use autorelease to avoid + // releasing the task in its own callback. + __autoreleasing NSURLSessionTask *oldTask = _sessionTask; + if (!_isUsingTestBlock) { + _response = _sessionTask.response; + } + _sessionTask = nil; + + if ([oldTask state] != NSURLSessionTaskStateCompleted) { + // For download tasks, when the fetch is stopped, we may provide resume data that can + // be used to create a new session. + BOOL mayResume = (_resumeDataBlock + && [oldTask respondsToSelector:@selector(cancelByProducingResumeData:)]); + if (!mayResume) { + [oldTask cancel]; + // A side effect of stopping the task is that URLSession:task:didCompleteWithError: + // will be invoked asynchronously on the delegate queue. + } else { + void (^resumeBlock)(NSData *) = _resumeDataBlock; + _resumeDataBlock = nil; + + // Save callbackQueue since releaseCallbacks clears it. + dispatch_queue_t callbackQueue = _callbackQueue; + dispatch_group_enter(_callbackGroup); + [(NSURLSessionDownloadTask *)oldTask cancelByProducingResumeData:^(NSData *resumeData) { + [self invokeOnCallbackQueue:callbackQueue + afterUserStopped:YES + block:^{ + resumeBlock(resumeData); + dispatch_group_leave(self->_callbackGroup); + }]; + }]; + } + hasCanceledTask = YES; + } + } + + // If the task was canceled, wait until the URLSession:task:didCompleteWithError: to call + // finishTasksAndInvalidate, since calling it immediately tends to crash, see radar 18471901. + if (_session) { + BOOL shouldInvalidate = _shouldInvalidateSession; +#if TARGET_OS_IPHONE + // Don't invalidate if we've got a systemCompletionHandler, since + // URLSessionDidFinishEventsForBackgroundURLSession: won't be called if invalidated. + shouldInvalidate = shouldInvalidate && !self.systemCompletionHandler; +#endif + if (shouldInvalidate) { + __autoreleasing NSURLSession *oldSession = _session; + _session = nil; + + if (!hasCanceledTask) { + [oldSession finishTasksAndInvalidate]; + } else { + _sessionNeedingInvalidation = oldSession; + } + } + } + } // @synchronized(self) + + // send the stopped notification + [self sendStopNotificationIfNeeded]; + + [_authorizer stopAuthorizationForRequest:request]; + + if (shouldReleaseCallbacks) { + [self releaseCallbacks]; + + self.authorizer = nil; + } + + [service fetcherDidStop:self]; + +#if GTM_BACKGROUND_TASK_FETCHING + [self endBackgroundTask]; +#endif +} + +- (void)setStopNotificationNeeded:(BOOL)flag { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _isStopNotificationNeeded = flag; + } // @synchronized(self) +} + +- (void)sendStopNotificationIfNeeded { + BOOL sendNow = NO; + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (_isStopNotificationNeeded) { + _isStopNotificationNeeded = NO; + sendNow = YES; + } + } // @synchronized(self) + + if (sendNow) { + [self postNotificationOnMainThreadWithName:kGTMSessionFetcherStoppedNotification + userInfo:nil + requireAsync:NO]; + } +} + +- (void)retryFetch { + [self stopFetchReleasingCallbacks:NO]; + + // A retry will need a configuration with a fresh session identifier. + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (_sessionIdentifier && _didCreateSessionIdentifier) { + [self forgetSessionIdentifierForFetcher]; + _configuration = nil; + } + + if (_canShareSession) { + // Force a grab of the current session from the fetcher service in case + // the service's old one has become invalid. + _session = nil; + } + } // @synchronized(self) + + [self beginFetchForRetry]; +} + +- (BOOL)waitForCompletionWithTimeout:(NSTimeInterval)timeoutInSeconds { + // Uncovered in upload fetcher testing, because the chunk fetcher is being waited on, and gets + // released by the upload code. The uploader just holds onto it with an ivar, and that gets + // nilled in the chunk fetcher callback. + // Used once in while loop just to avoid unused variable compiler warning. + __autoreleasing GTMSessionFetcher *holdSelf = self; + + NSDate *giveUpDate = [NSDate dateWithTimeIntervalSinceNow:timeoutInSeconds]; + + BOOL shouldSpinRunLoop = ([NSThread isMainThread] && + (!self.callbackQueue + || self.callbackQueue == dispatch_get_main_queue())); + BOOL expired = NO; + + // Loop until the callbacks have been called and released, and until + // the connection is no longer pending, until there are no callback dispatches + // in flight, or until the timeout has expired. + int64_t delta = (int64_t)(100 * NSEC_PER_MSEC); // 100 ms + while (1) { + BOOL isTaskInProgress = (holdSelf->_sessionTask + && [_sessionTask state] != NSURLSessionTaskStateCompleted); + BOOL needsToCallCompletion = (_completionHandler != nil); + BOOL isCallbackInProgress = (_callbackGroup + && dispatch_group_wait(_callbackGroup, dispatch_time(DISPATCH_TIME_NOW, delta))); + + if (!isTaskInProgress && !needsToCallCompletion && !isCallbackInProgress) break; + + expired = ([giveUpDate timeIntervalSinceNow] < 0); + if (expired) { + GTMSESSION_LOG_DEBUG(@"GTMSessionFetcher waitForCompletionWithTimeout:%0.1f expired -- " + @"%@%@%@", timeoutInSeconds, + isTaskInProgress ? @"taskInProgress " : @"", + needsToCallCompletion ? @"needsToCallCompletion " : @"", + isCallbackInProgress ? @"isCallbackInProgress" : @""); + break; + } + + // Run the current run loop 1/1000 of a second to give the networking + // code a chance to work + const NSTimeInterval kSpinInterval = 0.001; + if (shouldSpinRunLoop) { + NSDate *stopDate = [NSDate dateWithTimeIntervalSinceNow:kSpinInterval]; + [[NSRunLoop currentRunLoop] runUntilDate:stopDate]; + } else { + [NSThread sleepForTimeInterval:kSpinInterval]; + } + } + return !expired; +} + ++ (void)setGlobalTestBlock:(GTMSessionFetcherTestBlock GTM_NULLABLE_TYPE)block { +#if GTM_DISABLE_FETCHER_TEST_BLOCK + GTMSESSION_ASSERT_DEBUG(block == nil, @"test blocks disabled"); +#endif + gGlobalTestBlock = [block copy]; +} + +#if GTM_BACKGROUND_TASK_FETCHING + +static GTM_NULLABLE_TYPE id gSubstituteUIApp; + ++ (void)setSubstituteUIApplication:(nullable id)app { + gSubstituteUIApp = app; +} + ++ (nullable id)substituteUIApplication { + return gSubstituteUIApp; +} + ++ (nullable id)fetcherUIApplication { + id app = gSubstituteUIApp; + if (app) return app; + + // iOS App extensions should not call [UIApplication sharedApplication], even + // if UIApplication responds to it. + + static Class applicationClass = nil; + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + BOOL isAppExtension = [[[NSBundle mainBundle] bundlePath] hasSuffix:@".appex"]; + if (!isAppExtension) { + Class cls = NSClassFromString(@"UIApplication"); + if (cls && [cls respondsToSelector:NSSelectorFromString(@"sharedApplication")]) { + applicationClass = cls; + } + } + }); + + if (applicationClass) { + app = (id)[applicationClass sharedApplication]; + } + return app; +} +#endif // GTM_BACKGROUND_TASK_FETCHING + +#pragma mark NSURLSession Delegate Methods + +// NSURLSession documentation indicates that redirectRequest can be passed to the handler +// but empirically redirectRequest lacks the HTTP body, so passing it will break POSTs. +// Instead, we construct a new request, a copy of the original, with overrides from the +// redirect. + +- (void)URLSession:(NSURLSession *)session + task:(NSURLSessionTask *)task +willPerformHTTPRedirection:(NSHTTPURLResponse *)redirectResponse + newRequest:(NSURLRequest *)redirectRequest + completionHandler:(void (^)(NSURLRequest * GTM_NULLABLE_TYPE))handler { + [self setSessionTask:task]; + GTM_LOG_SESSION_DELEGATE(@"%@ %p URLSession:%@ task:%@ willPerformHTTPRedirection:%@ newRequest:%@", + [self class], self, session, task, redirectResponse, redirectRequest); + + if ([self userStoppedFetching]) { + handler(nil); + return; + } + if (redirectRequest && redirectResponse) { + // Copy the original request, including the body. + NSURLRequest *originalRequest = self.request; + NSMutableURLRequest *newRequest = [originalRequest mutableCopy]; + + // Disallow scheme changes (say, from https to http). + NSURL *originalRequestURL = originalRequest.URL; + NSURL *redirectRequestURL = redirectRequest.URL; + + NSString *originalScheme = originalRequestURL.scheme; + NSString *redirectScheme = redirectRequestURL.scheme; + + if (originalScheme != nil + && [originalScheme caseInsensitiveCompare:@"http"] == NSOrderedSame + && redirectScheme != nil + && [redirectScheme caseInsensitiveCompare:@"https"] == NSOrderedSame) { + // Allow the change from http to https. + } else { + // Disallow any other scheme changes. + redirectScheme = originalScheme; + } + // The new requests's URL overrides the original's URL. + NSURLComponents *components = [NSURLComponents componentsWithURL:redirectRequestURL + resolvingAgainstBaseURL:NO]; + components.scheme = redirectScheme; + NSURL *newURL = components.URL; + [newRequest setURL:newURL]; + + // Any headers in the redirect override headers in the original. + NSDictionary *redirectHeaders = redirectRequest.allHTTPHeaderFields; + for (NSString *key in redirectHeaders) { + NSString *value = [redirectHeaders objectForKey:key]; + [newRequest setValue:value forHTTPHeaderField:key]; + } + + redirectRequest = newRequest; + + // Log the response we just received + [self setResponse:redirectResponse]; + [self logNowWithError:nil]; + + GTMSessionFetcherWillRedirectBlock willRedirectBlock = self.willRedirectBlock; + if (willRedirectBlock) { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + [self invokeOnCallbackQueueAfterUserStopped:YES + block:^{ + willRedirectBlock(redirectResponse, redirectRequest, ^(NSURLRequest *clientRequest) { + + // Update the request for future logging. + [self updateMutableRequest:[clientRequest mutableCopy]]; + + handler(clientRequest); + }); + }]; + } // @synchronized(self) + return; + } + // Continues here if the client did not provide a redirect block. + + // Update the request for future logging. + [self updateMutableRequest:[redirectRequest mutableCopy]]; + } + handler(redirectRequest); +} + +- (void)URLSession:(NSURLSession *)session + dataTask:(NSURLSessionDataTask *)dataTask +didReceiveResponse:(NSURLResponse *)response + completionHandler:(void (^)(NSURLSessionResponseDisposition disposition))handler { + [self setSessionTask:dataTask]; + GTM_LOG_SESSION_DELEGATE(@"%@ %p URLSession:%@ dataTask:%@ didReceiveResponse:%@", + [self class], self, session, dataTask, response); + void (^accumulateAndFinish)(NSURLSessionResponseDisposition) = + ^(NSURLSessionResponseDisposition dispositionValue) { + // This method is called when the server has determined that it + // has enough information to create the NSURLResponse + // it can be called multiple times, for example in the case of a + // redirect, so each time we reset the data. + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + BOOL hadPreviousData = self->_downloadedLength > 0; + + [self->_downloadedData setLength:0]; + self->_downloadedLength = 0; + + if (hadPreviousData && (dispositionValue != NSURLSessionResponseCancel)) { + // Tell the accumulate block to discard prior data. + GTMSessionFetcherAccumulateDataBlock accumulateBlock = self->_accumulateDataBlock; + if (accumulateBlock) { + [self invokeOnCallbackQueueUnlessStopped:^{ + accumulateBlock(nil); + }]; + } + } + } // @synchronized(self) + handler(dispositionValue); + }; + + GTMSessionFetcherDidReceiveResponseBlock receivedResponseBlock; + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + receivedResponseBlock = _didReceiveResponseBlock; + if (receivedResponseBlock) { + // We will ultimately need to call back to NSURLSession's handler with the disposition value + // for this delegate method even if the user has stopped the fetcher. + [self invokeOnCallbackQueueAfterUserStopped:YES + block:^{ + receivedResponseBlock(response, ^(NSURLSessionResponseDisposition desiredDisposition) { + accumulateAndFinish(desiredDisposition); + }); + }]; + } + } // @synchronized(self) + + if (receivedResponseBlock == nil) { + accumulateAndFinish(NSURLSessionResponseAllow); + } +} + +- (void)URLSession:(NSURLSession *)session + dataTask:(NSURLSessionDataTask *)dataTask +didBecomeDownloadTask:(NSURLSessionDownloadTask *)downloadTask { + GTM_LOG_SESSION_DELEGATE(@"%@ %p URLSession:%@ dataTask:%@ didBecomeDownloadTask:%@", + [self class], self, session, dataTask, downloadTask); + [self setSessionTask:downloadTask]; +} + + +- (void)URLSession:(NSURLSession *)session + task:(NSURLSessionTask *)task +didReceiveChallenge:(NSURLAuthenticationChallenge *)challenge + completionHandler:(void (^)(NSURLSessionAuthChallengeDisposition disposition, + NSURLCredential * GTM_NULLABLE_TYPE credential))handler { + [self setSessionTask:task]; + GTM_LOG_SESSION_DELEGATE(@"%@ %p URLSession:%@ task:%@ didReceiveChallenge:%@", + [self class], self, session, task, challenge); + + GTMSessionFetcherChallengeBlock challengeBlock = self.challengeBlock; + if (challengeBlock) { + // The fetcher user has provided custom challenge handling. + // + // We will ultimately need to call back to NSURLSession's handler with the disposition value + // for this delegate method even if the user has stopped the fetcher. + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + [self invokeOnCallbackQueueAfterUserStopped:YES + block:^{ + challengeBlock(self, challenge, handler); + }]; + } + } else { + // No challenge block was provided by the client. + [self respondToChallenge:challenge + completionHandler:handler]; + } +} + +- (void)respondToChallenge:(NSURLAuthenticationChallenge *)challenge + completionHandler:(void (^)(NSURLSessionAuthChallengeDisposition disposition, + NSURLCredential * GTM_NULLABLE_TYPE credential))handler { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + NSInteger previousFailureCount = [challenge previousFailureCount]; + if (previousFailureCount <= 2) { + NSURLProtectionSpace *protectionSpace = [challenge protectionSpace]; + NSString *authenticationMethod = [protectionSpace authenticationMethod]; + if ([authenticationMethod isEqual:NSURLAuthenticationMethodServerTrust]) { + // SSL. + // + // Background sessions seem to require an explicit check of the server trust object + // rather than default handling. + SecTrustRef serverTrust = challenge.protectionSpace.serverTrust; + if (serverTrust == NULL) { + // No server trust information is available. + handler(NSURLSessionAuthChallengePerformDefaultHandling, nil); + } else { + // Server trust information is available. + void (^callback)(SecTrustRef, BOOL) = ^(SecTrustRef trustRef, BOOL allow){ + if (allow) { + NSURLCredential *trustCredential = [NSURLCredential credentialForTrust:trustRef]; + handler(NSURLSessionAuthChallengeUseCredential, trustCredential); + } else { + GTMSESSION_LOG_DEBUG(@"Cancelling authentication challenge for %@", self->_request.URL); + handler(NSURLSessionAuthChallengeCancelAuthenticationChallenge, nil); + } + }; + if (_allowInvalidServerCertificates) { + callback(serverTrust, YES); + } else { + [[self class] evaluateServerTrust:serverTrust + forRequest:_request + completionHandler:callback]; + } + } + return; + } + + NSURLCredential *credential = _credential; + + if ([[challenge protectionSpace] isProxy] && _proxyCredential != nil) { + credential = _proxyCredential; + } + + if (credential) { + handler(NSURLSessionAuthChallengeUseCredential, credential); + } else { + // The credential is still nil; tell the OS to use the default handling. This is needed + // for things that can come out of the keychain (proxies, client certificates, etc.). + // + // Note: Looking up a credential with NSURLCredentialStorage's + // defaultCredentialForProtectionSpace: is *not* the same invoking the handler with + // NSURLSessionAuthChallengePerformDefaultHandling. In the case of + // NSURLAuthenticationMethodClientCertificate, you can get nil back from + // NSURLCredentialStorage, while using this code path instead works. + handler(NSURLSessionAuthChallengePerformDefaultHandling, nil); + } + + } else { + // We've failed auth 3 times. The completion handler will be called with code + // NSURLErrorCancelled. + handler(NSURLSessionAuthChallengeCancelAuthenticationChallenge, nil); + } + } // @synchronized(self) +} + +// Validate the certificate chain. +// +// This may become a public method if it appears to be useful to users. ++ (void)evaluateServerTrust:(SecTrustRef)serverTrust + forRequest:(NSURLRequest *)request + completionHandler:(void (^)(SecTrustRef trustRef, BOOL allow))handler { + // Retain the trust object to avoid a SecTrustEvaluate() crash on iOS 7. + CFRetain(serverTrust); + + // Evaluate the certificate chain. + // + // The delegate queue may be the main thread. Trust evaluation could cause some + // blocking network activity, so we must evaluate async, as documented at + // https://developer.apple.com/library/ios/technotes/tn2232/ + // + // We must also avoid multiple uses of the trust object, per docs: + // "It is not safe to call this function concurrently with any other function that uses + // the same trust management object, or to re-enter this function for the same trust + // management object." + // + // SecTrustEvaluateAsync both does sync execution of Evaluate and calls back on the + // queue passed to it, according to at sources in + // http://www.opensource.apple.com/source/libsecurity_keychain/libsecurity_keychain-55050.9/lib/SecTrust.cpp + // It would require a global serial queue to ensure the evaluate happens only on a + // single thread at a time, so we'll stick with using SecTrustEvaluate on a background + // thread. + dispatch_queue_t evaluateBackgroundQueue = + dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); + dispatch_async(evaluateBackgroundQueue, ^{ + // It looks like the implementation of SecTrustEvaluate() on Mac grabs a global lock, + // so it may be redundant for us to also lock, but it's easy to synchronize here + // anyway. + SecTrustResultType trustEval = kSecTrustResultInvalid; + BOOL shouldAllow; + OSStatus trustError; + @synchronized([GTMSessionFetcher class]) { + GTMSessionMonitorSynchronized([GTMSessionFetcher class]); + + trustError = SecTrustEvaluate(serverTrust, &trustEval); + } + if (trustError != errSecSuccess) { + GTMSESSION_LOG_DEBUG(@"Error %d evaluating trust for %@", + (int)trustError, request); + shouldAllow = NO; + } else { + // Having a trust level "unspecified" by the user is the usual result, described at + // https://developer.apple.com/library/mac/qa/qa1360 + if (trustEval == kSecTrustResultUnspecified + || trustEval == kSecTrustResultProceed) { + shouldAllow = YES; + } else { + shouldAllow = NO; + GTMSESSION_LOG_DEBUG(@"Challenge SecTrustResultType %u for %@, properties: %@", + trustEval, request.URL.host, + CFBridgingRelease(SecTrustCopyProperties(serverTrust))); + } + } + handler(serverTrust, shouldAllow); + + CFRelease(serverTrust); + }); +} + +- (void)invokeOnCallbackQueueUnlessStopped:(void (^)(void))block { + [self invokeOnCallbackQueueAfterUserStopped:NO + block:block]; +} + +- (void)invokeOnCallbackQueueAfterUserStopped:(BOOL)afterStopped + block:(void (^)(void))block { + GTMSessionCheckSynchronized(self); + + [self invokeOnCallbackUnsynchronizedQueueAfterUserStopped:afterStopped + block:block]; +} + +- (void)invokeOnCallbackUnsynchronizedQueueAfterUserStopped:(BOOL)afterStopped + block:(void (^)(void))block { + // testBlock simulation code may not be synchronizing when this is invoked. + [self invokeOnCallbackQueue:_callbackQueue + afterUserStopped:afterStopped + block:block]; +} + +- (void)invokeOnCallbackQueue:(dispatch_queue_t)callbackQueue + afterUserStopped:(BOOL)afterStopped + block:(void (^)(void))block { + if (callbackQueue) { + dispatch_group_async(_callbackGroup, callbackQueue, ^{ + if (!afterStopped) { + NSDate *serviceStoppedAllDate = [self->_service stoppedAllFetchersDate]; + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + // Avoid a race between stopFetching and the callback. + if (self->_userStoppedFetching) { + return; + } + + // Also avoid calling back if the service has stopped all fetchers + // since this one was created. The fetcher may have stopped before + // stopAllFetchers was invoked, so _userStoppedFetching wasn't set, + // but the app still won't expect the callback to fire after + // the service's stopAllFetchers was invoked. + if (serviceStoppedAllDate + && [self->_initialBeginFetchDate compare:serviceStoppedAllDate] != NSOrderedDescending) { + // stopAllFetchers was called after this fetcher began. + return; + } + } // @synchronized(self) + } + block(); + }); + } +} + +- (void)invokeFetchCallbacksOnCallbackQueueWithData:(GTM_NULLABLE NSData *)data + error:(GTM_NULLABLE NSError *)error { + // Callbacks will be released in the method stopFetchReleasingCallbacks: + GTMSessionFetcherCompletionHandler handler; + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + handler = _completionHandler; + + if (handler) { + [self invokeOnCallbackQueueUnlessStopped:^{ + handler(data, error); + + // Post a notification, primarily to allow code to collect responses for + // testing. + // + // The observing code is not likely on the fetcher's callback + // queue, so this posts explicitly to the main queue. + NSMutableDictionary *userInfo = [NSMutableDictionary dictionary]; + if (data) { + userInfo[kGTMSessionFetcherCompletionDataKey] = data; + } + if (error) { + userInfo[kGTMSessionFetcherCompletionErrorKey] = error; + } + [self postNotificationOnMainThreadWithName:kGTMSessionFetcherCompletionInvokedNotification + userInfo:userInfo + requireAsync:NO]; + }]; + } + } // @synchronized(self) +} + +- (void)postNotificationOnMainThreadWithName:(NSString *)noteName + userInfo:(GTM_NULLABLE NSDictionary *)userInfo + requireAsync:(BOOL)requireAsync { + dispatch_block_t postBlock = ^{ + [[NSNotificationCenter defaultCenter] postNotificationName:noteName + object:self + userInfo:userInfo]; + }; + + if ([NSThread isMainThread] && !requireAsync) { + // Post synchronously for compatibility with older code using the fetcher. + + // Avoid calling out to other code from inside a sync block to avoid risk + // of a deadlock or of recursive sync. + GTMSessionCheckNotSynchronized(self); + + postBlock(); + } else { + dispatch_async(dispatch_get_main_queue(), postBlock); + } +} + +- (void)URLSession:(NSURLSession *)session + task:(NSURLSessionTask *)uploadTask + needNewBodyStream:(void (^)(NSInputStream * GTM_NULLABLE_TYPE bodyStream))completionHandler { + [self setSessionTask:uploadTask]; + GTM_LOG_SESSION_DELEGATE(@"%@ %p URLSession:%@ task:%@ needNewBodyStream:", + [self class], self, session, uploadTask); + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + GTMSessionFetcherBodyStreamProvider provider = _bodyStreamProvider; +#if !STRIP_GTM_FETCH_LOGGING + if ([self respondsToSelector:@selector(loggedStreamProviderForStreamProvider:)]) { + provider = [self performSelector:@selector(loggedStreamProviderForStreamProvider:) + withObject:provider]; + } +#endif + if (provider) { + [self invokeOnCallbackQueueUnlessStopped:^{ + provider(completionHandler); + }]; + } else { + GTMSESSION_ASSERT_DEBUG(NO, @"NSURLSession expects a stream provider"); + + completionHandler(nil); + } + } // @synchronized(self) +} + +- (void)URLSession:(NSURLSession *)session + task:(NSURLSessionTask *)task + didSendBodyData:(int64_t)bytesSent + totalBytesSent:(int64_t)totalBytesSent +totalBytesExpectedToSend:(int64_t)totalBytesExpectedToSend { + [self setSessionTask:task]; + GTM_LOG_SESSION_DELEGATE(@"%@ %p URLSession:%@ task:%@ didSendBodyData:%lld" + @" totalBytesSent:%lld totalBytesExpectedToSend:%lld", + [self class], self, session, task, bytesSent, totalBytesSent, + totalBytesExpectedToSend); + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (!_sendProgressBlock) { + return; + } + // We won't hold on to send progress block; it's ok to not send it if the upload finishes. + [self invokeOnCallbackQueueUnlessStopped:^{ + GTMSessionFetcherSendProgressBlock progressBlock; + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + progressBlock = self->_sendProgressBlock; + } + if (progressBlock) { + progressBlock(bytesSent, totalBytesSent, totalBytesExpectedToSend); + } + }]; + } // @synchronized(self) +} + +- (void)URLSession:(NSURLSession *)session + dataTask:(NSURLSessionDataTask *)dataTask + didReceiveData:(NSData *)data { + [self setSessionTask:dataTask]; + NSUInteger bufferLength = data.length; + GTM_LOG_SESSION_DELEGATE(@"%@ %p URLSession:%@ dataTask:%@ didReceiveData:%p (%llu bytes)", + [self class], self, session, dataTask, data, + (unsigned long long)bufferLength); + if (bufferLength == 0) { + // Observed on completing an out-of-process upload. + return; + } + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + GTMSessionFetcherAccumulateDataBlock accumulateBlock = _accumulateDataBlock; + if (accumulateBlock) { + // Let the client accumulate the data. + _downloadedLength += bufferLength; + [self invokeOnCallbackQueueUnlessStopped:^{ + accumulateBlock(data); + }]; + } else if (!_userStoppedFetching) { + // Append to the mutable data buffer unless the fetch has been cancelled. + + // Resumed upload tasks may not yet have a data buffer. + if (_downloadedData == nil) { + // Using NSClassFromString for iOS 6 compatibility. + GTMSESSION_ASSERT_DEBUG( + ![dataTask isKindOfClass:NSClassFromString(@"NSURLSessionDownloadTask")], + @"Resumed download tasks should not receive data bytes"); + _downloadedData = [[NSMutableData alloc] init]; + } + + [_downloadedData appendData:data]; + _downloadedLength = (int64_t)_downloadedData.length; + + // We won't hold on to receivedProgressBlock here; it's ok to not send + // it if the transfer finishes. + if (_receivedProgressBlock) { + [self invokeOnCallbackQueueUnlessStopped:^{ + GTMSessionFetcherReceivedProgressBlock progressBlock; + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + progressBlock = self->_receivedProgressBlock; + } + if (progressBlock) { + progressBlock((int64_t)bufferLength, self->_downloadedLength); + } + }]; + } + } + } // @synchronized(self) +} + +- (void)URLSession:(NSURLSession *)session + dataTask:(NSURLSessionDataTask *)dataTask + willCacheResponse:(NSCachedURLResponse *)proposedResponse + completionHandler:(void (^)(NSCachedURLResponse *cachedResponse))completionHandler { + GTM_LOG_SESSION_DELEGATE(@"%@ %p URLSession:%@ dataTask:%@ willCacheResponse:%@ %@", + [self class], self, session, dataTask, + proposedResponse, proposedResponse.response); + GTMSessionFetcherWillCacheURLResponseBlock callback; + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + callback = _willCacheURLResponseBlock; + + if (callback) { + [self invokeOnCallbackQueueAfterUserStopped:YES + block:^{ + callback(proposedResponse, completionHandler); + }]; + } + } // @synchronized(self) + if (!callback) { + completionHandler(proposedResponse); + } +} + + +- (void)URLSession:(NSURLSession *)session + downloadTask:(NSURLSessionDownloadTask *)downloadTask + didWriteData:(int64_t)bytesWritten + totalBytesWritten:(int64_t)totalBytesWritten +totalBytesExpectedToWrite:(int64_t)totalBytesExpectedToWrite { + GTM_LOG_SESSION_DELEGATE(@"%@ %p URLSession:%@ downloadTask:%@ didWriteData:%lld" + @" bytesWritten:%lld totalBytesExpectedToWrite:%lld", + [self class], self, session, downloadTask, bytesWritten, + totalBytesWritten, totalBytesExpectedToWrite); + [self setSessionTask:downloadTask]; + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if ((totalBytesExpectedToWrite != NSURLSessionTransferSizeUnknown) && + (totalBytesExpectedToWrite < totalBytesWritten)) { + // Have observed cases were bytesWritten == totalBytesExpectedToWrite, + // but totalBytesWritten > totalBytesExpectedToWrite, so setting to unkown in these cases. + totalBytesExpectedToWrite = NSURLSessionTransferSizeUnknown; + } + // We won't hold on to download progress block during the enqueue; + // it's ok to not send it if the upload finishes. + + [self invokeOnCallbackQueueUnlessStopped:^{ + GTMSessionFetcherDownloadProgressBlock progressBlock; + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + progressBlock = self->_downloadProgressBlock; + } + if (progressBlock) { + progressBlock(bytesWritten, totalBytesWritten, totalBytesExpectedToWrite); + } + }]; + } // @synchronized(self) +} + +- (void)URLSession:(NSURLSession *)session + downloadTask:(NSURLSessionDownloadTask *)downloadTask + didResumeAtOffset:(int64_t)fileOffset +expectedTotalBytes:(int64_t)expectedTotalBytes { + GTM_LOG_SESSION_DELEGATE(@"%@ %p URLSession:%@ downloadTask:%@ didResumeAtOffset:%lld" + @" expectedTotalBytes:%lld", + [self class], self, session, downloadTask, fileOffset, + expectedTotalBytes); + [self setSessionTask:downloadTask]; +} + +- (void)URLSession:(NSURLSession *)session + downloadTask:(NSURLSessionDownloadTask *)downloadTask +didFinishDownloadingToURL:(NSURL *)downloadLocationURL { + // Download may have relaunched app, so update _sessionTask. + [self setSessionTask:downloadTask]; + GTM_LOG_SESSION_DELEGATE(@"%@ %p URLSession:%@ downloadTask:%@ didFinishDownloadingToURL:%@", + [self class], self, session, downloadTask, downloadLocationURL); + NSNumber *fileSizeNum; + [downloadLocationURL getResourceValue:&fileSizeNum + forKey:NSURLFileSizeKey + error:NULL]; + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + NSURL *destinationURL = _destinationFileURL; + + _downloadedLength = fileSizeNum.longLongValue; + + // Overwrite any previous file at the destination URL. + NSFileManager *fileMgr = [NSFileManager defaultManager]; + NSError *removeError; + if (![fileMgr removeItemAtURL:destinationURL error:&removeError] + && removeError.code != NSFileNoSuchFileError) { + GTMSESSION_LOG_DEBUG(@"Could not remove previous file at %@ due to %@", + downloadLocationURL.path, removeError); + } + + NSInteger statusCode = [self statusCodeUnsynchronized]; + if (statusCode < 200 || statusCode > 399) { + // In OS X 10.11, the response body is written to a file even on a server + // status error. For convenience of the fetcher client, we'll skip saving the + // downloaded body to the destination URL so that clients do not need to know + // to delete the file following fetch errors. + GTMSESSION_LOG_DEBUG(@"Abandoning download due to status %ld, file %@", + (long)statusCode, downloadLocationURL.path); + + // On error code, add the contents of the temporary file to _downloadTaskErrorData + // This way fetcher clients have access to error details possibly passed by the server. + if (_downloadedLength > 0 && _downloadedLength <= kMaximumDownloadErrorDataLength) { + _downloadTaskErrorData = [NSData dataWithContentsOfURL:downloadLocationURL]; + } else if (_downloadedLength > kMaximumDownloadErrorDataLength) { + GTMSESSION_LOG_DEBUG(@"Download error data for file %@ not passed to userInfo due to size " + @"%lld", downloadLocationURL.path, _downloadedLength); + } + } else { + NSError *moveError; + NSURL *destinationFolderURL = [destinationURL URLByDeletingLastPathComponent]; + BOOL didMoveDownload = NO; + if ([fileMgr createDirectoryAtURL:destinationFolderURL + withIntermediateDirectories:YES + attributes:nil + error:&moveError]) { + didMoveDownload = [fileMgr moveItemAtURL:downloadLocationURL + toURL:destinationURL + error:&moveError]; + } + if (!didMoveDownload) { + _downloadFinishedError = moveError; + } + GTM_LOG_BACKGROUND_SESSION(@"%@ %p Moved download from \"%@\" to \"%@\" %@", + [self class], self, + downloadLocationURL.path, destinationURL.path, + error ? error : @""); + } + } // @synchronized(self) +} + +/* Sent as the last message related to a specific task. Error may be + * nil, which implies that no error occurred and this task is complete. + */ +- (void)URLSession:(NSURLSession *)session + task:(NSURLSessionTask *)task +didCompleteWithError:(NSError *)error { + [self setSessionTask:task]; + GTM_LOG_SESSION_DELEGATE(@"%@ %p URLSession:%@ task:%@ didCompleteWithError:%@", + [self class], self, session, task, error); + + NSInteger status = self.statusCode; + BOOL forceAssumeRetry = NO; + BOOL succeeded = NO; + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + +#if !GTM_DISABLE_FETCHER_TEST_BLOCK + // The task is never resumed when a testBlock is used. When the session is destroyed, + // we should ignore the callback, since the testBlock support code itself invokes + // shouldRetryNowForStatus: and finishWithError:shouldRetry: + if (_isUsingTestBlock) return; +#endif + + if (error == nil) { + error = _downloadFinishedError; + } + succeeded = (error == nil && status >= 0 && status < 300); + if (succeeded) { + // Succeeded. + _bodyLength = task.countOfBytesSent; + } + } // @synchronized(self) + + if (succeeded) { + [self finishWithError:nil shouldRetry:NO]; + return; + } + // For background redirects, no delegate method is called, so we cannot restore a stripped + // Authorization header, so if a 403 ("Forbidden") was generated due to a missing OAuth 2 header, + // set the current request's URL to the redirected URL, so we in effect restore the Authorization + // header. + if ((status == 403) && self.usingBackgroundSession) { + NSURL *redirectURL = self.response.URL; + NSURLRequest *request = self.request; + if (![request.URL isEqual:redirectURL]) { + NSString *authorizationHeader = [request.allHTTPHeaderFields objectForKey:@"Authorization"]; + if (authorizationHeader != nil) { + NSMutableURLRequest *mutableRequest = [request mutableCopy]; + mutableRequest.URL = redirectURL; + [self updateMutableRequest:mutableRequest]; + // Avoid assuming the session is still valid. + self.session = nil; + forceAssumeRetry = YES; + } + } + } + + // If invalidating the session was deferred in stopFetchReleasingCallbacks: then do it now. + NSURLSession *oldSession = self.sessionNeedingInvalidation; + if (oldSession) { + [self setSessionNeedingInvalidation:NULL]; + [oldSession finishTasksAndInvalidate]; + } + + // Failed. + [self shouldRetryNowForStatus:status + error:error + forceAssumeRetry:forceAssumeRetry + response:^(BOOL shouldRetry) { + [self finishWithError:error shouldRetry:shouldRetry]; + }]; +} + +#if TARGET_OS_IPHONE +- (void)URLSessionDidFinishEventsForBackgroundURLSession:(NSURLSession *)session { + GTM_LOG_SESSION_DELEGATE(@"%@ %p URLSessionDidFinishEventsForBackgroundURLSession:%@", + [self class], self, session); + [self removePersistedBackgroundSessionFromDefaults]; + + GTMSessionFetcherSystemCompletionHandler handler; + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + handler = self.systemCompletionHandler; + self.systemCompletionHandler = nil; + } // @synchronized(self) + if (handler) { + GTM_LOG_BACKGROUND_SESSION(@"%@ %p Calling system completionHandler", [self class], self); + handler(); + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + NSURLSession *oldSession = _session; + _session = nil; + if (_shouldInvalidateSession) { + [oldSession finishTasksAndInvalidate]; + } + } // @synchronized(self) + } +} +#endif + +- (void)URLSession:(NSURLSession *)session didBecomeInvalidWithError:(GTM_NULLABLE NSError *)error { + // This may happen repeatedly for retries. On authentication callbacks, the retry + // may begin before the prior session sends the didBecomeInvalid delegate message. + GTM_LOG_SESSION_DELEGATE(@"%@ %p URLSession:%@ didBecomeInvalidWithError:%@", + [self class], self, session, error); + if (session == (NSURLSession *)self.session) { + GTM_LOG_SESSION_DELEGATE(@" Unexpected retained invalid session: %@", session); + self.session = nil; + } +} + +- (void)finishWithError:(GTM_NULLABLE NSError *)error shouldRetry:(BOOL)shouldRetry { + [self removePersistedBackgroundSessionFromDefaults]; + + BOOL shouldStopFetching = YES; + NSData *downloadedData = nil; +#if !STRIP_GTM_FETCH_LOGGING + BOOL shouldDeferLogging = NO; +#endif + BOOL shouldBeginRetryTimer = NO; + NSInteger status = [self statusCode]; + NSURL *destinationURL = self.destinationFileURL; + + BOOL fetchSucceeded = (error == nil && status >= 0 && status < 300); + +#if !STRIP_GTM_FETCH_LOGGING + if (!fetchSucceeded) { + if (!shouldDeferLogging && !self.hasLoggedError) { + [self logNowWithError:error]; + self.hasLoggedError = YES; + } + } +#endif // !STRIP_GTM_FETCH_LOGGING + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + +#if !STRIP_GTM_FETCH_LOGGING + shouldDeferLogging = _deferResponseBodyLogging; +#endif + if (fetchSucceeded) { + // Success + if ((_downloadedData.length > 0) && (destinationURL != nil)) { + // Overwrite any previous file at the destination URL. + NSFileManager *fileMgr = [NSFileManager defaultManager]; + [fileMgr removeItemAtURL:destinationURL + error:NULL]; + NSURL *destinationFolderURL = [destinationURL URLByDeletingLastPathComponent]; + BOOL didMoveDownload = NO; + if ([fileMgr createDirectoryAtURL:destinationFolderURL + withIntermediateDirectories:YES + attributes:nil + error:&error]) { + didMoveDownload = [_downloadedData writeToURL:destinationURL + options:NSDataWritingAtomic + error:&error]; + } + if (didMoveDownload) { + _downloadedData = nil; + } else { + _downloadFinishedError = error; + } + } + downloadedData = _downloadedData; + } else { + // Unsuccessful with error or status over 300. Retry or notify the delegate of failure + if (shouldRetry) { + // Retrying. + shouldBeginRetryTimer = YES; + shouldStopFetching = NO; + } else { + if (error == nil) { + // Create an error. + NSDictionary *userInfo = GTMErrorUserInfoForData( + _downloadedData.length > 0 ? _downloadedData : _downloadTaskErrorData, + [self responseHeadersUnsynchronized]); + + error = [NSError errorWithDomain:kGTMSessionFetcherStatusDomain + code:status + userInfo:userInfo]; + } else { + // If the error had resume data, and the client supplied a resume block, pass the + // data to the client. + void (^resumeBlock)(NSData *) = _resumeDataBlock; + _resumeDataBlock = nil; + if (resumeBlock) { + NSData *resumeData = [error.userInfo objectForKey:NSURLSessionDownloadTaskResumeData]; + if (resumeData) { + [self invokeOnCallbackQueueAfterUserStopped:YES block:^{ + resumeBlock(resumeData); + }]; + } + } + } + if (_downloadedData.length > 0) { + downloadedData = _downloadedData; + } + // If the error occurred after retries, report the number and duration of the + // retries. This provides a clue to a developer looking at the error description + // that the fetcher did retry before failing with this error. + if (_retryCount > 0) { + NSMutableDictionary *userInfoWithRetries = + [NSMutableDictionary dictionaryWithDictionary:(NSDictionary *)error.userInfo]; + NSTimeInterval timeSinceInitialRequest = -[_initialRequestDate timeIntervalSinceNow]; + [userInfoWithRetries setObject:@(timeSinceInitialRequest) + forKey:kGTMSessionFetcherElapsedIntervalWithRetriesKey]; + [userInfoWithRetries setObject:@(_retryCount) + forKey:kGTMSessionFetcherNumberOfRetriesDoneKey]; + error = [NSError errorWithDomain:(NSString *)error.domain + code:error.code + userInfo:userInfoWithRetries]; + } + } + } + } // @synchronized(self) + + if (shouldBeginRetryTimer) { + [self beginRetryTimer]; + } + + // We want to send the stop notification before calling the delegate's + // callback selector, since the callback selector may release all of + // the fetcher properties that the client is using to track the fetches. + // + // We'll also stop now so that, to any observers watching the notifications, + // it doesn't look like our wait for a retry (which may be long, + // 30 seconds or more) is part of the network activity. + [self sendStopNotificationIfNeeded]; + + if (shouldStopFetching) { + [self invokeFetchCallbacksOnCallbackQueueWithData:downloadedData + error:error]; + // The upload subclass doesn't want to release callbacks until upload chunks have completed. + BOOL shouldRelease = [self shouldReleaseCallbacksUponCompletion]; + [self stopFetchReleasingCallbacks:shouldRelease]; + } + +#if !STRIP_GTM_FETCH_LOGGING + // _hasLoggedError is only set by this method + if (!shouldDeferLogging && !_hasLoggedError) { + [self logNowWithError:error]; + } +#endif +} + +- (BOOL)shouldReleaseCallbacksUponCompletion { + // A subclass can override this to keep callbacks around after the + // connection has finished successfully + return YES; +} + +- (void)logNowWithError:(GTM_NULLABLE NSError *)error { + GTMSessionCheckNotSynchronized(self); + + // If the logging category is available, then log the current request, + // response, data, and error + if ([self respondsToSelector:@selector(logFetchWithError:)]) { + [self performSelector:@selector(logFetchWithError:) withObject:error]; + } +} + +#pragma mark Retries + +- (BOOL)isRetryError:(NSError *)error { + struct RetryRecord { + __unsafe_unretained NSString *const domain; + NSInteger code; + }; + + struct RetryRecord retries[] = { + { kGTMSessionFetcherStatusDomain, 408 }, // request timeout + { kGTMSessionFetcherStatusDomain, 502 }, // failure gatewaying to another server + { kGTMSessionFetcherStatusDomain, 503 }, // service unavailable + { kGTMSessionFetcherStatusDomain, 504 }, // request timeout + { NSURLErrorDomain, NSURLErrorTimedOut }, + { NSURLErrorDomain, NSURLErrorNetworkConnectionLost }, + { nil, 0 } + }; + + // NSError's isEqual always returns false for equal but distinct instances + // of NSError, so we have to compare the domain and code values explicitly + NSString *domain = error.domain; + NSInteger code = error.code; + for (int idx = 0; retries[idx].domain != nil; idx++) { + if (code == retries[idx].code && [domain isEqual:retries[idx].domain]) { + return YES; + } + } + return NO; +} + +// shouldRetryNowForStatus:error: responds with YES if the user has enabled retries +// and the status or error is one that is suitable for retrying. "Suitable" +// means either the isRetryError:'s list contains the status or error, or the +// user's retry block is present and returns YES when called, or the +// authorizer may be able to fix. +- (void)shouldRetryNowForStatus:(NSInteger)status + error:(NSError *)error + forceAssumeRetry:(BOOL)forceAssumeRetry + response:(GTMSessionFetcherRetryResponse)response { + // Determine if a refreshed authorizer may avoid an authorization error + BOOL willRetry = NO; + + // We assume _authorizer is immutable after beginFetch, and _hasAttemptedAuthRefresh is modified + // only in this method, and this method is invoked on the serial delegate queue. + // + // We want to avoid calling the authorizer from inside a sync block. + BOOL isFirstAuthError = (_authorizer != nil + && !_hasAttemptedAuthRefresh + && status == GTMSessionFetcherStatusUnauthorized); // 401 + + BOOL hasPrimed = NO; + if (isFirstAuthError) { + if ([_authorizer respondsToSelector:@selector(primeForRefresh)]) { + hasPrimed = [_authorizer primeForRefresh]; + } + } + + BOOL shouldRetryForAuthRefresh = NO; + if (hasPrimed) { + shouldRetryForAuthRefresh = YES; + _hasAttemptedAuthRefresh = YES; + [self updateRequestValue:nil forHTTPHeaderField:@"Authorization"]; + } + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + BOOL shouldDoRetry = [self isRetryEnabledUnsynchronized]; + if (shouldDoRetry && ![self hasRetryAfterInterval]) { + + // Determine if we're doing exponential backoff retries + shouldDoRetry = [self nextRetryIntervalUnsynchronized] < _maxRetryInterval; + + if (shouldDoRetry) { + // If an explicit max retry interval was set, we expect repeated backoffs to take + // up to roughly twice that for repeated fast failures. If the initial attempt is + // already more than 3 times the max retry interval, then failures have taken a long time + // (such as from network timeouts) so don't retry again to avoid the app becoming + // unexpectedly unresponsive. + if (_maxRetryInterval > 0) { + NSTimeInterval maxAllowedIntervalBeforeRetry = _maxRetryInterval * 3; + NSTimeInterval timeSinceInitialRequest = -[_initialRequestDate timeIntervalSinceNow]; + if (timeSinceInitialRequest > maxAllowedIntervalBeforeRetry) { + shouldDoRetry = NO; + } + } + } + } + BOOL canRetry = shouldRetryForAuthRefresh || forceAssumeRetry || shouldDoRetry; + if (canRetry) { + NSDictionary *userInfo = + GTMErrorUserInfoForData(_downloadedData, [self responseHeadersUnsynchronized]); + NSError *statusError = [NSError errorWithDomain:kGTMSessionFetcherStatusDomain + code:status + userInfo:userInfo]; + if (error == nil) { + error = statusError; + } + willRetry = shouldRetryForAuthRefresh || + forceAssumeRetry || + [self isRetryError:error] || + ((error != statusError) && [self isRetryError:statusError]); + + // If the user has installed a retry callback, consult that. + GTMSessionFetcherRetryBlock retryBlock = _retryBlock; + if (retryBlock) { + [self invokeOnCallbackQueueUnlessStopped:^{ + retryBlock(willRetry, error, response); + }]; + return; + } + } + } // @synchronized(self) + response(willRetry); +} + +- (BOOL)hasRetryAfterInterval { + GTMSessionCheckSynchronized(self); + + NSDictionary *responseHeaders = [self responseHeadersUnsynchronized]; + NSString *retryAfterValue = [responseHeaders valueForKey:@"Retry-After"]; + return (retryAfterValue != nil); +} + +- (NSTimeInterval)retryAfterInterval { + GTMSessionCheckSynchronized(self); + + NSDictionary *responseHeaders = [self responseHeadersUnsynchronized]; + NSString *retryAfterValue = [responseHeaders valueForKey:@"Retry-After"]; + if (retryAfterValue == nil) { + return 0; + } + // Retry-After formatted as HTTP-date | delta-seconds + // Reference: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html + NSDateFormatter *rfc1123DateFormatter = [[NSDateFormatter alloc] init]; + rfc1123DateFormatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]; + rfc1123DateFormatter.timeZone = [NSTimeZone timeZoneWithAbbreviation:@"GMT"]; + rfc1123DateFormatter.dateFormat = @"EEE',' dd MMM yyyy HH':'mm':'ss z"; + NSDate *retryAfterDate = [rfc1123DateFormatter dateFromString:retryAfterValue]; + NSTimeInterval retryAfterInterval = (retryAfterDate != nil) ? + retryAfterDate.timeIntervalSinceNow : retryAfterValue.intValue; + retryAfterInterval = MAX(0, retryAfterInterval); + return retryAfterInterval; +} + +- (void)beginRetryTimer { + if (![NSThread isMainThread]) { + // Defer creating and starting the timer until we're on the main thread to ensure it has + // a run loop. + dispatch_group_async(_callbackGroup, dispatch_get_main_queue(), ^{ + [self beginRetryTimer]; + }); + return; + } + + [self destroyRetryTimer]; + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + NSTimeInterval nextInterval = [self nextRetryIntervalUnsynchronized]; + NSTimeInterval maxInterval = _maxRetryInterval; + NSTimeInterval newInterval = MIN(nextInterval, (maxInterval > 0 ? maxInterval : DBL_MAX)); + NSTimeInterval newIntervalTolerance = (newInterval / 10) > 1.0 ?: 1.0; + + _lastRetryInterval = newInterval; + + _retryTimer = [NSTimer timerWithTimeInterval:newInterval + target:self + selector:@selector(retryTimerFired:) + userInfo:nil + repeats:NO]; + _retryTimer.tolerance = newIntervalTolerance; + [[NSRunLoop mainRunLoop] addTimer:_retryTimer + forMode:NSDefaultRunLoopMode]; + } // @synchronized(self) + + [self postNotificationOnMainThreadWithName:kGTMSessionFetcherRetryDelayStartedNotification + userInfo:nil + requireAsync:NO]; +} + +- (void)retryTimerFired:(NSTimer *)timer { + [self destroyRetryTimer]; + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _retryCount++; + } // @synchronized(self) + + NSOperationQueue *queue = self.sessionDelegateQueue; + [queue addOperationWithBlock:^{ + [self retryFetch]; + }]; +} + +- (void)destroyRetryTimer { + BOOL shouldNotify = NO; + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (_retryTimer) { + [_retryTimer invalidate]; + _retryTimer = nil; + shouldNotify = YES; + } + } + + if (shouldNotify) { + [self postNotificationOnMainThreadWithName:kGTMSessionFetcherRetryDelayStoppedNotification + userInfo:nil + requireAsync:NO]; + } +} + +- (NSUInteger)retryCount { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _retryCount; + } // @synchronized(self) +} + +- (NSTimeInterval)nextRetryInterval { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + NSTimeInterval interval = [self nextRetryIntervalUnsynchronized]; + return interval; + } // @synchronized(self) +} + +- (NSTimeInterval)nextRetryIntervalUnsynchronized { + GTMSessionCheckSynchronized(self); + + NSInteger statusCode = [self statusCodeUnsynchronized]; + if ((statusCode == 503) && [self hasRetryAfterInterval]) { + NSTimeInterval secs = [self retryAfterInterval]; + return secs; + } + // The next wait interval is the factor (2.0) times the last interval, + // but never less than the minimum interval. + NSTimeInterval secs = _lastRetryInterval * _retryFactor; + if (_maxRetryInterval > 0) { + secs = MIN(secs, _maxRetryInterval); + } + secs = MAX(secs, _minRetryInterval); + + return secs; +} + +- (NSTimer *)retryTimer { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _retryTimer; + } // @synchronized(self) +} + +- (BOOL)isRetryEnabled { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _isRetryEnabled; + } // @synchronized(self) +} + +- (BOOL)isRetryEnabledUnsynchronized { + GTMSessionCheckSynchronized(self); + + return _isRetryEnabled; +} + +- (void)setRetryEnabled:(BOOL)flag { + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (flag && !_isRetryEnabled) { + // We defer initializing these until the user calls setRetryEnabled + // to avoid using the random number generator if it's not needed. + // However, this means min and max intervals for this fetcher are reset + // as a side effect of calling setRetryEnabled. + // + // Make an initial retry interval random between 1.0 and 2.0 seconds + _minRetryInterval = InitialMinRetryInterval(); + _maxRetryInterval = kUnsetMaxRetryInterval; + _retryFactor = 2.0; + _lastRetryInterval = 0.0; + } + _isRetryEnabled = flag; + } // @synchronized(self) +}; + +- (NSTimeInterval)maxRetryInterval { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _maxRetryInterval; + } // @synchronized(self) +} + +- (void)setMaxRetryInterval:(NSTimeInterval)secs { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (secs > 0) { + _maxRetryInterval = secs; + } else { + _maxRetryInterval = kUnsetMaxRetryInterval; + } + } // @synchronized(self) +} + +- (double)minRetryInterval { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _minRetryInterval; + } // @synchronized(self) +} + +- (void)setMinRetryInterval:(NSTimeInterval)secs { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (secs > 0) { + _minRetryInterval = secs; + } else { + // Set min interval to a random value between 1.0 and 2.0 seconds + // so that if multiple clients start retrying at the same time, they'll + // repeat at different times and avoid overloading the server + _minRetryInterval = InitialMinRetryInterval(); + } + } // @synchronized(self) + +} + +#pragma mark iOS System Completion Handlers + +#if TARGET_OS_IPHONE +static NSMutableDictionary *gSystemCompletionHandlers = nil; + +- (GTM_NULLABLE GTMSessionFetcherSystemCompletionHandler)systemCompletionHandler { + return [[self class] systemCompletionHandlerForSessionIdentifier:_sessionIdentifier]; +} + +- (void)setSystemCompletionHandler:(GTM_NULLABLE GTMSessionFetcherSystemCompletionHandler)systemCompletionHandler { + [[self class] setSystemCompletionHandler:systemCompletionHandler + forSessionIdentifier:_sessionIdentifier]; +} + ++ (void)setSystemCompletionHandler:(GTM_NULLABLE GTMSessionFetcherSystemCompletionHandler)systemCompletionHandler + forSessionIdentifier:(NSString *)sessionIdentifier { + if (!sessionIdentifier) { + NSLog(@"%s with nil identifier", __PRETTY_FUNCTION__); + return; + } + + @synchronized([GTMSessionFetcher class]) { + if (gSystemCompletionHandlers == nil && systemCompletionHandler != nil) { + gSystemCompletionHandlers = [[NSMutableDictionary alloc] init]; + } + // Use setValue: to remove the object if completionHandler is nil. + [gSystemCompletionHandlers setValue:systemCompletionHandler + forKey:sessionIdentifier]; + } +} + ++ (GTM_NULLABLE GTMSessionFetcherSystemCompletionHandler)systemCompletionHandlerForSessionIdentifier:(NSString *)sessionIdentifier { + if (!sessionIdentifier) { + return nil; + } + @synchronized([GTMSessionFetcher class]) { + return [gSystemCompletionHandlers objectForKey:sessionIdentifier]; + } +} +#endif // TARGET_OS_IPHONE + +#pragma mark Getters and Setters + +@synthesize downloadResumeData = _downloadResumeData, + configuration = _configuration, + configurationBlock = _configurationBlock, + sessionTask = _sessionTask, + wasCreatedFromBackgroundSession = _wasCreatedFromBackgroundSession, + sessionUserInfo = _sessionUserInfo, + taskDescription = _taskDescription, + taskPriority = _taskPriority, + usingBackgroundSession = _usingBackgroundSession, + canShareSession = _canShareSession, + completionHandler = _completionHandler, + credential = _credential, + proxyCredential = _proxyCredential, + bodyData = _bodyData, + bodyLength = _bodyLength, + service = _service, + serviceHost = _serviceHost, + accumulateDataBlock = _accumulateDataBlock, + receivedProgressBlock = _receivedProgressBlock, + downloadProgressBlock = _downloadProgressBlock, + resumeDataBlock = _resumeDataBlock, + didReceiveResponseBlock = _didReceiveResponseBlock, + challengeBlock = _challengeBlock, + willRedirectBlock = _willRedirectBlock, + sendProgressBlock = _sendProgressBlock, + willCacheURLResponseBlock = _willCacheURLResponseBlock, + retryBlock = _retryBlock, + retryFactor = _retryFactor, + allowedInsecureSchemes = _allowedInsecureSchemes, + allowLocalhostRequest = _allowLocalhostRequest, + allowInvalidServerCertificates = _allowInvalidServerCertificates, + cookieStorage = _cookieStorage, + callbackQueue = _callbackQueue, + initialBeginFetchDate = _initialBeginFetchDate, + testBlock = _testBlock, + testBlockAccumulateDataChunkCount = _testBlockAccumulateDataChunkCount, + comment = _comment, + log = _log; + +#if !STRIP_GTM_FETCH_LOGGING +@synthesize redirectedFromURL = _redirectedFromURL, + logRequestBody = _logRequestBody, + logResponseBody = _logResponseBody, + hasLoggedError = _hasLoggedError; +#endif + +#if GTM_BACKGROUND_TASK_FETCHING +@synthesize backgroundTaskIdentifier = _backgroundTaskIdentifier, + skipBackgroundTask = _skipBackgroundTask; +#endif + +- (GTM_NULLABLE NSURLRequest *)request { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return [_request copy]; + } // @synchronized(self) +} + +- (void)setRequest:(GTM_NULLABLE NSURLRequest *)request { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (![self isFetchingUnsynchronized]) { + _request = [request mutableCopy]; + } else { + GTMSESSION_ASSERT_DEBUG(0, @"request may not be set after beginFetch has been invoked"); + } + } // @synchronized(self) +} + +- (GTM_NULLABLE NSMutableURLRequest *)mutableRequestForTesting { + // Allow tests only to modify the request, useful during retries. + return _request; +} + +- (GTM_NULLABLE NSMutableURLRequest *)mutableRequest { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + GTMSESSION_LOG_DEBUG(@"[GTMSessionFetcher mutableRequest] is deprecated; use -request or" + @" -setRequestValue:forHTTPHeaderField:"); + + return _request; + } // @synchronized(self) +} + +- (void)setMutableRequest:(GTM_NULLABLE NSMutableURLRequest *)request { + GTMSESSION_LOG_DEBUG(@"[GTMSessionFetcher setMutableRequest:] is deprecated; use -request or" + @" -setRequestValue:forHTTPHeaderField:"); + + GTMSESSION_ASSERT_DEBUG(![self isFetching], + @"mutableRequest should not change after beginFetch has been invoked"); + [self updateMutableRequest:request]; +} + +// Internal method for updating the request property such as on redirects. +- (void)updateMutableRequest:(GTM_NULLABLE NSMutableURLRequest *)request { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _request = request; + } // @synchronized(self) +} + +// Set a header field value on the request. Header field value changes will not +// affect a fetch after the fetch has begun. +- (void)setRequestValue:(GTM_NULLABLE NSString *)value forHTTPHeaderField:(NSString *)field { + if (![self isFetching]) { + [self updateRequestValue:value forHTTPHeaderField:field]; + } else { + GTMSESSION_ASSERT_DEBUG(0, @"request may not be set after beginFetch has been invoked"); + } +} + +// Internal method for updating request headers. +- (void)updateRequestValue:(GTM_NULLABLE NSString *)value forHTTPHeaderField:(NSString *)field { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + [_request setValue:value forHTTPHeaderField:field]; + } // @synchronized(self) +} + +- (void)setResponse:(GTM_NULLABLE NSURLResponse *)response { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _response = response; + } // @synchronized(self) +} + +- (int64_t)bodyLength { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (_bodyLength == NSURLSessionTransferSizeUnknown) { + if (_bodyData) { + _bodyLength = (int64_t)_bodyData.length; + } else if (_bodyFileURL) { + NSNumber *fileSizeNum = nil; + NSError *fileSizeError = nil; + if ([_bodyFileURL getResourceValue:&fileSizeNum + forKey:NSURLFileSizeKey + error:&fileSizeError]) { + _bodyLength = [fileSizeNum longLongValue]; + } + } + } + return _bodyLength; + } // @synchronized(self) +} + +- (BOOL)useUploadTask { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _useUploadTask; + } // @synchronized(self) +} + +- (void)setUseUploadTask:(BOOL)flag { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (flag != _useUploadTask) { + GTMSESSION_ASSERT_DEBUG(![self isFetchingUnsynchronized], + @"useUploadTask should not change after beginFetch has been invoked"); + _useUploadTask = flag; + } + } // @synchronized(self) +} + +- (GTM_NULLABLE NSURL *)bodyFileURL { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _bodyFileURL; + } // @synchronized(self) +} + +- (void)setBodyFileURL:(GTM_NULLABLE NSURL *)fileURL { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + // The comparison here is a trivial optimization and forgiveness for any client that + // repeatedly sets the property, so it just uses pointer comparison rather than isEqual:. + if (fileURL != _bodyFileURL) { + GTMSESSION_ASSERT_DEBUG(![self isFetchingUnsynchronized], + @"fileURL should not change after beginFetch has been invoked"); + + _bodyFileURL = fileURL; + } + } // @synchronized(self) +} + +- (GTM_NULLABLE GTMSessionFetcherBodyStreamProvider)bodyStreamProvider { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _bodyStreamProvider; + } // @synchronized(self) +} + +- (void)setBodyStreamProvider:(GTM_NULLABLE GTMSessionFetcherBodyStreamProvider)block { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + GTMSESSION_ASSERT_DEBUG(![self isFetchingUnsynchronized], + @"stream provider should not change after beginFetch has been invoked"); + + _bodyStreamProvider = [block copy]; + } // @synchronized(self) +} + +- (GTM_NULLABLE id)authorizer { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _authorizer; + } // @synchronized(self) +} + +- (void)setAuthorizer:(GTM_NULLABLE id)authorizer { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (authorizer != _authorizer) { + if ([self isFetchingUnsynchronized]) { + GTMSESSION_ASSERT_DEBUG(0, @"authorizer should not change after beginFetch has been invoked"); + } else { + _authorizer = authorizer; + } + } + } // @synchronized(self) +} + +- (GTM_NULLABLE NSData *)downloadedData { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _downloadedData; + } // @synchronized(self) +} + +- (void)setDownloadedData:(GTM_NULLABLE NSData *)data { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _downloadedData = [data mutableCopy]; + } // @synchronized(self) +} + +- (int64_t)downloadedLength { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _downloadedLength; + } // @synchronized(self) +} + +- (void)setDownloadedLength:(int64_t)length { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _downloadedLength = length; + } // @synchronized(self) +} + +- (dispatch_queue_t GTM_NONNULL_TYPE)callbackQueue { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _callbackQueue; + } // @synchronized(self) +} + +- (void)setCallbackQueue:(dispatch_queue_t GTM_NULLABLE_TYPE)queue { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _callbackQueue = queue ?: dispatch_get_main_queue(); + } // @synchronized(self) +} + +- (GTM_NULLABLE NSURLSession *)session { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _session; + } // @synchronized(self) +} + +- (NSInteger)servicePriority { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _servicePriority; + } // @synchronized(self) +} + +- (void)setServicePriority:(NSInteger)value { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (value != _servicePriority) { + GTMSESSION_ASSERT_DEBUG(![self isFetchingUnsynchronized], + @"servicePriority should not change after beginFetch has been invoked"); + + _servicePriority = value; + } + } // @synchronized(self) +} + + +- (void)setSession:(GTM_NULLABLE NSURLSession *)session { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _session = session; + } // @synchronized(self) +} + +- (BOOL)canShareSession { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _canShareSession; + } // @synchronized(self) +} + +- (void)setCanShareSession:(BOOL)flag { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _canShareSession = flag; + } // @synchronized(self) +} + +- (BOOL)useBackgroundSession { + // This reflects if the user requested a background session, not necessarily + // if one was created. That is tracked with _usingBackgroundSession. + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _userRequestedBackgroundSession; + } // @synchronized(self) +} + +- (void)setUseBackgroundSession:(BOOL)flag { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (flag != _userRequestedBackgroundSession) { + GTMSESSION_ASSERT_DEBUG(![self isFetchingUnsynchronized], + @"useBackgroundSession should not change after beginFetch has been invoked"); + + _userRequestedBackgroundSession = flag; + } + } // @synchronized(self) +} + +- (BOOL)isUsingBackgroundSession { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _usingBackgroundSession; + } // @synchronized(self) +} + +- (void)setUsingBackgroundSession:(BOOL)flag { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _usingBackgroundSession = flag; + } // @synchronized(self) +} + +- (GTM_NULLABLE NSURLSession *)sessionNeedingInvalidation { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _sessionNeedingInvalidation; + } // @synchronized(self) +} + +- (void)setSessionNeedingInvalidation:(GTM_NULLABLE NSURLSession *)session { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _sessionNeedingInvalidation = session; + } // @synchronized(self) +} + +- (NSOperationQueue * GTM_NONNULL_TYPE)sessionDelegateQueue { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _delegateQueue; + } // @synchronized(self) +} + +- (void)setSessionDelegateQueue:(NSOperationQueue * GTM_NULLABLE_TYPE)queue { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (queue != _delegateQueue) { + if ([self isFetchingUnsynchronized]) { + GTMSESSION_ASSERT_DEBUG(0, @"sessionDelegateQueue should not change after fetch begins"); + } else { + _delegateQueue = queue ?: [NSOperationQueue mainQueue]; + } + } + } // @synchronized(self) +} + +- (BOOL)userStoppedFetching { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _userStoppedFetching; + } // @synchronized(self) +} + +- (GTM_NULLABLE id)userData { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _userData; + } // @synchronized(self) +} + +- (void)setUserData:(GTM_NULLABLE id)theObj { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _userData = theObj; + } // @synchronized(self) +} + +- (GTM_NULLABLE NSURL *)destinationFileURL { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _destinationFileURL; + } // @synchronized(self) +} + +- (void)setDestinationFileURL:(GTM_NULLABLE NSURL *)destinationFileURL { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (((_destinationFileURL == nil) && (destinationFileURL == nil)) || + [_destinationFileURL isEqual:destinationFileURL]) { + return; + } + if (_sessionIdentifier) { + // This is something we don't expect to happen in production. + // However if it ever happen, leave a system log. + NSLog(@"%@: Destination File URL changed from (%@) to (%@) after session identifier has " + @"been created.", + [self class], _destinationFileURL, destinationFileURL); +#if DEBUG + // On both the simulator and devices, the path can change to the download file, but the name + // shouldn't change. Technically, this isn't supported in the fetcher, but the change of + // URL is expected to happen only across development runs through Xcode. + NSString *oldFilename = [_destinationFileURL lastPathComponent]; + NSString *newFilename = [destinationFileURL lastPathComponent]; + #pragma unused(oldFilename) + #pragma unused(newFilename) + GTMSESSION_ASSERT_DEBUG([oldFilename isEqualToString:newFilename], + @"Destination File URL cannot be changed after session identifier has been created"); +#endif + } + _destinationFileURL = destinationFileURL; + } // @synchronized(self) +} + +- (void)setProperties:(GTM_NULLABLE NSDictionary *)dict { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _properties = [dict mutableCopy]; + } // @synchronized(self) +} + +- (GTM_NULLABLE NSDictionary *)properties { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _properties; + } // @synchronized(self) +} + +- (void)setProperty:(GTM_NULLABLE id)obj forKey:(NSString *)key { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (_properties == nil && obj != nil) { + _properties = [[NSMutableDictionary alloc] init]; + } + [_properties setValue:obj forKey:key]; + } // @synchronized(self) +} + +- (GTM_NULLABLE id)propertyForKey:(NSString *)key { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return [_properties objectForKey:key]; + } // @synchronized(self) +} + +- (void)addPropertiesFromDictionary:(NSDictionary *)dict { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (_properties == nil && dict != nil) { + [self setProperties:[dict mutableCopy]]; + } else { + [_properties addEntriesFromDictionary:dict]; + } + } // @synchronized(self) +} + +- (void)setCommentWithFormat:(id)format, ... { +#if !STRIP_GTM_FETCH_LOGGING + NSString *result = format; + if (format) { + va_list argList; + va_start(argList, format); + + result = [[NSString alloc] initWithFormat:format + arguments:argList]; + va_end(argList); + } + [self setComment:result]; +#endif +} + +#if !STRIP_GTM_FETCH_LOGGING +- (NSData *)loggedStreamData { + return _loggedStreamData; +} + +- (void)appendLoggedStreamData:dataToAdd { + if (!_loggedStreamData) { + _loggedStreamData = [NSMutableData data]; + } + [_loggedStreamData appendData:dataToAdd]; +} + +- (void)clearLoggedStreamData { + _loggedStreamData = nil; +} + +- (void)setDeferResponseBodyLogging:(BOOL)deferResponseBodyLogging { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (deferResponseBodyLogging != _deferResponseBodyLogging) { + _deferResponseBodyLogging = deferResponseBodyLogging; + if (!deferResponseBodyLogging && !self.hasLoggedError) { + [_delegateQueue addOperationWithBlock:^{ + [self logNowWithError:nil]; + }]; + } + } + } // @synchronized(self) +} + +- (BOOL)deferResponseBodyLogging { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _deferResponseBodyLogging; + } // @synchronized(self) +} + +#else ++ (void)setLoggingEnabled:(BOOL)flag { +} + ++ (BOOL)isLoggingEnabled { + return NO; +} +#endif // STRIP_GTM_FETCH_LOGGING + +@end + +@implementation GTMSessionFetcher (BackwardsCompatibilityOnly) + +- (void)setCookieStorageMethod:(NSInteger)method { + // For backwards compatibility with the old fetcher, we'll support the old constants. + // + // Clients using the GTMSessionFetcher class should set the cookie storage explicitly + // themselves. + NSHTTPCookieStorage *storage = nil; + switch(method) { + case 0: // kGTMHTTPFetcherCookieStorageMethodStatic + // nil storage will use [[self class] staticCookieStorage] when the fetch begins. + break; + case 1: // kGTMHTTPFetcherCookieStorageMethodFetchHistory + // Do nothing; use whatever was set by the fetcher service. + return; + case 2: // kGTMHTTPFetcherCookieStorageMethodSystemDefault + storage = [NSHTTPCookieStorage sharedHTTPCookieStorage]; + break; + case 3: // kGTMHTTPFetcherCookieStorageMethodNone + // Create temporary storage for this fetcher only. + storage = [[GTMSessionCookieStorage alloc] init]; + break; + default: + GTMSESSION_ASSERT_DEBUG(0, @"Invalid cookie storage method: %d", (int)method); + } + self.cookieStorage = storage; +} + +@end + +@implementation GTMSessionCookieStorage { + NSMutableArray *_cookies; + NSHTTPCookieAcceptPolicy _policy; +} + +- (id)init { + self = [super init]; + if (self != nil) { + _cookies = [[NSMutableArray alloc] init]; + } + return self; +} + +- (GTM_NULLABLE NSArray *)cookies { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return [_cookies copy]; + } // @synchronized(self) +} + +- (void)setCookie:(NSHTTPCookie *)cookie { + if (!cookie) return; + if (_policy == NSHTTPCookieAcceptPolicyNever) return; + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + [self internalSetCookie:cookie]; + } // @synchronized(self) +} + +// Note: this should only be called from inside a @synchronized(self) block. +- (void)internalSetCookie:(NSHTTPCookie *)newCookie { + GTMSessionCheckSynchronized(self); + + if (_policy == NSHTTPCookieAcceptPolicyNever) return; + + BOOL isValidCookie = (newCookie.name.length > 0 + && newCookie.domain.length > 0 + && newCookie.path.length > 0); + GTMSESSION_ASSERT_DEBUG(isValidCookie, @"invalid cookie: %@", newCookie); + + if (isValidCookie) { + // Remove the cookie if it's currently in the array. + NSHTTPCookie *oldCookie = [self cookieMatchingCookie:newCookie]; + if (oldCookie) { + [_cookies removeObjectIdenticalTo:oldCookie]; + } + + if (![[self class] hasCookieExpired:newCookie]) { + [_cookies addObject:newCookie]; + } + } +} + +// Add all cookies in the new cookie array to the storage, +// replacing stored cookies as appropriate. +// +// Side effect: removes expired cookies from the storage array. +- (void)setCookies:(GTM_NULLABLE NSArray *)newCookies { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + [self removeExpiredCookies]; + + for (NSHTTPCookie *newCookie in newCookies) { + [self internalSetCookie:newCookie]; + } + } // @synchronized(self) +} + +- (void)setCookies:(NSArray *)cookies forURL:(GTM_NULLABLE NSURL *)URL mainDocumentURL:(GTM_NULLABLE NSURL *)mainDocumentURL { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (_policy == NSHTTPCookieAcceptPolicyNever) { + return; + } + + if (_policy == NSHTTPCookieAcceptPolicyOnlyFromMainDocumentDomain) { + NSString *mainHost = mainDocumentURL.host; + NSString *associatedHost = URL.host; + if (!mainHost || ![associatedHost hasSuffix:mainHost]) { + return; + } + } + } // @synchronized(self) + [self setCookies:cookies]; +} + +- (void)deleteCookie:(NSHTTPCookie *)cookie { + if (!cookie) return; + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + NSHTTPCookie *foundCookie = [self cookieMatchingCookie:cookie]; + if (foundCookie) { + [_cookies removeObjectIdenticalTo:foundCookie]; + } + } // @synchronized(self) +} + +// Retrieve all cookies appropriate for the given URL, considering +// domain, path, cookie name, expiration, security setting. +// Side effect: removed expired cookies from the storage array. +- (GTM_NULLABLE NSArray *)cookiesForURL:(NSURL *)theURL { + NSMutableArray *foundCookies = nil; + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + [self removeExpiredCookies]; + + // We'll prepend "." to the desired domain, since we want the + // actual domain "nytimes.com" to still match the cookie domain + // ".nytimes.com" when we check it below with hasSuffix. + NSString *host = theURL.host.lowercaseString; + NSString *path = theURL.path; + NSString *scheme = [theURL scheme]; + + NSString *requestingDomain = nil; + BOOL isLocalhostRetrieval = NO; + + if (IsLocalhost(host)) { + isLocalhostRetrieval = YES; + } else { + if (host.length > 0) { + requestingDomain = [@"." stringByAppendingString:host]; + } + } + + for (NSHTTPCookie *storedCookie in _cookies) { + NSString *cookieDomain = storedCookie.domain.lowercaseString; + NSString *cookiePath = storedCookie.path; + BOOL cookieIsSecure = [storedCookie isSecure]; + + BOOL isDomainOK; + + if (isLocalhostRetrieval) { + // Prior to 10.5.6, the domain stored into NSHTTPCookies for localhost + // is "localhost.local" + isDomainOK = (IsLocalhost(cookieDomain) + || [cookieDomain isEqual:@"localhost.local"]); + } else { + // Ensure we're matching exact domain names. We prepended a dot to the + // requesting domain, so we can also prepend one here if needed before + // checking if the request contains the cookie domain. + if (![cookieDomain hasPrefix:@"."]) { + cookieDomain = [@"." stringByAppendingString:cookieDomain]; + } + isDomainOK = [requestingDomain hasSuffix:cookieDomain]; + } + + BOOL isPathOK = [cookiePath isEqual:@"/"] || [path hasPrefix:cookiePath]; + BOOL isSecureOK = (!cookieIsSecure + || [scheme caseInsensitiveCompare:@"https"] == NSOrderedSame); + + if (isDomainOK && isPathOK && isSecureOK) { + if (foundCookies == nil) { + foundCookies = [NSMutableArray array]; + } + [foundCookies addObject:storedCookie]; + } + } + } // @synchronized(self) + return foundCookies; +} + +// Override methods from the NSHTTPCookieStorage (NSURLSessionTaskAdditions) category. +- (void)storeCookies:(NSArray *)cookies forTask:(NSURLSessionTask *)task { + NSURLRequest *currentRequest = task.currentRequest; + [self setCookies:cookies forURL:currentRequest.URL mainDocumentURL:nil]; +} + +- (void)getCookiesForTask:(NSURLSessionTask *)task + completionHandler:(void (^)(GTM_NSArrayOf(NSHTTPCookie *) *))completionHandler { + if (completionHandler) { + NSURLRequest *currentRequest = task.currentRequest; + NSURL *currentRequestURL = currentRequest.URL; + NSArray *cookies = [self cookiesForURL:currentRequestURL]; + completionHandler(cookies); + } +} + +// Return a cookie from the array with the same name, domain, and path as the +// given cookie, or else return nil if none found. +// +// Both the cookie being tested and all cookies in the storage array should +// be valid (non-nil name, domains, paths). +// +// Note: this should only be called from inside a @synchronized(self) block +- (GTM_NULLABLE NSHTTPCookie *)cookieMatchingCookie:(NSHTTPCookie *)cookie { + GTMSessionCheckSynchronized(self); + + NSString *name = cookie.name; + NSString *domain = cookie.domain; + NSString *path = cookie.path; + + GTMSESSION_ASSERT_DEBUG(name && domain && path, + @"Invalid stored cookie (name:%@ domain:%@ path:%@)", name, domain, path); + + for (NSHTTPCookie *storedCookie in _cookies) { + if ([storedCookie.name isEqual:name] + && [storedCookie.domain isEqual:domain] + && [storedCookie.path isEqual:path]) { + return storedCookie; + } + } + return nil; +} + +// Internal routine to remove any expired cookies from the array, excluding +// cookies with nil expirations. +// +// Note: this should only be called from inside a @synchronized(self) block +- (void)removeExpiredCookies { + GTMSessionCheckSynchronized(self); + + // Count backwards since we're deleting items from the array + for (NSInteger idx = (NSInteger)_cookies.count - 1; idx >= 0; idx--) { + NSHTTPCookie *storedCookie = [_cookies objectAtIndex:(NSUInteger)idx]; + if ([[self class] hasCookieExpired:storedCookie]) { + [_cookies removeObjectAtIndex:(NSUInteger)idx]; + } + } +} + ++ (BOOL)hasCookieExpired:(NSHTTPCookie *)cookie { + NSDate *expiresDate = [cookie expiresDate]; + if (expiresDate == nil) { + // Cookies seem to have a Expires property even when the expiresDate method returns nil. + id expiresVal = [[cookie properties] objectForKey:NSHTTPCookieExpires]; + if ([expiresVal isKindOfClass:[NSDate class]]) { + expiresDate = expiresVal; + } + } + BOOL hasExpired = (expiresDate != nil && [expiresDate timeIntervalSinceNow] < 0); + return hasExpired; +} + +- (void)removeAllCookies { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + [_cookies removeAllObjects]; + } // @synchronized(self) +} + +- (NSHTTPCookieAcceptPolicy)cookieAcceptPolicy { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _policy; + } // @synchronized(self) +} + +- (void)setCookieAcceptPolicy:(NSHTTPCookieAcceptPolicy)cookieAcceptPolicy { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _policy = cookieAcceptPolicy; + } // @synchronized(self) +} + +@end + +void GTMSessionFetcherAssertValidSelector(id GTM_NULLABLE_TYPE obj, SEL GTM_NULLABLE_TYPE sel, ...) { + // Verify that the object's selector is implemented with the proper + // number and type of arguments +#if DEBUG + va_list argList; + va_start(argList, sel); + + if (obj && sel) { + // Check that the selector is implemented + if (![obj respondsToSelector:sel]) { + NSLog(@"\"%@\" selector \"%@\" is unimplemented or misnamed", + NSStringFromClass([(id)obj class]), + NSStringFromSelector((SEL)sel)); + NSCAssert(0, @"callback selector unimplemented or misnamed"); + } else { + const char *expectedArgType; + unsigned int argCount = 2; // skip self and _cmd + NSMethodSignature *sig = [obj methodSignatureForSelector:sel]; + + // Check that each expected argument is present and of the correct type + while ((expectedArgType = va_arg(argList, const char*)) != 0) { + + if ([sig numberOfArguments] > argCount) { + const char *foundArgType = [sig getArgumentTypeAtIndex:argCount]; + + if (0 != strncmp(foundArgType, expectedArgType, strlen(expectedArgType))) { + NSLog(@"\"%@\" selector \"%@\" argument %d should be type %s", + NSStringFromClass([(id)obj class]), + NSStringFromSelector((SEL)sel), (argCount - 2), expectedArgType); + NSCAssert(0, @"callback selector argument type mistake"); + } + } + argCount++; + } + + // Check that the proper number of arguments are present in the selector + if (argCount != [sig numberOfArguments]) { + NSLog(@"\"%@\" selector \"%@\" should have %d arguments", + NSStringFromClass([(id)obj class]), + NSStringFromSelector((SEL)sel), (argCount - 2)); + NSCAssert(0, @"callback selector arguments incorrect"); + } + } + } + + va_end(argList); +#endif +} + +NSString *GTMFetcherCleanedUserAgentString(NSString *str) { + // Reference http://www.w3.org/Protocols/rfc2616/rfc2616-sec2.html + // and http://www-archive.mozilla.org/build/user-agent-strings.html + + if (str == nil) return @""; + + NSMutableString *result = [NSMutableString stringWithString:str]; + + // Replace spaces and commas with underscores + [result replaceOccurrencesOfString:@" " + withString:@"_" + options:0 + range:NSMakeRange(0, result.length)]; + [result replaceOccurrencesOfString:@"," + withString:@"_" + options:0 + range:NSMakeRange(0, result.length)]; + + // Delete http token separators and remaining whitespace + static NSCharacterSet *charsToDelete = nil; + if (charsToDelete == nil) { + // Make a set of unwanted characters + NSString *const kSeparators = @"()<>@;:\\\"/[]?={}"; + + NSMutableCharacterSet *mutableChars = + [[NSCharacterSet whitespaceAndNewlineCharacterSet] mutableCopy]; + [mutableChars addCharactersInString:kSeparators]; + charsToDelete = [mutableChars copy]; // hang on to an immutable copy + } + + while (1) { + NSRange separatorRange = [result rangeOfCharacterFromSet:charsToDelete]; + if (separatorRange.location == NSNotFound) break; + + [result deleteCharactersInRange:separatorRange]; + }; + + return result; +} + +NSString *GTMFetcherSystemVersionString(void) { + static NSString *sSavedSystemString; + + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + // The Xcode 8 SDKs finally cleaned up this mess by providing TARGET_OS_OSX + // and TARGET_OS_IOS, but to build with older SDKs, those don't exist and + // instead one has to rely on TARGET_OS_MAC (which is true for iOS, watchOS, + // and tvOS) and TARGET_OS_IPHONE (which is true for iOS, watchOS, tvOS). So + // one has to order these carefully so you pick off the specific things + // first. + // If the code can ever assume Xcode 8 or higher (even when building for + // older OSes), then + // TARGET_OS_MAC -> TARGET_OS_OSX + // TARGET_OS_IPHONE -> TARGET_OS_IOS + // TARGET_IPHONE_SIMULATOR -> TARGET_OS_SIMULATOR +#if TARGET_OS_WATCH + // watchOS - WKInterfaceDevice + + WKInterfaceDevice *currentDevice = [WKInterfaceDevice currentDevice]; + + NSString *rawModel = [currentDevice model]; + NSString *model = GTMFetcherCleanedUserAgentString(rawModel); + + NSString *systemVersion = [currentDevice systemVersion]; + +#if TARGET_OS_SIMULATOR + NSString *hardwareModel = @"sim"; +#else + NSString *hardwareModel; + struct utsname unameRecord; + if (uname(&unameRecord) == 0) { + NSString *machineName = @(unameRecord.machine); + hardwareModel = GTMFetcherCleanedUserAgentString(machineName); + } + if (hardwareModel.length == 0) { + hardwareModel = @"unk"; + } +#endif + + sSavedSystemString = [[NSString alloc] initWithFormat:@"%@/%@ hw/%@", + model, systemVersion, hardwareModel]; + // Example: Apple_Watch/3.0 hw/Watch1_2 +#elif TARGET_OS_TV || TARGET_OS_IPHONE + // iOS and tvOS have UIDevice, use that. + UIDevice *currentDevice = [UIDevice currentDevice]; + + NSString *rawModel = [currentDevice model]; + NSString *model = GTMFetcherCleanedUserAgentString(rawModel); + + NSString *systemVersion = [currentDevice systemVersion]; + +#if TARGET_IPHONE_SIMULATOR || TARGET_OS_SIMULATOR + NSString *hardwareModel = @"sim"; +#else + NSString *hardwareModel; + struct utsname unameRecord; + if (uname(&unameRecord) == 0) { + NSString *machineName = @(unameRecord.machine); + hardwareModel = GTMFetcherCleanedUserAgentString(machineName); + } + if (hardwareModel.length == 0) { + hardwareModel = @"unk"; + } +#endif + + sSavedSystemString = [[NSString alloc] initWithFormat:@"%@/%@ hw/%@", + model, systemVersion, hardwareModel]; + // Example: iPod_Touch/2.2 hw/iPod1_1 + // Example: Apple_TV/9.2 hw/AppleTV5,3 +#elif TARGET_OS_MAC + // Mac build + NSProcessInfo *procInfo = [NSProcessInfo processInfo]; +#if !defined(MAC_OS_X_VERSION_10_10) + BOOL hasOperatingSystemVersion = NO; +#elif MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_10 + BOOL hasOperatingSystemVersion = + [procInfo respondsToSelector:@selector(operatingSystemVersion)]; +#else + BOOL hasOperatingSystemVersion = YES; +#endif + NSString *versString; + if (hasOperatingSystemVersion) { +#if defined(MAC_OS_X_VERSION_10_10) + // A reference to NSOperatingSystemVersion requires the 10.10 SDK. +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wunguarded-availability" +// Disable unguarded availability warning as we can't use the @availability macro until we require +// all clients to build with Xcode 9 or above. + NSOperatingSystemVersion version = procInfo.operatingSystemVersion; +#pragma clang diagnostic pop + versString = [NSString stringWithFormat:@"%ld.%ld.%ld", + (long)version.majorVersion, (long)version.minorVersion, + (long)version.patchVersion]; +#else +#pragma unused(procInfo) +#endif + } else { + // With Gestalt inexplicably deprecated in 10.8, we're reduced to reading + // the system plist file. + NSString *const kPath = @"/System/Library/CoreServices/SystemVersion.plist"; + NSDictionary *plist = [NSDictionary dictionaryWithContentsOfFile:kPath]; + versString = [plist objectForKey:@"ProductVersion"]; + if (versString.length == 0) { + versString = @"10.?.?"; + } + } + + sSavedSystemString = [[NSString alloc] initWithFormat:@"MacOSX/%@", versString]; +#elif defined(_SYS_UTSNAME_H) + // Foundation-only build + struct utsname unameRecord; + uname(&unameRecord); + + sSavedSystemString = [NSString stringWithFormat:@"%s/%s", + unameRecord.sysname, unameRecord.release]; // "Darwin/8.11.1" +#else +#error No branch taken for a default user agent +#endif + }); + return sSavedSystemString; +} + +NSString *GTMFetcherStandardUserAgentString(NSBundle * GTM_NULLABLE_TYPE bundle) { + NSString *result = [NSString stringWithFormat:@"%@ %@", + GTMFetcherApplicationIdentifier(bundle), + GTMFetcherSystemVersionString()]; + return result; +} + +NSString *GTMFetcherApplicationIdentifier(NSBundle * GTM_NULLABLE_TYPE bundle) { + @synchronized([GTMSessionFetcher class]) { + static NSMutableDictionary *sAppIDMap = nil; + + // If there's a bundle ID, use that; otherwise, use the process name + if (bundle == nil) { + bundle = [NSBundle mainBundle]; + } + NSString *bundleID = [bundle bundleIdentifier]; + if (bundleID == nil) { + bundleID = @""; + } + + NSString *identifier = [sAppIDMap objectForKey:bundleID]; + if (identifier) return identifier; + + // Apps may add a string to the info.plist to uniquely identify different builds. + identifier = [bundle objectForInfoDictionaryKey:@"GTMUserAgentID"]; + if (identifier.length == 0) { + if (bundleID.length > 0) { + identifier = bundleID; + } else { + // Fall back on the procname, prefixed by "proc" to flag that it's + // autogenerated and perhaps unreliable + NSString *procName = [[NSProcessInfo processInfo] processName]; + identifier = [NSString stringWithFormat:@"proc_%@", procName]; + } + } + + // Clean up whitespace and special characters + identifier = GTMFetcherCleanedUserAgentString(identifier); + + // If there's a version number, append that + NSString *version = [bundle objectForInfoDictionaryKey:@"CFBundleShortVersionString"]; + if (version.length == 0) { + version = [bundle objectForInfoDictionaryKey:@"CFBundleVersion"]; + } + + // Clean up whitespace and special characters + version = GTMFetcherCleanedUserAgentString(version); + + // Glue the two together (cleanup done above or else cleanup would strip the + // slash) + if (version.length > 0) { + identifier = [identifier stringByAppendingFormat:@"/%@", version]; + } + + if (sAppIDMap == nil) { + sAppIDMap = [[NSMutableDictionary alloc] init]; + } + [sAppIDMap setObject:identifier forKey:bundleID]; + return identifier; + } +} + +#if DEBUG +@implementation GTMSessionSyncMonitorInternal { + NSValue *_objectKey; // The synchronize target object. + const char *_functionName; // The function containing the monitored sync block. +} + +- (instancetype)initWithSynchronizationObject:(id)object + allowRecursive:(BOOL)allowRecursive + functionName:(const char *)functionName { + self = [super init]; + if (self) { + Class threadKey = [GTMSessionSyncMonitorInternal class]; + _objectKey = [NSValue valueWithNonretainedObject:object]; + _functionName = functionName; + + NSMutableDictionary *threadDict = [NSThread currentThread].threadDictionary; + NSMutableDictionary *counters = threadDict[threadKey]; + if (counters == nil) { + counters = [NSMutableDictionary dictionary]; + threadDict[(id)threadKey] = counters; + } + NSCountedSet *functionNamesCounter = counters[_objectKey]; + NSUInteger numberOfSyncingFunctions = functionNamesCounter.count; + + if (!allowRecursive) { + BOOL isTopLevelSyncScope = (numberOfSyncingFunctions == 0); + NSArray *stack = [NSThread callStackSymbols]; + GTMSESSION_ASSERT_DEBUG(isTopLevelSyncScope, + @"*** Recursive sync on %@ at %s; previous sync at %@\n%@", + [object class], functionName, functionNamesCounter.allObjects, + [stack subarrayWithRange:NSMakeRange(1, stack.count - 1)]); + } + + if (!functionNamesCounter) { + functionNamesCounter = [NSCountedSet set]; + counters[_objectKey] = functionNamesCounter; + } + [functionNamesCounter addObject:(id _Nonnull)@(functionName)]; + } + return self; +} + +- (void)dealloc { + Class threadKey = [GTMSessionSyncMonitorInternal class]; + + NSMutableDictionary *threadDict = [NSThread currentThread].threadDictionary; + NSMutableDictionary *counters = threadDict[threadKey]; + NSCountedSet *functionNamesCounter = counters[_objectKey]; + NSString *functionNameStr = @(_functionName); + NSUInteger numberOfSyncsByThisFunction = [functionNamesCounter countForObject:functionNameStr]; + NSArray *stack = [NSThread callStackSymbols]; + GTMSESSION_ASSERT_DEBUG(numberOfSyncsByThisFunction > 0, @"Sync not found on %@ at %s\n%@", + [_objectKey.nonretainedObjectValue class], _functionName, + [stack subarrayWithRange:NSMakeRange(1, stack.count - 1)]); + [functionNamesCounter removeObject:functionNameStr]; + if (functionNamesCounter.count == 0) { + [counters removeObjectForKey:_objectKey]; + } +} + ++ (NSArray *)functionsHoldingSynchronizationOnObject:(id)object { + Class threadKey = [GTMSessionSyncMonitorInternal class]; + NSValue *localObjectKey = [NSValue valueWithNonretainedObject:object]; + + NSMutableDictionary *threadDict = [NSThread currentThread].threadDictionary; + NSMutableDictionary *counters = threadDict[threadKey]; + NSCountedSet *functionNamesCounter = counters[localObjectKey]; + return functionNamesCounter.count > 0 ? functionNamesCounter.allObjects : nil; +} +@end +#endif // DEBUG +GTM_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcherLogging.h b/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcherLogging.h new file mode 100644 index 0000000..5ccea78 --- /dev/null +++ b/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcherLogging.h @@ -0,0 +1,112 @@ +/* Copyright 2014 Google Inc. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#import "GTMSessionFetcher.h" + +// GTM HTTP Logging +// +// All traffic using GTMSessionFetcher can be easily logged. Call +// +// [GTMSessionFetcher setLoggingEnabled:YES]; +// +// to begin generating log files. +// +// Unless explicitly set by the application using +setLoggingDirectory:, +// logs are put into a default directory, located at: +// * macOS: ~/Desktop/GTMHTTPDebugLogs +// * iOS simulator: ~/GTMHTTPDebugLogs (in application sandbox) +// * iOS device: ~/Documents/GTMHTTPDebugLogs (in application sandbox) +// +// Tip: use the Finder's "Sort By Date" to find the most recent logs. +// +// Each run of an application gets a separate set of log files. An html +// file is generated to simplify browsing the run's http transactions. +// The html file includes javascript links for inline viewing of uploaded +// and downloaded data. +// +// A symlink is created in the logs folder to simplify finding the html file +// for the latest run of the application; the symlink is called +// +// AppName_http_log_newest.html +// +// For better viewing of XML logs, use Camino or Firefox rather than Safari. +// +// Each fetcher may be given a comment to be inserted as a label in the logs, +// such as +// [fetcher setCommentWithFormat:@"retrieve item %@", itemName]; +// +// Projects may define STRIP_GTM_FETCH_LOGGING to remove logging code. + +#if !STRIP_GTM_FETCH_LOGGING + +@interface GTMSessionFetcher (GTMSessionFetcherLogging) + +// Note: on macOS the default logs directory is ~/Desktop/GTMHTTPDebugLogs; on +// iOS simulators it will be the ~/GTMHTTPDebugLogs (in the app sandbox); on +// iOS devices it will be in ~/Documents/GTMHTTPDebugLogs (in the app sandbox). +// These directories will be created as needed, and are excluded from backups +// to iCloud and iTunes. +// +// If a custom directory is set, the directory should already exist. It is +// the application's responsibility to exclude any custom directory from +// backups, if desired. ++ (void)setLoggingDirectory:(NSString *)path; ++ (NSString *)loggingDirectory; + +// client apps can turn logging on and off ++ (void)setLoggingEnabled:(BOOL)isLoggingEnabled; ++ (BOOL)isLoggingEnabled; + +// client apps can turn off logging to a file if they want to only check +// the fetcher's log property ++ (void)setLoggingToFileEnabled:(BOOL)isLoggingToFileEnabled; ++ (BOOL)isLoggingToFileEnabled; + +// client apps can optionally specify process name and date string used in +// log file names ++ (void)setLoggingProcessName:(NSString *)processName; ++ (NSString *)loggingProcessName; + ++ (void)setLoggingDateStamp:(NSString *)dateStamp; ++ (NSString *)loggingDateStamp; + +// client apps can specify the directory for the log for this specific run, +// typically to match the directory used by another fetcher class, like: +// +// [GTMSessionFetcher setLogDirectoryForCurrentRun:[GTMHTTPFetcher logDirectoryForCurrentRun]]; +// +// Setting this overrides the logging directory, process name, and date stamp when writing +// the log file. ++ (void)setLogDirectoryForCurrentRun:(NSString *)logDirectoryForCurrentRun; ++ (NSString *)logDirectoryForCurrentRun; + +// Prunes old log directories that have not been modified since the provided date. +// This will not delete the current run's log directory. ++ (void)deleteLogDirectoriesOlderThanDate:(NSDate *)date; + +// internal; called by fetcher +- (void)logFetchWithError:(NSError *)error; +- (NSInputStream *)loggedInputStreamForInputStream:(NSInputStream *)inputStream; +- (GTMSessionFetcherBodyStreamProvider)loggedStreamProviderForStreamProvider: + (GTMSessionFetcherBodyStreamProvider)streamProvider; + +// internal; accessors useful for viewing logs ++ (NSString *)processNameLogPrefix; ++ (NSString *)symlinkNameSuffix; ++ (NSString *)htmlFileName; + +@end + +#endif // !STRIP_GTM_FETCH_LOGGING diff --git a/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcherLogging.m b/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcherLogging.m new file mode 100644 index 0000000..cdf5c17 --- /dev/null +++ b/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcherLogging.m @@ -0,0 +1,982 @@ +/* Copyright 2014 Google Inc. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if !defined(__has_feature) || !__has_feature(objc_arc) +#error "This file requires ARC support." +#endif + +#include +#include + +#import "GTMSessionFetcherLogging.h" + +#ifndef STRIP_GTM_FETCH_LOGGING + #error GTMSessionFetcher headers should have defaulted this if it wasn't already defined. +#endif + +#if !STRIP_GTM_FETCH_LOGGING + +// Sensitive credential strings are replaced in logs with _snip_ +// +// Apps that must see the contents of sensitive tokens can set this to 1 +#ifndef SKIP_GTM_FETCH_LOGGING_SNIPPING +#define SKIP_GTM_FETCH_LOGGING_SNIPPING 0 +#endif + +// If GTMReadMonitorInputStream is available, it can be used for +// capturing uploaded streams of data +// +// We locally declare methods of GTMReadMonitorInputStream so we +// do not need to import the header, as some projects may not have it available +#if !GTMSESSION_BUILD_COMBINED_SOURCES +@interface GTMReadMonitorInputStream : NSInputStream + ++ (instancetype)inputStreamWithStream:(NSInputStream *)input; + +@property (assign) id readDelegate; +@property (assign) SEL readSelector; + +@end +#else +@class GTMReadMonitorInputStream; +#endif // !GTMSESSION_BUILD_COMBINED_SOURCES + +@interface GTMSessionFetcher (GTMHTTPFetcherLoggingUtilities) + ++ (NSString *)headersStringForDictionary:(NSDictionary *)dict; ++ (NSString *)snipSubstringOfString:(NSString *)originalStr + betweenStartString:(NSString *)startStr + endString:(NSString *)endStr; +- (void)inputStream:(GTMReadMonitorInputStream *)stream + readIntoBuffer:(void *)buffer + length:(int64_t)length; + +@end + +@implementation GTMSessionFetcher (GTMSessionFetcherLogging) + +// fetchers come and fetchers go, but statics are forever +static BOOL gIsLoggingEnabled = NO; +static BOOL gIsLoggingToFile = YES; +static NSString *gLoggingDirectoryPath = nil; +static NSString *gLogDirectoryForCurrentRun = nil; +static NSString *gLoggingDateStamp = nil; +static NSString *gLoggingProcessName = nil; + ++ (void)setLoggingDirectory:(NSString *)path { + gLoggingDirectoryPath = [path copy]; +} + ++ (NSString *)loggingDirectory { + if (!gLoggingDirectoryPath) { + NSArray *paths = nil; +#if TARGET_IPHONE_SIMULATOR + // default to a directory called GTMHTTPDebugLogs into a sandbox-safe + // directory that a developer can find easily, the application home + paths = @[ NSHomeDirectory() ]; +#elif TARGET_OS_IPHONE + // Neither ~/Desktop nor ~/Home is writable on an actual iOS, watchOS, or tvOS device. + // Put it in ~/Documents. + paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); +#else + // default to a directory called GTMHTTPDebugLogs in the desktop folder + paths = NSSearchPathForDirectoriesInDomains(NSDesktopDirectory, NSUserDomainMask, YES); +#endif + + NSString *desktopPath = paths.firstObject; + if (desktopPath) { + NSString *const kGTMLogFolderName = @"GTMHTTPDebugLogs"; + NSString *logsFolderPath = [desktopPath stringByAppendingPathComponent:kGTMLogFolderName]; + + NSFileManager *fileMgr = [NSFileManager defaultManager]; + BOOL isDir; + BOOL doesFolderExist = [fileMgr fileExistsAtPath:logsFolderPath isDirectory:&isDir]; + if (!doesFolderExist) { + // make the directory + doesFolderExist = [fileMgr createDirectoryAtPath:logsFolderPath + withIntermediateDirectories:YES + attributes:nil + error:NULL]; + if (doesFolderExist) { + // The directory has been created. Exclude it from backups. + NSURL *pathURL = [NSURL fileURLWithPath:logsFolderPath isDirectory:YES]; + [pathURL setResourceValue:@YES forKey:NSURLIsExcludedFromBackupKey error:NULL]; + } + } + + if (doesFolderExist) { + // it's there; store it in the global + gLoggingDirectoryPath = [logsFolderPath copy]; + } + } + } + return gLoggingDirectoryPath; +} + ++ (void)setLogDirectoryForCurrentRun:(NSString *)logDirectoryForCurrentRun { + // Set the path for this run's logs. + gLogDirectoryForCurrentRun = [logDirectoryForCurrentRun copy]; +} + ++ (NSString *)logDirectoryForCurrentRun { + // make a directory for this run's logs, like SyncProto_logs_10-16_01-56-58PM + if (gLogDirectoryForCurrentRun) return gLogDirectoryForCurrentRun; + + NSString *parentDir = [self loggingDirectory]; + NSString *logNamePrefix = [self processNameLogPrefix]; + NSString *dateStamp = [self loggingDateStamp]; + NSString *dirName = [NSString stringWithFormat:@"%@%@", logNamePrefix, dateStamp]; + NSString *logDirectory = [parentDir stringByAppendingPathComponent:dirName]; + + if (gIsLoggingToFile) { + NSFileManager *fileMgr = [NSFileManager defaultManager]; + // Be sure that the first time this app runs, it's not writing to a preexisting folder + static BOOL gShouldReuseFolder = NO; + if (!gShouldReuseFolder) { + gShouldReuseFolder = YES; + NSString *origLogDir = logDirectory; + for (int ctr = 2; ctr < 20; ++ctr) { + if (![fileMgr fileExistsAtPath:logDirectory]) break; + + // append a digit + logDirectory = [origLogDir stringByAppendingFormat:@"_%d", ctr]; + } + } + if (![fileMgr createDirectoryAtPath:logDirectory + withIntermediateDirectories:YES + attributes:nil + error:NULL]) return nil; + } + gLogDirectoryForCurrentRun = logDirectory; + + return gLogDirectoryForCurrentRun; +} + ++ (void)setLoggingEnabled:(BOOL)isLoggingEnabled { + gIsLoggingEnabled = isLoggingEnabled; +} + ++ (BOOL)isLoggingEnabled { + return gIsLoggingEnabled; +} + ++ (void)setLoggingToFileEnabled:(BOOL)isLoggingToFileEnabled { + gIsLoggingToFile = isLoggingToFileEnabled; +} + ++ (BOOL)isLoggingToFileEnabled { + return gIsLoggingToFile; +} + ++ (void)setLoggingProcessName:(NSString *)processName { + gLoggingProcessName = [processName copy]; +} + ++ (NSString *)loggingProcessName { + // get the process name (once per run) replacing spaces with underscores + if (!gLoggingProcessName) { + NSString *procName = [[NSProcessInfo processInfo] processName]; + gLoggingProcessName = [procName stringByReplacingOccurrencesOfString:@" " withString:@"_"]; + } + return gLoggingProcessName; +} + ++ (void)setLoggingDateStamp:(NSString *)dateStamp { + gLoggingDateStamp = [dateStamp copy]; +} + ++ (NSString *)loggingDateStamp { + // We'll pick one date stamp per run, so a run that starts at a later second + // will get a unique results html file + if (!gLoggingDateStamp) { + // produce a string like 08-21_01-41-23PM + + NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; + [formatter setFormatterBehavior:NSDateFormatterBehavior10_4]; + [formatter setDateFormat:@"M-dd_hh-mm-ssa"]; + + gLoggingDateStamp = [formatter stringFromDate:[NSDate date]]; + } + return gLoggingDateStamp; +} + ++ (NSString *)processNameLogPrefix { + static NSString *gPrefix = nil; + if (!gPrefix) { + NSString *processName = [self loggingProcessName]; + gPrefix = [[NSString alloc] initWithFormat:@"%@_log_", processName]; + } + return gPrefix; +} + ++ (NSString *)symlinkNameSuffix { + return @"_log_newest.html"; +} + ++ (NSString *)htmlFileName { + return @"aperçu_http_log.html"; +} + ++ (void)deleteLogDirectoriesOlderThanDate:(NSDate *)cutoffDate { + NSFileManager *fileMgr = [NSFileManager defaultManager]; + NSURL *parentDir = [NSURL fileURLWithPath:[[self class] loggingDirectory]]; + NSURL *logDirectoryForCurrentRun = + [NSURL fileURLWithPath:[[self class] logDirectoryForCurrentRun]]; + NSError *error; + NSArray *contents = [fileMgr contentsOfDirectoryAtURL:parentDir + includingPropertiesForKeys:@[ NSURLContentModificationDateKey ] + options:0 + error:&error]; + for (NSURL *itemURL in contents) { + if ([itemURL isEqual:logDirectoryForCurrentRun]) continue; + + NSDate *modDate; + if ([itemURL getResourceValue:&modDate + forKey:NSURLContentModificationDateKey + error:&error]) { + if ([modDate compare:cutoffDate] == NSOrderedAscending) { + if (![fileMgr removeItemAtURL:itemURL error:&error]) { + NSLog(@"deleteLogDirectoriesOlderThanDate failed to delete %@: %@", + itemURL.path, error); + } + } + } else { + NSLog(@"deleteLogDirectoriesOlderThanDate failed to get mod date of %@: %@", + itemURL.path, error); + } + } +} + +// formattedStringFromData returns a prettyprinted string for XML or JSON input, +// and a plain string for other input data +- (NSString *)formattedStringFromData:(NSData *)inputData + contentType:(NSString *)contentType + JSON:(NSDictionary **)outJSON { + if (!inputData) return nil; + + // if the content type is JSON and we have the parsing class available, use that + if ([contentType hasPrefix:@"application/json"] && inputData.length > 5) { + // convert from JSON string to NSObjects and back to a formatted string + NSMutableDictionary *obj = [NSJSONSerialization JSONObjectWithData:inputData + options:NSJSONReadingMutableContainers + error:NULL]; + if (obj) { + if (outJSON) *outJSON = obj; + if ([obj isKindOfClass:[NSMutableDictionary class]]) { + // for security and privacy, omit OAuth 2 response access and refresh tokens + if ([obj valueForKey:@"refresh_token"] != nil) { + [obj setObject:@"_snip_" forKey:@"refresh_token"]; + } + if ([obj valueForKey:@"access_token"] != nil) { + [obj setObject:@"_snip_" forKey:@"access_token"]; + } + } + NSData *data = [NSJSONSerialization dataWithJSONObject:obj + options:NSJSONWritingPrettyPrinted + error:NULL]; + if (data) { + NSString *jsonStr = [[NSString alloc] initWithData:data + encoding:NSUTF8StringEncoding]; + return jsonStr; + } + } + } + +#if !TARGET_OS_IPHONE && !GTM_SKIP_LOG_XMLFORMAT + // verify that this data starts with the bytes indicating XML + + NSString *const kXMLLintPath = @"/usr/bin/xmllint"; + static BOOL gHasCheckedAvailability = NO; + static BOOL gIsXMLLintAvailable = NO; + + if (!gHasCheckedAvailability) { + gIsXMLLintAvailable = [[NSFileManager defaultManager] fileExistsAtPath:kXMLLintPath]; + gHasCheckedAvailability = YES; + } + if (gIsXMLLintAvailable + && inputData.length > 5 + && strncmp(inputData.bytes, " 0) { + // success + inputData = formattedData; + } + } +#else + // we can't call external tasks on the iPhone; leave the XML unformatted +#endif + + NSString *dataStr = [[NSString alloc] initWithData:inputData + encoding:NSUTF8StringEncoding]; + return dataStr; +} + +// stringFromStreamData creates a string given the supplied data +// +// If NSString can create a UTF-8 string from the data, then that is returned. +// +// Otherwise, this routine tries to find a MIME boundary at the beginning of the data block, and +// uses that to break up the data into parts. Each part will be used to try to make a UTF-8 string. +// For parts that fail, a replacement string showing the part header and <> is supplied +// in place of the binary data. + +- (NSString *)stringFromStreamData:(NSData *)data + contentType:(NSString *)contentType { + + if (!data) return nil; + + // optimistically, see if the whole data block is UTF-8 + NSString *streamDataStr = [self formattedStringFromData:data + contentType:contentType + JSON:NULL]; + if (streamDataStr) return streamDataStr; + + // Munge a buffer by replacing non-ASCII bytes with underscores, and turn that munged buffer an + // NSString. That gives us a string we can use with NSScanner. + NSMutableData *mutableData = [NSMutableData dataWithData:data]; + unsigned char *bytes = (unsigned char *)mutableData.mutableBytes; + + for (unsigned int idx = 0; idx < mutableData.length; ++idx) { + if (bytes[idx] > 0x7F || bytes[idx] == 0) { + bytes[idx] = '_'; + } + } + + NSString *mungedStr = [[NSString alloc] initWithData:mutableData + encoding:NSUTF8StringEncoding]; + if (mungedStr) { + + // scan for the boundary string + NSString *boundary = nil; + NSScanner *scanner = [NSScanner scannerWithString:mungedStr]; + + if ([scanner scanUpToString:@"\r\n" intoString:&boundary] + && [boundary hasPrefix:@"--"]) { + + // we found a boundary string; use it to divide the string into parts + NSArray *mungedParts = [mungedStr componentsSeparatedByString:boundary]; + + // look at each munged part in the original string, and try to convert those into UTF-8 + NSMutableArray *origParts = [NSMutableArray array]; + NSUInteger offset = 0; + for (NSString *mungedPart in mungedParts) { + NSUInteger partSize = mungedPart.length; + NSData *origPartData = [data subdataWithRange:NSMakeRange(offset, partSize)]; + NSString *origPartStr = [[NSString alloc] initWithData:origPartData + encoding:NSUTF8StringEncoding]; + if (origPartStr) { + // we could make this original part into UTF-8; use the string + [origParts addObject:origPartStr]; + } else { + // this part can't be made into UTF-8; scan the header, if we can + NSString *header = nil; + NSScanner *headerScanner = [NSScanner scannerWithString:mungedPart]; + if (![headerScanner scanUpToString:@"\r\n\r\n" intoString:&header]) { + // we couldn't find a header + header = @""; + } + // make a part string with the header and <> + NSString *binStr = [NSString stringWithFormat:@"\r%@\r<<%lu bytes>>\r", + header, (long)(partSize - header.length)]; + [origParts addObject:binStr]; + } + offset += partSize + boundary.length; + } + // rejoin the original parts + streamDataStr = [origParts componentsJoinedByString:boundary]; + } + } + if (!streamDataStr) { + // give up; just make a string showing the uploaded bytes + streamDataStr = [NSString stringWithFormat:@"<<%u bytes>>", (unsigned int)data.length]; + } + return streamDataStr; +} + +// logFetchWithError is called following a successful or failed fetch attempt +// +// This method does all the work for appending to and creating log files + +- (void)logFetchWithError:(NSError *)error { + if (![[self class] isLoggingEnabled]) return; + NSString *logDirectory = [[self class] logDirectoryForCurrentRun]; + if (!logDirectory) return; + NSString *processName = [[self class] loggingProcessName]; + + // TODO: add Javascript to display response data formatted in hex + + // each response's NSData goes into its own xml or txt file, though all responses for this run of + // the app share a main html file. This counter tracks all fetch responses for this app run. + // + // we'll use a local variable since this routine may be reentered while waiting for XML formatting + // to be completed by an external task + static int gResponseCounter = 0; + int responseCounter = ++gResponseCounter; + + NSURLResponse *response = [self response]; + NSDictionary *responseHeaders = [self responseHeaders]; + NSString *responseDataStr = nil; + NSDictionary *responseJSON = nil; + + // if there's response data, decide what kind of file to put it in based on the first bytes of the + // file or on the mime type supplied by the server + NSString *responseMIMEType = [response MIMEType]; + BOOL isResponseImage = NO; + + // file name for an image data file + NSString *responseDataFileName = nil; + + int64_t responseDataLength = self.downloadedLength; + if (responseDataLength > 0) { + NSData *downloadedData = self.downloadedData; + if (downloadedData == nil + && responseDataLength > 0 + && responseDataLength < 20000 + && self.destinationFileURL) { + // There's a download file that's not too big, so get the data to display from the downloaded + // file. + NSURL *destinationURL = self.destinationFileURL; + downloadedData = [NSData dataWithContentsOfURL:destinationURL]; + } + NSString *responseType = [responseHeaders valueForKey:@"Content-Type"]; + responseDataStr = [self formattedStringFromData:downloadedData + contentType:responseType + JSON:&responseJSON]; + NSString *responseDataExtn = nil; + NSData *dataToWrite = nil; + if (responseDataStr) { + // we were able to make a UTF-8 string from the response data + if ([responseMIMEType isEqual:@"application/atom+xml"] + || [responseMIMEType hasSuffix:@"/xml"]) { + responseDataExtn = @"xml"; + dataToWrite = [responseDataStr dataUsingEncoding:NSUTF8StringEncoding]; + } + } else if ([responseMIMEType isEqual:@"image/jpeg"]) { + responseDataExtn = @"jpg"; + dataToWrite = downloadedData; + isResponseImage = YES; + } else if ([responseMIMEType isEqual:@"image/gif"]) { + responseDataExtn = @"gif"; + dataToWrite = downloadedData; + isResponseImage = YES; + } else if ([responseMIMEType isEqual:@"image/png"]) { + responseDataExtn = @"png"; + dataToWrite = downloadedData; + isResponseImage = YES; + } else { + // add more non-text types here + } + // if we have an extension, save the raw data in a file with that extension + if (responseDataExtn && dataToWrite) { + // generate a response file base name like + NSString *responseBaseName = [NSString stringWithFormat:@"fetch_%d_response", responseCounter]; + responseDataFileName = [responseBaseName stringByAppendingPathExtension:responseDataExtn]; + NSString *responseDataFilePath = [logDirectory stringByAppendingPathComponent:responseDataFileName]; + + NSError *downloadedError = nil; + if (gIsLoggingToFile && ![dataToWrite writeToFile:responseDataFilePath + options:0 + error:&downloadedError]) { + NSLog(@"%@ logging write error:%@ (%@)", [self class], downloadedError, responseDataFileName); + } + } + } + // we'll have one main html file per run of the app + NSString *htmlName = [[self class] htmlFileName]; + NSString *htmlPath =[logDirectory stringByAppendingPathComponent:htmlName]; + + // if the html file exists (from logging previous fetches) we don't need + // to re-write the header or the scripts + NSFileManager *fileMgr = [NSFileManager defaultManager]; + BOOL didFileExist = [fileMgr fileExistsAtPath:htmlPath]; + + NSMutableString* outputHTML = [NSMutableString string]; + + // we need a header to say we'll have UTF-8 text + if (!didFileExist) { + [outputHTML appendFormat:@"%@ HTTP fetch log %@", + processName, [[self class] loggingDateStamp]]; + } + // now write the visible html elements + NSString *copyableFileName = [NSString stringWithFormat:@"fetch_%d.txt", responseCounter]; + + NSDate *now = [NSDate date]; + // write the date & time, the comment, and the link to the plain-text (copyable) log + [outputHTML appendFormat:@"%@      ", now]; + + NSString *comment = [self comment]; + if (comment.length > 0) { + [outputHTML appendFormat:@"%@      ", comment]; + } + [outputHTML appendFormat:@"
    request/response log
    ", copyableFileName]; + NSTimeInterval elapsed = -self.initialBeginFetchDate.timeIntervalSinceNow; + [outputHTML appendFormat:@"elapsed: %5.3fsec
    ", elapsed]; + + // write the request URL + NSURLRequest *request = self.request; + NSString *requestMethod = request.HTTPMethod; + NSURL *requestURL = request.URL; + + // Save the request URL for next time in case this redirects. + NSString *redirectedFromURLString = [self.redirectedFromURL absoluteString]; + self.redirectedFromURL = [requestURL copy]; + if (redirectedFromURLString) { + [outputHTML appendFormat:@"redirected from %@
    ", + redirectedFromURLString]; + } + [outputHTML appendFormat:@"request: %@ %@
    \n", requestMethod, requestURL]; + + // write the request headers + NSDictionary *requestHeaders = request.allHTTPHeaderFields; + NSUInteger numberOfRequestHeaders = requestHeaders.count; + if (numberOfRequestHeaders > 0) { + // Indicate if the request is authorized; warn if the request is authorized but non-SSL + NSString *auth = [requestHeaders objectForKey:@"Authorization"]; + NSString *headerDetails = @""; + if (auth) { + BOOL isInsecure = [[requestURL scheme] isEqual:@"http"]; + if (isInsecure) { + // 26A0 = ⚠ + headerDetails = + @"   authorized, non-SSL "; + } else { + headerDetails = @"   authorized"; + } + } + NSString *cookiesHdr = [requestHeaders objectForKey:@"Cookie"]; + if (cookiesHdr) { + headerDetails = [headerDetails stringByAppendingString:@"   cookies"]; + } + NSString *matchHdr = [requestHeaders objectForKey:@"If-Match"]; + if (matchHdr) { + headerDetails = [headerDetails stringByAppendingString:@"   if-match"]; + } + matchHdr = [requestHeaders objectForKey:@"If-None-Match"]; + if (matchHdr) { + headerDetails = [headerDetails stringByAppendingString:@"   if-none-match"]; + } + [outputHTML appendFormat:@"   headers: %d %@
    ", + (int)numberOfRequestHeaders, headerDetails]; + } else { + [outputHTML appendFormat:@"   headers: none
    "]; + } + // write the request post data + NSData *bodyData = nil; + NSData *loggedStreamData = self.loggedStreamData; + if (loggedStreamData) { + bodyData = loggedStreamData; + } else { + bodyData = self.bodyData; + if (bodyData == nil) { + bodyData = self.request.HTTPBody; + } + } + uint64_t bodyDataLength = bodyData.length; + + if (bodyData.length == 0) { + // If the data is in a body upload file URL, read that in if it's not huge. + NSURL *bodyFileURL = self.bodyFileURL; + if (bodyFileURL) { + NSNumber *fileSizeNum = nil; + NSError *fileSizeError = nil; + if ([bodyFileURL getResourceValue:&fileSizeNum + forKey:NSURLFileSizeKey + error:&fileSizeError]) { + bodyDataLength = [fileSizeNum unsignedLongLongValue]; + if (bodyDataLength > 0 && bodyDataLength < 50000) { + bodyData = [NSData dataWithContentsOfURL:bodyFileURL + options:NSDataReadingUncached + error:&fileSizeError]; + } + } + } + } + NSString *bodyDataStr = nil; + NSString *postType = [requestHeaders valueForKey:@"Content-Type"]; + + if (bodyDataLength > 0) { + [outputHTML appendFormat:@"   data: %llu bytes, %@
    \n", + bodyDataLength, postType ? postType : @"(no type)"]; + NSString *logRequestBody = self.logRequestBody; + if (logRequestBody) { + bodyDataStr = [logRequestBody copy]; + self.logRequestBody = nil; + } else { + bodyDataStr = [self stringFromStreamData:bodyData + contentType:postType]; + if (bodyDataStr) { + // remove OAuth 2 client secret and refresh token + bodyDataStr = [[self class] snipSubstringOfString:bodyDataStr + betweenStartString:@"client_secret=" + endString:@"&"]; + bodyDataStr = [[self class] snipSubstringOfString:bodyDataStr + betweenStartString:@"refresh_token=" + endString:@"&"]; + // remove ClientLogin password + bodyDataStr = [[self class] snipSubstringOfString:bodyDataStr + betweenStartString:@"&Passwd=" + endString:@"&"]; + } + } + } else { + // no post data + } + // write the response status, MIME type, URL + NSInteger status = [self statusCode]; + if (response) { + NSString *statusString = @""; + if (status != 0) { + if (status == 200 || status == 201) { + statusString = [NSString stringWithFormat:@"%ld", (long)status]; + + // report any JSON-RPC error + if ([responseJSON isKindOfClass:[NSDictionary class]]) { + NSDictionary *jsonError = [responseJSON objectForKey:@"error"]; + if ([jsonError isKindOfClass:[NSDictionary class]]) { + NSString *jsonCode = [[jsonError valueForKey:@"code"] description]; + NSString *jsonMessage = [jsonError valueForKey:@"message"]; + if (jsonCode || jsonMessage) { + // 2691 = ⚑ + NSString *const jsonErrFmt = + @"   JSON error: %@ %@  ⚑"; + statusString = [statusString stringByAppendingFormat:jsonErrFmt, + jsonCode ? jsonCode : @"", + jsonMessage ? jsonMessage : @""]; + } + } + } + } else { + // purple for anything other than 200 or 201 + NSString *flag = status >= 400 ? @" ⚑" : @""; // 2691 = ⚑ + NSString *explanation = [NSHTTPURLResponse localizedStringForStatusCode:status]; + NSString *const statusFormat = @"%ld %@ %@"; + statusString = [NSString stringWithFormat:statusFormat, (long)status, explanation, flag]; + } + } + // show the response URL only if it's different from the request URL + NSString *responseURLStr = @""; + NSURL *responseURL = response.URL; + + if (responseURL && ![responseURL isEqual:request.URL]) { + NSString *const responseURLFormat = + @"response URL: %@
    \n"; + responseURLStr = [NSString stringWithFormat:responseURLFormat, [responseURL absoluteString]]; + } + [outputHTML appendFormat:@"response:  status %@
    \n%@", + statusString, responseURLStr]; + // Write the response headers + NSUInteger numberOfResponseHeaders = responseHeaders.count; + if (numberOfResponseHeaders > 0) { + // Indicate if the server is setting cookies + NSString *cookiesSet = [responseHeaders valueForKey:@"Set-Cookie"]; + NSString *cookiesStr = + cookiesSet ? @"  sets cookies" : @""; + // Indicate if the server is redirecting + NSString *location = [responseHeaders valueForKey:@"Location"]; + BOOL isRedirect = status >= 300 && status <= 399 && location != nil; + NSString *redirectsStr = + isRedirect ? @"  redirects" : @""; + [outputHTML appendFormat:@"   headers: %d %@ %@
    \n", + (int)numberOfResponseHeaders, cookiesStr, redirectsStr]; + } else { + [outputHTML appendString:@"   headers: none
    \n"]; + } + } + // error + if (error) { + [outputHTML appendFormat:@"Error: %@
    \n", error.description]; + } + // Write the response data + if (responseDataFileName) { + if (isResponseImage) { + // Make a small inline image that links to the full image file + [outputHTML appendFormat:@"   data: %lld bytes, %@
    ", + responseDataLength, responseMIMEType]; + NSString *const fmt = + @"image\n"; + [outputHTML appendFormat:fmt, responseDataFileName, responseDataFileName]; + } else { + // The response data was XML; link to the xml file + NSString *const fmt = + @"   data: %lld bytes, %@   %@\n"; + [outputHTML appendFormat:fmt, responseDataLength, responseMIMEType, + responseDataFileName, [responseDataFileName pathExtension]]; + } + } else { + // The response data was not an image; just show the length and MIME type + [outputHTML appendFormat:@"   data: %lld bytes, %@\n", + responseDataLength, responseMIMEType ? responseMIMEType : @"(no response type)"]; + } + // Make a single string of the request and response, suitable for copying + // to the clipboard and pasting into a bug report + NSMutableString *copyable = [NSMutableString string]; + if (comment) { + [copyable appendFormat:@"%@\n\n", comment]; + } + [copyable appendFormat:@"%@ elapsed: %5.3fsec\n", now, elapsed]; + if (redirectedFromURLString) { + [copyable appendFormat:@"Redirected from %@\n", redirectedFromURLString]; + } + [copyable appendFormat:@"Request: %@ %@\n", requestMethod, requestURL]; + if (requestHeaders.count > 0) { + [copyable appendFormat:@"Request headers:\n%@\n", + [[self class] headersStringForDictionary:requestHeaders]]; + } + if (bodyDataLength > 0) { + [copyable appendFormat:@"Request body: (%llu bytes)\n", bodyDataLength]; + if (bodyDataStr) { + [copyable appendFormat:@"%@\n", bodyDataStr]; + } + [copyable appendString:@"\n"]; + } + if (response) { + [copyable appendFormat:@"Response: status %d\n", (int) status]; + [copyable appendFormat:@"Response headers:\n%@\n", + [[self class] headersStringForDictionary:responseHeaders]]; + [copyable appendFormat:@"Response body: (%lld bytes)\n", responseDataLength]; + if (responseDataLength > 0) { + NSString *logResponseBody = self.logResponseBody; + if (logResponseBody) { + // The user has provided the response body text. + responseDataStr = [logResponseBody copy]; + self.logResponseBody = nil; + } + if (responseDataStr != nil) { + [copyable appendFormat:@"%@\n", responseDataStr]; + } else { + // Even though it's redundant, we'll put in text to indicate that all the bytes are binary. + if (self.destinationFileURL) { + [copyable appendFormat:@"<<%lld bytes>> to file %@\n", + responseDataLength, self.destinationFileURL.path]; + } else { + [copyable appendFormat:@"<<%lld bytes>>\n", responseDataLength]; + } + } + } + } + if (error) { + [copyable appendFormat:@"Error: %@\n", error]; + } + // Save to log property before adding the separator + self.log = copyable; + + [copyable appendString:@"-----------------------------------------------------------\n"]; + + // Write the copyable version to another file (linked to at the top of the html file, above) + // + // Ideally, something to just copy this to the clipboard like + // Copy here." + // would work everywhere, but it only works in Safari as of 8/2010 + if (gIsLoggingToFile) { + NSString *parentDir = [[self class] loggingDirectory]; + NSString *copyablePath = [logDirectory stringByAppendingPathComponent:copyableFileName]; + NSError *copyableError = nil; + if (![copyable writeToFile:copyablePath + atomically:NO + encoding:NSUTF8StringEncoding + error:©ableError]) { + // Error writing to file + NSLog(@"%@ logging write error:%@ (%@)", [self class], copyableError, copyablePath); + } + [outputHTML appendString:@"

    "]; + + // Append the HTML to the main output file + const char* htmlBytes = outputHTML.UTF8String; + NSOutputStream *stream = [NSOutputStream outputStreamToFileAtPath:htmlPath + append:YES]; + [stream open]; + [stream write:(const uint8_t *) htmlBytes maxLength:strlen(htmlBytes)]; + [stream close]; + + // Make a symlink to the latest html + NSString *const symlinkNameSuffix = [[self class] symlinkNameSuffix]; + NSString *symlinkName = [processName stringByAppendingString:symlinkNameSuffix]; + NSString *symlinkPath = [parentDir stringByAppendingPathComponent:symlinkName]; + + [fileMgr removeItemAtPath:symlinkPath error:NULL]; + [fileMgr createSymbolicLinkAtPath:symlinkPath + withDestinationPath:htmlPath + error:NULL]; +#if TARGET_OS_IPHONE + static BOOL gReportedLoggingPath = NO; + if (!gReportedLoggingPath) { + gReportedLoggingPath = YES; + NSLog(@"GTMSessionFetcher logging to \"%@\"", parentDir); + } +#endif + } +} + +- (NSInputStream *)loggedInputStreamForInputStream:(NSInputStream *)inputStream { + if (!inputStream) return nil; + if (![GTMSessionFetcher isLoggingEnabled]) return inputStream; + + [self clearLoggedStreamData]; // Clear any previous data. + Class monitorClass = NSClassFromString(@"GTMReadMonitorInputStream"); + if (!monitorClass) { + NSString const *str = @"<>"; + NSData *stringData = [str dataUsingEncoding:NSUTF8StringEncoding]; + [self appendLoggedStreamData:stringData]; + return inputStream; + } + inputStream = [monitorClass inputStreamWithStream:inputStream]; + + GTMReadMonitorInputStream *readMonitorInputStream = (GTMReadMonitorInputStream *)inputStream; + [readMonitorInputStream setReadDelegate:self]; + SEL readSel = @selector(inputStream:readIntoBuffer:length:); + [readMonitorInputStream setReadSelector:readSel]; + + return inputStream; +} + +- (GTMSessionFetcherBodyStreamProvider)loggedStreamProviderForStreamProvider: + (GTMSessionFetcherBodyStreamProvider)streamProvider { + if (!streamProvider) return nil; + if (![GTMSessionFetcher isLoggingEnabled]) return streamProvider; + + [self clearLoggedStreamData]; // Clear any previous data. + Class monitorClass = NSClassFromString(@"GTMReadMonitorInputStream"); + if (!monitorClass) { + NSString const *str = @"<>"; + NSData *stringData = [str dataUsingEncoding:NSUTF8StringEncoding]; + [self appendLoggedStreamData:stringData]; + return streamProvider; + } + GTMSessionFetcherBodyStreamProvider loggedStreamProvider = + ^(GTMSessionFetcherBodyStreamProviderResponse response) { + streamProvider(^(NSInputStream *bodyStream) { + bodyStream = [self loggedInputStreamForInputStream:bodyStream]; + response(bodyStream); + }); + }; + return loggedStreamProvider; +} + +@end + +@implementation GTMSessionFetcher (GTMSessionFetcherLoggingUtilities) + +- (void)inputStream:(GTMReadMonitorInputStream *)stream + readIntoBuffer:(void *)buffer + length:(int64_t)length { + // append the captured data + NSData *data = [NSData dataWithBytesNoCopy:buffer + length:(NSUInteger)length + freeWhenDone:NO]; + [self appendLoggedStreamData:data]; +} + +#pragma mark Fomatting Utilities + ++ (NSString *)snipSubstringOfString:(NSString *)originalStr + betweenStartString:(NSString *)startStr + endString:(NSString *)endStr { +#if SKIP_GTM_FETCH_LOGGING_SNIPPING + return originalStr; +#else + if (!originalStr) return nil; + + // Find the start string, and replace everything between it + // and the end string (or the end of the original string) with "_snip_" + NSRange startRange = [originalStr rangeOfString:startStr]; + if (startRange.location == NSNotFound) return originalStr; + + // We found the start string + NSUInteger originalLength = originalStr.length; + NSUInteger startOfTarget = NSMaxRange(startRange); + NSRange targetAndRest = NSMakeRange(startOfTarget, originalLength - startOfTarget); + NSRange endRange = [originalStr rangeOfString:endStr + options:0 + range:targetAndRest]; + NSRange replaceRange; + if (endRange.location == NSNotFound) { + // Found no end marker so replace to end of string + replaceRange = targetAndRest; + } else { + // Replace up to the endStr + replaceRange = NSMakeRange(startOfTarget, endRange.location - startOfTarget); + } + NSString *result = [originalStr stringByReplacingCharactersInRange:replaceRange + withString:@"_snip_"]; + return result; +#endif // SKIP_GTM_FETCH_LOGGING_SNIPPING +} + ++ (NSString *)headersStringForDictionary:(NSDictionary *)dict { + // Format the dictionary in http header style, like + // Accept: application/json + // Cache-Control: no-cache + // Content-Type: application/json; charset=utf-8 + // + // Pad the key names, but not beyond 16 chars, since long custom header + // keys just create too much whitespace + NSArray *keys = [dict.allKeys sortedArrayUsingSelector:@selector(compare:)]; + + NSMutableString *str = [NSMutableString string]; + for (NSString *key in keys) { + NSString *value = [dict valueForKey:key]; + if ([key isEqual:@"Authorization"]) { + // Remove OAuth 1 token + value = [[self class] snipSubstringOfString:value + betweenStartString:@"oauth_token=\"" + endString:@"\""]; + + // Remove OAuth 2 bearer token (draft 16, and older form) + value = [[self class] snipSubstringOfString:value + betweenStartString:@"Bearer " + endString:@"\n"]; + value = [[self class] snipSubstringOfString:value + betweenStartString:@"OAuth " + endString:@"\n"]; + + // Remove Google ClientLogin + value = [[self class] snipSubstringOfString:value + betweenStartString:@"GoogleLogin auth=" + endString:@"\n"]; + } + [str appendFormat:@" %@: %@\n", key, value]; + } + return str; +} + +@end + +#endif // !STRIP_GTM_FETCH_LOGGING diff --git a/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcherService.h b/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcherService.h new file mode 100644 index 0000000..a696ac7 --- /dev/null +++ b/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcherService.h @@ -0,0 +1,190 @@ +/* Copyright 2014 Google Inc. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// For best performance and convenient usage, fetchers should be generated by a common +// GTMSessionFetcherService instance, like +// +// _fetcherService = [[GTMSessionFetcherService alloc] init]; +// GTMSessionFetcher* myFirstFetcher = [_fetcherService fetcherWithRequest:request1]; +// GTMSessionFetcher* mySecondFetcher = [_fetcherService fetcherWithRequest:request2]; + +#import "GTMSessionFetcher.h" + +GTM_ASSUME_NONNULL_BEGIN + +// Notifications. + +// This notification indicates a reusable session has become invalid. It is intended mainly for the +// service's unit tests. +// +// The notification object is the fetcher service. +// The invalid session is provided via the userInfo kGTMSessionFetcherServiceSessionKey key. +extern NSString *const kGTMSessionFetcherServiceSessionBecameInvalidNotification; +extern NSString *const kGTMSessionFetcherServiceSessionKey; + +@interface GTMSessionFetcherService : NSObject + +// Queues of delayed and running fetchers. Each dictionary contains arrays +// of GTMSessionFetcher *fetchers, keyed by NSString *host +@property(atomic, strong, readonly, GTM_NULLABLE) GTM_NSDictionaryOf(NSString *, NSArray *) *delayedFetchersByHost; +@property(atomic, strong, readonly, GTM_NULLABLE) GTM_NSDictionaryOf(NSString *, NSArray *) *runningFetchersByHost; + +// A max value of 0 means no fetchers should be delayed. +// The default limit is 10 simultaneous fetchers targeting each host. +// This does not apply to fetchers whose useBackgroundSession property is YES. Since services are +// not resurrected on an app relaunch, delayed fetchers would effectively be abandoned. +@property(atomic, assign) NSUInteger maxRunningFetchersPerHost; + +// Properties to be applied to each fetcher; see GTMSessionFetcher.h for descriptions +@property(atomic, strong, GTM_NULLABLE) NSURLSessionConfiguration *configuration; +@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherConfigurationBlock configurationBlock; +@property(atomic, strong, GTM_NULLABLE) NSHTTPCookieStorage *cookieStorage; +@property(atomic, strong, GTM_NULL_RESETTABLE) dispatch_queue_t callbackQueue; +@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherChallengeBlock challengeBlock; +@property(atomic, strong, GTM_NULLABLE) NSURLCredential *credential; +@property(atomic, strong) NSURLCredential *proxyCredential; +@property(atomic, copy, GTM_NULLABLE) GTM_NSArrayOf(NSString *) *allowedInsecureSchemes; +@property(atomic, assign) BOOL allowLocalhostRequest; +@property(atomic, assign) BOOL allowInvalidServerCertificates; +@property(atomic, assign, getter=isRetryEnabled) BOOL retryEnabled; +@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherRetryBlock retryBlock; +@property(atomic, assign) NSTimeInterval maxRetryInterval; +@property(atomic, assign) NSTimeInterval minRetryInterval; +@property(atomic, copy, GTM_NULLABLE) GTM_NSDictionaryOf(NSString *, id) *properties; + +#if GTM_BACKGROUND_TASK_FETCHING +@property(atomic, assign) BOOL skipBackgroundTask; +#endif + +// A default useragent of GTMFetcherStandardUserAgentString(nil) will be given to each fetcher +// created by this service unless the request already has a user-agent header set. +// This default will be added starting with builds with the SDKs for OS X 10.11 and iOS 9. +// +// To use the configuration's default user agent, set this property to nil. +@property(atomic, copy, GTM_NULLABLE) NSString *userAgent; + +// The authorizer to attach to the created fetchers. If a specific fetcher should +// not authorize its requests, the fetcher's authorizer property may be set to nil +// before the fetch begins. +@property(atomic, strong, GTM_NULLABLE) id authorizer; + +// Delegate queue used by the session when calling back to the fetcher. The default +// is the main queue. Changing this does not affect the queue used to call back to the +// application; that is specified by the callbackQueue property above. +@property(atomic, strong, GTM_NULL_RESETTABLE) NSOperationQueue *sessionDelegateQueue; + +// When enabled, indicates the same session should be used by subsequent fetchers. +// +// This is enabled by default. +@property(atomic, assign) BOOL reuseSession; + +// Sets the delay until an unused session is invalidated. +// The default interval is 60 seconds. +// +// If the interval is set to 0, then any reused session is not invalidated except by +// explicitly invoking -resetSession. Be aware that setting the interval to 0 thus +// causes the session's delegate to be retained until the session is explicitly reset. +@property(atomic, assign) NSTimeInterval unusedSessionTimeout; + +// If shouldReuseSession is enabled, this will force creation of a new session when future +// fetchers begin. +- (void)resetSession; + +// Create a fetcher +// +// These methods will return a fetcher. If successfully created, the connection +// will hold a strong reference to it for the life of the connection as well. +// So the caller doesn't have to hold onto the fetcher explicitly unless they +// want to be able to monitor or cancel it. +- (GTMSessionFetcher *)fetcherWithRequest:(NSURLRequest *)request; +- (GTMSessionFetcher *)fetcherWithURL:(NSURL *)requestURL; +- (GTMSessionFetcher *)fetcherWithURLString:(NSString *)requestURLString; + +// Common method for fetcher creation. +// +// -fetcherWithRequest:fetcherClass: may be overridden to customize creation of +// fetchers. This is the ONLY method in the GTMSessionFetcher library intended to +// be overridden. +- (id)fetcherWithRequest:(NSURLRequest *)request + fetcherClass:(Class)fetcherClass; + +- (BOOL)isDelayingFetcher:(GTMSessionFetcher *)fetcher; + +- (NSUInteger)numberOfFetchers; // running + delayed fetchers +- (NSUInteger)numberOfRunningFetchers; +- (NSUInteger)numberOfDelayedFetchers; + +// Return a list of all running or delayed fetchers. This includes fetchers created +// by the service which have been started and have not yet stopped. +// +// Returns an array of fetcher objects, or nil if none. +- (GTM_NULLABLE GTM_NSArrayOf(GTMSessionFetcher *) *)issuedFetchers; + +// Search for running or delayed fetchers with the specified URL. +// +// Returns an array of fetcher objects found, or nil if none found. +- (GTM_NULLABLE GTM_NSArrayOf(GTMSessionFetcher *) *)issuedFetchersWithRequestURL:(NSURL *)requestURL; + +- (void)stopAllFetchers; + +// Methods for use by the fetcher class only. +- (GTM_NULLABLE NSURLSession *)session; +- (GTM_NULLABLE NSURLSession *)sessionForFetcherCreation; +- (GTM_NULLABLE id)sessionDelegate; +- (GTM_NULLABLE NSDate *)stoppedAllFetchersDate; + +// The testBlock can inspect its fetcher parameter's request property to +// determine which fetcher is being faked. +@property(atomic, copy, GTM_NULLABLE) GTMSessionFetcherTestBlock testBlock; + +@end + +@interface GTMSessionFetcherService (TestingSupport) + +// Convenience method to create a fetcher service for testing. +// +// Fetchers generated by this mock fetcher service will not perform any +// network operation, but will invoke callbacks and provide the supplied data +// or error to the completion handler. +// +// You can make more customized mocks by setting the test block property of the service +// or fetcher; the test block can inspect the fetcher's request or other properties. +// +// See the description of the testBlock property below. ++ (instancetype)mockFetcherServiceWithFakedData:(GTM_NULLABLE NSData *)fakedDataOrNil + fakedError:(GTM_NULLABLE NSError *)fakedErrorOrNil; + +// Spin the run loop and discard events (or, if not on the main thread, just sleep the thread) +// until all running and delayed fetchers have completed. +// +// This is only for use in testing or in tools without a user interface. +// +// Synchronous fetches should never be done by shipping apps; they are +// sufficient reason for rejection from the app store. +// +// Returns NO if timed out. +- (BOOL)waitForCompletionOfAllFetchersWithTimeout:(NSTimeInterval)timeoutInSeconds; + +@end + +@interface GTMSessionFetcherService (BackwardsCompatibilityOnly) + +// Clients using GTMSessionFetcher should set the cookie storage explicitly themselves. +// This method is just for compatibility with the old fetcher. +@property(atomic, assign) NSInteger cookieStorageMethod; + +@end + +GTM_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcherService.m b/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcherService.m new file mode 100644 index 0000000..fc6e6d9 --- /dev/null +++ b/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionFetcherService.m @@ -0,0 +1,1352 @@ +/* Copyright 2014 Google Inc. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if !defined(__has_feature) || !__has_feature(objc_arc) +#error "This file requires ARC support." +#endif + +#import "GTMSessionFetcherService.h" + +NSString *const kGTMSessionFetcherServiceSessionBecameInvalidNotification + = @"kGTMSessionFetcherServiceSessionBecameInvalidNotification"; +NSString *const kGTMSessionFetcherServiceSessionKey + = @"kGTMSessionFetcherServiceSessionKey"; + +#if !GTMSESSION_BUILD_COMBINED_SOURCES +@interface GTMSessionFetcher (ServiceMethods) +- (BOOL)beginFetchMayDelay:(BOOL)mayDelay + mayAuthorize:(BOOL)mayAuthorize; +@end +#endif // !GTMSESSION_BUILD_COMBINED_SOURCES + +@interface GTMSessionFetcherService () + +@property(atomic, strong, readwrite) NSDictionary *delayedFetchersByHost; +@property(atomic, strong, readwrite) NSDictionary *runningFetchersByHost; + +@end + +// Since NSURLSession doesn't support a separate delegate per task (!), instances of this +// class serve as a session delegate trampoline. +// +// This class maps a session's tasks to fetchers, and resends delegate messages to the task's +// fetcher. +@interface GTMSessionFetcherSessionDelegateDispatcher : NSObject + +// The session for the tasks in this dispatcher's task-to-fetcher map. +@property(atomic) NSURLSession *session; + +// The timer interval for invalidating a session that has no active tasks. +@property(atomic) NSTimeInterval discardInterval; + +// The current discard timer. +@property(atomic, readonly) NSTimer *discardTimer; + + +- (instancetype)initWithParentService:(GTMSessionFetcherService *)parentService + sessionDiscardInterval:(NSTimeInterval)discardInterval; + +- (void)setFetcher:(GTMSessionFetcher *)fetcher + forTask:(NSURLSessionTask *)task; +- (void)removeFetcher:(GTMSessionFetcher *)fetcher; + +// Before using a session, tells the delegate dispatcher to stop the discard timer. +- (void)startSessionUsage; + +// When abandoning a delegate dispatcher, we want to avoid the session retaining +// the delegate after tasks complete. +- (void)abandon; + +@end + + +@implementation GTMSessionFetcherService { + NSMutableDictionary *_delayedFetchersByHost; + NSMutableDictionary *_runningFetchersByHost; + NSUInteger _maxRunningFetchersPerHost; + + // When this ivar is nil, the service will not reuse sessions. + GTMSessionFetcherSessionDelegateDispatcher *_delegateDispatcher; + + // Fetchers will wait on this if another fetcher is creating the shared NSURLSession. + dispatch_semaphore_t _sessionCreationSemaphore; + + dispatch_queue_t _callbackQueue; + NSOperationQueue *_delegateQueue; + NSHTTPCookieStorage *_cookieStorage; + NSString *_userAgent; + NSTimeInterval _timeout; + + NSURLCredential *_credential; // Username & password. + NSURLCredential *_proxyCredential; // Credential supplied to proxy servers. + + NSInteger _cookieStorageMethod; + + id _authorizer; + + // For waitForCompletionOfAllFetchersWithTimeout: we need to wait on stopped fetchers since + // they've not yet finished invoking their queued callbacks. This array is nil except when + // waiting on fetchers. + NSMutableArray *_stoppedFetchersToWaitFor; + + // For fetchers that enqueued their callbacks before stopAllFetchers was called on the service, + // set a barrier so the callbacks know to bail out. + NSDate *_stoppedAllFetchersDate; +} + +@synthesize maxRunningFetchersPerHost = _maxRunningFetchersPerHost, + configuration = _configuration, + configurationBlock = _configurationBlock, + cookieStorage = _cookieStorage, + userAgent = _userAgent, + challengeBlock = _challengeBlock, + credential = _credential, + proxyCredential = _proxyCredential, + allowedInsecureSchemes = _allowedInsecureSchemes, + allowLocalhostRequest = _allowLocalhostRequest, + allowInvalidServerCertificates = _allowInvalidServerCertificates, + retryEnabled = _retryEnabled, + retryBlock = _retryBlock, + maxRetryInterval = _maxRetryInterval, + minRetryInterval = _minRetryInterval, + properties = _properties, + unusedSessionTimeout = _unusedSessionTimeout, + testBlock = _testBlock; + +#if GTM_BACKGROUND_TASK_FETCHING +@synthesize skipBackgroundTask = _skipBackgroundTask; +#endif + +- (instancetype)init { + self = [super init]; + if (self) { + _delayedFetchersByHost = [[NSMutableDictionary alloc] init]; + _runningFetchersByHost = [[NSMutableDictionary alloc] init]; + _maxRunningFetchersPerHost = 10; + _cookieStorageMethod = -1; + _unusedSessionTimeout = 60.0; + _delegateDispatcher = + [[GTMSessionFetcherSessionDelegateDispatcher alloc] initWithParentService:self + sessionDiscardInterval:_unusedSessionTimeout]; + _callbackQueue = dispatch_get_main_queue(); + + _delegateQueue = [[NSOperationQueue alloc] init]; + _delegateQueue.maxConcurrentOperationCount = 1; + _delegateQueue.name = @"com.google.GTMSessionFetcher.NSURLSessionDelegateQueue"; + + _sessionCreationSemaphore = dispatch_semaphore_create(1); + + // Starting with the SDKs for OS X 10.11/iOS 9, the service has a default useragent. + // Apps can remove this and get the default system "CFNetwork" useragent by setting the + // fetcher service's userAgent property to nil. +#if (!TARGET_OS_IPHONE && defined(MAC_OS_X_VERSION_10_11) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_11) \ + || (TARGET_OS_IPHONE && defined(__IPHONE_9_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_9_0) + _userAgent = GTMFetcherStandardUserAgentString(nil); +#endif + } + return self; +} + +- (void)dealloc { + [self detachAuthorizer]; + [_delegateDispatcher abandon]; +} + +#pragma mark Generate a new fetcher + +// Clients may override this method. Clients should not override any other library methods. +- (id)fetcherWithRequest:(NSURLRequest *)request + fetcherClass:(Class)fetcherClass { + GTMSessionFetcher *fetcher = [[fetcherClass alloc] initWithRequest:request + configuration:self.configuration]; + fetcher.callbackQueue = self.callbackQueue; + fetcher.sessionDelegateQueue = self.sessionDelegateQueue; + fetcher.challengeBlock = self.challengeBlock; + fetcher.credential = self.credential; + fetcher.proxyCredential = self.proxyCredential; + fetcher.authorizer = self.authorizer; + fetcher.cookieStorage = self.cookieStorage; + fetcher.allowedInsecureSchemes = self.allowedInsecureSchemes; + fetcher.allowLocalhostRequest = self.allowLocalhostRequest; + fetcher.allowInvalidServerCertificates = self.allowInvalidServerCertificates; + fetcher.configurationBlock = self.configurationBlock; + fetcher.retryEnabled = self.retryEnabled; + fetcher.retryBlock = self.retryBlock; + fetcher.maxRetryInterval = self.maxRetryInterval; + fetcher.minRetryInterval = self.minRetryInterval; + fetcher.properties = self.properties; + fetcher.service = self; + if (self.cookieStorageMethod >= 0) { + [fetcher setCookieStorageMethod:self.cookieStorageMethod]; + } + +#if GTM_BACKGROUND_TASK_FETCHING + fetcher.skipBackgroundTask = self.skipBackgroundTask; +#endif + + NSString *userAgent = self.userAgent; + if (userAgent.length > 0 + && [request valueForHTTPHeaderField:@"User-Agent"] == nil) { + [fetcher setRequestValue:userAgent + forHTTPHeaderField:@"User-Agent"]; + } + fetcher.testBlock = self.testBlock; + + return fetcher; +} + +- (GTMSessionFetcher *)fetcherWithRequest:(NSURLRequest *)request { + return [self fetcherWithRequest:request + fetcherClass:[GTMSessionFetcher class]]; +} + +- (GTMSessionFetcher *)fetcherWithURL:(NSURL *)requestURL { + return [self fetcherWithRequest:[NSURLRequest requestWithURL:requestURL]]; +} + +- (GTMSessionFetcher *)fetcherWithURLString:(NSString *)requestURLString { + NSURL *url = [NSURL URLWithString:requestURLString]; + return [self fetcherWithURL:url]; +} + +// Returns a session for the fetcher's host, or nil. +- (NSURLSession *)session { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + NSURLSession *session = _delegateDispatcher.session; + return session; + } +} + +// Returns a session for the fetcher's host, or nil. For shared sessions, this +// waits on a semaphore, blocking other fetchers while the caller creates the +// session if needed. +- (NSURLSession *)sessionForFetcherCreation { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + if (!_delegateDispatcher) { + // This fetcher is creating a non-shared session, so skip the semaphore usage. + return nil; + } + } + + // Wait if another fetcher is currently creating a session; avoid waiting + // inside the @synchronized block, as that can deadlock. + dispatch_semaphore_wait(_sessionCreationSemaphore, DISPATCH_TIME_FOREVER); + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + // Before getting the NSURLSession for task creation, it is + // important to invalidate and nil out the session discard timer; otherwise + // the session can be invalidated between when it is returned to the + // fetcher, and when the fetcher attempts to create its NSURLSessionTask. + [_delegateDispatcher startSessionUsage]; + + NSURLSession *session = _delegateDispatcher.session; + if (session) { + // The calling fetcher will receive a preexisting session, so + // we can allow other fetchers to create a session. + dispatch_semaphore_signal(_sessionCreationSemaphore); + } else { + // No existing session was obtained, so the calling fetcher will create the session; + // it *must* invoke fetcherDidCreateSession: to signal the dispatcher's semaphore after + // the session has been created (or fails to be created) to avoid a hang. + } + return session; + } +} + +- (id)sessionDelegate { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _delegateDispatcher; + } +} + +#pragma mark Queue Management + +- (void)addRunningFetcher:(GTMSessionFetcher *)fetcher + forHost:(NSString *)host { + // Add to the array of running fetchers for this host, creating the array if needed. + NSMutableArray *runningForHost = [_runningFetchersByHost objectForKey:host]; + if (runningForHost == nil) { + runningForHost = [NSMutableArray arrayWithObject:fetcher]; + [_runningFetchersByHost setObject:runningForHost forKey:host]; + } else { + [runningForHost addObject:fetcher]; + } +} + +- (void)addDelayedFetcher:(GTMSessionFetcher *)fetcher + forHost:(NSString *)host { + // Add to the array of delayed fetchers for this host, creating the array if needed. + NSMutableArray *delayedForHost = [_delayedFetchersByHost objectForKey:host]; + if (delayedForHost == nil) { + delayedForHost = [NSMutableArray arrayWithObject:fetcher]; + [_delayedFetchersByHost setObject:delayedForHost forKey:host]; + } else { + [delayedForHost addObject:fetcher]; + } +} + +- (BOOL)isDelayingFetcher:(GTMSessionFetcher *)fetcher { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + NSString *host = fetcher.request.URL.host; + if (host == nil) { + return NO; + } + NSArray *delayedForHost = [_delayedFetchersByHost objectForKey:host]; + NSUInteger idx = [delayedForHost indexOfObjectIdenticalTo:fetcher]; + BOOL isDelayed = (delayedForHost != nil) && (idx != NSNotFound); + return isDelayed; + } +} + +- (BOOL)fetcherShouldBeginFetching:(GTMSessionFetcher *)fetcher { + // Entry point from the fetcher + NSURL *requestURL = fetcher.request.URL; + NSString *host = requestURL.host; + + // Addresses "file:///path" case where localhost is the implicit host. + if (host.length == 0 && [requestURL isFileURL]) { + host = @"localhost"; + } + + if (host.length == 0) { + // Data URIs legitimately have no host, reject other hostless URLs. + GTMSESSION_ASSERT_DEBUG([[requestURL scheme] isEqual:@"data"], @"%@ lacks host", fetcher); + return YES; + } + + BOOL shouldBeginResult; + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + NSMutableArray *runningForHost = [_runningFetchersByHost objectForKey:host]; + if (runningForHost != nil + && [runningForHost indexOfObjectIdenticalTo:fetcher] != NSNotFound) { + GTMSESSION_ASSERT_DEBUG(NO, @"%@ was already running", fetcher); + return YES; + } + + BOOL shouldRunNow = (fetcher.usingBackgroundSession + || _maxRunningFetchersPerHost == 0 + || _maxRunningFetchersPerHost > + [[self class] numberOfNonBackgroundSessionFetchers:runningForHost]); + if (shouldRunNow) { + [self addRunningFetcher:fetcher forHost:host]; + shouldBeginResult = YES; + } else { + [self addDelayedFetcher:fetcher forHost:host]; + shouldBeginResult = NO; + } + } // @synchronized(self) + + // We'll save the host that serves as the key for this fetcher's array + // to avoid any chance of the underlying request changing, stranding + // the fetcher in the wrong array + fetcher.serviceHost = host; + + return shouldBeginResult; +} + +- (void)startFetcher:(GTMSessionFetcher *)fetcher { + [fetcher beginFetchMayDelay:NO + mayAuthorize:YES]; +} + +// Internal utility. Returns a fetcher's delegate if it's a dispatcher, or nil if the fetcher +// is its own delegate and has no dispatcher. +- (GTMSessionFetcherSessionDelegateDispatcher *)delegateDispatcherForFetcher:(GTMSessionFetcher *)fetcher { + GTMSessionCheckNotSynchronized(self); + + NSURLSession *fetcherSession = fetcher.session; + if (fetcherSession) { + id fetcherDelegate = fetcherSession.delegate; + BOOL hasDispatcher = (fetcherDelegate != nil && fetcherDelegate != fetcher); + if (hasDispatcher) { + GTMSESSION_ASSERT_DEBUG([fetcherDelegate isKindOfClass:[GTMSessionFetcherSessionDelegateDispatcher class]], + @"Fetcher delegate class: %@", [fetcherDelegate class]); + return (GTMSessionFetcherSessionDelegateDispatcher *)fetcherDelegate; + } + } + return nil; +} + +- (void)fetcherDidCreateSession:(GTMSessionFetcher *)fetcher { + if (fetcher.canShareSession) { + NSURLSession *fetcherSession = fetcher.session; + GTMSESSION_ASSERT_DEBUG(fetcherSession != nil, @"Fetcher missing its session: %@", fetcher); + + GTMSessionFetcherSessionDelegateDispatcher *delegateDispatcher = + [self delegateDispatcherForFetcher:fetcher]; + if (delegateDispatcher) { + GTMSESSION_ASSERT_DEBUG(delegateDispatcher.session == nil, + @"Fetcher made an extra session: %@", fetcher); + + // Save this fetcher's session. + delegateDispatcher.session = fetcherSession; + + // Allow other fetchers to request this session now. + dispatch_semaphore_signal(_sessionCreationSemaphore); + } + } +} + +- (void)fetcherDidBeginFetching:(GTMSessionFetcher *)fetcher { + // If this fetcher has a separate delegate with a shared session, then + // this fetcher should be added to the delegate's map of tasks to fetchers. + GTMSessionFetcherSessionDelegateDispatcher *delegateDispatcher = + [self delegateDispatcherForFetcher:fetcher]; + if (delegateDispatcher) { + GTMSESSION_ASSERT_DEBUG(fetcher.canShareSession, + @"Inappropriate shared session: %@", fetcher); + + // There should already be a session, from this or a previous fetcher. + // + // Sanity check that the fetcher's session is the delegate's shared session. + NSURLSession *sharedSession = delegateDispatcher.session; + NSURLSession *fetcherSession = fetcher.session; + GTMSESSION_ASSERT_DEBUG(sharedSession != nil, @"Missing delegate session: %@", fetcher); + GTMSESSION_ASSERT_DEBUG(fetcherSession == sharedSession, + @"Inconsistent session: %@ %@ (shared: %@)", + fetcher, fetcherSession, sharedSession); + + if (sharedSession != nil && fetcherSession == sharedSession) { + NSURLSessionTask *task = fetcher.sessionTask; + GTMSESSION_ASSERT_DEBUG(task != nil, @"Missing session task: %@", fetcher); + + if (task) { + [delegateDispatcher setFetcher:fetcher + forTask:task]; + } + } + } +} + +- (void)stopFetcher:(GTMSessionFetcher *)fetcher { + [fetcher stopFetching]; +} + +- (void)fetcherDidStop:(GTMSessionFetcher *)fetcher { + // Entry point from the fetcher + NSString *host = fetcher.serviceHost; + if (!host) { + // fetcher has been stopped previously + return; + } + + // This removeFetcher: invocation is a fallback; typically, fetchers are removed from the task + // map when the task completes. + GTMSessionFetcherSessionDelegateDispatcher *delegateDispatcher = + [self delegateDispatcherForFetcher:fetcher]; + [delegateDispatcher removeFetcher:fetcher]; + + NSMutableArray *fetchersToStart; + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + // If a test is waiting for all fetchers to stop, it needs to wait for this one + // to invoke its callbacks on the callback queue. + [_stoppedFetchersToWaitFor addObject:fetcher]; + + NSMutableArray *runningForHost = [_runningFetchersByHost objectForKey:host]; + [runningForHost removeObject:fetcher]; + + NSMutableArray *delayedForHost = [_delayedFetchersByHost objectForKey:host]; + [delayedForHost removeObject:fetcher]; + + while (delayedForHost.count > 0 + && [[self class] numberOfNonBackgroundSessionFetchers:runningForHost] + < _maxRunningFetchersPerHost) { + // Start another delayed fetcher running, scanning for the minimum + // priority value, defaulting to FIFO for equal priorities + GTMSessionFetcher *nextFetcher = nil; + for (GTMSessionFetcher *delayedFetcher in delayedForHost) { + if (nextFetcher == nil + || delayedFetcher.servicePriority < nextFetcher.servicePriority) { + nextFetcher = delayedFetcher; + } + } + + if (nextFetcher) { + [self addRunningFetcher:nextFetcher forHost:host]; + runningForHost = [_runningFetchersByHost objectForKey:host]; + + [delayedForHost removeObjectIdenticalTo:nextFetcher]; + + if (!fetchersToStart) { + fetchersToStart = [NSMutableArray array]; + } + [fetchersToStart addObject:nextFetcher]; + } + } + + if (runningForHost.count == 0) { + // None left; remove the empty array + [_runningFetchersByHost removeObjectForKey:host]; + } + + if (delayedForHost.count == 0) { + [_delayedFetchersByHost removeObjectForKey:host]; + } + } // @synchronized(self) + + // Start fetchers outside of the synchronized block to avoid a deadlock. + for (GTMSessionFetcher *nextFetcher in fetchersToStart) { + [self startFetcher:nextFetcher]; + } + + // The fetcher is no longer in the running or the delayed array, + // so remove its host and thread properties + fetcher.serviceHost = nil; +} + +- (NSUInteger)numberOfFetchers { + NSUInteger running = [self numberOfRunningFetchers]; + NSUInteger delayed = [self numberOfDelayedFetchers]; + return running + delayed; +} + +- (NSUInteger)numberOfRunningFetchers { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + NSUInteger sum = 0; + for (NSString *host in _runningFetchersByHost) { + NSArray *fetchers = [_runningFetchersByHost objectForKey:host]; + sum += fetchers.count; + } + return sum; + } +} + +- (NSUInteger)numberOfDelayedFetchers { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + NSUInteger sum = 0; + for (NSString *host in _delayedFetchersByHost) { + NSArray *fetchers = [_delayedFetchersByHost objectForKey:host]; + sum += fetchers.count; + } + return sum; + } +} + +- (NSArray *)issuedFetchers { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + NSMutableArray *allFetchers = [NSMutableArray array]; + void (^accumulateFetchers)(id, id, BOOL *) = ^(NSString *host, + NSArray *fetchersForHost, + BOOL *stop) { + [allFetchers addObjectsFromArray:fetchersForHost]; + }; + [_runningFetchersByHost enumerateKeysAndObjectsUsingBlock:accumulateFetchers]; + [_delayedFetchersByHost enumerateKeysAndObjectsUsingBlock:accumulateFetchers]; + + GTMSESSION_ASSERT_DEBUG(allFetchers.count == [NSSet setWithArray:allFetchers].count, + @"Fetcher appears multiple times\n running: %@\n delayed: %@", + _runningFetchersByHost, _delayedFetchersByHost); + + return allFetchers.count > 0 ? allFetchers : nil; + } +} + +- (NSArray *)issuedFetchersWithRequestURL:(NSURL *)requestURL { + NSString *host = requestURL.host; + if (host.length == 0) return nil; + + NSURL *targetURL = [requestURL absoluteURL]; + + NSArray *allFetchers = [self issuedFetchers]; + NSIndexSet *indexes = [allFetchers indexesOfObjectsPassingTest:^BOOL(GTMSessionFetcher *fetcher, + NSUInteger idx, + BOOL *stop) { + NSURL *fetcherURL = [fetcher.request.URL absoluteURL]; + return [fetcherURL isEqual:targetURL]; + }]; + + NSArray *result = nil; + if (indexes.count > 0) { + result = [allFetchers objectsAtIndexes:indexes]; + } + return result; +} + +- (void)stopAllFetchers { + NSArray *delayedFetchersByHost; + NSArray *runningFetchersByHost; + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + // Set the time barrier so fetchers know not to call back even if + // the stop calls below occur after the fetchers naturally + // stopped and so were removed from _runningFetchersByHost, + // but while the callbacks were already enqueued before stopAllFetchers + // was invoked. + _stoppedAllFetchersDate = [[NSDate alloc] init]; + + // Remove fetchers from the delayed list to avoid fetcherDidStop: from + // starting more fetchers running as a side effect of stopping one + delayedFetchersByHost = _delayedFetchersByHost.allValues; + [_delayedFetchersByHost removeAllObjects]; + + runningFetchersByHost = _runningFetchersByHost.allValues; + [_runningFetchersByHost removeAllObjects]; + } + + for (NSArray *delayedForHost in delayedFetchersByHost) { + for (GTMSessionFetcher *fetcher in delayedForHost) { + [self stopFetcher:fetcher]; + } + } + + for (NSArray *runningForHost in runningFetchersByHost) { + for (GTMSessionFetcher *fetcher in runningForHost) { + [self stopFetcher:fetcher]; + } + } +} + +- (NSDate *)stoppedAllFetchersDate { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _stoppedAllFetchersDate; + } +} + +#pragma mark Accessors + +- (BOOL)reuseSession { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _delegateDispatcher != nil; + } +} + +- (void)setReuseSession:(BOOL)shouldReuse { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + BOOL wasReusing = (_delegateDispatcher != nil); + if (shouldReuse != wasReusing) { + [self abandonDispatcher]; + if (shouldReuse) { + _delegateDispatcher = + [[GTMSessionFetcherSessionDelegateDispatcher alloc] initWithParentService:self + sessionDiscardInterval:_unusedSessionTimeout]; + } else { + _delegateDispatcher = nil; + } + } + } +} + +- (void)resetSession { + GTMSessionCheckNotSynchronized(self); + dispatch_semaphore_wait(_sessionCreationSemaphore, DISPATCH_TIME_FOREVER); + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + [self resetSessionInternal]; + } + + dispatch_semaphore_signal(_sessionCreationSemaphore); +} + +- (void)resetSessionInternal { + GTMSessionCheckSynchronized(self); + + // The old dispatchers may be retained as delegates of any ongoing sessions by those sessions. + if (_delegateDispatcher) { + [self abandonDispatcher]; + _delegateDispatcher = + [[GTMSessionFetcherSessionDelegateDispatcher alloc] initWithParentService:self + sessionDiscardInterval:_unusedSessionTimeout]; + } +} + +- (void)resetSessionForDispatcherDiscardTimer:(NSTimer *)timer { + GTMSessionCheckNotSynchronized(self); + + dispatch_semaphore_wait(_sessionCreationSemaphore, DISPATCH_TIME_FOREVER); + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (_delegateDispatcher.discardTimer == timer) { + // If the delegate dispatcher's current discardTimer is the same object as the timer + // that fired, no fetcher has recently attempted to start using the session by calling + // startSessionUsage, which invalidates and nils out the timer. + [self resetSessionInternal]; + } else { + // A fetcher has invalidated the timer between its triggering and now, potentially + // meaning a fetcher has requested access to the NSURLSession, and may be in the process + // of starting a new task. The dispatcher should not be abandoned, as this can lead + // to a race condition between calling -finishTasksAndInvalidate on the NSURLSession + // and the fetcher attempting to create a new task. + } + } + + dispatch_semaphore_signal(_sessionCreationSemaphore); +} + +- (NSTimeInterval)unusedSessionTimeout { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _unusedSessionTimeout; + } +} + +- (void)setUnusedSessionTimeout:(NSTimeInterval)timeout { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _unusedSessionTimeout = timeout; + _delegateDispatcher.discardInterval = timeout; + } +} + +// This method should be called inside of @synchronized(self) +- (void)abandonDispatcher { + GTMSessionCheckSynchronized(self); + [_delegateDispatcher abandon]; +} + +- (NSDictionary *)runningFetchersByHost { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return [_runningFetchersByHost copy]; + } +} + +- (void)setRunningFetchersByHost:(NSDictionary *)dict { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _runningFetchersByHost = [dict mutableCopy]; + } +} + +- (NSDictionary *)delayedFetchersByHost { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return [_delayedFetchersByHost copy]; + } +} + +- (void)setDelayedFetchersByHost:(NSDictionary *)dict { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _delayedFetchersByHost = [dict mutableCopy]; + } +} + +- (id)authorizer { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _authorizer; + } +} + +- (void)setAuthorizer:(id)obj { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (obj != _authorizer) { + [self detachAuthorizer]; + } + + _authorizer = obj; + } + + // Use the fetcher service for the authorization fetches if the auth + // object supports fetcher services + if ([obj respondsToSelector:@selector(setFetcherService:)]) { +#if GTM_USE_SESSION_FETCHER + [obj setFetcherService:self]; +#else + [obj setFetcherService:(id)self]; +#endif + } +} + +// This should be called inside a @synchronized(self) block except during dealloc. +- (void)detachAuthorizer { + // This method is called by the fetcher service's dealloc and setAuthorizer: + // methods; do not override. + // + // The fetcher service retains the authorizer, and the authorizer has a + // weak pointer to the fetcher service (a non-zeroing pointer for + // compatibility with iOS 4 and Mac OS X 10.5/10.6.) + // + // When this fetcher service no longer uses the authorizer, we want to remove + // the authorizer's dependence on the fetcher service. Authorizers can still + // function without a fetcher service. + if ([_authorizer respondsToSelector:@selector(fetcherService)]) { + id authFetcherService = [_authorizer fetcherService]; + if (authFetcherService == self) { + [_authorizer setFetcherService:nil]; + } + } +} + +- (dispatch_queue_t GTM_NONNULL_TYPE)callbackQueue { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _callbackQueue; + } // @synchronized(self) +} + +- (void)setCallbackQueue:(dispatch_queue_t GTM_NULLABLE_TYPE)queue { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _callbackQueue = queue ?: dispatch_get_main_queue(); + } // @synchronized(self) +} + +- (NSOperationQueue * GTM_NONNULL_TYPE)sessionDelegateQueue { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _delegateQueue; + } // @synchronized(self) +} + +- (void)setSessionDelegateQueue:(NSOperationQueue * GTM_NULLABLE_TYPE)queue { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _delegateQueue = queue ?: [NSOperationQueue mainQueue]; + } // @synchronized(self) +} + +- (NSOperationQueue *)delegateQueue { + // Provided for compatibility with the old fetcher service. The gtm-oauth2 code respects + // any custom delegate queue for calling the app. + return nil; +} + ++ (NSUInteger)numberOfNonBackgroundSessionFetchers:(NSArray *)fetchers { + NSUInteger sum = 0; + for (GTMSessionFetcher *fetcher in fetchers) { + if (!fetcher.usingBackgroundSession) { + ++sum; + } + } + return sum; +} + +@end + +@implementation GTMSessionFetcherService (TestingSupport) + ++ (instancetype)mockFetcherServiceWithFakedData:(NSData *)fakedDataOrNil + fakedError:(NSError *)fakedErrorOrNil { +#if !GTM_DISABLE_FETCHER_TEST_BLOCK + NSURL *url = [NSURL URLWithString:@"http://example.invalid"]; + NSHTTPURLResponse *fakedResponse = + [[NSHTTPURLResponse alloc] initWithURL:url + statusCode:(fakedErrorOrNil ? 500 : 200) + HTTPVersion:@"HTTP/1.1" + headerFields:nil]; + GTMSessionFetcherService *service = [[self alloc] init]; + service.allowedInsecureSchemes = @[ @"http" ]; + service.testBlock = ^(GTMSessionFetcher *fetcherToTest, + GTMSessionFetcherTestResponse testResponse) { + testResponse(fakedResponse, fakedDataOrNil, fakedErrorOrNil); + }; + return service; +#else + GTMSESSION_ASSERT_DEBUG(0, @"Test blocks disabled"); + return nil; +#endif // GTM_DISABLE_FETCHER_TEST_BLOCK +} + +#pragma mark Synchronous Wait for Unit Testing + +- (BOOL)waitForCompletionOfAllFetchersWithTimeout:(NSTimeInterval)timeoutInSeconds { + NSDate *giveUpDate = [NSDate dateWithTimeIntervalSinceNow:timeoutInSeconds]; + _stoppedFetchersToWaitFor = [NSMutableArray array]; + + BOOL shouldSpinRunLoop = [NSThread isMainThread]; + const NSTimeInterval kSpinInterval = 0.001; + BOOL didTimeOut = NO; + while (([self numberOfFetchers] > 0 || _stoppedFetchersToWaitFor.count > 0)) { + didTimeOut = [giveUpDate timeIntervalSinceNow] < 0; + if (didTimeOut) break; + + GTMSessionFetcher *stoppedFetcher = _stoppedFetchersToWaitFor.firstObject; + if (stoppedFetcher) { + [_stoppedFetchersToWaitFor removeObject:stoppedFetcher]; + [stoppedFetcher waitForCompletionWithTimeout:10.0 * kSpinInterval]; + } + + if (shouldSpinRunLoop) { + NSDate *stopDate = [NSDate dateWithTimeIntervalSinceNow:kSpinInterval]; + [[NSRunLoop currentRunLoop] runUntilDate:stopDate]; + } else { + [NSThread sleepForTimeInterval:kSpinInterval]; + } + } + _stoppedFetchersToWaitFor = nil; + + return !didTimeOut; +} + +@end + +@implementation GTMSessionFetcherService (BackwardsCompatibilityOnly) + +- (NSInteger)cookieStorageMethod { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _cookieStorageMethod; + } +} + +- (void)setCookieStorageMethod:(NSInteger)cookieStorageMethod { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _cookieStorageMethod = cookieStorageMethod; + } +} + +@end + +@implementation GTMSessionFetcherSessionDelegateDispatcher { + __weak GTMSessionFetcherService *_parentService; + NSURLSession *_session; + + // The task map maps NSURLSessionTasks to GTMSessionFetchers + NSMutableDictionary *_taskToFetcherMap; + // The discard timer will invalidate sessions after the session's last task completes. + NSTimer *_discardTimer; + NSTimeInterval _discardInterval; +} + +@synthesize discardInterval = _discardInterval, + session = _session; + +- (instancetype)init { + [self doesNotRecognizeSelector:_cmd]; + return nil; +} + +- (instancetype)initWithParentService:(GTMSessionFetcherService *)parentService + sessionDiscardInterval:(NSTimeInterval)discardInterval { + self = [super init]; + if (self) { + _discardInterval = discardInterval; + _parentService = parentService; + } + return self; +} + +- (NSString *)description { + return [NSString stringWithFormat:@"%@ %p %@ %@", + [self class], self, + _session ?: @"", + _taskToFetcherMap.count > 0 ? _taskToFetcherMap : @""]; +} + +- (NSTimer *)discardTimer { + GTMSessionCheckNotSynchronized(self); + @synchronized(self) { + return _discardTimer; + } +} + +// This method should be called inside of a @synchronized(self) block. +- (void)startDiscardTimer { + GTMSessionCheckSynchronized(self); + [_discardTimer invalidate]; + _discardTimer = nil; + if (_discardInterval > 0) { + _discardTimer = [NSTimer timerWithTimeInterval:_discardInterval + target:self + selector:@selector(discardTimerFired:) + userInfo:nil + repeats:NO]; + [_discardTimer setTolerance:(_discardInterval / 10)]; + [[NSRunLoop mainRunLoop] addTimer:_discardTimer forMode:NSRunLoopCommonModes]; + } +} + +// This method should be called inside of a @synchronized(self) block. +- (void)destroyDiscardTimer { + GTMSessionCheckSynchronized(self); + [_discardTimer invalidate]; + _discardTimer = nil; +} + +- (void)discardTimerFired:(NSTimer *)timer { + GTMSessionFetcherService *service; + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + NSUInteger numberOfTasks = _taskToFetcherMap.count; + if (numberOfTasks == 0) { + service = _parentService; + } + } + + // Inform the service that the discard timer has fired, and should check whether the + // service can abandon us. -resetSession cannot be called directly, as there is a + // race condition that must be guarded against with the NSURLSession being returned + // from sessionForFetcherCreation outside other locks. The service can take steps + // to prevent resetting the session if that has occurred. + // + // The service must be called from outside the @synchronized block. + [service resetSessionForDispatcherDiscardTimer:timer]; +} + +- (void)abandon { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + [self destroySessionAndTimer]; + } +} + +- (void)startSessionUsage { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + [self destroyDiscardTimer]; + } +} + +// This method should be called inside of a @synchronized(self) block. +- (void)destroySessionAndTimer { + GTMSessionCheckSynchronized(self); + [self destroyDiscardTimer]; + + // Break any retain cycle from the session holding the delegate. + [_session finishTasksAndInvalidate]; + + // Immediately clear the session so no new task may be issued with it. + // + // The _taskToFetcherMap needs to stay valid until the outstanding tasks finish. + _session = nil; +} + +- (void)setFetcher:(GTMSessionFetcher *)fetcher forTask:(NSURLSessionTask *)task { + GTMSESSION_ASSERT_DEBUG(fetcher != nil, @"missing fetcher"); + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (_taskToFetcherMap == nil) { + _taskToFetcherMap = [[NSMutableDictionary alloc] init]; + } + + if (fetcher) { + [_taskToFetcherMap setObject:fetcher forKey:task]; + [self destroyDiscardTimer]; + } + } +} + +- (void)removeFetcher:(GTMSessionFetcher *)fetcher { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + // Typically, a fetcher should be removed when its task invokes + // URLSession:task:didCompleteWithError:. + // + // When fetching with a testBlock, though, the task completed delegate + // method may not be invoked, requiring cleanup here. + NSArray *tasks = [_taskToFetcherMap allKeysForObject:fetcher]; + GTMSESSION_ASSERT_DEBUG(tasks.count <= 1, @"fetcher task not unmapped: %@", tasks); + [_taskToFetcherMap removeObjectsForKeys:tasks]; + + if (_taskToFetcherMap.count == 0) { + [self startDiscardTimer]; + } + } +} + +// This helper method provides synchronized access to the task map for the delegate +// methods below. +- (id)fetcherForTask:(NSURLSessionTask *)task { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return [_taskToFetcherMap objectForKey:task]; + } +} + +- (void)removeTaskFromMap:(NSURLSessionTask *)task { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + [_taskToFetcherMap removeObjectForKey:task]; + } +} + +- (void)setSession:(NSURLSession *)session { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _session = session; + } +} + +- (NSURLSession *)session { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _session; + } +} + +- (NSTimeInterval)discardInterval { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _discardInterval; + } +} + +- (void)setDiscardInterval:(NSTimeInterval)interval { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _discardInterval = interval; + } +} + +// NSURLSessionDelegate protocol methods. + +// - (void)URLSessionDidFinishEventsForBackgroundURLSession:(NSURLSession *)session; +// +// TODO(seh): How do we route this to an appropriate fetcher? + + +- (void)URLSession:(NSURLSession *)session didBecomeInvalidWithError:(NSError *)error { + GTM_LOG_SESSION_DELEGATE(@"%@ %p URLSession:%@ didBecomeInvalidWithError:%@", + [self class], self, session, error); + NSDictionary *localTaskToFetcherMap; + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _session = nil; + + localTaskToFetcherMap = [_taskToFetcherMap copy]; + } + + // Any "suspended" tasks may not have received callbacks from NSURLSession when the session + // completes; we'll call them now. + [localTaskToFetcherMap enumerateKeysAndObjectsUsingBlock:^(NSURLSessionTask *task, + GTMSessionFetcher *fetcher, + BOOL *stop) { + if (fetcher.session == session) { + // Our delegate method URLSession:task:didCompleteWithError: will rely on + // _taskToFetcherMap so that should still contain this fetcher. + NSError *canceledError = [NSError errorWithDomain:NSURLErrorDomain + code:NSURLErrorCancelled + userInfo:nil]; + [self URLSession:session task:task didCompleteWithError:canceledError]; + } else { + GTMSESSION_ASSERT_DEBUG(0, @"Unexpected session in fetcher: %@ has %@ (expected %@)", + fetcher, fetcher.session, session); + } + }]; + + // Our tests rely on this notification to know the session discard timer fired. + NSDictionary *userInfo = @{ kGTMSessionFetcherServiceSessionKey : session }; + NSNotificationCenter *nc = [NSNotificationCenter defaultCenter]; + [nc postNotificationName:kGTMSessionFetcherServiceSessionBecameInvalidNotification + object:_parentService + userInfo:userInfo]; +} + + +#pragma mark - NSURLSessionTaskDelegate + +// NSURLSessionTaskDelegate protocol methods. +// +// We won't test here if the fetcher responds to these since we only want this +// class to implement the same delegate methods the fetcher does (so NSURLSession's +// tests for respondsToSelector: will have the same result whether the session +// delegate is the fetcher or this dispatcher.) + +- (void)URLSession:(NSURLSession *)session + task:(NSURLSessionTask *)task +willPerformHTTPRedirection:(NSHTTPURLResponse *)response + newRequest:(NSURLRequest *)request + completionHandler:(void (^)(NSURLRequest *))completionHandler { + id fetcher = [self fetcherForTask:task]; + [fetcher URLSession:session + task:task +willPerformHTTPRedirection:response + newRequest:request + completionHandler:completionHandler]; +} + +- (void)URLSession:(NSURLSession *)session + task:(NSURLSessionTask *)task +didReceiveChallenge:(NSURLAuthenticationChallenge *)challenge + completionHandler:(void (^)(NSURLSessionAuthChallengeDisposition, NSURLCredential *))handler { + id fetcher = [self fetcherForTask:task]; + [fetcher URLSession:session + task:task + didReceiveChallenge:challenge + completionHandler:handler]; +} + +- (void)URLSession:(NSURLSession *)session + task:(NSURLSessionTask *)task + needNewBodyStream:(void (^)(NSInputStream *bodyStream))handler { + id fetcher = [self fetcherForTask:task]; + [fetcher URLSession:session + task:task + needNewBodyStream:handler]; +} + +- (void)URLSession:(NSURLSession *)session + task:(NSURLSessionTask *)task + didSendBodyData:(int64_t)bytesSent + totalBytesSent:(int64_t)totalBytesSent +totalBytesExpectedToSend:(int64_t)totalBytesExpectedToSend { + id fetcher = [self fetcherForTask:task]; + [fetcher URLSession:session + task:task + didSendBodyData:bytesSent + totalBytesSent:totalBytesSent +totalBytesExpectedToSend:totalBytesExpectedToSend]; +} + +- (void)URLSession:(NSURLSession *)session + task:(NSURLSessionTask *)task +didCompleteWithError:(NSError *)error { + id fetcher = [self fetcherForTask:task]; + + // This is the usual way tasks are removed from the task map. + [self removeTaskFromMap:task]; + + [fetcher URLSession:session + task:task + didCompleteWithError:error]; +} + +// NSURLSessionDataDelegate protocol methods. + +- (void)URLSession:(NSURLSession *)session + dataTask:(NSURLSessionDataTask *)dataTask +didReceiveResponse:(NSURLResponse *)response + completionHandler:(void (^)(NSURLSessionResponseDisposition))handler { + id fetcher = [self fetcherForTask:dataTask]; + [fetcher URLSession:session + dataTask:dataTask + didReceiveResponse:response + completionHandler:handler]; +} + +- (void)URLSession:(NSURLSession *)session + dataTask:(NSURLSessionDataTask *)dataTask +didBecomeDownloadTask:(NSURLSessionDownloadTask *)downloadTask { + id fetcher = [self fetcherForTask:dataTask]; + GTMSESSION_ASSERT_DEBUG(fetcher != nil, @"Missing fetcher for %@", dataTask); + [self removeTaskFromMap:dataTask]; + if (fetcher) { + GTMSESSION_ASSERT_DEBUG([fetcher isKindOfClass:[GTMSessionFetcher class]], + @"Expecting GTMSessionFetcher"); + [self setFetcher:(GTMSessionFetcher *)fetcher forTask:downloadTask]; + } + + [fetcher URLSession:session + dataTask:dataTask +didBecomeDownloadTask:downloadTask]; +} + +- (void)URLSession:(NSURLSession *)session + dataTask:(NSURLSessionDataTask *)dataTask + didReceiveData:(NSData *)data { + id fetcher = [self fetcherForTask:dataTask]; + [fetcher URLSession:session + dataTask:dataTask + didReceiveData:data]; +} + +- (void)URLSession:(NSURLSession *)session + dataTask:(NSURLSessionDataTask *)dataTask + willCacheResponse:(NSCachedURLResponse *)proposedResponse + completionHandler:(void (^)(NSCachedURLResponse *))handler { + id fetcher = [self fetcherForTask:dataTask]; + [fetcher URLSession:session + dataTask:dataTask + willCacheResponse:proposedResponse + completionHandler:handler]; +} + +// NSURLSessionDownloadDelegate protocol methods. + +- (void)URLSession:(NSURLSession *)session + downloadTask:(NSURLSessionDownloadTask *)downloadTask +didFinishDownloadingToURL:(NSURL *)location { + id fetcher = [self fetcherForTask:downloadTask]; + [fetcher URLSession:session + downloadTask:downloadTask +didFinishDownloadingToURL:location]; +} + +- (void)URLSession:(NSURLSession *)session + downloadTask:(NSURLSessionDownloadTask *)downloadTask + didWriteData:(int64_t)bytesWritten + totalBytesWritten:(int64_t)totalWritten +totalBytesExpectedToWrite:(int64_t)totalExpected { + id fetcher = [self fetcherForTask:downloadTask]; + [fetcher URLSession:session + downloadTask:downloadTask + didWriteData:bytesWritten + totalBytesWritten:totalWritten +totalBytesExpectedToWrite:totalExpected]; +} + +- (void)URLSession:(NSURLSession *)session + downloadTask:(NSURLSessionDownloadTask *)downloadTask + didResumeAtOffset:(int64_t)fileOffset +expectedTotalBytes:(int64_t)expectedTotalBytes { + id fetcher = [self fetcherForTask:downloadTask]; + [fetcher URLSession:session + downloadTask:downloadTask + didResumeAtOffset:fileOffset + expectedTotalBytes:expectedTotalBytes]; +} + +@end diff --git a/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionUploadFetcher.h b/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionUploadFetcher.h new file mode 100644 index 0000000..a098ce9 --- /dev/null +++ b/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionUploadFetcher.h @@ -0,0 +1,166 @@ +/* Copyright 2014 Google Inc. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// GTMSessionUploadFetcher implements Google's resumable upload protocol. + +// +// This subclass of GTMSessionFetcher simulates the series of fetches +// needed for chunked upload as a single fetch operation. +// +// Protocol document: TBD +// +// To the client, the only fetcher that exists is this class; the subsidiary +// fetchers needed for uploading chunks are not visible (though the most recent +// chunk fetcher may be accessed via the -activeFetcher or -chunkFetcher methods, and +// -responseHeaders and -statusCode reflect results from the most recent chunk +// fetcher.) +// +// Chunk fetchers are discarded as soon as they have completed. +// +// The protocol also allows for a cancellation notification request to be sent to the +// server to allow discarding of the currently uploaded data and this will be sent +// automatically upon calling stopFetching if the upload has already started. +// +// Note: Unlike the fetcher superclass, the methods of GTMSessionUploadFetcher should +// only be used from the main thread until further work is done to make this subclass +// thread-safe. + +#import "GTMSessionFetcher.h" +#import "GTMSessionFetcherService.h" + +GTM_ASSUME_NONNULL_BEGIN + +// The value to use for file size parameters when the file size is not yet known. +extern int64_t const kGTMSessionUploadFetcherUnknownFileSize; + +// Unless an application knows it needs a smaller chunk size, it should use the standard +// chunk size, which sends the entire file as a single chunk to minimize upload overhead. +// Setting an explicit chunk size that comfortably fits in memory is advisable for large +// uploads. +extern int64_t const kGTMSessionUploadFetcherStandardChunkSize; + +// When uploading requires data buffer allocations (such as uploading from an NSData or +// an NSFileHandle) this is the maximum buffer size that will be created by the fetcher. +extern int64_t const kGTMSessionUploadFetcherMaximumDemandBufferSize; + +// Notification that the upload location URL was provided by the server. +extern NSString *const kGTMSessionFetcherUploadLocationObtainedNotification; + +// Block to provide data during uploads. +// +// Response data may be allocated with dataWithBytesNoCopy:length:freeWhenDone: for efficiency, +// and released after the response block returns. +// +// If the length of the file being uploaded is unknown or already set, send +// kGTMSessionUploadFetcherUnknownFileSize for |fullUploadLength|. Otherwise, set |fullUploadLength| +// to its proper value. +// +// Pass nil as the data (and optionally an NSError) for a failure. +typedef void (^GTMSessionUploadFetcherDataProviderResponse)(NSData * GTM_NULLABLE_TYPE data, + int64_t fullUploadLength, + NSError * GTM_NULLABLE_TYPE error); +// Do not call the response with an NSData object with less data than the requested length unless +// you are passing the fullUploadLength to the fetcher for the first time and it is the last chunk +// of data in the file being uploaded. +typedef void (^GTMSessionUploadFetcherDataProvider)(int64_t offset, int64_t length, + GTMSessionUploadFetcherDataProviderResponse response); + +// Block to be notified about the final status of the cancellation request started in stopFetching. +// +// |fetcher| will be the cancel request that was sent to the server, or nil if stopFetching is not +// going to send a cancel request. If |fetcher| is provided, the other parameters correspond to the +// completion handler of the cancellation request fetcher. +typedef void (^GTMSessionUploadFetcherCancellationHandler)( + GTMSessionFetcher * GTM_NULLABLE_TYPE fetcher, + NSData * GTM_NULLABLE_TYPE data, + NSError * GTM_NULLABLE_TYPE error); + +@interface GTMSessionUploadFetcher : GTMSessionFetcher + +// Create an upload fetcher specifying either the request or the resume location URL, +// then set an upload data source using one of these: +// +// setUploadFileURL: +// setUploadDataLength:provider: +// setUploadFileHandle: +// setUploadData: + ++ (instancetype)uploadFetcherWithRequest:(NSURLRequest *)request + uploadMIMEType:(NSString *)uploadMIMEType + chunkSize:(int64_t)chunkSize + fetcherService:(GTM_NULLABLE GTMSessionFetcherService *)fetcherServiceOrNil; + ++ (instancetype)uploadFetcherWithLocation:(NSURL * GTM_NULLABLE_TYPE)uploadLocationURL + uploadMIMEType:(NSString *)uploadMIMEType + chunkSize:(int64_t)chunkSize + fetcherService:(GTM_NULLABLE GTMSessionFetcherService *)fetcherServiceOrNil; + +// Allows dataProviders for files of unknown length. Pass kGTMSessionUploadFetcherUnknownFileSize as +// |fullLength| if the length is unknown. +- (void)setUploadDataLength:(int64_t)fullLength + provider:(GTM_NULLABLE GTMSessionUploadFetcherDataProvider)block; + ++ (NSArray *)uploadFetchersForBackgroundSessions; ++ (GTM_NULLABLE instancetype)uploadFetcherForSessionIdentifier:(NSString *)sessionIdentifier; + +- (void)pauseFetching; +- (void)resumeFetching; +- (BOOL)isPaused; + +@property(atomic, strong, GTM_NULLABLE) NSURL *uploadLocationURL; +@property(atomic, strong, GTM_NULLABLE) NSData *uploadData; +@property(atomic, strong, GTM_NULLABLE) NSURL *uploadFileURL; +@property(atomic, strong, GTM_NULLABLE) NSFileHandle *uploadFileHandle; +@property(atomic, copy, readonly, GTM_NULLABLE) GTMSessionUploadFetcherDataProvider uploadDataProvider; +@property(atomic, copy) NSString *uploadMIMEType; +@property(atomic, assign) int64_t chunkSize; +@property(atomic, readonly, assign) int64_t currentOffset; + +// The fetcher for the current data chunk, if any +@property(atomic, strong, GTM_NULLABLE) GTMSessionFetcher *chunkFetcher; + +// The active fetcher is the current chunk fetcher, or the upload fetcher itself +// if no chunk fetcher has yet been created. +@property(atomic, readonly) GTMSessionFetcher *activeFetcher; + +// The last request made by an active fetcher. Useful for testing. +@property(atomic, readonly, GTM_NULLABLE) NSURLRequest *lastChunkRequest; + +// The status code from the most recently-completed fetch. +@property(atomic, assign) NSInteger statusCode; + +// Invoked as part of the stop fetching process. Invoked immediately if there is no upload in +// progress, otherwise invoked with the results of the attempt to notify the server that the +// upload will not continue. +// +// Unlike other callbacks, since this is related specifically to the stopFetching flow it is not +// cleared by stopFetching. It will instead clear itself after it is invoked or if the completion +// has occured before stopFetching is called. +@property(atomic, copy, GTM_NULLABLE) GTMSessionUploadFetcherCancellationHandler + cancellationHandler; + +// Exposed for testing only. +@property(atomic, readonly, GTM_NULLABLE) dispatch_queue_t delegateCallbackQueue; +@property(atomic, readonly, GTM_NULLABLE) GTMSessionFetcherCompletionHandler delegateCompletionHandler; + +@end + +@interface GTMSessionFetcher (GTMSessionUploadFetcherMethods) + +@property(readonly, GTM_NULLABLE) GTMSessionUploadFetcher *parentUploadFetcher; + +@end + +GTM_ASSUME_NONNULL_END diff --git a/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionUploadFetcher.m b/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionUploadFetcher.m new file mode 100644 index 0000000..9ac51ba --- /dev/null +++ b/Til to Code/Pods/GTMSessionFetcher/Source/GTMSessionUploadFetcher.m @@ -0,0 +1,1954 @@ +/* Copyright 2014 Google Inc. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#if !defined(__has_feature) || !__has_feature(objc_arc) +#error "This file requires ARC support." +#endif + +#import "GTMSessionUploadFetcher.h" + +static NSString *const kGTMSessionIdentifierIsUploadChunkFetcherMetadataKey = @"_upChunk"; +static NSString *const kGTMSessionIdentifierUploadFileURLMetadataKey = @"_upFileURL"; +static NSString *const kGTMSessionIdentifierUploadFileLengthMetadataKey = @"_upFileLen"; +static NSString *const kGTMSessionIdentifierUploadLocationURLMetadataKey = @"_upLocURL"; +static NSString *const kGTMSessionIdentifierUploadMIMETypeMetadataKey = @"_uploadMIME"; +static NSString *const kGTMSessionIdentifierUploadChunkSizeMetadataKey = @"_upChSize"; +static NSString *const kGTMSessionIdentifierUploadCurrentOffsetMetadataKey = @"_upOffset"; + +static NSString *const kGTMSessionHeaderXGoogUploadChunkGranularity = @"X-Goog-Upload-Chunk-Granularity"; +static NSString *const kGTMSessionHeaderXGoogUploadCommand = @"X-Goog-Upload-Command"; +static NSString *const kGTMSessionHeaderXGoogUploadContentLength = @"X-Goog-Upload-Content-Length"; +static NSString *const kGTMSessionHeaderXGoogUploadContentType = @"X-Goog-Upload-Content-Type"; +static NSString *const kGTMSessionHeaderXGoogUploadOffset = @"X-Goog-Upload-Offset"; +static NSString *const kGTMSessionHeaderXGoogUploadProtocol = @"X-Goog-Upload-Protocol"; +static NSString *const kGTMSessionXGoogUploadProtocolResumable = @"resumable"; +static NSString *const kGTMSessionHeaderXGoogUploadSizeReceived = @"X-Goog-Upload-Size-Received"; +static NSString *const kGTMSessionHeaderXGoogUploadStatus = @"X-Goog-Upload-Status"; +static NSString *const kGTMSessionHeaderXGoogUploadURL = @"X-Goog-Upload-URL"; + +// Property of chunk fetchers identifying the parent upload fetcher. Non-retained NSValue. +static NSString *const kGTMSessionUploadFetcherChunkParentKey = @"_uploadFetcherChunkParent"; + +int64_t const kGTMSessionUploadFetcherUnknownFileSize = -1; + +int64_t const kGTMSessionUploadFetcherStandardChunkSize = (int64_t)LLONG_MAX; + +#if TARGET_OS_IPHONE +int64_t const kGTMSessionUploadFetcherMaximumDemandBufferSize = 10 * 1024 * 1024; // 10 MB for iOS, watchOS, tvOS +#else +int64_t const kGTMSessionUploadFetcherMaximumDemandBufferSize = 100 * 1024 * 1024; // 100 MB for macOS +#endif + +typedef NS_ENUM(NSUInteger, GTMSessionUploadFetcherStatus) { + kStatusUnknown, + kStatusActive, + kStatusFinal, + kStatusCancelled, +}; + +NSString *const kGTMSessionFetcherUploadLocationObtainedNotification = + @"kGTMSessionFetcherUploadLocationObtainedNotification"; + +#if !GTMSESSION_BUILD_COMBINED_SOURCES +@interface GTMSessionFetcher (ProtectedMethods) + +// Access to non-public method on the parent fetcher class. +- (void)stopFetchReleasingCallbacks:(BOOL)shouldReleaseCallbacks; +- (void)createSessionIdentifierWithMetadata:(NSDictionary *)metadata; +- (GTMSessionFetcherCompletionHandler)completionHandlerWithTarget:(id)target + didFinishSelector:(SEL)finishedSelector; +- (void)invokeOnCallbackQueue:(dispatch_queue_t)callbackQueue + afterUserStopped:(BOOL)afterStopped + block:(void (^)(void))block; +- (NSTimer *)retryTimer; +- (void)beginFetchForRetry; + +@property(readwrite, strong) NSData *downloadedData; +- (void)releaseCallbacks; + +- (NSInteger)statusCodeUnsynchronized; + +- (BOOL)userStoppedFetching; + +@end +#endif // !GTMSESSION_BUILD_COMBINED_SOURCES + +@interface GTMSessionUploadFetcher () + +// Changing readonly to readwrite. +@property(atomic, strong, readwrite) NSURLRequest *lastChunkRequest; +@property(atomic, readwrite, assign) int64_t currentOffset; + +// Internal properties. +@property(strong, atomic, GTM_NULLABLE) GTMSessionFetcher *fetcherInFlight; // Synchronized on self. + +@property(assign, atomic, getter=isSubdataGenerating) BOOL subdataGenerating; +@property(assign, atomic) BOOL shouldInitiateOffsetQuery; +@property(assign, atomic) int64_t uploadGranularity; + +@end + +@implementation GTMSessionUploadFetcher { + GTMSessionFetcher *_chunkFetcher; + + // We'll call through to the delegate's completion handler. + GTMSessionFetcherCompletionHandler _delegateCompletionHandler; + dispatch_queue_t _delegateCallbackQueue; + + // The initial fetch's body length and bytes actually sent are + // needed for calculating progress during subsequent chunk uploads + int64_t _initialBodyLength; + int64_t _initialBodySent; + + // The upload server address for the chunks of this upload session. + NSURL *_uploadLocationURL; + + // _uploadData, _uploadDataProvider, or _uploadFileHandle may be set, but only one. + NSData *_uploadData; + NSFileHandle *_uploadFileHandle; + GTMSessionUploadFetcherDataProvider _uploadDataProvider; + NSURL *_uploadFileURL; + int64_t _uploadFileLength; + NSString *_uploadMIMEType; + int64_t _chunkSize; + int64_t _uploadGranularity; + BOOL _isPaused; + BOOL _isRestartedUpload; + BOOL _shouldInitiateOffsetQuery; + + // Tied to useBackgroundSession property, since this property is applicable to chunk fetchers. + BOOL _useBackgroundSessionOnChunkFetchers; + + // We keep the latest offset into the upload data just for progress reporting. + int64_t _currentOffset; + + NSDictionary *_recentChunkReponseHeaders; + NSInteger _recentChunkStatusCode; + + // For waiting, we need to know the fetcher in flight, if any, and if subdata generation + // is in progress. + GTMSessionFetcher *_fetcherInFlight; + BOOL _isSubdataGenerating; + BOOL _isCancelInFlight; + + GTMSessionUploadFetcherCancellationHandler _cancellationHandler; +} + ++ (void)load { + [self uploadFetchersForBackgroundSessions]; +} + ++ (instancetype)uploadFetcherWithRequest:(NSURLRequest *)request + uploadMIMEType:(NSString *)uploadMIMEType + chunkSize:(int64_t)chunkSize + fetcherService:(GTMSessionFetcherService *)fetcherService { + GTMSessionUploadFetcher *fetcher = [self uploadFetcherWithRequest:request + fetcherService:fetcherService]; + [fetcher setLocationURL:nil + uploadMIMEType:uploadMIMEType + chunkSize:chunkSize]; + return fetcher; +} + ++ (instancetype)uploadFetcherWithLocation:(NSURL * GTM_NULLABLE_TYPE)uploadLocationURL + uploadMIMEType:(NSString *)uploadMIMEType + chunkSize:(int64_t)chunkSize + fetcherService:(GTMSessionFetcherService *)fetcherService { + GTMSessionUploadFetcher *fetcher = [self uploadFetcherWithRequest:nil + fetcherService:fetcherService]; + [fetcher setLocationURL:uploadLocationURL + uploadMIMEType:uploadMIMEType + chunkSize:chunkSize]; + return fetcher; +} + ++ (instancetype)uploadFetcherForSessionIdentifierMetadata:(NSDictionary *)metadata { + GTMSESSION_ASSERT_DEBUG( + [metadata[kGTMSessionIdentifierIsUploadChunkFetcherMetadataKey] boolValue], + @"Session identifier metadata is not for an upload fetcher: %@", metadata); + + NSNumber *uploadFileLengthNum = metadata[kGTMSessionIdentifierUploadFileLengthMetadataKey]; + GTMSESSION_ASSERT_DEBUG(uploadFileLengthNum != nil, + @"Session metadata missing an UploadFileSize"); + if (uploadFileLengthNum == nil) return nil; + + int64_t uploadFileLength = [uploadFileLengthNum longLongValue]; + GTMSESSION_ASSERT_DEBUG(uploadFileLength >= 0, @"Session metadata UploadFileSize is unknown"); + + NSString *uploadFileURLString = metadata[kGTMSessionIdentifierUploadFileURLMetadataKey]; + GTMSESSION_ASSERT_DEBUG(uploadFileURLString, @"Session metadata missing an UploadFileURL"); + if (uploadFileURLString == nil) return nil; + + NSURL *uploadFileURL = [NSURL URLWithString:uploadFileURLString]; + // There used to be a call here to NSURL checkResourceIsReachableAndReturnError: to check for the + // existence of the file (also tried NSFileManager fileExistsAtPath:). We've determined + // empirically that the check can fail at startup even when the upload file does in fact exist. + // For now, we'll go ahead and restore the background upload fetcher. If the file doesn't exist, + // it will fail later. + + NSString *uploadLocationURLString = metadata[kGTMSessionIdentifierUploadLocationURLMetadataKey]; + NSURL *uploadLocationURL = + uploadLocationURLString ? [NSURL URLWithString:uploadLocationURLString] : nil; + + NSString *uploadMIMEType = + metadata[kGTMSessionIdentifierUploadMIMETypeMetadataKey]; + int64_t uploadChunkSize = + [metadata[kGTMSessionIdentifierUploadChunkSizeMetadataKey] longLongValue]; + if (uploadChunkSize <= 0) { + uploadChunkSize = kGTMSessionUploadFetcherStandardChunkSize; + } + int64_t currentOffset = + [metadata[kGTMSessionIdentifierUploadCurrentOffsetMetadataKey] longLongValue]; + GTMSESSION_ASSERT_DEBUG(currentOffset <= uploadFileLength, + @"CurrentOffset (%lld) exceeds UploadFileSize (%lld)", + currentOffset, uploadFileLength); + if (currentOffset > uploadFileLength) return nil; + + GTMSessionUploadFetcher *uploadFetcher = [self uploadFetcherWithLocation:uploadLocationURL + uploadMIMEType:uploadMIMEType + chunkSize:uploadChunkSize + fetcherService:nil]; + // Set the upload file length before setting the upload file URL tries to determine the length. + [uploadFetcher setUploadFileLength:uploadFileLength]; + + uploadFetcher.uploadFileURL = uploadFileURL; + uploadFetcher.sessionUserInfo = metadata; + uploadFetcher.useBackgroundSession = YES; + uploadFetcher.currentOffset = currentOffset; + uploadFetcher.delegateCallbackQueue = uploadFetcher.callbackQueue; + uploadFetcher.allowedInsecureSchemes = @[ @"http" ]; // Allowed on restored upload fetcher. + return uploadFetcher; +} + ++ (instancetype)uploadFetcherWithRequest:(NSURLRequest *)request + fetcherService:(GTMSessionFetcherService *)fetcherService { + // Internal utility method for instantiating fetchers + GTMSessionUploadFetcher *fetcher; + if ([fetcherService isKindOfClass:[GTMSessionFetcherService class]]) { + fetcher = [fetcherService fetcherWithRequest:request + fetcherClass:self]; + } else { + fetcher = [self fetcherWithRequest:request]; + } + fetcher.useBackgroundSession = YES; + return fetcher; +} + ++ (NSPointerArray *)uploadFetcherPointerArrayForBackgroundSessions { + static NSPointerArray *gUploadFetcherPointerArrayForBackgroundSessions = nil; + + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + gUploadFetcherPointerArrayForBackgroundSessions = [NSPointerArray weakObjectsPointerArray]; + }); + return gUploadFetcherPointerArrayForBackgroundSessions; +} + ++ (instancetype)uploadFetcherForSessionIdentifier:(NSString *)sessionIdentifier { + GTMSESSION_ASSERT_DEBUG(sessionIdentifier != nil, @"Invalid session identifier"); + NSArray *uploadFetchersForBackgroundSessions = [self uploadFetchersForBackgroundSessions]; + for (GTMSessionUploadFetcher *uploadFetcher in uploadFetchersForBackgroundSessions) { + if ([uploadFetcher.chunkFetcher.sessionIdentifier isEqual:sessionIdentifier]) { + return uploadFetcher; + } + } + return nil; +} + ++ (NSArray *)uploadFetchersForBackgroundSessions { + // Collect the background session upload fetchers that are still in memory. + NSPointerArray *uploadFetcherPointerArray = [self uploadFetcherPointerArrayForBackgroundSessions]; + [uploadFetcherPointerArray compact]; + NSMutableSet *restoredSessionIdentifiers = [[NSMutableSet alloc] init]; + NSMutableArray *uploadFetchers = [[NSMutableArray alloc] init]; + for (GTMSessionUploadFetcher *uploadFetcher in uploadFetcherPointerArray) { + NSString *sessionIdentifier = uploadFetcher.chunkFetcher.sessionIdentifier; + if (sessionIdentifier) { + [restoredSessionIdentifiers addObject:sessionIdentifier]; + [uploadFetchers addObject:uploadFetcher]; + } + } + + // The system may have other ongoing background upload sessions. Restore upload fetchers for those + // too. + NSArray *fetchers = [GTMSessionFetcher fetchersForBackgroundSessions]; + for (GTMSessionFetcher *fetcher in fetchers) { + NSString *sessionIdentifier = fetcher.sessionIdentifier; + if (!sessionIdentifier || [restoredSessionIdentifiers containsObject:sessionIdentifier]) { + continue; + } + NSDictionary *sessionIdentifierMetadata = [fetcher sessionIdentifierMetadata]; + if (sessionIdentifierMetadata == nil) { + continue; + } + if (![sessionIdentifierMetadata[kGTMSessionIdentifierIsUploadChunkFetcherMetadataKey] boolValue]) { + continue; + } + GTMSessionUploadFetcher *uploadFetcher = + [self uploadFetcherForSessionIdentifierMetadata:sessionIdentifierMetadata]; + if (uploadFetcher == nil) { + // Something went wrong with this upload fetcher, so kill the restored chunk fetcher. + [fetcher stopFetching]; + continue; + } + [uploadFetchers addObject:uploadFetcher]; + uploadFetcher->_chunkFetcher = fetcher; + uploadFetcher->_fetcherInFlight = fetcher; + [uploadFetcher attachSendProgressBlockToChunkFetcher:fetcher]; + fetcher.completionHandler = + [fetcher completionHandlerWithTarget:uploadFetcher + didFinishSelector:@selector(chunkFetcher:finishedWithData:error:)]; + + GTMSESSION_LOG_DEBUG(@"%@ restoring upload fetcher %@ for chunk fetcher %@", + [self class], uploadFetcher, fetcher); + } + return uploadFetchers; +} + +- (void)setUploadData:(NSData *)data { + BOOL changed = NO; + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (_uploadData != data) { + _uploadData = data; + changed = YES; + } + } + if (changed) { + [self setupRequestHeaders]; + } +} + +- (NSData *)uploadData { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _uploadData; + } +} + +- (void)setUploadFileHandle:(NSFileHandle *)fh { + BOOL changed = NO; + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (_uploadFileHandle != fh) { + _uploadFileHandle = fh; + changed = YES; + } + } + if (changed) { + [self setupRequestHeaders]; + } +} + +- (NSFileHandle *)uploadFileHandle { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _uploadFileHandle; + } +} + +- (void)setUploadFileURL:(NSURL *)uploadURL { + BOOL changed = NO; + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (_uploadFileURL != uploadURL) { + _uploadFileURL = uploadURL; + changed = YES; + } + } + if (changed) { + [self setupRequestHeaders]; + } +} + +- (NSURL *)uploadFileURL { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _uploadFileURL; + } +} + +- (void)setUploadFileLength:(int64_t)fullLength { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (_uploadFileLength == kGTMSessionUploadFetcherUnknownFileSize && + fullLength != kGTMSessionUploadFetcherUnknownFileSize) { + _uploadFileLength = fullLength; + } + } +} + +- (void)setUploadDataLength:(int64_t)fullLength + provider:(GTMSessionUploadFetcherDataProvider)block { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _uploadDataProvider = [block copy]; + _uploadFileLength = fullLength; + } + [self setupRequestHeaders]; +} + +- (GTMSessionUploadFetcherDataProvider)uploadDataProvider { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _uploadDataProvider; + } +} + + +- (void)setUploadMIMEType:(NSString *)uploadMIMEType { + GTMSESSION_ASSERT_DEBUG(0, @"TODO: disallow setUploadMIMEType by making declaration readonly"); + // (and uploadMIMEType, chunksize, currentOffset) + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _uploadMIMEType = uploadMIMEType; + } +} + +- (NSString *)uploadMIMEType { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _uploadMIMEType; + } +} + +- (void)setChunkSize:(int64_t)chunkSize { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _chunkSize = chunkSize; + } +} + +- (int64_t)chunkSize { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _chunkSize; + } +} + +- (void)setupRequestHeaders { + GTMSessionCheckNotSynchronized(self); + +#if DEBUG + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + int hasData = (_uploadData != nil) ? 1 : 0; + int hasFileHandle = (_uploadFileHandle != nil) ? 1 : 0; + int hasFileURL = (_uploadFileURL != nil) ? 1 : 0; + int hasUploadDataProvider = (_uploadDataProvider != nil) ? 1 : 0; + int numberOfSources = hasData + hasFileHandle + hasFileURL + hasUploadDataProvider; + #pragma unused(numberOfSources) + GTMSESSION_ASSERT_DEBUG(numberOfSources == 1, + @"Need just one upload source (%d)", numberOfSources); + } // @synchronized(self) +#endif + + // Add our custom headers to the initial request indicating the data + // type and total size to be delivered later in the chunk requests. + NSMutableURLRequest *mutableRequest = [self.request mutableCopy]; + + GTMSESSION_ASSERT_DEBUG((mutableRequest == nil) != (_uploadLocationURL == nil), + @"Request and location are mutually exclusive"); + if (!mutableRequest) return; + + [mutableRequest setValue:kGTMSessionXGoogUploadProtocolResumable + forHTTPHeaderField:kGTMSessionHeaderXGoogUploadProtocol]; + [mutableRequest setValue:@"start" + forHTTPHeaderField:kGTMSessionHeaderXGoogUploadCommand]; + [mutableRequest setValue:_uploadMIMEType + forHTTPHeaderField:kGTMSessionHeaderXGoogUploadContentType]; + [mutableRequest setValue:@([self fullUploadLength]).stringValue + forHTTPHeaderField:kGTMSessionHeaderXGoogUploadContentLength]; + + NSString *method = mutableRequest.HTTPMethod; + if (method == nil || [method caseInsensitiveCompare:@"GET"] == NSOrderedSame) { + [mutableRequest setHTTPMethod:@"POST"]; + } + + // Ensure the user agent header identifies this to the upload server as a + // GTMSessionUploadFetcher client. The /1 can be incremented in the unlikely circumstance + // we need to make a bug fix in the client that the server can recognize. + NSString *const kUserAgentStub = @"(GTMSUF/1)"; + NSString *userAgent = [mutableRequest valueForHTTPHeaderField:@"User-Agent"]; + if (userAgent == nil + || [userAgent rangeOfString:kUserAgentStub].location == NSNotFound) { + if (userAgent.length == 0) { + userAgent = GTMFetcherStandardUserAgentString(nil); + } + userAgent = [userAgent stringByAppendingFormat:@" %@", kUserAgentStub]; + [mutableRequest setValue:userAgent forHTTPHeaderField:@"User-Agent"]; + } + [self setRequest:mutableRequest]; +} + +- (void)setLocationURL:(NSURL * GTM_NULLABLE_TYPE)location + uploadMIMEType:(NSString *)uploadMIMEType + chunkSize:(int64_t)chunkSize { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + GTMSESSION_ASSERT_DEBUG(chunkSize > 0, @"chunk size is zero"); + + // When resuming an upload, set the known upload target URL. + _uploadLocationURL = location; + + _uploadMIMEType = uploadMIMEType; + _chunkSize = chunkSize; + + // Indicate that we've not yet determined the file handle's length + _uploadFileLength = kGTMSessionUploadFetcherUnknownFileSize; + + // Indicate that we've not yet determined the upload fetcher status + _recentChunkStatusCode = -1; + + // If this is restarting an upload begun by another fetcher, + // the location is specified but the request is nil + _isRestartedUpload = (location != nil); + } // @synchronized(self) +} + +- (int64_t)fullUploadLength { + int64_t result; + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (_uploadData) { + result = (int64_t)_uploadData.length; + } else { + if (_uploadFileLength == kGTMSessionUploadFetcherUnknownFileSize) { + if (_uploadFileHandle) { + // First time through, seek to end to determine file length + _uploadFileLength = (int64_t)[_uploadFileHandle seekToEndOfFile]; + } else if (_uploadDataProvider) { + // _uploadFileLength is set when the _uploadDataProvider is set. + GTMSESSION_ASSERT_DEBUG(_uploadFileLength >= 0, @"No uploadDataProvider length set"); + } else { + NSNumber *filesizeNum; + NSError *valueError; + if ([_uploadFileURL getResourceValue:&filesizeNum + forKey:NSURLFileSizeKey + error:&valueError]) { + _uploadFileLength = filesizeNum.longLongValue; + } else { + GTMSESSION_ASSERT_DEBUG(NO, @"Cannot get file size: %@\n %@", + valueError, _uploadFileURL.path); + _uploadFileLength = 0; + } + } + } + result = _uploadFileLength; + } + } // @synchronized(self) + return result; +} + +// Make a subdata of the upload data. +- (void)generateChunkSubdataWithOffset:(int64_t)offset + length:(int64_t)length + response:(GTMSessionUploadFetcherDataProviderResponse)response { + GTMSessionUploadFetcherDataProvider uploadDataProvider = self.uploadDataProvider; + if (uploadDataProvider) { + uploadDataProvider(offset, length, response); + return; + } + + NSData *uploadData = self.uploadData; + if (uploadData) { + // NSData provided. + NSData *resultData; + if (offset == 0 && length == (int64_t)uploadData.length) { + resultData = uploadData; + } else { + int64_t dataLength = (int64_t)uploadData.length; + // Ensure our range is valid. b/18007814 + if (offset + length > dataLength) { + NSString *errorMessage = [NSString stringWithFormat: + @"Range invalid for upload data. offset: %lld\tlength: %lld\tdataLength: %lld", + offset, length, dataLength]; + GTMSESSION_ASSERT_DEBUG(NO, @"%@", errorMessage); + response(nil, + kGTMSessionUploadFetcherUnknownFileSize, + [self uploadChunkUnavailableErrorWithDescription:errorMessage]); + return; + } + NSRange range = NSMakeRange((NSUInteger)offset, (NSUInteger)length); + + @try { + resultData = [uploadData subdataWithRange:range]; + } + @catch (NSException *exception) { + NSString *errorMessage = exception.description; + GTMSESSION_ASSERT_DEBUG(NO, @"%@", errorMessage); + response(nil, + kGTMSessionUploadFetcherUnknownFileSize, + [self uploadChunkUnavailableErrorWithDescription:errorMessage]); + return; + } + } + response(resultData, kGTMSessionUploadFetcherUnknownFileSize, nil); + return; + } + NSURL *uploadFileURL = self.uploadFileURL; + if (uploadFileURL) { + dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ + [self generateChunkSubdataFromFileURL:uploadFileURL + offset:offset + length:length + response:response]; + }); + return; + } + GTMSESSION_ASSERT_DEBUG(_uploadFileHandle, @"Unexpectedly missing upload data package"); + NSFileHandle *uploadFileHandle = self.uploadFileHandle; + dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ + [self generateChunkSubdataFromFileHandle:uploadFileHandle + offset:offset + length:length + response:response]; + }); +} + +- (void)generateChunkSubdataFromFileHandle:(NSFileHandle *)fileHandle + offset:(int64_t)offset + length:(int64_t)length + response:(GTMSessionUploadFetcherDataProviderResponse)response { + NSData *resultData; + NSError *error; + @try { + [fileHandle seekToFileOffset:(unsigned long long)offset]; + resultData = [fileHandle readDataOfLength:(NSUInteger)length]; + } + @catch (NSException *exception) { + GTMSESSION_ASSERT_DEBUG(NO, @"uploadFileHandle failed to read, %@", exception); + error = [self uploadChunkUnavailableErrorWithDescription:exception.description]; + } + // The response always re-dispatches to the main thread, so we skip doing that here. + response(resultData, kGTMSessionUploadFetcherUnknownFileSize, error); +} + +- (void)generateChunkSubdataFromFileURL:(NSURL *)fileURL + offset:(int64_t)offset + length:(int64_t)length + response:(GTMSessionUploadFetcherDataProviderResponse)response { + GTMSessionCheckNotSynchronized(self); + + NSData *resultData; + NSError *error; + int64_t fullUploadLength = [self fullUploadLength]; + NSData *mappedData = + [NSData dataWithContentsOfURL:fileURL + options:NSDataReadingMappedAlways + NSDataReadingUncached + error:&error]; + if (!mappedData) { + // We could not create an NSData by memory-mapping the file. +#if TARGET_IPHONE_SIMULATOR + // NSTemporaryDirectory() can differ in the simulator between app restarts, + // yet the contents for the new path remains unchanged, so try the latest temp path. + if ([error.domain isEqual:NSCocoaErrorDomain] && (error.code == NSFileReadNoSuchFileError)) { + NSString *filename = [fileURL lastPathComponent]; + NSString *filePath = [NSTemporaryDirectory() stringByAppendingPathComponent:filename]; + NSURL *newFileURL = [NSURL fileURLWithPath:filePath]; + if (![newFileURL isEqual:fileURL]) { + [self generateChunkSubdataFromFileURL:newFileURL + offset:offset + length:length + response:response]; + return; + } + } +#endif + + // If the file is just too large to create an NSData for, or if for some other reason we can't + // map it, create an NSFileHandle instead to read a subset into an NSData. +#if DEBUG + NSNumber *fileSizeNum; + BOOL hasFileSize = [fileURL getResourceValue:&fileSizeNum forKey:NSURLFileSizeKey error:NULL]; + GTMSESSION_LOG_DEBUG(@"Note: uploadFileURL is falling back to creating upload chunks by reading" + @" an NSFileHandle since uploadFileURL failed to map the upload file," + @" file size %@, %@", + hasFileSize ? fileSizeNum : @"unknown", error); +#endif + + NSFileHandle *fileHandle = [NSFileHandle fileHandleForReadingFromURL:fileURL + error:&error]; + if (fileHandle != nil) { + [self generateChunkSubdataFromFileHandle:fileHandle + offset:offset + length:length + response:response]; + return; + } + GTMSESSION_ASSERT_DEBUG(NO, @"uploadFileURL failed to read, %@", error); + // Fall through with the error. + } else { + // Successfully created an NSData by memory-mapping the file. + if ((NSUInteger)(offset + length) > mappedData.length) { + NSString *errorMessage = [NSString stringWithFormat: + @"Range invalid for upload data. offset: %lld\tlength: %lld\tdataLength: %lld\texpected UploadLength: %lld", + offset, length, (long long)mappedData.length, fullUploadLength]; + GTMSESSION_ASSERT_DEBUG(NO, @"%@", errorMessage); + response(nil, + kGTMSessionUploadFetcherUnknownFileSize, + [self uploadChunkUnavailableErrorWithDescription:errorMessage]); + return; + } + if (offset > 0 || length < fullUploadLength) { + NSRange range = NSMakeRange((NSUInteger)offset, (NSUInteger)length); + resultData = [mappedData subdataWithRange:range]; + } else { + resultData = mappedData; + } + } + // The response always re-dispatches to the main thread, so we skip re-dispatching here. + response(resultData, kGTMSessionUploadFetcherUnknownFileSize, error); +} + +- (NSError *)uploadChunkUnavailableErrorWithDescription:(NSString *)description { + // The description in the userInfo is intended as a clue to programmers, not + // for client code to examine or rely on. + NSDictionary *userInfo = @{ @"description" : description }; + return [NSError errorWithDomain:kGTMSessionFetcherErrorDomain + code:GTMSessionFetcherErrorUploadChunkUnavailable + userInfo:userInfo]; +} + +- (NSError *)prematureFailureErrorWithUserInfo:(NSDictionary *)userInfo { + // An error for if we get an unexpected status from the upload server or + // otherwise cannot continue. This is an issue beyond the upload protocol; + // there's no way the client can do anything useful except give up. + NSError *error = [NSError errorWithDomain:kGTMSessionFetcherStatusDomain + code:501 // Not implemented + userInfo:userInfo]; + return error; +} + ++ (GTMSessionUploadFetcherStatus)uploadStatusFromResponseHeaders:(NSDictionary *)responseHeaders { + NSString *statusString = [responseHeaders objectForKey:kGTMSessionHeaderXGoogUploadStatus]; + if ([statusString isEqual:@"active"]) { + return kStatusActive; + } + if ([statusString isEqual:@"final"]) { + return kStatusFinal; + } + if ([statusString isEqual:@"cancelled"]) { + return kStatusCancelled; + } + return kStatusUnknown; +} + +#pragma mark Method overrides affecting the initial fetch only + +- (void)setCompletionHandler:(GTMSessionFetcherCompletionHandler)handler { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _delegateCompletionHandler = handler; + } +} + +- (void)setDelegateCallbackQueue:(dispatch_queue_t GTM_NULLABLE_TYPE)queue { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _delegateCallbackQueue = queue; + } +} + +- (dispatch_queue_t GTM_NULLABLE_TYPE)delegateCallbackQueue { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _delegateCallbackQueue; + } +} + +- (BOOL)isRestartedUpload { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _isRestartedUpload; + } +} + +- (GTMSessionFetcher * GTM_NULLABLE_TYPE)chunkFetcher { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _chunkFetcher; + } +} + +- (void)setChunkFetcher:(GTMSessionFetcher * GTM_NULLABLE_TYPE)fetcher { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _chunkFetcher = fetcher; + } +} + +- (void)setFetcherInFlight:(GTMSessionFetcher * GTM_NULLABLE_TYPE)fetcher { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _fetcherInFlight = fetcher; + } +} + +- (GTMSessionFetcher * GTM_NULLABLE_TYPE)fetcherInFlight { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _fetcherInFlight; + } +} + +- (void)setCancellationHandler:(GTMSessionUploadFetcherCancellationHandler GTM_NULLABLE_TYPE) + cancellationHandler { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _cancellationHandler = cancellationHandler; + } +} + +- (GTMSessionUploadFetcherCancellationHandler GTM_NULLABLE_TYPE)cancellationHandler { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _cancellationHandler; + } +} + +- (void)beginFetchForRetry { + GTMSessionCheckNotSynchronized(self); + + // Override the superclass to reset the initial body length and fetcher-in-flight, + // then call the superclass implementation. + [self setInitialBodyLength:[self bodyLength]]; + + GTMSESSION_ASSERT_DEBUG(self.fetcherInFlight == nil, @"unexpected fetcher in flight: %@", + self.fetcherInFlight); + self.fetcherInFlight = self; + [super beginFetchForRetry]; +} + +- (void)beginFetchWithCompletionHandler:(GTMSessionFetcherCompletionHandler)handler { + GTMSessionCheckNotSynchronized(self); + + [self setInitialBodyLength:[self bodyLength]]; + + // We'll hold onto the superclass's callback queue so we can invoke the handler + // even after the superclass has released the queue and its callback handler, as + // happens during auth failure. + [self setDelegateCallbackQueue:self.callbackQueue]; + self.completionHandler = handler; + + if ([self isRestartedUpload]) { + // When restarting an upload, we know the destination location for chunk fetches, + // but we need to query to find the initial offset. + if (![self isPaused]) { + [self sendQueryForUploadOffsetWithFetcherProperties:self.properties]; + } + return; + } + // We don't want to call into the client's completion block immediately + // after the finish of the initial connection (the delegate is called only + // when uploading finishes), so we substitute our own completion block to be + // called when the initial connection finishes + GTMSESSION_ASSERT_DEBUG(self.fetcherInFlight == nil, @"unexpected fetcher in flight: %@", + self.fetcherInFlight); + + self.fetcherInFlight = self; + [super beginFetchWithCompletionHandler:^(NSData *data, NSError *error) { + self.fetcherInFlight = nil; + // callback + + BOOL hasTestBlock = (self.testBlock != nil); + if (![self isRestartedUpload] && !hasTestBlock) { + if (error == nil) { + [self beginChunkFetches]; + } else { + if ([self retryTimer] == nil) { + [self invokeFinalCallbackWithData:nil + error:error + shouldInvalidateLocation:YES]; + } + } + } else { + // If there was no initial request, then this fetch is resuming some + // other uploadFetcher's initial request, and the superclass's connection + // is never used, so at this point we call the user's actual completion + // block. + if (!hasTestBlock) { + [self invokeFinalCallbackWithData:data + error:error + shouldInvalidateLocation:YES]; + } else { + // There was a test block, so we won't do chunk fetches, but we simulate obtaining + // the data to be uploaded from the upload data provider block or the file handle, + // and then call back. + [self generateChunkSubdataWithOffset:0 + length:[self fullUploadLength] + response:^(NSData *generateData, int64_t fullUploadLength, NSError *generateError) { + [self invokeFinalCallbackWithData:data + error:error + shouldInvalidateLocation:YES]; + }]; + } + } + }]; +} + +- (void)beginChunkFetches { + GTMSessionCheckNotSynchronized(self); + +#if DEBUG + // The initial response of the resumable upload protocol should have an + // empty body + // + // This assert typically happens because the upload create/edit link URL was + // not supplied with the request, and the server is thus expecting a non- + // resumable request/response. + if (self.downloadedData.length > 0) { + NSData *downloadedData = self.downloadedData; + NSString *str = [[NSString alloc] initWithData:downloadedData + encoding:NSUTF8StringEncoding]; + #pragma unused(str) + GTMSESSION_ASSERT_DEBUG(NO, @"unexpected response data (uploading to the wrong URL?)\n%@", str); + } +#endif + + // We need to get the upload URL from the location header to continue. + NSDictionary *responseHeaders = [self responseHeaders]; + + [self retrieveUploadChunkGranularityFromResponseHeaders:responseHeaders]; + + GTMSessionUploadFetcherStatus uploadStatus = + [[self class] uploadStatusFromResponseHeaders:responseHeaders]; + GTMSESSION_ASSERT_DEBUG(uploadStatus != kStatusUnknown, + @"beginChunkFetches has unexpected upload status for headers %@", responseHeaders); + + BOOL isPrematureStop = (uploadStatus == kStatusFinal) || (uploadStatus == kStatusCancelled); + + NSString *uploadLocationURLStr = [responseHeaders objectForKey:kGTMSessionHeaderXGoogUploadURL]; + BOOL hasUploadLocation = (uploadLocationURLStr.length > 0); + + if (isPrematureStop || !hasUploadLocation) { + GTMSESSION_ASSERT_DEBUG(NO, @"Premature failure: upload-status:\"%@\" location:%@", + [responseHeaders objectForKey:kGTMSessionHeaderXGoogUploadStatus], uploadLocationURLStr); + // We cannot continue since we do not know the location to use + // as our upload destination. + NSDictionary *userInfo = nil; + NSData *downloadedData = self.downloadedData; + if (downloadedData.length > 0) { + userInfo = @{ kGTMSessionFetcherStatusDataKey : downloadedData }; + } + NSError *failureError = [self prematureFailureErrorWithUserInfo:userInfo]; + [self invokeFinalCallbackWithData:nil + error:failureError + shouldInvalidateLocation:YES]; + return; + } + + self.uploadLocationURL = [NSURL URLWithString:uploadLocationURLStr]; + + NSNotificationCenter *nc = [NSNotificationCenter defaultCenter]; + [nc postNotificationName:kGTMSessionFetcherUploadLocationObtainedNotification + object:self]; + + // we've now sent all of the initial post body data, so we need to include + // its size in future progress indicator callbacks + [self setInitialBodySent:[self initialBodyLength]]; + + // just in case the user paused us during the initial fetch... + if (![self isPaused]) { + [self uploadNextChunkWithOffset:0]; + } +} + +- (void)URLSession:(NSURLSession *)session + task:(NSURLSessionTask *)task + didSendBodyData:(int64_t)bytesSent + totalBytesSent:(int64_t)totalBytesSent + totalBytesExpectedToSend:(int64_t)totalBytesExpectedToSend { + // Overrides the superclass. + [self invokeDelegateWithDidSendBytes:bytesSent + totalBytesSent:totalBytesSent + totalBytesExpectedToSend:totalBytesExpectedToSend + [self fullUploadLength]]; +} + +- (BOOL)shouldReleaseCallbacksUponCompletion { + // Overrides the superclass. + + // We don't want the superclass to release the delegate and callback + // blocks once the initial fetch has finished + // + // This is invoked for only successful completion of the connection; + // an error always will invoke and release the callbacks + return NO; +} + +- (void)invokeFinalCallbackWithData:(NSData *)data + error:(NSError *)error + shouldInvalidateLocation:(BOOL)shouldInvalidateLocation { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (shouldInvalidateLocation) { + _uploadLocationURL = nil; + } + + dispatch_queue_t queue = _delegateCallbackQueue; + GTMSessionFetcherCompletionHandler handler = _delegateCompletionHandler; + if (queue && handler) { + [self invokeOnCallbackQueue:queue + afterUserStopped:NO + block:^{ + handler(data, error); + }]; + } + } // @synchronized(self) + + [self releaseUploadAndBaseCallbacks:!self.userStoppedFetching]; +} + +- (void)releaseUploadAndBaseCallbacks:(BOOL)shouldReleaseCancellation { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _delegateCallbackQueue = nil; + _delegateCompletionHandler = nil; + _uploadDataProvider = nil; + if (shouldReleaseCancellation) { + _cancellationHandler = nil; + } + } + + // Release the base class's callbacks, too, if needed. + [self releaseCallbacks]; +} + +- (void)stopFetchReleasingCallbacks:(BOOL)shouldReleaseCallbacks { + GTMSessionCheckNotSynchronized(self); + + // Clear _fetcherInFlight when stopped. Moved from stopFetching, since that's a public method, + // where this method does the work. Fixes issue clearing value when retryBlock included. + GTMSessionFetcher *fetcherInFlight = self.fetcherInFlight; + if (fetcherInFlight == self) { + self.fetcherInFlight = nil; + } + + [super stopFetchReleasingCallbacks:shouldReleaseCallbacks]; + + if (shouldReleaseCallbacks) { + [self releaseUploadAndBaseCallbacks:NO]; + } +} + +#pragma mark Chunk fetching methods + +- (void)uploadNextChunkWithOffset:(int64_t)offset { + // use the properties in each chunk fetcher + NSDictionary *props = [self properties]; + + [self uploadNextChunkWithOffset:offset + fetcherProperties:props]; +} + +- (void)sendQueryForUploadOffsetWithFetcherProperties:(NSDictionary *)props { + GTMSessionFetcher *queryFetcher = [self uploadFetcherWithProperties:props + isQueryFetch:YES]; + queryFetcher.bodyData = [NSData data]; + + NSString *originalComment = self.comment; + [queryFetcher setCommentWithFormat:@"%@ (query offset)", + originalComment ? originalComment : @"upload"]; + + [queryFetcher setRequestValue:@"query" forHTTPHeaderField:kGTMSessionHeaderXGoogUploadCommand]; + + self.fetcherInFlight = queryFetcher; + [queryFetcher beginFetchWithDelegate:self + didFinishSelector:@selector(queryFetcher:finishedWithData:error:)]; +} + +- (void)queryFetcher:(GTMSessionFetcher *)queryFetcher + finishedWithData:(NSData *)data + error:(NSError *)error { + self.fetcherInFlight = nil; + + NSDictionary *responseHeaders = [queryFetcher responseHeaders]; + NSString *sizeReceivedHeader; + + GTMSessionUploadFetcherStatus uploadStatus = + [[self class] uploadStatusFromResponseHeaders:responseHeaders]; + GTMSESSION_ASSERT_DEBUG(uploadStatus != kStatusUnknown || error != nil, + @"query fetcher completion has unexpected upload status for headers %@", responseHeaders); + + if (error == nil) { + sizeReceivedHeader = [responseHeaders objectForKey:kGTMSessionHeaderXGoogUploadSizeReceived]; + + if (uploadStatus == kStatusCancelled || + (uploadStatus == kStatusActive && sizeReceivedHeader == nil)) { + NSDictionary *userInfo = nil; + if (data.length > 0) { + userInfo = @{ kGTMSessionFetcherStatusDataKey : data }; + } + error = [self prematureFailureErrorWithUserInfo:userInfo]; + } + } + + if (error == nil) { + int64_t offset = [sizeReceivedHeader longLongValue]; + int64_t fullUploadLength = [self fullUploadLength]; + if (uploadStatus == kStatusFinal || + (offset >= fullUploadLength && + fullUploadLength != kGTMSessionUploadFetcherUnknownFileSize)) { + // Handle we're done + [self chunkFetcher:queryFetcher finishedWithData:data error:nil]; + } else { + [self retrieveUploadChunkGranularityFromResponseHeaders:responseHeaders]; + [self uploadNextChunkWithOffset:offset]; + } + } else { + // Handle query error + [self chunkFetcher:queryFetcher finishedWithData:data error:error]; + } +} + +- (void)sendCancelUploadWithFetcherProperties:(NSDictionary *)props { + @synchronized(self) { + _isCancelInFlight = YES; + } + GTMSessionFetcher *cancelFetcher = [self uploadFetcherWithProperties:props + isQueryFetch:YES]; + cancelFetcher.bodyData = [NSData data]; + + NSString *originalComment = self.comment; + [cancelFetcher setCommentWithFormat:@"%@ (cancel)", + originalComment ? originalComment : @"upload"]; + + [cancelFetcher setRequestValue:@"cancel" forHTTPHeaderField:kGTMSessionHeaderXGoogUploadCommand]; + + self.fetcherInFlight = cancelFetcher; + [cancelFetcher beginFetchWithCompletionHandler:^(NSData *data, NSError *error) { + self.fetcherInFlight = nil; + if (![self triggerCancellationHandlerForFetch:cancelFetcher data:data error:error]) { + if (error) { + GTMSESSION_LOG_DEBUG(@"cancelFetcher %@", error); + } + } + @synchronized(self) { + self->_isCancelInFlight = NO; + } + }]; +} + +- (void)uploadNextChunkWithOffset:(int64_t)offset + fetcherProperties:(NSDictionary *)props { + GTMSessionCheckNotSynchronized(self); + + // Example chunk headers: + // X-Goog-Upload-Command: upload, finalize + // X-Goog-Upload-Offset: 0 + // Content-Length: 2000000 + // Content-Type: image/jpeg + // + // {bytes 0-1999999} + + // The chunk upload URL requires no authentication header. + GTMSessionFetcher *chunkFetcher = [self uploadFetcherWithProperties:props + isQueryFetch:NO]; + [self attachSendProgressBlockToChunkFetcher:chunkFetcher]; + int64_t chunkSize = [self updateChunkFetcher:chunkFetcher + forChunkAtOffset:offset]; + BOOL isUploadingFileURL = (self.uploadFileURL != nil); + int64_t fullUploadLength = [self fullUploadLength]; + + // The chunk size may have changed, so determine again if we're uploading the full file. + BOOL isUploadingFullFile = (offset == 0 && + fullUploadLength != kGTMSessionUploadFetcherUnknownFileSize && + chunkSize >= fullUploadLength); + if (isUploadingFullFile && isUploadingFileURL) { + // The data is the full upload file URL. + chunkFetcher.bodyFileURL = self.uploadFileURL; + [self beginChunkFetcher:chunkFetcher + offset:offset]; + } else { + // Make an NSData for the subset for this upload chunk. + self.subdataGenerating = YES; + [self generateChunkSubdataWithOffset:offset + length:chunkSize + response:^(NSData *chunkData, int64_t uploadFileLength, NSError *chunkError) { + // The subdata methods may leave us on a background thread. + dispatch_async(dispatch_get_main_queue(), ^{ + self.subdataGenerating = NO; + + // dont allow the updating of fileLength for uploads not using a data provider as they + // should know the file length before the upload starts. + if (self->_uploadDataProvider != nil && uploadFileLength > 0) { + [self setUploadFileLength:uploadFileLength]; + // Update the command and content-length headers if this is the last chunk to be sent. + if (offset + chunkSize >= uploadFileLength) { + int64_t updatedChunkSize = [self updateChunkFetcher:chunkFetcher + forChunkAtOffset:offset]; + if (updatedChunkSize == 0) { + // Calling beginChunkFetcher early when there is no more data to send allows us to + // properly handle nil chunkData below without having to account for the case where + // we are just finalizing the file. + chunkFetcher.bodyData = [[NSData alloc] init]; + [self beginChunkFetcher:chunkFetcher + offset:offset]; + return; + } + } + } + + if (chunkData == nil) { + NSError *responseError = chunkError; + if (!responseError) { + responseError = [self uploadChunkUnavailableErrorWithDescription:@"chunkData is nil"]; + } + [self invokeFinalCallbackWithData:nil + error:responseError + shouldInvalidateLocation:YES]; + return; + } + + BOOL didWriteFile = NO; + if (isUploadingFileURL) { + // Make a temporary file with the data subset. + NSString *tempName = + [NSString stringWithFormat:@"GTMUpload_temp_%@", [[NSUUID UUID] UUIDString]]; + NSString *tempPath = [NSTemporaryDirectory() stringByAppendingPathComponent:tempName]; + NSError *writeError; + didWriteFile = [chunkData writeToFile:tempPath + options:NSDataWritingAtomic + error:&writeError]; + if (didWriteFile) { + chunkFetcher.bodyFileURL = [NSURL fileURLWithPath:tempPath]; + } else { + GTMSESSION_LOG_DEBUG(@"writeToFile failed: %@\n%@", writeError, tempPath); + } + } + if (!didWriteFile) { + chunkFetcher.bodyData = [chunkData copy]; + } + [self beginChunkFetcher:chunkFetcher + offset:offset]; + }); + }]; + } +} + +- (void)beginChunkFetcher:(GTMSessionFetcher *)chunkFetcher + offset:(int64_t)offset { + + // Track the current offset for progress reporting + self.currentOffset = offset; + + // Hang on to the fetcher in case we need to cancel it. We set these before beginning the + // chunk fetch so the observers notified of chunk fetches can inspect the upload fetcher to + // match to the chunk. + self.chunkFetcher = chunkFetcher; + self.fetcherInFlight = chunkFetcher; + + // Update the last chunk request, including any request headers. + self.lastChunkRequest = chunkFetcher.request; + + [chunkFetcher beginFetchWithDelegate:self + didFinishSelector:@selector(chunkFetcher:finishedWithData:error:)]; +} + +- (void)attachSendProgressBlockToChunkFetcher:(GTMSessionFetcher *)chunkFetcher { + chunkFetcher.sendProgressBlock = ^(int64_t bytesSent, int64_t totalBytesSent, + int64_t totalBytesExpectedToSend) { + // The total bytes expected include the initial body and the full chunked + // data, independent of how big this fetcher's chunk is. + int64_t initialBodySent = [self bodyLength]; // TODO(grobbins) use [self initialBodySent] + int64_t totalSent = initialBodySent + self.currentOffset + totalBytesSent; + int64_t totalExpected = initialBodySent + [self fullUploadLength]; + + [self invokeDelegateWithDidSendBytes:bytesSent + totalBytesSent:totalSent + totalBytesExpectedToSend:totalExpected]; + }; +} + +- (NSDictionary *)uploadSessionIdentifierMetadata { + NSMutableDictionary *metadata = [NSMutableDictionary dictionary]; + metadata[kGTMSessionIdentifierIsUploadChunkFetcherMetadataKey] = @YES; + GTMSESSION_ASSERT_DEBUG(self.uploadFileURL, + @"Invalid upload fetcher to create session identifier for metadata"); + metadata[kGTMSessionIdentifierUploadFileURLMetadataKey] = [self.uploadFileURL absoluteString]; + metadata[kGTMSessionIdentifierUploadFileLengthMetadataKey] = @([self fullUploadLength]); + + if (self.uploadLocationURL) { + metadata[kGTMSessionIdentifierUploadLocationURLMetadataKey] = + [self.uploadLocationURL absoluteString]; + } + if (self.uploadMIMEType) { + metadata[kGTMSessionIdentifierUploadMIMETypeMetadataKey] = self.uploadMIMEType; + } + metadata[kGTMSessionIdentifierUploadChunkSizeMetadataKey] = @(self.chunkSize); + metadata[kGTMSessionIdentifierUploadCurrentOffsetMetadataKey] = @(self.currentOffset); + return metadata; +} + +- (GTMSessionFetcher *)uploadFetcherWithProperties:(NSDictionary *)properties + isQueryFetch:(BOOL)isQueryFetch { + GTMSessionCheckNotSynchronized(self); + + // Common code to make a request for a query command or for a chunk upload. + NSURL *uploadLocationURL = self.uploadLocationURL; + NSMutableURLRequest *chunkRequest = [NSMutableURLRequest requestWithURL:uploadLocationURL]; + [chunkRequest setHTTPMethod:@"PUT"]; + + // copy the user-agent from the original connection + // n.b. that self.request is nil for upload fetchers created with an existing upload location + // URL. + NSURLRequest *origRequest = self.request; + NSString *userAgent = [origRequest valueForHTTPHeaderField:@"User-Agent"]; + if (userAgent.length > 0) { + [chunkRequest setValue:userAgent forHTTPHeaderField:@"User-Agent"]; + } + + [chunkRequest setValue:kGTMSessionXGoogUploadProtocolResumable + forHTTPHeaderField:kGTMSessionHeaderXGoogUploadProtocol]; + + // To avoid timeouts when debugging, copy the timeout of the initial fetcher. + NSTimeInterval origTimeout = [origRequest timeoutInterval]; + [chunkRequest setTimeoutInterval:origTimeout]; + + // + // Make a new chunk fetcher. + // + GTMSessionFetcher *chunkFetcher = [GTMSessionFetcher fetcherWithRequest:chunkRequest]; + chunkFetcher.callbackQueue = self.callbackQueue; + chunkFetcher.sessionUserInfo = self.sessionUserInfo; + chunkFetcher.configurationBlock = self.configurationBlock; + chunkFetcher.allowedInsecureSchemes = self.allowedInsecureSchemes; + chunkFetcher.allowLocalhostRequest = self.allowLocalhostRequest; + chunkFetcher.allowInvalidServerCertificates = self.allowInvalidServerCertificates; + chunkFetcher.useUploadTask = !isQueryFetch; + + if (self.uploadFileURL && !isQueryFetch && self.useBackgroundSession) { + [chunkFetcher createSessionIdentifierWithMetadata:[self uploadSessionIdentifierMetadata]]; + } + + // Give the chunk fetcher the same properties as the previous chunk fetcher + chunkFetcher.properties = [properties mutableCopy]; + [chunkFetcher setProperty:[NSValue valueWithNonretainedObject:self] + forKey:kGTMSessionUploadFetcherChunkParentKey]; + + // copy other fetcher settings to the new fetcher + chunkFetcher.retryEnabled = self.retryEnabled; + chunkFetcher.maxRetryInterval = self.maxRetryInterval; + + if ([self isRetryEnabled]) { + // We interpose our own retry method both so we can change the request to ask the server to + // tell us where to resume the chunk. + chunkFetcher.retryBlock = ^(BOOL suggestedWillRetry, NSError *chunkError, + GTMSessionFetcherRetryResponse response) { + void (^finish)(BOOL) = ^(BOOL shouldRetry){ + // We'll retry by sending an offset query. + if (shouldRetry) { + self.shouldInitiateOffsetQuery = !isQueryFetch; + + // We don't know what our actual offset is anymore, but the server will tell us. + self.currentOffset = 0; + } + // We don't actually want to retry this specific fetcher. + response(NO); + }; + + GTMSessionFetcherRetryBlock retryBlock = self.retryBlock; + if (retryBlock) { + // Ask the client, then call the finish block above. + retryBlock(suggestedWillRetry, chunkError, finish); + } else { + finish(suggestedWillRetry); + } + }; + } + + return chunkFetcher; +} + +- (void)chunkFetcher:(GTMSessionFetcher *)chunkFetcher + finishedWithData:(NSData *)data + error:(NSError *)error { + BOOL hasDestroyedOldChunkFetcher = NO; + self.fetcherInFlight = nil; + + NSDictionary *responseHeaders = [chunkFetcher responseHeaders]; + GTMSessionUploadFetcherStatus uploadStatus = + [[self class] uploadStatusFromResponseHeaders:responseHeaders]; + GTMSESSION_ASSERT_DEBUG(uploadStatus != kStatusUnknown + || error != nil + || self.wasCreatedFromBackgroundSession, + @"chunk fetcher completion has kStatusUnknown upload status for headers %@ fetcher %@", + responseHeaders, self); + BOOL isUploadStatusStopped = (uploadStatus == kStatusFinal || uploadStatus == kStatusCancelled); + + // Check if the fetcher was actually querying. If it failed, do not retry, + // as it would enter an infinite retry loop. + NSString *uploadCommand = + chunkFetcher.request.allHTTPHeaderFields[kGTMSessionHeaderXGoogUploadCommand]; + BOOL isQueryFetch = [uploadCommand isEqual:@"query"]; + + // TODO + // Maybe here we can check to see if the request had x goog content length set. (the file length one). + int64_t previousContentLength = + [[chunkFetcher.request valueForHTTPHeaderField:@"Content-Length"] longLongValue]; + // The Content-Length header may not be present if the chunk fetcher was recreated from + // a background session. + BOOL hasKnownChunkSize = (previousContentLength > 0); + BOOL needsQuery = (!hasKnownChunkSize && !isUploadStatusStopped); + + if (error || (needsQuery && !isQueryFetch)) { + NSInteger status = error.code; + + // Status 4xx indicates a bad offset in the Google upload protocol. However, do not retry status + // 404 per spec, nor if the upload size appears to have been zero (since the server will just + // keep asking us to retry.) + if (self.shouldInitiateOffsetQuery || + (needsQuery && !isQueryFetch) || + ([error.domain isEqual:kGTMSessionFetcherStatusDomain] && + status >= 400 && status <= 499 && + status != 404 && + uploadStatus == kStatusActive && + previousContentLength > 0)) { + self.shouldInitiateOffsetQuery = NO; + [self destroyChunkFetcher]; + hasDestroyedOldChunkFetcher = YES; + [self sendQueryForUploadOffsetWithFetcherProperties:chunkFetcher.properties]; + } else { + // Some unexpected status has occurred; handle it as we would a regular + // object fetcher failure. + [self invokeFinalCallbackWithData:data + error:error + shouldInvalidateLocation:NO]; + } + } else { + // The chunk has uploaded successfully. + int64_t newOffset = self.currentOffset + previousContentLength; +#if DEBUG + // Verify that if we think all of the uploading data has been sent, the server responded with + // the "final" upload status. + BOOL hasUploadAllData = (newOffset == [self fullUploadLength]); + BOOL isFinalStatus = (uploadStatus == kStatusFinal); + #pragma unused(hasUploadAllData,isFinalStatus) + GTMSESSION_ASSERT_DEBUG(hasUploadAllData == isFinalStatus || !hasKnownChunkSize, + @"uploadStatus:%@ newOffset:%lld (%lld + %lld) fullUploadLength:%lld" + @" chunkFetcher:%@ requestHeaders:%@ responseHeaders:%@", + [responseHeaders objectForKey:kGTMSessionHeaderXGoogUploadStatus], + newOffset, self.currentOffset, previousContentLength, + [self fullUploadLength], + chunkFetcher, chunkFetcher.request.allHTTPHeaderFields, + responseHeaders); +#endif + if (isUploadStatusStopped || (_currentOffset > _uploadFileLength && _uploadFileLength > 0)) { + // This was the last chunk. + if (error == nil && uploadStatus == kStatusCancelled) { + // Report cancelled status as an error. + NSDictionary *userInfo = nil; + if (data.length > 0) { + userInfo = @{ kGTMSessionFetcherStatusDataKey : data }; + } + data = nil; + error = [self prematureFailureErrorWithUserInfo:userInfo]; + } else { + // The upload is in final status. + // + // Take the chunk fetcher's data as the superclass data. + self.downloadedData = data; + self.statusCode = chunkFetcher.statusCode; + } + + // we're done + [self invokeFinalCallbackWithData:data + error:error + shouldInvalidateLocation:YES]; + } else { + // Start the next chunk. + self.currentOffset = newOffset; + + // We want to destroy this chunk fetcher before creating the next one, but + // we want to pass on its properties + NSDictionary *props = [chunkFetcher properties]; + + // We no longer need to be able to cancel this chunkFetcher. Destroy it + // before we create a new chunk fetcher. + [self destroyChunkFetcher]; + hasDestroyedOldChunkFetcher = YES; + + [self uploadNextChunkWithOffset:newOffset + fetcherProperties:props]; + } + } + if (!hasDestroyedOldChunkFetcher) { + [self destroyChunkFetcher]; + } +} + +- (void)destroyChunkFetcher { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (_fetcherInFlight == _chunkFetcher) { + _fetcherInFlight = nil; + } + + [_chunkFetcher stopFetching]; + + NSURL *chunkFileURL = _chunkFetcher.bodyFileURL; + BOOL wasTemporaryUploadFile = ![chunkFileURL isEqual:_uploadFileURL]; + if (wasTemporaryUploadFile) { + NSError *error; + [[NSFileManager defaultManager] removeItemAtURL:chunkFileURL + error:&error]; + if (error) { + GTMSESSION_LOG_DEBUG(@"removingItemAtURL failed: %@\n%@", error, chunkFileURL); + } + } + + _recentChunkReponseHeaders = _chunkFetcher.responseHeaders; + + // To avoid retain cycles, remove all properties except the parent identifier. + _chunkFetcher.properties = + @{ kGTMSessionUploadFetcherChunkParentKey : [NSValue valueWithNonretainedObject:self] }; + + _chunkFetcher.retryBlock = nil; + _chunkFetcher.sendProgressBlock = nil; + _chunkFetcher = nil; + } // @synchronized(self) +} + +// This method calculates the proper values to pass to the client's send progress block. +// +// The actual total bytes sent include the initial body sent, plus the +// offset into the batched data prior to the current chunk fetcher + +- (void)invokeDelegateWithDidSendBytes:(int64_t)bytesSent + totalBytesSent:(int64_t)totalBytesSent + totalBytesExpectedToSend:(int64_t)totalBytesExpected { + GTMSessionCheckNotSynchronized(self); + + // Ensure the chunk fetcher survives the callback in case the user pauses the upload process. + __block GTMSessionFetcher *holdFetcher = self.chunkFetcher; + + [self invokeOnCallbackQueue:self.delegateCallbackQueue + afterUserStopped:NO + block:^{ + GTMSessionFetcherSendProgressBlock sendProgressBlock = self.sendProgressBlock; + if (sendProgressBlock) { + sendProgressBlock(bytesSent, totalBytesSent, totalBytesExpected); + } + holdFetcher = nil; + }]; +} + +- (void)retrieveUploadChunkGranularityFromResponseHeaders:(NSDictionary *)responseHeaders { + GTMSessionCheckNotSynchronized(self); + + // Standard granularity for Google uploads is 256K. + NSString *chunkGranularityHeader = + [responseHeaders objectForKey:kGTMSessionHeaderXGoogUploadChunkGranularity]; + self.uploadGranularity = chunkGranularityHeader.longLongValue; +} + +#pragma mark - + +- (BOOL)isPaused { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _isPaused; + } // @synchronized(self) +} + +- (void)pauseFetching { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _isPaused = YES; + } // @synchronized(self) + + // Pausing just means stopping the current chunk from uploading; + // when we resume, we will send a query request to the server to + // figure out what bytes to resume sending. + // + // We won't try to cancel the initial data upload, but rather will check + // for being paused in beginChunkFetches. + [self destroyChunkFetcher]; +} + +- (void)resumeFetching { + BOOL wasPaused; + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + wasPaused = _isPaused; + _isPaused = NO; + } // @synchronized(self) + + if (wasPaused) { + [self sendQueryForUploadOffsetWithFetcherProperties:self.properties]; + } +} + +- (void)stopFetching { + // Overrides the superclass + [self destroyChunkFetcher]; + + // If we think the server is waiting for more data, then tell it there won't be more. + if (self.uploadLocationURL) { + [self sendCancelUploadWithFetcherProperties:[self properties]]; + self.uploadLocationURL = nil; + } else { + [self invokeOnCallbackQueue:self.callbackQueue + afterUserStopped:YES + block:^{ + // Repeated calls to stopFetching may cause this path to be reached despite having sent a real + // cancel request, check here to ensure that the cancellation handler invocation which fires + // will definitely be for the real request sent previously. + @synchronized(self) { + if (self->_isCancelInFlight) { + return; + } + } + [self triggerCancellationHandlerForFetch:nil data:nil error:nil]; + }]; + } + + [super stopFetching]; +} + +// Fires the cancellation handler, returning whether there was a handler to be fired. +- (BOOL)triggerCancellationHandlerForFetch:(GTMSessionFetcher *)fetcher + data:(NSData *)data + error:(NSError *)error { + GTMSessionUploadFetcherCancellationHandler handler = self.cancellationHandler; + if (handler) { + handler(fetcher, data, error); + self.cancellationHandler = nil; + return YES; + } + return NO; +} + +#pragma mark - + +- (int64_t)updateChunkFetcher:(GTMSessionFetcher *)chunkFetcher + forChunkAtOffset:(int64_t)offset { + BOOL isUploadingFileURL = (self.uploadFileURL != nil); + + // Upload another chunk, meeting server-required granularity. + int64_t chunkSize = self.chunkSize; + + int64_t fullUploadLength = [self fullUploadLength]; + BOOL isFileLengthKnown = fullUploadLength >= 0; + + BOOL isUploadingFullFile = (offset == 0 && isFileLengthKnown && chunkSize >= fullUploadLength); + if (!isUploadingFileURL || !isUploadingFullFile) { + // We're not uploading the entire file and given the file URL. Since we'll be + // allocating a subdata block for a chunk, we need to bound it to something that + // won't blow the process's memory. + if (chunkSize > kGTMSessionUploadFetcherMaximumDemandBufferSize) { + chunkSize = kGTMSessionUploadFetcherMaximumDemandBufferSize; + } + } + + int64_t granularity = self.uploadGranularity; + if (granularity > 0) { + if (chunkSize < granularity) { + chunkSize = granularity; + } else { + chunkSize = chunkSize - (chunkSize % granularity); + } + } + + GTMSESSION_ASSERT_DEBUG(offset < fullUploadLength || fullUploadLength == 0, + @"offset %lld exceeds data length %lld", offset, fullUploadLength); + + if (granularity > 0) { + offset = offset - (offset % granularity); + } + + // If the chunk size is bigger than the remaining data, or else + // it's close enough in size to the remaining data that we'd rather + // avoid having a whole extra http fetch for the leftover bit, then make + // this chunk size exactly match the remaining data size + NSString *command; + int64_t thisChunkSize = chunkSize; + + BOOL isChunkTooBig = (thisChunkSize >= (fullUploadLength - offset)); + BOOL isChunkAlmostBigEnough = (fullUploadLength - offset - 2500 < thisChunkSize); + BOOL isFinalChunk = (isChunkTooBig || isChunkAlmostBigEnough) && isFileLengthKnown; + if (isFinalChunk) { + thisChunkSize = fullUploadLength - offset; + if (thisChunkSize > 0) { + command = @"upload, finalize"; + } else { + command = @"finalize"; + } + } else { + command = @"upload"; + } + NSString *lengthStr = @(thisChunkSize).stringValue; + NSString *offsetStr = @(offset).stringValue; + + [chunkFetcher setRequestValue:command forHTTPHeaderField:kGTMSessionHeaderXGoogUploadCommand]; + [chunkFetcher setRequestValue:lengthStr forHTTPHeaderField:@"Content-Length"]; + [chunkFetcher setRequestValue:offsetStr forHTTPHeaderField:kGTMSessionHeaderXGoogUploadOffset]; + if (_uploadFileLength != kGTMSessionUploadFetcherUnknownFileSize) { + [chunkFetcher setRequestValue:@([self fullUploadLength]).stringValue + forHTTPHeaderField:kGTMSessionHeaderXGoogUploadContentLength]; + } + + // Append the range of bytes in this chunk to the fetcher comment. + NSString *baseComment = self.comment; + [chunkFetcher setCommentWithFormat:@"%@ (%lld-%lld)", + baseComment ? baseComment : @"upload", offset, MAX(0, offset + thisChunkSize - 1)]; + + return thisChunkSize; +} + +// Public properties. +@synthesize currentOffset = _currentOffset, + delegateCompletionHandler = _delegateCompletionHandler, + chunkFetcher = _chunkFetcher, + lastChunkRequest = _lastChunkRequest, + subdataGenerating = _subdataGenerating, + shouldInitiateOffsetQuery = _shouldInitiateOffsetQuery, + uploadGranularity = _uploadGranularity; + +// Internal properties. +@dynamic fetcherInFlight; +@dynamic activeFetcher; +@dynamic statusCode; +@dynamic delegateCallbackQueue; + ++ (void)removePointer:(void *)pointer fromPointerArray:(NSPointerArray *)pointerArray { + for (NSUInteger index = 0, count = pointerArray.count; index < count; ++index) { + void *pointerAtIndex = [pointerArray pointerAtIndex:index]; + if (pointerAtIndex == pointer) { + [pointerArray removePointerAtIndex:index]; + return; + } + } +} + +- (BOOL)useBackgroundSession { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _useBackgroundSessionOnChunkFetchers; + } // @synchronized(self +} + +- (void)setUseBackgroundSession:(BOOL)useBackgroundSession { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (_useBackgroundSessionOnChunkFetchers != useBackgroundSession) { + _useBackgroundSessionOnChunkFetchers = useBackgroundSession; + NSPointerArray *uploadFetcherPointerArrayForBackgroundSessions = + [[self class] uploadFetcherPointerArrayForBackgroundSessions]; + if (_useBackgroundSessionOnChunkFetchers) { + [uploadFetcherPointerArrayForBackgroundSessions addPointer:(__bridge void *)self]; + } else { + [[self class] removePointer:(__bridge void *)self + fromPointerArray:uploadFetcherPointerArrayForBackgroundSessions]; + } + } + } // @synchronized(self +} + +- (BOOL)canFetchWithBackgroundSession { + // The initial upload fetcher is always a foreground session; the + // useBackgroundSession property will apply only to chunk fetchers, + // not to queries. + return NO; +} + +- (NSDictionary *)responseHeaders { + GTMSessionCheckNotSynchronized(self); + // Overrides the superclass + + // If asked for the fetcher's response, use the most recent chunk fetcher's response, + // since the original request's response lacks useful information like the actual + // Content-Type. + NSDictionary *dict = self.chunkFetcher.responseHeaders; + if (dict) { + return dict; + } + + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + if (_recentChunkReponseHeaders) { + return _recentChunkReponseHeaders; + } + } // @synchronized(self + + // No chunk fetcher yet completed, so return whatever we have from the initial fetch. + return [super responseHeaders]; +} + +- (NSInteger)statusCodeUnsynchronized { + GTMSessionCheckSynchronized(self); + + if (_recentChunkStatusCode != -1) { + // Overrides the superclass to indicate status appropriate to the initial + // or latest chunk fetch + return _recentChunkStatusCode; + } else { + return [super statusCodeUnsynchronized]; + } +} + + +- (void)setStatusCode:(NSInteger)val { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _recentChunkStatusCode = val; + } +} + +- (int64_t)initialBodyLength { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _initialBodyLength; + } +} + +- (void)setInitialBodyLength:(int64_t)length { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _initialBodyLength = length; + } +} + +- (int64_t)initialBodySent { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _initialBodySent; + } +} + +- (void)setInitialBodySent:(int64_t)length { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _initialBodySent = length; + } +} + +- (NSURL *)uploadLocationURL { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + return _uploadLocationURL; + } +} + +- (void)setUploadLocationURL:(NSURL *)locationURL { + @synchronized(self) { + GTMSessionMonitorSynchronized(self); + + _uploadLocationURL = locationURL; + } +} + +- (GTMSessionFetcher *)activeFetcher { + GTMSessionFetcher *result = self.fetcherInFlight; + if (result) return result; + + return self; +} + +- (BOOL)isFetching { + // If there is an active chunk fetcher, then the upload fetcher is considered + // to still be fetching. + if (self.fetcherInFlight != nil) return YES; + + return [super isFetching]; +} + +- (BOOL)waitForCompletionWithTimeout:(NSTimeInterval)timeoutInSeconds { + NSDate *timeoutDate = [NSDate dateWithTimeIntervalSinceNow:timeoutInSeconds]; + + while (self.fetcherInFlight || self.subdataGenerating) { + if ([timeoutDate timeIntervalSinceNow] < 0) return NO; + + if (self.subdataGenerating) { + // Allow time for subdata generation. + NSDate *stopDate = [NSDate dateWithTimeIntervalSinceNow:0.001]; + [[NSRunLoop currentRunLoop] runUntilDate:stopDate]; + } else { + // Wait for any chunk or query fetchers that still have pending callbacks or + // notifications. + BOOL timedOut; + + if (self.fetcherInFlight == self) { + timedOut = ![super waitForCompletionWithTimeout:timeoutInSeconds]; + } else { + timedOut = ![self.fetcherInFlight waitForCompletionWithTimeout:timeoutInSeconds]; + } + if (timedOut) return NO; + } + } + return YES; +} + +@end + +@implementation GTMSessionFetcher (GTMSessionUploadFetcherMethods) + +- (GTMSessionUploadFetcher *)parentUploadFetcher { + NSValue *property = [self propertyForKey:kGTMSessionUploadFetcherChunkParentKey]; + if (!property) return nil; + + GTMSessionUploadFetcher *uploadFetcher = property.nonretainedObjectValue; + + GTMSESSION_ASSERT_DEBUG([uploadFetcher isKindOfClass:[GTMSessionUploadFetcher class]], + @"Unexpected parent upload fetcher class: %@", [uploadFetcher class]); + return uploadFetcher; +} + +@end diff --git a/Til to Code/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.framework/GoogleAppMeasurement b/Til to Code/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.framework/GoogleAppMeasurement new file mode 100755 index 0000000000000000000000000000000000000000..fddcac6685e776de66254936507a630758a46015 GIT binary patch literal 22793632 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

    `)>At+cIu-a0 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 z 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

    b+^m_WH)Qx}sIotB%pN&;}20 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⪚hA)=P#uSwL83R|y2C9YPNCZAbxZe?{L~ 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 z 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�RIlSZT}qLG~U)4 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�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ⅇUZBdE(|byfh;j`7Vsc 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%0DMwB;hga>8qnza|C);+=(cFn*JL#BT9P$LC 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 z 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�c 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 gI6^xYKuIiRM^>UNU8k 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⪙Td*Xk9`4 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

    %QXF2Q_X86Bb-+1*6z7-p?Es{DHU?q*VfJNW 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μ8OdG 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

    x`y2(z!J`7j^}{Iw<@A(+ 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%0AZNvAZfJx|P8G6N%%-<7a4 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ۨ_d};fd8!AoNN&|GL!sEkQld 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

    nl4^O6lB=O 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

    B*gdVITXSv{QRy6gah$i%S*>tQo4qx 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%0D`7^`;h6kDfFvM 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 YJ7CVs7_x@m?EX7YOzZ--!p{ zXX5c3oO{c2Sebg;Qg4|WMo7JS5qi>#IA&B0>v+6;gP{#sQcf&nP|>ra&@tFmTokd- z_qqJOn$zX`B`@%sGm%zl3AcAPGS3+V%BfHg`y~D4@)Q)U+8-heLC$I`S;4Q6q?EL$ z+BEVE@BLtQZM-AjnT>br%f-3K zK_{}(6#$}n_eZi9B_H&+u+Y7xMfl&b{Tc zS)K>tnz+?<*(UVX1Gtge6VN(--F^&il6QojbC&&}Lwg@&`;)yyl-z1Wf5>W-J? zf>K@Vm=sfmCL9xr=Af;_seV}GRBI)ZsMX$uR{O4CaH?5HUYMwaN1|LrK z9O6_5J`(H0sdm_UUGZ|NOYbqG?e6AOhwII)M@DCi6IkcDLD9$HDill23W6@$aA z<_f%D$#}mys+?p;yhW*GG-}>&jzFWnt;zWQxF`ChX{du4YxIk+FV1vWlE7f*!C*EU zU!PgQ_hAfX2W^(&NR+&#BL;IL*NgQboqvB+#eN zQWvM0u6=;$)2?Bcg!cWKD^5Nje3)T-dC?_ZuCt@OIE6b_?V?7c-8v>VN4vrSquWaz z*?$c;o!g?WlQA8TT(UX7Gl{>wV@s!e<%JRb92fd4l2(**NGGmxtGo6D% zfmz~wor|bikh$`&&PjHiRs}i?)nhaUxu|(h7~f6Tq5-Hc2Y(u!h6|mBJ_3z|MtOwH zY@^~*eRa~t7#3~J(fnm`~kD;?;Ro>$kqwp)cg z2~geZD-rxG*w`s6Q0|C!dshz}hJcg*^^BplS|kvs9T`@=mN_o+C@ zUX&L<2JZ2=pM--K-3fmO++%QGjDx~?@oV8u?fnBdsQvM}Z-sjT?ziJ0dE`!Vek;1a ze1rR2a0mB~YsUeOV;BCrm2*{e|Lz9&P~;8eDRJoJKKQkzu=5Ix02H6!|-KRu0ibT z!53fp0|u@IchR)9z$O;VUJA@GuieZ$VYXtu;N}?E+%v}pUj9VzW-pZJDPnq4} zx+LCgWU`A(c!S~W9-@4n-a`V#=SEhwKxOm^A;ed3U}Vah9B%Qfo2_zoMN~ll?^4=@ zDEDNui{;RR$SxGE=p&S=$Vvaln}F!b zP%3%fC-s!(Q<6P}uvpz#`aR8f`$qhx3Lrj`mGrG1d2a}(M17bqPd^R5Z^F&j9yaweyWr-_zkd~O(}DGM1BaXaeu$G_`lnlS@~KVD!chZ% z7Dq2D@;Ed)!XcW%qPlG;%C%Kc} z6rEk-`5?~d=Yn>M_tiL4xO;HMSR!Z@IQ+aAukmoZ69>sl!kNE_^Ls}z~%Sm1I-}@;Gpy(@4E7V+>3DF5&yK!YWk)Si5{{Q zfr#r*&v=loaVDPey>yKM0`Z0EnO^Sx1o4{cETw_msZKwKGhI`ipDnuM#1Yew+?U`Q zCw7p#7+<<%I%woazfCy2*9UyA|Lk)u1;C4O`dl~oT$_BZbw1ami-G^_x5nq%OZETZ zw!0^yN4xL!^6B!tPE2(`0DGNoZtT21LNj|SE7Ui)oIS$yXj6Om^nCP>^by`rU639! zMI+TW^fW%*myhZL^)WuTf}DR}6M{0w8%f{Jh7FExt@D6V4#bb_RcG?uKYUW``rT5` zK{Fylz!(FC6t5^Yty#OecttVxbuBcNEh$-?p;@|Q)Y7Gzr6ZO=`yn&4a75aO(VCHk z#ir4t3zv>Dbz7}Qzi@-z170t#7Viwl3w7~_^d1Ze(8C0d&NMFd9=QCc^d58wOX2Bv zHBlH}RcAdr-xTdJm96@plds<`TH;nX*G!UJtT*O-JhS|ZGG47jHsvWOitw;??Tsw@BMuP0l4 zLCyV2s2fb!YTJwmY?-12IXca$T`o6xuule~eIMI08jj0Va5i{;FFGo=+Nd+#GDTE@ z@ZqBSCZ{U99Xyx^gio+08vsP7kC8UC0mKuMG%@zoz?7%RAEHonpoM%3X zWWKX-g~x8fV>Lqd-9zdkHDi$RxPOHzxmPt~0EN20lgg0NJhNt|vRko4AqX0o_OAXl z3N-Fc`I^+4NuAJ9kX$9CYKK=2vs3NT+m6fAoE0b5{_%4K^fRQCM}oQmLMyfSBmTU+ z_!-@;XErsS{}My~#=u_TID6&mO)FQfD&tw#Z7M6~Zw$fAb zBIB4}vMaopE@$lnaXPB&5M zKjuR^+DIp$vojd9`maHUZ&Q5a4F0q&cm)9N;1y2dq<<_B=fTZ4{uo)_Ic_dgjC+xQZ;KT#n(4wVi@PAvo~7hx)7iY^7csR1xW10_jiXyJfVv)nWv?)eB-|k}X=|Iuwc4`knxV=t z?xH@XwRs#KWY>?e>tj%D+Vx{`ebANFV#`7rZ$O^jPP(=cFs_H2kt6zVB z``LiFl5E`nY(V_qG9d0!YG1OJ2sLVV&}LD+!*7kcRP!`7bEFVCN^RhFx)cfDkb|V2 z>3Lvnxu>4T-FcDroE?1X(F)@ZKJr9Gyt+Ohdrh8lXTVX}40W6-TRkH(LGlET#h)#_ z@Xh^4bv!OI`{A4xr$;8qLZi~`+YGY!HF8PNLA80iSLGooeyT-RJ)^^6UDkK?gN`iu zVFRbBGF9yr=B&S0y(vd}BGlrzi{jb>zk1uM?4Gq-}s5tTI@PA(?W7Xl< zr~mZPN9)ebxc*@C*J_W197Xi$2sbvl+^@ZZw!&5^vGzEjXD zfj(iYP57ctcgEZz|0=oMf=eC;d?yeiiHc22_f0j;FBia& z{qc&(T3o@+f_tcLoZn^hwGX~K`fL;@F~duV!)b3FoeBB4)Z&2rZ*-)$0Y3}ftF~OT zErBdzCJ6FB%{{KrvQ;!80O3-R_{*nOzN*RV|IAv4sr`#hZ|g3uuK&ZP zhnv4nZ{0cU#S@OO`Tozp`lm1d{$3E74?j>|TbUs`!5{rgG1i#o5~#asVnyW?c_72gPzS{NA59iVjLWWe3Xa^C+PWqB-AF;-h{sc=yM zg^RnPaN&2wsD{EtQTvEyi|I|3el@xM-Ary}u^G*6rXMskp8G@(L*ov_<5yTHC+<(L zKxqEoWAWcuV6N9gk2e#e^0wykk7JKP&mU85Ox)x9dE)!M4?W+vu&7SU%>JjDdNQVt z(DTJSL7!=Frq;v63wArbdJfbA$-@;XWIOs4aX2mV+_S2+aw(T<$$67}1r8?~AlSoI zfutFwAUWN($M4c6m4M;SY>$%(=M>fRpN20LY>x{>P5UwToR!9P098oZ-)J+QgLT_P z8Pl6cE-*@%-UMEC(#yCC{;(aSaV_zO={o`aOguPQID2i9Q~Gw-a%VZ%OU_N_!uYpF zNVOk#$CX;en5u{F#R>7OB3}1o^@Z8P{l0cMW5Iftz~LwiC5LO3<<=NuYpQksDN~as z&;rGQB9Jl-YOvz>gE5(V7hiNZ_MxB{X0~@}z=Ml|mB(RAT{oJ0QGQIjIYGfih8Oar zS3+?@{96yHavUq7>KyN;XMtR3FUR+9_A~K9>)l%}kIq}U6@$5Pk=x5F)?S*Tlm|YYR%jqKgSIGneuYF;A~|NZsqL;*y-q$rQ3Yid?JJVC ze+Y|}^$UzquQWDEh?hz0#^7}$U6YY6JJOXyq)F+DQ$|1HC(_Tv3w%E>C!6XDOV9WL zxT170-5EXErY7!tWRYLSDPHATrx@^HvQgo83e4V}urr*|T0XsgkCDt$BQ|!$0`sW@ z-s^>$=^9m8a-C6WL?8;*hDyau=5^Gi}#t%kTYck0ma=e#zr{ z_x<4<%*Asum{8YNxl`{;+3U|L+2Ppobd3#+?@Wb74U5c?(^1oM{H;-!R`YER(pu6+ za(7UD+e<87KF8eh>Xi1wrzFc|Bb%Ie2ELF4i!0S;Rm#Q(4(E=jJ>`yG zvf=6@W>5Jx%0F-}h;Q2lo7*VYC-`^MGp&b;E#TW~{myT12s{A3ehK*co0U18iELY^Ly)sPyjDPGqiQr!Wn<;U5XD~Myzs4oabxAyz!LZK7UiD<>-iTf zs_nfzcKSL*KjOyTk283R9&g!=L&HMvLJkgUV+=UxM`!R?I1f4Er^T7--XfeA<4oTY zyg$Ox?}&(@SP@r9~u+F8*%vJRd7#& z+fp19&MQA1?o`KWa3uJ+&x3m$?tg=W;_iL!8n_dG_aqJ~6R&$U+zIzS4&V6ifji~V zH#p=tym;aY5&nA|zWC#Cr{~hX^S;mhNR%@g?!Iz9gFAhsqaXD>EL}KXfjhOZ z8iIZ=x>LUUx+_p76i?y@Q}Hl4VuMZ`)njl&*$<&GH*!?d7*jPJWD9|@z<4J&(H4Bo z8w*UAn;;^6)tB1YMG3hX+|4^>l#H7JKGfBl5$wYoqZP8~vd?skX(FWI<^c5dkX!|S zMvA%Vkw4_e9!7i3|L@XCZ;D?}X6a4di*G?Py%{9(O?wzL{)uAprG4Hkkd@O9LRj7j zl*}7S>IZ``mJBPwA1V-r_#sc>iBw#ReX6?G)UtR^&s&TNkGDbi{ik`KcS5W$CzI~; zarp8%53+mw5t?6iL7cuNIDEOFv1l{$;N}~)1a9Zx=KBn4&*=9=c>Pr#qz*yW#7B_qEA9B1K2?Ms&*E~(us!|^-#QJlN{d^n+X zJVN3~N^r)?LC}YIBylI-#n6d(M));Q8@U$;aVQ;dZxr2^!)+@Ldj3?n6SoP!23jAR zfP>sq#53}1_hUZ(MR3O>|7mVzA;83`q-P**j8jPs`f0jG0XTV~vQT=cEGceuP4(ef z@tW!jrJLNTK2?kEIB|OMn(E$V9DuN2C@#F$clcaue6EN3;9GpI2l-rkS$03(LvV}f z?G$-^H?#^~2|v*!d11G1$i2R|?#jHrx9%hmIcRs6E#*oVmzJ(uF>J|-qS9q6i@mqS z(C98IDlQtfVpY*vY?I~7Pw&w-vS!HZeeM6r3i_SmAPi#XYgLa9lzUxP2{3t&$wpidN zo`npG|LK*&_!5_0$@wXMVjX0(BS2n>Paxc*eT0kf8;FydT`JgLYB%Zr8lI=bnI1-c zj(nBCIn|gsE)$NB(KSCobI8WHBq0EYAP*P+!ta)R#k;rK)}u@XzT$HE@`0W|VjN9I zY6Z4p6M7ad?Su|CXOD;;lgS1xb2l(1<8H4zQ67EVYrXE~t+uC8_ijaT6o`EuO2wVb zH4qVq{)-0A+zFW4sMlZjS={OQ%x9F9}DNDGT#Y(_#y9F$`2kZfJ<@K_RnkhF) z`{a8_o1#2UFC+0L`K?tF;M?7Tf03ut=90JRPFX?=6rb3eRG~t8st*PzC-PJcqp~YDGj;4nyr^sCtHa%!_j1 zRz&48)Lz_QKeQWv4W3nA)Io-dqUg*GIrPv=xJ9gH8$2_-2q#0Z1TSQATH$d0Pz(MV zJcGO_8ZC%vHd3+ zHPvl5ywl$ObT~Y~kTuJR_!?5tPmXurhw%FuNR_$)gg+Vrz=FS zSn^VdUNr9JKAj_a@npn0q+$|o3G@lR{!;9Cx;f8oj%#@qB0&t1D1_)OhImN~kw_u- ziXjqN2-4ajVaY;>4%`yRCWc6+n{{G{WESH0Vu(~B#BaqAv&9gp6e33qk;+1l1{gg< zLtZJOmxg(*61_46VTGbFxhO1yLi`=3HBk?=87u^;kCCuUA%sQ@afX55Od(zuLu9fL zL1Kt3@_JtM%3@xf=(9+eRuI-@mtGX6r4Z}I5Ly<(DTc@)uSKF)4)c0O^kUZOvqi65 z=0)pP^qf55Irrk0!uJ!OlSemdF+?54@j0W!=M+(h6fr~*3vss?qC^Nm^C|+##SkTQ^Y_0C% ztCV>q2wrCM&Ak5?0qo}e@4?-tUn2}9u}paMC%7e%TbM{V)6IRN{4yrLMGUc?yiB6k zdgk?<=ye}?O%}cGV_vm_m&JlJ`6dg#?4AIhuS6^?6}X~^lob+2&M<;2-G64cs=Lh zpr)V!#}OQV!Vw@x7##UHDsUXa@fHr!RSHC-KLN)=92GcdoCxI&HB;UQsaTHSNE%E2 zD}Q5IhsYs2GMM%WBE@-D;dP@83nmCyt(;O@3$O@6%(%37J-H$*N`xs1R?K9I{X+q} z*;1gw6NPSJvgp#inL~!?g3TOiw5$_I5M9{j5v=W3i!QNEN{TAfLP)cu6>kDXa|hxh z#*7Bjo<`A~v|dGbESPYfdeQx^Zg(1#dn}^+EVxr7SX=xQjK)&SssX|)122xHC6H)E|f%j4nY z*}`O&-APz)bMYL*roFqRo?OVs+f-~7rLcQJN+LA!rN;Y*1sj&IP>ux3X4eE~9J#tU9 zAY#kfPTF+k0mLZ3W|lWb-*vK7RyenO8&WadCr&>Uq0>SDp9n>CMM$rzbRue)h6$Nu zbFo<-_Egc#_B<*CM1Jbk$n0(mo9qdgRo$5I9vC*~6EM@eF_AqmY~Cke26ba%dtlha zPr%5!F+4DFU2*1V3IYu61M~i0yp=$o*aMX41A3(!l-vW9>;tOn2Br1@rTTzYb%Qhj zMR&!C%}J4oGrIv9J)~s#NJ;4iW%dAN`heu!pe%s8i-XN@g)DM^*_C>24?$WVL5I6R zIXwiiNw6U3@or3R4@|Bo2uWMhjmhirusolK&FlsldVmZ*ppjis zsKf^}ryEoXP~HwzPT|hJ+SNUnVpV-7j02PXg~2L{JN{zDHiN zg$LxNp&M{t4**+v0AP3*z-B?4*p*AK(w!`n70Db=KsTyFK=G`Kyh?Y35?}v0owR-f$u=!Ha==x%V1=rACDRTLR`tgE&8x9d)O!Clj?JSq{_ECnHaogD(y|1hDgSw& zuM*0WvY+c!+(}b#yD_L!67p}?E4hR_p`d-fe%3ekbZe{rtn+!{KcjDKvXsYGU!&Bu+}xOIafh$-=1f#F>{N*Tyj+S8 zu?h`^PrGHAOoFe&m~Q07R3|fYluQSdc*Z^U`hpH@S5mjGKGgE$?vz~>Cmty8zwOy-u6}X!0Ip=s zHl|ZLt208mU-eo=u#;jIcQ&QM_Mx@ylkn$tJCFHCKc|y;1m(_Ox+5&b0i5n10~0Ia z*2o>^5}s+BhGd24xv)N=s<-l9n<`$!{881*+G*sl+W3sCL=#<`ld!FX?gqSN%!u5g zkm1Bt=h(KDXy9m(02wq{W~t6CZmUZw8f;TY`MFUU_RwFQbXYU1=P8cMwJ#);#L34^ z^QLy_gIr!|pnnkOv=vQiJ6%2b(e%vH-mmt_mTlmYZtvGKxbS%8A4+mY{nz&X z>ee$&$^6ginSQ=9{qUve-o|+OosoZ8-`5toF&^J5lqkV|oLGiTEUnY}Ua7o`FEb-g2>aAGI2ZY7KX;%)4%iyHWF2Gy!vzBvm3xx4- zgJSF9l6FpMk#X#qP&|DmO##}I6Mj4n0KVegkcCue>AouGGs$c%Q;!fLa3*$1DTcjLzaa*vv@+GuF0CA9_)O|I++dMaW*X{ceq#-LWtHO$tunvy z2Di*_qT#Zva-yMHUOCm^kXKGKG|DTd8=UgWJVU$OZ>FJBUOCHP@e7aqwJJyI7av}c zlPmm}hlb|ls6%x*iR^C${>F!f>2l{m`jsCQ-{4(jqQ;x=kac{i2$gy9`||S(YK5L-gIr~yUmw2)<3=J z@N1VZA9>^1H*cc~^s_GV|7~65B9!4z=prwyf2vCt*^mhQ%(W}#6yLRMOqF z`Y_F~5o3m>riM*#eSM{&J4}u(d8UAgLC3!aVd{R*3ut4{i(wr?AxKVMV{7ZbR(Lb$~RQa zBedQP;!569+4fI@ZgRxkVWXj&yfCBLdG}i?{Q+`|%rWwJzpc_oTC5q(YQ=?&W=H8; zs%H2p=dO)$-W@wgQDRY)@QOnAfBQg1p~Ii9je#pIn$Bg~DUZ^)lJ=@Wlt_2@$x*6)gV6Cn zS9BWb;AX2!Pc$Bp4pBk*H;o&hP(VS|xWjfi@K0JnuQ^iK@ugS4r48p~CVOQsejN7m zY388&nFrm^mx2#*Us#P<5e!}>5#gu$tu~#P#cvsAxdfePm8@}K^Gm&s&`v;Y-03i- ztj|MH@*M>Os&W7%{IcN)|dnVHD zXeu9K;G({bm+v?0%qjI-JF48Yv6x8-y;xrEGKQ2|cMLQiDvez3>YL1AYaDl9+9Zv~ zK0P+9M6C&A-w#wt%CNJ6&>6A1Nw5tB8&9w}f`yPYf^`z?8o{(C zz#0fPn_$TV3nyuT6t_x>+fl#_1p5`i<`HZ#!TOLif|&_+gkVO3?I+lLf~69yFG=e~ zaU<9Tf|&{S3c(h&8yv2_cb}YlrHJGvca6^^HSy&7%6=q0+h{vaPBd zt7@_s%A=523N!!SHxVaD!)Nh;EK4zs#<7O-RX)jx*`g#sv^`~EA;tQ z%dM(XiE5=Q!faKoZcvq3RqG_G^{$AGrsmFGMd}rin6N2<&Pnpkx zv{4YJqc00`hy`h4L3G2|Q_5J7MixYNC--E=KG(P-GCv!1><`Mwc!I8RAk5_1ve1-0 zncMdz&@-NQ?S(nEJ^Kk9Fb&342&4JuGrk<3L$|jM;^DGhzQ!S+cz%*Pw|W zpqPxV!=V_RCWi@$q@Z2KFvufI4vA!zqBXSigf=i`TUfaE*e2}cS9-=0n7ZFTy!KeN zmGzbv)K8**a+6Fht`x`Wo*eh^4Df&MmUy$CIo!27wv+wVp?F>W`r86p|e$R+W zTyE}*Bs!49UZdgzg(UVy5}m0?;z4`wF*=sSi!Dh(P0rrW`6lsoBvFGTmd|oXg(S+6 z#LO8;;_!+|1ws<{HBOaf+A-zfB84Pc6zeI8ZzKhMVC?&Xki;TNVq0${F?iXwzATB> zR3tIDG%eUCiHj+T2dCP`Hu;SalDL49819E8>KC^7u_QJIBZ;y_yJbE}jHXgtafT0B z=jtUSF@j2Q29o%-Jz|59L`!p0&{b!I+c$~FkVFHLXj@z%RGCgcB(Y!~k~pzqa*2?{ zZ;-@XdljODtuw79-mNnmT`RD4ruC(%&AB^|Ok!|%isgG1EWUi$lNq~n zeqoV!$Crykd@U=^G=}|FBGkIJXvEi1jQ9?Xk2xU3cQ=Y8ZFbBcorDZYpw>yEcOOT5 zOP5Z|*3#Mit4ReXl0YNZh0ZyTrTXMRmlLVR5-yW%Uk5Al_}JXJQ!GG!u* zuXPpW@1GFgt1atm{aJj~h;Mb}h6;K2TjJ=C__|k|(f0Mkhq3%M#v#6(VsYa@+x&gU zHww=+?VoD9qv`lmpQ@0Mj;dfp{w;9&PZJ(_FFi7{0&k^l!Rh1o2|-H`bYc6H={`XR zQ_w;LUF6<8T?l$VhV0EcPx#979r?ji*kk#^Z|NmR2>Cf zT-#bL1kFUyl6vJ#pQnzcpi3>1wA;}~Vn5TXe!I|LPl6?khq%~7;nUT@IZ>riPdnaC z&$VWjrtCAuR;Rb8m%u`XN4mOwPKD0E04K>vMv1zNih91z^ntM_qES)=Ga3hX(b7sL*b)CJru*hrSLo4Kzz&0dMwoIO|e~)&nF_9A3 zI2j4Na{x~xb78Dw!@#Gvyn&5%Xn|HvgBy%&wtkRoPfw{UOxdxEMmD?CX$(|*IeA+` z%44fj>JOwmeL2OEF!-6H@xs7fZrp22mI@B{;JX|l%Nj$L zw*~)#jNgW=;=|0H!DVeB>)avtbcU?wLN;(=_o~D0Q-|D-79+Y*HVzdlJPUh<{uOPu zQ#Vnbp*@BnDlfzChkYcxheKZ@vc!ue zD?`^?=(3Uxo#+8xM<>VmFAY^oXx^}!W;ClcFq-7Ri#OC$fme;($LU;4g#B(9*6ypg$RGC zbuB?x{Q^ym9BRKor`HMFyn3`5(sX{w#0q0v@_KReR*UVdGTB=DomzS?O?2+SzPVCE z`y=uFzu7fB*+TC3IoxR|@P#y)GSrv%UOG-N&{WnIEs3J^wT1YkV}-nqr6ZTpktwD_ z8@AUPEp(*0NC!p(V_0pU>k4=g+r~Ztn?_@uTP>>A_K^6@fWSBuBJCaQc8``$qxfnE z!WNOSALe9S_@ScpTh7%71(LgEAku+}TtC{^GyDa2#kq$f!>RA-S35Bwd2DDg>$ z<6$8k%3j^+FisTGVM#?g+=*g33TpnoK7^&inaa{(9LUnqrpW$7>u^Ql*H0oAPj9Hx48P^?!CBMTEJ3-#&<>eXb`gV@`d z3qF>}OX>Z;QV8>F?-ybwt2IrpI@h!(rtXE=@42*G(%edXTt2P8T#C(x!F5S8$i{#={TC3_G4mm^G(N~P1$T9j8RZm z_2z~M&5bb*)xsGgRtt;rSN1^Gh{GCKS6grWjaa=mQVy*bbI6$R{I0=5^?pFep$#mD z8hvx9Y@m=s*%jS6qNedg@*-+4To2-b-Uj(nm_bSn@33^VZ&%ZV23hv7rB{>Cz75FkZjf823k`C8D{|=S zaWRJq3x|Cy=1{AjYmaf%p;F~Lm5bQ2k7E%nvIKv?w;!;YA7A^5vFSzm8jaX_Ifsj# zm%ESusaU%)=H3Lk)bCL=={ac9=e{P-Z|{XUY;A`ko<|2b#%@FZHP#hzpHNTRC{tD{ zOXO5f8-ji6sU=-(ER(uR!F5Wkr#n#!u7|`@=o~a)L^>-4-435j8QELtrAjDMOzA?V z=zq04@1&3^%Y8ECQl5}02TveVcAgM3<=2qdc(`-Hgvzq?MV(fy+8%Uc#}Je zgg04nrzECP$f56js*U|gi;`X-^<$_uosWvurseh0(^ah6@O`>pEN+$XV!7wy#j?y5 zUo36JAyW){v9!0d7mJ(6UaV`rFV=m%g%|5JpB$>4DZE(Kr;tNOPO==Tw$eDr`0Eb` zUrxsWNcNI#K>h=KJ~v-iG;mv=N%?)}7Z<&>?XfBOh1&cgZT?-_{9kDES7`IgwD}vf z`S)w{H)-=XYV+4>^H*x~OSSnW+WcZ|{t|6||M_`>8jIC7VCr-L zzrkZ^PZmo{dv-FBcUGsyz&8s6-{v@kZ3uyoPJc*KS0ac#8$t4Dp>Qu5(3=OCeh6S4 zeE?JU0?a|Mc7mA+_A0^dBx%C|i;o3N6AYM!hVl+QVCM<;7lN%PSQcQeIKV6+fO!aZ zjbPc7x&fhBc6<~t*))pVK#E%!VAWdyJDmeqDZw%Ut9qKG&7y~<(nI^wLu=@vltpI= zR!Xp!0n;y}hYq8MMgZ1Euug(~Pp}4h=-c$r<$&o%0_KbcZ2eZiT4=#^=>Wi9BG?7M zY%2ll7!8;@4zS3F0jrw=SR27UBiI#!-Ai$sKym92*j|ENAlTOgyGC(S2OtU6fHmX* zW=;Uiunn+A+G)Hn5wH ze-yB@1pAU;8wfT5FxxKylgtH-9}HOXV}R|P23WyBz+NC&0m1fB-0~@ILjZFV>?*;W z1p9#EwwmJh3SjYz0BalunE7$QS}+}t`gkDKz1OJjbw2LI)Gm+e-Xj#`1cF$L5yYL2 zAeJ2n(wc`L%ab5^bZKN_$m zf?Xuo6@uLln4%3Zn};4+2AFXyV7X5LwvWD5+%X8S-xBN`V6ra&i@yi3#&Ljo2zG6z z8_VeIXX1su(tFG2rPA8Bu>NhElU#K)`QfmXN7yR(lSjSNzw+cQyOL|pBtIlgc{Dp^ z`y(k&oJncOPB^aA2DL4bTapHl(B`0GHW%z8UyxpJ9lIA(FkwVM1KZe3dabO8x{EY? z->Jfs%B}d$q46RE<6<0NCZFk)vi8hcB&GRH=mZaG}^ooWsi zG-Ix|48Dlzvd+(&yos*B4KRsoz&DrpNHCr!LIV1zV_A-+`Uv?&Xd83X zu^C)kmk{fMOGlGWrzg+Vu4A*wmwhs^Ws-ISb9|Mud6R}a=uf%SC`=56Tv{Z*$Q<3h zkdK-`nKwc9h>zO>UsUz#thZcO_k~W5(8O12=2~m-D3G%=BN#Z5J$HVF8T|; z*Ndv4KI*|NL1TOp^h{_QbJUGR`AAY#+)Gj_AJj)0aupZ3{V~In`;9yv6WXSLhPb87+B_Ii4mVo!vrOk4-$?oGQ!l+ue&2geC8; z@vCk{SH(V*7WR?mlzO)0A4~{%D_xT9F_KCdtCu9XzL{&wWMx0mCzZbswU1$CKapzT zSQS*>DFhZkyToYXB)?&fwNwk8>}x5jh4sht+L}{sIer&|SpIzmKul2H(OlL z_Q&ezNJDfcpT0%OCs?bM3F+0!_=L*p$b{9nN!U`IoN%C8IUr$cb!NilYGq==w(49m zV!Z@yjPU)B`p{Z5Xt8M73~1t<)N%%*Z45{2HyF)eJ^+mXlmO5UK${;ryIyExBZ1VZ z;G$K)OG5(;2MsXJ&`RPjsDB@YUavWZ1O@}f)1bmZuy%rdPp}4p%?3=LLegkZ;S2=K zOoIw14Jww>XyGM-Eg;x1f<+LF#vYvnv(RYaB*8u*SQ$NZEMTsFfN?aau+yNTjbNV< z?C%7-k6;rhZiy5(8dUH!sHmq5nM1>XA=D#3P7lok%#;L}p*LWS1alLtj9^&=`zOa9 zhv=aTAT6H89vT{ZG}Sn;o=86v4;#Jse%f1pgsm;oH(IPM9!;jM#Jj@yurvkhiRd^U zE2NLBSZYMi^3(_Pm9+tDi#__0BGQl-zLyiPEJlIvd!2-WpuPxI=El8LD!ybZpOrLFgIE`Q?nhUzKkXD=KOA8&+N8~1q{kbi@ z%BQf)f+Wg)D-4g-zO~$71b_Gr6j5M9Qr>*y7 z%_;MxY<%CqdgW~igZvl4+BGjP!jfaMWFW0wY7K=n2lNSK?3-iUQb5y;bAHwfT>8?0 z?bhI2!`udgU*W_GK6RLKnBR;0i}mKdCHNSEJXuEHlfru2$K)N`u5#Uhr5tJ)9DTiO zs+O82S|TapawWAQ7r`)~x@Krh^(&Sd%#73uOEi7_|BO~Yb|+;XJv2pi&nZQ~@XtOd z@0eqZ3D3i4w@~zY7jz|&_;B!IFITE-gh7(0el4@iYd&2T?pN1->}jP$w`IkpEil8~ z709|=Z5{ZW1bKB=g!~D=*7|{V#aKRmj^E@y+cCMb3(J3Z)AHZ)K;^)sCDW@MBk!=W z8CvF+5f#(BzcbbzSKEhcF@qjykj#HX^TlTMX$9KR3+g8N+*mMAJ0gwhMUyo~nBT74 z8NV=aG77N-g?QFEzRGe&g8bZP4Q$<2u^g)?No-Qb_ov)GEWNzt1Xd;^AO5SbSiJrN zRmYs}Z_Qg?@~Tq{uZbd zwEQ@d-xlw9z=E2&!XZ7NiGLT%Iw5S)VtoJ>E!>AJp2GA)Mas(qCbHG5@@tv;CZCUi zH7d!k(s^)6rB9*4b{@EO@Et&OZ`Y@3^GmjCgA{}Lkf4eT zw0(PpWwEQYEM~NgR95HF%f&A`BdnUWZ|m`LT|1?=Z=#ng2Kl}{TKNm)d*=X_?~VlI zyIZkB-S#BqyX1Fmy;!~*l92CruNEuDBlq>lcU>#;Jw=LqUrG61${(bBf0E_9?jc(E zi#?*#Zc3*&*1IC*+S%icU%%sTI74%5SH(4 zgOTqR|9jN-BkYBI??MpEcg?UO)ls|-qfHpCXX2eMb&l0*_flT3M_$ig$6r8RyIx^= zEqQ_Jc-%#u_B)o>y9SIETF1ketj24n{Oo(&X;-wlGe0SBokO&RDVU(y{eQbgEqN~x z8RtR9UF@*hDdYYoWZWl|arZU)OZK0pjBA;BNyxZwS67)+BDaRhp26~+!S+>@G%Nyj z+)Z`-jLZ~*I{tknTfn^NhdO@E5h8tc2i0+RzxRbYKJDXLAreFnu_(S8AwN3|d5w=- zeeAFMXZNT1n~LT2*S)BzI@({JIEwPxJmC{@>G5=&QgP0k*A@5o$ZPFH|4{X7RLAlC zQ2TU$iC*9-a7tWk2>yB_RG-@ks;rA zQ5|>i6-QCW&#`=Wy+L(6r8ZmZ7(sP>;M{DM@2>OqG*A(A0hO3ccAyDuv<3&Eo+7X9 zM^Q<)lxqT!*Q?ermf_Ht@`&mgkP&r50x|ZH!W7X1X)=4^_^bT>{hG5#4 zC7s)i=2;*In!_))Z4YV*?r6i@LMhV*(THKZ90mAmW1uVa(D=fp1*39}XY~=P$EEK& zjOiFj;p?Y6_>ER|EpP?r@LPyD~l3P-zK!x4m~fpS*wT_)w{> z`~A3JfAvhUN)(35_M|i!<8y#5>MolvsXyNyUv=n^6zM{bcdtT;w+)2?c}d^3Qb$s zd6`T7jJHeK`*x2m<>IHj^h|%eZhP^`y7fsvYhS!>cT}_2ZLSip+e%ko>BeX1b#n~b zxQl)ETI%UB!WleLJ~tb$o4FTWw|TwFhoY!1s98~+RimgbN->0=LPga%>$*@>U$;g1 z4!=v6E0tB~h4={cLZA1QFGMe-9Kgmo+yK(Q3wR`41C=BtQ8LzIr?N#mo zN-$1&V)`OA>v-MN@m_X68=O!-u)WeccuIs!8)4%jYzv*QYa`0iG=7Uz(Th~7MXEWv z2w84~EzxF)8QHB5c(nlFtWI@M8q<5Wv(=n%16vP)~q+APQ^O z?``jhL-ZUp&2$TE*Jk+IY1%lIW|srWHw=+4+2RHjW;iI(RXY&YHiLWzVH()j+XWWO zMw&~SXs!4F`Ob&r_@U(^+SB(DmFIoRuGQrGDor65$?s|ea|K!VHLY4}2f%k1k*(jR zRNJF5`d9@Zj;UxZRtjHmf2 zEmJo>jEr(mK^(3QP=g%&0Og*NR-5Z+QQDA*M-L7|qWWUsb*eJ~a_YAsNIUtOX^}ZA ztQrERP~KKdg`ATVq{O>GZF`amuKH1;Ag>`g;{uTUrzv8y5Qok|lsVb7yu62k%q8FF zkrvlHN=wT$O3Qp&8U77|=x#?^oI?cIJ#j7hj>Qv8 zo^nFqZ%N=eN;R!QOK26^IgSKw8U%s*s}R_5AA(pWK%n855ZE+}>gUw};%ZNXoTgtQ zlAc*8j;mPK4*$NlLqb$1H7)W4U@=EhNky~I0Kgr|$QBK){6x_wB#oXbQfV@kdk}p^ z>TIA)m`H$h0+=ULOwKSsG_4D5Mf5aN5R=Ad@KE<`sy58GKLuCrLGlAkS-%HC+R4|Pf@mBLuXk;4cpL)NGa-6VdS$63)+p zuj4sLcHc$`zn>!3HVXokzd{iETnNmgg{+i5J5hFfAh2@|g4oHoZ7u|^B-XorCN)0K zK_Hh8U-hpcuzns1JQ#SCmQi}{7o~VQu-f?>OW>QmJPxI`&;MiZTi~0h()K5pCTU61 z6biI7Efa1Q<&s`$p=i>UQsrVmTtQG0Xt8Jur7c%clP2_HK?93e1vN!f*45pDe2TZ- zv_-63v?8k&P}>!;2x3*%Mc0-8^PZWs(^5e9^7;RMKSqah&U@Z@=ggTi=S-&0^S%%E z&kK8&eQn`byr@4zA2Ea41AM;kQAhbq?4)MHP8+2JZf^&Ep0=M*NuCFzP_`p|2;YMO z8w0_ka5w5=kPg94x{P{^0(qk(?u8XQ`FAHd#f$PmJ`ClF*oTU8I(V7`jY4-0sSh`4v}S~cD6uH z*Ef}Gf?BvWB$a`+coCCaH!rSek9$$s}Z zSmltbA*XAg`hcAWMESsOaum7S(4gUHC!T>Mx@Ji*Ar>(!f&H6^Fhcl$R1*D@EW{+b zFzg8PRV9RH5>$E!kiv9+b_^{+n}TSuC|Je0C3Ba8zm^c+rI?)9QJlAUalUZwiv%N? z%K|x3r9_Q6(7H^Vt)*R@VlicQ3iQarMR!Pyb$GYR&vh)o>GHwJ6Wv=$v@VRIB2-=& z>V@@zq>?pOQtqK))KAiOF{77g*RLG)i(TO*!hQ*(Kp0qJB$~^NEHS!`sN8duozAf( z1n%k_TwTk_iJfH{UZT-Uj<30_R&u-9O}lJ>u&%dKP?roc>6tHaH>GM94l}X#BI8V2 zE42BdBdxPngrO!q^ir+6NX)VXF=kmJi&@708I>d?$uv=6`%lL&TMwJk*kV+Ey_;+* z=0+#h)1e#){^IsF){niIV5P^#f*4r=xlW>2i^cQ@Ox#jETK{OfSp2fdkDfnI?dTpW zjNU2Iu)mIaYGY6Jb0EHT^ZE1C-j4e8GG#g1MaQqk{>o$L&r{nw>cv=ORKErL*(cAR zr|ambN1QXac>HS+&w1wjdAg>Kdhz%zxG?;$%f~-h>vdU3`yq`M<=^%Z+8|78CtQnI&KEI%)ntHrWYOz#rqv&1x0ln)on;bQqmTqN2394XoT zi0D8MgIJCi(*a^C7t_<|G_rd{OdG}YMKRqbrVop0DN<@rp;(?R zmNNqN7<^=}2q}hyE>kQI6H|?tp2Le8)gMMm`Y(#BbLj=^e!>IU93+P%Q0daCdyCa*(5ukASJu6h~+25)FYD+T+K#%+3$Mx7K zk9*q$!%OL$D6dDl3@PPl4csN>X^o`NC?uyf^dT`1b#AwKEUmXgkw?NdN&|U{Hyp@M zk;rl1I^;$BpKLpnu(C;J3_m>=ayaW{$nkUq(szY1wlO%g&c&`u&=mDCsoe2Q7vV z_ef%fqm7 z7zeBsZ6M1wynf{c@-$Cl?Zt-9!!{f{l~>?==n8f+tUsI+WlDW1f)F-3zN=yxVE%E) z0=k~ox?j9qEY4*!jCRDiRR4@Pms)tym&CK|h;xZB9#Z*Qd|0D6C|Tj_+{@TGln5j# z?-D9f5~{CzoJ;M`i*srCd2ueoe}0@x2ii(;F6$^ooJ$iPRtiaT$vBsNC}zMiG1TRT zK(xtlF`%S|;tni}=!kQ9nLvdq7N~F>p0mzCg%sx!!H3vgKY0j=5U5armkMg!KvW}8 z;j5^iAU;YV-q>@bhgums7-A}%g>z2|W5k}lla=BTEaudQVigTb?$lyfD%7$#XLF=M z3}1kj5a;X^g;y#xFqKrPinmk6L@MDIMoTN`P+@U?Q0f*m%o4$3m7StCTTo5c#ll)8 zu)>=bdRVwq`{{e^B<%NKe+c_->=ZBCfd0dnN64;lF=W>}kirViU)*}1CDh)Ulg@FUE11}Zr@5(idI&{joY zpj6#t5ZhIS?x)6Atu*w|uIDLySfFhe zYuK$9G;AX^p`&5pV#B;04GZs~Vc|VB%r0%%H}Ld}4(Ktg%LTnfaW1>`R=2P&f!1Y2 zP&AX0&xG3@2*pGpl-#hegMyfxYGkoTcp;XE#)9=v+~tr3;&M#sj3bi4Ue5m2I3mK) zTwn{>zeF4n;fTw`5y2aM3I3MRH3$bz@}IIVd{7qNOX*!9u>Gg(2Yw!PzW`|*kz=vK z`)T?wh$Au=v*Uj=j>sa+N>OKqA=)4FQXSmnH1m5~qv5?^pTpSZivFfXcf2(kK_eP# zjEyzAMpN`@6XlQCWBzK5X{*s4ki}dOhl4LKsTRX;P#lhI^|Czo5{-J9T^fy}xyE?H z5p#r#IbLJjYl=Q0Mx= zYs?olMrR#hhq?pSnEIONeKoq4*62fZ(QP%x<2AZ{uINKG(MSBzAJ;`6aYpYm84n17 zK=|lmb;c7txBp5U5#9Ut7~By=cfdW`XQeO?l=+Xvd+=O|BT}AxC635{d|WB7#1Y{_ z3!3z;me4D4L>kgIHW+K`2DB(*j$Mf(f^`-_up(FxEaP#L@dy@NF6LuX^f4D^cr4<^ zW>fT$8XXjl)#$J~*Vh@jdRkbqm>$4N-BY}%D{(~r193!@{++IwO5YKSncl*#;|`TQ zDMSsaE=|=WN4!naP^S`sLq4ah+J3}hkrk>~{1EzPbwT_P1;r0hW<0_VsrQ%+n}X%V zlQoY9yAn(*hH3PP)8T{Mx%KKb~{q2+57+9^v`gnTE*nt|? z)S3Z%7OwU!84&JyV8hcDy@#C-zE?JL6KB{sH@&oN$tB{3Y&dY7 z`+UQvG|o`zax%8Z=keV1hw9>FhTm%*Rlh9SJv?<|fr=O{y<_>aUtq?LKueuU=(V7d5F)*wrOM5g8PnY6KZu z!mC#_sm?gns}ReM)fSk0kMh?ht1I2>e1X9^4iuJKWzNLaQbY@I+xY&$4H#L0w z%4^3)y?V0YrK4M}b=McIOu25k>(P_nr+s;?yT!3`_jvUq@8u>(dagdYf6))if5gRn z9v(O2-)&d@(xO*R$2|NwJ|bL+pYeY?e#Ue>HK=|v&&*%)D!68sa za<{Mc5xEJHl=YhBvG}j^Sg?xB;(P6)a zLkNhq8C;6<$wu2m9$(f96C-7vF)vgjf19kmwI9vS4Z7>e!70VO@Hwqx;6mjM@;@^P z{(*AU10#%z51H=-`yT&HP}N4H@rnhZo|>1ro#aP{-1F=Jw{zy*g{pVJb_aj791a^J zoMDRj6b#}=i*DO^!-h6_qaJQy%-rnwnfXmB9LeeYBV1-%Yqiy)vM_&a^!I7_QvoB# z9hQff7tM%yQHz)tcEr4JvA??r{yhqz*EQyadpa+;e%h|MUgcEmuF>b3IDJdm*y^XL z1K!ebZ)8bgUa0=)h6!Bv{dCd$=d99s4XSOrBX)SvIA-U* z%dj75Dg9)+AqtKRh?2TD4DO#SM6+&kB~5C{Z#Ey0MKh-z)@ZOQGfLq!WN+_MyZ!l6 zn>s4lxZFa{pLjSnwC;2$O4TdK&CyCT_Ycz?M`7LK;S~td;ZuMoo*OI#>EJ_u;u_E#t80vJ8Pql&$QmXdQdGMM^{>hz+L3+3?^ucYRMGybv zW_6|!{>d%yPmXBC;^yFi{X)Kv@;9uH>G@K|mc_>g3G+i1S2ng{kobV0PKTCRl(orZkJKwn1hvvW<0RI?uqx>ag8kUK>Uzwc(69YTZV9LzY`udT~z6B3WL~F zwSt~1`zCvXO5X3**3y=@dnXQ7t-*cc)vwzR^q!&U%gq`wDML=aVl?C{hWQA$wHRi) zdYOGem`XfO%rparHE(c*mstC=%aKpp-SSfSp1ozdy3tOGTXD?bA;&M48*3d3lm5?$ z%X3HY)-ZQHW>~L#xp_hGv#t;>>G7e1T%F##$?@~{6`JR4YKiymu<-o1?7h%!!eARI z5co&XoRbuE)t+U0eB=h`c*{W1zjc3*#RV^=h3@sDf9tt$vLiblA zQlGwJe9hM`Z>qA69`bti+0v$7*`p&~x18PD)XN0YGCkMeEMxANfVtxV3|1af#!Pv^ z{wC$oP1cZIBNcryUt9x)nNWBU3MEiD2L*!)8Qu-a7AvX_@nAj{8CK6$jn%w3vLPCz zPDd!zTGUYEh?Tr8y}cmvHzq70e}JPZ)hx}fkr^X#mezhmPSj(DGL+lFqa=S;hiE!G zMN`!ZsKJN+(M_%xShI%`8bg??<{<5(%x2FK{Rv%34y9B=sHH3}FCI%go}X-5PbOkL z@va^ia5hNcprZU%OQ*9zRd}i0uPSQt!dpe5at8Ak7l9jrC`cGLEvlsk1M}LOOOyOT zT8eFOSQyn(H{@WvcA}*hxmB}uK8bZPgeF-g5#t8BZf)$WGs^&E9r6;Son zjNNZoEgK(jLA)_4u*QBZ8!)2(2rzJt=n#OOz%zVb{UBZoTWjIuV6X=cu`J=t7T%lS!zoq1!A%|xve(QI z=1N~M{`|OZ;^Bc;zf#0}TNUyUp%%dY>eMQyq zXCc40Ma}$K_y&$TH!^6)4o8Ne_aJf)_!j4t<56R8SFM?R@2F(MkTCKs$ZNSInrW*k z+|A5sh01~lHD}6n({HHW1BYqOWLhK?pJK+{?yfeM&QhK1wIKLuSBQP<>ddXZ0`vIx zt9>4tf;Bhf&A-v(mvli%sb)kS`OTU9gyl;P9yQ*#sE5pWmit}(3vm0?yZ?`yN}HQ& zO>MzXuoukIC+G$9Oh`8K6UL9IFJ)sUyRz54ldSpq&4%hX$P<0Q1qyowzb9bd!1u)w_`V=cJu;47FT(c) zW_2@WbwwmzKwHTPhF9f!F*nbR$=^>)$#EXj&{6|=SJ2Z8MJq@sXHvpyf{^Gg2_k)fi#Tr-wCrIjp^w z0kyx9wX6}@z(#tsWka_op8f*JX+5xFr$w4R z{1e~20PqPmj-Q>TAoZ7b>a_RNH z3OU&=gIwB9;*L;zsv(!Q=LF=`oxJJ9DLr}5LBkAIaYABZ|Sj-8h-2pjS7i64WpzKBHs z1|MGlT3wotFX;SSKE9}Z0UuvNz!%sI66Uj%Od%fMLBYQSi(bT{U51n|MU+X-832Mw zL>D$gLTtXUlARZAxR6FKHcWE#g^lP!>iKoa^+K0loLn#7lFN|mMJ-2Bkz-}?&mh-} z`ZQ3wGhe!v6XHcm5aaz^cpn5#jX@ucXHZMvPR} zLu({=y@%RvgGRK)21B5I5(7OnrOUWsOs%<+=U*hqU!ExcYw_f*n6IQf`3EtNU5{PL ze<$BGC!rU_$xtI~A7Rpb26Cw$&EvFPj3=+fU*y-5f>p2a$kTO736DJu;(Jj4`bFyL zclLmH&Y!3Db{yZ0CqEAL)b@^g(LT+|Td+Hu&Y!32=%~*uQy5X)jeW|y=g-sibkvE* zuEe5&bxB8DTYO{Fg@|bz76Gh#x~)h-9nvik(;G#3FjA~Vx(~2!Q2G*5(l0}be$wS3 zCA(Qjv3~0YB1O}K!jO_4{$|R`2hq=1XLWCg=}SmS?-{YYNi3I%<)vadS1ivE%j3lI zFtMx`%WvVD$^L6du}111LyC1<_aIU%Yr1@-_+!29dZgf@>INeveT|s@1C62MK0-=d z+P@GdmKIuYT_1ytxVEJ4K}y$sCsMjz3sS7TjAQGk1y{ncwM)vxv1JRgSbr&wEpf`o z4sm7+u~R?J6jO_sUL~d&6WdNm^m8CblYTbGmfls3cr$qy2NB1X&V3u@ao>2nh!7{1 zIJU$ML$-rsOXH8;73ldPUrCgw=WCmor{_;2=Ap{ol}U%}kxwN2&$gHFZy-$8|XOtwrQIh{kqW`fZpC!r1O7sK#%L_TKUDl_6nd2&1wF0M- zPTm2TKx`GT@)92B#mTQ1ne@BZldcAV3U=}f*O@@|1yoj{{ekL>tf(Da+@Hy+B{Kn& zUDl_7kew&6es&RF*z|voB1`;OGtpheO`4B0n^BBs|0181l*IFKadC-)PJkb~XlcPb zcw-WsG9@@1j@0=JlIF*yBo@UPU~<#@4v*s$>6g~A4=v>vz1@nY%s z||IoxD_a4UExMtjo-7F^XT`c4LfbN-=5$vRjSsNPiHkElU3w#-U5!Hfe3R;HO_0f zlE^oeLzFPrwiSm}g;vU{vXoV!Rl$`q=e-)Pq;Hkl?N^4rI5n6koJ9FsC72JeLdhCy z&rG2`sZ~?7?(db$2P!-jU%+lBDbz|QP`ycQ=T40l7@_auCXvyhr~@PP5mXVkkew(@ z(6> zWp_ilgLWO%woKG&s2sSiY#6Ik(vVWSQ#cHRl7TRMr?TxvQB6^$uHx_?(GxMSP|8-W zd8;In`iPCLV2s^qwzh$SKGkbbA0^adU@Olr!T%at+dsi1Me|5Q+o=JLcZbH&4h`|H zMhhH2@V%Ai3-LcVelH0+fezE&J{NbD%V|71`c!J|nB*DK0WT{dl(C z8#Z{4%{tAsw$=UF{mQs3)ig|Cy)a{3;jMuz7tu-cs;$OVH0!q~a4i1OuL^~%`tB|i1C z#`0uu`SR`R<$QS&U!DxYZEbl8@*o>js8{;Rlg;WCd2XT{Sk!)Fy^H9zT&eMpBc|SJ z1h?miGp61Y-CU#FYce*YwsQ`_O|PaKy~0~w6hS;*j1b&(m@489Kp8Ahfk5lOIEhH+ zQ?J}!Uc{-Eub`G(l)js%SiVBNJWm12M4?%jzT6m!#nnBxpOKM{nT*FSMMkPFFG*1^ zk5!}D_h3k`xYVF^#()RaB8vgR>FpZb5tFeE;Id*6m2uTv1-h{?qI@aq3Su2cF#blK zV##)Ov6+#Oajqt4wsU-&$#}fgxX%@H#BOY!=-<;m6M%gyRlxN-J!G-FlAjccw=Xry5k>d#!;Fs{)Jf?P_IV%+hJsK$nI zhu!168L8fkC~wBt=8Un(@2X4N<4$YJhyuN3mvx*+G2W-J>s$T$Z*6*fU_5CKZRPc+ zZTbRBXscI$x=Hn^K@aHFw_J5bN-fxT3QKK9>Vbx|U9z;sjMTLmV-LWlE7hL?Q>oku zD4Rn+;|yoo^#ykQHwOKeFvW#_<<+0Dgnq_{7TENsz4|Y?CU@H5j8x7&?lrW;o#x3H zw=pBi-!N{Qdt6gSYGX#!M#Z>o8RK@j#=Yhqw@ZfFlxl@#cf+_{*0HjnAPXSVDj1Ph$c@8t>pD!uPf$bYs?Xg@ryd+0pZe-MkldNcwKW(Sa+81&qW7h`PTPGX5IrRq3KBdDkOxdV(3?HU-HBHuR39d`9 zIyVGc6HU%x+V%Vt!yrexSyqYPL0PaBKd2&@&sn4FGkBW^|9tAH@rL)FymoCb&z{MK z<8|Ol=Ey8aHdqy5ADX>!6Aew4VA&mv;CSDiSKZlrgEGR?9IhX*aj5BOO?JlA$le^E zr)(Lv@cvlGH&3)o+%|j=cjDo_8t&0iBHQsNxoK1D!%Z^!77%>%8cXb?np5G=TDR;~ z4|v8ZTedNA!bbD=H@5fk?^HT{Klbju^Y~s1<5&({5mUwuxq48<)<=H&?L7IQAH2DP z29;?2=DbI?k3I9uo8R7I&@b*Fj*Y&f`JeYr`DE$$ zyVLHw`Q*aye(YQJQtMy;`0B^~9{y}@@uO2l@4s!nd_-pZ-f@qw;mbw`3tz*Qr9J4- z+5-&8jIANXf}B48*s~9-R7#~2SspuBhN&92o^#^MgN4dvnY-+(E$o9F4NCKnLu-a< zos8Be9A2XT7(Z_9sMBEgd$$j%i09-j$kV4Cuo!Q!EW~$A9L%E(`&-QKa~dZOwoth& z^Ey|m@R3rm|4Od|_^TIv*c0rZ9S~~dWKNXHzH^VtReu)0)MwF8{0lgQH`tXv!@e3# zUW6=GzI7rOQp4Y{)g1CvVQj?j4MA}RYo;QSrkai&pZ5i{a)pw`g&}qJ@QvOL7;L@MQ9)g#~0KV|2zf*YGpatyV^;Ar4(a zDQ6k1u_Tsq*(fEJTGa1rFn=l-Rs9E z7}tE4=k0gUoPTR#L+!$Mv<**N6SUWVcYx1+PwReqe1dk?ca7Qh()fAvU%0Dy;oXCO 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≺S%#NdR?DAva5`d4hA`k#byKvrX^ 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%0DjQ=5@cq5If|AjYh8XqvEwMSC!w1)kMw_VM@ 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�acmKD6MD(sou)ACNi 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∨5`i9XDS}``zdfEvEFqX++4VPxP@>_;qHff25ui*J>0+8|C#+jgUs&( ze-vC69N`qP|7Z4}fqww*SGazul9T~=H{7FeB)=X05jY3a0Y;hsNA}0FpACNjTqXOD zv;Q*t2igCg{VrJ8Bl#ihr?Gzrd@4^V`}eW`IQuWKzmNS7+5Z_n=^JX2{b=@+;gh}6 z*|)HNFMP`9QTU>qOdn$UEB2e=lb+qM2uprH_5tM-x~jQU&iM*{ruJ2rR}?-LXIF7&p9BBwJoVzV614XSAiF{?Ak|Dj|5K+ zjY=H7E?{NEbs^z>1_VEpTRmt(pmAL{c2^S5{>63 zMbwrFkZpw`h!2+2y(Nmg5gN)GpZhp*Y$i}=j-`=UOO~_PfoHG#rlfi-w7;o zA}qxuOHtxih2}`5#q&blIxox0LUgI-7K_FTi_SvxwnE*T0*l5%3nV#9lx$1p#fa8| zBw3=END&B`m?(;mA;Wl5q;NG)6dx&?00c3j2|UqiZE_r^Hnx~QEi|tw)a?aW|7pxu0?Wz}^9P{5m*sPT<;@WD&K3)>Kvkh-U4{8gFU!Zk z%WLROf|STF5XEGP;%vb$!dSj28M$4E%Ft$Iah<>fN3^w=-xOFrmYUzRGVd(3Y%4T> zMF=9U&Lb!Cgw8Rd)rsV_0DvoxiW2CkBx{+X)i5FasVPrrr76`2G|TitjQEcw6ROa7qe(R*t6VM#J!&|vnZ!vF zj%SI$;}U05DbY2D=vqQ>EfP*D0+?e~$ML8kPAU<&N;zgF9G7~c8}f=y?Pk&15qet| z^%I@?Qc7*FC-u^)T~g`_7PUo+V)?GAME5$5E28P1BlD=^m`Q~mIWm_bnFp+yNA!TD zvWPsC_){PiX`#NaC%t0QTI$iIdU~i`&D7pN>c@IgyOi2hPemrxa3}kfes= zQo;ctL14F1;-nm*M~RoKgyUAiF$029j+unxnksZfQr$0c%!-8Wc`}dxS^jrD)D;EP z&-K(EOny`mHOaB*r5u;i|2CaP>x!Yi3#7KylfHq#J=9O22tr#?PiKjm>Nqf(xwX>+bJ*Wj<2GU;fsO?PJ3gA@$W^X32 z>p3npGVs)-k_s0oXA;s8h|2IWi`t6N!4V&0sO@ap3YbL)Gtxc=Qa>Tb39fZS4@re- zDaZAa&>aA9lNuV+q5ciaqdn$2Kfy!C4Xy7ss<~@(v z3(88V?}3X_Q;ER#Cj{6=OM`ksl()5@lGXVF%Grh&9~ zY><|^f=%t>(YgSxCw-#RK4S8NU*5vve5xv(Tp@%~g)ZP?uxBdAO~NtD1S3PRsU)mG z{RoZ#OM)4@AXYJ_z*22WIWdp?msldQK~AtX1q~7&^&_477PLla@3W}yz&qfMKx%gu z^=&-~2;S9`x&x^#JUo&idS9_n`~Ro>|9?=))BpctP*wP9@CbkDrhi1^h*(eJmsAA7 zNGFeTizN>&eU@G;T-O$snIlxs+8$nF(P>SrGH z6_g`L!`ii`K%VK?Osd0!hTCeMX%~ zlbUA9JfuXk;{w=0+)Du-l(t*Q z=xk?VC-)?!z%a^@|9eplvMhTPvD0TYrGU}pz+W168~H2SiP$-12c^K=)sdf21Z!m5 z5<90}rxY-6jOV8V^SP;+^#Ugbdm4p+NCm`_Hpi&Vwjm#XO%5{m>L+{aTet1W*M>Gs zpurp_0cqwNBzrFl*ikIjAMtDLCT^b=+ePf4!7s{bfyvyoznkaq&`Cc=lXM9z> z3(=Hn?vjQ4aa%s)mr1Bwe#>Hd)VGmN2*OW0Q=b=CH0n_5jb8_Al70>vM5fvxx%*Tj zTG_=Ly@~L5fNN@}$*nlE&2L+?-LKTWMDqE_hC@EJ#&Fv;@AKyAGwY({Bmr64zYJV= z4s)r!%4|&4L_%+8W8zL7&HOfUF2f}TIBPQFb~^dwu=*#@CNuz9@61R9DWL3eownC{ zdfxZNLCCak!#WOT!Ciq*B$q_H#x?5{mQ7V5N6zJDI9{7>x_QTFqS)V(!kn1F;y2se zMt1DfB8mf+Qkd>Zj{KfB8Pd3OGEqEJLzg-Em;)aPzlP}N=o7_(rn*c{lmnkWyat(_ zGm|Kul}=$!EgR2gwm(I7e|992bn|b5=IDo{tfTP^ zc9CQAW(aEj9K8kbLNs^hz~n~zvDjY(30cYWNP49aPWa$ zFZtO-oq|~<@S=D~tNg{E%SKL{!yUBqm%Eqscm27#YEa9JxS` z$}C(N&R*JvY#3983?m<%RqAL5fq(rzVzSF@7}6PRRd3=d;WrKmMc0g6XhJea*l#zp zc!bMiG+}~K;3Y>iQ(o-~0fM=!wjqW$WA4-tD*s4dM@F))IPx4<^ZT~yA#JA^zcS5( zB+ZrtJ0eW<*A&8y@(kTr^t&9Ti=fmZ#|S+_vn82(BSJLfFLjb>i3{~9}?8J5*K8eu}^ zxw9wh2)d;N#IS@;1ba{6)Uw}738Saq8;lMwOO4M&n1@R+WDwiGS{q58PdW;Iya$Gl z;TIc)f@jG`myIHsyRf&8S~!+`h6oq)pcwucqn9Wua=BH#g^Pq=zB>e7_MW5U0T)SH zL1Hs9$8;Y|jUEnJE#cob(tIR<>_k^>G}`o1K>Qjxc9z|BSR#u_V6W6UjVh#hflj8H z2eDVz3cBDWn9I7n9f@g{LT({h&sINmkKt8ZUiVddl@U_P%ED6h*M6p+CwuRu^iZ*O z9{otjNS-zPS^Esa<&ue3)W8>xO!pZ6Pa`5oxBiDlfi#Stm4iuc6xgBtPncx>zM)?ZaQHNOpX@ow7fn73NlpINpm5AIUh3I`2uG^8q_(V~XggB88{|R;1 z!zrbnnhfU$gqF-AuPz|RG0AXlNnn%ZF9BG=qy6h;ER&pwQ6|&LtNG*=bZRn!(Zit^ z7O5wlg?}a1l#~|Z$U?&yfl*VlaY~3eT%6(N`?STpiKl{7pl<+|XlN-whatqLSLZ5w za3Nc#P)fSmqtgmU8aQvm*(QcMrg(9m)@*I9`Py0&5aHs!w6%2d8ir^w6M7w@n4kuf zzKA}!gg!XBN9Sq}^<@FI6;_Z^Tj0zOCkI$cN`fm!M#|P(UEiM zk-QuzbBjflm&NrKFH>i8$~kO`R?u3gx(ehJHg5YX|ttT^Lc7kWx#^a4kEAB7A4q{Con|v)u11;7#cVQqSeqL zfrd#?ENb?Wz`><#9d)zAod|Acy;-!LKx#Bg<;1ISZD*s$OZ0*-+4L=KF*7Z&AT5wb zWT`0#{jRln9Vr6RO z7cj5od&>q)7*^Zi-1fYkuHidwaqo|Be1H z*7TQpY}6|Bk1G37oGV&&!F59d{8?yyCcN{}N)QSeuj~fN|7dFBYymShGHZmprKhbh zoPQsEmyr&2CBdU5#z}UZG>wk1;U&9du%;JR==A7AuaIHKIZl#7jfQbaYkx+oNwl-? zCV6jsFKI4Qdzfj_jcpO*q&$-_X9RXmO`x^7v(mhw;BPN|O>FrE9c@y4QYcyTcK({fh`qPMN=d9&fngn!Rq-4lZHa)<} zcc;ajzsw)ipHwoK4-D8CgO1hFoJ&duYXyTft$a{TGV2<2zbF|DAp?UU7=!UsCq7j& zaIydfzhexZo8M=u7$gD%9>(B8+59Au{h~lQ=5G8bEkqi0^kBbo-Rr z>FSK8r<$PJot;x{O0hFj*wqIRnx-fs?vHBc9HrX5V?pg@nA*`6D_B+03WMLX2ShZ6 zSZC27QF^rg3fQ9*v&Wc(OBMXHN>4NbLW&_G5=ttVN<{sAK-6G}KLNo~A_5-)q8>wB zg{88Ti2A31Xu=TxBve&Mm59I|sfJfGhHw!D3(J&-swe7b7EVPi*ko}=_oLDt8)$ZP z&7r8;oOLzkl%-00lmQ|YLk!#K>(sMMsrFxeyCJOm+<3-SCoh(KnO5IK^XsdMg19t5$TQ< z8eX<{(R^8I!c1b-tWXFR?+^UzFu|foHI|elCI3AJpvriZ|F8puMzZj^lFeseL-0rW z^CS7eGL^ZwS~{9m7@{wdA1za5%^W~@VThh6ep?0WfPWmwSgre7>EI85NW~DXl?464!WT;AXOKXZ091KNEI(eRGX8u(gkXrHtNE!F zOr`My_kxZEn2w$1%s*NDl?vmhMu1?iF~O#hA&w%If?1e>VD4CeJs|AReWw&`9w1UN z#IVO8m`o*DJMbsW#JsW=*|UjRUIC|Uv=-B^v=G@xPdPOIDZC~?5b3rfbwryX=?%I& zps)g-e}ZZ>L)JxFA`KyLITEr)=)gNq6zyf-CNxQ&3x-W^5;;BoP_>?QxRPD&rEiF> z*_~M9SwjtZxT69=mx zjTZqSphA$f(%#V%$C|)NP6H0VgHIQZfPI3eon;$h(->Jz+*YYYBYLXVE1O#Ap1Mf6 z9?gGn4TEB%G??o!u!{#4t+|!=NyJ+ur6kk*3*9vrD`##`8Z7ppd;>`kR1)MF%+#Eu z+nAcFZ#t{ev*_8j>Zxg4EJ-QU9R-+uc-3=`c(2vIx|;%<5zKJ6oHxWineollcN6y4 z#zDFA!OyJt3mjqdgH5G7(eHOUk=-+n#|F*d!#p1fP6U$p>`*Bmu%P>^K{RJr=j2R2 zcaT%|6!!x|jG7R77=@9AqG9h`YZqL_j!-HP8xE?+;0hoo=cFEmen8e~4V&pT8Q>bp zxdJl3ehI$1q}5@S6%7f2KRFFlsB1p8ZZbnOQV2x&Fa+lQ`)Re7=^It*ao&M?N0jOv z$TB|Z%8*V_sz@*pYdOlxdQi$;c5vCzgA zVFHh)4>=#|EjE=67ZT9Sl5U%tLk`m=6al}H_RQ+2Dk9?7 zmx>9ul~yq5fa!m$rvEY2eg|W{+VnD*E>TVArZn*hh~lU>^A63Dr84oOe=3M1)w!~4 zGINAO)*40dP=0}@xz4@@&o}y^o(|O0w3#m63Z6b{726cg;0QPjC0r&z(+Lp$f*4V>8~-=c|ITcv^5AD;0uK3(b1O{lIgZa!$;- zFetm)sNXtA3M5tZhl;H(FtAF)i*X;_gI%Tv+dI^O4vLu*hnI7LE+}V8Mhm1>fy$X# z^I;|voB4Wr@GUkRniQGly}OetQ0T-zFl-2#Y55j}4E^iFAk)sy2&+X9Xc54ubem{H z#ugirMCIo3mE5)3Z&iL`jiB#gyi-Q&p&bw)htUA3-kz~#1nH7$=A2rX`A#u2XXLR! z1L$gn4D!v9T1J($x-NftCd2ELDiZsg8!Rd>;xUX|nBjO2Oy;{-Lw~q*s_EOr$o$eX zEeloT$6XsNG%hJao_s%J3*)ujpuyOO852CN2E>c#t8VbH{Y}!^vi9W}QDKp4dYwmu z#U{mcBxI%y%FT8?aBD`nRUIr9SE!;V`1N=QK^-<~{hSwO64aEcc=M8?uJS75Wx!WyklB|4)dd^hp=H)wh3%wR)OI}FGEtgAKve`U z@-4R48n5CT5K-q~S|7MF&Q9GObt%~`YSTqOwouf)IXp7h#R0VtA3+Ovix)?xzPN>{ zsk*Ou4KeDnwQiqcu4c3Y7o1+In}vU*fh1L#<%o~2i@I4hER(96CF+k>^}=SiT&#|b zUBFQ{8m-%ur>?bSpY!zrQ93?4b3l}KH~Fed{;8H^rY`xe2~FyfKRqW&0ot7EI3vIp3tBO^?z${;dVkE&+R9@|Rwa_8aWsaCS$ z{uU3AYQ0aDx>VhEFV*HAxa2dSpmo|0kSb#10GZoZ1F%!K50v?0X0)2j)dvR5t#?xA zYgsmBf_kwkneb9Q?;Yd~Ifx*Zyj7gkAa>Lq2#_5mej)CTT= z$nPI!>_|_*$%@pcZ+96nAV>ln2NBiWA>2L4M6KXhKJcqi zcZW2hQQaLz{!(>pNtA|qkR18VfTdnfW?mezM7^F^=J^jShH?Ay)ibN%8CO>=vuJ}x z4%mR6x{Okne0=R7Q#HvCYzU}Vmo0OR_W+x_zHJ*&3|pVyFi|gtN3QR5P#2zdVC2#P z!Y`g#H=r2W98?ddjt&F$^y%H89!>|I&2&_=Ip^0P^&OuV*rKkr*=Y4+^(>#^>fXHL zHabK-<%4GTtIfSLe{`ricK#eab&GvEa8tb&Sq}ZJP2FPBzpTkpRZ>q4+chA_L;e;I z2=Xa^=nV++oKpkp2{~=Zc=b}Y@_3%QuM5M&)qQ1|MVPK!ZkcGI#!?oKv7WnHQ9A%B-YA8${lRra!)^;l;vE=C4i$yE*i! zo#|6x=26wm&P%HgR}?@~NO5$3xu}a;@mzHs`F8V~0Wnf_9T~Opu)F3w#jSsE=o<8T z(_^4xGd*%2TyMU&Z0f6ud90A6hf%BH<$_6axit6%qQDV40R|OmlX0}{p_OS}$6+Hc3z|3Hb z=P&z*49almCgI(w>U5YHshSygiTO~fY~IJ@f*OgK8mBJ>-{GrW$m)~2s9rCWUY*mZ zqfh4CAx)E?*rnI)w;m=yhpjm(_xfFFc?F|8(R*E4O=!?trt)@EdO2PsQQdBiy>GY9 z@H(!#5=iY+^iGL9 z*tkD`@JWlJv91+<^_sEN#@&@X<}z+Tx~SCFR_AZ%Du(t2aYE9-QR8FC(c3tF_}AEPP7D(`f7?5VX#PoVB# z<5IRBtov+4T&Y^&*sNE{TdXb!Z2}P{EZOuyGAiy-l?1NTiu9YZtE@YO)ul2^`ORQk zhoh=cK9Cr0pTl^d>RQllIzC)LDYvi@;EHra?0GXb{h3OUB^T=2sX}*^7*PvfZ4$K{ zQ28!vTwIx~=eC!=Eduu!)ZDpcPeb?}%t40u-PW-#IM$&L@$)}K`>!gq{& z1RrWqDY9};89OvjO_6tXP>Fif6xp%Vel6pr!e?O5nd6P8QBP3OR$K zp&PbRO%b;Ve^^pt)#7vLzQ1)zc`7-V?7Y>kFAP@68CCo0jL1u^Ws$Ws?$$N>bCsM4 zXUn*uQZ=`Jd=y+ok5D#+r!~Ct&S+693;d|KjH;}=sukXqzzX$hE1Y~BT*XwaFzVqe z>x`BoDqHm|2V1e#Y_;@!Szsvpjmi|uo`5Mb)l5;p;^a97&t2IVq`jMv>rY8ixvXQu zzUB6$530~wQhCdn%z310&v&)F+AIu-P>E3=8+ZR&pqeRuFM|jdt10sGX>goF=313U z)~^IH!qmj@oA}U_GDgiK$M=n)k`Ago()#e$E;8qtN{nM~p<)QsE5_QmT@^8E`{ zyubCCB)qK>BdY(^vMnv=RfQ{SLtOSXDeS%S!WHw?U+WK-_skV*J=$LcdpP8%63p`F zD*MZfdKLRS6gPO!<)i97m#Mn@|2A3Xtdwu2ts7Ld%PMb?jrY$OO3GEq_i5YhA-b30 zu%Or%ZT3U$exxF}yYsd)S@>9`K;evz#*7xV*5C1Bh)XHNrK03j-32?c)G9@PS1{9| z9->Na$JCr9T|*wY`#!Ot9dyfCMCk(g@QO?R-D3Li^z(|YIj@>?lKP4&^C07&Gk|{1 zA7r7(>Y&g@8!!Cz$A#HdEa=Y3PaxfiO%E!XLrS6I%0I!7;8FC3_l{Msd^^J3^7$Ic zIYuNz6V~AXH~w%7GNVj@Xu>*c&`3?Q@Eb|Gq9(?55Q8&GO^hXEPDTY}r&5eF!i*{& zSV1Yqql#CdeP9KJ7&dQtajfIYV~xAzfdt89#y2R33NaSC2Q8qS18XS6IA;+}OTVai zCjhMRoI1rwxJ*rqRpeSyq8dRf^}Oz9#n}%Oxn+@QL5f#X6hYpr6bXCJ8|`oj3ab1g7Vef;*0K^9jqrAvLXo%bd7hNf zYKr`@h^CTGtI4^EHi0Zt9z{Wn3i1;nVU?N~EyAv^x{o0hIGo2RzIL$X1J6;x$~!Lzzy zg#xt|62DZ4z0_8?0JcI4s{ErilGc!C@CU_-a`uXsIAcVwc-_z345T@6yJHa z4h3p1n~=g<$C#pcCje4l)a0i56p5P4a);K9NQZX>m{=nf6uCp2U@S~jQ=|(b2d(Q$ zF+L0BbzKoTecvkNbzLDw$q$~5L!X*QzND~1`Daxt^noer)f7qmUU8`64;730eqmvi zR4v(qepJj2<--o9VA1xIx14oc`Ee9?%an~0S4O3p({D{?_)?tJG<`eNjz&_?vTw8p zBpJNHtT1@X5AvJz6h-v%dp8b~daol#)y|M2dQKtv!jf=%9zRvm{M^el&VniaX&YSctN_5u}#=X>u=)>$()HlP9jvTPpDJNjCei4A}-AZo?f zoF62FqJ<5?FHU64HVzf`Ap8n^03`Y0eJc?m#J~W`T$<&ZT3GDC$MAA4y_Iy+A~Hh3 zWP@=^#yf_a@U!|N+2c5V>kvW~VDUxv7apF(M|@#GzR27=^e>id>?a!KqArUP>pmbN z@JR&uBb}S1d$=MQk@D~XkmORKlbD7u6pR`ACtRxP$aDlgm&-?~C>blwU%wu(NIZ2# z9|0kvJkST{&>tek4@9FGVAR%ptA>-DIO$Mz%dbwd9m3W`NT{IbBb|GJcABtpfaNv+ zoNyE*f%j#w2N*VlOS0BLh^U#-2giDTW+R)6@R-<3%sbolOvTy=MX@d=hsXW)puRYQoGKGj+|sgz5673=}5J;@UuA zj-LP1WuP#762r*f!39cTtUb5a3=~H5o!-BM;dzD%zo|!*-ixV`1BJ2v)kz)bYj@lG zUK`W{M%!q(+dwyE7gdo4SjM_E=iWeJiuURM%T3(5rUTtHYtQs3ruBfB`E8Ic7h*=` zrZ1xl1@H%H*|>eBSv3)d9q4-M(VKR1E@_};KEd|~CacFxyll29b^bom&Y6#S1T`qnxA&yMIcv7^hk;o(rjL##>oF1dQ53Wb0tK_B+mP&_p4W%& z?Y~(t1>vy)jXrq3ZC7@hJcYbglqE_=Wa8{Jb9G6w$IX<~4;v6LZ$=rX3<#K!o`*Sk zh?I$~ifuH{M;;v@t>#CAF`0wZgCS_+>NLjzjHt8M$Ba;CbjD{iC54EjD@uMk_p7g0 zlm-@17%$GDoka!C1T1p#lITDC);@$F1xe)9TWoi1L;xR@F=3fUnajS;>b9dUya z=xCW|XQJnql{sj{)a#lY4VFe=*3h)yw0#19Pn#Wlcn)WjR!k_)L_*I&G?QR1*eu16X>F`_$v(l3ilQg8kZ}xPq z1^=xK$^Ap`md)v%26{42>8J0$@ZGXu^vRB$S-%e<)l+V6DxBMolM;LRuh+SQ+oc zq%w9AmQ2{dcQmCJ|4E3I=Gj@E%@!1HVgWR;fU-zH;=b zYV@dTG}S;(a7imTPemYAfq5A1R)n%f!g22-%Bh=VlX^AfU>(8YI}Uy)*ow8}qv9&x z9FiQQUyDL|wdx-RlBeZxm&rlV^y8^3c~*Ucy0onm;apXB%-oE|zCEF<2>~5C^M?_i=0S zxxU>v2uA*ngJ9%L+=jra1_ukc)9Z1tv}#5V4mwd2ajszGBpmd=$4$n$`ak8alY>)> zuaOmwS&w5UJ>_h`=gexuv0w?YuAH#5Dj*LBiv*?xIJlk%Ki|B8(Cd7!MSq+C2McNc zG~?h0_Fu$$WAMc6E(Q#fcdOaC+uev{D7;vj9VyL=@t!*YCRd4*964ssnl<=E`O zf3a~e#9*R80n)x^;h;c&6#Qy5CKG_CaqxptOoa+;z(E4-Lk|w>8LzgQtPtQ6&h<+S ztrrKGditMn(CxIr7aX+B*6+hXYX|*)9E|fa{)U62PwW4KgX^T^?>M-k#pnkPf?a;% zU|$vuzSoUeYd_grE{g*>o~{6mwYS z#YX{}*9&lPs(DR?0$kXn#lY9~P37VsOiNRMu&x3$l@Ltiw6KDg0<`QD;9&Iv={3cu zNglxzUw39N7YEUGRijlZP}59Bi-Xl>QUMN5T~K;WK`<{z%UnsDii4s>-PaT#d=cCN z7qaypUc#WTHQ`{V%=0M@a`i3cgkW3&4vGT0s}!Jbrshy3E3N|cO-;o?sMuUvoWP?> zrU0kqXpT~ja&QoJ4-P^A5k|`ifEyPF$ut~3T>Oq{ZW#r_CriiNh?4oMi59ylfkjiBW3qCZIzexe6W#dP@)J?W|I2do~hReth3vjU7HcJD3s{}o} zqE!FX>}QXmdWMC({O^3hVFM<5O! zwL6b=>J*$Rq^5L=F5=+EKG7vPxXqa-yn=&Ub#&#^Ss6QHaFCa=yB-Jm8F@W8n3b`| zg(jzEXw7Dt$-$nCgE2T*$|@sZT(`Lv5XuwJF!5KJ)!8GyiLAqZIx1ZxBNHMrKXDQ7joxLcQCPBI?6fZ$3wFNMI&b?-C%WRY zanqEBvp&}*@%D|`Eq(BCoB+N*sqw^l-TCDtV)Vm6Qq##B6v@Ilro4-y9wu)Hv>U4x#{E}3(3N}ZoG@>4$_3YP{G(8o(pU?p7+%tMrRw6nyjZ$Bt9=0 zye*oJQllH;{IU9XkOejcg!8^rfS?EnGIS+Aj%K_qRTHE}gH{1SGZ0h(K_(C|$xYU? zs6b%B+fw8PE3Dy<-O&vM&w!v32=Y(@8nCeBZQ**t3L9XBe}Lc{5c~uJ`rsz(Bx6{? zjkl#OUTQS$HLP%-u)yXt@x1S9a&-20YLm5zrNn2o2X9MQ60Fb*D|7+DJs>zv)+Xq? z{cTJdnVx$4^)9c?R)uGiqa=%cJC83i>orDEWE~WBzhWbbN~&LkqJ}y#P?Yx9G(Zih zT#uqMSlFy#-?3SPXy~lpyi-xs9##lCYvgfk*5I)iugWbb>X>}i7)=bN^A=t3ekC78 zmDOVlj+=|2C`5GD5E+KL5r{1~z6wL>VzYjeZ9r!|%ED$%lnYP&gf6&CmWHCbvanh1 zb(n-S0;U&7fTH?YOHc_X-@_K9V+#(c!WJAfi-)2(ZP+Y5IWO)ybe73!3^nyBHcKBv z?W#&gQKK9%F=lWvlz|1ti<^R?TpO@iGow*duAu>na`q9Us96r7D6ikbFw~G=sPJp9 zZ9`EZ4VZ-UFhk`UVU|C4Z99sJ)eA#sEu@&B3mW^N3x4(yp(sHth6*V`h0kU5qYFAu z*@2?6^)O!HcGxTvEp*nJDLYYAVZ)*l=>!3P#U_m>n%ehx#=@kZo5eO&Q3)pIql3i8 zLAKt;1vRewvEB=pW|U;a8=WtnWix5q^*15s1F}C{)TPzdmiuHaO%|kC+g2u12)=W< zEbjPz#F@z*M)xEJUu_P&Rbt6O^oQtC8vHyz+fiA4l$alc`xG6k6V-G+*GH4%v~%X9 zEksHR*H7<@4)wm@n;#lX^Qs;V9iQl?>8#t_n1DG<(lp+VNQ*;3{D6bidQG?+g*73`LFNZ?yDHD9R%GjHH)y9WX4Z1K z8@ays9Djh}HgTNqs*xz{NgHA(?lFKyTjMW!!(^oC-z2_5KW)kPduLswAesj6S1PMY zjfANUR{sfO2VHePxcgY?-Mz!qb=GTCkzC>W>c4dQ$u>mJ`Arr&X>%MVH~Mks5^Dcv z5?DW#q?AXqtI54H$?~R(=yEC2G61wnAMTw_nZbw|){#&<&%_04l{77kDtrwo; zdp>LrN&faWL2x|0-{VKZ7&D4&<=1^wx7@CRq&)#MFWxCww|5(9*OQoJ%M$wzuciGL zbxlRposQu_j!Hkv9p6JfPGE5Rbi($CedntoEvvR`XXK?65R9U|HM@rL2L(DZk5u>e zKC#%{aVpB~+o<1jt9#3Cf8RZ>w!duU_mda9%7+ufn0p6}qFaB0$S+Kz@_ow!Mn*~-(0Ttz80kwl9~3 zChYOENYG_yWE~ar#7jROzLBAQkZ^MG-h445<&gE>Y2Suge-m^(a#q?mBA*05w-rTM ztdSRC^;0CKNA#J5&7(&>=$F-@jfiBSDraBM zGw1aT(+C=oYL$Y*ec4N`4-F1d6XaM#EWcu?Sdc9KRcPIU*m!@-AZZ(gHmL-`5_-zV z;odvwNBYe+4-$8dG-U>fLmtBK4UY{!#zub^jDEy*e|ns0Mkx5|_m{DUZeUJZNPL|) zJlu6&b?ZH{EpnCxDoozj_Bo2Im7_-Ot!Whxi^QF z9&+IyfAZmHQEtAAR$lE2m&ehXq`U(u7rnkZS^PM8*Xs+*-JfLf;{EuGl);rP1vaz# zr3+VWsa^f&_h**r)tw)m{ilwrO|mG9rapWWzdUc@xHpeOE;-ko%w6-g&e0$F$Rys0C1Q z^A^R6u5~-^nIFyIR{>|g|evkF` zZzfRaT{a_XGjeq4hQn4LUCJAT?!s6W>Z-DEKDD;GlR0mG`qlQ{GnYE4TONgfOc&U2 zH5)Ezhn%Qtxrtb~k26vgEQQY%b!KwG-Vm#QhE*YSIrU$_=trcM4{!MEm zWYFQH6}moK7BAJ*9W!}EQT=)&%BCbsUR};#OQWCYZ z+DvVZYIvLryd`%9(I$TwIIPFEF`vx(jwN%n$oJ6h&9@9)iNpN@QVV^&xQoynkN&E| zkD&|Ut-&hveLb^Rzj4R!M>x@B?A+B5qAO)qitG&ZreV~9Td)0V+dw_ua)ElNU(nH? z{fdToIarI9r5}t$x8rNV5_z5Y-`)D}8dZKe?q9*p_LKgCJ>)xW$RILP?-$}Hl^P0gj)0*_~pr8g`2eW5>y4nEc8si?+5JP{*kFx=F1u#80pX6O|;OY)pmqu zU3_ko+s-`u{TZq3#k&Xj_E6v4N#d%(dR|WByo1JkaB1LjEl$%(EIrKhoeX8AY5aJ} zkB0vemVvA{roqDKY;D-%)1fTHfR5-l=;=7|Huc$vx$($o9KAF)a~VrvsBKLr#F zU8gEz7#m;tk#(}8JoGwEq_U4m^X9|W*52}DMZm$WAJ<--N4@jrYDM8$N7lSkmRRM+uICVV3sK+LSpiyha$A&>p zu5T50Mpi-Yl>%QUo6f_hobd&y+}Hvd$qsZJ{9|QNxU_H-?WHhQw=; zug+Sr)#dxGWzkiIk^JSusDg`o&0<;e>z|7`jS|vSb4}wCmzS*4f*X3|O05;!Tnul= z#8#JH~J>LwY zW_{W-G*3!dy57OVa2wq=H}Gl4YC ze9DEhzAxG3`={xP8sA3maLHR4kyF(Y@A|EMGrni?{q2M7Li}ovc~(34OL>WcVw)1f4yghuzNjey7|)Tvw<(!?gumUMUVTV zb6lFXMHE%FBzTM&PMz^&hI$F~DAi0=~8r<a0aN;dU|Yf2|D zLJ8Rwn+&QsmY22DeQb6d@mT*%M`xPd_N2aYW23#1iyri>8D}@4<4pKTdc59)4(^$*!DdGs2CIn~K~iuXGme zxyNhS|2|k$mQktU-c&}7yU2-l(rtX_^kZ-FpTd~L9Y=?Wx2W!heJn^BOSr-0V9k3T-?1io)_QDr^v104cM9b52gwxUGosY)u z&S{@3+$(>v1YX#U=v?7n7$UIHJ?Z(rP-`g_L zi>Y7pNAyaXBcAY=iIMl|3qcDl?`~byevFsHDn9A)2BTNt=|}zn z7w^m|_jv31#&E`+Enm*;^E`g1>;0FWx94-)KlMI2G0bBbX-Rz2rIhltmJi?THa>h7 zHhTUd>Q3k;l+P>v^F>%h>B0xcOytJEx)t)S&-3%uRBir?HLY~EBq!oiQWMfT~8xbNstxe$Ayo$~LVRQ%N3X9di%ek0+g z7#G`Vn%OVfU2C9;^*H1k!#|}Lzc1dZjSsx2_z_I9{CZOUXYI=R4?jH5))p|$snhkn z+SVpfSHm$WA5x(8c-Jq1v~8 zHYH{Q+NPTh-LqKeam|>P3U|A>*?w&K$I6G{FMr^q96)(pj^(P8#06(|5fMpSS@P5xwFhq(2GYKU;aw|1frysH^u(aET#Y zYO6Hr&N8>QI754jsQ1`52=RiJi2l9|u_^D77!A9u>vVWEn%58+kbC4Ay4-{-?QdBN zk7Q$~vMK!+CmpW6`|fPOFog&A_ML=#(EcgPHmDwLW^HYlW6@z2<>IqdZZ*Nh+Z&i} z<&;oSM|_|~0QGJyGr4@>fxEI5E;V)=FQ}bRol+ok;ucyKA9=BItQHUjly`-fO{xnh zKhh2r>3~`L`!6hyDY+0g$@6Z%sR@rOyi8}F}G`plX#oGu&Kq> zLfwl0-QGC~ce+BpmilcoqF~|gDW0;<^7MfEWJrM}7pe}Zf1@c;T>PZnb<)%HH-?m# zpU-%_uv1(tupgL3yCH{yf9`&xz2mjOAs;Rc%x`9fr*hkq=i#9W z5t3}eoq3@)F1b{9tzh%&{skwKvl8yEa6%h3|L^|Jw%H|;cO;f1x%!P0Ru=q~Gw9G& zuUC#6G6yzoNzd-aJIPBM3+lkdj$X;SVAAl6f(zzzSIWAQ==m1K`(AvUpgkmA<`wld z-!fr)tsOp?u-P`s{J-`QuCJPSIrGRH{C_o#0canU?{s~-pWb!Xx#PRqPQu;0A39Rw zU%VUt35s?6bgWq0hl#3}CnN`q+qtGF%8FF#w2UpD!gLWWD^A1q3_W-GZn0VW`Z4Vl z^Xi#asnh0nuCg7$Jai|6!P_eqyBu?(Zf^+3`dfAAKJoCFW=;d_q`G3_^)P9kuC4GG z_rN1;U|4lnm`SFc>{!ljImL|Xu&%tZV}-{I56UUFRENcy*xAcY^bVVi-P}X555ZSr6J{R`dpY%-f(p^=j=if70P+ z%+-08Mxu^zWASGD0RdQkOJJ!=S`ShEn`0r({Gm|1k5 zKsw!uv@l_3J3lY~y6yh!iSYK)`44GtzLCArKW9*5NV;`+jteD|S64iDG}pFd**NqF zz!GfnaXiFjggusIWc5y$e{h&u*)r|WHuGZ9wU(rL7mTgXX>;lVI0f(~$4+cNNhbJI zk3Ku^2-+uem<09koy23@;~Ca`Uzd`Q;m{ft*I>=5W#=fw;L$#T+%2qBM{qKntoSZG zzhb{&`3H~fEq6AI@xSh1f_?6IFS5ju={J@5(rH?C7&~tpscOY0-{+s1dJd7H+izf@ z@uUsjY=ApqLC}2i$JPJ%kHapZ!MhyMy;@r|@>yJR(o9{wXA;Y$@n8Pp1q#`wY=%p$%G5F&)y|}z1XaKDzSRT^N)MKUh4EemHe>w z`IqvqmwUFJTHi6_#ka>_uk_tImGZUr#m{eFuOd_lpX}GHVb&+r4v=gzu4^W__f^oh zNm57pwG3X+SIM|7NgrfPC35DKO?yb%M6!CBM&5n)c>CD6vf4$(i(EQqgmx7#7LzT1 zvcw#_mwG!(t44S_Y@T!c<&d+b*X&aqGMCu3n%phDKH-YPwz%W17N1J1J%2i63GLdf z49aSzcslObdAx1-__7-TDULaR+O?0GQ+896B1#z>{mh0U4AyrrG+6jIko$qf4P3)O8?tc0)wZ` z+JBVFtn6dAED3Hk|LRiX6R>*cpTX^RYhCNY1LF3z26uRTb*)bei2rlg!Y;qHZubrc ztoeJ%!Z*QR-I}fiB%J+o;oIo7?oZnT)?RGg|6Uw%sdf0Oq+4;%KOLIt{5Rp4BKPkH0{ljnFlh#FFFMXZV zlQwgG>#)WBb!$C)56|52X364zo__T#s2G>>ao^A%uOqJh(=u-3w!?;4EA@;?QnbaC}8asg99IOIy}1O&0P1~;9&o~4$uBaGdKP;K)?F% ze|UQn_$Z3>eSDHkCIN;pT#`V*35TFUoFgZo&LkW`t`H6nz|15WAd-tDT;i^|I8@N6 zhCNam8cZ;E9TguIsw4yWjuwc300-SJw>uR{8VUH8W2?{l0I# zRbBN~^;=U{VvwJ0H* z4mnK7ZlJUNYJ3U!nfYZu#Y61!hPB0sYnLRit=){D(r+9|2ZD7b{e#ZIi!0f8KTb_d zJ*fQm13w)AsGMqO`3nvKz~Os1vk3p)xjScLzH;!?Zv1Tj*k78)9HCREtgn^h#Dlf9 zHO=*l=v0ULWco?|lt0bv@r`o)6i&6mnM=p)NjQ_rZ67i4gW#ZD-a&7srGC&j=z~r= z{P4?|K?{;+{-UF-865e)piOl;aK427VYE`1=?-pYUMX zz>|KdAU2i zIBg(jr*hDNb_4+-zvSh1qL^`G59g1DhY#+yS_jZ+2Fr62vJ2KO&#)$_w!UE?K zj98m;c~%mRalp9{RXEJSkyPbK`qtFrUnjfaT&!2y*vEBma!T67eXTRDv0oiyy4tbw$^k3x zesk#JljCSFUuE^OF16Vs?X}rmx_IoB{@TTXTKj_PT6=ZLRi!v1z20A5JjRmu_U(@U-jl-8Fo3yjLQ&k5All~-5s(4sp!1(eSUeQEK4r?B zsrF@Rq3pTo&UA-;L}`V;YT>9{hb!HY?#@kjom*X5RbGQ5* zfbWoFYzh8zcQEBLSFg=&70u2aj_2IBJDzv;d*1azd&YBZqhH8=-nHYI_UB!$M_ezA z&dq+zvEzkj9(Fwctn2w1vF8uT%6c*D_8r;JjNaku=ibr2?fDt4-41Nu@YPGRjvhVn z-n=*Wz5c=R30*Ei8+!!(6&*6$tt*aZUEYARENV966wTdu7IF{oZu%^BFAg%rnI}P< z%R2D5@_d>8j4fcaCp6)pauOs?o5S&nI5-3+V(z9LaeljcUU6^pIPCsX&#E=IS@u0N zYU4}KZ#EVD;y)Y5le~wsNYl>#88>|AP&e8RrdHjxCB6mwdn>A|7M9fdt4bFYFAtP2 zTvT6&b7IU5ht5g#+*O(UrpNktcbxm!_^iLMIkO?lTmdzvAKr**aDHI3`5XuA=HR-< zV=eaNm%4PZqz$xfGw)s(^Bul#-|v|0Xe~&Xus1$o*`Br)c{c2z9@y*)eT+-Ht^q#5 zc45<8i+xe^sAl`l;3oghJ-!2li>liLIZaN|MgRPEld?Ivx7n+dGZEN!pShv+=%D+z z&EGb0cEugJXW6#*G(C_N>&dFb7n5mLYV!6sf{o4+pC>KRvfY;$^L1T~Z+-I6!o(); zJ$>@pQ!S$s_O{0a6XP5ug=4{atK@uHhJciv>q6I7ZTHbl{L2O7o8o+&Vn|Zx%r|cYdXzw z2m3om+>38VI$!f`9yVglfM>c`7o=DQw|&`R-8 z9q#|1WOK`#Jy@a4z&Mj*$vAi4p_~?!vRCt{xCQG# zdy!~<&^n2>f@u3py&)vU2QVjYiWPF{pWkjWeT%=n&6AY6q~|HaXKt__ebR4jiyvZY z*|Tiwf`+gAzixW8P*Szq{viF|9{O zq}KZ;TCX2&4z^`};!I2*9dhgs$>!k$wQ5IwHI2FPM0-rnvN%ughNqwEKB>E9Sn@od zZ*BK=zGTyvpHp2rhQhrUU$@z}Gp*o4$L4^iso|I09LEH!HPIYwIBVqawri72>o4?- zXzJEFGM*ZES|6o>+tI*h+~V~N9%xEl)zE70XMeY6+{ZDf>DHK8rg$9QL=ee@Tmj-zocBX*kh7uEQz18jLt6Iw@HldrYEGsQeKHF=BDKx#Zt zbAO2?ud_Mk3H9Lvu)WRF=)!YIAKNY73Fj*&w8i(cU*0uoy+1B*goU~VkIhp@^b3&UA)OFW_C#$C|dV7Usm)x=X>-q>((G}UDij;%4xo)hfR7PwdeH zZG9$KuTL-s?U_Hia#o|aKI)mY z6M4Hr&LOfbfyl=@@xj*Xr!&=* z{95YK3q6S~p~omWG)~0a;Dwf@N`0AK~2mp51|=n*;`6X zs5CtL_RMdbi3Rs44R~`yQ;dIST1SU(Q<^RIlFzA)m`CjFJbrIO*||B6HQm?w2Q;Xo zK|%LcYt!YiF>xg*OJDq7J}!~#hLXEBQvDu+4=tagMs}B?5A=3LH96wpz^z1^N3;xb z`;}BL7bM3)s_MJNh!J|53l-m`0W-IaxFO;7XI8W&U;o^SHV4MFZ7Uiq>rER?quQs| z^!MH6%k0SVE^erd{lN6T`GuGrU9O2syzc8egUGFa2)XrF##N*ow%DHSY5J&~y3A|d zbJdM(+d}oQ=!-;CuF_=|QI~0(O4EV4iuKDscjfo?yN!BlwA=N=c z>V@C6bT-9}Q3t{&(r)#7E*zMeJjBwa4@S-5euudx`EaoRdUXW6s90m7Lp*k8+sFLwkUi#CJ{!1!JSMEPQfQ~KH(`>lU8r#$y*Q|~N zH=c))X3m=pi7m(0bo4+QJ2oQLrSwB)j6R-c`jC`~eVcrR=T|!h25a&?U45YtXj6<^ zi-tDEWE}9>WBw6r^sZFOMVi}(Uv1|!cSj%h`d8r~NN{CHe7M6qwNS6z09^XbqfVhYlI?<3@cA|?y{{bJ(=`*&Ad8#2$T_^#+|4Q1~qQ`f-e1C zUn{-HqVLi3QIpk53y0-NH{(YtoLdeN6Ef zO0dPU!V(vMdtbX`vwRBZ}VR29lz!3VC@04Rt+e*f^n#UKi0! z<7C1bkUhs}^cq1CVRAeLkz0s-e;?{D+mr!m4h?mkT}g6TkOt0?%21~aNYBxL6w{9+ zA8(@QvzW{`>Yy@uUEKk)uLqg&qcYT8Og5iPAfNo7 zGA<4!$*pD#b!%=Va$B#>Yy#r9n@rQ-Uv2(J^GkDE&J78R8Y^Runes|rT;OOpj5t-C zZg}P?z3c7a9%QLC_B}Pgq{nbf?ixH^g+UW02eD~wpLVqUj(fbu^OJ*<$!2w)rA`js zv|@5_YX<8>{5Rp*a2`W%!z+ZG_6#IAs-utObbK4>RxY+z4PPF zj-8*PlS)O%;C(8&v29*WXn;E6Ok6X-5)a?4v7=vm6b}6{@ipJkSI{5FU?B10(OplS z^o4tzBYv*lnbv?#+HXg3A3*1};-)3mEyvb)V&mR}68pt){1=wAWc8NLONS2MJj`x6 z&yrE{-fPmTRb(HvKVVd~$ zpKk~{nlQSwH3UcQwj(y5fFbAbpqG>T3`?dUd|B9X_=|`RyiCICw`| zs!x^m49@1n*AZP)TPSRD9d%97x)bGjxSX?}=Eml>vFK0WS%iEiQ`NPMqfcI!#KP%6 zjB>vg`@Is~?V;$-^vQvkh9w6Z{~FigY4drKs}hqjM%$ViHpMmns7_Qzn1jCQebTt9 z=qR-vzKG^l-dHSS{4mLFPD?I)Q(FzV(6W1E&~v!aTNjFdJl$@#u~IHRQfjje46T8* zOwOQbAl5Bf`~Q+`8;2IamVl1A#(TSaahC^A?A<4PwpQ-01GD3Ich7ey)xM_jdT$?` zlc~FsV}1r#MU%M znewX*<~SNmu&V_P$n)Co5@Y+-cr41=R`~gf>xuHjDE)#m9;fS`uV%$IbzQ3`KAYP- zi2t`M@&94$7knSl{>v=d-<1*T=`+!^j%y5?ZZx&dp{`@-Unr)(nL1M~mbc|%JeZ`6 z2aU=^XdTS=CdOW!WK|ce)aZH%AOHF>=St(E>p$D>_O;Cq*R*w;IsVf+lkY^#u3qyR z%Gi2KHs)Mwx+kvdZ@LA2X|gjX9evl5n_KKJgagc9(0-n+=eqApTr9L|8~da4s1`F# zb9vSbu=cR78IYK6y(F<79d>Mg#N1aYks+5LnFP;!p7d)ZHeQk76+g{ z)Onyu zx3>o=63e1Uqtg=V8kF|>iP9$2wdVdxn<&8iup#N_Ikxtx4ZgeD8qQj8I(m+$hkfXd z#e1=_+KQdm{vO!qb++$C%f$_k9;Nx;wL?tm%I6Gagk3}%%S<}U`ZH$HInJE+RSmYpevZq!o@Kon zRi5JtFJlg;1)@a695v}1T|@V%-OKhhlPnmd`nPxyqi<u3>==IEM3xS*6wq(^=^EOE7{~b8b}zG)SP3* z4BwPw>CCZ=sqmPWIZQ8}=s4tetf7^tJwelnXPPIjjY+Zea~$=@4en@;IT~2|Mp9fZ z-R4WO_--G#s}l!@T90>6vi_{LYZ{Z6dgIcLHirYH3DYgXl*;8t8xq&W*wIQyY(&U^ z`@kcnK5>QC3D#a#bFgFn2R>VDBCRW7iJ~oYFE#y*xX?Csg)1?BrfGH2Pt9d)Z7yz9 zT+4*eTBC2ymp;C=FHAAddYxLkvIclEF9AajH$#2a8XLPhu6e?k@LFY_H!<-xWfsx^ zXMHlhM@whUx#=#%)@_qUt8sR(RxexR>`6<+GdYWm)l(n%zG`l#gtc|Ur zfHl~I9=2bUhiwK0uO4M~aS27V&F9kK>`|s7k19`QUz!87$I=|&QhG8?-LxmuZ#S7z zP#*2w2#q7y)gA2qw$kOAT3(4cC-0{LzQM|ee-21ZUW-UJE*_C)TfZT;8=I0{XdhbK zWzRvmY&64T)Q`v6n2^5J`4SG%ff&48w#6 zwUDmk(4~AhBf5fGxn_~BPoYcs@auKS+K5)Jp``00=u$q&bp3X1#KN9|A6~>W@Cu#* z<-@Ok24wBA8`HIibiD*!%7-(e%bUP-Z6saKLznX5*XxqiTLNp3WiO)McA(yr55HZ# zNpyM>na&K-xeYp%4`)UE@gC7U)twoDp3?O;;b%bw6||AI^v_ z9Dl5it)DyxUB8De<-@PnMe(~hjwiD=vi&) z>1!cH8-0>~GpOnNVF&b8L!a_N zrtg0nV(HtRp)iTl}<@L25nk@@)X+VfBK_8p$})IeR^%I&1`uJZRY3xzQM|eU*Bd@ zjd7W`3)5AP;w*_dXUH|=OGnD5i_vBp_7_~sx0xT5HnTh4G(vq3c)IOI=Fc8l-$HKu z0sb6!=KQHW?|sOh-@%{ChhOhcNx8f|wZ7#^==uh_KA{i4UYG27@6CL;{Ym)nEBH|P zAZwGqSxgqxbhePr=^UMr+q+SG3K#A>sOGl^2<n(Tnhs#gyh~dY|AR!TZ_?&a3FQ z=a`sAfDTk90Ox_vvSzLr*!!CS}D`^(@AytqGdNs7G@nbU`3 z@Sb{JzQ?H~ST`Wm9C_Z>ymytnZhBL7E#6e^#Jjp7mg_7?0UG>NvUycaQ{y1Z)hsFR ziJqGpC!CA-2S}y_!{)lGBYr`lB^&SP%x%d?C~3|!ullyZa)0sa>D z$e6r@Tb@oz^m;=n>mN66@^-EbhPSQ^Nyn?a4ti0ww{%q8;Ip{*Y?k@R{fmjk3*3$C z&u(p;Y1Pu1@CFMXm6utoQWC=-ZQ+lpKW;8DH6q(*aP#GsAzjqBa`v(b_a|+?_+%Vj z6b@*bXQj8}=W4IFHoRi}rs1>ECdZE^e|MJTk2n6%{>u$WsrEdpY!yM?V9cn)c_$Nw zSQ1dqhQU81ug|-{!WF1Aqq(#27&4fK_Q$r8>yMV&)-?~X97}H5z0TW2FQX5hZ(Y#Z zb!*33ydEvQk*c(Ca{E7%9`oJUm}BXaoZJWd2)^y?`bF|5C637*)>)0WeUt=M3(R&5dOF4Y&t&f1d_AQ-(#!VFY43TFncMU`@=nb4v5&4*5@%6AKYlW> z>3BFTH|Abs_q5U*_}}&FvFpf9F$E`3Ldw+KGGV1<*T}|<5)WM+erpo8BW=Ew7LKG*s(9|&av$7 z9y6KJnLSSIwwi(3+5XxJ%gMvHplUjL0r$-YPHo_LLbc`llefe?w5QQ)AEcxU!;kI5 zho*5!yBmJC#$ItXjLup&@%usq~ z!y*T&PRaCaSk!Q^*JWChw)a0C92v~iQXC#=9CNUjFMP36^Sx!A<-f{it4k5@&Rw$` zZ$0B`@me&E@=;FGyrzNP#ZIAjv0Ld~Y+ri!`4!&9Hq*YIU^l#8JxTeYCMAENl+r4L zR@!cGx02nNL3v{xO0vUy%KO)|>6NN&HHmsiN!aX5^0z9lRA`u$wL~id*yi_QIgy|SCQO}@;+)C$&B<+!kpi3GTo!hE7ZMBeev1cHt&Xnt~*w=m4(u~ z3di{F>Rg7Q@EZ(;ABKj)a!N?D->VE~%HVg!=vdD*C2K>;@Y!>e21tn1@_PzveTUOS zqr&#<)6BLS$b;$pHc8jvbmnyc9z%O z+s)!@-@wx8*HJpXopvH(zr|!OYa2Ns$l88*v1#3njk%6UM0ujaV5urJw=D`aI@?&vDO`^e7*ez?Iv*vPzN1Z%o;l%0 z_KDWWuq_9P9<)!g`*Le+5jJGJt;H2_R}{81Oi%(Qbq_?ZA!uq%iE0w_=N)aW;ilGm zBHz@0Og3*(l2?>vm*-=<2fJ9_{S;M3dl#=dS&AyNmZ7OF`70Os6h4Lk13$rv$Y=YM zVP+o}W|{WeHxEm;oVRF??IaBj%I*ipe$$KLw6l$6YA#AIs+%>G^`YeH-cNPoQ*tvY zKV+nm%SCnb24$5{-856(1ZhuC4fTH=)Fsqw*&u3O;T*-^YEHA76J7y-H&!-%q(0OQ zHA>*hJ<>%L2wZWOiMI7An?Aox9vV&$@4n31bj)(jw`!gq+lfe#+?Yx0kbdY>62)86 z?4NbC{hssj1m4HrC!3Ebo37ME@$aoMR?87BQM{27#XW^%5M2iNMDZ8<(-^i7nZvEF zjkX%(gg#B~o^Y|{gOM@L!X?Lpp1(J0J2_%*iJ^gqw(`c@(#STbK5^_OZ)={%O8YtI zuA%*-%}T#ZIdkpg=Nj_!Sn{)-TKO&1xt@>op4|a@25A3i2jy`dXT7Q4Zc_4x_;+V} zmY5stN_211=ZQCs32#FgZ3(7@qWk87%?&58;pdxN1i_R*cG5M;p3{BXh;R&o=H0YP zyM2r0LQ8PGc6-r-gPJ=Z)^;8}g4{?gZuZ{fy?LUC@^;mApU}A47(_ujl_4TDEGW-r zqB2LCsmzgRkFB|_2049g7MAkcsyv=*9v@5j#pAgo@@(kI@U*9v8dbx2s$-UiHo9)O z#@e)7E7U+axKC-ySa0_RBy9&!8F9Q3|({$3s>HTJsYzn}Y7irh(giU(8qY z!ZGBN6L4VV+HJ5wn#uaxq{DdBP8nyG+@ECjC57-iS(DvFA+En|e z-q!lmIVBl~DJhnU8oa%6gx2r=6tH8*T-?Bnl72V7v*KWU!lr#{M2*>LTiKk(q}XHq zw9Lg{T#3`#c5X8t_QY>EnwK^wZGF|jNKIKp3Fjb zd-LV7iiLrtV8an>A;s$Oa?y~?xY?Rx3Jx{&)ov_u*U%1JM)w^H2N#WZ zdRy~7Rwc*K@+$h9-4xdzqyEMe+KXFA{mpsQ-`q|)hNIBm#4SXBb3gSrHYIG`qlB%> z{@X$&#$8O~ue$$sAH}$9aw!D#B~S?XvoiiFJD3WTu=Oz|#^tuu&ZQW)y&DbIE0h>F zhdKjC0@?5d|J{`K^!(j}JS8+v z+sY_cxBgug42B1f4NGY3}ioS&SD-;6;+RJR8VR;K65PJzKG_Au%QfAr7}6869xd!{EvX!vQ1EtW}^SHmAK zRo>6gj}pzbq+x*0S3-5F8)e^$l2ba4{QfWn^8F~%w-Rj)Ih}G!+i4u{WaD^6%2;h% zj?zD?`*PHMF0`iyKSR)cmC4_Kh{FGtsxn0JL&IvyO@?Azo?-rCl4NM{2#B^;}4 zyE4Tq0VDAlS`d3r4L9%`9rX{R7da40=w5{2 zU0vh4=iGIT&xgaM?a0!v(^|}*h6camTFghz#Kh68#dsFp>ARV0G5<(54}BCWC};dK zidb&HBi6h4mIt^E0LM#h^R(T?_DqkG{jY4;_P9LSLQMEu|{Nn?x2xY z_2=s$e;(N-_h<9c+=%`RzA!SPKYjD>J@fuN9`s#G{IgV+n!Ja6`g*91`m{DmKJ{~Lw7t|;crP9+Y;D=&YsAxbCH9bQt-1TN@ZiuB z5zP@z(vh7cNu3<*e9e?Lrn~k7EFE{Or9CK0EBxL$g5D%hOvmMU`RBKrO!(O!Jd-iOT9faC8f6lWZQw&Jd#Ud`XIQd%$wd0WgH;V4_NyQ? zs`c(;jeX(4E0rG;$-z3~iFJ)i-?zW3CHU7FIS7^p*+&H93zqHapn>wuJ@L(+Z`Y~6 zZ*XU4>`=BXesOHG*K<;lZo&_K&~J_?()(Lu5AUXpis8L!O24W6uFGLs_gF{I%B(eP ztE*`V%0Xk0E6FyvWqtf3V~$?tc)9tO`0K_NT;B0U^XB-kFWP*0$G@BJj(;TY=;f^! zwA>&6V*ZFLYA$MdFn+_h%dR*)x#i*b&EwZyadK|UBk_ACY`voG`j*GyUoF^oh5g2s zC*uE8aQupfJ6fKK-!>_6Zs*-CPse{XX~bOL)|PGY_g_*lx8t#vXXD?!WYJvTQ!UTM z-#U5S+|CzTo{v8;dFx!?%PlX)H%{3%w_|_HALE~!a(u4iP|GXv-%d%K*M77m82^W< zBj$NNXxSZqY-+*0&cC(18h_WcMe`cIYI!aGt!eA#b$-*bKmNMuTjzOxZaEPD%JhBn z+WymWDE=SQkIyr8S^Y-*6NQQM+pMeq9RGRYi23&9)o;b$GoxUB`+(JN$Ny!wHK0>i6RtX6~Ecp1b<5@jGT7pYOPE_21%8&Mdgnv1;|F z@o!$X=*rGJSAQPA=8AP!wm!D{i}>C1wq9v_Z}o}zL-UVbY5Q{ZH}U_t@~129|E9j4 z{sqwZ-sovE^@`hAGf17*o1QK-DPzGnTqg)$m4Ed2hgh_^iR$+q0BBxu5PzrO?^_S4 zIQ^G+^e=ga$ut;$=X)^!#NYqJKa<^L8Vx)H-y49tIlKyZcYNOloSqBfCk{24Rx$h) z0bd84cn5&fd|2ae1fGiTe*sSKZZ*6eIE}mC0Y9JNWY2rR$-Y#tYOlus5Adx00;Jp}5c1{6K>mVC|({Dy;a^?ajU)=?q*61{R32=H2+JVzMNy1Hblj%C( zWZ!<^BRPCKaFY8E;N&Mw&Mt<>=IQanz=wm^1NaC|&Od>lgYVhE>AI$O;7s-YD}nR= zKMy#4zX~|-=Pcl4_fp_g4$YqFz{&m%zLLaZuxq9 z-T_Ya+YdOcfob;t9XREqW&qdfo#c0)rOKHu$mtK<1^!&%Zcfe=;05@8Bk)Naz7aT; z>mA^Hxn2QI-{bJmjNw%NLPk?80ayo!hc?Y0z@#XyiIMrVvaJsJP9e%m0w*@$_w+J}-vmH3!9##P- zd)@;+f|K(AaPnj9B(>a{{5`;lHw-w*)9@2a&NSe>oZeXQCHcz)d^B*9e=l(It0re2 zaPn^u_%IG{08ak>3^-qp?Z8Q2zf1J?90gAP_W+fYWnc0GzICcme_$vTqr1z8`P{ zCqFz0ocF_}z{zj>fb)J^37qWw3OH})1HkEf-zoa?9t55P+ygupe>Ho|^VM>#1kRT$ z1320JC~#`;8ovZMwcB@r^X+ys@X^3+Q%$BZ9RE$=-SK@ga4W-U9Q+&b6nwuFcru6o z1iUZ4R|D^(;UgjAN_Bi}22R(>9+EQzIMvH$;Jp1afs;S?1Lys@95{Xd1~}EfR<65& zqp6wtOf#8K#UcDt;M4K_O5lYYo>6Qv;gK{w2^^0?h`%2ARrsEOo60%-N8mm2y#~0A z;beb;55B?o2HI4{4M@h=eg>lr^w;6KRtlLh|cj9(=1cQgJ%fq#(ks|5bXjNdHqPcZ)V0za-) z_2+#8-wK@k`LMtr!uT%={E>{mOW@}-{yPGH3gdq$@Jkv0?*hMq@#(j8b^d4k9}r0q6M-GXD7j|8d553H;rRKT+TxWc+CY|6|5475FC@|0;nWSEl;^T7ho`PX1pb z@P{z|T>^h3<3Awq^BMm+fj@=uUl#bKjQ^IvuVDQ51b#E)e=G3UGyabP|3Sv@7N@VT z#~HsDaK65FGyZUae~|Ih1^&m3pD*xFF#aV1KQ5s9zgXZ~fs_9i2>c<8ze?bb1Ww~< z6Y#U}SLv_NuZ{!W72h`l$5#~xaT?>d3H$|&zeC{HF#gK|e;wl=5%{+-{s#j8QO5sX z;BROAp9TIw#7+iCGf{G zeyzZt#rW$4{*{d1D)5&v{=)*lf$^Ud_?sDjkHCL`@ed087a0E|fxn0GzZCc%Fg`8# z@a^X_#!m#!`~Sa;KS!(_j=;AAr}jBk;Gf6%;{<*l<6j~0r!anrz%OI`6#~DC z@f!sG8phuw@LL)GUV*=r@wW^7XBht_f&V(=zbWvKF#dZ2{{-Wo6!}uL zGs&W_uVmoVp3ef#*O!CwM+*GWjGrO!ix~eBfj^J&iv)f><1Z5Uzi0d!fxn6I*9iPJ z#=lYE?_~Tf0)H3dKQ8d!WBgqL{}aZ4UEu!$oZ{zB;9C4lAG#yBw*x;3{A~PH`dj=R z1)Tcr9tmMTC*qkJ2b}6<81O`mPyI0CkK*{aYzin0y~T^Y%Q+{$k*1Ob+S&jN$8n+Zj%J6D!sE@8iH}y+JEiK5+W}8Sq>V{~hoP@cry= z;dL1D!{flo&Z)q8J6{D(c9sF>?fiuC8wLJ<7=N?CPpwk*J_|gZvu84J()+O>rwlmh z{aKLH47@+^epdB9tzPZ{PJVL$x8pD2?cWZZ>~{d??SG5$rwaTNj9(`3yVa=ALnDV%`#cvo>AhEwlLwsi zKFjf`BK*LqUfu-G*UMtyL^Yzlq_$LMa2FCwM;6DVM>`6+}`{8BaWX~|*ydVC` z@_kL4G!HD(^-?z85%^_ijP{<-p1QX9W4RO#XgB z{>_a4nZSRP@&6<6_cMO~9(wm3e5dxgA2>ZPU2Xd3#3pmODgCKu9aFYMBApb4k(g6r{|MkD|9s$l zy-#HP0)g*i{9=KBE#qG!@HaF5tpfi!;DAi+_zz4C`R8@urRmZDn|^fIkV`4*pHRNslJyPr%8aPXed<(eUpWeptZ!tW@v+9ys66 zyMfdFwzKr{?QDiS1$;U1H1Lan+c~|Pfe*#^THs`tX3t9uzfHh9fsX)hC-C7MKk;hy zz2M(~pU2^DhIc`w^Z1p(M}g-CK9b|#0NjD^#lSD%@D~|=qkw+}9FXac_zzTv?2lc= z`ZwSy9G=SX69S$EJQ=)r{D z$>Ey%IMw%h;Cws$ zlHpGZc=z9_?dLFXlBelS2TtwhByhg{6fwLvoW|qJfKxlj0)8$hrwurjvluwv9u6`5 z1_A#WI8>UR0}dC3?CJe`wO@Dx_y7*SfZ<;X_+;SJp5sC0+jAZ8^MQ{9&bQlp89qnA z_cJ*Sf}HOd{|^E`^;%W_p9Op(aPq^yf%AT-2Tt`pJXQZ(Y+?8u0Y3s9B224+qsSru zd<%RKzTXFYAcuEvQ1O=p{Cwc#mv@0vf3MYh5pcyX!1;Q-hT$V1oW~yqPVHa@aK63m z2TpS9fb-+Xw+!Db;C&m_cKk=+R1VFa4B#a9ec)*vK8NAI2>1%%^n4D45dQgk7&tv& zmjLIVuXh-JwSXr!srB?IaB43hdw^3v@HTM1A1Gyb+}V2k7T|Qh6FA@A{s^4zp9`F~ z^DBn06Y!K~)z8lYAI#Y^7C8C&9pJp5OBnu(fUg6d27a1d|GYl}oSt_t@FDoCmG=(l$TD|`+;C#780jK+)2af-RfK&ax2b{0pyBKbU^LTtOaPnt5{)1aW zdQSj97vEJTMFR`JDY(z^Rznl+T>oc$2zrQve)a6+csd*b6wt z(}lpb`4kb(15WZ62=eoRllcQXE;1pYS0|5V_=37pz-?8tDr zs6RXjocwb(a6A5L{duoewY(Pt=gXT4oXR^9IA7ij;8foEzFw`&v+AF- zf%E?91DyOb960Zvk&J(#z|Ug*@dAGuaI$AEaNeGUz{#Fk;JiQAF!?tL@>`kw+XeYs znfxaN`9UUsk08I3$v-B@|B}i7LXaPOi)#P>3GxR3C;QJz*V{iDcvs+V;JiP_0VjWs z0nYn#9+N)7;xfSFVOSHG5)#0dHM4h-y`s^Vf^_5|2D?27x>$O_k!M=f%n8; zZM@hEoXYIjb))BqL(r|~rpxLxC;zgiER+Cd3$Eb)cxe1PH0f%nn)uyZGHvhxPuyq$k$ z_yYp|CBvT=@VMJlIfn&2mEoTYcqYUDE8x=@-q)$OXCcE!3U~v<^9B44hF>Az&oF$6 zfFEG^IsyNL;r9vne;B?)z|Y#G`r(j(U%>EB1iXOZ{}ynZs;<;aFPGjAS2O%v0l$^u z9sz%x;g<^ds|>Fa@DCZjTEPFw@Vf=vcDrilHUU4E;jasL9>b3b_*{nnB;fT7@8Q<_ zVFSa@5%7l@exZQB!thxFew5*h1^hdPHwk#x&1!k?5bz-kZx`^f41Z0)XEXdm0k2~C zKLmU&!>t*5KeRD?h=4!O@X-SPCc|e4_*V>HB;e*d)bd^{-~$=HNx-uh{)B)}XZRig zU&QeD1-y~r-wXJi4DXVu_ro@Z+Xeg}!?OkaQ-)6y@c%MAAmIJ(RQ+&`fIAp|tAI~p z_@e?|!tkJguVVO70pG~*Zw34bhFh}qe%QByITfqOo@Dl>w!SJ|jy&v9Xcz*%^p5aab?{>FZ-U0z1 z%J575J|+{1*ZLnBl#1^nUn- z;pYi>-+R>ZdIdb4;g<>cM21%jxR2p$1bijK?-B4@7`|P=A7l6d0pG*$j|BX$4F8va z{|FpYJCiLp{Jw+YrL=q1xM(c!KANACk^jf=LIIx&ygztlz(G^%1s@hN{2BpoWcWq_ zzl-6I3;44P-y`5}F#H1n|AOH^2zcCms-4!+dOHU)e5inDGkmOo&tUj00bk7U3ISiu z@D>5TkKuO<`11_kF5qu5{Gfn;&G1hIJfTf3?=J$L#_&F4^nMt_@R0&Oo8jXGyqe+j z1pGRN*9-WA3|}wce`NR;0e^?#FA4Z}3_l{^-R@V*dqTj6G2A>>U*3xuo+{v%Gdx4U z>li*oz&9|wOu+xZ@M{D-$ncE<{yxJW7w~^De2;+lct9=h2LgUB!+#L)e1=;u)cavR z!-op^a)yr;@S7PvOTZsvc!hw!%J3Ee{~N>a7Vv*De7k`6eo!s%K>;7d@J|GMBEx?X za6iNQT%`BIDu#~~@Y@(ZPQagH_&fpM&+vKy|Cr(H1^hn@-y-1swy5QONx+>9KO*3h z8Gb^*0}MA`tS|4i3{MsCI~blJ;M*8JMZga+yiCA9XZSS&9`le|u8jgdfZ>k|cqYU5 z2>5h{e<0xHzz3VKP78bp{%Y$3Hvmt=_kN!6x-^Y@A#H6sWAO4?x0#@`W>&25MJM4y^Rn)J#$&mIfw` zQw3zp1mr{#Fmv4GIf2@`^6Dz}?p(>;nT|+z7gqS|7gX0)D)(kOW%s(&Yi`-K4E36< z$eCH{HCbsgbJS}xTeBR>wJez}S*k5rGF!4#Te4)fWU01f$!y6|ZOM|^lC9d3Ewd$C zwIy3-OSWoDw#=4n)s}3TE!nCq*)m&lR9kXnw&bX`6R=}--F zI%F0(9jZxAhs-9YLp93jkXq$rRyn0sIhj>XsZ~y9l~Zb!lUe1ITIFO`Ii*&)m{l&R zRW4?gOKO#iS>=*i&eSR=Jr~ZmCsnW|doN zRR*&vLuyq9vnoSsRR*(4Iv6-Jm{l24t1_5X8B(hcu6Wu^jAf;@f%?G2is}-7MP5a9>0+h# zc4lT57nji2;<7+pX>EB;eRXYdePxY?R+QHVYW)?(3zZwE=UtLtoIk}ob7t|-Vqu^R zUz;*%=B(nP@e{@ujh~i3o~X*TspDrA6wmP%6;Ja{9j`(&$4?obKWlms&z5l0otZfb zEaT&1uJoQPN0fWAoXSP6EK>vix}~*&%0N|p_>!?G>CP;dT%9|bI##37QO}u`C6|~T zO(JW3((%xlt(ILWo>GRHvkS?|5h^3ynXURm?%-^BiL;}XI6FfzeiBuo! zi^?eT*ZWKSbpeH>)zh?@)0S421ZpQB6!O=jX@;-Lswz7(s){O!EPX45W7N8d;25=r zH0vhLo-%bQtgZ-*D=)1_r01_)c?tv7b{)w}rT)@IfwDRNilu?Pm3&l+fV3`Z(bPM~ zFGFiq zF6mXZj9f7$m7$W$7nEaip?F2PBzqciRS$@!=Bf{gye@O)T~ltft|?cU17X6%cd51I z3(Kp#WmBt5q*a$2r9rt^r?h`{IioaZms4IYXS8xTrIqP&MyX7fQ(jtUw9>kiX{_4sD80^1e`QSt zCfG&(`T)&vBV3wVUKQ=Ce}(d3xTHa`%cVL|doZTW90z4l9|)IAb+A~IF4eWt2g2o2 z9c;KK$}r(_N&5(wD@q^Xa;Xj$^|+%1H7>W>bGY2Hp2Ovqm)0Gvv~IQUbGc=GpUW*T zmpfXy+-kYP)ub-aM6aj}!@9`qqA6+&AnQ$B8BvBB7n>2dq%#6nhWxq8i1u7%sFfcs zlNzL)qD*qNIxO%~YNmYm>m-#DB&6w(6aT=uZDru{XHX(6kIm3cy z2K=?9i@asyt0=8~34O;_*duF4hg1VMhGzZOw6D}^df zR|d&-QHPAeYtei&ZY5Tz%S&0A4ecQ+O{X(DlUI#lQ<-;-3sj(tGwb~ofxM+vWfcLe zDu|ECsku5MPJ_-{f_t(0zBDkaypoF=cvL4{cY&AVEt@nhpJq~eK{{9`Nq>bG6^^wr z`pgMbl~vc~S65U7l-Zu4dQOL}Q+!%CsP;_q7S3E+qAuBBra7&;3PDxf(n{(viUKv& zwe_4ir%h(ooIXEf3>rsmb=lHVtRJnMz5p*;^y(vB4l9hv;Qc?f8Y^4X^sYt;DFf(6 z%B#5!Qhr_M;|LU9%d|lK^6J{fG&(G-Mc-F8Gf+n_Znz?;5$q|5I=!djN(`X(TD_F( zd6^7`%fxG!cxlXfwrGeBxx8{|rSV~oO4I3z&Wx;@8Fwnx0xgPakttEF%s*z=QF~nI zU#KkaMbsaKD>EV*U1G_kafbH892vSI(-OWYlUa%Pm*tq~pr6(~@oM|jmCsQ|vp=zcTDe z*;SneDM660bVf4K`~^{}?wTO5aA`?Jc`47(S!}#43YRbh72|7bt7{`_FkBTC7zu*> zS+y9!17-P3YboucJW!`Af#Iqs-$>x)7x|Z~rsFnYmSMQ0lWe@oiw(_9jiZ#|l1{Ag zY6P*$t3gEf{*_Tx7-^BzNti~}xS35Orj%Efb1{u-w{TgaN@PTu-$q-`%E}D4fRNr$ z161uhHA8NkAVxRu4e6SRSF%d^^H$dL%`pN&u1POMqKH;n1NF5lg=VQL(Or}%&|f!J zq;@?@<584r*Q2NiQFtxjvxbsi8$e`JhVF6_CZ2wJp%$*3s5G6<=uAO%QNUkOkFZ;* zO|_#Iya;iTNTS+^JYH$2R>lQNmM)xHT^7*X5-x0Hj!tD1np7j%M2m@9pS$Px*}>dlQ-f?PFy!tIcyPq-cGJ1s$?+Y#lxhufjnf!iUg12@YRFi4E@ z%Gd2sTanw5qh-?R^Xt;xNJnLvclsQ=bhlIbvd-;{^0Lk?Pa$weOCfN}QwZGAQV87g z6asg&6au$1r?|T0s?y>>WljCcVkI+4do|_Np3!MDru1+5}Q%qCTXt>Oj7fm-Ns2S{wnCysqBiWwrcFAkfB{WgRez1iX zt{NA!=hau%&NO-7GU9#8xskAzRw{xmiwv$ac$1=@v@KWQ*Ae z%x;#QV2~{@rCVM~d7grs#`bl_%52L{qugYeO`*ryxB;4E|Jg87%k0gCym?cwJ0o&r!%D)!#KNNKg=$RZoi(dS zjkN?UJ%h!LMqG805m&ur#8o#LakbqTa29A8arOBy;;O5RxY{C&xcZ0~arGH7;t|Tr zGC_^}2<2rFmx0ehE+ZbHyzU6)Wl@(=PK5HhBb1i~UPd_)>X(IHMt+3)Wx zBOalCS#)OPN2p&GpBecP>X$`mMt+3yvKY<4XF-|~k5IoXOf&K$)Nf8kc#KnSQueDbM$;ppf@b5?0*tg8QwCfuBTBfbMPFXh&y;2I4jh;`63jB2w$^#W;Ole+qbp;xQ!kt}TUNNaoeZNF< zCEA(P{H1V9CG2O3AyNwzOQBACF-2Qwq{KRIj}4Mj6&2f%+JKDW8D_M3!r8Ku##w@QpMKZ7K zrYbe5n4Syd^vW1@YL>A)PxsU}Fv;4>{3ti5{ggB(Hp*S0MAT>;SpsPkz9GLb3RjoN zDdPoBozE$|4ZUCV%uCr#YR3~fPf~VIO@zEg8MjQDmndW62@MY+ECDbAPpS9l6m{G> z4Wc3WE`m-&5?utIs&Xd93DUtR)YC_6-yF%9lqOTG-hj98d~RA)V#qb>9Z|XZM6JkF zEu~7yG&(gcng`GtB4DtIF!A%>Pe@78mE_7-v?$k!-`{wN{zT<w{tX1Zva)m00X=S8_%y^^N8 zW#x4>{`%5I#rQF%fb!5R@R!u3FUZQsO?Rd{>KCDDFUuZy|H6D71c|eiaumj5^iz z3nLzJ`2w$2xb=%--2#SDOhC4NVWhF4P`7-cDALw1G_ACNL2rVTzFJ(th$z>%fMKL6 zmKxSCj6C`Bg=Qbd61U5E6UxVyFO1i;)eBBUR)&#ws?`hQ9sG!X`imDvIiXOBCPCb< z5X?7HBQISTxfrpuwE;Drlu{%M7g2cpx`mV`TedI~Pqk`cyyG+$EsQt81K~9b<7NGl zh4K1nu2@KKJnaRG2zR5M%hxN6{0PexM&hYgD~$IDixoyf^tFmp@x`Tzh5E>lFL>Q^a@w9{FnFy3|QH45WBYX1^tiNbhG#1#r7HNpagk%*_! zxIQ7JDV41)Pe>V()d?xjxHuuD8P_JHG}SJ)G+|_f`f+8#v&>&1>A*RTWMLwb%&DQt zys~F3qFnGozGKT0QA7%>5|NntMTt|fqLdvCAj*=2Q84%sS0s$=kY|kx5>d#8^#~)^ zxEv9M!&W1Vj0lSnGNODf!pJe|1L~20_c|@xY??@2B8AnB1Exn6+(Stv}K6m zQyrWzrC8akl#w~5Sh86uBdeHpVe+er($f<(DcN!*FV`h$aU0#4J2fLmnw=YYxFH3G;mS$g;+`cT$zAU+Y zS(<%Wa{ID1`?BTsWo!0j%k9h7?8}zhm#x{CEw?XQvoBk2Uyf#9j@-T+&AuGDeL0$a zIdc1QH2ZSo_T^~y<;d;J)$Gfa+n1}^mn*j~SFpJ4PacR*DFs zXr;(NxvZ~coU;(!57`;&ZIKQLz)Q196~^z zMWo_twI*+DICV<#l4hmsWQkK6niJhnWpWznaEa5oRatYw+8$0x<4%`|ey8DhiAes@ zo>IAgD8Q38BMSJUG(Y?VgK{-eGve1slyfE`sfpfN@mmhM>O(geI&6YT3_nvs`=XFj znPoXC%9KpAaO6ZJtD^UO6pX5pDgKm6rf`%o@SI8+ZbQk!`JHvADjUVE(rTkPHcGWo zJS)FXbA`N_ezBHb6= z11@#hK<&|#&P~f9qojLfNg={D{IXKi%l;Kwtwjj^ae9SXRIS5TkFQ|mh}2i$0E-AE zrFnwlI_YzPLo6cQr@1`BeVXHi(HlouMAxS|Uc8TH8d2<|>4(xE;YbU4o22Q7w2jdG zBbsD*fJsJ?WltzgO5~EGmlcQ9DYu1dQe7Wr(jwMnhH=pf*#+t$7ZEI>IZu=_hNeC^ z>Ox*dn)*n~NHd{mlC#7zs;@oSO_9qO$)_}bil)!t)9}F;r_xCiFKHQR9u`F>O~>T- zX-!W4jL;-aeqVH-V(O;c7H&7FekLlSLo*{eH2Ne6r(tmY)$9nHXikHIH;<>oDzA#* zljw6U9E!n7*LLr)EZxXg^hOD{p{tH$i&o+Cdc|S3;olg93SE*-luLSR#2fV^2d)|u zbM&%}*9{6J6y5j~(!!x{wOp|mGXEf4Dz=&tBQ=?=i)Wa)6dF#RQ+wD1HW@}U`= zlGCBJFrbi8a zBXD$zPO&|X(|8J|UiGQSG8% zt0HO_c+s?rRGD^VQY1f2!)QVjveb@fe3>z!G(V&2&?Tv&@Kvc;S!$p}g^VUwCuPc1 z8`2DoY7G>rN+V0APL0`R;goXPjqb8kjh>-XaT>>8aD_V!w%&l#xj|=7(Wy3ha@L%Z ztGDIUbe$z?v>iDulQZO0RJ|RiWb4d8WF8n_(s$M#O#UNOBQIu&+Zq-XRUN^{>P(&?;)L6X|!)1dG zBSTbSNUPPWFkCjMFfw#13 z)F`1!wBvS`h^wR%8?*}7W!gka7*Ij1%b!9a>g01a9vL(~au#>rC4WSFd*FJ@_$WSk6UoUF;%3^9(w zI>cpMC(F2wV^U*{V^eCap$XCN`*Y6q93D95X!iTsKfZq~FK@5sbA7J+y081^b3Z@M zIsAHuWsP!<<(W$G5m%HKeE1EID7V7DdHqKt(O%-=mprZ;kzV_a_-I700SAc4HTmX< zMANz=0cIbr2EDT!@XQZ@MD)y0fJFApkAPgyGd}|o@*KIZ_$iQRp0E4hoSy>; zdFBT}BEC-<{6&z6?^Nn1L86qacQvB76+a6SEuY)15qpoH28ou>ZGb5G+-4XtTKIvG z>&Ho}1ixNp=r=+_gCp!mLd;e0Non9)s-s04Hmw8Spj{bseS=>LF)M0vogWGb4|2pS zuR(*Mhq@03e&!^+2Kup(D7DZ#Bf}?3@O!}d!H{T#+q)yXA@p8Ih;UuG{TfDu^{AV} z?a@$<;P-{|;~^uXa*43sFe3C8$VgXu|080}^*YFK!gUo^a|<{0K1f&@(Q2;u(}$Pg zx{6kFy{{fQN3@#j{q^BFtRA6PJ4S}9mpX>$u&DHo$8f@R6>TnuUh)VlBdq4Gt7tV3 zy}uFWDq78>y_UgGjYO$Ov==h?xshl&qSail&qr)4eQ+x>5v}H-7cEBCJlcEacZc42 z7@0#K_KH||w3o;4*2ljh=ZIEwy+s~5N3@!Uc9~(}hK+U`CE9LAEF;=}lbi0M60>BjgjjSt>)3Tk^D$W6j!15l}ARU{ba<#wV{kmMC)_C zQ5-o(w3sswZhZAm&u$sF>Sj}A`tmZBeR&$q# z*5{#3X{e*z98qe{kC{{k>v7}XG8tLnU`z08CL@Vpnf#u~NW#q#rHS}WlV~}jG*PzR zG#=g!ZW&=s*lz-GOV?u{>X`iT zjrh`evmK$;Pn|?%+?ET^<2GG5)n77d0F`S9o2BEi!!}COK1AV+PN^DWvAoOl= zcsWtqKp%mOTux{c8RjjtiwtL?wn1ng8J;I<8-#X};d!FAfj&wZr9M&HKp(D*oF}xM z42vMNpA2WBwn1n|8J;I<8-(_h;d!FALFo0}@H|o5AhfRx%M;pIhBHyugV5G8JWtg1 zK;JG9xfepa%W!W|+aR>R49^p_4MIE2usoqHW;heI4MMjw!}COKgU~iJJWtg1K;LQ* zx!poL&2Vo~+aR>p49gSRY=$#Y+aR>v49^p_4RW$8gZ0T+9mo~wH&@Iec&3f?lPlIF z!+vxn_^l+ves#rh|L&}-so?ujoygyo>fBkjzM}3J2 z6PBHDk=f;A*Mxp9b`PNQV<#*-;pwEih|h=o267_ytKjEhe;c|9*bB>EILYi2OghMH z@_qV^VE(h;aNbyk{W|hrKzHUF&db8eFMN_D`x9n=1UU=*I{D5%=r|c^&c1`_UL&8d z@(I5RpMsy|_a8(QU%st%q=p*;kreXR_Gj3Z&v( zf|S2pt5?$3oP7(><#_5PJj?87n0=bziH64*b_`#d8Lao2nZbI0O1;maJ2i8t-okzG zs^<*KJqtbo@77!RO_J*U8d7m~U|){?0qpmpYsX$#?Ihf0_RpJaG5M^?r;)0615*AT z!{0LUpTS=>x^?&ymOtTQvtMcUg@zXz&M`d8@HC|QJH_gKWHRFnU9zX%!in&ulv6O> z*_R4VfEQM|!u@wT&e!pC!Q=->#eE8?xR2fGyitt(Gvq&x?#P|a%fiYp{3dCe!?-j1 zm$29P*o*yMbT4A>ju+t<;58m+r#t&z0Y4A#j!)rjB=y5qlQl@iQBJ-D{I=q^5?v|z zgcXNyvDvRQxyQE% zl)tkxg6&j;zYFNj%ou7X;ZyLc=K%FS4}K5ct+()T(mnX;!LA9r{n+)Q>&8x4^%Oot zQop~7RKLA|RC~3W++}j7$)`;|X>yav$B=4|Ql#QvLAid~<23O>% zWpWu(@h?WI+}V_?dCt1IFBjb`%5~?x@C@m&%P^T{G6AV_2EP_8=ZeXXO`b=}|LLze zZ)DQ03#K^xK0tT!YtGBUs+VvNyvEB(+UGd98{Qp1!iPwT_aIXKIxP%ko&rse`%9{XAfEN}o979sO4Q2-Y^=Ag#?HKKL1>MEWp>`8K53hDoJ6r~z zg?HOc_!LS0-a{(Bqu6VmVb8Pg7`nsQyX%f{7rge3d*QpmZ^FC#Na6h?`FRC9&DZC# zdllVF*tzppxXtWZu+w~f4!h^kHDl+_U*VnbXK0`N+u1LJo8X1j9>Uv5YX3T9V16J2 z^TXsylgp5b>jC^FkpFesYcaZo_!E{t;kob{r;icO0&q6GJ8p$D;RhaIJd=M0I0If- z`Gr#zFZtPn?(=~sC|>J7VfN{P_Krg;o`K&B_TLfeclGxe-@iB1f5QFn>MynTAowD@ z+ke7mNvi)Tr0RXba1T=bdIYI*UdK-X?c9{bei_|s_z_mz!h11PI7^Z8w*q_3 z`*j(dpV2MD-dzWTi{MrNLj0`)7s9*kA?%0WLA<$lIs5X#x$we@M>vP1a%N%IN1QJZ z_iS`Cu@jb^@KpE{#L+<4{`wDlE)V?nw^+l9T`zQWJKt38uwzvscvz`N}${3J>7)|;#` zS&o$dRq{`KrL$3BJrJA-`|x@p)8 ztNy}M;dMTLjrz<4r^CDFci~i${7pd0Ujp{3&u;uBqKm=at)KAV9l`c_3x8w419uFy zkMN~C9A^XldJg$GvKJ}82aswP;t0sSrhguP2dIAv{@Tzzhd*J(FWgL0e9xGDgOxvT z8s{Z+TRr6q*O^@@Qsq5jaye4#z(S<_`H_liw&5(~4~ciW>8F}L4Oxvo33(^>0~x{d zUB@ien+(QP#?bjr_yWAz>rMEN!RO%J_7gq@ukqIde+JwK?~X^|WANHXCEd-w0DKhQ z-B$^B!RtJ|75*^zO?dabE&LKm_1cM4J)cHa68~1y*O31*b$KbK_Bo07u%7`J!@K();X;ziorhf?{j>`|3()0YCoDh0+3?l)$-+-AI164_ zyzq3{;3osAdZ!ppLaM*wkSgc$)ZqDlHhw;x%K2{U(D`5ZB78sncbWS#1K{)U!YW7j z1Cr{00z0j%`4^piedv0zbJtnn4wA~-g8T)GTr-9?( zg_U2}fp0P12OgZ_yeuqU_~R+TID4nCpR)GsL)U|yu;LW%g3lz5Rm9N^J^(K)UU)xz z6Ml~n$6MgN@WP|ug*)JPf_vZ(g4^MR#S6E>?*N~L-wkeo7Zxx4G)e7Qja^@Xrf$=G!h*Q>-i5nTdy!irP)iqCl?`IZxu zY0q`&R$(Wsa)ejN59J;vj$-gK`LQ^Jv*8aio}MI*x!^2#VZ|Xl1HKEq13m|w2`?;O zI2HZ?xD`GPoB}T_UU&>iah{*dI!pWIbN{@5GS|nGS!b<1h5O(YSN>e~r{G?AH%{Rm z_-6X)_1|z`4}2J2Smg+J!MA`9!k+*igclYs+zG!Ed;)$ycrU!Lc;OdFin9s30^;KS z;J#1><$nY_uu!;LN^sVVZ|w&2%k#6nBTIlfD_<_mx3nckSyy_dIsOic`1=K8JiSQO>jA9q_{PBisP5 zxLSy_1-upBjZ?TDJ`4Lc^6v!K!3!(Da5a3k@y*~$cwzCvkB}5+0e1Dwn`t}`Sd7k( zov`8*o(bQ_`9bAmgQvp_%a8Chc*XTGan1!#g?Hl=PKWQs{(17x0^bHNto*_g;ZGPp z8$1DCSiEo?NpXJs74~(+)kd6`zrsH9E9~nmPT>>qDb#N^SHV2a zSKw}VH%{Th@QK)Gk-rbz1uv}p!Uy4#jXwoG052?F_!W}kY{9OHxGoUq^XPVBC#?1q z-U5G?`V~`719%g>u>1(uz$>m7iSuc26}%g#@MG|&uwP03C&BCBg_U1;4g4A7w}Bsl z7ZxvEL{gk{u`4I8jG4|pKe}1i2`f%vAAAq_UZk99;52w)`4LWqS6qX{IRl&m@5U*d z41XB=-Q>>zC&CLWzin9Z#h_ZCw)Xg0Cmv ztCVvDd=Oq(euNLeE3Q@FV*Lg0hj-%??u4(#zJvUS!F%C_m0!36zRvh=a67!Pc;RM} z+H;HIAg;^A*?_J_aaf$f#qi~fm#d$!?*p%b7nUF474VAdAaPcLm%+Pn3Kzi_V?RLt zQg9)>u<{ERz?T|d4$g-c7B8GdQk=Ib4&vhdqlASog0tb>IEAwm2lm1?BkQC?DiPV?4s);iW z-Ia;d*WwgD3m->6O#GDhQ6{oqgcp_{;ZyL6D`!5}1K>V*H%{Rb@Po8ZGWpMgd*OwZ zU$_U}!Jqhx;BI(f@xlj4it|P6%8BbBadx149y?*Rr*ISeLHtg~&$Hki@WS#V+yJk* zT8Og+ycOP!Q@9>}KlT~q-wCdR7gm1ZYWM@jH-jtTg~bc6A}P*=*sUP01n#dFqML`E zu;LV+0Y5;#LzFWMoCz;1Kf)RCimRVEbHF}$H%{R+_M_=Ol$l?_4g}+F?37>JD2JV3umLK76c*Rw?fcquj z!|-mL!d>uZu}>ub3GhL9VdWP-0Ds>2KJb2cVe!H*krZbWb~(h=PMpo?c3>y0_7tv% z*M75|I2yp!@b3OoxDx&pe%BDkCU7adu*wlGhCc%?hpz*#f)^GqTm;_-Zh&6~E`%2r zFFcQ=IDLwPxCV(c6J46(usDU2#S>>@9`DbA6U2j658*iYUi`jAIZ5Eb6!t?_j_^PV z`yudQ_(bq!cwxmMd>+0BdqUUAhC zXD7G~-i=duH~eAz-Zsek3T}ZHRyo4W@ZDe^d^>n2ys&uT2KX*;4*U-AR(N6Y!c`>2 zS%lpH=bzogxdL4wcEXBN*blF`P7!ATI0xR1Q#c!b1%4+|&OGo8cwv!u#=igg7>VOW}o8j&L!2KDY)n>@tb#AaRzXTZx^p;uJ2BANB>yKj%6RoG(ANPZ0LQE3Om7xeS~O z@5U*d1K);y5%~+j+3>=OLpTe*-S{H#40vJj!s#T%>0p;iTzYPrfNt;>)+LKmxc`>m z_?)qj=ajdw-od-$Q}`_W4E)X|j*r2o;DuF=a36dY*bjdZd;(rryl}VtgIB=!fDg;R z@xrf@6lW`T9mEwkoA(XSwO}W#_7rZCAKI&hIGe!@@>xycIr;aleaxeHvT`FRVC( ztKog%R`?y@N_b)M!o~2Z;7<5b@G5v=@xqHqiZctl1mfzUJ#)~_z)o0k2>aj_*C26b zf>Yt$IE7Q-%c=iD%1H+&!V9Y$;RN_fa3OpeI1XM|yzoFW*B#(e_`zi6Su)oh#tWYz zDbAzVb+Zm#CeB`Thp-b?oWh;(1?1Cwe;vFRURdP_cfe~rR(_lNWZ-sqcYF%B!TYh- zeBTe=4KJ+x!maT6#vcH;zzd5Peww5>tFh}Ku9@`vCUoW42`f(FtG+ZdoKNk?$ad3r|s*6&nMxB@$%Lv*2g6J30_!!gwMb$ zuIxqJM+2XNcjFZ9gYUrp0QoP1PsqRJ7w(1MYkWVr2VPkIh2J76&Nl4Mvkv9*9IFG} zZtR5Bp2E%WT8DNLM=Q7q-d&f3cfc2Lo_jrp>pbvQcwvj~`tQ_QJ9ko<-7oOfyVQGwCy#YI1_f zamYY_;WvYN-u3|ZQ_v0G%<~ek+Cg~W=Ahlhn>oLJkNb$U$0c;8&`DSt)S zuVCJNn#1~t?g8wDWiPxCz8sv$xLN`B!wZWS&Vko^i@PZ=ADj*EzQ-t>1z(SSI{BA_ zXTS?9zi=kJ-itgzeR9DW@a}t(!l@*+!vvFwNX0#v$U4U&)J*@xp&LkKowN57g)hJ- z<2UU=`Y)0D*YLtBSNIG`?Qjw)f5))b`=tHU;{>{+*t_qS3Lk;j`-1Ng=W*~Mc=!E5 z;ZBnLy@Hg#-AKLP)kMBd=0W;s<`udI@(Bm#6?iLrB5`dc&Yj>*@WP5yxCXu&dbGWF|4cLaO4UxW|As~=9{?-=+kc(-4KUn8kruOQV9FCyiC zH&Xt0l0T06R24e=cA;w`zp&~jyp5#y%j>bLLw^~&t?25o6PBIuVkZm8ABoG5d1t2jH8quS8dh zy|CzCFlyU7nZ$nKKy0!x8bh{?1vW?FPuYC`LmF!S0?u5 z51^;LXQ0c#URd_R6XDfg&G<_LPk?v(PdJgJ_{JdR@6)lt{yR*34!SF2hx$+W61@8B z75rTt%Y1`(`%m}-c=gxwi+N58J`L~opYRcq;(rsn7UubJ)|4s#*27#cq1#J7VZ|@p0pAbKf!_~) z5nfol@C&5Ji0e6|;(G?EdOnF%eDz3`Q)%(l;HL&%xhFp1H6*QLOOV=6Ekr8bc_wp^ z@-q`ZD<0ta@B-Egbkp%8tayae;5A;Kp`5AURCss%3Qr&@u0*8#IoNBxd5imkW6%x8 z4~<{pf%xF~ZO306_%ggZeuXc_2mPHx%HK)s&r*I&k+bhKx)az7D?Z^~_y)#%JA5Db zD7>(E;lm{Pc@sN*uI(J3a@VVyE?R+ILvr(JjNyT_1%XAgR23r2NjsK8N=jqi z{mdJ5d$D)p6z+gmT$hP+Ke!#$G z&fBZ7(|J013C|1Bt-#JbZwnWa(+;frD%*z?%(>^Pgd|Bu+$>;97gfmErE8S!Y z_NlbfAnlflE*X1a#UmU8ul{T&-UKk~Yp8#P2Sx|Wzl2mg=SBzHt&euQi0%XI-F6c` z4X<{33x5~DC*j?86YeD`zN1L_>%u;hc#0V>htVCxURd!7zY4GT2Jp8Z{E8<&;dYYR z=LMwv?XviE->?pZ3Hjyp^Q*HkqtK%I_oOQ#+4a%6S6a3i7$_ zE?j7Kx!Cm)ZwvnY=w@RltojJgg3sW*bZ#u~$$)3V3+p^3oJmrBrXp2tD)uMHzaM{T z=u)s3mOtSnvrjPl!8o2P!5_sw2Hij$&y~zx_%eJSB9LR_%?vq+7% z<4Cnf4^r_QB7Xw?Gmrj1g6=Ky3oE~HC%pRW3gy2J-U}}*Uic-F>eq&pzZUE@ex`Gu z?0Iy}*t_FNcqhEZPcrS^3T}dT$CL0@_`rT+8P74m_3-ZgL%5Elaw@SKSj2grxNFdr zV<)V*gdc(Lp`236DFv^D7ZxwP9R37xR_T5ocnQ3)c;P~l)`1+P+A9Nlt-Gs;D-&Hh z_U<|?oCvQttKpNu3Gi;*!f_<|xe^;Z-)zI~(^&Rnu|ww@;g3nG-+7a#k;>OgK79_U zoqQ+I^^ni~T#|6N*}sL|e(L!#^*)5|P3(kKFX7kC?j`JcsjrXwT6@vGh@G(PgkOMf zBi|+byaIk6URb>FHj?7nYI2jwYNX;{M}D2pRub=H=+=q6g(T?V?_uoIS@Z~{s3UyTX& z+mnISW2f`rJj$JgE(1IFyeRA=DZUBVY5iS}-9&Ur*tzSm@Hmp<8yv;`apLMEt~hi9 zqqskA^%cIrjp{7yPGDDwzi07x5?wEL!irD02VV1{4?lh2Zg_W|2p=M8{=aGRHIpq! z#rv$uCX)>&w;&Z~HU7`D9#u2H>d;l4zHc)$t9(~iG5@MU;+ofp19!SZ(&DSs!hZzujE z*q=mq40~bz_6Q#$$?gDl9q7+vcM#ov?1cH-Bm63f`mBG+QNY;Xp=u;La@Bi&8hDcGq# zJm1`xiY^&Dw|>HL=4UTFmr42y`4K*k0Y2l-AfMuN)@QiaaJS(u!v_p^8tyRMX1LXG zv*9Mg4TkFtR~s%jTx@uS;UdEYhW&z-0BgJI+mBRzb-oSM z-*BJdUc)-SitjRfz;LJG4#RDRTMaiGZZh0pxZZHJ;c~;phF2IaGF)KTZ#c(rmf=jp zKEtVolMN>rb_@?tnLz#dFHnEOXAJil?lr9Q8UNzC3?DGuX}H61o8eZ&&4!x{HyExr zTy2>1lf%EbV#6y87a1-v>^GcaILmORVV~ht!^wsd466{;m-B`Wrr{NC6ZH8M7Hyds;++eugaJAub!^MVI7%nngVAyXs$8eV6Ov66I zsfLpcCm41N4>0Eg^+!IX@o)Hy;XcE?hPw@S89rdR({P93Hp8ukn+-P^ZZKSLxY}^J z;bOxp3>O(LFzh#+V>rujreUAqRKv-J6AU8)^_5?if;iS`HA$Qw*+4tEep!bDy!?vS zIxC)aHqdVJ$5hg`J|GbRnStc-U%>tku~!^_VEH5!k9g%5ul$^g5)lrU=W(h}9a!aW zM5_EJk@CA4=|gToDxTj*%6~mlan&H@e-ly;pFpadA0bsvEfNtZryB_uci3c?$%7^j znA~r&)8t;09VXjNwwc^*vejgZ$!3!~O*Wa_VY0y_Z4rozIt3(c5s=j;D@~T0EHznd za+S#yCYPBkGFfP{z+}EjzsX#aIVQ7BW|^E}GSg&+NuS9ylc^?COeUL5G?`#B&LkpG zPf3k~V*b-O;l7eOEspz10bFEK_miYAFqwnYe9kthdq=|DUkb=fle(WIz0YKt$-uoM z^xR(x@Z47l$V8L6ccgrACKaUcAomy~2TWcz*>6(!ki?%idDi3^lc!AfnLJ@q_mz~d z$7Huj-9wVT%j7|m2TbZ7lK4)Odrfwj)cqy#Z6^6DWWS7Z< zCJ&h0Z?e z=}(!y&-A=U74Xw*`X1AFoBpuryG(!3^ao78-}IfP-)s5~)3=+x&GfrX-)j06(>I%b zr|Fwazr*wmrr&D%dehgLzS{JarY|>rsp*SNzsmG0Oux+ZMW!z_eSzuoP472-uIY13 zpKbaq)6Xz{rs*?G?=yXx=~GRgV)|s$Cz?LN^l_$lOwawVKz|J&)$f;)8V~)Zzi9gN zrax=?Gp0Xf`aaX2FnzD-xi1#*-);KCrtdQSLDL^F{eIJTntre8J51kh`Zm+=Hhrt< zTTI_<`kkh4GW`zIH<*5_>FZ5jXZmW>SDL=u^rfaRHvKBouQ2^G(-)b((DVhS&o{l_ z^tqckF#T53*PFi1^wp-XG<~`0OHE&F`c#vdjie^hzb8FI`Xka#(jSwaCH)7I z>i=Vs?pOYVq;~le(sQIgC8@psjPyL|Ka$jr|B3Vh>Hi_Mk@k>YB>iVnJL#vSmq`DG z)IoZg^a|o4!NdHEsKc#`J-EhOD%zm=qQ;Y*~6q%V`SUVMdg8)*_r>&RqMI_aw!CoB&|nZBXQr~8GDDyO;FU%j!7JkrhmD2Tw}+&Z@g(D`Z(@?Kj=93 z-4?W8fW5wZUU{G6nBM{j9KVRq4qx!NnSDyk*MrB}+kR&DFU1qrok9I_if;Q_@c1Oh z|HW)>8_PWl(=X?Ev&DIg zYB4{}@tfx79LFY+|wNYXFFc_CB~1{_f?Mn z$$XBZuO7|}`dP>EzgfA5IR39zR{EEDW^2b!a{ME+Kh5!JJD!*7IBPBM3mo$uXo3E{ z%JE`5Uhx&yAv=DJs3cf$K zHmT!ywAK9t$2Ys<0r{5sd6wh9w6?m!G2dk!sN-_t`g@xTd~de1z{*O(cbVzyvHgyf zTY!AW=13y^m&|4>@-frD#+>-A=1Uysjt3bJw4>Uy1>MayUj{k;z8!bZq+XWyg>SGH zQwQ14&0-zDDd=YzerC{@Nz93?V$KKVzaIU6WE@C;`TO*>*(9uF446KP;|+Fv;s-q6 zvg7hcnD2^>`B99|LdHZAbE1<6xEHY*KZbJ^{vV;NuM&rz>HY;aI@WXZZ;T5b>sk06 zrq}b~1&j&V=pBk%kvi7%>UZr}?+A=b4f^kVkg<*b@w8O|$3M|r;<$)otqVFX)a2Q$_|7XRJ-`@w)h- zV|}*S)pvVr^uDO8_j_zU^z_9)dg`^=Q?FY*e*Vc5&+mKUY4Y^@=M?0Y_0yY&j=#(t zarGZ~`r;W+U%c!YhrCM=vVYH$x7=g%3(xU?@Yp=$(f>Ek@#7wwa!<@BJ!SEkq)@q2 zJY%xfGsY%)#zu)}j{MA1uQE@)nmjRRZ|1hcYo2)ioo77%+S3<*=IM(JPt468KYVT} zrlHPrv`0XPke>6VLBF_4=u2UNm~_ zzu}n|4|?kLrpM13PrWKV@$kNJD4x@vcxpXusC&w8JL@yN?s0=Bp4Fas;yv;3{gom6 zzwwl{)-!j?JbvbT{CwoG`I5)x-#mVP;<0J>tO>vLtO`|v*nGuf^R~y&+n#>c zJuA154tx6jE1vaV&naA+%bq^v^Ee^B-{a@J$Il#3-Sv3@*Uy`tzTo?ALi#zLIrzS( z4e$1x3v|EU^^@g^=ZdF2@AmY?|MJYicRgi&#pCB~PgzNxvWh)6`i!+(?r2XNR-ttD z6Fqf5;fW{76VL0OczQkk^{l7AW_$YdW{=H5PhaRe1>AB|Jbm$$=lpWOQuExLYi%YEB(tnYGi^(Q^YM?J?*@TXey3g<6fx;kU^x4&EX z(8fCbK5Bl&+PaDjRV6i>N0=;L>ZKOXU;Oa5%j)LW)RbWO!}&!Ie+ec6VMbtA~{R`cVsr4?0=E-9<4*_^jwW7S9tGAt=8sjMS=pe2GW z8Od@<$rHi0B1qEy0V%jWwjeC>!O&<-&k5vR<*V)5*>^dKMOWil~$J37FO_k zxqb?J-lvRZCTwz6;&I< z^Wb7xP089HmX+phtf?W!iZHjB6qVGJtS_UM8WO?!jwl;w@#oc)mDH7$Vz`J5B^v1? zY=`&HqAJWbl~hJET2xh0S5Z=#UshSNIg0JlvRaMT{IYc=^nneE>)Qr8^}DrYHTPFN zTJmVwdgfD<4EZHY+LGEb0-yz!)|FJ2Sxuv47#%2)^Dg|CTJXueze>kLIfAva0kCNO z`m)jr+J-R`&2;z_jqJ`1K7Vsn$@+@5R;$Ri`DLXWtILWu)~qdO$kvWDqDG92nhm8J z*HZ7zEDV|e*QvwejqBG$Gg(y1q^Vd}!HTe4uuT4V9H;fs;wV71??Tm8mK%siK+PIjX_KS`pd){&njrSigqbtDETHC^>X4bBA$clcj5G%F3#i zSCl;w>~hYzECi3ztx@cQYtc{@Bbxlyx^#YNWM`av*eAHF zzZR^>b}Zwyp}`T|%pJe^k-dc0hTw@jG+ly&fB2a>{3JH)wCttv6YZSrH48f-dr5qR zosCEE?raL2ibw3f*kV0YR#LmMCU8FRW(+Ml-jno*+>4h!yyh`Rzo{R(f7yI@?>9tg z8|PgCzq_Q6*|WaH&9!Lx{3UD_M_A2Vy;dt_>GG1wjb#fqdmTJjwz+mhAY>kzn~+0W z$51tf?<2e>p<#5rO@yNW1Lqh9U0@wv%>H0lQFKMv#=_!^R>!KqViRl*_5>qpwRmZ8 zG4k+36{EBWdz29#hF=fa4=xYx(5;x7vbvIr zk)A`RN3Idrgp4Tn{;+*|m`Q|vdYBD!e)z@0h?0h{1|!JeXdJd6jIf}AqOA!dEW?(C z5j>v4R)%nsVT;2EIy85@OF%T6;qz;R)fbv#Bk~Y`*mMdvi7*GkjiL{^5w^qoC$yy; zJ_tfa5%=lCZSBMoWuG3=HZY2#?9+#5_yYU%;TeWUL*0k%(}&x7YH3$1QTUPj^eARw z`}8Pw;rsOAhM{w@yBLq?!a(!68=SyCeRzI`)zChDIOSb=hW6saZHDjDhjXF%5?Y9Y z18+oxp@}(cpFZ5xLy`CCuF)6Yr@J}6z&?GrY2y})($>BFt?jrw^w?YlH36UDi9X-7Q5?Wl7yS_My&dyX&}M!-h(2 zhHC4$R$INc{D-U8l~kY^+H!@K#K2uP_v{eSBGReBYdCx*)?DMJUL=oZc%74i*X@nZ z2wv;qL5w&Zcnw1pj}&2u9C0Fu=wReoAfi#&DZpzL>SK5PAKJiHR_OLy@e4 z=K>qj;7)OYcDPtBUdkfE^=)0*w*y9|4_LDQn%b;u|UW!rGqv0Fv zq6JIK>U7~98c|pV;KK_Z$Xh*hVH8o#PQ7SBpqGQIoKqRRm!7e@XvxDxs|yz`T{iL( zX~<;J;-$;xFV4GvHJ4J0<}WC`e`$2vU>sbk6+E1O9kY^fOH?8V6)>H*9B8QEK`Ttuc zrNi6|EeK(IjS-`QryJZg2^AcO=mytSrFQR?+E-R?T0e8``ciH<;$x^(?+(VR_jW*N z`{Feiws*Nf9Kow^&wyO8IRJFk8@Lt@pzqdIR4%FwuC@WjqAueeT4`xn>CE-qc&i*1 zeQ>#;4gm++0tGion#Ol$fBoN$7$?5c;4SV&RjkWAPxygdtX5QQ+VDdhuU?&#b7xql zI?oN^MO917)^4aOtzB5NVSS)ozE@FK&PC;1a~&8RbJv&D+d)Neyvz+NDtLjrzPfI6 z@aBZGy0oIUx}my~hSQ4d4Boe^;tc!N%6yA;hGT*HnY~wMLb7&*rFUd#XY*Qq^5LOSP?g#HiXyLKDv~-5^VgVDV;?Bzmxk>Cm#q`157xuyDWO~s=XRr5<9+OWn6U#D1fhTZK6+@fVk z=iM)Sx0;Pd;JGB{hV|8vvJgb{`)H9e*qDh#4Ic{bRmF8JBVAEN z%20c~C*#-25Zup1d^{d0m%C4k{){|QuHnIrxZ;YGA=FS`sEtNkfnC?($Sbi(#x1MJ^mrm@3K27SZtz9oOT16oBN>EdbZD&& zj{8Wqp~cF3FYgD=jkmFpR`-ZouPCJkV_T{Vozh4q6}9)*S64(Ozwo{+l5ZQu5uf%) zvahI(xKoR4>aOV#??&%% z$W}0N&KqnBBV}R;T>q7VNSVrR{9Zw%Yz(>x+r`M1H{3Wz%4TgG_U=F=+u$^gzLAWS zr-Ey>C@&U7GOv#Ec0nXtchb1~$VfJ!1u?iai)0eGE)QO)a`#eKv5~B5J?|-T3p~&( z5e==!@-}j-YyHqZFQTpYY`{Z&T}21p zNPPo;!He#QMm+4Qb3@Lb>z=;nhMis_W)5_;cfX|IJ-htinJHq{je(uj7qhLXs+*l1 z=-lf!PNXjXKXc0?!fEOMTW>`Qk?MVc%5h2^c_Su5RA02IzL>W%EnD2s@IE(;*qc#C zQKZ@idtWu=%6zq`74Df8_H_l8P%sVYBs1?nBB?&FSOGj-^e z`S5o>X5O7OCv^9kectTs;WvJka-yx7<+ZpQt>g(nY}jqp3<_M*(Gb%t(!A*gNk&HefrC*ywdLQ8h_xObzZA?di0+!i1l4ek^U|g z^I1bUNj_QQ|RK9V%-&s!J0-aXPsGJ`?=GGIO~<0HIZ)>PE3<=t`f zyn1zE;qr%uit*v2XbEE?C49cRR`iQK$_Z*l`lv4EyYQh_ux==xNPq75SkL?W6;?VR$cca1-B^i76jZ()TR~{`mNjqolQok3i{T$Wi}h;K$amVK)7L z9s8FL4aEKNw$9{**FG7z*09ij<*3tj$#MKwQl=nB)#q={cgn|>U;E^vYfk2Od;M2p zeB$f#N0s}@bNbqfH~d%Lya(Or-_OrP^H0~LKYpzPU%knB3xnRCj6ufK=Wiija=HIX z>n!0d`PV-A*|l$B|K_#P*e|!T+i!vOl>O%cn~rO7*z8P}M`s!lO#SwyyOzHDk+XbM zxep($*Yy9NTvHUgt~qB$O;aR)d@XBXOy>^<;{K@rXG8TJy-+p&gFuaQ0v`QWo(aU{ z#)#jda%|QU*$@6op31NJucQVd+nlc!DZb`Rx%SBq&@R7A@ovsfEdSc~GryC7?UHK+ zL^<>O|NY9fYFRxHsKK|XLDs@4@CyR5ek;&cxkNlN!luqKL^v7CJISLOeT_JN|F8U4 z&IQ{4{wryZ*XIXI^nr#x$#)MqL~Aa(r_ZM}t@6Td#fcyQ^bb?>*zclIGkV?6XTp*T|>a9{wwrCkU(0 zetuPbcIGPM<PD?KKsXj&9SRvusK^Tn^9Bi^S^!Ro~7>&I1Qu9Rr23n z)&B>ts&(JEs_0(7s@VSOYJ&Bc^SA1=J3n%6{)=Dx<2L*zHtwej<9_$cZE?T*)uGnT z(aqOB`A=8lnn$- zlrORQrjBc$Y@?ixZ^wY*sQZtuN>_h1b#Df~Gw}Uiew|85KRfT--2b!0*3p@d_5JI4 zr$09KvBw^BZr+{LIx2JBKPu8ku0Gs}z|1r(6zOR)3dBv9e#6TZ>%W}sze`}%o;G1|@ZXRA(6Yvm|(7Yu-q5PKexT%S| zu6;7?YQk=nIJS9gYp~SGeKiQK1#{&gfcdYPVIvN;-8XIE* zGvnQl;%|NTqp?1X!7ZQP)a+mQ?m%|iwNL6kAM>*2Tw=?$PpUp2-^$k%XDC5R zl2fG8{g+<78yQ=l|D$~WrHM5h$BZgZEgyCJmi&~T+>XB`YR|h;0^_3a^U=-zOHXD6 zb9P(YoAYC)I^`+5w36KGvA*Z?7-r0Cfp&>y=BE63RQc%EZ(qt@>NF=WjM)`OPu%`_ z41MPNd^G=0{`_BvERmzs&u`-YFMXcWk-&;`%jfxL{Fe&-#E~5=`BSx=#hky!jd@Fc z-og}W`n$oD7LDTH4sN6T9$zreZS#?#SuMK{&F=j{R_sgT0&xas_N=8TEu+daX+?)t z{KrAf=VOCK{QnPwYUA!f&GWw-RF57S^hKO&DXp=Y&Ocv0t=Se66XU2ZU)p``lUD{c zK2rj-rhQP~uXKq`#*Nm7|1cO_8?M}RB7U6J>3v8`Rn`x^>i)t_pwos5*C* zC?C`+Q8xI$ze+r)=xvp_f6#xaDiDwV(t+EDtrC~sT%cYVxk}8i-0muofrl*fP(L-& zDsk)J$W>w-d5We)UnTBll^FO;tHf_V(<*W4Gp!Q8`s~^#zx-@ymH5SH>V@Dc@&0Gd z-=3xq=CMw6{&fuN#OQ@36{CNh;%Kcn{@ME+r#T56_k5;xqmy;x@Be0K-FW-6GZh-A zKMSy0RSx`(|59RLyy^VvUs3&S|E0mZf;~63JRx7_(U<<_+JD^D(BQ<5b4HCC6~nG3 zj@@SJ3cic%TI|ye#4?KAQzVx0h}oXQQ4N?piJiAwHy)z-3u%wt3A9?xZut?S#lj_z*y2HR+h8c3)qu#0XLQ#1j!_RJJOj>T1NUlsg#skrWbvD zx_;SE>eE%wJSSKk-yMEmZTW_cm8HJ2`m(ir#Mrl?%C{!;2|r(5uu~RSRQdwZ``qBm zN_{1@RG^$U2sdo3t=z1P!LWRf>%*fneSvEG7Ukb}hkvGXf8b65AECLvoiAkPY|8e3 zE6a&k^8b;7eNXWDJzsUrhP8UkTJ@+;UW2t99=j(db(z)JS65Q|L!aKO<=rrEU5EA5 zGXGTf<72rGFCBWxD$qpprp{P0WATjTBf2v%GrGBHqk9Hi%7t(>n6EtuVSbO+neV}8 zz;}7De(Ton!QTfLdhko&3~;k9l01Lwcg+s!{NK83ma{2G!10^7ZWB_T!e{x@ z@3%U-7T56~@*kJ5frM~$ov&-`k$=j|7R&hy^8Oa^YmWb(<7*uM1Rwuq$KRozx6-~h z<6{qXo5FDl$3Ny+<)}>E)3_7;B=l+ywH0)L`v=TaCf-1tOC{1d*$8eijVUt?WoV;#rk+c!7G zZ*FUxofThSzI{_d{1$(FSK6VcCZF4r=4?wlUXp%jep=t2w37|#ho(&K+jH}gDQSJM zqp}*SiyJp*#y1o<*0eTmE|0BmZmdadtZT(*Y;8j$u4c5JQlV(E54z+@rm;7b=C2;t&!tDH2L(Nn@{XXKRGI0@dqm6 ziCo!ZpGb&*;(FQ7O__Y`?a4=;Z^9eFDKG%esyyYO~e&z`iidv2zz%QSng zldvTresfM^4gHcDU*8dbChaIO%uhdFLZ?uX^kaL{&hNRIT!)@Yzc4@jXi0j*J-)`x z4e_&A#6FSP_(Zi1w)h*jl*d0#B=zw%nbQ1-UT%$TU>LO0fYwv9%NwiP;_HSw>jGUy zFz-+9c}kV-dw(*eglamQ<)nDh&MD5shLgp~F`dqdF)s#(T>b3SBN}_-{ga&IV?Ic3 zD9d}-C&jm%30b%Nyg%uZZ~TW@Nte5le%CwZQh(BK&m^5KN;=y+=4^A)m1Z5U&l>-0 z-}uYDW6n9_*Y_s9?;n5OY0b;&d?&Xh*58~rwenlj{@$dI0eb_suzdz}tGf9_= zk}ma*`LHYLqu!+T7@SF3-<9-Xa?&{``Q!ei_035i7bpEDa{LG0xp)6l_wLwE43k=8 zbNA1`cSr1fZL!5k?{_Iq=Y19To93inoJso7pR~Sh{D;2rzoIURf6OnFlP))ms6sDQ zh|TTFn|t7$Ibq)J8h<%C>F1qEYKne^{d52LU-`zb_a*(dIO$xV7L@fV<)%Av_wCr8 zyE|`AZ{DPxvAHK=tCKz?2H*IPvXY$n_M{_^#WU-^uNYowWC< zdt2VQ_W%c@?rY1tZ~yijA~_g4r$y9#RI_K4|AeZX)0#JD|5J0i@+R%i%ju1sJJe;r zrQ@i0f6_U>DtobCrGz?b65rso>*jC%=Rpl5r=TmY=y1-#?YZ4~b9Tnw*O@nO|5LdK z^X@yK66fq6HK%?1eeE3QP3pZ*Ya|jM|9bBMu>A?ciw$1u~~txXMpAGrx8XG@Z1Bj_qA+i49w}w zo4Y@65(WqICUxe`*|FWmCu6epo!rRrYowh?djHJzM%vrC?eEMvkT<6}Z_;_j_B+=d zbqx6To$>vQ-s+^VdDjzr-;Q^3_6C~bAYs3g)BDc7OqQm+`&zfpQ7tHI`@ELehIsF2 z`MERxw+@4f7`pT3?u_*_XS?5_o75>SjDb8FXHHLS=a{ou5xjMgD!vZh|?uT_d?QmTAsNbLUsrn6+aYMt96k z?a@dY-w;Euhl)A6Y0hOxa(kJra<)+sE0OL61Y^4QJwja#aj+aW*IDg!tOv8H)31mQL23pu^(VIodz@!k)>T-H2Zm z@kXu_Tyr%XOF%11@czMpn9a3VX(DSJ=)**$6JMy-ggX^pQh-hNMYV+}hB4mbmL zG;T^(B-$gP>5Qk9<~U7Ts4@*`JvDNV^kO|a~YD(Iv>t%0k ztjmdiA}~XLpJ88ry^%>Rrlg%2l}<>U&}U$ z{U>Ghvd!yvJR_=@ePDV61CJOs7c@TZ-L{d7y>y4B`DW+628LXEU-8Wh%hPX9=76mu z6YVgOyg#{nPa2wwZ>OCpNpfCHr^+;-_0-6T(-BxPS{t9pVzkHB7B{ke-4fcl_4)l; z&%VX(YwD+gm92F)KSaO#?J;YEu(_ckcERUj0%y`mO%Ldc_ZM;Ppo^4SoBXLwW9Q#B zKkM1C3;c!2&7}((3KLq!=5;3Dx}*5dlCy5zapcc@+5fQP{qHx8U65Cp&^C5KMq$E> z{Qpq$OQj3^4<)=b_RzA2lG`5J<}BiO4t&Ay-JdlzVVtk@594mlXy3tqKi{#ZIb}j& z^Uj-g#66VUF=q4bjE8Qyqwwml;{JXAO%2t_YvY{JJ-7I>i^g!vbGmQ)oS3Wwi=LnQ zK&|yhh@M&!ddt~&T4%9BE_ZlT z|4i=Ap*xCCbiQ(YS%;&eT<+MEy*X^+7Q>CsK4boUSbysJj8vY_*Q z_VX)o(R^bKE^UEDZ`2z5IP!~LWaSR`@vrMNeR^K?Y0JpcFds=}q4v{_ua~+H>6|o7 zfAju13$$9j-k&=ZGx!CR9o}zNw;!+mnDN`(}&DohyjllxUgy_GVVTbH>)(foakg*SzezGq}Ui zpj}kJTlj!WA^fnR!F=Ev10VDTHuduie8>RV z*x3=OWqMBk@|FSm?O{6oeM!WORPrY@VM@GqB03f8GpmF^kj$En`Y z%9qKX+PQR-P39wKy1MxQzx`LfaT320mLb{dQ>HJIpVar)#TKWiOuW9{{kU7=(DN;- zGwzdjt8)t09GNSX=IoM4jr}AA7XOo|hTpQP%umnjPlg8zN^kzCOqV)eCzR|-i)GR&?$ zl8f}pe1^GPtIV+|GqjrJ9K&x^Tm_Lv#k=@ly~AbYx&E;}9;rSaXPf%3Jm+=9=ymj5 z|Dy$7b(pp=XVrRMC~(0n`DrC)Nzd~IG{vmM%!v8xTz{+(FvT||d^F%z-N?qMp-s{e z)wLsU)r~7H8oRE3Bv#tkW$b55?&{hIEMl<=#YX9tblgrXVrlC%uA$y(Z2PKs{i?W% zRdME``1VyxwaUf1l6dUs%^14zU_puHQyyjntX0e<@pexnmYMM^q9k5V<9ts0s%6;w z$13yZx+xAfJMWEi+RrHE7&WYm z`hGt0mUL*bbVRXqkj1WbWwd^d*p&*N9cHN<9#uJnqapdqMR6sIz)Y1gA5&6UNe)Pv zWtf9MoFG&5sqDpPHSoU`J`uTrYENj?>&-GKF1|ks0h7 zh_(9Ca^>>5pAqq$TBp5QCz7_6_)j&Oa|YLI5VFDbdW`~)0)B~ey{y%=)F`lZI*dJq zR&&1DSx`-L^^OGPlIoHr*+pmwmLfE9tCX)Pi&ZClqGQ&odgbGbn>9!|+DUNh!v7aDHGxNF(j8ACWP9c-EOeuQV-IX67=9akgM z2V6S)$JvrfMg1~=iG-u4qc>y$aZ&j@pE@S<>pMt&aU;Bn(Sy)&+e5xmB@Et_z;T$e zEj7|X)s@Sa z_!V1oxg6Kz{Niu8LBA=(xWeZ?^!m5+yd1->F656({p8QvNX-bCmuIN%%FSHkSKO8R z@5tvQz6WInJv9VuWdB-SR5^Z=h1lRMuQ>D#Fh-tw@2AS)&aR5KSSh{uBKDqKRLu1` zVPGeW_-lpgmpRUS>{`6?KK1V#<#LXi9~M@{JN~pWD0AQ(a;G@XJ7U}|bLj?uCJnCX zUj+`?WgCJo=RbNyyQ<&;YmKKBeFF-p#>xL(6&hW0MWp9!sgGNFBge;nBZclM9s zRP%RrTHncfk-Y<-)x5b%V%o%W7UY|ceg1mEU`2G6e}RIiSir$D_kPp;4~^UYr%TlW zoyp%(B{JMOXu;Elnn|MZH{$7e;Lh0PX(yX&-O~LI?OIr7a2~d4;r7tjidB8xu9pS8 zQZ&x2vp`v`jn%QLkwoYi@#{6tK?|V72L=UWRL&+=93sHy6F*D~(|V zCpA+7m&NC^<;uh+4bM_U*x>)Oju zO89e4o6Pc zkKqujZ@kWb#eAl57J{kQJUx5=1qr9XX+CzXHvKuYsbC6MV-W!X!TwLqu1r9C>1B-2 z-b-&-oUWmnVtXr&l*J~mdS(b`#(QsenPa!STNsY^8bpA>|Hb*0bs$2QK&0~RnoDv{ zExzsnC&wRY&X;ludXYodYLjmu|A3u9+y}{>W`y8vZUJSNf=Y;Yx&Ht+Y-AjVOgbu$ zj?zg2j&FzxD2N(bW2p-$EDYFuYFMqsefT!1DWJh39Try{HEd$htN>F{PR09foUcxz z`;{v)7%g>}x4#Qo zBSy;|9z8Bb_d6^&D@MU=lNi+&1z!}S#~mJP?t-?9Q8Y#6Ao8#(UMog{s~4k9MGpjs z(R_!w)nYM2QD}tNFqboCqtGxsYSsu1Yp-yv<0zUwyf*#Pk=0{O2_6j$uzGB4rAMQf z_euJtPgjqfdd}mF0QhE0dfSfl{_mvsKbAi3i}cZ-r%Q&Vznq-@fhGN;)#)eKrB9Hi zPw+^epiiF=nEvmw^udbs!T#xk1JVZ@(g%m74|Yl){6P9(&x>Zc#XY;!KdrB3bHMJp z%1xCIN6Za5?^N<&`QzuxCie+UtX{ln_Z8`m)oxr4U%C1IwK_@lh|nF+RBA#3WHRDg zC40u@rHD@!MPu)?FERQ^!N>PSWUKnlIy!Zr&l6ShoakR>SEe+)?zTL}dv0UZXNhOs z0vGI04Ng}S1Qx{(v4mZ5bE~OdxAnzc*;?6q+Rs7`|7>z{d&9%%=D+7?RM^qHs)S>b zgt0FU>y)uKrzsB9U)i%EuFP^qF~`fl;yuR{rDJM_={uwJ z(U)fC1AKIjC%|LgBk-IXK7BKa7QXQ8%FV{X`qXDve)&~$+<}TA28#~jScRxMN>`huKi|Zzhp?wN69)1GaCzqNI2 zedlCL>Y)WAH*e^-WMH$>Pak&nyw5{Uo4mu$HXEOFnsuN1thnsgztRW)HU9CUb5`324?OXUF>CZiB9jw$@bR~we@yQ~n469~?s(DHH)WOY$_1-G z{~Rb+6yN>OvUr|mEvgT>_-xPz#_Ss_7Ht3b=T}2hw=dmbOl)0o&|Vm}W(@HgT$J|x z_?VMFTwVHKnjIy-JXJPk+rsBh1eKND_I}4WIq@C2zyGMB;P)dRpYUB>bN+vAJ^Wi{ zNZ%17OHM$0-vxgDS=OG=Z-ah|oxFL`R7LTnRDRo#nsT-3^Uo|1iFFp;sB`*XraiFy zl%AjY;%ncf-Gun#iBs=?J^x$E!nq3;{+2rBnE8R2=T9tNa^up6AO8H?p2$Z>et9wq z3{Q7oOnjf2`CNEwxeFuNG;+u{NBh71+kL9EwE+n`hL4x!EZ4Yxe(WOJu=4$PvTnQ| zxZw;mK+JD8yNt0o2~9V;8`7vy=KbB}%eSIJ#fXfo?euNpj?4i1e? z(uMhjcwRg>CU&9jh;P^&*}QjCzu2?b`H{DyUdi*Ba-?eGtCKbkd1z1G(9efVe8zuf zNb%%8|D3*k$sfP|{9FHOb6r3lX2jiiu2zJ(B2;DZJaW!+p@(FAX>>$!{kkYT{?Ete za*-OZHLkEXd!gzmJodx0Nza7_2ZmNOi0xU&<26@9{yIF`Ux5u=EFQosmuJhC;#DP!bnLBuc|jmHOjnyUf6~h_St1@)Vmscz{(qZ5 z8*%oQKyjvwUh<5=D?a?+UmtGc#Y;K7qCBV9;1zDDKEUhST6)oa3eSKGyuWRtmkGa0ycg zn$S#HWMlMLNVuV1tsX=>?4=RP(Kx37{o>dKp3n!B#A6qZ$12z>2hh@DnO^Ymn&=&? zk1kaY7&E}XY$Jd4`0-TVIF(1pcHIDPB3dtg_1GRXnSTADpNyY> z{7o)CdqtmL7JlFn*z>m|fjKEpEKX0z3CzsG_e~O#@!dmw_20gtNeMZLR8`j}?(K8g zm#y^p^fP|%lm{0YOY!~vocLUPWhx^rlYIu7CE_MW>)EM8`~WdMMNhw*(Tg7j(T@oV z4l?Ki@H3;#Cq|4hgajFaLdOJ!49&{OOv}dCr8D#NM09o*qunjhvtA z__%d?{WU|OrMg}v{ZZqmij4%oH@Gm))h{?&+hB;O3$1TbH>!)GJwnwRC7&1~O2X=! z^q;AVHk(4#n_C*RfuUTe{1dfIrZ}yR))h+z`xQ8T9Ii`p&K;NQxOq_S#^J9zKbY(M z=Bq0<4^JBI{L*m0&BI=OYjf_qPDyVKf68g|{NbAi4Xy}DOnUdJ+_V*bZzT=S4Nh_% z_tGGTH+DIn+`In4RqH=_`;)=zcQvff+)^QX17iyvMsjw-YssY+JPXM#$7}F<*zK6c z`oasINAVI5uMlhTPSWcl>kHgx*bLA@TiJm3wd1y-gW~)FUT@=-c0DbM6ZF`SBJ3ld z7)bjD`dwR?K^iA5j{EVn%w&G4kaypApJd;CPW$fD?p^p&q4}jce&@bLQ}do2bj`FTHi(vh0d zD6P67aZKU4)%uY&=B-9upb3XFYt7zy(Ju_vDTbXfYNWy1QeWL( zD#@)u$wsMrVVW*DV7pc>TiUd~srbFY>&)5>+I4O+KPRKX>^wykq(3WCRQ{nlK1p@7 zw7`88c>8FSe5a4%*!*=mj~S}M+Q{-_hQzo?FnP`FeIig29JgC@w!*1~|ER)AHjKO9 z+NOr+$%2Kl0vl9XefO~?znnT;Wn;lp29~3p(^FIHC}W4D&2i_eu@}*p*fC!(2!`Js#hs| z&kd}NzQ54WYRQ)OZ@B8{{-C5*7p_+%aY8vL!>__8d!0__p(-qxd_3l8|Nd6d?61$1 zgPud78Mb0ngGpJT+2H!2PlLP4mPq)yk5*=t-4V#{W5~`EvWtZ5EI|+rWLN1_XFh3m zNT^P!DKwl7Nk&!^vKkY<-+B%we#9$5k8^s6_mP`yHd`F`>uK3X5TK<=nZnEWx%=(Q zo9CbKSEczciSem@L%p^@oHlcPZ=Z4SmZt_ClS8&k3Lx7BCYx;EbKBOH_-{A$=r|`` zLx?}m4O{I}S}{st z{zfzZsq)%tiQAT1F8!N=T$eM@V__EQ5uK{Wt0{U=xcBMRu&H#5!C*e)6>VUdP(=^PuHLAV|iZse()!51$uY&HLdz{I=5eEaNSYR zbkOKFkmoGNQ=_ZDHyj)5iE=(SE~m}=E;*>Roj-- zUY%7PUWL&oY>K=vwxGh{VfhQ+QVF6wkY9 z%eCv$%2o1>vPI8isixMeRjH!6NXC==F<_P}ug6*k%tqP3U_FhATN>BTlO}v`R;}lB z(^QtvU)>&vX9NNr=rZ^cQ#kGJOAx$M&pwN&Sp_?Y?;nN&+`pAt;S7Z~# zaRzP$uU(nws*=y$rWfq#Cp4kj@qn(d{H&~S<^mBa%miPkXi8#ZC3{zWC#|P{l&*Qr zf?g+#TRVi`j zPsSBKUluHChTaFb&TO{V~k`x z#+dW|h3Mx&z+1s@7q|!3q#S5=RR=xnuem$I?J?3izM?1<(xl?93OQ~k%nq@QJDLw=kOM;=v7u{9nIIsw7kr|wm`dJ_deT7V1LnC`QH2GNiPnT8jnOY`?{{K7(b-|!uHn6i5;H5oWufCH>%cqUgl!BS@Rc|Q!@ObhJ?GjojKKzs!37wD zqiGBdrlB`ZvHHJLVvF?Zed^`f;@YhRu9$b5l}26qfEZfo?99eUFx!A(d)NY$?F%A} zP8b8S9WYuSlw!2bq|Ws|jREmB2S?P8G~0egp8!S{gBNQ*qo=xIw8F&Dec_IwdsA;i zw{7hHuiZ-dB-_|s*xT5>g0E`)vGDwBP5J5PeQKV0zk)>?oe#qJq#4}nV>qp;IKg{X zeeJR$-!KaovGKEFjFMV$0a~`^i{q;Y6?5u^14{j^OUyEtMA6cWkR2Id#z4 z$DGb6Hagap$E@MCL$!OG*EaRBPO~5T>4Wt;(-3*mK!4Z?f7VxB+_d(+@df5d;zWGL zuOie(_qoAM<*WR$Uy4EguUdsXOk9gLd)Ev0*igU1U+4w~*WV@Uby_T1B~yxz1r`{x z48<{+ljJq2h1zvuM%l4IV@Oswqi=hb9N;zTYZwfjN{Zu!@bN>3NsLI*2CdISy{e|A*sz zWuN}Bm%X*_+w}z)yFJmQf@x=0Y1e(^t=)3oZbZi(JjTMt|AD>N(cAbhy+5dIt`n{I zX)n?wpD#DVXwG+^72agCg78fMVP0^yHi^|oYl}W|$tTLX{RLeknqQFxdoVVaC~D9v zOj=sE)0LnXejC!gOzdTWiS{G&leT%2O>#plNrr?pL zKIK18D=?qv8*ucof~1zdbB{h6^1usP0Wm}p988yW5 zI~e+1jR`kl#ffkV({a;pnds_|kY3Ty?`Cjpi*tkDTkA!5bS*(%IKpLUD|f)fK$E|{*eej)&qVDaQc43=YT`30)8NV`vbTi(!T-j zYlVZp29=SmxnK)Lyfga19}M_Vr2PONCc-&A$4v*E=JaWRyNht*lYE0y`FOyo*;YQ6 ziuCjB=>z{+z{&pB0#5u|@vB7mt3BX#fQJI_AmCvlKJoJ>;Iy`C2AuZURyuMBYa-Ge zfSW`(;ZFvf`f3zj*=a>M@&72`L}wP@_H@z!C;rTU+vExSLcpoL`GDKEw;XW7TMszN z)yhvb;3T)5fZOC2$Z_?6Q~7;>(|U~XiO;hl{9`*f@p%PsqW`@eeZqHuk&r$833voT zD;@fs7`11FqhLo?ex?9UHaZsYSUdd9fD`>fz^(if{kH&z%VO>Yz)5db`bPmLIlK$F zy&S$3@s9)UX@}niI9!f%=K-h5%u2@tOp;!tuv2@z3nSI4sI&P=m7r^;66yN$E_FP zD)93?;OJW1zi=Zd;DZi*tBLfw8@E;ORBt=r)UJBm)_RGK21cj{>@04Ze1IPWI0CK} zH`QZp7v9b?I=29`*$)t>0#5DHO1kJ%yOIE>b`1vHzFii;Nshc7ocP%WxE}ENfZOwP zP^7;Ma4Y{r|8u|z?^(d@_3{Vc$mZSzoZ4;W-x10t{F)y4_XAFL_ATHxeSse%;6(RN zz-@Mj_C5wU(RanzZBKu(NPjTk_WW!X@r^z3-xBd3>4AR&@FAd|3;1A!#6P{%{vB|b zGFJ{bh8kPD+5so|(_CVc5BPM2krSVL0k`M#e!xi%9|LaB=S0A%ofiPN%7OF}4>;A^ z3AlZ|sen_x3QVZ>_5K5Js&9}Toaj6!(lG#TPiMPGXEfk8K2iQX5r0|_{0~L^Id=5P zV80OY(|X{4FXCtS!2c6)YVRt*t?fmUb4BN&_HOS%M+Z2y_q85$MgmU#?R~&OlIexo zYXp$!pR}V-@cAPCdBCAMn;tU&Cw*N9+$IMARsl}(bwXJh*RA&aBH(^Vdjalmg+mU9 z0QW`O2sq_4e87JIob;XyIQ2^gNBlP6R9^w&Ry`7*eNY*tw^H1S4}JoWAU@v!+@4Qf zgdgq!pDV(@=mF0b;lK5Omx^!+7DD#)D@1tz9`OAld_)g;qX>`g0lz51=kJ z3-J4`?S$=nn6aLny=J%%tA^jIJ1&{7UMZvv_F8Cg@3lU^DF?P

    r2DF&z{tSeUITA_bwV+MptCuf`NA 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

    +XP!ekVIPPK^ioOock#AWdJr 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

  • g^y!Z! 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%0A% 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≷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 z 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