From 4edf171aa22458747f5d12f315f3e8eb9f3e163f Mon Sep 17 00:00:00 2001
From: Lucas Wong <Loo_kes2.Wong@live.uwe.ac.uk>
Date: Wed, 21 Apr 2021 21:03:08 +0100
Subject: [PATCH] Update application model

Create application's classes and a camera manager
---
 .DS_Store                                     |  Bin 6148 -> 6148 bytes
 .../project.pbxproj                           |   20 +
 .../UserInterfaceState.xcuserstate            |  Bin 22002 -> 45805 bytes
 .../SelectModuleViewController.swift          |    2 +
 .../Model/Attendance.swift                    |   31 +
 .../Model/CameraManager.swift                 |   35 +
 .../FaceRecogAttendance/Model/Module.swift    |   28 +
 .../FaceRecogAttendance/Model/Session.swift   |   31 +
 .../FaceRecogAttendance/Model/Student.swift   |   36 +
 .../FaceRecogAttendance/SceneDelegate.swift   |    3 +
 .../View/Base.lproj/Main.storyboard           |  134 +-
 .../Pods/Pods.xcodeproj/project.pbxproj       | 2412 ++++++++---------
 .../xcschemes/BoringSSL-GRPC.xcscheme         |    2 +-
 .../xcschemes/CLTypingLabel.xcscheme          |   24 +-
 .../xcschemes/Firebase.xcscheme               |   24 +-
 .../xcschemes/FirebaseAuth.xcscheme           |   24 +-
 .../xcschemes/FirebaseCore.xcscheme           |   24 +-
 .../FirebaseCoreDiagnostics.xcscheme          |   24 +-
 .../xcschemes/FirebaseFirestore.xcscheme      |   24 +-
 .../xcschemes/FirebaseStorage.xcscheme        |   24 +-
 .../xcschemes/GTMSessionFetcher.xcscheme      |   24 +-
 .../xcschemes/GoogleDataTransport.xcscheme    |   24 +-
 .../xcschemes/GoogleUtilities.xcscheme        |   24 +-
 .../Pods-FaceRecogAttendance.xcscheme         |    2 +-
 .../xcschemes/PromisesObjC.xcscheme           |    2 +-
 .../xcschemes/abseil.xcscheme                 |    2 +-
 .../gRPC-C++-gRPCCertificates-Cpp.xcscheme    |    2 +-
 .../xcschemes/gRPC-C++.xcscheme               |    2 +-
 .../xcschemes/gRPC-Core.xcscheme              |    2 +-
 .../xcschemes/leveldb-library.xcscheme        |    2 +-
 .../xcschemes/nanopb.xcscheme                 |   24 +-
 31 files changed, 1571 insertions(+), 1441 deletions(-)
 create mode 100644 FaceRecogAttendance/FaceRecogAttendance/Model/Attendance.swift
 create mode 100644 FaceRecogAttendance/FaceRecogAttendance/Model/CameraManager.swift
 create mode 100644 FaceRecogAttendance/FaceRecogAttendance/Model/Module.swift
 create mode 100644 FaceRecogAttendance/FaceRecogAttendance/Model/Session.swift
 create mode 100644 FaceRecogAttendance/FaceRecogAttendance/Model/Student.swift

diff --git a/.DS_Store b/.DS_Store
index be94edefbd2068349719f7f6cf57cfaad1459c3d..7f9c9367f5271643b19920e1adfe909578449f9e 100644
GIT binary patch
delta 21
ccmZoMXffDul!?RG(pX2q#MFHAStfH)07^&(K>z>%

delta 21
ccmZoMXffDul!?R8#85}U*w|$AStfH)07<k4G5`Po

diff --git a/FaceRecogAttendance/FaceRecogAttendance.xcodeproj/project.pbxproj b/FaceRecogAttendance/FaceRecogAttendance.xcodeproj/project.pbxproj
index c511dd4..cf03820 100644
--- a/FaceRecogAttendance/FaceRecogAttendance.xcodeproj/project.pbxproj
+++ b/FaceRecogAttendance/FaceRecogAttendance.xcodeproj/project.pbxproj
@@ -19,6 +19,11 @@
 		A09512EE262F89460066554E /* SelectSessionViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = A09512ED262F89460066554E /* SelectSessionViewController.swift */; };
 		A09512F1262F89550066554E /* FaceClassificationViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = A09512F0262F89550066554E /* FaceClassificationViewController.swift */; };
 		A09512F4262F8A4D0066554E /* FaceClassifier.mlmodel in Sources */ = {isa = PBXBuildFile; fileRef = A09512F3262F8A4D0066554E /* FaceClassifier.mlmodel */; };
+		A09512F7262F8B170066554E /* Student.swift in Sources */ = {isa = PBXBuildFile; fileRef = A09512F6262F8B170066554E /* Student.swift */; };
+		A09512FA262F8C0E0066554E /* CameraManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = A09512F9262F8C0E0066554E /* CameraManager.swift */; };
+		A0951310262F8C670066554E /* Session.swift in Sources */ = {isa = PBXBuildFile; fileRef = A095130F262F8C670066554E /* Session.swift */; };
+		A0951313262F8C850066554E /* Attendance.swift in Sources */ = {isa = PBXBuildFile; fileRef = A0951312262F8C850066554E /* Attendance.swift */; };
+		A0951318262F8C900066554E /* Module.swift in Sources */ = {isa = PBXBuildFile; fileRef = A0951317262F8C900066554E /* Module.swift */; };
 /* End PBXBuildFile section */
 
 /* Begin PBXFileReference section */
@@ -35,6 +40,11 @@
 		A09512ED262F89460066554E /* SelectSessionViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SelectSessionViewController.swift; sourceTree = "<group>"; };
 		A09512F0262F89550066554E /* FaceClassificationViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FaceClassificationViewController.swift; sourceTree = "<group>"; };
 		A09512F3262F8A4D0066554E /* FaceClassifier.mlmodel */ = {isa = PBXFileReference; lastKnownFileType = file.mlmodel; path = FaceClassifier.mlmodel; sourceTree = "<group>"; };
+		A09512F6262F8B170066554E /* Student.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Student.swift; sourceTree = "<group>"; };
+		A09512F9262F8C0E0066554E /* CameraManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CameraManager.swift; sourceTree = "<group>"; };
+		A095130F262F8C670066554E /* Session.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Session.swift; sourceTree = "<group>"; };
+		A0951312262F8C850066554E /* Attendance.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Attendance.swift; sourceTree = "<group>"; };
+		A0951317262F8C900066554E /* Module.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Module.swift; sourceTree = "<group>"; };
 		AA9F1E4B6F3F1A4222A527CC /* Pods-FaceRecogAttendance.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-FaceRecogAttendance.debug.xcconfig"; path = "Target Support Files/Pods-FaceRecogAttendance/Pods-FaceRecogAttendance.debug.xcconfig"; sourceTree = "<group>"; };
 /* End PBXFileReference section */
 
@@ -97,6 +107,11 @@
 		A09512CB262F85770066554E /* Model */ = {
 			isa = PBXGroup;
 			children = (
+				A0951312262F8C850066554E /* Attendance.swift */,
+				A09512F9262F8C0E0066554E /* CameraManager.swift */,
+				A095130F262F8C670066554E /* Session.swift */,
+				A09512F6262F8B170066554E /* Student.swift */,
+				A0951317262F8C900066554E /* Module.swift */,
 			);
 			path = Model;
 			sourceTree = "<group>";
@@ -251,10 +266,15 @@
 			files = (
 				A09512F4262F8A4D0066554E /* FaceClassifier.mlmodel in Sources */,
 				A0940D18262E7E6800AD51BA /* AppDelegate.swift in Sources */,
+				A09512FA262F8C0E0066554E /* CameraManager.swift in Sources */,
 				A09512F1262F89550066554E /* FaceClassificationViewController.swift in Sources */,
+				A0951313262F8C850066554E /* Attendance.swift in Sources */,
 				A09512EE262F89460066554E /* SelectSessionViewController.swift in Sources */,
 				A09512EB262F89340066554E /* SelectModuleViewController.swift in Sources */,
+				A09512F7262F8B170066554E /* Student.swift in Sources */,
 				A0940D1A262E7E6800AD51BA /* SceneDelegate.swift in Sources */,
+				A0951318262F8C900066554E /* Module.swift in Sources */,
+				A0951310262F8C670066554E /* Session.swift in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
diff --git a/FaceRecogAttendance/FaceRecogAttendance.xcworkspace/xcuserdata/Lucas.xcuserdatad/UserInterfaceState.xcuserstate b/FaceRecogAttendance/FaceRecogAttendance.xcworkspace/xcuserdata/Lucas.xcuserdatad/UserInterfaceState.xcuserstate
index 683e41dc9ba89c71edc9d7a5b7c75a22cd361b8f..2747f94658ebedf1c7d40698183e5faf7c5af903 100644
GIT binary patch
literal 45805
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

delta 12381
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
B)C>Rs

diff --git a/FaceRecogAttendance/FaceRecogAttendance/Controller/SelectModuleViewController.swift b/FaceRecogAttendance/FaceRecogAttendance/Controller/SelectModuleViewController.swift
index 491b45c..bd459af 100644
--- a/FaceRecogAttendance/FaceRecogAttendance/Controller/SelectModuleViewController.swift
+++ b/FaceRecogAttendance/FaceRecogAttendance/Controller/SelectModuleViewController.swift
@@ -58,6 +58,8 @@ class SelectModuleViewController: UITableViewController {
 //        tableView.reloadData()
 //    }
     
+    //MARK: - REALM SYNC DATA MANIPULATION METHOD
+    
     deinit {
         notificationToken?.invalidate()
     }
diff --git a/FaceRecogAttendance/FaceRecogAttendance/Model/Attendance.swift b/FaceRecogAttendance/FaceRecogAttendance/Model/Attendance.swift
new file mode 100644
index 0000000..bff8c8e
--- /dev/null
+++ b/FaceRecogAttendance/FaceRecogAttendance/Model/Attendance.swift
@@ -0,0 +1,31 @@
+//
+//  Attendance.swift
+//  FaceRecogAttendance
+//
+//  Created by Lucas on 20/04/2021.
+//
+
+import Foundation
+import RealmSwift
+
+class Attendance: Object {
+    @objc dynamic var _id: ObjectId = ObjectId.generate()
+    @objc dynamic var studentID: String = ""
+    @objc dynamic var studentName: String = ""
+//    @objc dynamic var attendanceTaken: Bool = false
+    @objc dynamic var dateCreated: Date?
+    
+    // relationship
+    var parentCategory = LinkingObjects(fromType: Session.self, property: "attendances")
+    
+    override static func primaryKey() -> String? {
+            return "_id"
+    }
+    
+    convenience init(studentID: String, studentName: String, dateCreated: Date?) {
+        self.init()
+        self.studentID = studentID
+        self.studentName = studentName
+        self.dateCreated = Date()
+    }
+}
diff --git a/FaceRecogAttendance/FaceRecogAttendance/Model/CameraManager.swift b/FaceRecogAttendance/FaceRecogAttendance/Model/CameraManager.swift
new file mode 100644
index 0000000..7f10af7
--- /dev/null
+++ b/FaceRecogAttendance/FaceRecogAttendance/Model/CameraManager.swift
@@ -0,0 +1,35 @@
+//
+//  CameraManager.swift
+//  FaceRecogAttendance
+//
+//  Created by Lucas on 20/04/2021.
+//
+
+import Foundation
+import AVKit
+
+class CameraManager {
+    
+    let captureSession = AVCaptureSession()
+    
+    func setupCamera(view: UIView, delegate: AVCaptureVideoDataOutputSampleBufferDelegate) {
+        captureSession.sessionPreset = .high
+        
+        guard let captureDevice = AVCaptureDevice.default(AVCaptureDevice.DeviceType.builtInWideAngleCamera, for: AVMediaType.video, position: .front) else { preconditionFailure("A Camera is needed to start the AV session")  }
+        
+        //throw error if no camera is found.
+        guard let input = try? AVCaptureDeviceInput(device: captureDevice) else { return }
+        captureSession.addInput(input)
+        
+        captureSession.startRunning()
+        
+        let previewLayer = AVCaptureVideoPreviewLayer(session: captureSession)
+        view.layer.addSublayer(previewLayer)
+        previewLayer.frame = view.frame
+        
+        let dataOutput = AVCaptureVideoDataOutput()
+        dataOutput.setSampleBufferDelegate(delegate, queue: DispatchQueue(label: "videoQueue"))
+        captureSession.addOutput(dataOutput)
+    }
+    
+}
diff --git a/FaceRecogAttendance/FaceRecogAttendance/Model/Module.swift b/FaceRecogAttendance/FaceRecogAttendance/Model/Module.swift
new file mode 100644
index 0000000..bd1c3ba
--- /dev/null
+++ b/FaceRecogAttendance/FaceRecogAttendance/Model/Module.swift
@@ -0,0 +1,28 @@
+//
+//  Module.swift
+//  FaceRecogAttendance
+//
+//  Created by Lucas on 20/04/2021.
+//
+
+import Foundation
+import RealmSwift
+
+class Module: Object {
+    @objc dynamic var _id: ObjectId = ObjectId.generate()
+    @objc dynamic var _partition: String = ""
+    @objc dynamic var moduleID: String = ""
+    @objc dynamic var moduleName: String = ""
+    let sessions = List<Session>()
+    
+    override static func primaryKey() -> String? {
+            return "_id"
+    }
+    
+    convenience init(moduleID: String, moduleName: String, partition: String) {
+        self.init()
+        self.moduleID = moduleID
+        self.moduleName = moduleName
+        self._partition = partition
+    }
+}
diff --git a/FaceRecogAttendance/FaceRecogAttendance/Model/Session.swift b/FaceRecogAttendance/FaceRecogAttendance/Model/Session.swift
new file mode 100644
index 0000000..aa28cf2
--- /dev/null
+++ b/FaceRecogAttendance/FaceRecogAttendance/Model/Session.swift
@@ -0,0 +1,31 @@
+//
+//  Session.swift
+//  FaceRecogAttendance
+//
+//  Created by Lucas on 20/04/2021.
+//
+
+import Foundation
+import RealmSwift
+
+
+class Session: Object {
+    @objc dynamic var _id: ObjectId = ObjectId.generate()
+    @objc dynamic var roomNo: String = ""
+    @objc dynamic var sessionDate: String = ""
+    @objc dynamic var sessionTime: String = ""
+    // relationship
+    let attendances = List<Attendance>()
+    var parentCategory = LinkingObjects(fromType: Module.self, property: "sessions")
+    
+    override static func primaryKey() -> String? {
+            return "_id"
+    }
+    
+    convenience init(roomNo : String, sessionDate : String, sessionTime: String) {
+        self.init()
+        self.roomNo = roomNo
+        self.sessionDate = sessionDate
+        self.sessionTime = sessionTime
+    }
+}
diff --git a/FaceRecogAttendance/FaceRecogAttendance/Model/Student.swift b/FaceRecogAttendance/FaceRecogAttendance/Model/Student.swift
new file mode 100644
index 0000000..6eeb1b4
--- /dev/null
+++ b/FaceRecogAttendance/FaceRecogAttendance/Model/Student.swift
@@ -0,0 +1,36 @@
+//
+//  Student.swift
+//  FaceRecogAttendance
+//
+//  Created by Lucas on 20/04/2021.
+//
+
+import Foundation
+import RealmSwift
+
+
+class Student: Object {
+    @objc dynamic var _id: ObjectId = ObjectId.generate()
+    @objc dynamic var _partition: String = ""
+    @objc dynamic var studentName: String = ""
+    @objc dynamic var studentID: String = ""
+    @objc dynamic var email: String = ""
+    @objc dynamic var password: String = ""
+    @objc dynamic var isImageUpload: Bool = false
+    @objc dynamic var isImageTrained: Bool = false
+    
+    override static func primaryKey() -> String? {
+            return "_id"
+    }
+    
+    convenience init(studentName: String, studentID: String, email: String, password: String, isImageUpload : Bool = true, isImageTrained : Bool = false, partition: String) {
+        self.init()
+        self.studentName = studentName
+        self.studentID = studentID
+        self.email = email
+        self.password = password
+        self.isImageUpload = isImageUpload
+        self.isImageTrained = isImageTrained
+        self._partition = partition
+    }
+}
diff --git a/FaceRecogAttendance/FaceRecogAttendance/SceneDelegate.swift b/FaceRecogAttendance/FaceRecogAttendance/SceneDelegate.swift
index 3a324b7..e2398dc 100644
--- a/FaceRecogAttendance/FaceRecogAttendance/SceneDelegate.swift
+++ b/FaceRecogAttendance/FaceRecogAttendance/SceneDelegate.swift
@@ -6,6 +6,9 @@
 //
 
 import UIKit
+import RealmSwift
+
+let app = App(id: "facerecognition-gtgth")
 
 class SceneDelegate: UIResponder, UIWindowSceneDelegate {
 
diff --git a/FaceRecogAttendance/FaceRecogAttendance/View/Base.lproj/Main.storyboard b/FaceRecogAttendance/FaceRecogAttendance/View/Base.lproj/Main.storyboard
index 6c907ed..8906218 100644
--- a/FaceRecogAttendance/FaceRecogAttendance/View/Base.lproj/Main.storyboard
+++ b/FaceRecogAttendance/FaceRecogAttendance/View/Base.lproj/Main.storyboard
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="17701" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="17701" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="MF4-3F-e2i">
     <device id="retina6_1" orientation="portrait" appearance="light"/>
     <dependencies>
         <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="17703"/>
@@ -135,86 +135,49 @@
                                         <fontDescription key="fontDescription" type="system" pointSize="25"/>
                                         <textInputTraits key="textInputTraits"/>
                                     </textField>
+                                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="8w8-SU-7Qt" userLabel="NameView">
+                                        <rect key="frame" x="0.0" y="72" width="414" height="177"/>
+                                        <subviews>
+                                            <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="textfield" translatesAutoresizingMaskIntoConstraints="NO" id="qeE-KD-Y26">
+                                                <rect key="frame" x="0.0" y="20" width="414" height="137"/>
+                                            </imageView>
+                                            <textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="Name" textAlignment="center" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="lVr-f5-Vhs">
+                                                <rect key="frame" x="48" y="50" width="318" height="45"/>
+                                                <color key="textColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                                <fontDescription key="fontDescription" type="system" pointSize="25"/>
+                                                <textInputTraits key="textInputTraits"/>
+                                            </textField>
+                                        </subviews>
+                                        <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                        <constraints>
+                                            <constraint firstItem="lVr-f5-Vhs" firstAttribute="centerX" secondItem="8w8-SU-7Qt" secondAttribute="centerX" id="4ZJ-Sp-ARY"/>
+                                            <constraint firstAttribute="bottom" secondItem="lVr-f5-Vhs" secondAttribute="bottom" constant="82" id="6Ku-fv-h0l"/>
+                                            <constraint firstItem="lVr-f5-Vhs" firstAttribute="centerX" secondItem="qeE-KD-Y26" secondAttribute="centerX" id="BWG-wx-eaU"/>
+                                            <constraint firstItem="lVr-f5-Vhs" firstAttribute="top" secondItem="8w8-SU-7Qt" secondAttribute="top" constant="50" id="GXb-7y-bFc"/>
+                                            <constraint firstItem="qeE-KD-Y26" firstAttribute="leading" secondItem="8w8-SU-7Qt" secondAttribute="leading" id="N48-2x-1IL"/>
+                                            <constraint firstItem="qeE-KD-Y26" firstAttribute="top" secondItem="8w8-SU-7Qt" secondAttribute="top" constant="20" id="PoJ-TT-J0Z"/>
+                                            <constraint firstAttribute="height" constant="177" id="gsh-sE-zPi"/>
+                                            <constraint firstItem="lVr-f5-Vhs" firstAttribute="leading" secondItem="8w8-SU-7Qt" secondAttribute="leading" constant="48" id="nuB-UW-hHR"/>
+                                            <constraint firstItem="qeE-KD-Y26" firstAttribute="centerY" secondItem="8w8-SU-7Qt" secondAttribute="centerY" id="pxd-T3-Rt9"/>
+                                        </constraints>
+                                    </view>
                                 </subviews>
                                 <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                                 <constraints>
                                     <constraint firstAttribute="bottom" secondItem="R9u-rc-bAR" secondAttribute="bottom" constant="20" id="Apo-J7-v5o"/>
+                                    <constraint firstItem="8w8-SU-7Qt" firstAttribute="top" secondItem="ZXN-hx-7jD" secondAttribute="top" constant="72" id="EX0-PH-nEG"/>
                                     <constraint firstAttribute="right" secondItem="Efx-oG-wgy" secondAttribute="right" constant="48" id="Ehs-5X-1kW"/>
                                     <constraint firstAttribute="trailing" secondItem="R9u-rc-bAR" secondAttribute="trailing" id="K0s-09-Bw0"/>
                                     <constraint firstItem="R9u-rc-bAR" firstAttribute="leading" secondItem="ZXN-hx-7jD" secondAttribute="leading" id="M8G-JL-F85"/>
                                     <constraint firstItem="Efx-oG-wgy" firstAttribute="top" secondItem="ZXN-hx-7jD" secondAttribute="top" constant="50" id="W65-3e-iXp"/>
+                                    <constraint firstItem="8w8-SU-7Qt" firstAttribute="trailing" secondItem="R9u-rc-bAR" secondAttribute="trailing" id="Wyw-us-r1B"/>
+                                    <constraint firstItem="8w8-SU-7Qt" firstAttribute="leading" secondItem="R9u-rc-bAR" secondAttribute="leading" id="eXI-2Z-9Dq"/>
                                     <constraint firstAttribute="height" constant="177" id="shy-W8-Sgs"/>
                                     <constraint firstAttribute="bottom" secondItem="Efx-oG-wgy" secondAttribute="bottom" constant="82" id="tFL-F6-S6y"/>
                                     <constraint firstItem="R9u-rc-bAR" firstAttribute="top" secondItem="ZXN-hx-7jD" secondAttribute="top" constant="20" id="w9y-bo-kCh"/>
                                     <constraint firstItem="Efx-oG-wgy" firstAttribute="left" secondItem="ZXN-hx-7jD" secondAttribute="left" constant="48" id="wqB-JD-bQ4"/>
                                 </constraints>
                             </view>
-                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Mtg-jG-lYN" userLabel="PasswordView">
-                                <rect key="frame" x="0.0" y="165" width="414" height="177"/>
-                                <subviews>
-                                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="textfield" translatesAutoresizingMaskIntoConstraints="NO" id="jnv-GL-6MH">
-                                        <rect key="frame" x="0.0" y="20" width="414" height="137"/>
-                                    </imageView>
-                                    <textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="Password" textAlignment="center" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="N5i-hT-Riw" userLabel="Password Textfield">
-                                        <rect key="frame" x="49" y="50" width="317" height="45"/>
-                                        <color key="textColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
-                                        <fontDescription key="fontDescription" type="system" pointSize="25"/>
-                                        <textInputTraits key="textInputTraits" secureTextEntry="YES"/>
-                                    </textField>
-                                </subviews>
-                                <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
-                                <constraints>
-                                    <constraint firstAttribute="right" secondItem="N5i-hT-Riw" secondAttribute="right" constant="48" id="3GG-ge-rh2"/>
-                                    <constraint firstItem="jnv-GL-6MH" firstAttribute="top" secondItem="Mtg-jG-lYN" secondAttribute="top" constant="20" id="5iU-8Z-gaa"/>
-                                    <constraint firstAttribute="bottom" secondItem="N5i-hT-Riw" secondAttribute="bottom" constant="82" id="E78-mB-mqc"/>
-                                    <constraint firstItem="N5i-hT-Riw" firstAttribute="top" secondItem="Mtg-jG-lYN" secondAttribute="top" constant="50" id="HaE-KQ-fyA"/>
-                                    <constraint firstAttribute="trailing" secondItem="jnv-GL-6MH" secondAttribute="trailing" id="ImW-F9-xiq"/>
-                                    <constraint firstItem="jnv-GL-6MH" firstAttribute="leading" secondItem="Mtg-jG-lYN" secondAttribute="leading" id="Lbm-AD-Z6Q"/>
-                                    <constraint firstItem="N5i-hT-Riw" firstAttribute="left" secondItem="Mtg-jG-lYN" secondAttribute="left" constant="49" id="N6I-sI-C4G"/>
-                                    <constraint firstAttribute="bottom" secondItem="jnv-GL-6MH" secondAttribute="bottom" constant="20" id="d5Y-N5-rSq"/>
-                                    <constraint firstAttribute="height" constant="177" id="qZs-77-Bf6"/>
-                                </constraints>
-                            </view>
-                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="8w8-SU-7Qt" userLabel="NameView">
-                                <rect key="frame" x="0.0" y="242" width="414" height="177"/>
-                                <subviews>
-                                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" image="textfield" translatesAutoresizingMaskIntoConstraints="NO" id="qeE-KD-Y26">
-                                        <rect key="frame" x="0.0" y="20" width="414" height="137"/>
-                                        <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
-                                    </imageView>
-                                    <textField opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="Name" textAlignment="center" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="lVr-f5-Vhs">
-                                        <rect key="frame" x="48" y="50" width="318" height="45"/>
-                                        <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
-                                        <color key="textColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
-                                        <fontDescription key="fontDescription" type="system" pointSize="25"/>
-                                        <textInputTraits key="textInputTraits"/>
-                                    </textField>
-                                </subviews>
-                                <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
-                                <constraints>
-                                    <constraint firstAttribute="height" constant="177" id="gsh-sE-zPi"/>
-                                </constraints>
-                            </view>
-                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="W5W-GK-lZM" userLabel="studentIDView">
-                                <rect key="frame" x="0.0" y="319" width="414" height="177"/>
-                                <subviews>
-                                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" image="textfield" translatesAutoresizingMaskIntoConstraints="NO" id="WgU-xv-ald">
-                                        <rect key="frame" x="0.0" y="20" width="414" height="137"/>
-                                        <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
-                                    </imageView>
-                                    <textField opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="Student ID" textAlignment="center" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="zb3-ZH-m1X" userLabel="studentID Textfield">
-                                        <rect key="frame" x="48" y="50" width="318" height="45"/>
-                                        <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
-                                        <color key="textColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
-                                        <fontDescription key="fontDescription" type="system" pointSize="25"/>
-                                        <textInputTraits key="textInputTraits"/>
-                                    </textField>
-                                </subviews>
-                                <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
-                                <constraints>
-                                    <constraint firstAttribute="height" constant="177" id="LSi-K7-EFQ"/>
-                                </constraints>
-                            </view>
                             <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="oyY-gz-Kig">
                                 <rect key="frame" x="0.0" y="785" width="414" height="48"/>
                                 <color key="backgroundColor" red="0.53960394860000005" green="0.90813678499999995" blue="1" alpha="1" colorSpace="custom" customColorSpace="displayP3"/>
@@ -225,7 +188,7 @@
                                 </connections>
                             </button>
                             <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Clw-Gb-DE6">
-                                <rect key="frame" x="82" y="526" width="250" height="76"/>
+                                <rect key="frame" x="82" y="442" width="250" height="76"/>
                                 <color key="backgroundColor" red="0.21671915050000001" green="0.77598798270000002" blue="0.99613565209999999" alpha="1" colorSpace="custom" customColorSpace="displayP3"/>
                                 <constraints>
                                     <constraint firstAttribute="height" constant="76" id="A6e-Dq-1hO"/>
@@ -240,6 +203,32 @@
                                     <action selector="recordButtonPressed:" destination="Jmf-AW-sPX" eventType="touchUpInside" id="HpV-ai-WUZ"/>
                                 </connections>
                             </button>
+                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="W5W-GK-lZM" userLabel="studentIDView">
+                                <rect key="frame" x="0.0" y="235" width="414" height="177"/>
+                                <subviews>
+                                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="textfield" translatesAutoresizingMaskIntoConstraints="NO" id="WgU-xv-ald">
+                                        <rect key="frame" x="0.0" y="20" width="414" height="137"/>
+                                    </imageView>
+                                    <textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="Student ID" textAlignment="center" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="zb3-ZH-m1X" userLabel="studentID Textfield">
+                                        <rect key="frame" x="48" y="50" width="318" height="45"/>
+                                        <color key="textColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                        <fontDescription key="fontDescription" type="system" pointSize="25"/>
+                                        <textInputTraits key="textInputTraits"/>
+                                    </textField>
+                                </subviews>
+                                <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                <constraints>
+                                    <constraint firstItem="zb3-ZH-m1X" firstAttribute="centerX" secondItem="WgU-xv-ald" secondAttribute="centerX" id="0WZ-oa-g1A"/>
+                                    <constraint firstItem="zb3-ZH-m1X" firstAttribute="leading" secondItem="W5W-GK-lZM" secondAttribute="leading" constant="48" id="EBN-Gp-6l9"/>
+                                    <constraint firstItem="zb3-ZH-m1X" firstAttribute="top" secondItem="W5W-GK-lZM" secondAttribute="top" constant="50" id="JBc-md-4Ee"/>
+                                    <constraint firstItem="WgU-xv-ald" firstAttribute="leading" secondItem="W5W-GK-lZM" secondAttribute="leading" id="LLD-He-hsb"/>
+                                    <constraint firstAttribute="height" constant="177" id="LSi-K7-EFQ"/>
+                                    <constraint firstItem="zb3-ZH-m1X" firstAttribute="centerX" secondItem="W5W-GK-lZM" secondAttribute="centerX" id="RTF-2O-Gaa"/>
+                                    <constraint firstItem="WgU-xv-ald" firstAttribute="top" secondItem="W5W-GK-lZM" secondAttribute="top" constant="20" id="b4F-Jj-qmf"/>
+                                    <constraint firstAttribute="bottom" secondItem="zb3-ZH-m1X" secondAttribute="bottom" constant="82" id="bT2-MO-dW6"/>
+                                    <constraint firstItem="WgU-xv-ald" firstAttribute="centerY" secondItem="W5W-GK-lZM" secondAttribute="centerY" id="cy8-4o-2y1"/>
+                                </constraints>
+                            </view>
                         </subviews>
                         <viewLayoutGuide key="safeArea" id="tlw-xF-zs2"/>
                         <color key="backgroundColor" red="0.91764705879999997" green="0.98039215690000003" blue="0.99607843139999996" alpha="1" colorSpace="custom" customColorSpace="displayP3"/>
@@ -248,27 +237,20 @@
                             <constraint firstItem="oyY-gz-Kig" firstAttribute="leading" secondItem="0Ne-3p-Kf4" secondAttribute="leading" id="DD9-Z6-gXr"/>
                             <constraint firstItem="Clw-Gb-DE6" firstAttribute="leading" secondItem="tlw-xF-zs2" secondAttribute="leading" constant="82" id="GB7-Zt-0o5"/>
                             <constraint firstItem="ZXN-hx-7jD" firstAttribute="leading" secondItem="tlw-xF-zs2" secondAttribute="leading" id="HUD-IW-w7a"/>
+                            <constraint firstItem="W5W-GK-lZM" firstAttribute="top" secondItem="tlw-xF-zs2" secondAttribute="top" constant="147" id="KBH-hX-YuP"/>
                             <constraint firstItem="tlw-xF-zs2" firstAttribute="trailing" secondItem="Clw-Gb-DE6" secondAttribute="trailing" constant="82" id="Ppl-jG-nVF"/>
-                            <constraint firstItem="Mtg-jG-lYN" firstAttribute="trailing" secondItem="tlw-xF-zs2" secondAttribute="trailing" id="RXQ-u8-lmu"/>
-                            <constraint firstItem="8w8-SU-7Qt" firstAttribute="trailing" secondItem="tlw-xF-zs2" secondAttribute="trailing" id="Xrk-qt-4Bd"/>
-                            <constraint firstItem="Mtg-jG-lYN" firstAttribute="top" secondItem="ZXN-hx-7jD" secondAttribute="bottom" constant="-100" id="ZSe-HE-M9Q"/>
                             <constraint firstAttribute="bottom" secondItem="oyY-gz-Kig" secondAttribute="bottom" constant="63" id="gfL-wT-Da4"/>
-                            <constraint firstItem="8w8-SU-7Qt" firstAttribute="leading" secondItem="tlw-xF-zs2" secondAttribute="leading" id="jFz-VH-Kge"/>
                             <constraint firstItem="W5W-GK-lZM" firstAttribute="trailing" secondItem="tlw-xF-zs2" secondAttribute="trailing" id="kXi-uX-3OG"/>
                             <constraint firstItem="Clw-Gb-DE6" firstAttribute="top" secondItem="W5W-GK-lZM" secondAttribute="bottom" constant="30" id="lpY-6f-iSS"/>
                             <constraint firstItem="W5W-GK-lZM" firstAttribute="leading" secondItem="tlw-xF-zs2" secondAttribute="leading" id="n5c-J6-d9s"/>
                             <constraint firstItem="ZXN-hx-7jD" firstAttribute="top" secondItem="tlw-xF-zs2" secondAttribute="top" id="nhK-lE-MNz"/>
                             <constraint firstItem="ZXN-hx-7jD" firstAttribute="trailing" secondItem="tlw-xF-zs2" secondAttribute="trailing" id="nrQ-cr-LYm"/>
-                            <constraint firstItem="W5W-GK-lZM" firstAttribute="top" secondItem="8w8-SU-7Qt" secondAttribute="bottom" constant="-100" id="pIw-cn-QXV"/>
-                            <constraint firstItem="Mtg-jG-lYN" firstAttribute="leading" secondItem="tlw-xF-zs2" secondAttribute="leading" id="qCc-mG-uXu"/>
-                            <constraint firstItem="8w8-SU-7Qt" firstAttribute="top" secondItem="Mtg-jG-lYN" secondAttribute="bottom" constant="-100" id="s3L-Po-8np"/>
                         </constraints>
                     </view>
                     <navigationItem key="navigationItem" id="ZdF-QC-Lxj"/>
                     <connections>
                         <outlet property="emailTextField" destination="Efx-oG-wgy" id="ru6-3O-hv7"/>
                         <outlet property="nameTextField" destination="lVr-f5-Vhs" id="sQD-OY-QT4"/>
-                        <outlet property="passwordTextField" destination="N5i-hT-Riw" id="xcA-KL-Baj"/>
                         <outlet property="studentIDTextField" destination="zb3-ZH-m1X" id="BjS-9B-iEG"/>
                         <segue destination="pZ3-Kg-W8k" kind="show" identifier="GoToRecord" id="zcw-CW-hPP"/>
                         <segue destination="rXJ-vt-WP0" kind="show" identifier="goToRegistered" id="9iH-EF-hvO"/>
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/project.pbxproj b/FaceRecogAttendance/Pods/Pods.xcodeproj/project.pbxproj
index f1bda18..a2d60b2 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/project.pbxproj
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/project.pbxproj
@@ -19,6 +19,7 @@
 				B87EFB498C0798092481742B1DC5F612 /* PBXTargetDependency */,
 			);
 			name = Firebase;
+			productName = Firebase;
 		};
 /* End PBXAggregateTarget section */
 
@@ -8430,122 +8431,122 @@
 /* End PBXCopyFilesBuildPhase section */
 
 /* Begin PBXFileReference section */
-		002A2BAC6E4BDF5AAE3E1E2D8BE79106 /* mul.c */ = {isa = PBXFileReference; includeInIndex = 1; name = mul.c; path = src/crypto/fipsmodule/bn/mul.c; sourceTree = "<group>"; };
+		002A2BAC6E4BDF5AAE3E1E2D8BE79106 /* mul.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = mul.c; path = src/crypto/fipsmodule/bn/mul.c; sourceTree = "<group>"; };
 		003BBB7A90553637F76257C9668CD8CB /* FIRHeartbeatInfo.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRHeartbeatInfo.h; path = FirebaseCore/Sources/Private/FIRHeartbeatInfo.h; sourceTree = "<group>"; };
 		0042F8E9584D8BA8671A2574D2F5A8B7 /* GDTCOREndpoints.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCOREndpoints.m; path = GoogleDataTransport/GDTCORLibrary/GDTCOREndpoints.m; sourceTree = "<group>"; };
 		00665DCB34C0A18967590FE1099BC710 /* resolving_lb_policy.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resolving_lb_policy.h; path = src/core/ext/filters/client_channel/resolving_lb_policy.h; sourceTree = "<group>"; };
 		006AB777B6F7C5EF590A95784A226AB3 /* FIROAuthCredential.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIROAuthCredential.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthCredential.h; sourceTree = "<group>"; };
-		007ECCD2FF2ADAA6EE5CCB0036F885D7 /* stream_compression.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = stream_compression.cc; path = src/core/lib/compression/stream_compression.cc; sourceTree = "<group>"; };
+		007ECCD2FF2ADAA6EE5CCB0036F885D7 /* stream_compression.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = stream_compression.cc; path = src/core/lib/compression/stream_compression.cc; sourceTree = "<group>"; };
 		00850D9FE8C8361F35916BEB17258D5F /* scoped_route.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = scoped_route.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/scoped_route.upb.h"; sourceTree = "<group>"; };
-		00968F06432873E6CE2735983105BE3F /* slice.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = slice.cc; path = src/core/lib/slice/slice.cc; sourceTree = "<group>"; };
+		00968F06432873E6CE2735983105BE3F /* slice.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = slice.cc; path = src/core/lib/slice/slice.cc; sourceTree = "<group>"; };
 		00C0504DD493F6EA3F5AFE417AB69BC8 /* fork.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = fork.h; path = include/grpc/fork.h; sourceTree = "<group>"; };
 		00C698014C523484CC2EE5542256C3E1 /* GULSceneDelegateSwizzler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULSceneDelegateSwizzler.h; path = GoogleUtilities/AppDelegateSwizzler/Public/GoogleUtilities/GULSceneDelegateSwizzler.h; sourceTree = "<group>"; };
 		00CDABE29C9C7D5A55E84CA147CDFAAC /* socket_utils_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = socket_utils_posix.h; path = src/core/lib/iomgr/socket_utils_posix.h; sourceTree = "<group>"; };
 		00D9DA87824A33448EBFD5125877BEE7 /* parse_address.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = parse_address.h; path = src/core/ext/filters/client_channel/parse_address.h; sourceTree = "<group>"; };
 		00E2864CF0D5290F4E58F14B0ABD2908 /* subchannel_list.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = subchannel_list.h; path = src/core/ext/filters/client_channel/lb_policy/subchannel_list.h; sourceTree = "<group>"; };
 		00EEA1FED70D278E97CB04841F9D09B4 /* circuit_breaker.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = circuit_breaker.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h"; sourceTree = "<group>"; };
-		00FDA22E7A546627883168D606C17759 /* string_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = string_windows.cc; path = src/core/lib/gpr/string_windows.cc; sourceTree = "<group>"; };
-		013D355EF6ECB0109F9F29A4849D3489 /* a_int.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_int.c; path = src/crypto/asn1/a_int.c; sourceTree = "<group>"; };
-		01434D7C2AD84249E5D7C2821DF19E58 /* x509_lu.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509_lu.c; path = src/crypto/x509/x509_lu.c; sourceTree = "<group>"; };
+		00FDA22E7A546627883168D606C17759 /* string_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = string_windows.cc; path = src/core/lib/gpr/string_windows.cc; sourceTree = "<group>"; };
+		013D355EF6ECB0109F9F29A4849D3489 /* a_int.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_int.c; path = src/crypto/asn1/a_int.c; sourceTree = "<group>"; };
+		01434D7C2AD84249E5D7C2821DF19E58 /* x509_lu.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509_lu.c; path = src/crypto/x509/x509_lu.c; sourceTree = "<group>"; };
 		0150D7F7E3D8560E11749853BFD84681 /* range.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = range.upb.h; path = "src/core/ext/upb-generated/envoy/type/range.upb.h"; sourceTree = "<group>"; };
-		01545A79CCDE49FA803D68CF8F09BE60 /* http_filters_plugin.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = http_filters_plugin.cc; path = src/core/ext/filters/http/http_filters_plugin.cc; sourceTree = "<group>"; };
+		01545A79CCDE49FA803D68CF8F09BE60 /* http_filters_plugin.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = http_filters_plugin.cc; path = src/core/ext/filters/http/http_filters_plugin.cc; sourceTree = "<group>"; };
 		01548AAD6D69FA0BDB032DABC2224F76 /* endpoint.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = endpoint.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/endpoint/endpoint.upb.h"; sourceTree = "<group>"; };
-		01821E2BF8174F95491C0C8EE5289764 /* sync_abseil.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = sync_abseil.cc; path = src/core/lib/gpr/sync_abseil.cc; sourceTree = "<group>"; };
+		01821E2BF8174F95491C0C8EE5289764 /* sync_abseil.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = sync_abseil.cc; path = src/core/lib/gpr/sync_abseil.cc; sourceTree = "<group>"; };
 		01B71A504ECBFC15E8AEF143287EAB8F /* FIRComponent.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRComponent.h; path = FirebaseCore/Sources/Private/FIRComponent.h; sourceTree = "<group>"; };
-		01EC291401A8B0065DEF8C00E1DF0AFF /* e_aesgcmsiv.c */ = {isa = PBXFileReference; includeInIndex = 1; name = e_aesgcmsiv.c; path = src/crypto/cipher_extra/e_aesgcmsiv.c; sourceTree = "<group>"; };
+		01EC291401A8B0065DEF8C00E1DF0AFF /* e_aesgcmsiv.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = e_aesgcmsiv.c; path = src/crypto/cipher_extra/e_aesgcmsiv.c; sourceTree = "<group>"; };
 		01F3BF2E28A286E8AD114FAA7D06836B /* FIRGetOOBConfirmationCodeRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRGetOOBConfirmationCodeRequest.h; path = FirebaseAuth/Sources/Backend/RPC/FIRGetOOBConfirmationCodeRequest.h; sourceTree = "<group>"; };
 		01F52EC3856D07805316F2CF0F340E28 /* stream_compression_identity.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = stream_compression_identity.h; path = src/core/lib/compression/stream_compression_identity.h; sourceTree = "<group>"; };
-		01F57A6C03DC9325209F94DF431754CA /* hrss.c */ = {isa = PBXFileReference; includeInIndex = 1; name = hrss.c; path = src/crypto/hrss/hrss.c; sourceTree = "<group>"; };
+		01F57A6C03DC9325209F94DF431754CA /* hrss.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = hrss.c; path = src/crypto/hrss/hrss.c; sourceTree = "<group>"; };
 		01FD417B494D1F2CAE87269F9FFA52CE /* gRPC-Core.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "gRPC-Core.modulemap"; sourceTree = "<group>"; };
 		020DD413A336EF109FFFC0B5B2D75450 /* inlined_vector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = inlined_vector.h; path = src/core/lib/gprpp/inlined_vector.h; sourceTree = "<group>"; };
 		02123BB06F772086EDF212F56188451A /* slice_weak_hash_table.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = slice_weak_hash_table.h; path = src/core/lib/slice/slice_weak_hash_table.h; sourceTree = "<group>"; };
-		022A642CB978FA05CEA5B02847285DAD /* resource_quota.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = resource_quota.cc; path = src/core/lib/iomgr/resource_quota.cc; sourceTree = "<group>"; };
-		023C309DFEB1634C70CC19D1DE28DBB3 /* grpc_alts_credentials_options.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_alts_credentials_options.cc; path = src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc; sourceTree = "<group>"; };
-		024D2F2E615B550F836461FB1F14924B /* status_win.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = status_win.cc; path = Firestore/core/src/util/status_win.cc; sourceTree = "<group>"; };
-		029037AE09110B71C4A7773AD37A4D69 /* hpack_encoder.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = hpack_encoder.cc; path = src/core/ext/transport/chttp2/transport/hpack_encoder.cc; sourceTree = "<group>"; };
-		029796AD9E7C65EF7365C7D1CD3D2C16 /* p_ed25519.c */ = {isa = PBXFileReference; includeInIndex = 1; name = p_ed25519.c; path = src/crypto/evp/p_ed25519.c; sourceTree = "<group>"; };
-		02A218BBBA10BC01E467A31517F287A4 /* rds.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = rds.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/rds.upb.c"; sourceTree = "<group>"; };
-		02A745F0B0AAE50836C9AD5E11D0A084 /* filter.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = filter.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c"; sourceTree = "<group>"; };
+		022A642CB978FA05CEA5B02847285DAD /* resource_quota.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = resource_quota.cc; path = src/core/lib/iomgr/resource_quota.cc; sourceTree = "<group>"; };
+		023C309DFEB1634C70CC19D1DE28DBB3 /* grpc_alts_credentials_options.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_alts_credentials_options.cc; path = src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc; sourceTree = "<group>"; };
+		024D2F2E615B550F836461FB1F14924B /* status_win.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = status_win.cc; path = Firestore/core/src/util/status_win.cc; sourceTree = "<group>"; };
+		029037AE09110B71C4A7773AD37A4D69 /* hpack_encoder.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = hpack_encoder.cc; path = src/core/ext/transport/chttp2/transport/hpack_encoder.cc; sourceTree = "<group>"; };
+		029796AD9E7C65EF7365C7D1CD3D2C16 /* p_ed25519.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = p_ed25519.c; path = src/crypto/evp/p_ed25519.c; sourceTree = "<group>"; };
+		02A218BBBA10BC01E467A31517F287A4 /* rds.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = rds.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/rds.upb.c"; sourceTree = "<group>"; };
+		02A745F0B0AAE50836C9AD5E11D0A084 /* filter.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = filter.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c"; sourceTree = "<group>"; };
 		02A900BB5156C327628541B18FBD02C8 /* variant.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = variant.h; path = absl/types/variant.h; sourceTree = "<group>"; };
 		02BD392CBEC1AE6C82663C7209524212 /* api_trace.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = api_trace.h; path = src/core/lib/surface/api_trace.h; sourceTree = "<group>"; };
 		02DAED34B2B3B73C5A43161CC730ABCA /* sync_custom.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sync_custom.h; path = include/grpc/impl/codegen/sync_custom.h; sourceTree = "<group>"; };
 		02DE08DD8B7D617F2EDBA6FF9572B0D6 /* call_test_only.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = call_test_only.h; path = src/core/lib/surface/call_test_only.h; sourceTree = "<group>"; };
 		02E69F8F4CD1C81270D4C23F5BEA30F1 /* FBLPromise+Do.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "FBLPromise+Do.m"; path = "Sources/FBLPromises/FBLPromise+Do.m"; sourceTree = "<group>"; };
-		02ED6B303E9F685353E23C1E4D8D7F22 /* empty.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = empty.upb.c; path = "src/core/ext/upb-generated/google/protobuf/empty.upb.c"; sourceTree = "<group>"; };
+		02ED6B303E9F685353E23C1E4D8D7F22 /* empty.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = empty.upb.c; path = "src/core/ext/upb-generated/google/protobuf/empty.upb.c"; sourceTree = "<group>"; };
 		02FCEC417BE6BA04CD0A09EA325E0437 /* GoogleUtilities.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = GoogleUtilities.release.xcconfig; sourceTree = "<group>"; };
 		02FE7E5240156AC9D55AE01F1CB9880A /* endpoint.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = endpoint.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/endpoint/endpoint.upb.h"; sourceTree = "<group>"; };
-		0305A9121CEF822A77F227FF20B5B17D /* p_x25519_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; name = p_x25519_asn1.c; path = src/crypto/evp/p_x25519_asn1.c; sourceTree = "<group>"; };
-		03226BEA61AC2A7FB876B98030BF3B26 /* endpoint_cfstream.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = endpoint_cfstream.cc; path = src/core/lib/iomgr/endpoint_cfstream.cc; sourceTree = "<group>"; };
+		0305A9121CEF822A77F227FF20B5B17D /* p_x25519_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = p_x25519_asn1.c; path = src/crypto/evp/p_x25519_asn1.c; sourceTree = "<group>"; };
+		03226BEA61AC2A7FB876B98030BF3B26 /* endpoint_cfstream.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = endpoint_cfstream.cc; path = src/core/lib/iomgr/endpoint_cfstream.cc; sourceTree = "<group>"; };
 		033CE26E14459EC2E1CA0FF754A8F5CE /* FIRFacebookAuthCredential.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRFacebookAuthCredential.m; path = FirebaseAuth/Sources/AuthProvider/Facebook/FIRFacebookAuthCredential.m; sourceTree = "<group>"; };
-		034EE46A223292F8F90DB4DB729ACF18 /* bad_any_cast.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = bad_any_cast.cc; path = absl/types/bad_any_cast.cc; sourceTree = "<group>"; };
-		0375FA58AC742444223E23CA8622300D /* handshaker_registry.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = handshaker_registry.cc; path = src/core/lib/channel/handshaker_registry.cc; sourceTree = "<group>"; };
-		03820E6C73FBEC8CE73E742EF91AA387 /* exec_ctx.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = exec_ctx.cc; path = src/core/lib/iomgr/exec_ctx.cc; sourceTree = "<group>"; };
-		0384DA90F2861FC000A2C831023032BE /* p_ec.c */ = {isa = PBXFileReference; includeInIndex = 1; name = p_ec.c; path = src/crypto/evp/p_ec.c; sourceTree = "<group>"; };
+		034EE46A223292F8F90DB4DB729ACF18 /* bad_any_cast.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = bad_any_cast.cc; path = absl/types/bad_any_cast.cc; sourceTree = "<group>"; };
+		0375FA58AC742444223E23CA8622300D /* handshaker_registry.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = handshaker_registry.cc; path = src/core/lib/channel/handshaker_registry.cc; sourceTree = "<group>"; };
+		03820E6C73FBEC8CE73E742EF91AA387 /* exec_ctx.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = exec_ctx.cc; path = src/core/lib/iomgr/exec_ctx.cc; sourceTree = "<group>"; };
+		0384DA90F2861FC000A2C831023032BE /* p_ec.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = p_ec.c; path = src/crypto/evp/p_ec.c; sourceTree = "<group>"; };
 		0385F75436D80B833C119AF17B4571E8 /* arena.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = arena.h; path = src/core/lib/gprpp/arena.h; sourceTree = "<group>"; };
 		03A3B761667B2CDAC85BA5C64869EEBA /* debug_location.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = debug_location.h; path = src/core/lib/gprpp/debug_location.h; sourceTree = "<group>"; };
 		03B1988A8842B6311BEF09C2AB931218 /* GoogleUtilities-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "GoogleUtilities-dummy.m"; sourceTree = "<group>"; };
 		03E3943F4866270A6C3B67E220FA2B0F /* socket_mutator.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = socket_mutator.h; path = src/core/lib/iomgr/socket_mutator.h; sourceTree = "<group>"; };
 		03E73E2DFC36AFD013DCF1605040E44C /* FIRPhoneMultiFactorAssertion.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRPhoneMultiFactorAssertion.m; path = FirebaseAuth/Sources/MultiFactor/Phone/FIRPhoneMultiFactorAssertion.m; sourceTree = "<group>"; };
-		03FD68A9E7B44D6C4CD2C6589FE76A27 /* v3_genn.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_genn.c; path = src/crypto/x509v3/v3_genn.c; sourceTree = "<group>"; };
+		03FD68A9E7B44D6C4CD2C6589FE76A27 /* v3_genn.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_genn.c; path = src/crypto/x509v3/v3_genn.c; sourceTree = "<group>"; };
 		042590FC7F9C182A3581F359E331FD64 /* tcp_custom.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tcp_custom.h; path = src/core/lib/iomgr/tcp_custom.h; sourceTree = "<group>"; };
-		042F9F971361FE8BB3AC80EC02AE6B18 /* status_util.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = status_util.cc; path = src/core/lib/channel/status_util.cc; sourceTree = "<group>"; };
-		0456BE48907A53BDAB42C606599CF253 /* t_crl.c */ = {isa = PBXFileReference; includeInIndex = 1; name = t_crl.c; path = src/crypto/x509/t_crl.c; sourceTree = "<group>"; };
+		042F9F971361FE8BB3AC80EC02AE6B18 /* status_util.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = status_util.cc; path = src/core/lib/channel/status_util.cc; sourceTree = "<group>"; };
+		0456BE48907A53BDAB42C606599CF253 /* t_crl.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = t_crl.c; path = src/crypto/x509/t_crl.c; sourceTree = "<group>"; };
 		046078A6C8FED9901B3426502D3E3350 /* byte_buffer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = byte_buffer.h; path = include/grpcpp/impl/codegen/byte_buffer.h; sourceTree = "<group>"; };
 		0462EA89B513E72AEE632A21862C4C2E /* FIRLogger.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRLogger.h; path = FirebaseCore/Sources/Private/FIRLogger.h; sourceTree = "<group>"; };
 		04672311152C9CB1D69DF277EAA20BCB /* GULLogger.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GULLogger.m; path = GoogleUtilities/Logger/GULLogger.m; sourceTree = "<group>"; };
-		0472EA6F6F946CA3F845A880CAA3BFCA /* firebase_metadata_provider_apple.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = firebase_metadata_provider_apple.mm; path = Firestore/core/src/remote/firebase_metadata_provider_apple.mm; sourceTree = "<group>"; };
-		0494CCC5D670F8447A9262E40D1D9CB4 /* channel_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = channel_filter.cc; path = src/cpp/common/channel_filter.cc; sourceTree = "<group>"; };
-		04AE72F25C9BF66F42523AEB00A7ACF3 /* incoming_metadata.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = incoming_metadata.cc; path = src/core/ext/transport/chttp2/transport/incoming_metadata.cc; sourceTree = "<group>"; };
+		0472EA6F6F946CA3F845A880CAA3BFCA /* firebase_metadata_provider_apple.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = firebase_metadata_provider_apple.mm; path = Firestore/core/src/remote/firebase_metadata_provider_apple.mm; sourceTree = "<group>"; };
+		0494CCC5D670F8447A9262E40D1D9CB4 /* channel_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = channel_filter.cc; path = src/cpp/common/channel_filter.cc; sourceTree = "<group>"; };
+		04AE72F25C9BF66F42523AEB00A7ACF3 /* incoming_metadata.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = incoming_metadata.cc; path = src/core/ext/transport/chttp2/transport/incoming_metadata.cc; sourceTree = "<group>"; };
 		04B9EF5E24F837917332CFF297A53501 /* GoogleDataTransport.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = GoogleDataTransport.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		04BE3E3AA5FB969E9C5916D8452F9B3E /* tmpfile.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tmpfile.h; path = src/core/lib/gpr/tmpfile.h; sourceTree = "<group>"; };
 		04BED3B1EAAD5C92272672B7DB3F05CF /* http_uri.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = http_uri.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.h"; sourceTree = "<group>"; };
 		04D444C51484C8E4B2A1B968B06FF8CA /* FIRFinalizeMFAEnrollmentRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRFinalizeMFAEnrollmentRequest.m; path = FirebaseAuth/Sources/Backend/RPC/MultiFactor/Enroll/FIRFinalizeMFAEnrollmentRequest.m; sourceTree = "<group>"; };
 		04D7C9EF3CB1B2D36BAD4ABFD0711448 /* server_context.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_context.h; path = include/grpcpp/server_context.h; sourceTree = "<group>"; };
-		04EA988896DCE7AD84F151E7FD3A38F2 /* basic_timers.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = basic_timers.cc; path = src/core/lib/profiling/basic_timers.cc; sourceTree = "<group>"; };
-		04F7E56C8AA9806CFBC53AC70C6CEFB3 /* cbc.c */ = {isa = PBXFileReference; includeInIndex = 1; name = cbc.c; path = src/crypto/fipsmodule/modes/cbc.c; sourceTree = "<group>"; };
+		04EA988896DCE7AD84F151E7FD3A38F2 /* basic_timers.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = basic_timers.cc; path = src/core/lib/profiling/basic_timers.cc; sourceTree = "<group>"; };
+		04F7E56C8AA9806CFBC53AC70C6CEFB3 /* cbc.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = cbc.c; path = src/crypto/fipsmodule/modes/cbc.c; sourceTree = "<group>"; };
 		050BAC1227B9131A16975DD7D24F8324 /* byte_buffer_reader.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = byte_buffer_reader.h; path = include/grpc/impl/codegen/byte_buffer_reader.h; sourceTree = "<group>"; };
 		050DC4742D0F8BCCBFE182E30A2AFF62 /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/fipsmodule/rsa/internal.h; sourceTree = "<group>"; };
-		052FC988D5AF3CA9D35C855BE7EB49C6 /* uri_parser.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = uri_parser.cc; path = src/core/lib/uri/uri_parser.cc; sourceTree = "<group>"; };
+		052FC988D5AF3CA9D35C855BE7EB49C6 /* uri_parser.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = uri_parser.cc; path = src/core/lib/uri/uri_parser.cc; sourceTree = "<group>"; };
 		05306E2766CD885AF2CDA73B8BDC7AD9 /* FIREmailLinkSignInResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIREmailLinkSignInResponse.h; path = FirebaseAuth/Sources/Backend/RPC/FIREmailLinkSignInResponse.h; sourceTree = "<group>"; };
 		053A2BC08AD1C07C37D04676390F2C79 /* spinlock.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = spinlock.h; path = absl/base/internal/spinlock.h; sourceTree = "<group>"; };
 		058801626512F133F1E708907EFCEC1E /* FIRGeoPoint.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRGeoPoint.h; path = Firestore/Source/Public/FirebaseFirestore/FIRGeoPoint.h; sourceTree = "<group>"; };
 		05953213CDB0BAD4F7A178D4C83BF328 /* message_allocator.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = message_allocator.h; path = include/grpcpp/support/message_allocator.h; sourceTree = "<group>"; };
-		05F034A7A21462DD31A9286F602A8632 /* firebase_metadata_provider_noop.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = firebase_metadata_provider_noop.cc; path = Firestore/core/src/remote/firebase_metadata_provider_noop.cc; sourceTree = "<group>"; };
+		05F034A7A21462DD31A9286F602A8632 /* firebase_metadata_provider_noop.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = firebase_metadata_provider_noop.cc; path = Firestore/core/src/remote/firebase_metadata_provider_noop.cc; sourceTree = "<group>"; };
 		05F42AEE7A79B9A118AC9A2C41400E20 /* security_connector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = security_connector.h; path = src/core/lib/security/security_connector/security_connector.h; sourceTree = "<group>"; };
 		062D9A3A8E2D2C5D0073DA59CB0DD156 /* FIRVerifyPasswordResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRVerifyPasswordResponse.m; path = FirebaseAuth/Sources/Backend/RPC/FIRVerifyPasswordResponse.m; sourceTree = "<group>"; };
 		0638C2E0B8D4CBA78969D954DC1A3D1C /* arena.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = arena.h; path = src/core/lib/gpr/arena.h; sourceTree = "<group>"; };
 		0665D37826E0E4C2555CD3F051CD9183 /* tls_credentials_options.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tls_credentials_options.h; path = include/grpcpp/security/tls_credentials_options.h; sourceTree = "<group>"; };
-		066B0205ADDD187ABDECA864A4D9A28C /* bio_ssl.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = bio_ssl.cc; path = src/ssl/bio_ssl.cc; sourceTree = "<group>"; };
+		066B0205ADDD187ABDECA864A4D9A28C /* bio_ssl.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = bio_ssl.cc; path = src/ssl/bio_ssl.cc; sourceTree = "<group>"; };
 		0679E9EBEB3D3D352FC8B1E05D0E4EFC /* ec_key.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ec_key.h; path = src/include/openssl/ec_key.h; sourceTree = "<group>"; };
-		068556B99F3132BAC94E39595432ADA1 /* p_rsa_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; name = p_rsa_asn1.c; path = src/crypto/evp/p_rsa_asn1.c; sourceTree = "<group>"; };
+		068556B99F3132BAC94E39595432ADA1 /* p_rsa_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = p_rsa_asn1.c; path = src/crypto/evp/p_rsa_asn1.c; sourceTree = "<group>"; };
 		068A45F6E24010CD19D50669B8E0862D /* discovery.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = discovery.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/discovery.upb.h"; sourceTree = "<group>"; };
 		0694F75ADF3BF5338D3FB1DDF14E5AD5 /* tcp_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tcp_posix.h; path = src/core/lib/iomgr/tcp_posix.h; sourceTree = "<group>"; };
 		06992B8249BF0091618026637144EEF0 /* casts.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = casts.h; path = absl/base/casts.h; sourceTree = "<group>"; };
 		069FF9C0DBF9AF3E785BEDF2B90672BF /* atm_gcc_sync.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = atm_gcc_sync.h; path = include/grpc/impl/codegen/atm_gcc_sync.h; sourceTree = "<group>"; };
 		06B8C60A94C79FF54C37B63FC555F743 /* FIRAuthUserDefaults.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthUserDefaults.h; path = FirebaseAuth/Sources/Storage/FIRAuthUserDefaults.h; sourceTree = "<group>"; };
-		06D3C2CEE4292B09906EAEB096420E91 /* jwt_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = jwt_credentials.cc; path = src/core/lib/security/credentials/jwt/jwt_credentials.cc; sourceTree = "<group>"; };
-		06FC5C9CF96D60C50FCD47D339C91951 /* nanopb.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = nanopb.framework; path = nanopb.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		06D3C2CEE4292B09906EAEB096420E91 /* jwt_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = jwt_credentials.cc; path = src/core/lib/security/credentials/jwt/jwt_credentials.cc; sourceTree = "<group>"; };
+		06FC5C9CF96D60C50FCD47D339C91951 /* nanopb.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = nanopb.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		072AD6F3B946E3B5988FC13A8E321DA6 /* env.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = env.h; path = include/leveldb/env.h; sourceTree = "<group>"; };
-		07CAF7AD9C28783ADB4E199A9317D6D4 /* maybe_document.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = maybe_document.nanopb.cc; path = Firestore/Protos/nanopb/firestore/local/maybe_document.nanopb.cc; sourceTree = "<group>"; };
+		07CAF7AD9C28783ADB4E199A9317D6D4 /* maybe_document.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = maybe_document.nanopb.cc; path = Firestore/Protos/nanopb/firestore/local/maybe_document.nanopb.cc; sourceTree = "<group>"; };
 		07E3B82FB36C7CC249EB82D008363566 /* str_replace.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = str_replace.h; path = absl/strings/str_replace.h; sourceTree = "<group>"; };
 		07FAFC416A997F419982D6EC0C441122 /* FBLPromiseError.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FBLPromiseError.m; path = Sources/FBLPromises/FBLPromiseError.m; sourceTree = "<group>"; };
-		0806E04736022F0FC5E6657E810883D3 /* dynamic_annotations.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = dynamic_annotations.cc; path = absl/base/dynamic_annotations.cc; sourceTree = "<group>"; };
+		0806E04736022F0FC5E6657E810883D3 /* dynamic_annotations.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = dynamic_annotations.cc; path = absl/base/dynamic_annotations.cc; sourceTree = "<group>"; };
 		081B5C85862BC5E0F89778F6CB881A3C /* stream_compression.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = stream_compression.h; path = src/core/lib/compression/stream_compression.h; sourceTree = "<group>"; };
 		0821074C7F1F07E4A51504A1E0BB5AAD /* FIRAuthBackend+MultiFactor.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "FIRAuthBackend+MultiFactor.m"; path = "FirebaseAuth/Sources/Backend/FIRAuthBackend+MultiFactor.m"; sourceTree = "<group>"; };
 		082F55CB5BA2A948F1DC2BE124DF990F /* msg.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = msg.h; path = third_party/upb/upb/msg.h; sourceTree = "<group>"; };
-		0839060F660E38B33C760A373291C1A1 /* leveldb_remote_document_cache.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = leveldb_remote_document_cache.cc; path = Firestore/core/src/local/leveldb_remote_document_cache.cc; sourceTree = "<group>"; };
+		0839060F660E38B33C760A373291C1A1 /* leveldb_remote_document_cache.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = leveldb_remote_document_cache.cc; path = Firestore/core/src/local/leveldb_remote_document_cache.cc; sourceTree = "<group>"; };
 		08575840FEB7DAC399480FA53CDF806C /* leveldb-library-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "leveldb-library-dummy.m"; sourceTree = "<group>"; };
-		085C3693AD7DB15E04C1BB3B7E9B1402 /* lb_policy.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = lb_policy.cc; path = src/core/ext/filters/client_channel/lb_policy.cc; sourceTree = "<group>"; };
-		089F18C805AF6DB8EF1D0A2C96D440A5 /* stream.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = stream.cc; path = Firestore/core/src/remote/stream.cc; sourceTree = "<group>"; };
+		085C3693AD7DB15E04C1BB3B7E9B1402 /* lb_policy.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = lb_policy.cc; path = src/core/ext/filters/client_channel/lb_policy.cc; sourceTree = "<group>"; };
+		089F18C805AF6DB8EF1D0A2C96D440A5 /* stream.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = stream.cc; path = Firestore/core/src/remote/stream.cc; sourceTree = "<group>"; };
 		08B16708CA3501DD47A183F427AB24B0 /* FIRFirestoreErrors.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRFirestoreErrors.h; path = Firestore/Source/Public/FirebaseFirestore/FIRFirestoreErrors.h; sourceTree = "<group>"; };
-		08BC05053DDAB1845AC8774323AED137 /* socket_utils_common_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = socket_utils_common_posix.cc; path = src/core/lib/iomgr/socket_utils_common_posix.cc; sourceTree = "<group>"; };
+		08BC05053DDAB1845AC8774323AED137 /* socket_utils_common_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = socket_utils_common_posix.cc; path = src/core/lib/iomgr/socket_utils_common_posix.cc; sourceTree = "<group>"; };
 		08BFB5F1B33A2DEE5D25AAB775482C11 /* alts_record_protocol_crypter_common.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_record_protocol_crypter_common.h; path = src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.h; sourceTree = "<group>"; };
 		08C09D3C88CDF1A3A6761977288FE99F /* skiplist.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = skiplist.h; path = db/skiplist.h; sourceTree = "<group>"; };
 		08C8620BB90FD47B1CA1EBE1B0E9A48A /* Pods-FaceRecogAttendance-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-FaceRecogAttendance-Info.plist"; sourceTree = "<group>"; };
-		08CBC516B0330ECCA5A62D502F65689A /* tasn_fre.c */ = {isa = PBXFileReference; includeInIndex = 1; name = tasn_fre.c; path = src/crypto/asn1/tasn_fre.c; sourceTree = "<group>"; };
+		08CBC516B0330ECCA5A62D502F65689A /* tasn_fre.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = tasn_fre.c; path = src/crypto/asn1/tasn_fre.c; sourceTree = "<group>"; };
 		08DB72E7EF818062FBF67F12BEEDD9AF /* float_conversion.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = float_conversion.h; path = absl/strings/internal/str_format/float_conversion.h; sourceTree = "<group>"; };
 		08DD153CEB3C733010BD549F70B522EA /* FIRStorageDownloadTask.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageDownloadTask.h; path = FirebaseStorage/Sources/Public/FirebaseStorage/FIRStorageDownloadTask.h; sourceTree = "<group>"; };
-		08E43C1634B795AF511FFCF6BE2D0740 /* init_secure.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = init_secure.cc; path = src/core/lib/surface/init_secure.cc; sourceTree = "<group>"; };
+		08E43C1634B795AF511FFCF6BE2D0740 /* init_secure.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = init_secure.cc; path = src/core/lib/surface/init_secure.cc; sourceTree = "<group>"; };
 		08FF7A4F6F0B41E7C358A9F5A6B689AB /* FIRPhoneMultiFactorAssertion.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRPhoneMultiFactorAssertion.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRPhoneMultiFactorAssertion.h; sourceTree = "<group>"; };
 		090C159B30ABEC0059F52A23787DAC90 /* FIRSecureTokenResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRSecureTokenResponse.h; path = FirebaseAuth/Sources/Backend/RPC/FIRSecureTokenResponse.h; sourceTree = "<group>"; };
 		09426D7C9CF5983E2AE12047472AB92F /* FBLPromiseError.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBLPromiseError.h; path = Sources/FBLPromises/include/FBLPromiseError.h; sourceTree = "<group>"; };
@@ -8559,67 +8560,67 @@
 		0A5F989088DB21B260C8576346617993 /* subchannel_list.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = subchannel_list.h; path = src/core/ext/filters/client_channel/lb_policy/subchannel_list.h; sourceTree = "<group>"; };
 		0A8D16CA51ADF1AD83914387F61B740A /* map.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = map.h; path = src/core/lib/gprpp/map.h; sourceTree = "<group>"; };
 		0A9CEBECC4A04E491F6B345BB19C9C15 /* b64.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = b64.h; path = src/core/lib/slice/b64.h; sourceTree = "<group>"; };
-		0A9F46A999C47653013D3AD854352507 /* leveldb.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = leveldb.framework; path = "leveldb-library.framework"; sourceTree = BUILT_PRODUCTS_DIR; };
+		0A9F46A999C47653013D3AD854352507 /* leveldb.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = leveldb.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		0AC1BD3DE3126D4A0FC1EECAFC83084E /* FIRAuthRPCRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthRPCRequest.h; path = FirebaseAuth/Sources/Backend/FIRAuthRPCRequest.h; sourceTree = "<group>"; };
 		0AC631460FA85807BD64156F577538CB /* FirebaseFirestore-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "FirebaseFirestore-Info.plist"; sourceTree = "<group>"; };
-		0AC653B9C9AEE249623592982E09075C /* resolve_address.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = resolve_address.cc; path = src/core/lib/iomgr/resolve_address.cc; sourceTree = "<group>"; };
+		0AC653B9C9AEE249623592982E09075C /* resolve_address.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = resolve_address.cc; path = src/core/lib/iomgr/resolve_address.cc; sourceTree = "<group>"; };
 		0ACA657CEB2517604E9490E2E371FE34 /* NSData+FIRBase64.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "NSData+FIRBase64.m"; path = "FirebaseAuth/Sources/Utilities/NSData+FIRBase64.m"; sourceTree = "<group>"; };
 		0AEC18A2ECD07FD31591A530019F0EDE /* route.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = route.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/route/route.upb.h"; sourceTree = "<group>"; };
 		0B03201E49FB0EE96725E7EEDD490DCD /* sync_stream_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sync_stream_impl.h; path = include/grpcpp/impl/codegen/sync_stream_impl.h; sourceTree = "<group>"; };
 		0B263051F8F302E29CD1C7127081B2FE /* server_builder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_builder.h; path = include/grpcpp/server_builder.h; sourceTree = "<group>"; };
-		0B2C25C47982F0630C4FDA93407AE3CB /* histogram.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = histogram.cc; path = util/histogram.cc; sourceTree = "<group>"; };
-		0B356841FBD7695F02D10D7C87F723C3 /* random.c */ = {isa = PBXFileReference; includeInIndex = 1; name = random.c; path = src/crypto/fipsmodule/bn/random.c; sourceTree = "<group>"; };
-		0B4EFE3258604B60E3F6140428CB243E /* obj_xref.c */ = {isa = PBXFileReference; includeInIndex = 1; name = obj_xref.c; path = src/crypto/obj/obj_xref.c; sourceTree = "<group>"; };
-		0B5218D5B7A1AC5B7471AA6FD5928CC4 /* database_id.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = database_id.cc; path = Firestore/core/src/model/database_id.cc; sourceTree = "<group>"; };
+		0B2C25C47982F0630C4FDA93407AE3CB /* histogram.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = histogram.cc; path = util/histogram.cc; sourceTree = "<group>"; };
+		0B356841FBD7695F02D10D7C87F723C3 /* random.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = random.c; path = src/crypto/fipsmodule/bn/random.c; sourceTree = "<group>"; };
+		0B4EFE3258604B60E3F6140428CB243E /* obj_xref.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = obj_xref.c; path = src/crypto/obj/obj_xref.c; sourceTree = "<group>"; };
+		0B5218D5B7A1AC5B7471AA6FD5928CC4 /* database_id.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = database_id.cc; path = Firestore/core/src/model/database_id.cc; sourceTree = "<group>"; };
 		0B6BCE25EB2F9F3AC29338339D8ED0AD /* lame_client.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = lame_client.h; path = src/core/lib/surface/lame_client.h; sourceTree = "<group>"; };
 		0B75585B0F8D201603554F72D18C2ED7 /* FIRVerifyPhoneNumberRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRVerifyPhoneNumberRequest.h; path = FirebaseAuth/Sources/Backend/RPC/FIRVerifyPhoneNumberRequest.h; sourceTree = "<group>"; };
-		0B7BBDD0671650A58F9B63941FB9FBFE /* fake_transport_security.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = fake_transport_security.cc; path = src/core/tsi/fake_transport_security.cc; sourceTree = "<group>"; };
-		0B9774C73E4E8CE32A99577DED69AD4D /* FIRListenerRegistration.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FIRListenerRegistration.mm; path = Firestore/Source/API/FIRListenerRegistration.mm; sourceTree = "<group>"; };
-		0B9C86BA0E242A41F2F3555A8B98C57C /* time_zone_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = time_zone_posix.cc; path = absl/time/internal/cctz/src/time_zone_posix.cc; sourceTree = "<group>"; };
+		0B7BBDD0671650A58F9B63941FB9FBFE /* fake_transport_security.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = fake_transport_security.cc; path = src/core/tsi/fake_transport_security.cc; sourceTree = "<group>"; };
+		0B9774C73E4E8CE32A99577DED69AD4D /* FIRListenerRegistration.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FIRListenerRegistration.mm; path = Firestore/Source/API/FIRListenerRegistration.mm; sourceTree = "<group>"; };
+		0B9C86BA0E242A41F2F3555A8B98C57C /* time_zone_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = time_zone_posix.cc; path = absl/time/internal/cctz/src/time_zone_posix.cc; sourceTree = "<group>"; };
 		0BB5E19F2776D7336BD9DBECF9363363 /* Pods-FaceRecogAttendance.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-FaceRecogAttendance.release.xcconfig"; sourceTree = "<group>"; };
-		0BD91F9B5319EC3759238210013EC4D4 /* mpscq.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = mpscq.cc; path = src/core/lib/gprpp/mpscq.cc; sourceTree = "<group>"; };
+		0BD91F9B5319EC3759238210013EC4D4 /* mpscq.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = mpscq.cc; path = src/core/lib/gprpp/mpscq.cc; sourceTree = "<group>"; };
 		0BF772E92418305571BBB139F634B237 /* service_config.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = service_config.h; path = src/core/ext/filters/client_channel/service_config.h; sourceTree = "<group>"; };
 		0C1FB6BC1049B2F151C5710FCB76359B /* resolver_factory.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resolver_factory.h; path = src/core/ext/filters/client_channel/resolver_factory.h; sourceTree = "<group>"; };
 		0C2B4A44930576CE025B838C1766AE55 /* completion_queue_factory.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = completion_queue_factory.h; path = src/core/lib/surface/completion_queue_factory.h; sourceTree = "<group>"; };
-		0C2EC7B352BFB3762892738F18462579 /* http_server_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = http_server_filter.cc; path = src/core/ext/filters/http/server/http_server_filter.cc; sourceTree = "<group>"; };
+		0C2EC7B352BFB3762892738F18462579 /* http_server_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = http_server_filter.cc; path = src/core/ext/filters/http/server/http_server_filter.cc; sourceTree = "<group>"; };
 		0C431ED36BD0040A10280B022F508E9E /* FIRAuthWebView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthWebView.m; path = FirebaseAuth/Sources/Utilities/FIRAuthWebView.m; sourceTree = "<group>"; };
 		0C635E2BA8591475A2A9A6D9929B46E3 /* alts_tsi_handshaker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_tsi_handshaker.h; path = src/core/tsi/alts/handshaker/alts_tsi_handshaker.h; sourceTree = "<group>"; };
 		0CF9AF9916991DD52315F1E5CEAAF987 /* completion_queue_factory.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = completion_queue_factory.h; path = src/core/lib/surface/completion_queue_factory.h; sourceTree = "<group>"; };
 		0D260CAC927D627CDCCC1AD5992DAD3F /* create_channel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = create_channel.h; path = include/grpcpp/create_channel.h; sourceTree = "<group>"; };
 		0D43584A0C268F3EF240C419562049D5 /* leveldb-library-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "leveldb-library-umbrella.h"; sourceTree = "<group>"; };
-		0D77C13B2F68D0CB1598CEF271D1B83D /* resolve_address_custom.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = resolve_address_custom.cc; path = src/core/lib/iomgr/resolve_address_custom.cc; sourceTree = "<group>"; };
+		0D77C13B2F68D0CB1598CEF271D1B83D /* resolve_address_custom.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = resolve_address_custom.cc; path = src/core/lib/iomgr/resolve_address_custom.cc; sourceTree = "<group>"; };
 		0D866972622E87C2F61A2789206D78DB /* FIRStorageTaskSnapshot_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageTaskSnapshot_Private.h; path = FirebaseStorage/Sources/FIRStorageTaskSnapshot_Private.h; sourceTree = "<group>"; };
 		0D8D8BBF4D5811B70BA413A108092661 /* FIRStorageConstants.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStorageConstants.m; path = FirebaseStorage/Sources/FIRStorageConstants.m; sourceTree = "<group>"; };
 		0D8FEDA7A4914169550BA238A8830390 /* channel_stack_builder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channel_stack_builder.h; path = src/core/lib/channel/channel_stack_builder.h; sourceTree = "<group>"; };
-		0D90918FAB44D6DB8A7DF481C596025A /* exception.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = exception.cc; path = Firestore/core/src/util/exception.cc; sourceTree = "<group>"; };
-		0D97820EB977F87CCF886F996C40286B /* global_subchannel_pool.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = global_subchannel_pool.cc; path = src/core/ext/filters/client_channel/global_subchannel_pool.cc; sourceTree = "<group>"; };
+		0D90918FAB44D6DB8A7DF481C596025A /* exception.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = exception.cc; path = Firestore/core/src/util/exception.cc; sourceTree = "<group>"; };
+		0D97820EB977F87CCF886F996C40286B /* global_subchannel_pool.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = global_subchannel_pool.cc; path = src/core/ext/filters/client_channel/global_subchannel_pool.cc; sourceTree = "<group>"; };
 		0DACA5E2DFD9CB6B91C36A7D20E37C8A /* alts_shared_resource.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_shared_resource.h; path = src/core/tsi/alts/handshaker/alts_shared_resource.h; sourceTree = "<group>"; };
 		0DF109D9265ED1D6B7F194920E38A678 /* error_internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = error_internal.h; path = src/core/lib/iomgr/error_internal.h; sourceTree = "<group>"; };
-		0DF41638EBA15AAE30E8FD94AA874393 /* md5.c */ = {isa = PBXFileReference; includeInIndex = 1; name = md5.c; path = src/crypto/fipsmodule/md5/md5.c; sourceTree = "<group>"; };
-		0E469C6ADB7F3BE2804EC9DDACAD96C8 /* printf.c */ = {isa = PBXFileReference; includeInIndex = 1; name = printf.c; path = src/crypto/bio/printf.c; sourceTree = "<group>"; };
-		0E57EC98C59664A7A58416D01DD729EA /* status_apple.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = status_apple.mm; path = Firestore/core/src/util/status_apple.mm; sourceTree = "<group>"; };
+		0DF41638EBA15AAE30E8FD94AA874393 /* md5.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = md5.c; path = src/crypto/fipsmodule/md5/md5.c; sourceTree = "<group>"; };
+		0E469C6ADB7F3BE2804EC9DDACAD96C8 /* printf.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = printf.c; path = src/crypto/bio/printf.c; sourceTree = "<group>"; };
+		0E57EC98C59664A7A58416D01DD729EA /* status_apple.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = status_apple.mm; path = Firestore/core/src/util/status_apple.mm; sourceTree = "<group>"; };
 		0E60510BEFA7AAE1F87EF30402AC2714 /* retry_throttle.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = retry_throttle.h; path = src/core/ext/filters/client_channel/retry_throttle.h; sourceTree = "<group>"; };
 		0E9341C40049834B331435271D99F9F4 /* NSURLSession+GULPromises.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "NSURLSession+GULPromises.m"; path = "GoogleUtilities/Environment/URLSessionPromiseWrapper/NSURLSession+GULPromises.m"; sourceTree = "<group>"; };
-		0E99CAE76997D7974ECC7342462A3E1F /* grpc_unary_call.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_unary_call.cc; path = Firestore/core/src/remote/grpc_unary_call.cc; sourceTree = "<group>"; };
+		0E99CAE76997D7974ECC7342462A3E1F /* grpc_unary_call.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_unary_call.cc; path = Firestore/core/src/remote/grpc_unary_call.cc; sourceTree = "<group>"; };
 		0EAEAF7F0AA2F3E4E49AB8261806B7DA /* asn1t.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = asn1t.h; path = src/include/openssl/asn1t.h; sourceTree = "<group>"; };
 		0F14E2BAAFA28E188E539787735BA357 /* CLTypingLabel-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "CLTypingLabel-umbrella.h"; sourceTree = "<group>"; };
-		0F37367B62E68B0067F7CBA8EFBD3F00 /* validate_metadata.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = validate_metadata.cc; path = src/core/lib/surface/validate_metadata.cc; sourceTree = "<group>"; };
+		0F37367B62E68B0067F7CBA8EFBD3F00 /* validate_metadata.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = validate_metadata.cc; path = src/core/lib/surface/validate_metadata.cc; sourceTree = "<group>"; };
 		0F46E4D31DB8940B69751707431056EB /* FIRAuthProtoStartMFAPhoneResponseInfo.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthProtoStartMFAPhoneResponseInfo.m; path = FirebaseAuth/Sources/Backend/RPC/Proto/Phone/FIRAuthProtoStartMFAPhoneResponseInfo.m; sourceTree = "<group>"; };
-		0F69A7B29723823BD4A1AB291942B321 /* hpack_table.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = hpack_table.cc; path = src/core/ext/transport/chttp2/transport/hpack_table.cc; sourceTree = "<group>"; };
-		0F7D05EF291307125C20136C1E2E9F42 /* resolving_lb_policy.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = resolving_lb_policy.cc; path = src/core/ext/filters/client_channel/resolving_lb_policy.cc; sourceTree = "<group>"; };
+		0F69A7B29723823BD4A1AB291942B321 /* hpack_table.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = hpack_table.cc; path = src/core/ext/transport/chttp2/transport/hpack_table.cc; sourceTree = "<group>"; };
+		0F7D05EF291307125C20136C1E2E9F42 /* resolving_lb_policy.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = resolving_lb_policy.cc; path = src/core/ext/filters/client_channel/resolving_lb_policy.cc; sourceTree = "<group>"; };
 		0F8B0E51752E6910785350913178A6A3 /* alts_zero_copy_grpc_protector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_zero_copy_grpc_protector.h; path = src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h; sourceTree = "<group>"; };
 		0FA5381F2B5C550E55D85AEE619F05C3 /* handshaker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = handshaker.h; path = src/core/lib/channel/handshaker.h; sourceTree = "<group>"; };
 		1009670B555603ADB3B0EE0A1C9BF303 /* GDTCOREventTransformer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCOREventTransformer.h; path = GoogleDataTransport/GDTCORLibrary/Public/GoogleDataTransport/GDTCOREventTransformer.h; sourceTree = "<group>"; };
-		102E8564A5B680BC48F3139B98ADFDB0 /* firestore.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = firestore.nanopb.cc; path = Firestore/Protos/nanopb/google/firestore/v1/firestore.nanopb.cc; sourceTree = "<group>"; };
+		102E8564A5B680BC48F3139B98ADFDB0 /* firestore.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = firestore.nanopb.cc; path = Firestore/Protos/nanopb/google/firestore/v1/firestore.nanopb.cc; sourceTree = "<group>"; };
 		10657A1ACD43B7D312BA00D2338794DA /* fake_resolver.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = fake_resolver.h; path = src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h; sourceTree = "<group>"; };
 		106E5F90872E5A8EFE99EFE96625CA46 /* FIRDocumentSnapshot.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRDocumentSnapshot.h; path = Firestore/Source/Public/FirebaseFirestore/FIRDocumentSnapshot.h; sourceTree = "<group>"; };
-		108FA4C50BA80B43AF29D8F26966E343 /* poly1305_arm.c */ = {isa = PBXFileReference; includeInIndex = 1; name = poly1305_arm.c; path = src/crypto/poly1305/poly1305_arm.c; sourceTree = "<group>"; };
+		108FA4C50BA80B43AF29D8F26966E343 /* poly1305_arm.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = poly1305_arm.c; path = src/crypto/poly1305/poly1305_arm.c; sourceTree = "<group>"; };
 		1093E9DBBFDDBAECA7F6F8B410C309B4 /* proxy_mapper_registry.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = proxy_mapper_registry.h; path = src/core/ext/filters/client_channel/proxy_mapper_registry.h; sourceTree = "<group>"; };
 		10AD0363AE8B8EA2A75B713F3391289B /* FIRDependency.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRDependency.h; path = FirebaseCore/Sources/Private/FIRDependency.h; sourceTree = "<group>"; };
 		10C51DC6F315999870EA9DE08A5BF556 /* Firebase.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Firebase.debug.xcconfig; sourceTree = "<group>"; };
-		10DC2B81B7D4A0063B29B34019A08290 /* a_digest.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_digest.c; path = src/crypto/x509/a_digest.c; sourceTree = "<group>"; };
+		10DC2B81B7D4A0063B29B34019A08290 /* a_digest.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_digest.c; path = src/crypto/x509/a_digest.c; sourceTree = "<group>"; };
 		10ED75355ABE93F2547E686ED2DED708 /* stats.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = stats.h; path = src/core/lib/debug/stats.h; sourceTree = "<group>"; };
-		10FDD54A7437C460ACAF51AA655A728B /* simple.c */ = {isa = PBXFileReference; includeInIndex = 1; name = simple.c; path = src/crypto/fipsmodule/ec/simple.c; sourceTree = "<group>"; };
+		10FDD54A7437C460ACAF51AA655A728B /* simple.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = simple.c; path = src/crypto/fipsmodule/ec/simple.c; sourceTree = "<group>"; };
 		1103F8ED42C9CA0B4D3CB73C880D68BB /* server_interceptor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_interceptor.h; path = include/grpcpp/support/server_interceptor.h; sourceTree = "<group>"; };
 		11089FD4FA67E1192CDF309966F73685 /* civil_time.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = civil_time.h; path = absl/time/civil_time.h; sourceTree = "<group>"; };
 		11170314A3D80EEECCB10A12C6C1932D /* FIRVerifyCustomTokenResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRVerifyCustomTokenResponse.h; path = FirebaseAuth/Sources/Backend/RPC/FIRVerifyCustomTokenResponse.h; sourceTree = "<group>"; };
@@ -8628,28 +8629,28 @@
 		115C2D0A658398158BEE8FB0FC4244D4 /* mpscq.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = mpscq.h; path = src/core/lib/gprpp/mpscq.h; sourceTree = "<group>"; };
 		1161C267C5BE130B8F1611BB4CEFF6FD /* endpoint.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = endpoint.h; path = src/core/lib/iomgr/endpoint.h; sourceTree = "<group>"; };
 		1161C2C666DC47BDEA94FC5A750C7D28 /* FBLPromise+Async.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "FBLPromise+Async.m"; path = "Sources/FBLPromises/FBLPromise+Async.m"; sourceTree = "<group>"; };
-		116550560E61F3B3EBCCF0915C1FD2BE /* a_strex.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_strex.c; path = src/crypto/x509/a_strex.c; sourceTree = "<group>"; };
+		116550560E61F3B3EBCCF0915C1FD2BE /* a_strex.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_strex.c; path = src/crypto/x509/a_strex.c; sourceTree = "<group>"; };
 		11B24AAB7742B253DF0AEAB5B2C76FD6 /* optional.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = optional.h; path = absl/types/internal/optional.h; sourceTree = "<group>"; };
-		11CA7CBEA94ACE3019E444F61515C332 /* sysinfo.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = sysinfo.cc; path = absl/base/internal/sysinfo.cc; sourceTree = "<group>"; };
+		11CA7CBEA94ACE3019E444F61515C332 /* sysinfo.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = sysinfo.cc; path = absl/base/internal/sysinfo.cc; sourceTree = "<group>"; };
 		11E2CF54894F27121D6FDEDEE192C37C /* xds_channel_args.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = xds_channel_args.h; path = src/core/ext/filters/client_channel/xds/xds_channel_args.h; sourceTree = "<group>"; };
-		11EC8F2BAE19A863BBD10F7564A176D0 /* any.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = any.upb.c; path = "src/core/ext/upb-generated/google/protobuf/any.upb.c"; sourceTree = "<group>"; };
+		11EC8F2BAE19A863BBD10F7564A176D0 /* any.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = any.upb.c; path = "src/core/ext/upb-generated/google/protobuf/any.upb.c"; sourceTree = "<group>"; };
 		11EDB42316B31B17C19D04B127F55BE9 /* FIRAppAssociationRegistration.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAppAssociationRegistration.h; path = FirebaseCore/Sources/FIRAppAssociationRegistration.h; sourceTree = "<group>"; };
-		1213321D3F11A65813C92DE585FA883D /* path.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = path.cc; path = Firestore/core/src/util/path.cc; sourceTree = "<group>"; };
+		1213321D3F11A65813C92DE585FA883D /* path.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = path.cc; path = Firestore/core/src/util/path.cc; sourceTree = "<group>"; };
 		12542C046340B0B970307CB76902FC62 /* FBLPromise+Catch.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FBLPromise+Catch.h"; path = "Sources/FBLPromises/include/FBLPromise+Catch.h"; sourceTree = "<group>"; };
-		125DDBDA89075B4E5B779D2FC125F834 /* firestore.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = firestore.cc; path = Firestore/core/src/api/firestore.cc; sourceTree = "<group>"; };
-		12696183F449B6B7E5C49EF910898DE0 /* e_null.c */ = {isa = PBXFileReference; includeInIndex = 1; name = e_null.c; path = src/crypto/cipher_extra/e_null.c; sourceTree = "<group>"; };
+		125DDBDA89075B4E5B779D2FC125F834 /* firestore.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = firestore.cc; path = Firestore/core/src/api/firestore.cc; sourceTree = "<group>"; };
+		12696183F449B6B7E5C49EF910898DE0 /* e_null.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = e_null.c; path = src/crypto/cipher_extra/e_null.c; sourceTree = "<group>"; };
 		12723C259BF2F580975AA0C8580FBFEB /* descriptor.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = descriptor.upb.h; path = "src/core/ext/upb-generated/google/protobuf/descriptor.upb.h"; sourceTree = "<group>"; };
 		12850BFD52B7B5E30F4BE9F003C10F44 /* log.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = log.h; path = include/grpc/impl/codegen/log.h; sourceTree = "<group>"; };
-		1285714EBC2440D2814DA65C9F397CC9 /* db_impl.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = db_impl.cc; path = db/db_impl.cc; sourceTree = "<group>"; };
-		12979166B21568B335A59D48B60108BB /* asn1_compat.c */ = {isa = PBXFileReference; includeInIndex = 1; name = asn1_compat.c; path = src/crypto/bytestring/asn1_compat.c; sourceTree = "<group>"; };
+		1285714EBC2440D2814DA65C9F397CC9 /* db_impl.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = db_impl.cc; path = db/db_impl.cc; sourceTree = "<group>"; };
+		12979166B21568B335A59D48B60108BB /* asn1_compat.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = asn1_compat.c; path = src/crypto/bytestring/asn1_compat.c; sourceTree = "<group>"; };
 		12CE36C90814DCA9536103DEACF565DC /* cds.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = cds.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/cds.upb.h"; sourceTree = "<group>"; };
 		12E26611895E2F907BB2CB6F34C3E27A /* FBLPromise.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FBLPromise.m; path = Sources/FBLPromises/FBLPromise.m; sourceTree = "<group>"; };
-		12EA43C69BA667D04F1C9EF2AF9C33DA /* bundle_serializer.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = bundle_serializer.cc; path = Firestore/core/src/bundle/bundle_serializer.cc; sourceTree = "<group>"; };
+		12EA43C69BA667D04F1C9EF2AF9C33DA /* bundle_serializer.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = bundle_serializer.cc; path = Firestore/core/src/bundle/bundle_serializer.cc; sourceTree = "<group>"; };
 		132FE08ECB6D77EA930CF1DCD384FA50 /* client_authority_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_authority_filter.h; path = src/core/ext/filters/http/client_authority_filter.h; sourceTree = "<group>"; };
 		133365E016896191E1AC19C8E1B55441 /* sockaddr_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sockaddr_posix.h; path = src/core/lib/iomgr/sockaddr_posix.h; sourceTree = "<group>"; };
 		1346AD499C279ABBF092A8B4C1FD7930 /* server_callback.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_callback.h; path = include/grpcpp/support/server_callback.h; sourceTree = "<group>"; };
-		1347D8EB851A1A597D2C0E3882CAC969 /* tls_credentials_options.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tls_credentials_options.cc; path = src/cpp/common/tls_credentials_options.cc; sourceTree = "<group>"; };
-		135FA6E645890A047B7C6CA2F95EC416 /* timestamp.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = timestamp.cc; path = Firestore/core/src/timestamp.cc; sourceTree = "<group>"; };
+		1347D8EB851A1A597D2C0E3882CAC969 /* tls_credentials_options.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tls_credentials_options.cc; path = src/cpp/common/tls_credentials_options.cc; sourceTree = "<group>"; };
+		135FA6E645890A047B7C6CA2F95EC416 /* timestamp.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = timestamp.cc; path = Firestore/core/src/timestamp.cc; sourceTree = "<group>"; };
 		137BB4338A6684B595EE55A56E497CF8 /* map.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = map.h; path = src/core/lib/gprpp/map.h; sourceTree = "<group>"; };
 		139D17D97B724B777FBD19E595052411 /* accesslog.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = accesslog.upb.h; path = "src/core/ext/upb-generated/envoy/config/filter/accesslog/v2/accesslog.upb.h"; sourceTree = "<group>"; };
 		13A4BD776D0E96ACA55E2BE6B39368DD /* abseil.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = abseil.release.xcconfig; sourceTree = "<group>"; };
@@ -8657,125 +8658,125 @@
 		13D30F0CF699A73C4C36DB58AB23E9B5 /* pretty_function.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pretty_function.h; path = absl/base/internal/pretty_function.h; sourceTree = "<group>"; };
 		13DE78C007BA45D797E0F572B32EDF82 /* time_zone_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = time_zone_impl.h; path = absl/time/internal/cctz/src/time_zone_impl.h; sourceTree = "<group>"; };
 		13F16DF86F5D8756DC36E4DD5913730B /* FIRStorageTokenAuthorizer.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStorageTokenAuthorizer.m; path = FirebaseStorage/Sources/FIRStorageTokenAuthorizer.m; sourceTree = "<group>"; };
-		13FACCAC15F90C78D371816F2C2ED447 /* sha512.c */ = {isa = PBXFileReference; includeInIndex = 1; name = sha512.c; path = src/crypto/fipsmodule/sha/sha512.c; sourceTree = "<group>"; };
-		14385ECB887612D5E4185DADE802FFB6 /* executor_libdispatch.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = executor_libdispatch.mm; path = Firestore/core/src/util/executor_libdispatch.mm; sourceTree = "<group>"; };
+		13FACCAC15F90C78D371816F2C2ED447 /* sha512.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = sha512.c; path = src/crypto/fipsmodule/sha/sha512.c; sourceTree = "<group>"; };
+		14385ECB887612D5E4185DADE802FFB6 /* executor_libdispatch.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = executor_libdispatch.mm; path = Firestore/core/src/util/executor_libdispatch.mm; sourceTree = "<group>"; };
 		143CAAD83670FCC9177F2CE296174253 /* ev_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ev_posix.h; path = src/core/lib/iomgr/ev_posix.h; sourceTree = "<group>"; };
-		145DDDFB0F49ABF38F9BC65483789C72 /* cds.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = cds.cc; path = src/core/ext/filters/client_channel/lb_policy/xds/cds.cc; sourceTree = "<group>"; };
-		146D21BE5F7012D4B503D1CB9CE84CFD /* grpc_alts_credentials_server_options.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_alts_credentials_server_options.cc; path = src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc; sourceTree = "<group>"; };
-		14854D5D044209CB10E27ED80DD1CB6C /* alarm.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alarm.cc; path = src/cpp/common/alarm.cc; sourceTree = "<group>"; };
+		145DDDFB0F49ABF38F9BC65483789C72 /* cds.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = cds.cc; path = src/core/ext/filters/client_channel/lb_policy/xds/cds.cc; sourceTree = "<group>"; };
+		146D21BE5F7012D4B503D1CB9CE84CFD /* grpc_alts_credentials_server_options.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_alts_credentials_server_options.cc; path = src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc; sourceTree = "<group>"; };
+		14854D5D044209CB10E27ED80DD1CB6C /* alarm.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alarm.cc; path = src/cpp/common/alarm.cc; sourceTree = "<group>"; };
 		14876452D2F1AE2BEB0C572594391295 /* conf.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = conf.h; path = src/include/openssl/conf.h; sourceTree = "<group>"; };
 		14AA24F834353E3806BDF875861E694A /* GTMSessionFetcher.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = GTMSessionFetcher.modulemap; sourceTree = "<group>"; };
 		14BEC18C5103398A4D2D67B5E722ED32 /* merger.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = merger.h; path = table/merger.h; sourceTree = "<group>"; };
-		14EDD3F4E85A5CFFDA4595E818C704D5 /* int128.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = int128.cc; path = absl/numeric/int128.cc; sourceTree = "<group>"; };
+		14EDD3F4E85A5CFFDA4595E818C704D5 /* int128.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = int128.cc; path = absl/numeric/int128.cc; sourceTree = "<group>"; };
 		154CC7ED75D859EE5F4E300989528084 /* random.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = random.h; path = util/random.h; sourceTree = "<group>"; };
 		154E0848A921FD0040E30F0AA6F284E4 /* call_test_only.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = call_test_only.h; path = src/core/lib/surface/call_test_only.h; sourceTree = "<group>"; };
 		158980C28D93C93F32DD5B7B38B98C5A /* FBLPromise+Testing.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FBLPromise+Testing.h"; path = "Sources/FBLPromises/include/FBLPromise+Testing.h"; sourceTree = "<group>"; };
 		15A61009CC0F2A728F8D28465350338C /* resolver.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resolver.h; path = src/core/ext/filters/client_channel/resolver.h; sourceTree = "<group>"; };
-		15AFABB875B3235F000C0711B59F4C9D /* wrap_memcpy.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = wrap_memcpy.cc; path = src/core/lib/gpr/wrap_memcpy.cc; sourceTree = "<group>"; };
+		15AFABB875B3235F000C0711B59F4C9D /* wrap_memcpy.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = wrap_memcpy.cc; path = src/core/lib/gpr/wrap_memcpy.cc; sourceTree = "<group>"; };
 		15D2C4D86B13286F30E110D54161FD27 /* pkcs12.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pkcs12.h; path = src/include/openssl/pkcs12.h; sourceTree = "<group>"; };
 		16262B40A80E7213A7E0FBC1ED5F818E /* validate.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = validate.upb.h; path = "src/core/ext/upb-generated/validate/validate.upb.h"; sourceTree = "<group>"; };
 		1632A83CECCABC48410C56AF7AC076AF /* polling_entity.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = polling_entity.h; path = src/core/lib/iomgr/polling_entity.h; sourceTree = "<group>"; };
 		163B0EF866C85D7FD75C2DF4D1777D6D /* span.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = span.h; path = src/include/openssl/span.h; sourceTree = "<group>"; };
 		163CBCE6CCEAEDB6B7A9862F464D6E47 /* FIRCreateAuthURIRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRCreateAuthURIRequest.h; path = FirebaseAuth/Sources/Backend/RPC/FIRCreateAuthURIRequest.h; sourceTree = "<group>"; };
-		16424100802561041E64CF561CA0A350 /* ev_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ev_windows.cc; path = src/core/lib/iomgr/ev_windows.cc; sourceTree = "<group>"; };
-		1683257EBDFB589D68C27CEFAFA3C304 /* lhash.c */ = {isa = PBXFileReference; includeInIndex = 1; name = lhash.c; path = src/crypto/lhash/lhash.c; sourceTree = "<group>"; };
-		16931C6177B4E119A783F0A2FD542A2F /* security_handshaker.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = security_handshaker.cc; path = src/core/lib/security/transport/security_handshaker.cc; sourceTree = "<group>"; };
+		16424100802561041E64CF561CA0A350 /* ev_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ev_windows.cc; path = src/core/lib/iomgr/ev_windows.cc; sourceTree = "<group>"; };
+		1683257EBDFB589D68C27CEFAFA3C304 /* lhash.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = lhash.c; path = src/crypto/lhash/lhash.c; sourceTree = "<group>"; };
+		16931C6177B4E119A783F0A2FD542A2F /* security_handshaker.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = security_handshaker.cc; path = src/core/lib/security/transport/security_handshaker.cc; sourceTree = "<group>"; };
 		16A86ABF42B3E4A770098AC14DBAF172 /* sync_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sync_windows.h; path = include/grpc/impl/codegen/sync_windows.h; sourceTree = "<group>"; };
 		16D7F40BF13F7915754AB1C8AE00479D /* grpc_if_nametoindex.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpc_if_nametoindex.h; path = src/core/lib/iomgr/grpc_if_nametoindex.h; sourceTree = "<group>"; };
-		16E3FA32BE9D54810AFFACF4758DEEC3 /* chttp2_connector.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = chttp2_connector.cc; path = src/core/ext/transport/chttp2/client/chttp2_connector.cc; sourceTree = "<group>"; };
+		16E3FA32BE9D54810AFFACF4758DEEC3 /* chttp2_connector.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = chttp2_connector.cc; path = src/core/ext/transport/chttp2/client/chttp2_connector.cc; sourceTree = "<group>"; };
 		16FBF94F9B5973813424C8F0CBC1746B /* FirebaseStorage.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FirebaseStorage.h; path = FirebaseStorage/Sources/Public/FirebaseStorage/FirebaseStorage.h; sourceTree = "<group>"; };
 		1716B5B94635F23FE5F99B8F8C98A31B /* memory.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = memory.h; path = src/core/lib/gprpp/memory.h; sourceTree = "<group>"; };
-		171B49C5DE04301221A6778FDDD25D33 /* spinlock_win32.inc */ = {isa = PBXFileReference; includeInIndex = 1; name = spinlock_win32.inc; path = absl/base/internal/spinlock_win32.inc; sourceTree = "<group>"; };
+		171B49C5DE04301221A6778FDDD25D33 /* spinlock_win32.inc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.pascal; name = spinlock_win32.inc; path = absl/base/internal/spinlock_win32.inc; sourceTree = "<group>"; };
 		172CB341A6A8214171E2EAA62585973E /* GDTCORFlatFileStorage+Promises.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "GDTCORFlatFileStorage+Promises.m"; path = "GoogleDataTransport/GDTCORLibrary/GDTCORFlatFileStorage+Promises.m"; sourceTree = "<group>"; };
-		1740ADC074D8DC8FF5341F7B8D0F6121 /* FIRLoadBundleTask.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FIRLoadBundleTask.mm; path = Firestore/Source/API/FIRLoadBundleTask.mm; sourceTree = "<group>"; };
-		1744B19907006C1F0443D1F747F05084 /* rsa_impl.c */ = {isa = PBXFileReference; includeInIndex = 1; name = rsa_impl.c; path = src/crypto/fipsmodule/rsa/rsa_impl.c; sourceTree = "<group>"; };
-		174885FBA698F3D08C47D892FEA7A32F /* health_check_service.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = health_check_service.cc; path = src/cpp/server/health/health_check_service.cc; sourceTree = "<group>"; };
+		1740ADC074D8DC8FF5341F7B8D0F6121 /* FIRLoadBundleTask.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FIRLoadBundleTask.mm; path = Firestore/Source/API/FIRLoadBundleTask.mm; sourceTree = "<group>"; };
+		1744B19907006C1F0443D1F747F05084 /* rsa_impl.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = rsa_impl.c; path = src/crypto/fipsmodule/rsa/rsa_impl.c; sourceTree = "<group>"; };
+		174885FBA698F3D08C47D892FEA7A32F /* health_check_service.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = health_check_service.cc; path = src/cpp/server/health/health_check_service.cc; sourceTree = "<group>"; };
 		17683EB0D3894F8A19123296EAA51386 /* error_utils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = error_utils.h; path = src/core/lib/transport/error_utils.h; sourceTree = "<group>"; };
 		177E6F461ED5655488B606E5233ADFEE /* google_default_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = google_default_credentials.h; path = src/core/lib/security/credentials/google_default/google_default_credentials.h; sourceTree = "<group>"; };
 		178982293875EA36DD741A4706636264 /* http_connection_manager.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = http_connection_manager.upb.h; path = "src/core/ext/upb-generated/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.upb.h"; sourceTree = "<group>"; };
-		178A033E987882FF63CD981E9DB4D5E6 /* firebase_credentials_provider_apple.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = firebase_credentials_provider_apple.mm; path = Firestore/core/src/auth/firebase_credentials_provider_apple.mm; sourceTree = "<group>"; };
+		178A033E987882FF63CD981E9DB4D5E6 /* firebase_credentials_provider_apple.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = firebase_credentials_provider_apple.mm; path = Firestore/core/src/auth/firebase_credentials_provider_apple.mm; sourceTree = "<group>"; };
 		17ACADF991D78A20DBFD10985EC097C3 /* FIRSendVerificationCodeResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRSendVerificationCodeResponse.m; path = FirebaseAuth/Sources/Backend/RPC/FIRSendVerificationCodeResponse.m; sourceTree = "<group>"; };
-		17AF29A1F870E0A72D3F7D4E3F934241 /* base64.c */ = {isa = PBXFileReference; includeInIndex = 1; name = base64.c; path = src/crypto/base64/base64.c; sourceTree = "<group>"; };
+		17AF29A1F870E0A72D3F7D4E3F934241 /* base64.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = base64.c; path = src/crypto/base64/base64.c; sourceTree = "<group>"; };
 		17C2C8934AD60329F5CA946C3423D6EC /* grpc_if_nametoindex.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpc_if_nametoindex.h; path = src/core/lib/iomgr/grpc_if_nametoindex.h; sourceTree = "<group>"; };
 		17D9CF791E58C7348A916921554E3B5E /* backoff.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = backoff.h; path = src/core/lib/backoff/backoff.h; sourceTree = "<group>"; };
-		17DEC8DB415BE8611BDD84AC58EF6E0D /* field_path.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = field_path.cc; path = Firestore/core/src/model/field_path.cc; sourceTree = "<group>"; };
+		17DEC8DB415BE8611BDD84AC58EF6E0D /* field_path.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = field_path.cc; path = Firestore/core/src/model/field_path.cc; sourceTree = "<group>"; };
 		17E927438915AB9548BD39C20B1876BF /* FirebaseCore-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "FirebaseCore-umbrella.h"; sourceTree = "<group>"; };
 		17F1CF0E6818FF9E7D033B828194932F /* status_code_enum.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = status_code_enum.h; path = include/grpcpp/impl/codegen/status_code_enum.h; sourceTree = "<group>"; };
-		17F8EC43EDDE6A31C2993B1C8B1CF557 /* repair.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = repair.cc; path = db/repair.cc; sourceTree = "<group>"; };
+		17F8EC43EDDE6A31C2993B1C8B1CF557 /* repair.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = repair.cc; path = db/repair.cc; sourceTree = "<group>"; };
 		180509DE819DD6DA772A7B570DA72316 /* eds.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = eds.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/eds.upb.h"; sourceTree = "<group>"; };
-		180605BB6F0C297FA1807282586E52CB /* core_codegen.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = core_codegen.cc; path = src/cpp/common/core_codegen.cc; sourceTree = "<group>"; };
+		180605BB6F0C297FA1807282586E52CB /* core_codegen.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = core_codegen.cc; path = src/cpp/common/core_codegen.cc; sourceTree = "<group>"; };
 		1848CD595D0EBC9867451974E50C2AF8 /* load_file.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = load_file.h; path = src/core/lib/iomgr/load_file.h; sourceTree = "<group>"; };
 		184FC0007F136B32AD18D69C8156222D /* FIRAuthSettings.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthSettings.m; path = FirebaseAuth/Sources/Auth/FIRAuthSettings.m; sourceTree = "<group>"; };
 		1889AC29823861D5E86AC39E9B43E7ED /* FIRPhoneMultiFactorInfo+Internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FIRPhoneMultiFactorInfo+Internal.h"; path = "FirebaseAuth/Sources/MultiFactor/Phone/FIRPhoneMultiFactorInfo+Internal.h"; sourceTree = "<group>"; };
 		18938E41AF72C0653791D0A9549F3ADD /* FIRQuery.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRQuery.h; path = Firestore/Source/Public/FirebaseFirestore/FIRQuery.h; sourceTree = "<group>"; };
-		18C5C1F5FCB43C0CA652DF1DF0394E0F /* serializer.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = serializer.cc; path = Firestore/core/src/remote/serializer.cc; sourceTree = "<group>"; };
+		18C5C1F5FCB43C0CA652DF1DF0394E0F /* serializer.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = serializer.cc; path = Firestore/core/src/remote/serializer.cc; sourceTree = "<group>"; };
 		18D0A0410D2430AAB3B9AE4785B386CD /* protocol.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = protocol.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h"; sourceTree = "<group>"; };
-		18D30DD214857F72A3B8374F8DB408A2 /* status_conversion.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = status_conversion.cc; path = src/core/lib/transport/status_conversion.cc; sourceTree = "<group>"; };
-		18E1369CC2A3AC5F7660E990AB98DD0E /* endpoint_pair_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = endpoint_pair_posix.cc; path = src/core/lib/iomgr/endpoint_pair_posix.cc; sourceTree = "<group>"; };
-		18F51427EDF1AC98B288CE7BAC731F50 /* memory_eager_reference_delegate.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = memory_eager_reference_delegate.cc; path = Firestore/core/src/local/memory_eager_reference_delegate.cc; sourceTree = "<group>"; };
+		18D30DD214857F72A3B8374F8DB408A2 /* status_conversion.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = status_conversion.cc; path = src/core/lib/transport/status_conversion.cc; sourceTree = "<group>"; };
+		18E1369CC2A3AC5F7660E990AB98DD0E /* endpoint_pair_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = endpoint_pair_posix.cc; path = src/core/lib/iomgr/endpoint_pair_posix.cc; sourceTree = "<group>"; };
+		18F51427EDF1AC98B288CE7BAC731F50 /* memory_eager_reference_delegate.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = memory_eager_reference_delegate.cc; path = Firestore/core/src/local/memory_eager_reference_delegate.cc; sourceTree = "<group>"; };
 		1907235749CF17582742445C18DFE76F /* ssl_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl_credentials.h; path = src/core/lib/security/credentials/ssl/ssl_credentials.h; sourceTree = "<group>"; };
-		1911113E0FBF13CFF9132E5FF7685228 /* grpcpp.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = grpcpp.framework; path = "gRPC-C++.framework"; sourceTree = BUILT_PRODUCTS_DIR; };
+		1911113E0FBF13CFF9132E5FF7685228 /* grpcpp.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = grpcpp.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		192D8F8895D4A7F1E107C1405F2DF130 /* FIRAuthAPNSTokenType.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthAPNSTokenType.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRAuthAPNSTokenType.h; sourceTree = "<group>"; };
 		1942FEE3398AB44F70ED8E2EC35AE6D5 /* FIRStoragePath.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStoragePath.m; path = FirebaseStorage/Sources/FIRStoragePath.m; sourceTree = "<group>"; };
 		1971D04645A476E50DF42C48D0438F03 /* frame_window_update.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = frame_window_update.h; path = src/core/ext/transport/chttp2/transport/frame_window_update.h; sourceTree = "<group>"; };
 		19A2DFA2BA4419C9EEF76ACFE19BFD1F /* FIRAuthTokenResult.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthTokenResult.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRAuthTokenResult.h; sourceTree = "<group>"; };
 		19A2FA0A16C132E1DD08612BCF4761EB /* dh.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = dh.h; path = src/include/openssl/dh.h; sourceTree = "<group>"; };
 		19B2E421AB9E2BCBDC7A63273E29E067 /* service_config.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = service_config.h; path = src/core/ext/filters/client_channel/service_config.h; sourceTree = "<group>"; };
-		19C24D5E462E5EF2F58196A159264F09 /* FIRFirestoreSource.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FIRFirestoreSource.mm; path = Firestore/Source/API/FIRFirestoreSource.mm; sourceTree = "<group>"; };
-		19C8311B7CABF53B919AF298F580BE26 /* grpc_completion.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_completion.cc; path = Firestore/core/src/remote/grpc_completion.cc; sourceTree = "<group>"; };
-		19C9B99EA5153E2A232E7CB5E9C9DD2B /* local_documents_view.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = local_documents_view.cc; path = Firestore/core/src/local/local_documents_view.cc; sourceTree = "<group>"; };
+		19C24D5E462E5EF2F58196A159264F09 /* FIRFirestoreSource.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FIRFirestoreSource.mm; path = Firestore/Source/API/FIRFirestoreSource.mm; sourceTree = "<group>"; };
+		19C8311B7CABF53B919AF298F580BE26 /* grpc_completion.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_completion.cc; path = Firestore/core/src/remote/grpc_completion.cc; sourceTree = "<group>"; };
+		19C9B99EA5153E2A232E7CB5E9C9DD2B /* local_documents_view.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = local_documents_view.cc; path = Firestore/core/src/local/local_documents_view.cc; sourceTree = "<group>"; };
 		19D1069E35E52071B32BE27C7097D9C0 /* string_view.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = string_view.h; path = src/core/lib/gprpp/string_view.h; sourceTree = "<group>"; };
 		19E075762761A6E0A367CCF01C9B88E4 /* byte_buffer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = byte_buffer.h; path = include/grpc/byte_buffer.h; sourceTree = "<group>"; };
-		1A0EE5D52CFD00C15E0850B1B9A5D709 /* a_utf8.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_utf8.c; path = src/crypto/asn1/a_utf8.c; sourceTree = "<group>"; };
+		1A0EE5D52CFD00C15E0850B1B9A5D709 /* a_utf8.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_utf8.c; path = src/crypto/asn1/a_utf8.c; sourceTree = "<group>"; };
 		1A2679395C0B34B6CA5C9FBAF452F430 /* FirebaseCore.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FirebaseCore.debug.xcconfig; sourceTree = "<group>"; };
-		1A848F02D9BA025F79C3A95D90427A6F /* local_security_connector.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = local_security_connector.cc; path = src/core/lib/security/security_connector/local/local_security_connector.cc; sourceTree = "<group>"; };
+		1A848F02D9BA025F79C3A95D90427A6F /* local_security_connector.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = local_security_connector.cc; path = src/core/lib/security/security_connector/local/local_security_connector.cc; sourceTree = "<group>"; };
 		1A880F4E052132DB89EC1D2C645EE6A7 /* channelz_registry.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channelz_registry.h; path = src/core/lib/channel/channelz_registry.h; sourceTree = "<group>"; };
-		1A91BC0DACAB4577D2D4BE9B992A7982 /* transaction.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = transaction.cc; path = Firestore/core/src/core/transaction.cc; sourceTree = "<group>"; };
+		1A91BC0DACAB4577D2D4BE9B992A7982 /* transaction.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = transaction.cc; path = Firestore/core/src/core/transaction.cc; sourceTree = "<group>"; };
 		1A98C828F80408B88F732EB7C9E2CE96 /* FIRAuthInternalErrors.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthInternalErrors.h; path = FirebaseAuth/Sources/Utilities/FIRAuthInternalErrors.h; sourceTree = "<group>"; };
 		1AA32D4369B30631C7F86750000929D5 /* sockaddr_utils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sockaddr_utils.h; path = src/core/lib/iomgr/sockaddr_utils.h; sourceTree = "<group>"; };
 		1AC1F060A049D1F00B04B47D84F25789 /* compression_types.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = compression_types.h; path = include/grpc/impl/codegen/compression_types.h; sourceTree = "<group>"; };
 		1AC35D4DAE9169F2EB04DB5A5056DF03 /* FBLPromisePrivate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBLPromisePrivate.h; path = Sources/FBLPromises/include/FBLPromisePrivate.h; sourceTree = "<group>"; };
 		1AC7EE69265F9083DAC474E5E8C0A8D7 /* plugin_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = plugin_credentials.h; path = src/core/lib/security/credentials/plugin/plugin_credentials.h; sourceTree = "<group>"; };
-		1AD5C13201766DE4AAC193ACBBC362BA /* bad_optional_access.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = bad_optional_access.cc; path = absl/types/bad_optional_access.cc; sourceTree = "<group>"; };
+		1AD5C13201766DE4AAC193ACBBC362BA /* bad_optional_access.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = bad_optional_access.cc; path = absl/types/bad_optional_access.cc; sourceTree = "<group>"; };
 		1AF302E27089A61ACB707D058D90A804 /* alts_grpc_privacy_integrity_record_protocol.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_grpc_privacy_integrity_record_protocol.h; path = src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.h; sourceTree = "<group>"; };
-		1B07350BB2185546374A4630C6B64DC5 /* frame_window_update.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = frame_window_update.cc; path = src/core/ext/transport/chttp2/transport/frame_window_update.cc; sourceTree = "<group>"; };
-		1B13780B8C153088BEF9F0A34C17C62C /* json_reader.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = json_reader.cc; path = src/core/lib/json/json_reader.cc; sourceTree = "<group>"; };
+		1B07350BB2185546374A4630C6B64DC5 /* frame_window_update.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = frame_window_update.cc; path = src/core/ext/transport/chttp2/transport/frame_window_update.cc; sourceTree = "<group>"; };
+		1B13780B8C153088BEF9F0A34C17C62C /* json_reader.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = json_reader.cc; path = src/core/lib/json/json_reader.cc; sourceTree = "<group>"; };
 		1B138B9E96E9FC1B375215CB33B7558C /* abseil-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "abseil-umbrella.h"; sourceTree = "<group>"; };
 		1B21705F9014D116271FF7F29BD86ACA /* bits.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = bits.h; path = absl/base/internal/bits.h; sourceTree = "<group>"; };
-		1B241B5CAF4330153062842068C6A952 /* byte_buffer.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = byte_buffer.cc; path = src/core/lib/surface/byte_buffer.cc; sourceTree = "<group>"; };
-		1B33377AA67FAAC5EFDD54925433B313 /* service_config.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = service_config.cc; path = src/core/ext/filters/client_channel/service_config.cc; sourceTree = "<group>"; };
+		1B241B5CAF4330153062842068C6A952 /* byte_buffer.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = byte_buffer.cc; path = src/core/lib/surface/byte_buffer.cc; sourceTree = "<group>"; };
+		1B33377AA67FAAC5EFDD54925433B313 /* service_config.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = service_config.cc; path = src/core/ext/filters/client_channel/service_config.cc; sourceTree = "<group>"; };
 		1B5F6C60789A2AE6A658B6E0BC8BC6C2 /* duration.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = duration.upb.h; path = "src/core/ext/upb-generated/google/protobuf/duration.upb.h"; sourceTree = "<group>"; };
-		1BA1A1D2E5F297A7E87A56F56FF7E2F9 /* bind.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = bind.cc; path = absl/strings/internal/str_format/bind.cc; sourceTree = "<group>"; };
+		1BA1A1D2E5F297A7E87A56F56FF7E2F9 /* bind.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = bind.cc; path = absl/strings/internal/str_format/bind.cc; sourceTree = "<group>"; };
 		1BA25DDCC34629DDD93D64A9ECB889DB /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/fipsmodule/modes/internal.h; sourceTree = "<group>"; };
 		1BC9D607A8538DE0A7FB00F478A7CBA0 /* FIRPhoneAuthCredential.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRPhoneAuthCredential.m; path = FirebaseAuth/Sources/AuthProvider/Phone/FIRPhoneAuthCredential.m; sourceTree = "<group>"; };
-		1BD3A00D1A6381AE56B321CF8AA210D5 /* alts_grpc_privacy_integrity_record_protocol.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alts_grpc_privacy_integrity_record_protocol.cc; path = src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc; sourceTree = "<group>"; };
-		1BD5B416F01860623E15FCA6D8BDFEC2 /* socket_helper.c */ = {isa = PBXFileReference; includeInIndex = 1; name = socket_helper.c; path = src/crypto/bio/socket_helper.c; sourceTree = "<group>"; };
+		1BD3A00D1A6381AE56B321CF8AA210D5 /* alts_grpc_privacy_integrity_record_protocol.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alts_grpc_privacy_integrity_record_protocol.cc; path = src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc; sourceTree = "<group>"; };
+		1BD5B416F01860623E15FCA6D8BDFEC2 /* socket_helper.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = socket_helper.c; path = src/crypto/bio/socket_helper.c; sourceTree = "<group>"; };
 		1BDAC27509E6B16D3431D6CE8BF7BABA /* table.int.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = table.int.h; path = third_party/upb/upb/table.int.h; sourceTree = "<group>"; };
 		1C181F9944A04365E2300294D7D41C9E /* FIRGetAccountInfoRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRGetAccountInfoRequest.h; path = FirebaseAuth/Sources/Backend/RPC/FIRGetAccountInfoRequest.h; sourceTree = "<group>"; };
 		1C64E4FA99A0E7CB4FA3ACACC2DA564E /* global_config_generic.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = global_config_generic.h; path = src/core/lib/gprpp/global_config_generic.h; sourceTree = "<group>"; };
 		1C6E05213887F19E51892F90004F387A /* server_initializer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_initializer.h; path = include/grpcpp/impl/server_initializer.h; sourceTree = "<group>"; };
 		1C8B669F5F4B5ED25C9BA529DA57C210 /* regex.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = regex.upb.h; path = "src/core/ext/upb-generated/envoy/type/matcher/regex.upb.h"; sourceTree = "<group>"; };
 		1CBA4DF6E1100B6FD8E6F806213235A5 /* GULReachabilityChecker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULReachabilityChecker.h; path = GoogleUtilities/Reachability/Public/GoogleUtilities/GULReachabilityChecker.h; sourceTree = "<group>"; };
-		1CCCF9CB787C51F71143B9410E4D9A10 /* metadata_batch.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = metadata_batch.cc; path = src/core/lib/transport/metadata_batch.cc; sourceTree = "<group>"; };
+		1CCCF9CB787C51F71143B9410E4D9A10 /* metadata_batch.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = metadata_batch.cc; path = src/core/lib/transport/metadata_batch.cc; sourceTree = "<group>"; };
 		1CCED9AC56756E6F24E4F76FDDB6BC51 /* resource.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resource.upb.h; path = "src/core/ext/upb-generated/envoy/annotations/resource.upb.h"; sourceTree = "<group>"; };
 		1CD27791903088779677E006E1A1EA99 /* http2_errors.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = http2_errors.h; path = src/core/lib/transport/http2_errors.h; sourceTree = "<group>"; };
 		1D1ADB69BC1E039DAA3A3366EF5A3B4F /* FIRDeleteAccountRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRDeleteAccountRequest.h; path = FirebaseAuth/Sources/Backend/RPC/FIRDeleteAccountRequest.h; sourceTree = "<group>"; };
-		1D20B497789E7E773FDE0AAE31C941BD /* pid_controller.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = pid_controller.cc; path = src/core/lib/transport/pid_controller.cc; sourceTree = "<group>"; };
-		1D6DFC55728F0E308639E250A5F55DEE /* FIRDocumentSnapshot.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FIRDocumentSnapshot.mm; path = Firestore/Source/API/FIRDocumentSnapshot.mm; sourceTree = "<group>"; };
+		1D20B497789E7E773FDE0AAE31C941BD /* pid_controller.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = pid_controller.cc; path = src/core/lib/transport/pid_controller.cc; sourceTree = "<group>"; };
+		1D6DFC55728F0E308639E250A5F55DEE /* FIRDocumentSnapshot.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FIRDocumentSnapshot.mm; path = Firestore/Source/API/FIRDocumentSnapshot.mm; sourceTree = "<group>"; };
 		1D86A904E5C7F95C126573907C79AA9B /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/evp/internal.h; sourceTree = "<group>"; };
 		1DB7347FE5D6B989DBF4D3392AB933B6 /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/bytestring/internal.h; sourceTree = "<group>"; };
 		1DB8895144263E6AF776639B26414B78 /* json_token.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = json_token.h; path = src/core/lib/security/credentials/jwt/json_token.h; sourceTree = "<group>"; };
 		1DDCC2874A1A4CED74F3CDEF9148AA22 /* FIROAuthProvider.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIROAuthProvider.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthProvider.h; sourceTree = "<group>"; };
-		1E3005BE6F1764A892D2331529527D86 /* fork_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = fork_posix.cc; path = src/core/lib/iomgr/fork_posix.cc; sourceTree = "<group>"; };
-		1E5A08D4DBAFE1DD05377BA52DEED04F /* xds_bootstrap.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = xds_bootstrap.cc; path = src/core/ext/filters/client_channel/xds/xds_bootstrap.cc; sourceTree = "<group>"; };
+		1E3005BE6F1764A892D2331529527D86 /* fork_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = fork_posix.cc; path = src/core/lib/iomgr/fork_posix.cc; sourceTree = "<group>"; };
+		1E5A08D4DBAFE1DD05377BA52DEED04F /* xds_bootstrap.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = xds_bootstrap.cc; path = src/core/ext/filters/client_channel/xds/xds_bootstrap.cc; sourceTree = "<group>"; };
 		1E6315239916200B612AD4FAC0BC72A2 /* client_channel_factory.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_channel_factory.h; path = src/core/ext/filters/client_channel/client_channel_factory.h; sourceTree = "<group>"; };
-		1E79184306E4F4B92A101C82652349BE /* wakeup_fd_eventfd.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = wakeup_fd_eventfd.cc; path = src/core/lib/iomgr/wakeup_fd_eventfd.cc; sourceTree = "<group>"; };
-		1F05D04011D677CBC845813BF432FE42 /* empty.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = empty.nanopb.cc; path = Firestore/Protos/nanopb/google/protobuf/empty.nanopb.cc; sourceTree = "<group>"; };
-		1F10730183DE72446F124D8A37F40655 /* ctr.c */ = {isa = PBXFileReference; includeInIndex = 1; name = ctr.c; path = src/crypto/fipsmodule/modes/ctr.c; sourceTree = "<group>"; };
+		1E79184306E4F4B92A101C82652349BE /* wakeup_fd_eventfd.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = wakeup_fd_eventfd.cc; path = src/core/lib/iomgr/wakeup_fd_eventfd.cc; sourceTree = "<group>"; };
+		1F05D04011D677CBC845813BF432FE42 /* empty.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = empty.nanopb.cc; path = Firestore/Protos/nanopb/google/protobuf/empty.nanopb.cc; sourceTree = "<group>"; };
+		1F10730183DE72446F124D8A37F40655 /* ctr.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = ctr.c; path = src/crypto/fipsmodule/modes/ctr.c; sourceTree = "<group>"; };
 		1F834ACC5B996997937D181E07E3C341 /* health_check.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = health_check.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h"; sourceTree = "<group>"; };
 		1F90E3CD5E6E51D6E6E54D9295DDB7FA /* rsaz_exp.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = rsaz_exp.h; path = src/crypto/fipsmodule/bn/rsaz_exp.h; sourceTree = "<group>"; };
-		1F9E02E3DEF24E3B3A8B81BA99F1E794 /* tcp_client_cfstream.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tcp_client_cfstream.cc; path = src/core/lib/iomgr/tcp_client_cfstream.cc; sourceTree = "<group>"; };
-		1FAEA558048A653ACF121012786173D1 /* v3_crld.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_crld.c; path = src/crypto/x509v3/v3_crld.c; sourceTree = "<group>"; };
+		1F9E02E3DEF24E3B3A8B81BA99F1E794 /* tcp_client_cfstream.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tcp_client_cfstream.cc; path = src/core/lib/iomgr/tcp_client_cfstream.cc; sourceTree = "<group>"; };
+		1FAEA558048A653ACF121012786173D1 /* v3_crld.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_crld.c; path = src/crypto/x509v3/v3_crld.c; sourceTree = "<group>"; };
 		1FD3E12BC3F3C8797A3558ACF35E4B34 /* sysinfo.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sysinfo.h; path = absl/base/internal/sysinfo.h; sourceTree = "<group>"; };
 		1FF040185AD7D308EB90D4DF22366B35 /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/x509/internal.h; sourceTree = "<group>"; };
 		1FF54FECA06DCB2E103068350B955884 /* resolver_result_parsing.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resolver_result_parsing.h; path = src/core/ext/filters/client_channel/resolver_result_parsing.h; sourceTree = "<group>"; };
@@ -8784,53 +8785,53 @@
 		2073FB64D76E93EE63FC8D66DE7DCB9A /* iomgr_internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = iomgr_internal.h; path = src/core/lib/iomgr/iomgr_internal.h; sourceTree = "<group>"; };
 		20802771FCE66ACAE3DB121C0B62F879 /* interceptor_common.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = interceptor_common.h; path = include/grpcpp/impl/codegen/interceptor_common.h; sourceTree = "<group>"; };
 		209F11CBCD600E22761FDF667773540E /* FirebaseAuth.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FirebaseAuth.debug.xcconfig; sourceTree = "<group>"; };
-		20D0666CD8E206A56725E45F170B5A8F /* version_set.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = version_set.cc; path = db/version_set.cc; sourceTree = "<group>"; };
+		20D0666CD8E206A56725E45F170B5A8F /* version_set.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = version_set.cc; path = db/version_set.cc; sourceTree = "<group>"; };
 		20F4170962175B65C9E3B86CDA060354 /* time.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = time.h; path = include/grpcpp/support/time.h; sourceTree = "<group>"; };
 		20F6808C3A39E8BC24195F198F23551A /* tls_security_connector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tls_security_connector.h; path = src/core/lib/security/security_connector/tls/tls_security_connector.h; sourceTree = "<group>"; };
 		20FA74868D38F9BFC507E7E58E22E901 /* channel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channel.h; path = src/core/lib/surface/channel.h; sourceTree = "<group>"; };
-		211FD42206360ADCF22496C149900184 /* time_support.c */ = {isa = PBXFileReference; includeInIndex = 1; name = time_support.c; path = src/crypto/asn1/time_support.c; sourceTree = "<group>"; };
-		212E17F062DAF660A4CA6531412862A8 /* load_bundle_task.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = load_bundle_task.cc; path = Firestore/core/src/api/load_bundle_task.cc; sourceTree = "<group>"; };
-		216CD2F446F55607669F61A507F10D8E /* leveldb_mutation_queue.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = leveldb_mutation_queue.cc; path = Firestore/core/src/local/leveldb_mutation_queue.cc; sourceTree = "<group>"; };
+		211FD42206360ADCF22496C149900184 /* time_support.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = time_support.c; path = src/crypto/asn1/time_support.c; sourceTree = "<group>"; };
+		212E17F062DAF660A4CA6531412862A8 /* load_bundle_task.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = load_bundle_task.cc; path = Firestore/core/src/api/load_bundle_task.cc; sourceTree = "<group>"; };
+		216CD2F446F55607669F61A507F10D8E /* leveldb_mutation_queue.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = leveldb_mutation_queue.cc; path = Firestore/core/src/local/leveldb_mutation_queue.cc; sourceTree = "<group>"; };
 		218DD0A480B4FCFC8E548075E42285A1 /* GDTCORPlatform.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCORPlatform.m; path = GoogleDataTransport/GDTCORLibrary/GDTCORPlatform.m; sourceTree = "<group>"; };
 		21A966289CF2A55E2C3BE890343A1005 /* FIRMultiFactorSession+Internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FIRMultiFactorSession+Internal.h"; path = "FirebaseAuth/Sources/MultiFactor/FIRMultiFactorSession+Internal.h"; sourceTree = "<group>"; };
 		21C16ED488BDEE246F13AC78B43E9FB9 /* FIRAuthProtoFinalizeMFAPhoneRequestInfo.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthProtoFinalizeMFAPhoneRequestInfo.h; path = FirebaseAuth/Sources/Backend/RPC/Proto/Phone/FIRAuthProtoFinalizeMFAPhoneRequestInfo.h; sourceTree = "<group>"; };
-		21D0BD69FC5A76B1C8B8D9D2C5F40DBA /* key_wrap.c */ = {isa = PBXFileReference; includeInIndex = 1; name = key_wrap.c; path = src/crypto/fipsmodule/aes/key_wrap.c; sourceTree = "<group>"; };
+		21D0BD69FC5A76B1C8B8D9D2C5F40DBA /* key_wrap.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = key_wrap.c; path = src/crypto/fipsmodule/aes/key_wrap.c; sourceTree = "<group>"; };
 		21D91C5FC69B0898F92C73B593038BD1 /* connectivity_state.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = connectivity_state.h; path = src/core/lib/transport/connectivity_state.h; sourceTree = "<group>"; };
-		220D3EA45A877B330E0EEB1AE40EE2F4 /* fork_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = fork_windows.cc; path = src/core/lib/iomgr/fork_windows.cc; sourceTree = "<group>"; };
+		220D3EA45A877B330E0EEB1AE40EE2F4 /* fork_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = fork_windows.cc; path = src/core/lib/iomgr/fork_windows.cc; sourceTree = "<group>"; };
 		2222747065341D806C52523D34365369 /* stream_map.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = stream_map.h; path = src/core/ext/transport/chttp2/transport/stream_map.h; sourceTree = "<group>"; };
 		22441D2A5104915ED20D494254CA1BF6 /* fake_transport_security.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = fake_transport_security.h; path = src/core/tsi/fake_transport_security.h; sourceTree = "<group>"; };
 		224F98768C1D6CE433735C01598C0910 /* direct_mmap.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = direct_mmap.h; path = absl/base/internal/direct_mmap.h; sourceTree = "<group>"; };
 		22694BF6AA7857E8A6D9EB760E3FB359 /* secure_server_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = secure_server_credentials.h; path = src/cpp/server/secure_server_credentials.h; sourceTree = "<group>"; };
 		22B2CE8C973D1E0F4161F939808163C2 /* str_join.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = str_join.h; path = absl/strings/str_join.h; sourceTree = "<group>"; };
-		22BC2D8642E023FE4887D79DE62025B2 /* secure_channel_arguments.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = secure_channel_arguments.cc; path = src/cpp/common/secure_channel_arguments.cc; sourceTree = "<group>"; };
-		22C7CA425B40DE610F4EDF62C8B13074 /* target_data.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = target_data.cc; path = Firestore/core/src/local/target_data.cc; sourceTree = "<group>"; };
+		22BC2D8642E023FE4887D79DE62025B2 /* secure_channel_arguments.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = secure_channel_arguments.cc; path = src/cpp/common/secure_channel_arguments.cc; sourceTree = "<group>"; };
+		22C7CA425B40DE610F4EDF62C8B13074 /* target_data.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = target_data.cc; path = Firestore/core/src/local/target_data.cc; sourceTree = "<group>"; };
 		22E3CCF2BD47831395E5B95758D66F63 /* frame_goaway.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = frame_goaway.h; path = src/core/ext/transport/chttp2/transport/frame_goaway.h; sourceTree = "<group>"; };
-		22F83E8A26B405499910FADB595A8356 /* p_dsa_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; name = p_dsa_asn1.c; path = src/crypto/evp/p_dsa_asn1.c; sourceTree = "<group>"; };
+		22F83E8A26B405499910FADB595A8356 /* p_dsa_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = p_dsa_asn1.c; path = src/crypto/evp/p_dsa_asn1.c; sourceTree = "<group>"; };
 		22F8A9BFCBA2D4F1AC806912645C68DF /* channel_arguments.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channel_arguments.h; path = include/grpcpp/support/channel_arguments.h; sourceTree = "<group>"; };
 		230AE135E20023B0182C2B54E01F4812 /* validate_service_config.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = validate_service_config.h; path = include/grpcpp/support/validate_service_config.h; sourceTree = "<group>"; };
-		232AFEF8A0E69154D449FF73A4A10EB1 /* field_transform.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = field_transform.cc; path = Firestore/core/src/model/field_transform.cc; sourceTree = "<group>"; };
+		232AFEF8A0E69154D449FF73A4A10EB1 /* field_transform.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = field_transform.cc; path = Firestore/core/src/model/field_transform.cc; sourceTree = "<group>"; };
 		233D04A971F2635E8FE56A4A790F3371 /* FBLPromise+Do.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FBLPromise+Do.h"; path = "Sources/FBLPromises/include/FBLPromise+Do.h"; sourceTree = "<group>"; };
 		233EF851CD6F945F59B0BF8F9479C1A6 /* listener_components.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = listener_components.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/listener/listener_components.upb.h"; sourceTree = "<group>"; };
 		235E8CFCA5B348950C53E57E8F3CDDEB /* FIRResetPasswordResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRResetPasswordResponse.h; path = FirebaseAuth/Sources/Backend/RPC/FIRResetPasswordResponse.h; sourceTree = "<group>"; };
 		2369701F883EF9CE289A649B446F943F /* composite_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = composite_credentials.h; path = src/core/lib/security/credentials/composite/composite_credentials.h; sourceTree = "<group>"; };
 		23B3B40FE9BA2E84650C7D7DEED894CC /* local_transport_security.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = local_transport_security.h; path = src/core/tsi/local_transport_security.h; sourceTree = "<group>"; };
 		23C5BBDE8960B134E5A6D9A2C29E701B /* pcy_int.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pcy_int.h; path = src/crypto/x509v3/pcy_int.h; sourceTree = "<group>"; };
-		23E4ED5C5B654292B67459408989AB9E /* p256-x86_64.c */ = {isa = PBXFileReference; includeInIndex = 1; name = "p256-x86_64.c"; path = "src/crypto/fipsmodule/ec/p256-x86_64.c"; sourceTree = "<group>"; };
+		23E4ED5C5B654292B67459408989AB9E /* p256-x86_64.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = "p256-x86_64.c"; path = "src/crypto/fipsmodule/ec/p256-x86_64.c"; sourceTree = "<group>"; };
 		23EFEEE4BB568EB83A65DCBAAE297A65 /* slice_utils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = slice_utils.h; path = src/core/lib/slice/slice_utils.h; sourceTree = "<group>"; };
-		240D5F0816D091F0F6C261D841D0540E /* utf8.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = utf8.cc; path = absl/strings/internal/utf8.cc; sourceTree = "<group>"; };
+		240D5F0816D091F0F6C261D841D0540E /* utf8.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = utf8.cc; path = absl/strings/internal/utf8.cc; sourceTree = "<group>"; };
 		242C08CC0FDCE4F2E6960CE73F476DA1 /* buffer_list.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = buffer_list.h; path = src/core/lib/iomgr/buffer_list.h; sourceTree = "<group>"; };
-		2469DCEAA75522103DEAF88C734A9388 /* d1_lib.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = d1_lib.cc; path = src/ssl/d1_lib.cc; sourceTree = "<group>"; };
-		24752F29E2D250FF3279203485DC7A5C /* iomgr_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = iomgr_windows.cc; path = src/core/lib/iomgr/iomgr_windows.cc; sourceTree = "<group>"; };
-		248C80AB72058AE6C7413B88F79C3369 /* transaction_runner.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = transaction_runner.cc; path = Firestore/core/src/core/transaction_runner.cc; sourceTree = "<group>"; };
+		2469DCEAA75522103DEAF88C734A9388 /* d1_lib.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = d1_lib.cc; path = src/ssl/d1_lib.cc; sourceTree = "<group>"; };
+		24752F29E2D250FF3279203485DC7A5C /* iomgr_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = iomgr_windows.cc; path = src/core/lib/iomgr/iomgr_windows.cc; sourceTree = "<group>"; };
+		248C80AB72058AE6C7413B88F79C3369 /* transaction_runner.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = transaction_runner.cc; path = Firestore/core/src/core/transaction_runner.cc; sourceTree = "<group>"; };
 		248CA960AC4A04B186162F01C8F0EC4C /* algorithm.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = algorithm.h; path = absl/algorithm/algorithm.h; sourceTree = "<group>"; };
 		249B89B367EE61EA42DFF7715AB93710 /* FBLPromise+Always.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FBLPromise+Always.h"; path = "Sources/FBLPromises/include/FBLPromise+Always.h"; sourceTree = "<group>"; };
 		249FDFC8B4153A799C193B43FCF96739 /* async_unary_call.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = async_unary_call.h; path = include/grpcpp/support/async_unary_call.h; sourceTree = "<group>"; };
-		24AFF3F3B9BC2A2837520C4F9E16F28E /* server_chttp2_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = server_chttp2_posix.cc; path = src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc; sourceTree = "<group>"; };
+		24AFF3F3B9BC2A2837520C4F9E16F28E /* server_chttp2_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = server_chttp2_posix.cc; path = src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc; sourceTree = "<group>"; };
 		24C1FDC65529278021279D90F7645E77 /* siphash.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = siphash.h; path = src/include/openssl/siphash.h; sourceTree = "<group>"; };
 		24C3A6CC4968ED0349C6F82F391BEAED /* FirebaseStorage.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FirebaseStorage.debug.xcconfig; sourceTree = "<group>"; };
 		24CEB991ABBF7CA02944ACA6C30D4250 /* slice_utils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = slice_utils.h; path = src/core/lib/slice/slice_utils.h; sourceTree = "<group>"; };
-		250479D9D6285F2914958134AC5F2F8A /* tcp_custom.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tcp_custom.cc; path = src/core/lib/iomgr/tcp_custom.cc; sourceTree = "<group>"; };
-		250AC34BAE75F166AFE1A6B7C02CC813 /* client_context.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = client_context.cc; path = src/cpp/client/client_context.cc; sourceTree = "<group>"; };
+		250479D9D6285F2914958134AC5F2F8A /* tcp_custom.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tcp_custom.cc; path = src/core/lib/iomgr/tcp_custom.cc; sourceTree = "<group>"; };
+		250AC34BAE75F166AFE1A6B7C02CC813 /* client_context.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = client_context.cc; path = src/cpp/client/client_context.cc; sourceTree = "<group>"; };
 		25186D3300F73B031F34E411943354BF /* FIRFinalizeMFAEnrollmentResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRFinalizeMFAEnrollmentResponse.h; path = FirebaseAuth/Sources/Backend/RPC/MultiFactor/Enroll/FIRFinalizeMFAEnrollmentResponse.h; sourceTree = "<group>"; };
 		2527DBD26E74B2EA17223780AA5ACF24 /* FBLPromise+Race.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "FBLPromise+Race.m"; path = "Sources/FBLPromises/FBLPromise+Race.m"; sourceTree = "<group>"; };
 		254A05C92080FBEFF873BFB88F531DF6 /* write_batch_internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = write_batch_internal.h; path = db/write_batch_internal.h; sourceTree = "<group>"; };
@@ -8838,9 +8839,9 @@
 		255EB798D746FB5A5F9ED26A62CAAC1A /* http_connect_handshaker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = http_connect_handshaker.h; path = src/core/ext/filters/client_channel/http_connect_handshaker.h; sourceTree = "<group>"; };
 		255F7B889135ABB76CEEDB8D82BA44C3 /* listener_components.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = listener_components.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/listener/listener_components.upb.h"; sourceTree = "<group>"; };
 		2566B2F9C6F608C9CB5F11DB08F849DB /* server_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_impl.h; path = include/grpcpp/server_impl.h; sourceTree = "<group>"; };
-		25718F5AE5F82492F10C8E3F076DCC24 /* flow_control.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = flow_control.cc; path = src/core/ext/transport/chttp2/transport/flow_control.cc; sourceTree = "<group>"; };
-		257C75680198F23A447BEE1948857BC6 /* alts_frame_protector.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alts_frame_protector.cc; path = src/core/tsi/alts/frame_protector/alts_frame_protector.cc; sourceTree = "<group>"; };
-		259DE59775872C6896578C45296ABBDA /* server_chttp2.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = server_chttp2.cc; path = src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc; sourceTree = "<group>"; };
+		25718F5AE5F82492F10C8E3F076DCC24 /* flow_control.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = flow_control.cc; path = src/core/ext/transport/chttp2/transport/flow_control.cc; sourceTree = "<group>"; };
+		257C75680198F23A447BEE1948857BC6 /* alts_frame_protector.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alts_frame_protector.cc; path = src/core/tsi/alts/frame_protector/alts_frame_protector.cc; sourceTree = "<group>"; };
+		259DE59775872C6896578C45296ABBDA /* server_chttp2.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = server_chttp2.cc; path = src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc; sourceTree = "<group>"; };
 		2604D94D381849A4A3B0A74250378E2F /* FIRFederatedAuthProvider.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRFederatedAuthProvider.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRFederatedAuthProvider.h; sourceTree = "<group>"; };
 		260E7A1F8246960A2F2ABB826370D1CE /* transport_security_common_api.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = transport_security_common_api.h; path = src/core/tsi/alts/handshaker/transport_security_common_api.h; sourceTree = "<group>"; };
 		26397F0BC9D6D6D3082A523D2A8DEDF8 /* FIRPhoneMultiFactorGenerator.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRPhoneMultiFactorGenerator.m; path = FirebaseAuth/Sources/MultiFactor/Phone/FIRPhoneMultiFactorGenerator.m; sourceTree = "<group>"; };
@@ -8851,131 +8852,131 @@
 		26816BA0CC07FED5DFC0CFA5C8FABC87 /* atomic.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = atomic.h; path = src/core/lib/gprpp/atomic.h; sourceTree = "<group>"; };
 		2685D194FC28A07DC651FE7869AA61CE /* FIRAuthProtoStartMFAPhoneRequestInfo.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthProtoStartMFAPhoneRequestInfo.m; path = FirebaseAuth/Sources/Backend/RPC/Proto/Phone/FIRAuthProtoStartMFAPhoneRequestInfo.m; sourceTree = "<group>"; };
 		2695C70E3E7802A991F283616C765659 /* GDTCCTUploadOperation.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCCTUploadOperation.m; path = GoogleDataTransport/GDTCCTLibrary/GDTCCTUploadOperation.m; sourceTree = "<group>"; };
-		26BCE83D7E6CCA9256A4992CB7CD4F80 /* civil_time.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = civil_time.cc; path = absl/time/civil_time.cc; sourceTree = "<group>"; };
+		26BCE83D7E6CCA9256A4992CB7CD4F80 /* civil_time.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = civil_time.cc; path = absl/time/civil_time.cc; sourceTree = "<group>"; };
 		26D18E21FF998F8EDA013CBE3B5BC30E /* ssl_transport_security.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl_transport_security.h; path = src/core/tsi/ssl_transport_security.h; sourceTree = "<group>"; };
-		26D3820BBA6973AD96CD0D4CE5FB3DC0 /* fake_security_connector.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = fake_security_connector.cc; path = src/core/lib/security/security_connector/fake/fake_security_connector.cc; sourceTree = "<group>"; };
-		26F4DB55781B8BBDC020C4F97D6667BE /* x509_set.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509_set.c; path = src/crypto/x509/x509_set.c; sourceTree = "<group>"; };
+		26D3820BBA6973AD96CD0D4CE5FB3DC0 /* fake_security_connector.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = fake_security_connector.cc; path = src/core/lib/security/security_connector/fake/fake_security_connector.cc; sourceTree = "<group>"; };
+		26F4DB55781B8BBDC020C4F97D6667BE /* x509_set.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509_set.c; path = src/crypto/x509/x509_set.c; sourceTree = "<group>"; };
 		27087AC8568BF7C47106423551E53861 /* generic_stub_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = generic_stub_impl.h; path = include/grpcpp/generic/generic_stub_impl.h; sourceTree = "<group>"; };
 		27197827102A9909CCA40E022D8D8079 /* proxy_mapper_registry.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = proxy_mapper_registry.h; path = src/core/ext/filters/client_channel/proxy_mapper_registry.h; sourceTree = "<group>"; };
-		271BE253527614C3A9223471CA910C6D /* connect.c */ = {isa = PBXFileReference; includeInIndex = 1; name = connect.c; path = src/crypto/bio/connect.c; sourceTree = "<group>"; };
+		271BE253527614C3A9223471CA910C6D /* connect.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = connect.c; path = src/crypto/bio/connect.c; sourceTree = "<group>"; };
 		271C6CFFA494B78743E0FDA11C3F88FE /* bad_any_cast.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = bad_any_cast.h; path = absl/types/bad_any_cast.h; sourceTree = "<group>"; };
-		2720740A94CB46F76DE3534DCFC0DE11 /* file.c */ = {isa = PBXFileReference; includeInIndex = 1; name = file.c; path = src/crypto/bio/file.c; sourceTree = "<group>"; };
+		2720740A94CB46F76DE3534DCFC0DE11 /* file.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = file.c; path = src/crypto/bio/file.c; sourceTree = "<group>"; };
 		27526B78545BA7437D4079865110F4B6 /* gRPC-Core-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "gRPC-Core-Info.plist"; sourceTree = "<group>"; };
-		276AC53358143510FD1A26AD5F6618E8 /* wakeup_fd_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = wakeup_fd_posix.cc; path = src/core/lib/iomgr/wakeup_fd_posix.cc; sourceTree = "<group>"; };
-		27A2822E37F0255449AEAEE8439E9617 /* trace.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = trace.cc; path = src/core/lib/debug/trace.cc; sourceTree = "<group>"; };
+		276AC53358143510FD1A26AD5F6618E8 /* wakeup_fd_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = wakeup_fd_posix.cc; path = src/core/lib/iomgr/wakeup_fd_posix.cc; sourceTree = "<group>"; };
+		27A2822E37F0255449AEAEE8439E9617 /* trace.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = trace.cc; path = src/core/lib/debug/trace.cc; sourceTree = "<group>"; };
 		27A347A159F31EB4BE9D51F1C330B9D5 /* des.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = des.h; path = src/include/openssl/des.h; sourceTree = "<group>"; };
 		27ACC5A5F5C5DCD1BA7A556A1975B698 /* xds_bootstrap.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = xds_bootstrap.h; path = src/core/ext/filters/client_channel/xds/xds_bootstrap.h; sourceTree = "<group>"; };
-		27B5AD1FD1C210B3AA12E07B1CC5C5A0 /* bound.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = bound.cc; path = Firestore/core/src/core/bound.cc; sourceTree = "<group>"; };
+		27B5AD1FD1C210B3AA12E07B1CC5C5A0 /* bound.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = bound.cc; path = Firestore/core/src/core/bound.cc; sourceTree = "<group>"; };
 		27D2A4F41BCF635528E689BE44A9BD68 /* FIRGetOOBConfirmationCodeResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRGetOOBConfirmationCodeResponse.h; path = FirebaseAuth/Sources/Backend/RPC/FIRGetOOBConfirmationCodeResponse.h; sourceTree = "<group>"; };
 		280A92EE7E46AE230D89C4DD5D8B6E5F /* backend_metric.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = backend_metric.h; path = src/core/ext/filters/client_channel/backend_metric.h; sourceTree = "<group>"; };
-		281B1D8A62A73DA8AF9A88D0FEFA427E /* pair.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pair.c; path = src/crypto/bio/pair.c; sourceTree = "<group>"; };
+		281B1D8A62A73DA8AF9A88D0FEFA427E /* pair.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pair.c; path = src/crypto/bio/pair.c; sourceTree = "<group>"; };
 		2825D0B3CF30F22B76FAF888F423318F /* server_builder_plugin.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_builder_plugin.h; path = include/grpcpp/impl/server_builder_plugin.h; sourceTree = "<group>"; };
 		286C23B04A58BA51C4A3D8624DCD1D2E /* regex.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = regex.upb.h; path = "src/core/ext/upb-generated/envoy/type/matcher/regex.upb.h"; sourceTree = "<group>"; };
 		289E64F8BA76D407E9D13320F7A3F73A /* nanopb-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "nanopb-dummy.m"; sourceTree = "<group>"; };
 		28A2B856217170EB1F811413537EF94E /* GULHeartbeatDateStorage.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GULHeartbeatDateStorage.m; path = GoogleUtilities/Environment/GULHeartbeatDateStorage.m; sourceTree = "<group>"; };
 		28BFB12A509DD899BE148D640C2E84BE /* auth_filters.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = auth_filters.h; path = src/core/lib/security/transport/auth_filters.h; sourceTree = "<group>"; };
-		291899C687BC1C55E9823B7A22AE9AE1 /* create_channel_internal.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = create_channel_internal.cc; path = src/cpp/client/create_channel_internal.cc; sourceTree = "<group>"; };
+		291899C687BC1C55E9823B7A22AE9AE1 /* create_channel_internal.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = create_channel_internal.cc; path = src/cpp/client/create_channel_internal.cc; sourceTree = "<group>"; };
 		29278212163628BC100BE1F00D190AA5 /* FIRHeartbeatInfo.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRHeartbeatInfo.h; path = FirebaseCore/Sources/Private/FIRHeartbeatInfo.h; sourceTree = "<group>"; };
 		2935E958661E6037EAF9D7F822A65358 /* inlined_vector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = inlined_vector.h; path = src/core/lib/gprpp/inlined_vector.h; sourceTree = "<group>"; };
 		2981CE9B1A6975D38F5CA6DAD348C01C /* asn1_mac.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = asn1_mac.h; path = src/include/openssl/asn1_mac.h; sourceTree = "<group>"; };
 		29DCFEE3CE05911D7598AB60B9E466A8 /* FIRSendVerificationCodeRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRSendVerificationCodeRequest.h; path = FirebaseAuth/Sources/Backend/RPC/FIRSendVerificationCodeRequest.h; sourceTree = "<group>"; };
-		29FE54F1C82E03CC3F90AC12F51F5898 /* document_map.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = document_map.cc; path = Firestore/core/src/model/document_map.cc; sourceTree = "<group>"; };
-		2A08B1D2BFA819FE036187AC369DF08D /* ssl_transport_security.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_transport_security.cc; path = src/core/tsi/ssl_transport_security.cc; sourceTree = "<group>"; };
-		2A3A4517263FB68C142243762AA4D1BC /* aes.c */ = {isa = PBXFileReference; includeInIndex = 1; name = aes.c; path = src/crypto/fipsmodule/aes/aes.c; sourceTree = "<group>"; };
+		29FE54F1C82E03CC3F90AC12F51F5898 /* document_map.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = document_map.cc; path = Firestore/core/src/model/document_map.cc; sourceTree = "<group>"; };
+		2A08B1D2BFA819FE036187AC369DF08D /* ssl_transport_security.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_transport_security.cc; path = src/core/tsi/ssl_transport_security.cc; sourceTree = "<group>"; };
+		2A3A4517263FB68C142243762AA4D1BC /* aes.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = aes.c; path = src/crypto/fipsmodule/aes/aes.c; sourceTree = "<group>"; };
 		2A3BAB639710F74BBAD3647C03908E52 /* grpc_ares_wrapper.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpc_ares_wrapper.h; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h; sourceTree = "<group>"; };
 		2A3E619F8AA5984098863B5AA22FE8B9 /* channel_stack_type.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channel_stack_type.h; path = src/core/lib/surface/channel_stack_type.h; sourceTree = "<group>"; };
 		2A6FBF4A78B0EF5C12C646E56C0A3102 /* str_cat.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = str_cat.h; path = absl/strings/str_cat.h; sourceTree = "<group>"; };
 		2A7CE58F0E415D59DD8B0A4438313D27 /* slice.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = slice.h; path = include/grpc/impl/codegen/slice.h; sourceTree = "<group>"; };
-		2A8A2B43EB2FF57214D649DAD00DE5F4 /* alts_record_protocol_crypter_common.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alts_record_protocol_crypter_common.cc; path = src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.cc; sourceTree = "<group>"; };
-		2A9F62D61046B32DF3A7690FF02CC566 /* executor_std.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = executor_std.cc; path = Firestore/core/src/util/executor_std.cc; sourceTree = "<group>"; };
+		2A8A2B43EB2FF57214D649DAD00DE5F4 /* alts_record_protocol_crypter_common.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alts_record_protocol_crypter_common.cc; path = src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.cc; sourceTree = "<group>"; };
+		2A9F62D61046B32DF3A7690FF02CC566 /* executor_std.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = executor_std.cc; path = Firestore/core/src/util/executor_std.cc; sourceTree = "<group>"; };
 		2ABA96F69D94B83BBBDA95A1CCDF0909 /* FIRAuthAppCredentialManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthAppCredentialManager.m; path = FirebaseAuth/Sources/SystemService/FIRAuthAppCredentialManager.m; sourceTree = "<group>"; };
 		2AE7355C401ED63B00C8C65F129E2B6E /* async_stream_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = async_stream_impl.h; path = include/grpcpp/support/async_stream_impl.h; sourceTree = "<group>"; };
 		2AE9910FDB5997CB2763D94EA6EC21AE /* frame.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = frame.h; path = src/core/ext/transport/chttp2/transport/frame.h; sourceTree = "<group>"; };
-		2AF6D6BDC1CE4CBCE262BEEA021B8278 /* time_precise.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = time_precise.cc; path = src/core/lib/gpr/time_precise.cc; sourceTree = "<group>"; };
+		2AF6D6BDC1CE4CBCE262BEEA021B8278 /* time_precise.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = time_precise.cc; path = src/core/lib/gpr/time_precise.cc; sourceTree = "<group>"; };
 		2B56944CA68AF175967D5721FF17AF39 /* eventmanager_libuv.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = eventmanager_libuv.h; path = src/core/lib/iomgr/poller/eventmanager_libuv.h; sourceTree = "<group>"; };
 		2B5910798F68CF5ABBE362C308EC290D /* hpack_encoder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = hpack_encoder.h; path = src/core/ext/transport/chttp2/transport/hpack_encoder.h; sourceTree = "<group>"; };
-		2B7D85F8BACFBC9178E41E15D4881D8A /* x509_obj.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509_obj.c; path = src/crypto/x509/x509_obj.c; sourceTree = "<group>"; };
+		2B7D85F8BACFBC9178E41E15D4881D8A /* x509_obj.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509_obj.c; path = src/crypto/x509/x509_obj.c; sourceTree = "<group>"; };
 		2BB2A4E5234FE421BB8EBC055336266A /* FirebaseCoreInternal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FirebaseCoreInternal.h; path = FirebaseCore/Sources/Private/FirebaseCoreInternal.h; sourceTree = "<group>"; };
-		2BC19B6470D80909AD63325EE6AEB258 /* hard_assert.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = hard_assert.cc; path = Firestore/core/src/util/hard_assert.cc; sourceTree = "<group>"; };
-		2BC6A7344465B05DC3192F406BFB496C /* aes_gcm.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = aes_gcm.cc; path = src/core/tsi/alts/crypt/aes_gcm.cc; sourceTree = "<group>"; };
+		2BC19B6470D80909AD63325EE6AEB258 /* hard_assert.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = hard_assert.cc; path = Firestore/core/src/util/hard_assert.cc; sourceTree = "<group>"; };
+		2BC6A7344465B05DC3192F406BFB496C /* aes_gcm.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = aes_gcm.cc; path = src/core/tsi/alts/crypt/aes_gcm.cc; sourceTree = "<group>"; };
 		2BD694769871790ABD92721F2AB93400 /* p256-x86_64-table.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "p256-x86_64-table.h"; path = "src/crypto/fipsmodule/ec/p256-x86_64-table.h"; sourceTree = "<group>"; };
-		2C1554A3E27BD6B427030C570DFE958E /* charconv_bigint.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = charconv_bigint.cc; path = absl/strings/internal/charconv_bigint.cc; sourceTree = "<group>"; };
-		2C160CF895CC25AA30037089ECDB9F43 /* t_x509a.c */ = {isa = PBXFileReference; includeInIndex = 1; name = t_x509a.c; path = src/crypto/x509/t_x509a.c; sourceTree = "<group>"; };
-		2C186F27CD0B87BDB25D6F4308BA365A /* alts_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alts_credentials.cc; path = src/core/lib/security/credentials/alts/alts_credentials.cc; sourceTree = "<group>"; };
+		2C1554A3E27BD6B427030C570DFE958E /* charconv_bigint.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = charconv_bigint.cc; path = absl/strings/internal/charconv_bigint.cc; sourceTree = "<group>"; };
+		2C160CF895CC25AA30037089ECDB9F43 /* t_x509a.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = t_x509a.c; path = src/crypto/x509/t_x509a.c; sourceTree = "<group>"; };
+		2C186F27CD0B87BDB25D6F4308BA365A /* alts_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alts_credentials.cc; path = src/core/lib/security/credentials/alts/alts_credentials.cc; sourceTree = "<group>"; };
 		2C1B31444F212685658A78202D666593 /* FIRAuthCredential.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthCredential.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRAuthCredential.h; sourceTree = "<group>"; };
-		2C60FC64CFC114FBE4716B4D792A2F6D /* reference_set.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = reference_set.cc; path = Firestore/core/src/local/reference_set.cc; sourceTree = "<group>"; };
+		2C60FC64CFC114FBE4716B4D792A2F6D /* reference_set.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = reference_set.cc; path = Firestore/core/src/local/reference_set.cc; sourceTree = "<group>"; };
 		2C7A767C159BA9746774241A32F5C102 /* FIRSignUpNewUserResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRSignUpNewUserResponse.m; path = FirebaseAuth/Sources/Backend/RPC/FIRSignUpNewUserResponse.m; sourceTree = "<group>"; };
-		2C8CAB945F1FE88231546E85F73AC98B /* string.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = string.cc; path = src/core/lib/gpr/string.cc; sourceTree = "<group>"; };
+		2C8CAB945F1FE88231546E85F73AC98B /* string.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = string.cc; path = src/core/lib/gpr/string.cc; sourceTree = "<group>"; };
 		2C98060C1B0B2D18B39779742856191B /* FIRAuthSerialTaskQueue.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthSerialTaskQueue.m; path = FirebaseAuth/Sources/Auth/FIRAuthSerialTaskQueue.m; sourceTree = "<group>"; };
-		2CAFE03F9D95FDC7E5E06C3A74FCBA1D /* xds_client.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = xds_client.cc; path = src/core/ext/filters/client_channel/xds/xds_client.cc; sourceTree = "<group>"; };
+		2CAFE03F9D95FDC7E5E06C3A74FCBA1D /* xds_client.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = xds_client.cc; path = src/core/ext/filters/client_channel/xds/xds_client.cc; sourceTree = "<group>"; };
 		2CBD828CE18805D7E9DAB15CD476B918 /* FIRMultiFactorResolver+Internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FIRMultiFactorResolver+Internal.h"; path = "FirebaseAuth/Sources/MultiFactor/FIRMultiFactorResolver+Internal.h"; sourceTree = "<group>"; };
 		2CC5369A9E9D629989032AFBE1DAD3AC /* inlined_vector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = inlined_vector.h; path = absl/container/internal/inlined_vector.h; sourceTree = "<group>"; };
 		2D02C6CE443AB7E35A8039E6221400FA /* tsi_error.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tsi_error.h; path = src/core/lib/security/transport/tsi_error.h; sourceTree = "<group>"; };
 		2D0D81008D2AD2EB4559ADDDC5351B88 /* error_utils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = error_utils.h; path = src/core/lib/transport/error_utils.h; sourceTree = "<group>"; };
 		2D1C8FE76D5812BCBE4AC444D421566B /* CLTypingLabel.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = CLTypingLabel.modulemap; sourceTree = "<group>"; };
-		2D315C2F4BF7C3C491ABADB4FE64003A /* watch_change.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = watch_change.cc; path = Firestore/core/src/remote/watch_change.cc; sourceTree = "<group>"; };
+		2D315C2F4BF7C3C491ABADB4FE64003A /* watch_change.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = watch_change.cc; path = Firestore/core/src/remote/watch_change.cc; sourceTree = "<group>"; };
 		2D374E1BB8F5F1BDE0CEB4435C61E0CD /* frame_settings.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = frame_settings.h; path = src/core/ext/transport/chttp2/transport/frame_settings.h; sourceTree = "<group>"; };
-		2D3ADEDBF5A4DB50BB38BE44A48E0E2F /* grpc_root_certificates_generated.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_root_certificates_generated.cc; path = Firestore/core/src/remote/grpc_root_certificates_generated.cc; sourceTree = "<group>"; };
+		2D3ADEDBF5A4DB50BB38BE44A48E0E2F /* grpc_root_certificates_generated.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_root_certificates_generated.cc; path = Firestore/core/src/remote/grpc_root_certificates_generated.cc; sourceTree = "<group>"; };
 		2D3D44B9FD3D82811D06E8795FBD47F8 /* timer_heap.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = timer_heap.h; path = src/core/lib/iomgr/timer_heap.h; sourceTree = "<group>"; };
-		2D464823E6B250E3F906F20B846C1DC3 /* filter_block.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = filter_block.cc; path = table/filter_block.cc; sourceTree = "<group>"; };
+		2D464823E6B250E3F906F20B846C1DC3 /* filter_block.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = filter_block.cc; path = table/filter_block.cc; sourceTree = "<group>"; };
 		2D4C9C5CB18B8D44CF7C526DC7291FC0 /* FIRAuthStoredUserManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthStoredUserManager.m; path = FirebaseAuth/Sources/SystemService/FIRAuthStoredUserManager.m; sourceTree = "<group>"; };
 		2D537944EF00E66CC8D5C0159BE74188 /* http2_settings.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = http2_settings.h; path = src/core/ext/transport/chttp2/transport/http2_settings.h; sourceTree = "<group>"; };
-		2D8D208BDF2EC849344408FF70BB6E45 /* x509_vpm.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509_vpm.c; path = src/crypto/x509/x509_vpm.c; sourceTree = "<group>"; };
+		2D8D208BDF2EC849344408FF70BB6E45 /* x509_vpm.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509_vpm.c; path = src/crypto/x509/x509_vpm.c; sourceTree = "<group>"; };
 		2DA2DD34B82C48D5207A0491EED4C627 /* sockaddr_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sockaddr_posix.h; path = src/core/lib/iomgr/sockaddr_posix.h; sourceTree = "<group>"; };
 		2DA330FDB2415F917714349F8EAA6A77 /* load_reporting.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = load_reporting.h; path = include/grpc/load_reporting.h; sourceTree = "<group>"; };
-		2DC3EC37EEF6B57861FD76A3E18AABBB /* patch_mutation.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = patch_mutation.cc; path = Firestore/core/src/model/patch_mutation.cc; sourceTree = "<group>"; };
+		2DC3EC37EEF6B57861FD76A3E18AABBB /* patch_mutation.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = patch_mutation.cc; path = Firestore/core/src/model/patch_mutation.cc; sourceTree = "<group>"; };
 		2DDA5CC99F986F46B185DC488C53F048 /* frame_ping.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = frame_ping.h; path = src/core/ext/transport/chttp2/transport/frame_ping.h; sourceTree = "<group>"; };
 		2DF0BB7D38DF2DA70F919797CEA962ED /* encode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = encode.h; path = third_party/upb/upb/encode.h; sourceTree = "<group>"; };
 		2E14A0927FD248B2B6F8266EDBEF54F2 /* client_interceptor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_interceptor.h; path = include/grpcpp/support/client_interceptor.h; sourceTree = "<group>"; };
 		2E154DFA8CA21078869F99CC3890B322 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/Security.framework; sourceTree = DEVELOPER_DIR; };
 		2E1CB89C184BADF8DF0F3FDBDAA7A064 /* FIRAppInternal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAppInternal.h; path = FirebaseCore/Sources/Private/FIRAppInternal.h; sourceTree = "<group>"; };
-		2E2BBA2D5959533F91A93C584D8F1B43 /* credentials_cc.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = credentials_cc.cc; path = src/cpp/client/credentials_cc.cc; sourceTree = "<group>"; };
+		2E2BBA2D5959533F91A93C584D8F1B43 /* credentials_cc.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = credentials_cc.cc; path = src/cpp/client/credentials_cc.cc; sourceTree = "<group>"; };
 		2E42FEF9D72F20EDEF9FD8A4093CD36D /* time_zone_libc.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = time_zone_libc.h; path = absl/time/internal/cctz/src/time_zone_libc.h; sourceTree = "<group>"; };
 		2E87EC60F0181EF2C5E9B0EC021EF03E /* cpu-arm-linux.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "cpu-arm-linux.h"; path = "src/crypto/cpu-arm-linux.h"; sourceTree = "<group>"; };
 		2E9067B8BC8AD2422136108A0327F99E /* unscaledcycleclock.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = unscaledcycleclock.h; path = absl/base/internal/unscaledcycleclock.h; sourceTree = "<group>"; };
 		2EA38F88EE7A5EBD14A3E646B97A41D0 /* local_security_connector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = local_security_connector.h; path = src/core/lib/security/security_connector/local/local_security_connector.h; sourceTree = "<group>"; };
-		2ECBD96846236209FE5CCF0389522FB0 /* by_dir.c */ = {isa = PBXFileReference; includeInIndex = 1; name = by_dir.c; path = src/crypto/x509/by_dir.c; sourceTree = "<group>"; };
+		2ECBD96846236209FE5CCF0389522FB0 /* by_dir.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = by_dir.c; path = src/crypto/x509/by_dir.c; sourceTree = "<group>"; };
 		2EF526E646ED881151E92FEB20A350BE /* FIRFirebaseUserAgent.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRFirebaseUserAgent.h; path = FirebaseCore/Sources/FIRFirebaseUserAgent.h; sourceTree = "<group>"; };
 		2F0940D92BABDA07A892ED3FF8801FF3 /* FIRVerifyPhoneNumberResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRVerifyPhoneNumberResponse.m; path = FirebaseAuth/Sources/Backend/RPC/FIRVerifyPhoneNumberResponse.m; sourceTree = "<group>"; };
 		2F30AE0FF1C1C07534433C1E34F060BD /* span.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = span.h; path = absl/types/internal/span.h; sourceTree = "<group>"; };
-		2F3DF7D481D15B4A2EDFBB09F0A7ED24 /* time_zone_impl.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = time_zone_impl.cc; path = absl/time/internal/cctz/src/time_zone_impl.cc; sourceTree = "<group>"; };
+		2F3DF7D481D15B4A2EDFBB09F0A7ED24 /* time_zone_impl.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = time_zone_impl.cc; path = absl/time/internal/cctz/src/time_zone_impl.cc; sourceTree = "<group>"; };
 		2F42027FF4333D7885C67FC3CEEEAF25 /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/third_party/fiat/internal.h; sourceTree = "<group>"; };
 		2F5E0D0DBDC4AFCE37813CCBB0113489 /* gogo.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = gogo.upb.h; path = "src/core/ext/upb-generated/gogoproto/gogo.upb.h"; sourceTree = "<group>"; };
 		2F5F2C20B436DD12F1772FF5149EA12B /* GULSecureCoding.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GULSecureCoding.m; path = GoogleUtilities/Environment/GULSecureCoding.m; sourceTree = "<group>"; };
-		2F61992FE0ED941AB6E68671654A42C2 /* annotations.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = annotations.upb.c; path = "src/core/ext/upb-generated/google/api/annotations.upb.c"; sourceTree = "<group>"; };
+		2F61992FE0ED941AB6E68671654A42C2 /* annotations.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = annotations.upb.c; path = "src/core/ext/upb-generated/google/api/annotations.upb.c"; sourceTree = "<group>"; };
 		2F8104D95C39B6B98FB847FD8B548CBE /* coding.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = coding.h; path = util/coding.h; sourceTree = "<group>"; };
 		2F8E1B0D1C90CE1FAB937D84FA86B96D /* PromisesObjC.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = PromisesObjC.release.xcconfig; sourceTree = "<group>"; };
 		2FA016666DD17261EB3AF6D0B506462A /* trace.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = trace.h; path = src/core/lib/debug/trace.h; sourceTree = "<group>"; };
-		2FDC44404829565CD493C9B6C8836FA0 /* descriptor.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = descriptor.upb.c; path = "src/core/ext/upb-generated/google/protobuf/descriptor.upb.c"; sourceTree = "<group>"; };
+		2FDC44404829565CD493C9B6C8836FA0 /* descriptor.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = descriptor.upb.c; path = "src/core/ext/upb-generated/google/protobuf/descriptor.upb.c"; sourceTree = "<group>"; };
 		2FE8962710D4D0AEE62499DA19E0E388 /* ref_counted.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ref_counted.h; path = src/core/lib/gprpp/ref_counted.h; sourceTree = "<group>"; };
 		3002F67FC52F7ED4D218FED2D168976F /* resource_quota.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resource_quota.h; path = include/grpcpp/resource_quota.h; sourceTree = "<group>"; };
 		30177E6E5C01A666728C6E3B007CD59F /* FIROptionsInternal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIROptionsInternal.h; path = FirebaseCore/Sources/Private/FIROptionsInternal.h; sourceTree = "<group>"; };
-		3019307A127197A8E3EB48048A49479D /* ascii.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ascii.cc; path = absl/strings/ascii.cc; sourceTree = "<group>"; };
-		3030957E58154216CAFAC0CC32F84C77 /* check_gcp_environment_linux.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = check_gcp_environment_linux.cc; path = src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc; sourceTree = "<group>"; };
+		3019307A127197A8E3EB48048A49479D /* ascii.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ascii.cc; path = absl/strings/ascii.cc; sourceTree = "<group>"; };
+		3030957E58154216CAFAC0CC32F84C77 /* check_gcp_environment_linux.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = check_gcp_environment_linux.cc; path = src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc; sourceTree = "<group>"; };
 		30312A4B86B32E24818C3FBEF8C381A4 /* rpc_method.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = rpc_method.h; path = include/grpcpp/impl/codegen/rpc_method.h; sourceTree = "<group>"; };
 		303F6F1F382A046FCF32ADFE0BBB0C21 /* httpcli.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = httpcli.h; path = src/core/lib/http/httpcli.h; sourceTree = "<group>"; };
 		3045BC30F2B2DE9386DE41FFBF6FA9C5 /* status.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = status.upb.h; path = "src/core/ext/upb-generated/google/rpc/status.upb.h"; sourceTree = "<group>"; };
 		304BC63275EDDE5373BF33EF46E459C9 /* GDTCORAssert.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCORAssert.m; path = GoogleDataTransport/GDTCORLibrary/GDTCORAssert.m; sourceTree = "<group>"; };
 		30791AC9A984C50B59618014180B655C /* load_report.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = load_report.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/endpoint/load_report.upb.h"; sourceTree = "<group>"; };
-		30A4A5DD2DF36A1B3E7278B1A0D8FB4E /* grpc_ares_wrapper_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_ares_wrapper_windows.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc; sourceTree = "<group>"; };
+		30A4A5DD2DF36A1B3E7278B1A0D8FB4E /* grpc_ares_wrapper_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_ares_wrapper_windows.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc; sourceTree = "<group>"; };
 		30E851A9186880148188FEE527314418 /* FIRAdditionalUserInfo.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAdditionalUserInfo.m; path = FirebaseAuth/Sources/User/FIRAdditionalUserInfo.m; sourceTree = "<group>"; };
 		31106D325C12EA1379C4D1A2CED5FA57 /* load_system_roots_linux.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = load_system_roots_linux.h; path = src/core/lib/security/security_connector/load_system_roots_linux.h; sourceTree = "<group>"; };
 		31485358BA3AC436407BEE92EEDB8205 /* blowfish.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = blowfish.h; path = src/include/openssl/blowfish.h; sourceTree = "<group>"; };
 		3152AE5DE072DA949A183E486FEAFAEF /* frame_settings.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = frame_settings.h; path = src/core/ext/transport/chttp2/transport/frame_settings.h; sourceTree = "<group>"; };
-		31674BA0A564D04335AA25DA7A7520BC /* xds.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = xds.cc; path = src/core/ext/filters/client_channel/lb_policy/xds/xds.cc; sourceTree = "<group>"; };
-		31692A4ED2B0867EEBF9DCC0926EC177 /* time_zone_info.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = time_zone_info.cc; path = absl/time/internal/cctz/src/time_zone_info.cc; sourceTree = "<group>"; };
-		316F6790D07CA90F88602DE4326CC36C /* udp_listener_config.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = udp_listener_config.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/listener/udp_listener_config.upb.c"; sourceTree = "<group>"; };
+		31674BA0A564D04335AA25DA7A7520BC /* xds.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = xds.cc; path = src/core/ext/filters/client_channel/lb_policy/xds/xds.cc; sourceTree = "<group>"; };
+		31692A4ED2B0867EEBF9DCC0926EC177 /* time_zone_info.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = time_zone_info.cc; path = absl/time/internal/cctz/src/time_zone_info.cc; sourceTree = "<group>"; };
+		316F6790D07CA90F88602DE4326CC36C /* udp_listener_config.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = udp_listener_config.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/listener/udp_listener_config.upb.c"; sourceTree = "<group>"; };
 		3194069485F9256C9E7D6F2A00962EC8 /* FIRFieldPath.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRFieldPath.h; path = Firestore/Source/Public/FirebaseFirestore/FIRFieldPath.h; sourceTree = "<group>"; };
 		3198223809EAFA4801151288F011769F /* GULNSData+zlib.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "GULNSData+zlib.m"; path = "GoogleUtilities/NSData+zlib/GULNSData+zlib.m"; sourceTree = "<group>"; };
 		31994D00FBB5DC5B39A2B3405164372C /* http.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = http.upb.h; path = "src/core/ext/upb-generated/google/api/http.upb.h"; sourceTree = "<group>"; };
-		31A5FDAA0E149489AB4FE63FDEEF47AA /* local_serializer.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = local_serializer.cc; path = Firestore/core/src/local/local_serializer.cc; sourceTree = "<group>"; };
-		31B4E188D3F2E98DD91977CFFAAD2224 /* periodic_sampler.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = periodic_sampler.cc; path = absl/base/internal/periodic_sampler.cc; sourceTree = "<group>"; };
-		31B572D2266651C5C6A7281E5E4E2681 /* sign.c */ = {isa = PBXFileReference; includeInIndex = 1; name = sign.c; path = src/crypto/evp/sign.c; sourceTree = "<group>"; };
+		31A5FDAA0E149489AB4FE63FDEEF47AA /* local_serializer.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = local_serializer.cc; path = Firestore/core/src/local/local_serializer.cc; sourceTree = "<group>"; };
+		31B4E188D3F2E98DD91977CFFAAD2224 /* periodic_sampler.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = periodic_sampler.cc; path = absl/base/internal/periodic_sampler.cc; sourceTree = "<group>"; };
+		31B572D2266651C5C6A7281E5E4E2681 /* sign.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = sign.c; path = src/crypto/evp/sign.c; sourceTree = "<group>"; };
 		31BD3F1CAA66823EAA2085C58885140C /* nanopb-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "nanopb-prefix.pch"; sourceTree = "<group>"; };
 		31C4EB91544AC062E7B934080B509235 /* FIRFieldValue.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRFieldValue.h; path = Firestore/Source/Public/FirebaseFirestore/FIRFieldValue.h; sourceTree = "<group>"; };
 		31EA444BFB45C33E921D469D4AAA3D3A /* alts_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_credentials.h; path = src/core/lib/security/credentials/alts/alts_credentials.h; sourceTree = "<group>"; };
 		31F962E0725762A7DDAE4FA040256898 /* api_listener.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = api_listener.upb.h; path = "src/core/ext/upb-generated/envoy/config/listener/v2/api_listener.upb.h"; sourceTree = "<group>"; };
-		320B04D07173747E93C58B7A129E949C /* add.c */ = {isa = PBXFileReference; includeInIndex = 1; name = add.c; path = src/crypto/fipsmodule/bn/add.c; sourceTree = "<group>"; };
+		320B04D07173747E93C58B7A129E949C /* add.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = add.c; path = src/crypto/fipsmodule/bn/add.c; sourceTree = "<group>"; };
 		32117229C43E4FA32D1B80844D45B031 /* range.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = range.upb.h; path = "src/core/ext/upb-generated/envoy/type/range.upb.h"; sourceTree = "<group>"; };
 		321840E372C479D06963586A4055AB31 /* fake_transport_security.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = fake_transport_security.h; path = src/core/tsi/fake_transport_security.h; sourceTree = "<group>"; };
 		32462C8A48B0E16F1A39B0506C533B8D /* client_callback.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_callback.h; path = include/grpcpp/support/client_callback.h; sourceTree = "<group>"; };
@@ -8990,127 +8991,127 @@
 		32CB7946C097AB6BCA7EF4ACEAAE4FFF /* frame_handler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = frame_handler.h; path = src/core/tsi/alts/frame_protector/frame_handler.h; sourceTree = "<group>"; };
 		32D59687B66A7C7CE9A2AE3199FF09AA /* inlined_vector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = inlined_vector.h; path = absl/container/inlined_vector.h; sourceTree = "<group>"; };
 		32DFE09F5A997EAC57026E69F4A44961 /* GULKeychainUtils.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GULKeychainUtils.m; path = GoogleUtilities/Environment/SecureStorage/GULKeychainUtils.m; sourceTree = "<group>"; };
-		32E2404F2123A21398B6ED84920AC29B /* query.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = query.nanopb.cc; path = Firestore/Protos/nanopb/google/firestore/v1/query.nanopb.cc; sourceTree = "<group>"; };
-		32E8B574CA46CCA5FEA3E271B6481DC2 /* handoff.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = handoff.cc; path = src/ssl/handoff.cc; sourceTree = "<group>"; };
+		32E2404F2123A21398B6ED84920AC29B /* query.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = query.nanopb.cc; path = Firestore/Protos/nanopb/google/firestore/v1/query.nanopb.cc; sourceTree = "<group>"; };
+		32E8B574CA46CCA5FEA3E271B6481DC2 /* handoff.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = handoff.cc; path = src/ssl/handoff.cc; sourceTree = "<group>"; };
 		3303A405361CF1BB3C96CA5CCECA953D /* rds.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = rds.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/rds.upb.h"; sourceTree = "<group>"; };
 		3317ED710E0028C6A60AB238341A69A7 /* grpc_security_constants.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpc_security_constants.h; path = include/grpc/grpc_security_constants.h; sourceTree = "<group>"; };
-		33411E8566C181A6C40D1162C366C7BC /* transport_op_string.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = transport_op_string.cc; path = src/core/lib/transport/transport_op_string.cc; sourceTree = "<group>"; };
-		3347A1AB6546F0A3977529B8F199DC41 /* FBLPromises.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = FBLPromises.framework; path = PromisesObjC.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		33411E8566C181A6C40D1162C366C7BC /* transport_op_string.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = transport_op_string.cc; path = src/core/lib/transport/transport_op_string.cc; sourceTree = "<group>"; };
+		3347A1AB6546F0A3977529B8F199DC41 /* FBLPromises.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FBLPromises.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		335A78F51E1A5E2AFDAD517D32EE2097 /* server_builder_option.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_builder_option.h; path = include/grpcpp/impl/server_builder_option.h; sourceTree = "<group>"; };
 		335B2F5264471ED8B757A6021B8FE955 /* FBLPromise.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBLPromise.h; path = Sources/FBLPromises/include/FBLPromise.h; sourceTree = "<group>"; };
 		33666CEA59B63F6DB899604EE9ADDDDD /* global_subchannel_pool.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = global_subchannel_pool.h; path = src/core/ext/filters/client_channel/global_subchannel_pool.h; sourceTree = "<group>"; };
 		33694203BF33B0A16FD2672B4E67E903 /* alts_zero_copy_grpc_protector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_zero_copy_grpc_protector.h; path = src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h; sourceTree = "<group>"; };
 		337EB767E8492FF50399B46FEEA779B8 /* FIRGoogleAuthCredential.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRGoogleAuthCredential.m; path = FirebaseAuth/Sources/AuthProvider/Google/FIRGoogleAuthCredential.m; sourceTree = "<group>"; };
 		33961FCCE4495039A8C5BDADE9392105 /* FirebaseCoreInternal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FirebaseCoreInternal.h; path = FirebaseCore/Sources/Private/FirebaseCoreInternal.h; sourceTree = "<group>"; };
-		33A8B1F945CEE077F88E595EC11CEF5C /* simple_mul.c */ = {isa = PBXFileReference; includeInIndex = 1; name = simple_mul.c; path = src/crypto/fipsmodule/ec/simple_mul.c; sourceTree = "<group>"; };
-		33D40F377F95201F7BF1B2E6305918BA /* load_system_roots_linux.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = load_system_roots_linux.cc; path = src/core/lib/security/security_connector/load_system_roots_linux.cc; sourceTree = "<group>"; };
+		33A8B1F945CEE077F88E595EC11CEF5C /* simple_mul.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = simple_mul.c; path = src/crypto/fipsmodule/ec/simple_mul.c; sourceTree = "<group>"; };
+		33D40F377F95201F7BF1B2E6305918BA /* load_system_roots_linux.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = load_system_roots_linux.cc; path = src/core/lib/security/security_connector/load_system_roots_linux.cc; sourceTree = "<group>"; };
 		33EBB32704BF0C51611F09D40F2CF566 /* GTMSessionFetcher.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = GTMSessionFetcher.debug.xcconfig; sourceTree = "<group>"; };
 		3428A30D3F3D86F2795AEDDB6EB0AFC7 /* frame_goaway.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = frame_goaway.h; path = src/core/ext/transport/chttp2/transport/frame_goaway.h; sourceTree = "<group>"; };
 		343413364F129A879149BD46F2BD9655 /* FIRTimestamp.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRTimestamp.m; path = Firestore/Source/API/FIRTimestamp.m; sourceTree = "<group>"; };
-		343C6BFB85B17AE105AFAEB8E54FCBC4 /* ordered_code.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ordered_code.cc; path = Firestore/core/src/util/ordered_code.cc; sourceTree = "<group>"; };
-		344E2FEC090AFB369966BDE752167294 /* ssl_versions.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_versions.cc; path = src/ssl/ssl_versions.cc; sourceTree = "<group>"; };
+		343C6BFB85B17AE105AFAEB8E54FCBC4 /* ordered_code.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ordered_code.cc; path = Firestore/core/src/util/ordered_code.cc; sourceTree = "<group>"; };
+		344E2FEC090AFB369966BDE752167294 /* ssl_versions.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_versions.cc; path = src/ssl/ssl_versions.cc; sourceTree = "<group>"; };
 		344E69F888E0B02BACC553C9F846E142 /* unix_sockets_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = unix_sockets_posix.h; path = src/core/lib/iomgr/unix_sockets_posix.h; sourceTree = "<group>"; };
 		344EB1E1DEBAA624EFC9EBE9ABEC7FE2 /* backup_poller.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = backup_poller.h; path = src/core/ext/filters/client_channel/backup_poller.h; sourceTree = "<group>"; };
 		347E591E11D86B705885258AB4E5D8F3 /* jwt_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = jwt_credentials.h; path = src/core/lib/security/credentials/jwt/jwt_credentials.h; sourceTree = "<group>"; };
 		34966F9585901F157A23A80797AAFB65 /* discovery.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = discovery.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/discovery.upb.h"; sourceTree = "<group>"; };
-		349E6D3480FB53B4D4724A6B88AB896B /* ev_epollex_linux.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ev_epollex_linux.cc; path = src/core/lib/iomgr/ev_epollex_linux.cc; sourceTree = "<group>"; };
-		34B540115672B255F75CE9559032E4DC /* pollset.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = pollset.cc; path = src/core/lib/iomgr/pollset.cc; sourceTree = "<group>"; };
+		349E6D3480FB53B4D4724A6B88AB896B /* ev_epollex_linux.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ev_epollex_linux.cc; path = src/core/lib/iomgr/ev_epollex_linux.cc; sourceTree = "<group>"; };
+		34B540115672B255F75CE9559032E4DC /* pollset.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = pollset.cc; path = src/core/lib/iomgr/pollset.cc; sourceTree = "<group>"; };
 		34CF42C60647C6E328E614DB8224A735 /* route.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = route.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/route.upb.h"; sourceTree = "<group>"; };
 		34EBDA066D7BE06A563078627F24398A /* backend_metric.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = backend_metric.h; path = src/core/ext/filters/client_channel/backend_metric.h; sourceTree = "<group>"; };
-		34EE452DAC41071A14DF0B81C0B33340 /* view.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = view.cc; path = Firestore/core/src/core/view.cc; sourceTree = "<group>"; };
+		34EE452DAC41071A14DF0B81C0B33340 /* view.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = view.cc; path = Firestore/core/src/core/view.cc; sourceTree = "<group>"; };
 		34F866D85E19A9E6C4AAD198E4A71E2B /* fork.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = fork.h; path = src/core/lib/gprpp/fork.h; sourceTree = "<group>"; };
-		350F72996089AF9F468FC4D275F8D9D6 /* c.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = c.cc; path = db/c.cc; sourceTree = "<group>"; };
+		350F72996089AF9F468FC4D275F8D9D6 /* c.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = c.cc; path = db/c.cc; sourceTree = "<group>"; };
 		35576FA5A64EEDB58453A9FD29CF7553 /* atm.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = atm.h; path = include/grpc/support/atm.h; sourceTree = "<group>"; };
 		35AA36FA230E1CD59AEA5CFDDBA76818 /* leveldb.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = leveldb.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		35BD25E40616B8757A41810DF3D5AB67 /* empty.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = empty.upb.h; path = "src/core/ext/upb-generated/google/protobuf/empty.upb.h"; sourceTree = "<group>"; };
 		35CC60F1A78FF8DF06628C609FCF93F7 /* tcp_server.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tcp_server.h; path = src/core/lib/iomgr/tcp_server.h; sourceTree = "<group>"; };
-		35F4C996635A12E04200C5BB9084E6D5 /* document.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = document.cc; path = Firestore/core/src/model/document.cc; sourceTree = "<group>"; };
-		360D13A555C61E5D3A51DC2A34C06E2B /* tasn_utl.c */ = {isa = PBXFileReference; includeInIndex = 1; name = tasn_utl.c; path = src/crypto/asn1/tasn_utl.c; sourceTree = "<group>"; };
+		35F4C996635A12E04200C5BB9084E6D5 /* document.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = document.cc; path = Firestore/core/src/model/document.cc; sourceTree = "<group>"; };
+		360D13A555C61E5D3A51DC2A34C06E2B /* tasn_utl.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = tasn_utl.c; path = src/crypto/asn1/tasn_utl.c; sourceTree = "<group>"; };
 		360F4E6F9945A7C6A8B02D4A3DA4BA71 /* FIRFacebookAuthProvider.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRFacebookAuthProvider.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRFacebookAuthProvider.h; sourceTree = "<group>"; };
-		361111AF717B3D21CF2BC1E1E5A1A90B /* gcd_extra.c */ = {isa = PBXFileReference; includeInIndex = 1; name = gcd_extra.c; path = src/crypto/fipsmodule/bn/gcd_extra.c; sourceTree = "<group>"; };
+		361111AF717B3D21CF2BC1E1E5A1A90B /* gcd_extra.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = gcd_extra.c; path = src/crypto/fipsmodule/bn/gcd_extra.c; sourceTree = "<group>"; };
 		362936A5A3F13BEC4451475800C199EC /* compression_internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = compression_internal.h; path = src/core/lib/compression/compression_internal.h; sourceTree = "<group>"; };
 		363B1A49AC9D02BA60C2596AA5A86BA7 /* log_reader.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = log_reader.h; path = db/log_reader.h; sourceTree = "<group>"; };
 		3643E8343F2CE142ACA434EC5CF20CFE /* alts_grpc_record_protocol_common.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_grpc_record_protocol_common.h; path = src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.h; sourceTree = "<group>"; };
 		3645C9AF135BCE973FCD99D49F0D4139 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/SystemConfiguration.framework; sourceTree = DEVELOPER_DIR; };
 		3645D6AFA53BDAD7F306A53B74088578 /* dsa.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = dsa.h; path = src/include/openssl/dsa.h; sourceTree = "<group>"; };
-		367B7191FE099E8931BF9C6403BD8000 /* pollset_custom.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = pollset_custom.cc; path = src/core/lib/iomgr/pollset_custom.cc; sourceTree = "<group>"; };
+		367B7191FE099E8931BF9C6403BD8000 /* pollset_custom.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = pollset_custom.cc; path = src/core/lib/iomgr/pollset_custom.cc; sourceTree = "<group>"; };
 		36907EAB75A59C28FF9BA503EC1E8646 /* compressed_tuple.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = compressed_tuple.h; path = absl/container/internal/compressed_tuple.h; sourceTree = "<group>"; };
-		3696835D5029BADF3E01A4C599807B49 /* mutation_batch.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = mutation_batch.cc; path = Firestore/core/src/model/mutation_batch.cc; sourceTree = "<group>"; };
+		3696835D5029BADF3E01A4C599807B49 /* mutation_batch.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = mutation_batch.cc; path = Firestore/core/src/model/mutation_batch.cc; sourceTree = "<group>"; };
 		36CA69C0FC698C1D0508C1FD10F6451E /* udp_server.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = udp_server.h; path = src/core/lib/iomgr/udp_server.h; sourceTree = "<group>"; };
 		36F5232F2CB6C69825A48CC7F9921D9C /* byte_stream.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = byte_stream.h; path = src/core/lib/transport/byte_stream.h; sourceTree = "<group>"; };
 		36F6943238E3F5207662D5CF4D4145BC /* FIRVerifyAssertionResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRVerifyAssertionResponse.m; path = FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionResponse.m; sourceTree = "<group>"; };
 		36FE04A453BA5CCF034562EB343B2EB2 /* FIRCoreDiagnosticsConnector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRCoreDiagnosticsConnector.h; path = FirebaseCore/Sources/Private/FIRCoreDiagnosticsConnector.h; sourceTree = "<group>"; };
-		3709E326E3501036C51A2557F610B654 /* kdf.c */ = {isa = PBXFileReference; includeInIndex = 1; name = kdf.c; path = src/crypto/fipsmodule/tls/kdf.c; sourceTree = "<group>"; };
-		37167194B4B6A9CEA90AA854CE37C8C7 /* socket_factory_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = socket_factory_posix.cc; path = src/core/lib/iomgr/socket_factory_posix.cc; sourceTree = "<group>"; };
+		3709E326E3501036C51A2557F610B654 /* kdf.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = kdf.c; path = src/crypto/fipsmodule/tls/kdf.c; sourceTree = "<group>"; };
+		37167194B4B6A9CEA90AA854CE37C8C7 /* socket_factory_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = socket_factory_posix.cc; path = src/core/lib/iomgr/socket_factory_posix.cc; sourceTree = "<group>"; };
 		3737647E6B8312ADCF9B01F7E3F2E749 /* FIRAuthUIDelegate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthUIDelegate.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRAuthUIDelegate.h; sourceTree = "<group>"; };
 		3752279FF5A9D9BEA1C1B5880A952101 /* parser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = parser.h; path = src/core/lib/http/parser.h; sourceTree = "<group>"; };
-		375E41C1D08C7198EE71308F3E50200C /* grpc_connection.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_connection.cc; path = Firestore/core/src/remote/grpc_connection.cc; sourceTree = "<group>"; };
+		375E41C1D08C7198EE71308F3E50200C /* grpc_connection.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_connection.cc; path = Firestore/core/src/remote/grpc_connection.cc; sourceTree = "<group>"; };
 		376FC5FA85F4983C55ED644D48FC070D /* rpc_service_method.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = rpc_service_method.h; path = include/grpcpp/impl/codegen/rpc_service_method.h; sourceTree = "<group>"; };
 		377C7F92E7F40DFB34B279201CAADA4B /* stl_type_traits.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = stl_type_traits.h; path = absl/strings/internal/stl_type_traits.h; sourceTree = "<group>"; };
 		378646537B19A07A4E31F3A409352B9D /* GDTCORReachability_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORReachability_Private.h; path = GoogleDataTransport/GDTCORLibrary/Private/GDTCORReachability_Private.h; sourceTree = "<group>"; };
 		378FAA3D42FE161E68CD41E0BD50464C /* lb_policy_registry.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = lb_policy_registry.h; path = src/core/ext/filters/client_channel/lb_policy_registry.h; sourceTree = "<group>"; };
-		380761CE3B576E3E81C170AD546CEEF1 /* lb_policy_registry.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = lb_policy_registry.cc; path = src/core/ext/filters/client_channel/lb_policy_registry.cc; sourceTree = "<group>"; };
-		381439A29B1661860614DEDC88163D78 /* e_rc4.c */ = {isa = PBXFileReference; includeInIndex = 1; name = e_rc4.c; path = src/crypto/cipher_extra/e_rc4.c; sourceTree = "<group>"; };
+		380761CE3B576E3E81C170AD546CEEF1 /* lb_policy_registry.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = lb_policy_registry.cc; path = src/core/ext/filters/client_channel/lb_policy_registry.cc; sourceTree = "<group>"; };
+		381439A29B1661860614DEDC88163D78 /* e_rc4.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = e_rc4.c; path = src/crypto/cipher_extra/e_rc4.c; sourceTree = "<group>"; };
 		3815B56A9C31E12AD8F19F0D96DD0CDE /* grpc_tls_credentials_options.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpc_tls_credentials_options.h; path = src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h; sourceTree = "<group>"; };
 		3822A1632EAF69859FAAADC5BEA09B5C /* timeout_encoding.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = timeout_encoding.h; path = src/core/lib/transport/timeout_encoding.h; sourceTree = "<group>"; };
 		382686DE86E726FEA084291F30D15A1D /* FirebaseCoreInternal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FirebaseCoreInternal.h; path = FirebaseCore/Sources/Private/FirebaseCoreInternal.h; sourceTree = "<group>"; };
-		385CBAF327A22C0880D7974829579D06 /* server_builder.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = server_builder.cc; path = src/cpp/server/server_builder.cc; sourceTree = "<group>"; };
+		385CBAF327A22C0880D7974829579D06 /* server_builder.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = server_builder.cc; path = src/cpp/server/server_builder.cc; sourceTree = "<group>"; };
 		386E2E432F188C921E11AF5EDD67C627 /* proto_buffer_writer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = proto_buffer_writer.h; path = include/grpcpp/support/proto_buffer_writer.h; sourceTree = "<group>"; };
 		3891A781AD75B95AA3C64EBFC0866DDE /* c.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = c.h; path = include/leveldb/c.h; sourceTree = "<group>"; };
-		38B7830BC585C4E001833177427FF503 /* tasn_typ.c */ = {isa = PBXFileReference; includeInIndex = 1; name = tasn_typ.c; path = src/crypto/asn1/tasn_typ.c; sourceTree = "<group>"; };
-		38C8020D4C352E4808837ACBC4C6DA1B /* f_enum.c */ = {isa = PBXFileReference; includeInIndex = 1; name = f_enum.c; path = src/crypto/asn1/f_enum.c; sourceTree = "<group>"; };
+		38B7830BC585C4E001833177427FF503 /* tasn_typ.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = tasn_typ.c; path = src/crypto/asn1/tasn_typ.c; sourceTree = "<group>"; };
+		38C8020D4C352E4808837ACBC4C6DA1B /* f_enum.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = f_enum.c; path = src/crypto/asn1/f_enum.c; sourceTree = "<group>"; };
 		38EA48D0B5C0585162CF03DA0BD64644 /* table.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = table.h; path = include/leveldb/table.h; sourceTree = "<group>"; };
 		38ECC42FEF05C939A4D7D5A139F1715F /* gethostname.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = gethostname.h; path = src/core/lib/iomgr/gethostname.h; sourceTree = "<group>"; };
 		3902F773F2E7E8EA5716176898370AD6 /* ssl_transport_security.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl_transport_security.h; path = src/core/tsi/ssl_transport_security.h; sourceTree = "<group>"; };
 		3914BE91330EFD2D600530171D0208CE /* cipher.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = cipher.h; path = src/include/openssl/cipher.h; sourceTree = "<group>"; };
 		39227F44413533E14EB215E8D1195487 /* bad_variant_access.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = bad_variant_access.h; path = absl/types/bad_variant_access.h; sourceTree = "<group>"; };
-		3939F8B69B271E0019FFD9E987F29F4F /* cluster.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = cluster.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/cluster.upb.c"; sourceTree = "<group>"; };
+		3939F8B69B271E0019FFD9E987F29F4F /* cluster.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = cluster.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/cluster.upb.c"; sourceTree = "<group>"; };
 		3953393B37CED3858A0C9E6F6F5DC814 /* slice.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = slice.h; path = include/grpc/slice.h; sourceTree = "<group>"; };
 		395E966395A865EDD283C29581A99A22 /* transport_security_grpc.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = transport_security_grpc.h; path = src/core/tsi/transport_security_grpc.h; sourceTree = "<group>"; };
 		39731916CC1BCDAD0E865B72B936785E /* time_zone_fixed.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = time_zone_fixed.h; path = absl/time/internal/cctz/src/time_zone_fixed.h; sourceTree = "<group>"; };
 		39760BAFC40EE47462174A53FC1E8F49 /* FIRPhoneAuthCredential_Internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRPhoneAuthCredential_Internal.h; path = FirebaseAuth/Sources/AuthProvider/Phone/FIRPhoneAuthCredential_Internal.h; sourceTree = "<group>"; };
-		398841098404FD3F2AA8423B2C0B4B54 /* ssl_security_connector.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_security_connector.cc; path = src/core/lib/security/security_connector/ssl/ssl_security_connector.cc; sourceTree = "<group>"; };
+		398841098404FD3F2AA8423B2C0B4B54 /* ssl_security_connector.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_security_connector.cc; path = src/core/lib/security/security_connector/ssl/ssl_security_connector.cc; sourceTree = "<group>"; };
 		39B89026285E16DCAC79C652EEB3083A /* sync_stream_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sync_stream_impl.h; path = include/grpcpp/support/sync_stream_impl.h; sourceTree = "<group>"; };
-		39C2DEE6C8ACBBC98663AB3961C883BB /* google_default_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = google_default_credentials.cc; path = src/core/lib/security/credentials/google_default/google_default_credentials.cc; sourceTree = "<group>"; };
+		39C2DEE6C8ACBBC98663AB3961C883BB /* google_default_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = google_default_credentials.cc; path = src/core/lib/security/credentials/google_default/google_default_credentials.cc; sourceTree = "<group>"; };
 		39D538B5B260240157C26D1250ADB9D8 /* atm.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = atm.h; path = include/grpc/impl/codegen/atm.h; sourceTree = "<group>"; };
 		3A0205C02F750558373E05EAE4635D6A /* Pods-FaceRecogAttendance-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-FaceRecogAttendance-dummy.m"; sourceTree = "<group>"; };
 		3A26B419E90E469ACAA2EFC8B65F63DC /* FIRFirestoreSettings.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRFirestoreSettings.h; path = Firestore/Source/Public/FirebaseFirestore/FIRFirestoreSettings.h; sourceTree = "<group>"; };
-		3A2CD52E91C9B51070F199771914604A /* pem_xaux.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pem_xaux.c; path = src/crypto/pem/pem_xaux.c; sourceTree = "<group>"; };
+		3A2CD52E91C9B51070F199771914604A /* pem_xaux.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pem_xaux.c; path = src/crypto/pem/pem_xaux.c; sourceTree = "<group>"; };
 		3A4464B6124CC1B473B6FB3A0F383B37 /* base64.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = base64.h; path = src/include/openssl/base64.h; sourceTree = "<group>"; };
-		3A59AE038EA5BF3E6A2B520B96F58429 /* alts_tsi_utils.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alts_tsi_utils.cc; path = src/core/tsi/alts/handshaker/alts_tsi_utils.cc; sourceTree = "<group>"; };
-		3A63ED631A787E110676FFBE9729568E /* FIRFirestore.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FIRFirestore.mm; path = Firestore/Source/API/FIRFirestore.mm; sourceTree = "<group>"; };
+		3A59AE038EA5BF3E6A2B520B96F58429 /* alts_tsi_utils.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alts_tsi_utils.cc; path = src/core/tsi/alts/handshaker/alts_tsi_utils.cc; sourceTree = "<group>"; };
+		3A63ED631A787E110676FFBE9729568E /* FIRFirestore.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FIRFirestore.mm; path = Firestore/Source/API/FIRFirestore.mm; sourceTree = "<group>"; };
 		3A6BB107C2572E678046B153523C1032 /* FIRStorageGetMetadataTask.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStorageGetMetadataTask.m; path = FirebaseStorage/Sources/FIRStorageGetMetadataTask.m; sourceTree = "<group>"; };
 		3A7921F9A039E17941FECB3B447E1BCD /* transport_security_common.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = transport_security_common.upb.h; path = "src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h"; sourceTree = "<group>"; };
 		3A879599A20FB16B1A04A2AD4981D444 /* channel_interface.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channel_interface.h; path = include/grpcpp/impl/codegen/channel_interface.h; sourceTree = "<group>"; };
-		3AADD7644640C9300019EB80D08420F6 /* env_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = env_posix.cc; path = util/env_posix.cc; sourceTree = "<group>"; };
+		3AADD7644640C9300019EB80D08420F6 /* env_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = env_posix.cc; path = util/env_posix.cc; sourceTree = "<group>"; };
 		3AB5A466C961B094F7A30C3DCB8C8325 /* no_destructor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = no_destructor.h; path = util/no_destructor.h; sourceTree = "<group>"; };
 		3AD6CE0E4ED758083EBE21A10E60D568 /* FIRMultiFactorInfo.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRMultiFactorInfo.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRMultiFactorInfo.h; sourceTree = "<group>"; };
-		3ADA8884328326755694D99E16EEF4A0 /* iomgr_internal.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = iomgr_internal.cc; path = src/core/lib/iomgr/iomgr_internal.cc; sourceTree = "<group>"; };
-		3B3AA5B99D37E7F90BC3DED2768274AA /* x509_cmp.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509_cmp.c; path = src/crypto/x509/x509_cmp.c; sourceTree = "<group>"; };
-		3B3F16EC5F968CF0D16896EF59E6AD33 /* firestore_client.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = firestore_client.cc; path = Firestore/core/src/core/firestore_client.cc; sourceTree = "<group>"; };
+		3ADA8884328326755694D99E16EEF4A0 /* iomgr_internal.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = iomgr_internal.cc; path = src/core/lib/iomgr/iomgr_internal.cc; sourceTree = "<group>"; };
+		3B3AA5B99D37E7F90BC3DED2768274AA /* x509_cmp.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509_cmp.c; path = src/crypto/x509/x509_cmp.c; sourceTree = "<group>"; };
+		3B3F16EC5F968CF0D16896EF59E6AD33 /* firestore_client.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = firestore_client.cc; path = Firestore/core/src/core/firestore_client.cc; sourceTree = "<group>"; };
 		3B4E18707AB2849117F6B1DD52FEE225 /* FirebaseStorage-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "FirebaseStorage-dummy.m"; sourceTree = "<group>"; };
-		3B57658F236B76698567970B1391DB66 /* v3_prn.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_prn.c; path = src/crypto/x509v3/v3_prn.c; sourceTree = "<group>"; };
+		3B57658F236B76698567970B1391DB66 /* v3_prn.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_prn.c; path = src/crypto/x509v3/v3_prn.c; sourceTree = "<group>"; };
 		3B5861FD8657510BC012863B6EACF04D /* sync_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sync_windows.h; path = include/grpc/support/sync_windows.h; sourceTree = "<group>"; };
 		3B58E173091E14344529A99A7E62BC4F /* pkcs8.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pkcs8.h; path = src/include/openssl/pkcs8.h; sourceTree = "<group>"; };
 		3B5D3B71A8EC97D74742C6EE7D61608D /* write_batch.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = write_batch.h; path = include/leveldb/write_batch.h; sourceTree = "<group>"; };
-		3B7C2FE39DD9B6FFD151B6E89FCB4EFB /* status.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = status.upb.c; path = "src/core/ext/upb-generated/google/rpc/status.upb.c"; sourceTree = "<group>"; };
+		3B7C2FE39DD9B6FFD151B6E89FCB4EFB /* status.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = status.upb.c; path = "src/core/ext/upb-generated/google/rpc/status.upb.c"; sourceTree = "<group>"; };
 		3B93366D1081D942DF2C1977965FCC4C /* abseil-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "abseil-Info.plist"; sourceTree = "<group>"; };
 		3BB1ACE7C3959EC002CD1B9F9DBF23DD /* Pods-FaceRecogAttendance-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-FaceRecogAttendance-umbrella.h"; sourceTree = "<group>"; };
 		3BB6FE82F3EB2CE486A32A3C0DE65EDB /* FIRAuthBackend+MultiFactor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FIRAuthBackend+MultiFactor.h"; path = "FirebaseAuth/Sources/Backend/FIRAuthBackend+MultiFactor.h"; sourceTree = "<group>"; };
-		3BCB88439FA28CE7F86EB40F913E65C4 /* decode.c */ = {isa = PBXFileReference; includeInIndex = 1; name = decode.c; path = third_party/upb/upb/decode.c; sourceTree = "<group>"; };
+		3BCB88439FA28CE7F86EB40F913E65C4 /* decode.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = decode.c; path = third_party/upb/upb/decode.c; sourceTree = "<group>"; };
 		3BD64D19D6627193B489C9A791ED5FED /* Pods-FaceRecogAttendance-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-FaceRecogAttendance-acknowledgements.markdown"; sourceTree = "<group>"; };
 		3BF796B164EA293F42C6098E2F436F05 /* atomic.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = atomic.h; path = src/core/lib/gprpp/atomic.h; sourceTree = "<group>"; };
 		3C01A97E392E830AA8C0B76C8EB1E733 /* health_check_service_server_builder_option.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = health_check_service_server_builder_option.h; path = include/grpcpp/ext/health_check_service_server_builder_option.h; sourceTree = "<group>"; };
 		3C475FA9B0FC1C806D2477FB9360ACB2 /* subchannel_pool_interface.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = subchannel_pool_interface.h; path = src/core/ext/filters/client_channel/subchannel_pool_interface.h; sourceTree = "<group>"; };
-		3C512A624C913EB5D1D1626BE91AAF41 /* socket.c */ = {isa = PBXFileReference; includeInIndex = 1; name = socket.c; path = src/crypto/bio/socket.c; sourceTree = "<group>"; };
+		3C512A624C913EB5D1D1626BE91AAF41 /* socket.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = socket.c; path = src/crypto/bio/socket.c; sourceTree = "<group>"; };
 		3C6EFE487763D8F3375342E68E0978BF /* GDTCORTargets.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORTargets.h; path = GoogleDataTransport/GDTCORLibrary/Public/GoogleDataTransport/GDTCORTargets.h; sourceTree = "<group>"; };
 		3C6F1C7FE58BEAACAA64D17313A68A8F /* ascii.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ascii.h; path = absl/strings/ascii.h; sourceTree = "<group>"; };
-		3C75A5D76A7D7398B3E8278079118D72 /* workaround_cronet_compression_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = workaround_cronet_compression_filter.cc; path = src/core/ext/filters/workarounds/workaround_cronet_compression_filter.cc; sourceTree = "<group>"; };
-		3C7FB809467E60F7961DB6B283E58114 /* order_by.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = order_by.cc; path = Firestore/core/src/core/order_by.cc; sourceTree = "<group>"; };
-		3C95434436D70C9F5C0AF50D57D47909 /* cfstream_handle.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = cfstream_handle.cc; path = src/core/lib/iomgr/cfstream_handle.cc; sourceTree = "<group>"; };
+		3C75A5D76A7D7398B3E8278079118D72 /* workaround_cronet_compression_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = workaround_cronet_compression_filter.cc; path = src/core/ext/filters/workarounds/workaround_cronet_compression_filter.cc; sourceTree = "<group>"; };
+		3C7FB809467E60F7961DB6B283E58114 /* order_by.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = order_by.cc; path = Firestore/core/src/core/order_by.cc; sourceTree = "<group>"; };
+		3C95434436D70C9F5C0AF50D57D47909 /* cfstream_handle.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = cfstream_handle.cc; path = src/core/lib/iomgr/cfstream_handle.cc; sourceTree = "<group>"; };
 		3CA05BDF4B0282D69AD9508511E56389 /* thread_identity.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = thread_identity.h; path = absl/base/internal/thread_identity.h; sourceTree = "<group>"; };
 		3CAF016D93A56C9428C8FACD55EA2746 /* escaping.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = escaping.h; path = absl/strings/escaping.h; sourceTree = "<group>"; };
-		3CD0AB7D66519799F5563F785A1F2A82 /* client_auth_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = client_auth_filter.cc; path = src/core/lib/security/transport/client_auth_filter.cc; sourceTree = "<group>"; };
+		3CD0AB7D66519799F5563F785A1F2A82 /* client_auth_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = client_auth_filter.cc; path = src/core/lib/security/transport/client_auth_filter.cc; sourceTree = "<group>"; };
 		3CE7AF68E8ADAC33852CAAC75ADC01E7 /* table_builder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = table_builder.h; path = include/leveldb/table_builder.h; sourceTree = "<group>"; };
 		3D219FF562761DC9A4942D9E072B0BEF /* lb_policy_registry.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = lb_policy_registry.h; path = src/core/ext/filters/client_channel/lb_policy_registry.h; sourceTree = "<group>"; };
 		3D4597D2408981FD3B598364292F3625 /* FIRAuth_Internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuth_Internal.h; path = FirebaseAuth/Sources/Auth/FIRAuth_Internal.h; sourceTree = "<group>"; };
@@ -9121,129 +9122,129 @@
 		3DAEF68028F4EDE856D0E0F0AD531B8F /* alts_crypter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_crypter.h; path = src/core/tsi/alts/frame_protector/alts_crypter.h; sourceTree = "<group>"; };
 		3DD85DE23E097443339A72C8731BCF5D /* tcp_client_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tcp_client_posix.h; path = src/core/lib/iomgr/tcp_client_posix.h; sourceTree = "<group>"; };
 		3DEDCB0C4532EDF8D15555CC042274FA /* GULNetwork.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULNetwork.h; path = GoogleUtilities/Network/Public/GoogleUtilities/GULNetwork.h; sourceTree = "<group>"; };
-		3DF3265CCB9370D89D9C0F3B17ADCA15 /* api_trace.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = api_trace.cc; path = src/core/lib/surface/api_trace.cc; sourceTree = "<group>"; };
-		3DF48D5842DB32F111697F81864565C1 /* no_document.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = no_document.cc; path = Firestore/core/src/model/no_document.cc; sourceTree = "<group>"; };
+		3DF3265CCB9370D89D9C0F3B17ADCA15 /* api_trace.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = api_trace.cc; path = src/core/lib/surface/api_trace.cc; sourceTree = "<group>"; };
+		3DF48D5842DB32F111697F81864565C1 /* no_document.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = no_document.cc; path = Firestore/core/src/model/no_document.cc; sourceTree = "<group>"; };
 		3E0BB36DF69357250087EAA432D49BA8 /* FIRResetPasswordResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRResetPasswordResponse.m; path = FirebaseAuth/Sources/Backend/RPC/FIRResetPasswordResponse.m; sourceTree = "<group>"; };
 		3E1864B91C72A7029FEEBBB02B80A5A7 /* uri_parser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = uri_parser.h; path = src/core/lib/uri/uri_parser.h; sourceTree = "<group>"; };
-		3E2FB7C5C5B0E2C9EF2F990D630B3C0C /* scoped_route.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = scoped_route.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/scoped_route.upb.c"; sourceTree = "<group>"; };
+		3E2FB7C5C5B0E2C9EF2F990D630B3C0C /* scoped_route.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = scoped_route.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/scoped_route.upb.c"; sourceTree = "<group>"; };
 		3E387EFA44EEFD710D7308576E2D833D /* ssl_security_connector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl_security_connector.h; path = src/core/lib/security/security_connector/ssl/ssl_security_connector.h; sourceTree = "<group>"; };
 		3E3B774B9E601DEFF89A423E38E9CDF5 /* opensslconf.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = opensslconf.h; path = src/include/openssl/opensslconf.h; sourceTree = "<group>"; };
 		3E838BAAA1F768482FA5FDE270547237 /* alts_handshaker_client.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_handshaker_client.h; path = src/core/tsi/alts/handshaker/alts_handshaker_client.h; sourceTree = "<group>"; };
 		3E958508862D6F36B0FD574C48FA0673 /* two_level_iterator.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = two_level_iterator.h; path = table/two_level_iterator.h; sourceTree = "<group>"; };
 		3EA5C05E44B1582EB3C085FDE67791A0 /* port_stdcxx.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = port_stdcxx.h; path = port/port_stdcxx.h; sourceTree = "<group>"; };
 		3EB622F5BC6352F405EE2F3C8710164A /* FIRMultiFactorAssertion.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRMultiFactorAssertion.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRMultiFactorAssertion.h; sourceTree = "<group>"; };
-		3EDFF15506F5E99498559D70834D2A77 /* i2d_pr.c */ = {isa = PBXFileReference; includeInIndex = 1; name = i2d_pr.c; path = src/crypto/x509/i2d_pr.c; sourceTree = "<group>"; };
-		3EFA1F10404E2380441D39B2B9C02F37 /* tls_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tls_credentials.cc; path = src/core/lib/security/credentials/tls/tls_credentials.cc; sourceTree = "<group>"; };
+		3EDFF15506F5E99498559D70834D2A77 /* i2d_pr.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = i2d_pr.c; path = src/crypto/x509/i2d_pr.c; sourceTree = "<group>"; };
+		3EFA1F10404E2380441D39B2B9C02F37 /* tls_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tls_credentials.cc; path = src/core/lib/security/credentials/tls/tls_credentials.cc; sourceTree = "<group>"; };
 		3F011656ACB42C6385441579DF9F12F9 /* version_edit.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = version_edit.h; path = db/version_edit.h; sourceTree = "<group>"; };
-		3F232E40C521446DE98F555853A920BE /* call_log_batch.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = call_log_batch.cc; path = src/core/lib/surface/call_log_batch.cc; sourceTree = "<group>"; };
+		3F232E40C521446DE98F555853A920BE /* call_log_batch.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = call_log_batch.cc; path = src/core/lib/surface/call_log_batch.cc; sourceTree = "<group>"; };
 		3F5AF2AFC42A0B95AE192470378EC62A /* tls1.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tls1.h; path = src/include/openssl/tls1.h; sourceTree = "<group>"; };
 		3F6311E80AF210E62FE00E8992B5FFC2 /* is_boringssl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = is_boringssl.h; path = src/include/openssl/is_boringssl.h; sourceTree = "<group>"; };
-		3F8422C92C06A5D0C2A989E2995244EE /* byte_buffer_reader.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = byte_buffer_reader.cc; path = src/core/lib/surface/byte_buffer_reader.cc; sourceTree = "<group>"; };
-		3F913F5B0717C70D71D76F2E553F36FF /* resource_path.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = resource_path.cc; path = Firestore/core/src/model/resource_path.cc; sourceTree = "<group>"; };
+		3F8422C92C06A5D0C2A989E2995244EE /* byte_buffer_reader.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = byte_buffer_reader.cc; path = src/core/lib/surface/byte_buffer_reader.cc; sourceTree = "<group>"; };
+		3F913F5B0717C70D71D76F2E553F36FF /* resource_path.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = resource_path.cc; path = Firestore/core/src/model/resource_path.cc; sourceTree = "<group>"; };
 		3F973E21D42027ED98430C76246BC94B /* port.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = port.h; path = port/port.h; sourceTree = "<group>"; };
 		3FB6880C44DC6779225240E0BA6C8D67 /* service_type.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = service_type.h; path = include/grpcpp/impl/codegen/service_type.h; sourceTree = "<group>"; };
-		3FBCCE566439BD84603F48B9C456E6B0 /* tasn_enc.c */ = {isa = PBXFileReference; includeInIndex = 1; name = tasn_enc.c; path = src/crypto/asn1/tasn_enc.c; sourceTree = "<group>"; };
+		3FBCCE566439BD84603F48B9C456E6B0 /* tasn_enc.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = tasn_enc.c; path = src/crypto/asn1/tasn_enc.c; sourceTree = "<group>"; };
 		3FC0ECC4D57E62489D8367AC2AB45F81 /* FIRLogger.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRLogger.h; path = FirebaseCore/Sources/Private/FIRLogger.h; sourceTree = "<group>"; };
-		3FC38D0068F15A9B1AB751FA95F4C781 /* percent_encoding.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = percent_encoding.cc; path = src/core/lib/slice/percent_encoding.cc; sourceTree = "<group>"; };
+		3FC38D0068F15A9B1AB751FA95F4C781 /* percent_encoding.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = percent_encoding.cc; path = src/core/lib/slice/percent_encoding.cc; sourceTree = "<group>"; };
 		3FC7600126681BB1862D26466CDD80A9 /* http_server_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = http_server_filter.h; path = src/core/ext/filters/http/server/http_server_filter.h; sourceTree = "<group>"; };
-		3FEE080932CAB144BAA5F976E9AC1D34 /* tls13_enc.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tls13_enc.cc; path = src/ssl/tls13_enc.cc; sourceTree = "<group>"; };
-		400253D765C1D0BAF1727151805E60AA /* dbformat.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = dbformat.cc; path = db/dbformat.cc; sourceTree = "<group>"; };
+		3FEE080932CAB144BAA5F976E9AC1D34 /* tls13_enc.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tls13_enc.cc; path = src/ssl/tls13_enc.cc; sourceTree = "<group>"; };
+		400253D765C1D0BAF1727151805E60AA /* dbformat.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = dbformat.cc; path = db/dbformat.cc; sourceTree = "<group>"; };
 		4006049B7A3913232F56BF31D4C578B5 /* json_util.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = json_util.h; path = src/core/lib/security/util/json_util.h; sourceTree = "<group>"; };
 		4008BAFB07395469B56343C9376A4D21 /* FBLPromise+Any.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "FBLPromise+Any.m"; path = "Sources/FBLPromises/FBLPromise+Any.m"; sourceTree = "<group>"; };
-		401B65B6865D201A36B08449D64A3F0E /* threadpool.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = threadpool.cc; path = src/core/lib/iomgr/executor/threadpool.cc; sourceTree = "<group>"; };
+		401B65B6865D201A36B08449D64A3F0E /* threadpool.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = threadpool.cc; path = src/core/lib/iomgr/executor/threadpool.cc; sourceTree = "<group>"; };
 		403E52087A7B3465CDBA655472D36E44 /* alts_tsi_handshaker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_tsi_handshaker.h; path = src/core/tsi/alts/handshaker/alts_tsi_handshaker.h; sourceTree = "<group>"; };
-		4045643EB01139C83B837A5C6CC5DE71 /* grpc_util.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_util.cc; path = Firestore/core/src/remote/grpc_util.cc; sourceTree = "<group>"; };
-		40461C7922510153208F38C401AFD2BD /* bio_mem.c */ = {isa = PBXFileReference; includeInIndex = 1; name = bio_mem.c; path = src/crypto/bio/bio_mem.c; sourceTree = "<group>"; };
+		4045643EB01139C83B837A5C6CC5DE71 /* grpc_util.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_util.cc; path = Firestore/core/src/remote/grpc_util.cc; sourceTree = "<group>"; };
+		40461C7922510153208F38C401AFD2BD /* bio_mem.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = bio_mem.c; path = src/crypto/bio/bio_mem.c; sourceTree = "<group>"; };
 		4053C937AEBB88C3C0C6C0BB4E6A65B3 /* GULSecureCoding.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULSecureCoding.h; path = GoogleUtilities/Environment/Public/GoogleUtilities/GULSecureCoding.h; sourceTree = "<group>"; };
 		4074067D1EC269E2FD91B2B3E0647EE0 /* handshaker.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = handshaker.upb.h; path = "src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h"; sourceTree = "<group>"; };
 		40A0E4C343B3475621B75F2D508B4A5F /* transport.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = transport.h; path = src/core/lib/transport/transport.h; sourceTree = "<group>"; };
 		40A9CE229FC94EC76A70E356CBA1D247 /* ev_poll_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ev_poll_posix.h; path = src/core/lib/iomgr/ev_poll_posix.h; sourceTree = "<group>"; };
 		40C9D7F26D23785959FA135D9831C69E /* global_config_custom.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = global_config_custom.h; path = src/core/lib/gprpp/global_config_custom.h; sourceTree = "<group>"; };
-		40D9C070901B2268CB49D103E48A79B9 /* felem.c */ = {isa = PBXFileReference; includeInIndex = 1; name = felem.c; path = src/crypto/fipsmodule/ec/felem.c; sourceTree = "<group>"; };
+		40D9C070901B2268CB49D103E48A79B9 /* felem.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = felem.c; path = src/crypto/fipsmodule/ec/felem.c; sourceTree = "<group>"; };
 		40E09199EC2A58BA0A47DAC483515243 /* FIRStorageListTask.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageListTask.h; path = FirebaseStorage/Sources/FIRStorageListTask.h; sourceTree = "<group>"; };
 		41064D0B0920A8339355CF598972C878 /* alts_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_credentials.h; path = src/core/lib/security/credentials/alts/alts_credentials.h; sourceTree = "<group>"; };
-		412D285621BE83E2BAA8DEE8EA6DA949 /* channelz.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = channelz.cc; path = src/core/lib/channel/channelz.cc; sourceTree = "<group>"; };
-		4144001B5CC309FA624179DC51C2F85D /* sync_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = sync_windows.cc; path = src/core/lib/gpr/sync_windows.cc; sourceTree = "<group>"; };
-		415E9D20500266D1924A091429E908BB /* thread_identity.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = thread_identity.cc; path = absl/base/internal/thread_identity.cc; sourceTree = "<group>"; };
+		412D285621BE83E2BAA8DEE8EA6DA949 /* channelz.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = channelz.cc; path = src/core/lib/channel/channelz.cc; sourceTree = "<group>"; };
+		4144001B5CC309FA624179DC51C2F85D /* sync_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = sync_windows.cc; path = src/core/lib/gpr/sync_windows.cc; sourceTree = "<group>"; };
+		415E9D20500266D1924A091429E908BB /* thread_identity.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = thread_identity.cc; path = absl/base/internal/thread_identity.cc; sourceTree = "<group>"; };
 		416E33BD331702109DA70EF21A3942BB /* FIRStorageUtils.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStorageUtils.m; path = FirebaseStorage/Sources/FIRStorageUtils.m; sourceTree = "<group>"; };
 		41A32970F39250F6F3F0D130EDC750C8 /* lrs.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = lrs.upb.h; path = "src/core/ext/upb-generated/envoy/service/load_stats/v2/lrs.upb.h"; sourceTree = "<group>"; };
 		41A35B298F67F1C7B47CF310866F43E3 /* GULURLSessionDataResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GULURLSessionDataResponse.m; path = GoogleUtilities/Environment/URLSessionPromiseWrapper/GULURLSessionDataResponse.m; sourceTree = "<group>"; };
 		41C4E889A0052D586EF4216E1FBE4712 /* cfstream_handle.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = cfstream_handle.h; path = src/core/lib/iomgr/cfstream_handle.h; sourceTree = "<group>"; };
-		41DA7A4836ACC510CBD91AF5BE695CF8 /* http.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = http.upb.c; path = "src/core/ext/upb-generated/envoy/type/http.upb.c"; sourceTree = "<group>"; };
-		41F062858BA272ACCCB0C937FA89741F /* pkcs7.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pkcs7.c; path = src/crypto/pkcs7/pkcs7.c; sourceTree = "<group>"; };
+		41DA7A4836ACC510CBD91AF5BE695CF8 /* http.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = http.upb.c; path = "src/core/ext/upb-generated/envoy/type/http.upb.c"; sourceTree = "<group>"; };
+		41F062858BA272ACCCB0C937FA89741F /* pkcs7.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pkcs7.c; path = src/crypto/pkcs7/pkcs7.c; sourceTree = "<group>"; };
 		41FD4EE40DA2617C87E1294BF7B52EF5 /* FIRAuthNotificationManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthNotificationManager.h; path = FirebaseAuth/Sources/SystemService/FIRAuthNotificationManager.h; sourceTree = "<group>"; };
 		420E48C5A879C4BE6FC1813F51B80BB4 /* stats.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = stats.h; path = src/core/lib/debug/stats.h; sourceTree = "<group>"; };
 		421879C26A146B866667EC6F9BF7167D /* murmur_hash.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = murmur_hash.h; path = src/core/lib/gpr/murmur_hash.h; sourceTree = "<group>"; };
-		4230A8FFB8967A672CAF1E1E0E6C2135 /* iomgr_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = iomgr_posix.cc; path = src/core/lib/iomgr/iomgr_posix.cc; sourceTree = "<group>"; };
+		4230A8FFB8967A672CAF1E1E0E6C2135 /* iomgr_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = iomgr_posix.cc; path = src/core/lib/iomgr/iomgr_posix.cc; sourceTree = "<group>"; };
 		423A780B5317D76B563504EA3DA6EC81 /* alts_grpc_record_protocol.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_grpc_record_protocol.h; path = src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol.h; sourceTree = "<group>"; };
 		4269D5E41F882DA8584CEBB36F3CF81A /* frame_rst_stream.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = frame_rst_stream.h; path = src/core/ext/transport/chttp2/transport/frame_rst_stream.h; sourceTree = "<group>"; };
-		4274F0ED1CA0C4A8DC7D5516BCA0748B /* log_severity.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = log_severity.cc; path = absl/base/log_severity.cc; sourceTree = "<group>"; };
+		4274F0ED1CA0C4A8DC7D5516BCA0748B /* log_severity.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = log_severity.cc; path = absl/base/log_severity.cc; sourceTree = "<group>"; };
 		427A8F13808FF9B51C47176EE181F34A /* pb_encode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = pb_encode.h; sourceTree = "<group>"; };
 		428A0B8455B8E531B001578536DADB11 /* decode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = decode.h; path = third_party/upb/upb/decode.h; sourceTree = "<group>"; };
-		428D76B0BC7500ED01B6E617AC0120D8 /* cfb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = cfb.c; path = src/crypto/fipsmodule/modes/cfb.c; sourceTree = "<group>"; };
+		428D76B0BC7500ED01B6E617AC0120D8 /* cfb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = cfb.c; path = src/crypto/fipsmodule/modes/cfb.c; sourceTree = "<group>"; };
 		42A7B141A6652AE916E06B41D362390E /* memtable.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = memtable.h; path = db/memtable.h; sourceTree = "<group>"; };
 		42AC9C60935B51332D4F5864177FFB5F /* backoff.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = backoff.h; path = src/core/lib/backoff/backoff.h; sourceTree = "<group>"; };
 		42E28FA97EE7FC09D9C86013D6D7C281 /* config_source.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = config_source.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.h"; sourceTree = "<group>"; };
 		42E6BFFAE9B5EABB8FA679153CCEBAD1 /* FIRCoreDiagnostics.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRCoreDiagnostics.m; path = Firebase/CoreDiagnostics/FIRCDLibrary/FIRCoreDiagnostics.m; sourceTree = "<group>"; };
 		42EB1BC5F7F76DDCE269EC2415CD1436 /* route.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = route.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/route.upb.h"; sourceTree = "<group>"; };
-		42F7D9028E7D4CA932FFEF138F29CABC /* x_sig.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x_sig.c; path = src/crypto/x509/x_sig.c; sourceTree = "<group>"; };
+		42F7D9028E7D4CA932FFEF138F29CABC /* x_sig.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x_sig.c; path = src/crypto/x509/x_sig.c; sourceTree = "<group>"; };
 		4329554FD962FD40EEE6353B4774E4E8 /* channel_init.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channel_init.h; path = src/core/lib/surface/channel_init.h; sourceTree = "<group>"; };
-		43490E30E8F05FB38875DE9D07C457AD /* memory_lru_reference_delegate.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = memory_lru_reference_delegate.cc; path = Firestore/core/src/local/memory_lru_reference_delegate.cc; sourceTree = "<group>"; };
+		43490E30E8F05FB38875DE9D07C457AD /* memory_lru_reference_delegate.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = memory_lru_reference_delegate.cc; path = Firestore/core/src/local/memory_lru_reference_delegate.cc; sourceTree = "<group>"; };
 		4352CCB345E85AE9E696B6B8F5047C5A /* GoogleDataTransport.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = GoogleDataTransport.debug.xcconfig; sourceTree = "<group>"; };
 		4358A6BA4488780298709C59E3385496 /* sync_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sync_posix.h; path = include/grpc/support/sync_posix.h; sourceTree = "<group>"; };
 		437C33D3072274D9BB727EACB90CF47C /* status.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = status.h; path = include/leveldb/status.h; sourceTree = "<group>"; };
-		43B1E4CD7B30B9FD278100133C2AC788 /* FirebaseAuth.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = FirebaseAuth.framework; path = FirebaseAuth.framework; sourceTree = BUILT_PRODUCTS_DIR; };
-		43E18F506791D898501A5004C0327625 /* ev_poll_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ev_poll_posix.cc; path = src/core/lib/iomgr/ev_poll_posix.cc; sourceTree = "<group>"; };
+		43B1E4CD7B30B9FD278100133C2AC788 /* FirebaseAuth.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FirebaseAuth.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		43E18F506791D898501A5004C0327625 /* ev_poll_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ev_poll_posix.cc; path = src/core/lib/iomgr/ev_poll_posix.cc; sourceTree = "<group>"; };
 		43E36A19774F8B2922F97C80D4D95E80 /* FIRAuthWebUtils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthWebUtils.h; path = FirebaseAuth/Sources/Utilities/FIRAuthWebUtils.h; sourceTree = "<group>"; };
 		43E384585FF837731063816D29CFFBFE /* semantic_version.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = semantic_version.upb.h; path = "src/core/ext/upb-generated/envoy/type/semantic_version.upb.h"; sourceTree = "<group>"; };
 		43FA4BAFAFA49804BB6613049CE518AA /* dynamic_annotations.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = dynamic_annotations.h; path = src/core/lib/iomgr/dynamic_annotations.h; sourceTree = "<group>"; };
 		4409E38CE5A8471636F6262E69F899E6 /* health_check_service_interface_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = health_check_service_interface_impl.h; path = include/grpcpp/health_check_service_interface_impl.h; sourceTree = "<group>"; };
-		4414A52077569540B1396677CD73B8E2 /* memtable.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = memtable.cc; path = db/memtable.cc; sourceTree = "<group>"; };
+		4414A52077569540B1396677CD73B8E2 /* memtable.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = memtable.cc; path = db/memtable.cc; sourceTree = "<group>"; };
 		445A899A7D7C2AA0784E4A579A705E72 /* FIROptions.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIROptions.h; path = FirebaseCore/Sources/Public/FirebaseCore/FIROptions.h; sourceTree = "<group>"; };
 		44835EAB7C38601EEDDB5426690DC095 /* server_context.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_context.h; path = include/grpcpp/impl/codegen/server_context.h; sourceTree = "<group>"; };
-		448AD7A2088711AA6819CC7E119C9B82 /* user_data.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = user_data.cc; path = Firestore/core/src/core/user_data.cc; sourceTree = "<group>"; };
+		448AD7A2088711AA6819CC7E119C9B82 /* user_data.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = user_data.cc; path = Firestore/core/src/core/user_data.cc; sourceTree = "<group>"; };
 		44ABCB373451D0A1636B30B58F4702E7 /* FIRVerifyPasswordRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRVerifyPasswordRequest.m; path = FirebaseAuth/Sources/Backend/RPC/FIRVerifyPasswordRequest.m; sourceTree = "<group>"; };
 		44ACD630A0C2D0E829FE419A75EC53CB /* GDTCORTransformer_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORTransformer_Private.h; path = GoogleDataTransport/GDTCORLibrary/Private/GDTCORTransformer_Private.h; sourceTree = "<group>"; };
-		44B21BE9C5EA80EBFEE25D7729A2564A /* resource_quota_cc.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = resource_quota_cc.cc; path = src/cpp/common/resource_quota_cc.cc; sourceTree = "<group>"; };
+		44B21BE9C5EA80EBFEE25D7729A2564A /* resource_quota_cc.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = resource_quota_cc.cc; path = src/cpp/common/resource_quota_cc.cc; sourceTree = "<group>"; };
 		44B87A09A140F8453165B8FED839C576 /* tcp_client.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tcp_client.h; path = src/core/lib/iomgr/tcp_client.h; sourceTree = "<group>"; };
 		44BDA63A9C472895F59E0A968A3D5D9F /* FIRSecureTokenResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRSecureTokenResponse.m; path = FirebaseAuth/Sources/Backend/RPC/FIRSecureTokenResponse.m; sourceTree = "<group>"; };
 		44C8894E54824EBDF7363A2EA611EA2E /* ref_counted.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ref_counted.h; path = src/core/lib/gprpp/ref_counted.h; sourceTree = "<group>"; };
 		4558F1298856854BAB8D18BE5B51D660 /* client_interceptor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_interceptor.h; path = include/grpcpp/impl/codegen/client_interceptor.h; sourceTree = "<group>"; };
-		4560AEE8A494A083A84CA4C5DB67C9D9 /* alts_unseal_privacy_integrity_crypter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alts_unseal_privacy_integrity_crypter.cc; path = src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc; sourceTree = "<group>"; };
-		4578C1D1B0B3B3B962BE43653401B3EF /* secure_create_auth_context.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = secure_create_auth_context.cc; path = src/cpp/common/secure_create_auth_context.cc; sourceTree = "<group>"; };
-		4578C29134E5CAAB72D0CC7E0455A187 /* socket_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = socket_windows.cc; path = src/core/lib/iomgr/socket_windows.cc; sourceTree = "<group>"; };
+		4560AEE8A494A083A84CA4C5DB67C9D9 /* alts_unseal_privacy_integrity_crypter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alts_unseal_privacy_integrity_crypter.cc; path = src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc; sourceTree = "<group>"; };
+		4578C1D1B0B3B3B962BE43653401B3EF /* secure_create_auth_context.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = secure_create_auth_context.cc; path = src/cpp/common/secure_create_auth_context.cc; sourceTree = "<group>"; };
+		4578C29134E5CAAB72D0CC7E0455A187 /* socket_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = socket_windows.cc; path = src/core/lib/iomgr/socket_windows.cc; sourceTree = "<group>"; };
 		4595DDC6B95CEC10D5CEFB76C8138519 /* sensitive.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sensitive.upb.h; path = "src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h"; sourceTree = "<group>"; };
 		459BCAF0220A8073F11AC04E3ADE8417 /* alts_frame_protector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_frame_protector.h; path = src/core/tsi/alts/frame_protector/alts_frame_protector.h; sourceTree = "<group>"; };
-		45BDEE3A755297763F8A278A5C47630A /* encode.c */ = {isa = PBXFileReference; includeInIndex = 1; name = encode.c; path = third_party/upb/upb/encode.c; sourceTree = "<group>"; };
+		45BDEE3A755297763F8A278A5C47630A /* encode.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = encode.c; path = third_party/upb/upb/encode.c; sourceTree = "<group>"; };
 		45CB8BD4BCEDDDB8F08139962B5EC080 /* GDTCORTransformer.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCORTransformer.m; path = GoogleDataTransport/GDTCORLibrary/GDTCORTransformer.m; sourceTree = "<group>"; };
 		45CDBD050A5A683C67A1DE602EDA90DD /* FIRAuthProtoMFAEnrollment.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthProtoMFAEnrollment.h; path = FirebaseAuth/Sources/Backend/RPC/Proto/FIRAuthProtoMFAEnrollment.h; sourceTree = "<group>"; };
-		45D0C577DD40EA3771FD6561FA7F01BA /* endpoint_pair_uv.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = endpoint_pair_uv.cc; path = src/core/lib/iomgr/endpoint_pair_uv.cc; sourceTree = "<group>"; };
-		45DEECF29115E1472261C2AC8B15E7C3 /* p_ed25519_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; name = p_ed25519_asn1.c; path = src/crypto/evp/p_ed25519_asn1.c; sourceTree = "<group>"; };
-		45FA3D36164E0E4C362C9708AE43ED41 /* stream_lists.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = stream_lists.cc; path = src/core/ext/transport/chttp2/transport/stream_lists.cc; sourceTree = "<group>"; };
-		460E979F0B9D9683DADF12CB15060D70 /* table.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = table.cc; path = table/table.cc; sourceTree = "<group>"; };
+		45D0C577DD40EA3771FD6561FA7F01BA /* endpoint_pair_uv.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = endpoint_pair_uv.cc; path = src/core/lib/iomgr/endpoint_pair_uv.cc; sourceTree = "<group>"; };
+		45DEECF29115E1472261C2AC8B15E7C3 /* p_ed25519_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = p_ed25519_asn1.c; path = src/crypto/evp/p_ed25519_asn1.c; sourceTree = "<group>"; };
+		45FA3D36164E0E4C362C9708AE43ED41 /* stream_lists.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = stream_lists.cc; path = src/core/ext/transport/chttp2/transport/stream_lists.cc; sourceTree = "<group>"; };
+		460E979F0B9D9683DADF12CB15060D70 /* table.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = table.cc; path = table/table.cc; sourceTree = "<group>"; };
 		460ED1B1ACFAF5759E990A78B32B02FF /* FIRCoreDiagnosticsConnector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRCoreDiagnosticsConnector.h; path = FirebaseCore/Sources/Private/FIRCoreDiagnosticsConnector.h; sourceTree = "<group>"; };
-		4621F3D7D4F20759F9C0B9B8E2FB6EC3 /* match.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = match.cc; path = absl/strings/match.cc; sourceTree = "<group>"; };
-		464DEB3B86D50B4EBC95FEC6F9F6E33F /* accesslog.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = accesslog.upb.c; path = "src/core/ext/upb-generated/envoy/config/filter/accesslog/v2/accesslog.upb.c"; sourceTree = "<group>"; };
-		4658C60E087CF6CEA59B499EDD678EBC /* tls13_client.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tls13_client.cc; path = src/ssl/tls13_client.cc; sourceTree = "<group>"; };
-		466BB8A18380394CC73D8B18023174A4 /* eds.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = eds.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/eds.upb.c"; sourceTree = "<group>"; };
+		4621F3D7D4F20759F9C0B9B8E2FB6EC3 /* match.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = match.cc; path = absl/strings/match.cc; sourceTree = "<group>"; };
+		464DEB3B86D50B4EBC95FEC6F9F6E33F /* accesslog.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = accesslog.upb.c; path = "src/core/ext/upb-generated/envoy/config/filter/accesslog/v2/accesslog.upb.c"; sourceTree = "<group>"; };
+		4658C60E087CF6CEA59B499EDD678EBC /* tls13_client.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tls13_client.cc; path = src/ssl/tls13_client.cc; sourceTree = "<group>"; };
+		466BB8A18380394CC73D8B18023174A4 /* eds.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = eds.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/eds.upb.c"; sourceTree = "<group>"; };
 		4685D8114C16096E22F2A708EBA32AB7 /* retry_throttle.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = retry_throttle.h; path = src/core/ext/filters/client_channel/retry_throttle.h; sourceTree = "<group>"; };
 		46A19D2B9BDA9C0F1EA6B474B2A77A17 /* incoming_metadata.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = incoming_metadata.h; path = src/core/ext/transport/chttp2/transport/incoming_metadata.h; sourceTree = "<group>"; };
-		46BAEB0D90B3196EA05C41485D076F3E /* server_address.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = server_address.cc; path = src/core/ext/filters/client_channel/server_address.cc; sourceTree = "<group>"; };
+		46BAEB0D90B3196EA05C41485D076F3E /* server_address.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = server_address.cc; path = src/core/ext/filters/client_channel/server_address.cc; sourceTree = "<group>"; };
 		46BB2205405B1BEEEBBC79B587F1111B /* sockaddr_utils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sockaddr_utils.h; path = src/core/lib/iomgr/sockaddr_utils.h; sourceTree = "<group>"; };
 		46D2D7AE2B0897CBC4BC12F9FFE5FE9A /* FIRMultiFactorConstants.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRMultiFactorConstants.m; path = FirebaseAuth/Sources/MultiFactor/FIRMultiFactorConstants.m; sourceTree = "<group>"; };
-		470DCEF93388E143317269785CF9EAFC /* FIRFirestoreSettings.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FIRFirestoreSettings.mm; path = Firestore/Source/API/FIRFirestoreSettings.mm; sourceTree = "<group>"; };
-		471C890A37F2891E8CD5FD54ABD84F52 /* refcount_c11.c */ = {isa = PBXFileReference; includeInIndex = 1; name = refcount_c11.c; path = src/crypto/refcount_c11.c; sourceTree = "<group>"; };
+		470DCEF93388E143317269785CF9EAFC /* FIRFirestoreSettings.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FIRFirestoreSettings.mm; path = Firestore/Source/API/FIRFirestoreSettings.mm; sourceTree = "<group>"; };
+		471C890A37F2891E8CD5FD54ABD84F52 /* refcount_c11.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = refcount_c11.c; path = src/crypto/refcount_c11.c; sourceTree = "<group>"; };
 		472958AA940A9384C74596FBE72B03B2 /* error_cfstream.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = error_cfstream.h; path = src/core/lib/iomgr/error_cfstream.h; sourceTree = "<group>"; };
 		472E7D225EE2992602E89625A8102C75 /* proto_buffer_reader.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = proto_buffer_reader.h; path = include/grpcpp/support/proto_buffer_reader.h; sourceTree = "<group>"; };
-		4734979C7C8ACDCAFDD643C966043289 /* alts_handshaker_client.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alts_handshaker_client.cc; path = src/core/tsi/alts/handshaker/alts_handshaker_client.cc; sourceTree = "<group>"; };
-		4738BE2203CB5B9310EAB528880A24CC /* hexdump.c */ = {isa = PBXFileReference; includeInIndex = 1; name = hexdump.c; path = src/crypto/bio/hexdump.c; sourceTree = "<group>"; };
+		4734979C7C8ACDCAFDD643C966043289 /* alts_handshaker_client.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alts_handshaker_client.cc; path = src/core/tsi/alts/handshaker/alts_handshaker_client.cc; sourceTree = "<group>"; };
+		4738BE2203CB5B9310EAB528880A24CC /* hexdump.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = hexdump.c; path = src/crypto/bio/hexdump.c; sourceTree = "<group>"; };
 		47493239A638EA9E6C91D37316C2ACC2 /* GoogleDataTransport-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "GoogleDataTransport-dummy.m"; sourceTree = "<group>"; };
-		476F4D124DFB4D4BFEE782258F8AE75F /* evp_ctx.c */ = {isa = PBXFileReference; includeInIndex = 1; name = evp_ctx.c; path = src/crypto/evp/evp_ctx.c; sourceTree = "<group>"; };
+		476F4D124DFB4D4BFEE782258F8AE75F /* evp_ctx.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = evp_ctx.c; path = src/crypto/evp/evp_ctx.c; sourceTree = "<group>"; };
 		479B9BD315FC25375C30FEBC8F906A98 /* security_handshaker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = security_handshaker.h; path = src/core/lib/security/transport/security_handshaker.h; sourceTree = "<group>"; };
 		479C01050AAAA022719603427A5EFC07 /* http.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = http.upb.h; path = "src/core/ext/upb-generated/google/api/http.upb.h"; sourceTree = "<group>"; };
 		47A7AE5BC119E2F4493213ECA7E94535 /* FIRDocumentChange.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRDocumentChange.h; path = Firestore/Source/Public/FirebaseFirestore/FIRDocumentChange.h; sourceTree = "<group>"; };
 		47BCD1DC65A7895227AA9A8AE35EB20F /* wakeup_fd_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = wakeup_fd_posix.h; path = src/core/lib/iomgr/wakeup_fd_posix.h; sourceTree = "<group>"; };
-		47BD51184926AB56522F8F520DA99C53 /* socket_mutator.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = socket_mutator.cc; path = src/core/lib/iomgr/socket_mutator.cc; sourceTree = "<group>"; };
+		47BD51184926AB56522F8F520DA99C53 /* socket_mutator.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = socket_mutator.cc; path = src/core/lib/iomgr/socket_mutator.cc; sourceTree = "<group>"; };
 		47E29C112B333254D5D224DAD355AE79 /* byte_buffer_reader.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = byte_buffer_reader.h; path = include/grpc/byte_buffer_reader.h; sourceTree = "<group>"; };
 		4813947328DFA3152C0715A4860B24AA /* endpoint_pair.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = endpoint_pair.h; path = src/core/lib/iomgr/endpoint_pair.h; sourceTree = "<group>"; };
 		4852D742346C79993EF66875B36DD28B /* sync.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sync.h; path = include/grpc/impl/codegen/sync.h; sourceTree = "<group>"; };
@@ -9251,77 +9252,77 @@
 		488949B4FC2F0725FC85A2AEBEDE66AB /* huffsyms.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = huffsyms.h; path = src/core/ext/transport/chttp2/transport/huffsyms.h; sourceTree = "<group>"; };
 		488F7CA9C48F8D0F2172C6C3C9D38829 /* channel_stack_builder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channel_stack_builder.h; path = src/core/lib/channel/channel_stack_builder.h; sourceTree = "<group>"; };
 		48A35B866EB9210D4DD46B684AFE388F /* umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = umbrella.h; path = src/include/openssl/umbrella.h; sourceTree = "<group>"; };
-		48D105F9C418572AF7C03873FE53F297 /* p_x25519.c */ = {isa = PBXFileReference; includeInIndex = 1; name = p_x25519.c; path = src/crypto/evp/p_x25519.c; sourceTree = "<group>"; };
+		48D105F9C418572AF7C03873FE53F297 /* p_x25519.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = p_x25519.c; path = src/crypto/evp/p_x25519.c; sourceTree = "<group>"; };
 		48D9A87D2C8BD587AA661324BCCDB5CE /* ssl_security_connector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl_security_connector.h; path = src/core/lib/security/security_connector/ssl/ssl_security_connector.h; sourceTree = "<group>"; };
 		48E522E09211FFFEA4AA158F694045EC /* ads.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ads.upb.h; path = "src/core/ext/upb-generated/envoy/service/discovery/v2/ads.upb.h"; sourceTree = "<group>"; };
-		48EA72F9BEED9C419CDAC82915761154 /* ssl_cipher.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_cipher.cc; path = src/ssl/ssl_cipher.cc; sourceTree = "<group>"; };
+		48EA72F9BEED9C419CDAC82915761154 /* ssl_cipher.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_cipher.cc; path = src/ssl/ssl_cipher.cc; sourceTree = "<group>"; };
 		48EC00943C490CDC8ADC3E64F09C9B9C /* local_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = local_credentials.h; path = src/core/lib/security/credentials/local/local_credentials.h; sourceTree = "<group>"; };
 		490916BAA4878DDC15E86676E7234919 /* mutexlock.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = mutexlock.h; path = util/mutexlock.h; sourceTree = "<group>"; };
-		494C6EA5F349376B853223FED0F8C09C /* write_batch.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = write_batch.cc; path = Firestore/core/src/api/write_batch.cc; sourceTree = "<group>"; };
-		494E3D62A007BA020950FC651CB286D6 /* string_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = string_posix.cc; path = src/core/lib/gpr/string_posix.cc; sourceTree = "<group>"; };
+		494C6EA5F349376B853223FED0F8C09C /* write_batch.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = write_batch.cc; path = Firestore/core/src/api/write_batch.cc; sourceTree = "<group>"; };
+		494E3D62A007BA020950FC651CB286D6 /* string_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = string_posix.cc; path = src/core/lib/gpr/string_posix.cc; sourceTree = "<group>"; };
 		49A6FBEC9B806B950D9047A882BAA546 /* atm_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = atm_windows.h; path = include/grpc/support/atm_windows.h; sourceTree = "<group>"; };
 		49D4B82D79EFABF0B3E3C31A7FF1A254 /* pollset_set.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pollset_set.h; path = src/core/lib/iomgr/pollset_set.h; sourceTree = "<group>"; };
 		49DDA65199D81BF4BD322AAA25CF3463 /* thread_manager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = thread_manager.h; path = src/cpp/thread_manager/thread_manager.h; sourceTree = "<group>"; };
-		49F17ACB0C53D5441C0AA47A6000F9BF /* completion_queue_cc.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = completion_queue_cc.cc; path = src/cpp/common/completion_queue_cc.cc; sourceTree = "<group>"; };
+		49F17ACB0C53D5441C0AA47A6000F9BF /* completion_queue_cc.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = completion_queue_cc.cc; path = src/cpp/common/completion_queue_cc.cc; sourceTree = "<group>"; };
 		4A0BBA4B41243CE83887840549DFB78A /* FirebaseFirestore.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FirebaseFirestore.release.xcconfig; sourceTree = "<group>"; };
 		4A27A8CEC13262766600A87AA774AF42 /* closure.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = closure.h; path = src/core/lib/iomgr/closure.h; sourceTree = "<group>"; };
-		4A4D3B1ECC0DD2F393ECCEBE17230C8B /* ecdsa.c */ = {isa = PBXFileReference; includeInIndex = 1; name = ecdsa.c; path = src/crypto/fipsmodule/ecdsa/ecdsa.c; sourceTree = "<group>"; };
+		4A4D3B1ECC0DD2F393ECCEBE17230C8B /* ecdsa.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = ecdsa.c; path = src/crypto/fipsmodule/ecdsa/ecdsa.c; sourceTree = "<group>"; };
 		4A68013815635B4055CA413AAF9BEEDA /* absl.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = absl.framework; sourceTree = BUILT_PRODUCTS_DIR; };
-		4A7B6BEA0B9A236C8868CF3CE0AF9C77 /* engine.c */ = {isa = PBXFileReference; includeInIndex = 1; name = engine.c; path = src/crypto/engine/engine.c; sourceTree = "<group>"; };
+		4A7B6BEA0B9A236C8868CF3CE0AF9C77 /* engine.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = engine.c; path = src/crypto/engine/engine.c; sourceTree = "<group>"; };
 		4A9A34681303166E9132617639F5F056 /* string_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = string_windows.h; path = src/core/lib/gpr/string_windows.h; sourceTree = "<group>"; };
-		4AA2257BAAD707635F5E8FCDCC307442 /* bundle_reader.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = bundle_reader.cc; path = Firestore/core/src/bundle/bundle_reader.cc; sourceTree = "<group>"; };
-		4AA3313708C41BE82B13605594EBA478 /* v3_bitst.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_bitst.c; path = src/crypto/x509v3/v3_bitst.c; sourceTree = "<group>"; };
-		4AAA2C536F7552382EC4314713A3449B /* leveldb_key.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = leveldb_key.cc; path = Firestore/core/src/local/leveldb_key.cc; sourceTree = "<group>"; };
+		4AA2257BAAD707635F5E8FCDCC307442 /* bundle_reader.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = bundle_reader.cc; path = Firestore/core/src/bundle/bundle_reader.cc; sourceTree = "<group>"; };
+		4AA3313708C41BE82B13605594EBA478 /* v3_bitst.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_bitst.c; path = src/crypto/x509v3/v3_bitst.c; sourceTree = "<group>"; };
+		4AAA2C536F7552382EC4314713A3449B /* leveldb_key.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = leveldb_key.cc; path = Firestore/core/src/local/leveldb_key.cc; sourceTree = "<group>"; };
 		4AB940DDD893B3BF3836627A4572E375 /* FirebaseCoreDiagnostics.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FirebaseCoreDiagnostics.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		4AD09B0426F2260ADE7A75AD186775FA /* channel_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channel_filter.h; path = src/cpp/common/channel_filter.h; sourceTree = "<group>"; };
-		4AD5D7AEA4D0477E9FA2B4785ED33AF8 /* slice_string_helpers.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = slice_string_helpers.cc; path = src/core/lib/slice/slice_string_helpers.cc; sourceTree = "<group>"; };
-		4AD8C27ABEE1A45410F5C952A85D0755 /* http_connect_handshaker.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = http_connect_handshaker.cc; path = src/core/ext/filters/client_channel/http_connect_handshaker.cc; sourceTree = "<group>"; };
+		4AD5D7AEA4D0477E9FA2B4785ED33AF8 /* slice_string_helpers.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = slice_string_helpers.cc; path = src/core/lib/slice/slice_string_helpers.cc; sourceTree = "<group>"; };
+		4AD8C27ABEE1A45410F5C952A85D0755 /* http_connect_handshaker.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = http_connect_handshaker.cc; path = src/core/ext/filters/client_channel/http_connect_handshaker.cc; sourceTree = "<group>"; };
 		4AE84B4C06D2C9095E811B58E9DDE05F /* thread_annotations.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = thread_annotations.h; path = port/thread_annotations.h; sourceTree = "<group>"; };
 		4AFEE1B00CB03783F4625B4F55E6649B /* errno_saver.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = errno_saver.h; path = absl/base/internal/errno_saver.h; sourceTree = "<group>"; };
 		4B02FDD78ADA288B60F9C7661FB11F75 /* dynamic_annotations.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = dynamic_annotations.h; path = src/core/lib/iomgr/dynamic_annotations.h; sourceTree = "<group>"; };
 		4B0B320F6145EBB52C11FE0B16F0D73B /* workaround_utils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = workaround_utils.h; path = src/core/ext/filters/workarounds/workaround_utils.h; sourceTree = "<group>"; };
-		4B12554C5A175808135EB650A407FB04 /* stats_data.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = stats_data.cc; path = src/core/lib/debug/stats_data.cc; sourceTree = "<group>"; };
+		4B12554C5A175808135EB650A407FB04 /* stats_data.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = stats_data.cc; path = src/core/lib/debug/stats_data.cc; sourceTree = "<group>"; };
 		4B17DD1C54656C57057F2C78F980AAF7 /* log_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = log_windows.h; path = include/grpc/support/log_windows.h; sourceTree = "<group>"; };
 		4B22C12854B383A743F87AF505C2386F /* sync_custom.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sync_custom.h; path = include/grpc/support/sync_custom.h; sourceTree = "<group>"; };
 		4B38A57EE7D0AAD68365F2B879BCF12A /* frame_data.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = frame_data.h; path = src/core/ext/transport/chttp2/transport/frame_data.h; sourceTree = "<group>"; };
 		4B4539A9D19B0CDE7CF75A559BEFBD16 /* FIRAuthAppCredential.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthAppCredential.h; path = FirebaseAuth/Sources/SystemService/FIRAuthAppCredential.h; sourceTree = "<group>"; };
-		4B6192DEF592D26D01A0CA3AB3EE76AC /* status.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = status.cc; path = Firestore/core/src/util/status.cc; sourceTree = "<group>"; };
+		4B6192DEF592D26D01A0CA3AB3EE76AC /* status.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = status.cc; path = Firestore/core/src/util/status.cc; sourceTree = "<group>"; };
 		4B6BF6B35F293B1A1D56E80E7EDE9DFB /* serialization_traits.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = serialization_traits.h; path = include/grpcpp/impl/codegen/serialization_traits.h; sourceTree = "<group>"; };
-		4B6ED0A122BA8FE40A2B1277466838F3 /* spinlock_wait.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = spinlock_wait.cc; path = absl/base/internal/spinlock_wait.cc; sourceTree = "<group>"; };
-		4B8E3A8EBBB7BB2B36FBBBE19DE6C39E /* str_cat.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = str_cat.cc; path = absl/strings/str_cat.cc; sourceTree = "<group>"; };
+		4B6ED0A122BA8FE40A2B1277466838F3 /* spinlock_wait.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = spinlock_wait.cc; path = absl/base/internal/spinlock_wait.cc; sourceTree = "<group>"; };
+		4B8E3A8EBBB7BB2B36FBBBE19DE6C39E /* str_cat.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = str_cat.cc; path = absl/strings/str_cat.cc; sourceTree = "<group>"; };
 		4B8E7656627679A1807D40628CE4F9E3 /* GDTCOREvent+GDTCCTSupport.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "GDTCOREvent+GDTCCTSupport.h"; path = "GoogleDataTransport/GDTCCTLibrary/Public/GDTCOREvent+GDTCCTSupport.h"; sourceTree = "<group>"; };
 		4B8EE2E8653E3FB9B537F8961802680F /* FIRStorageUploadTask_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageUploadTask_Private.h; path = FirebaseStorage/Sources/FIRStorageUploadTask_Private.h; sourceTree = "<group>"; };
 		4BA6CE8F46022B2E496AF88743850E55 /* filter_policy.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = filter_policy.h; path = include/leveldb/filter_policy.h; sourceTree = "<group>"; };
 		4BE710C941976884477DB53265CF3860 /* FIRStorageTokenAuthorizer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageTokenAuthorizer.h; path = FirebaseStorage/Sources/FIRStorageTokenAuthorizer.h; sourceTree = "<group>"; };
 		4C1F5826097A8ACF3699482EAF8BEB85 /* abseil-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "abseil-dummy.m"; sourceTree = "<group>"; };
-		4C22B192221390B0E45D5DCBFE73B424 /* create_channel_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = create_channel_posix.cc; path = src/cpp/client/create_channel_posix.cc; sourceTree = "<group>"; };
+		4C22B192221390B0E45D5DCBFE73B424 /* create_channel_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = create_channel_posix.cc; path = src/cpp/client/create_channel_posix.cc; sourceTree = "<group>"; };
 		4C369ABBEB53C5AE7A277D09CF3B5C71 /* ssl_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl_credentials.h; path = src/core/lib/security/credentials/ssl/ssl_credentials.h; sourceTree = "<group>"; };
 		4C42B603139BE6824E778FF7CE3D0821 /* lb_policy_factory.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = lb_policy_factory.h; path = src/core/ext/filters/client_channel/lb_policy_factory.h; sourceTree = "<group>"; };
 		4C50232BC5DBEE053F6D280C318B76F7 /* cluster.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = cluster.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/cluster.upb.h"; sourceTree = "<group>"; };
-		4C7213F87F670A97050EA8F937E44010 /* windows.c */ = {isa = PBXFileReference; includeInIndex = 1; name = windows.c; path = src/crypto/rand_extra/windows.c; sourceTree = "<group>"; };
-		4C887CA1072601B94EC3D20B5C60BA7A /* channel_stack_builder.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = channel_stack_builder.cc; path = src/core/lib/channel/channel_stack_builder.cc; sourceTree = "<group>"; };
+		4C7213F87F670A97050EA8F937E44010 /* windows.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = windows.c; path = src/crypto/rand_extra/windows.c; sourceTree = "<group>"; };
+		4C887CA1072601B94EC3D20B5C60BA7A /* channel_stack_builder.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = channel_stack_builder.cc; path = src/core/lib/channel/channel_stack_builder.cc; sourceTree = "<group>"; };
 		4C98DA5D22BCD12A6004F8E015AA05A2 /* fake_security_connector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = fake_security_connector.h; path = src/core/lib/security/security_connector/fake/fake_security_connector.h; sourceTree = "<group>"; };
-		4C9B37128ED9E2912B3E49770883E5E3 /* wakeup_fd_nospecial.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = wakeup_fd_nospecial.cc; path = src/core/lib/iomgr/wakeup_fd_nospecial.cc; sourceTree = "<group>"; };
-		4CA2227DC6B0966C08E2D89363B2D30C /* padding.c */ = {isa = PBXFileReference; includeInIndex = 1; name = padding.c; path = src/crypto/fipsmodule/rsa/padding.c; sourceTree = "<group>"; };
+		4C9B37128ED9E2912B3E49770883E5E3 /* wakeup_fd_nospecial.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = wakeup_fd_nospecial.cc; path = src/core/lib/iomgr/wakeup_fd_nospecial.cc; sourceTree = "<group>"; };
+		4CA2227DC6B0966C08E2D89363B2D30C /* padding.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = padding.c; path = src/crypto/fipsmodule/rsa/padding.c; sourceTree = "<group>"; };
 		4CA31D6058E451963DF085213AAB93B3 /* resolve_address.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resolve_address.h; path = src/core/lib/iomgr/resolve_address.h; sourceTree = "<group>"; };
 		4CAD40ADCB88A8DCA9C6E7E604B13231 /* FBLPromises.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FBLPromises.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		4CADACE6526A2C823A9B937DC705EB7C /* inproc_transport.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = inproc_transport.h; path = src/core/ext/transport/inproc/inproc_transport.h; sourceTree = "<group>"; };
 		4CD88C95F98B72BA1F2727C41A1F992A /* tls_gcc.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tls_gcc.h; path = src/core/lib/gpr/tls_gcc.h; sourceTree = "<group>"; };
 		4CED7CFB7ADD116265256DFF9E5D6ADC /* GDTCCTUploadOperation.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCCTUploadOperation.h; path = GoogleDataTransport/GDTCCTLibrary/Private/GDTCCTUploadOperation.h; sourceTree = "<group>"; };
-		4CF14D37A176D11E0570F3633D352658 /* server_auth_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = server_auth_filter.cc; path = src/core/lib/security/transport/server_auth_filter.cc; sourceTree = "<group>"; };
-		4D35C871C51EE5496D995385999467DA /* pollset_uv.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = pollset_uv.cc; path = src/core/lib/iomgr/pollset_uv.cc; sourceTree = "<group>"; };
-		4D38FBD361B5FED2820961121B780093 /* default_health_check_service.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = default_health_check_service.cc; path = src/cpp/server/health/default_health_check_service.cc; sourceTree = "<group>"; };
-		4D45F0A8F5C40375FE4AF8149E3A116E /* fake_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = fake_credentials.cc; path = src/core/lib/security/credentials/fake/fake_credentials.cc; sourceTree = "<group>"; };
+		4CF14D37A176D11E0570F3633D352658 /* server_auth_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = server_auth_filter.cc; path = src/core/lib/security/transport/server_auth_filter.cc; sourceTree = "<group>"; };
+		4D35C871C51EE5496D995385999467DA /* pollset_uv.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = pollset_uv.cc; path = src/core/lib/iomgr/pollset_uv.cc; sourceTree = "<group>"; };
+		4D38FBD361B5FED2820961121B780093 /* default_health_check_service.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = default_health_check_service.cc; path = src/cpp/server/health/default_health_check_service.cc; sourceTree = "<group>"; };
+		4D45F0A8F5C40375FE4AF8149E3A116E /* fake_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = fake_credentials.cc; path = src/core/lib/security/credentials/fake/fake_credentials.cc; sourceTree = "<group>"; };
 		4D50A55496574FCA84D35B746A8CCF9B /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/cipher_extra/internal.h; sourceTree = "<group>"; };
-		4D82CDA97C393D7363176A1104506511 /* a_sign.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_sign.c; path = src/crypto/x509/a_sign.c; sourceTree = "<group>"; };
+		4D82CDA97C393D7363176A1104506511 /* a_sign.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_sign.c; path = src/crypto/x509/a_sign.c; sourceTree = "<group>"; };
 		4D89FE75890A3B5EA66983BF9CA6E60E /* FIRStorageMetadata_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageMetadata_Private.h; path = FirebaseStorage/Sources/FIRStorageMetadata_Private.h; sourceTree = "<group>"; };
 		4D8C76F43B4FBEB5900C9B40F1188F38 /* rds.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = rds.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/rds.upb.h"; sourceTree = "<group>"; };
 		4D9AF7B35AD1DADF8471B5D97EAAC7C4 /* server.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server.h; path = src/core/lib/surface/server.h; sourceTree = "<group>"; };
 		4DA6667D907F231D8C39466A983B0C0B /* cfstream_handle.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = cfstream_handle.h; path = src/core/lib/iomgr/cfstream_handle.h; sourceTree = "<group>"; };
-		4DD7AF5BB8BD0DE0354419900B187BC2 /* database_info.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = database_info.cc; path = Firestore/core/src/core/database_info.cc; sourceTree = "<group>"; };
+		4DD7AF5BB8BD0DE0354419900B187BC2 /* database_info.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = database_info.cc; path = Firestore/core/src/core/database_info.cc; sourceTree = "<group>"; };
 		4DEB299A555A618C1B4CD66ACAE0D1BC /* tls.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tls.h; path = src/core/lib/gpr/tls.h; sourceTree = "<group>"; };
 		4E112D67DA5CFEE1959C99652C79C3FB /* vpm_int.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = vpm_int.h; path = src/crypto/x509/vpm_int.h; sourceTree = "<group>"; };
-		4E135A329ADCC994F20F67AB33E00AE7 /* string_util_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = string_util_windows.cc; path = src/core/lib/gpr/string_util_windows.cc; sourceTree = "<group>"; };
+		4E135A329ADCC994F20F67AB33E00AE7 /* string_util_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = string_util_windows.cc; path = src/core/lib/gpr/string_util_windows.cc; sourceTree = "<group>"; };
 		4E5B81CE3FFAA291E6393FA96E3FA7C3 /* GDTCCTCompressionHelper.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCCTCompressionHelper.m; path = GoogleDataTransport/GDTCCTLibrary/GDTCCTCompressionHelper.m; sourceTree = "<group>"; };
 		4E721D64E4E22CC0B130932C9B7AB420 /* alts_record_protocol_crypter_common.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_record_protocol_crypter_common.h; path = src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.h; sourceTree = "<group>"; };
 		4E8085072478BF80E5B99019C8236AC6 /* authority.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = authority.h; path = src/core/ext/transport/chttp2/client/authority.h; sourceTree = "<group>"; };
@@ -9329,10 +9330,10 @@
 		4EB03182CB3BFE9EA7F71E8498FA2297 /* FIRComponentType.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRComponentType.m; path = FirebaseCore/Sources/FIRComponentType.m; sourceTree = "<group>"; };
 		4ECBF5C57176C665E17C0F50B489DE82 /* GDTCORRegistrar.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORRegistrar.h; path = GoogleDataTransport/GDTCORLibrary/Internal/GDTCORRegistrar.h; sourceTree = "<group>"; };
 		4EFCBEC8E853AF619303C34AD43E81A3 /* FBLPromise+All.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FBLPromise+All.h"; path = "Sources/FBLPromises/include/FBLPromise+All.h"; sourceTree = "<group>"; };
-		4F02A3CDB814DA6129148A77F88849BF /* v3_ocsp.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_ocsp.c; path = src/crypto/x509v3/v3_ocsp.c; sourceTree = "<group>"; };
+		4F02A3CDB814DA6129148A77F88849BF /* v3_ocsp.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_ocsp.c; path = src/crypto/x509v3/v3_ocsp.c; sourceTree = "<group>"; };
 		4F0D3DDAEEAB6A2489BDE503E5008B2C /* cycleclock.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = cycleclock.h; path = absl/base/internal/cycleclock.h; sourceTree = "<group>"; };
-		4F10E26EFBCBBB0696078141D56BF3E2 /* resource.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = resource.upb.c; path = "src/core/ext/upb-generated/envoy/annotations/resource.upb.c"; sourceTree = "<group>"; };
-		4F3B93E235B3681CC6FFF3B997C0ABD5 /* check_gcp_environment.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = check_gcp_environment.cc; path = src/core/lib/security/credentials/alts/check_gcp_environment.cc; sourceTree = "<group>"; };
+		4F10E26EFBCBBB0696078141D56BF3E2 /* resource.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = resource.upb.c; path = "src/core/ext/upb-generated/envoy/annotations/resource.upb.c"; sourceTree = "<group>"; };
+		4F3B93E235B3681CC6FFF3B997C0ABD5 /* check_gcp_environment.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = check_gcp_environment.cc; path = src/core/lib/security/credentials/alts/check_gcp_environment.cc; sourceTree = "<group>"; };
 		4F4F684C6AA7B2DCF2219EE6C51DE4DB /* GDTCORReachability.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCORReachability.m; path = GoogleDataTransport/GDTCORLibrary/GDTCORReachability.m; sourceTree = "<group>"; };
 		4F5A4306A62B51FF0E9B9A7629A5BA2F /* openssl_grpc.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = openssl_grpc.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		4F61F8952A8F8EE4FC295D145827F69F /* iomgr.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = iomgr.h; path = src/core/lib/iomgr/iomgr.h; sourceTree = "<group>"; };
@@ -9340,91 +9341,91 @@
 		4F75504718F6FA5BA7E26E9845941EF1 /* iocp_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = iocp_windows.h; path = src/core/lib/iomgr/iocp_windows.h; sourceTree = "<group>"; };
 		4F78B4366CEAC676F06F99AB84AF5766 /* hkdf.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = hkdf.h; path = src/include/openssl/hkdf.h; sourceTree = "<group>"; };
 		4F9B6E9D1D87361E6547A41CDE5FA920 /* transport_security_grpc.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = transport_security_grpc.h; path = src/core/tsi/transport_security_grpc.h; sourceTree = "<group>"; };
-		4FA500453291323399E8AC3D93D91B77 /* des.c */ = {isa = PBXFileReference; includeInIndex = 1; name = des.c; path = src/crypto/fipsmodule/des/des.c; sourceTree = "<group>"; };
+		4FA500453291323399E8AC3D93D91B77 /* des.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = des.c; path = src/crypto/fipsmodule/des/des.c; sourceTree = "<group>"; };
 		4FAC6E22E629B9AE9ABB880A9832A458 /* FIRCoreDiagnosticsConnector.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRCoreDiagnosticsConnector.m; path = FirebaseCore/Sources/FIRCoreDiagnosticsConnector.m; sourceTree = "<group>"; };
-		4FBD5BFD0535B10E452F50266474FA09 /* grpclb_client_stats.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpclb_client_stats.cc; path = src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc; sourceTree = "<group>"; };
+		4FBD5BFD0535B10E452F50266474FA09 /* grpclb_client_stats.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpclb_client_stats.cc; path = src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc; sourceTree = "<group>"; };
 		4FDC06EDDC9546CD598471B315EC0425 /* transport_security_interface.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = transport_security_interface.h; path = src/core/tsi/transport_security_interface.h; sourceTree = "<group>"; };
-		4FE84E354041336402DEFAC063E3D376 /* health_check.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = health_check.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c"; sourceTree = "<group>"; };
+		4FE84E354041336402DEFAC063E3D376 /* health_check.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = health_check.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c"; sourceTree = "<group>"; };
 		5005D2AAB4E004FAE34B31F34E42A4A1 /* scheduling_mode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = scheduling_mode.h; path = absl/base/internal/scheduling_mode.h; sourceTree = "<group>"; };
 		501E61D173252D323A2901614AEBCDD7 /* message_allocator.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = message_allocator.h; path = include/grpcpp/impl/codegen/message_allocator.h; sourceTree = "<group>"; };
-		503CF94ECF69EB01631F25DE60C8AABC /* montgomery_inv.c */ = {isa = PBXFileReference; includeInIndex = 1; name = montgomery_inv.c; path = src/crypto/fipsmodule/bn/montgomery_inv.c; sourceTree = "<group>"; };
+		503CF94ECF69EB01631F25DE60C8AABC /* montgomery_inv.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = montgomery_inv.c; path = src/crypto/fipsmodule/bn/montgomery_inv.c; sourceTree = "<group>"; };
 		5040904C11AC19DADBB4387BDB8D9C0C /* lds.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = lds.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/lds.upb.h"; sourceTree = "<group>"; };
-		5049A5F3EFCC904F34E0617C4A751905 /* stack.c */ = {isa = PBXFileReference; includeInIndex = 1; name = stack.c; path = src/crypto/stack/stack.c; sourceTree = "<group>"; };
+		5049A5F3EFCC904F34E0617C4A751905 /* stack.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = stack.c; path = src/crypto/stack/stack.c; sourceTree = "<group>"; };
 		50C10F9683C4C3197A526E4099AE6048 /* ssl_session_cache.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl_session_cache.h; path = src/core/tsi/ssl/session_cache/ssl_session_cache.h; sourceTree = "<group>"; };
-		50C6A47A98689C9F75246905C46639F1 /* x509_att.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509_att.c; path = src/crypto/x509/x509_att.c; sourceTree = "<group>"; };
+		50C6A47A98689C9F75246905C46639F1 /* x509_att.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509_att.c; path = src/crypto/x509/x509_att.c; sourceTree = "<group>"; };
 		50CF84A5D2E8DC290002F58954533315 /* channel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channel.h; path = src/core/lib/surface/channel.h; sourceTree = "<group>"; };
 		50D20E47F69BAB92234E243DFE9A9A1D /* FIRDependency.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRDependency.h; path = FirebaseCore/Sources/Private/FIRDependency.h; sourceTree = "<group>"; };
-		50D223CFA96B3BDD878CE3F4E0ED4628 /* transport_security_common_api.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = transport_security_common_api.cc; path = src/core/tsi/alts/handshaker/transport_security_common_api.cc; sourceTree = "<group>"; };
+		50D223CFA96B3BDD878CE3F4E0ED4628 /* transport_security_common_api.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = transport_security_common_api.cc; path = src/core/tsi/alts/handshaker/transport_security_common_api.cc; sourceTree = "<group>"; };
 		50D56361774A757440F0E814861D19E1 /* load_file.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = load_file.h; path = src/core/lib/iomgr/load_file.h; sourceTree = "<group>"; };
 		50DFAA4176865738A157F822B6C4F195 /* validate_metadata.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = validate_metadata.h; path = src/core/lib/surface/validate_metadata.h; sourceTree = "<group>"; };
-		50E6521F8F4AD9895190AF971C18B01D /* target.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = target.cc; path = Firestore/core/src/core/target.cc; sourceTree = "<group>"; };
+		50E6521F8F4AD9895190AF971C18B01D /* target.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = target.cc; path = Firestore/core/src/core/target.cc; sourceTree = "<group>"; };
 		5102B390546239A38A3C55B319349132 /* FIRStorageObservableTask_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageObservableTask_Private.h; path = FirebaseStorage/Sources/FIRStorageObservableTask_Private.h; sourceTree = "<group>"; };
-		5107ACF9169ED359451E74B0EC9BC85E /* forkunsafe.c */ = {isa = PBXFileReference; includeInIndex = 1; name = forkunsafe.c; path = src/crypto/rand_extra/forkunsafe.c; sourceTree = "<group>"; };
-		5115AD9170A68938833735B98D1203A9 /* sha1.c */ = {isa = PBXFileReference; includeInIndex = 1; name = sha1.c; path = src/crypto/fipsmodule/sha/sha1.c; sourceTree = "<group>"; };
+		5107ACF9169ED359451E74B0EC9BC85E /* forkunsafe.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = forkunsafe.c; path = src/crypto/rand_extra/forkunsafe.c; sourceTree = "<group>"; };
+		5115AD9170A68938833735B98D1203A9 /* sha1.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = sha1.c; path = src/crypto/fipsmodule/sha/sha1.c; sourceTree = "<group>"; };
 		5121B44A8559C20C5A3E1A42AF364302 /* frame_rst_stream.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = frame_rst_stream.h; path = src/core/ext/transport/chttp2/transport/frame_rst_stream.h; sourceTree = "<group>"; };
-		514D7742C6CBB0BDBD9984AEE97DDFDE /* openssl_grpc.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = openssl_grpc.framework; path = "BoringSSL-GRPC.framework"; sourceTree = BUILT_PRODUCTS_DIR; };
+		514D7742C6CBB0BDBD9984AEE97DDFDE /* openssl_grpc.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = openssl_grpc.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		515451AA2E74839033C9846F1EE36FDA /* FIRMultiFactorAssertion+Internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FIRMultiFactorAssertion+Internal.h"; path = "FirebaseAuth/Sources/MultiFactor/FIRMultiFactorAssertion+Internal.h"; sourceTree = "<group>"; };
 		51671CD529E63DA137A01DAFF304FB67 /* block_annotate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = block_annotate.h; path = src/core/lib/iomgr/block_annotate.h; sourceTree = "<group>"; };
 		51799275E8B245B9C67F16086C30F035 /* grpc_security.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpc_security.h; path = include/grpc/grpc_security.h; sourceTree = "<group>"; };
 		517B98A6B027FF4826BE724F47F7AEB6 /* GDTCORPlatform.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORPlatform.h; path = GoogleDataTransport/GDTCORLibrary/Internal/GDTCORPlatform.h; sourceTree = "<group>"; };
-		51A865E9FDB41DBF958A1E9EC9F22B28 /* iomgr_custom.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = iomgr_custom.cc; path = src/core/lib/iomgr/iomgr_custom.cc; sourceTree = "<group>"; };
-		51ACC81E4C94597A00BE2AF109656963 /* bad_variant_access.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = bad_variant_access.cc; path = absl/types/bad_variant_access.cc; sourceTree = "<group>"; };
+		51A865E9FDB41DBF958A1E9EC9F22B28 /* iomgr_custom.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = iomgr_custom.cc; path = src/core/lib/iomgr/iomgr_custom.cc; sourceTree = "<group>"; };
+		51ACC81E4C94597A00BE2AF109656963 /* bad_variant_access.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = bad_variant_access.cc; path = absl/types/bad_variant_access.cc; sourceTree = "<group>"; };
 		51B0EA2BFF6704215FDB46EF6DDAB2FC /* hrss.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = hrss.h; path = src/include/openssl/hrss.h; sourceTree = "<group>"; };
-		51B9D4A9E12744D77E7BC18E09F96E08 /* altscontext.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = altscontext.upb.c; path = "src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c"; sourceTree = "<group>"; };
+		51B9D4A9E12744D77E7BC18E09F96E08 /* altscontext.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = altscontext.upb.c; path = "src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c"; sourceTree = "<group>"; };
 		51BAEA8880D5D8C0E4010E0173DF85BC /* FIRConfiguration.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRConfiguration.h; path = FirebaseCore/Sources/Public/FirebaseCore/FIRConfiguration.h; sourceTree = "<group>"; };
 		51EB36C74DC742949F4DE82375DB299A /* PromisesObjC.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = PromisesObjC.debug.xcconfig; sourceTree = "<group>"; };
 		520047FDDFEE8AC13C915CCBEC5383C2 /* intercepted_channel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = intercepted_channel.h; path = include/grpcpp/impl/codegen/intercepted_channel.h; sourceTree = "<group>"; };
 		520E02F7685A33A8192CDA5FC0DD35B8 /* server_credentials_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_credentials_impl.h; path = include/grpcpp/security/server_credentials_impl.h; sourceTree = "<group>"; };
 		5213749B371D27455AB32257D7A7926C /* GULNetworkInternal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULNetworkInternal.h; path = GoogleUtilities/Network/GULNetworkInternal.h; sourceTree = "<group>"; };
-		5219E6F91F03ABA9542E55BBE1E0BE57 /* byte_buffer_cc.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = byte_buffer_cc.cc; path = src/cpp/util/byte_buffer_cc.cc; sourceTree = "<group>"; };
-		5233B861EF1D1C4BD0F7C2A9FAB4BD5E /* tls_credentials_options_util.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tls_credentials_options_util.cc; path = src/cpp/common/tls_credentials_options_util.cc; sourceTree = "<group>"; };
-		525286EE9A8B78F01FAF890C423569F4 /* a_type.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_type.c; path = src/crypto/asn1/a_type.c; sourceTree = "<group>"; };
+		5219E6F91F03ABA9542E55BBE1E0BE57 /* byte_buffer_cc.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = byte_buffer_cc.cc; path = src/cpp/util/byte_buffer_cc.cc; sourceTree = "<group>"; };
+		5233B861EF1D1C4BD0F7C2A9FAB4BD5E /* tls_credentials_options_util.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tls_credentials_options_util.cc; path = src/cpp/common/tls_credentials_options_util.cc; sourceTree = "<group>"; };
+		525286EE9A8B78F01FAF890C423569F4 /* a_type.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_type.c; path = src/crypto/asn1/a_type.c; sourceTree = "<group>"; };
 		5256ADD7502E986DECED5C0B2B5459EF /* FBLPromise+Async.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FBLPromise+Async.h"; path = "Sources/FBLPromises/include/FBLPromise+Async.h"; sourceTree = "<group>"; };
 		5279CED0EC2BD358B23871A74479ACE7 /* FIRStorageObservableTask.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageObservableTask.h; path = FirebaseStorage/Sources/Public/FirebaseStorage/FIRStorageObservableTask.h; sourceTree = "<group>"; };
-		52936322728AC10F7DEAFB4F45852967 /* ssl_utils.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_utils.cc; path = src/core/lib/security/security_connector/ssl_utils.cc; sourceTree = "<group>"; };
+		52936322728AC10F7DEAFB4F45852967 /* ssl_utils.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_utils.cc; path = src/core/lib/security/security_connector/ssl_utils.cc; sourceTree = "<group>"; };
 		5298544F6E608B781F3D3179F27868E0 /* FIRVerifyPasswordResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRVerifyPasswordResponse.h; path = FirebaseAuth/Sources/Backend/RPC/FIRVerifyPasswordResponse.h; sourceTree = "<group>"; };
 		52A6AD82BB9BB1886480C1D9A01F54D7 /* arena.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = arena.h; path = src/core/lib/gprpp/arena.h; sourceTree = "<group>"; };
 		52AC0824D0D12ED289992AD244023A87 /* FIRStorageConstants_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageConstants_Private.h; path = FirebaseStorage/Sources/FIRStorageConstants_Private.h; sourceTree = "<group>"; };
 		52E0632C1F3B4A005EFB791820BD100F /* sockaddr_custom.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sockaddr_custom.h; path = src/core/lib/iomgr/sockaddr_custom.h; sourceTree = "<group>"; };
-		530449E536D90B55257423354124FA1C /* mem.c */ = {isa = PBXFileReference; includeInIndex = 1; name = mem.c; path = src/crypto/mem.c; sourceTree = "<group>"; };
-		533C19167E7CB032D3287E62B62FD2BB /* log.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = log.cc; path = src/core/lib/gpr/log.cc; sourceTree = "<group>"; };
-		53483DF0F6224F0012BBC66ABCCFDE96 /* db_iter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = db_iter.cc; path = db/db_iter.cc; sourceTree = "<group>"; };
-		534C0514233FEC396F7783FCCC237713 /* port_undef.inc */ = {isa = PBXFileReference; includeInIndex = 1; name = port_undef.inc; path = third_party/upb/upb/port_undef.inc; sourceTree = "<group>"; };
+		530449E536D90B55257423354124FA1C /* mem.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = mem.c; path = src/crypto/mem.c; sourceTree = "<group>"; };
+		533C19167E7CB032D3287E62B62FD2BB /* log.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = log.cc; path = src/core/lib/gpr/log.cc; sourceTree = "<group>"; };
+		53483DF0F6224F0012BBC66ABCCFDE96 /* db_iter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = db_iter.cc; path = db/db_iter.cc; sourceTree = "<group>"; };
+		534C0514233FEC396F7783FCCC237713 /* port_undef.inc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.pascal; name = port_undef.inc; path = third_party/upb/upb/port_undef.inc; sourceTree = "<group>"; };
 		5359AEECC1D42F8126DB064619B2F2FD /* FIRMultiFactorSession.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRMultiFactorSession.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRMultiFactorSession.h; sourceTree = "<group>"; };
 		53804DBB5CBCF858DEADCB37BAE1B359 /* FIRAuthDataResult_Internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthDataResult_Internal.h; path = FirebaseAuth/Sources/Auth/FIRAuthDataResult_Internal.h; sourceTree = "<group>"; };
 		539C526BA0E2D6D4DF945B8A368AB051 /* utf8.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = utf8.h; path = absl/strings/internal/utf8.h; sourceTree = "<group>"; };
-		539EF7817C325D6862659E8504ED1450 /* tcp_client.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tcp_client.cc; path = src/core/lib/iomgr/tcp_client.cc; sourceTree = "<group>"; };
+		539EF7817C325D6862659E8504ED1450 /* tcp_client.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tcp_client.cc; path = src/core/lib/iomgr/tcp_client.cc; sourceTree = "<group>"; };
 		53AC1C28532A48FEFAA238FCE72AF4C7 /* windows_logger.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = windows_logger.h; path = util/windows_logger.h; sourceTree = "<group>"; };
-		53AF455B50002ECE0C570A2EAF849E14 /* grpc_ares_wrapper.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_ares_wrapper.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc; sourceTree = "<group>"; };
+		53AF455B50002ECE0C570A2EAF849E14 /* grpc_ares_wrapper.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_ares_wrapper.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc; sourceTree = "<group>"; };
 		53B3602D50DD1249F3F3ECD5EBE3A791 /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/fipsmodule/rand/internal.h; sourceTree = "<group>"; };
 		53C099938DB8F145F0FA986316C670BD /* global_config_generic.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = global_config_generic.h; path = src/core/lib/gprpp/global_config_generic.h; sourceTree = "<group>"; };
 		53F4EE664073FDB70CD7746F6A7FB9E1 /* bytestring.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = bytestring.h; path = src/include/openssl/bytestring.h; sourceTree = "<group>"; };
 		53F6EEC05B3DFD5293BA45FC426405DB /* FIRCreateAuthURIRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRCreateAuthURIRequest.m; path = FirebaseAuth/Sources/Backend/RPC/FIRCreateAuthURIRequest.m; sourceTree = "<group>"; };
 		53F7D037BA5E4607CEC0726AF8D88184 /* stack.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = stack.h; path = src/include/openssl/stack.h; sourceTree = "<group>"; };
-		540F4DD2B286DA24B94C2D8D6A4078D9 /* x509_vfy.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509_vfy.c; path = src/crypto/x509/x509_vfy.c; sourceTree = "<group>"; };
+		540F4DD2B286DA24B94C2D8D6A4078D9 /* x509_vfy.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509_vfy.c; path = src/crypto/x509/x509_vfy.c; sourceTree = "<group>"; };
 		54159D8DDB12A7064F016A7E6EDF305E /* snapshot.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = snapshot.h; path = db/snapshot.h; sourceTree = "<group>"; };
 		542632D4121C5DF832E4BA7315373759 /* percent.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = percent.upb.h; path = "src/core/ext/upb-generated/envoy/type/percent.upb.h"; sourceTree = "<group>"; };
 		542FD0752A6DE697377DA671DAFC093C /* channelz.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channelz.h; path = src/core/lib/channel/channelz.h; sourceTree = "<group>"; };
-		54474C84CE066F4E2DB6CD0304E3CB09 /* event_string.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = event_string.cc; path = src/core/lib/surface/event_string.cc; sourceTree = "<group>"; };
+		54474C84CE066F4E2DB6CD0304E3CB09 /* event_string.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = event_string.cc; path = src/core/lib/surface/event_string.cc; sourceTree = "<group>"; };
 		5448EC7A209518440211149317F0CD93 /* is_epollexclusive_available.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = is_epollexclusive_available.h; path = src/core/lib/iomgr/is_epollexclusive_available.h; sourceTree = "<group>"; };
 		54723AF4D3BCF9A20F8C79B3B4091352 /* load_system_roots.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = load_system_roots.h; path = src/core/lib/security/security_connector/load_system_roots.h; sourceTree = "<group>"; };
-		5488A3DBA556AC4210E35E1EFA0C0D19 /* deadline_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = deadline_filter.cc; path = src/core/ext/filters/deadline/deadline_filter.cc; sourceTree = "<group>"; };
-		54BF13EF84655C1A2DF1805603C7F401 /* credentials_metadata.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = credentials_metadata.cc; path = src/core/lib/security/credentials/credentials_metadata.cc; sourceTree = "<group>"; };
-		54C0E6D81A519B1EAC4884539269EC15 /* time.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = time.cc; path = src/core/lib/gpr/time.cc; sourceTree = "<group>"; };
+		5488A3DBA556AC4210E35E1EFA0C0D19 /* deadline_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = deadline_filter.cc; path = src/core/ext/filters/deadline/deadline_filter.cc; sourceTree = "<group>"; };
+		54BF13EF84655C1A2DF1805603C7F401 /* credentials_metadata.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = credentials_metadata.cc; path = src/core/lib/security/credentials/credentials_metadata.cc; sourceTree = "<group>"; };
+		54C0E6D81A519B1EAC4884539269EC15 /* time.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = time.cc; path = src/core/lib/gpr/time.cc; sourceTree = "<group>"; };
 		54CFB23294A57F45FF6390AAED61F438 /* GDTCORDirectorySizeTracker.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCORDirectorySizeTracker.m; path = GoogleDataTransport/GDTCORLibrary/GDTCORDirectorySizeTracker.m; sourceTree = "<group>"; };
-		54F1F3E5B4CEFA314451647B2C255B79 /* struct.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = struct.nanopb.cc; path = Firestore/Protos/nanopb/google/protobuf/struct.nanopb.cc; sourceTree = "<group>"; };
+		54F1F3E5B4CEFA314451647B2C255B79 /* struct.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = struct.nanopb.cc; path = Firestore/Protos/nanopb/google/protobuf/struct.nanopb.cc; sourceTree = "<group>"; };
 		551172B0F5A9E28A7761BA92E733D055 /* CLTypingLabel.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = CLTypingLabel.release.xcconfig; sourceTree = "<group>"; };
 		5519C2BB1DE2016C79842DE954C63B09 /* leveldb-library-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "leveldb-library-prefix.pch"; sourceTree = "<group>"; };
-		552CB76CBA517CF2E29C0CE4C16D2E5E /* json_util.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = json_util.cc; path = src/core/lib/security/util/json_util.cc; sourceTree = "<group>"; };
+		552CB76CBA517CF2E29C0CE4C16D2E5E /* json_util.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = json_util.cc; path = src/core/lib/security/util/json_util.cc; sourceTree = "<group>"; };
 		552E16E4C2D07E1900D67953E586A39C /* cluster.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = cluster.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/cluster.upb.h"; sourceTree = "<group>"; };
 		55327D4BBCDBB9BD076F658EE72BEDBF /* resolve_address_custom.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resolve_address_custom.h; path = src/core/lib/iomgr/resolve_address_custom.h; sourceTree = "<group>"; };
 		5538FBF30F514A24CDB05A9D9E8BF7BF /* FBLPromise+Recover.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FBLPromise+Recover.h"; path = "Sources/FBLPromises/include/FBLPromise+Recover.h"; sourceTree = "<group>"; };
 		553FCA730823802DB8C6AFA88585210F /* optional.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = optional.h; path = absl/types/optional.h; sourceTree = "<group>"; };
-		55510F7FB912B53A721D1FE2CD168968 /* bin_encoder.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = bin_encoder.cc; path = src/core/ext/transport/chttp2/transport/bin_encoder.cc; sourceTree = "<group>"; };
+		55510F7FB912B53A721D1FE2CD168968 /* bin_encoder.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = bin_encoder.cc; path = src/core/ext/transport/chttp2/transport/bin_encoder.cc; sourceTree = "<group>"; };
 		556A4EF6952940E2132533225F1FCBEC /* grpc_alts_credentials_options.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpc_alts_credentials_options.h; path = src/core/lib/security/credentials/alts/grpc_alts_credentials_options.h; sourceTree = "<group>"; };
-		5571A83C4CD6C06E2D96CB099F0C35EE /* http2_settings.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = http2_settings.cc; path = src/core/ext/transport/chttp2/transport/http2_settings.cc; sourceTree = "<group>"; };
+		5571A83C4CD6C06E2D96CB099F0C35EE /* http2_settings.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = http2_settings.cc; path = src/core/ext/transport/chttp2/transport/http2_settings.cc; sourceTree = "<group>"; };
 		557A8E317975FFE123B473BF2D2098DE /* FIRComponentType.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRComponentType.h; path = FirebaseCore/Sources/Private/FIRComponentType.h; sourceTree = "<group>"; };
-		5582A2E0430B4123F4DCA0833D622C0A /* aes_nohw.c */ = {isa = PBXFileReference; includeInIndex = 1; name = aes_nohw.c; path = src/crypto/fipsmodule/aes/aes_nohw.c; sourceTree = "<group>"; };
+		5582A2E0430B4123F4DCA0833D622C0A /* aes_nohw.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = aes_nohw.c; path = src/crypto/fipsmodule/aes/aes_nohw.c; sourceTree = "<group>"; };
 		55908AD34F5D79957F4022D5530B66E5 /* grpc_alts_credentials_options.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpc_alts_credentials_options.h; path = src/core/lib/security/credentials/alts/grpc_alts_credentials_options.h; sourceTree = "<group>"; };
 		559C09485DDCC9156D5DE37F1842F5A5 /* GDTCORUploadBatch.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCORUploadBatch.m; path = GoogleDataTransport/GDTCORLibrary/GDTCORUploadBatch.m; sourceTree = "<group>"; };
 		55A3BF69D3A88F4924C7027960BA8C43 /* FIRAuthWebViewController.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthWebViewController.m; path = FirebaseAuth/Sources/Utilities/FIRAuthWebViewController.m; sourceTree = "<group>"; };
@@ -9433,77 +9434,77 @@
 		55E6439C5D808D60605BC37732A5B794 /* substitute.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = substitute.h; path = absl/strings/substitute.h; sourceTree = "<group>"; };
 		55EDB80638AD379B0216DB27727FC857 /* logging.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = logging.h; path = util/logging.h; sourceTree = "<group>"; };
 		563D7567783EAE83C2523E50544F5C9F /* FIRAuthExceptionUtils.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthExceptionUtils.m; path = FirebaseAuth/Sources/Utilities/FIRAuthExceptionUtils.m; sourceTree = "<group>"; };
-		565EA2ACF0B01F84B934B5DAFCA75CC9 /* bits.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = bits.cc; path = Firestore/core/src/util/bits.cc; sourceTree = "<group>"; };
+		565EA2ACF0B01F84B934B5DAFCA75CC9 /* bits.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = bits.cc; path = Firestore/core/src/util/bits.cc; sourceTree = "<group>"; };
 		56706C545CFCF5D07CAB357CAB44DF2C /* orca_load_report.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = orca_load_report.upb.h; path = "src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.h"; sourceTree = "<group>"; };
-		56726822F3A7786D2125E6C1722B468D /* a_dup.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_dup.c; path = src/crypto/asn1/a_dup.c; sourceTree = "<group>"; };
-		56758B7FBF86B9788770EECAA3610C5F /* frame_handler.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = frame_handler.cc; path = src/core/tsi/alts/frame_protector/frame_handler.cc; sourceTree = "<group>"; };
+		56726822F3A7786D2125E6C1722B468D /* a_dup.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_dup.c; path = src/crypto/asn1/a_dup.c; sourceTree = "<group>"; };
+		56758B7FBF86B9788770EECAA3610C5F /* frame_handler.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = frame_handler.cc; path = src/core/tsi/alts/frame_protector/frame_handler.cc; sourceTree = "<group>"; };
 		56A32C8B4083F34E3CB7B9AD5A37BC61 /* slice.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = slice.h; path = include/leveldb/slice.h; sourceTree = "<group>"; };
 		56A4463E6B7C7DD7829A1D5D0BB6094B /* b64.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = b64.h; path = src/core/lib/slice/b64.h; sourceTree = "<group>"; };
-		56B867BD206A699EF53C0D45750AA7C0 /* a_enum.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_enum.c; path = src/crypto/asn1/a_enum.c; sourceTree = "<group>"; };
-		56C2E89A014CEF1D359DFE106024377A /* pem_pk8.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pem_pk8.c; path = src/crypto/pem/pem_pk8.c; sourceTree = "<group>"; };
+		56B867BD206A699EF53C0D45750AA7C0 /* a_enum.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_enum.c; path = src/crypto/asn1/a_enum.c; sourceTree = "<group>"; };
+		56C2E89A014CEF1D359DFE106024377A /* pem_pk8.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pem_pk8.c; path = src/crypto/pem/pem_pk8.c; sourceTree = "<group>"; };
 		56D243F4369CA22FE288982AD7BE34E7 /* create_channel_posix_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = create_channel_posix_impl.h; path = include/grpcpp/create_channel_posix_impl.h; sourceTree = "<group>"; };
 		56D5D39EDD79ED32A47B1EB05A44C4BF /* iomgr_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = iomgr_posix.h; path = src/core/lib/iomgr/iomgr_posix.h; sourceTree = "<group>"; };
-		56DFC0AC6D4DAD7AF4142F669E157320 /* server_callback.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = server_callback.cc; path = src/cpp/server/server_callback.cc; sourceTree = "<group>"; };
+		56DFC0AC6D4DAD7AF4142F669E157320 /* server_callback.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = server_callback.cc; path = src/cpp/server/server_callback.cc; sourceTree = "<group>"; };
 		56E59135E060CE746757460B8E1AF1E2 /* tcp_server_utils_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tcp_server_utils_posix.h; path = src/core/lib/iomgr/tcp_server_utils_posix.h; sourceTree = "<group>"; };
 		56FCDA6920BBA823E15059CDAA88526E /* GULKeychainStorage.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULKeychainStorage.h; path = GoogleUtilities/Environment/Public/GoogleUtilities/GULKeychainStorage.h; sourceTree = "<group>"; };
-		575541AEC397E87100AB48B70CA8D277 /* timer_manager.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = timer_manager.cc; path = src/core/lib/iomgr/timer_manager.cc; sourceTree = "<group>"; };
+		575541AEC397E87100AB48B70CA8D277 /* timer_manager.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = timer_manager.cc; path = src/core/lib/iomgr/timer_manager.cc; sourceTree = "<group>"; };
 		5769C788C3A47CC914933CF54356633F /* frame_ping.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = frame_ping.h; path = src/core/ext/transport/chttp2/transport/frame_ping.h; sourceTree = "<group>"; };
 		57865268BD3A39B5AF8A2D0441E2500E /* alts_shared_resource.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_shared_resource.h; path = src/core/tsi/alts/handshaker/alts_shared_resource.h; sourceTree = "<group>"; };
 		578D03C4D6E4EE12C908E6C39854E1F0 /* call_op_set_interface.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = call_op_set_interface.h; path = include/grpcpp/impl/codegen/call_op_set_interface.h; sourceTree = "<group>"; };
-		579DC5EDE3A4439C5DDA79A474D5425A /* leveldb_opener.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = leveldb_opener.cc; path = Firestore/core/src/local/leveldb_opener.cc; sourceTree = "<group>"; };
+		579DC5EDE3A4439C5DDA79A474D5425A /* leveldb_opener.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = leveldb_opener.cc; path = Firestore/core/src/local/leveldb_opener.cc; sourceTree = "<group>"; };
 		57C6B89445B06B11029638BD25B628D8 /* FIRAuthErrors.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthErrors.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRAuthErrors.h; sourceTree = "<group>"; };
 		57CB51B82AF4DFEBFA1EC54B46A257CF /* cert.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = cert.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.h"; sourceTree = "<group>"; };
 		57D099820D4E73C00D5B312B2A804BF2 /* bad_optional_access.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = bad_optional_access.h; path = absl/types/bad_optional_access.h; sourceTree = "<group>"; };
 		57E5E3432FBC39C3A737D71906098590 /* GULMutableDictionary.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULMutableDictionary.h; path = GoogleUtilities/Network/Public/GoogleUtilities/GULMutableDictionary.h; sourceTree = "<group>"; };
-		57EF36A16E07B40B9C283AB61EF2F5EC /* grpc_service.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_service.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c"; sourceTree = "<group>"; };
-		581B0AE5F21FBA10452D69CA10D23EC4 /* migrate.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = migrate.upb.c; path = "src/core/ext/upb-generated/udpa/annotations/migrate.upb.c"; sourceTree = "<group>"; };
-		5839C16948F38635B45E5F3F33F5C9CA /* task.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = task.cc; path = Firestore/core/src/util/task.cc; sourceTree = "<group>"; };
-		583CDF6B2D2ECB83BF0D34F4EDBFF54E /* x_spki.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x_spki.c; path = src/crypto/x509/x_spki.c; sourceTree = "<group>"; };
+		57EF36A16E07B40B9C283AB61EF2F5EC /* grpc_service.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = grpc_service.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c"; sourceTree = "<group>"; };
+		581B0AE5F21FBA10452D69CA10D23EC4 /* migrate.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = migrate.upb.c; path = "src/core/ext/upb-generated/udpa/annotations/migrate.upb.c"; sourceTree = "<group>"; };
+		5839C16948F38635B45E5F3F33F5C9CA /* task.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = task.cc; path = Firestore/core/src/util/task.cc; sourceTree = "<group>"; };
+		583CDF6B2D2ECB83BF0D34F4EDBFF54E /* x_spki.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x_spki.c; path = src/crypto/x509/x_spki.c; sourceTree = "<group>"; };
 		58936428D5941E46D2FD75DFC20F2082 /* stub_options.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = stub_options.h; path = include/grpcpp/impl/codegen/stub_options.h; sourceTree = "<group>"; };
 		589A1618DCB82DEAB644D9B2A9C858B5 /* http_connect_handshaker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = http_connect_handshaker.h; path = src/core/ext/filters/client_channel/http_connect_handshaker.h; sourceTree = "<group>"; };
 		58A56459AFCC6A6A04441CEC6109FA22 /* rand.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = rand.h; path = src/include/openssl/rand.h; sourceTree = "<group>"; };
 		591B8F8D88695264684F5E9158D2B956 /* FIRDependency.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRDependency.h; path = FirebaseCore/Sources/Private/FIRDependency.h; sourceTree = "<group>"; };
-		591FB2A42C694151F3B1238DD5D9AA1B /* f_string.c */ = {isa = PBXFileReference; includeInIndex = 1; name = f_string.c; path = src/crypto/asn1/f_string.c; sourceTree = "<group>"; };
-		5955B39788A382D0B50D6503E6BB7A79 /* call_combiner.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = call_combiner.cc; path = src/core/lib/iomgr/call_combiner.cc; sourceTree = "<group>"; };
+		591FB2A42C694151F3B1238DD5D9AA1B /* f_string.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = f_string.c; path = src/crypto/asn1/f_string.c; sourceTree = "<group>"; };
+		5955B39788A382D0B50D6503E6BB7A79 /* call_combiner.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = call_combiner.cc; path = src/core/lib/iomgr/call_combiner.cc; sourceTree = "<group>"; };
 		5960F1A186903D68AD2988A41082C3D3 /* FIRCoreDiagnostics.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRCoreDiagnostics.h; path = Firebase/CoreDiagnostics/FIRCDLibrary/Public/FIRCoreDiagnostics.h; sourceTree = "<group>"; };
-		596AB4A92EFAD5F6D0084C5D713F8074 /* pcy_map.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pcy_map.c; path = src/crypto/x509v3/pcy_map.c; sourceTree = "<group>"; };
+		596AB4A92EFAD5F6D0084C5D713F8074 /* pcy_map.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pcy_map.c; path = src/crypto/x509v3/pcy_map.c; sourceTree = "<group>"; };
 		596D7A1183DB86AB654623B629245FA2 /* FIRVersion.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRVersion.m; path = FirebaseCore/Sources/FIRVersion.m; sourceTree = "<group>"; };
-		5975F22532BB8ACC3A24289ADFCC4FAC /* token.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = token.cc; path = Firestore/core/src/auth/token.cc; sourceTree = "<group>"; };
-		5978BCFDF910452C03F1CC9BE493D3C2 /* grpc_streaming_reader.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_streaming_reader.cc; path = Firestore/core/src/remote/grpc_streaming_reader.cc; sourceTree = "<group>"; };
+		5975F22532BB8ACC3A24289ADFCC4FAC /* token.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = token.cc; path = Firestore/core/src/auth/token.cc; sourceTree = "<group>"; };
+		5978BCFDF910452C03F1CC9BE493D3C2 /* grpc_streaming_reader.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_streaming_reader.cc; path = Firestore/core/src/remote/grpc_streaming_reader.cc; sourceTree = "<group>"; };
 		597E0E789408A724A095A967DEE63854 /* GTMSessionUploadFetcher.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GTMSessionUploadFetcher.m; path = Source/GTMSessionUploadFetcher.m; sourceTree = "<group>"; };
-		598D5F67A71EBA8DAA723930FBF1C9F0 /* timestamp_internal.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = timestamp_internal.cc; path = Firestore/core/src/timestamp_internal.cc; sourceTree = "<group>"; };
+		598D5F67A71EBA8DAA723930FBF1C9F0 /* timestamp_internal.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = timestamp_internal.cc; path = Firestore/core/src/timestamp_internal.cc; sourceTree = "<group>"; };
 		599A0F7565EE55612561C10184B4ED2F /* tsi_error.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tsi_error.h; path = src/core/lib/security/transport/tsi_error.h; sourceTree = "<group>"; };
 		599DE975510181D678F2AE2944924B23 /* listener.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = listener.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/listener.upb.h"; sourceTree = "<group>"; };
 		59CFE707EEF4698F1C5EFF0F94AC2560 /* json_token.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = json_token.h; path = src/core/lib/security/credentials/jwt/json_token.h; sourceTree = "<group>"; };
 		59D4B419CD66CEB3EBB5888CC8C1A563 /* FIRConfiguration.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRConfiguration.m; path = FirebaseCore/Sources/FIRConfiguration.m; sourceTree = "<group>"; };
 		59DAA57EBE779591F76492C18E3D7902 /* msg.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = msg.h; path = third_party/upb/upb/msg.h; sourceTree = "<group>"; };
-		59E9412961B031ACCD0D059F71E16F41 /* credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = credentials.cc; path = src/core/lib/security/credentials/credentials.cc; sourceTree = "<group>"; };
-		5A053A3F90D0E9A1001E9DF9F90EA43F /* cpu_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = cpu_posix.cc; path = src/core/lib/gpr/cpu_posix.cc; sourceTree = "<group>"; };
+		59E9412961B031ACCD0D059F71E16F41 /* credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = credentials.cc; path = src/core/lib/security/credentials/credentials.cc; sourceTree = "<group>"; };
+		5A053A3F90D0E9A1001E9DF9F90EA43F /* cpu_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = cpu_posix.cc; path = src/core/lib/gpr/cpu_posix.cc; sourceTree = "<group>"; };
 		5A18D7B55ABFCE53DAAD0AD10F166E66 /* hpack_parser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = hpack_parser.h; path = src/core/ext/transport/chttp2/transport/hpack_parser.h; sourceTree = "<group>"; };
 		5A250DA916BE247CE131F9474C67C535 /* port_example.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = port_example.h; path = port/port_example.h; sourceTree = "<group>"; };
 		5A354669E64EB9A663D45C434D9FE28D /* tcp_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tcp_windows.h; path = src/core/lib/iomgr/tcp_windows.h; sourceTree = "<group>"; };
 		5A59B594F4220CA9C495DEDAF19EB8FD /* string.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = string.upb.h; path = "src/core/ext/upb-generated/envoy/type/matcher/string.upb.h"; sourceTree = "<group>"; };
-		5A6EB4DDD474A23F1A79D0367CFE6DE7 /* tcp_server_utils_posix_ifaddrs.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tcp_server_utils_posix_ifaddrs.cc; path = src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc; sourceTree = "<group>"; };
+		5A6EB4DDD474A23F1A79D0367CFE6DE7 /* tcp_server_utils_posix_ifaddrs.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tcp_server_utils_posix_ifaddrs.cc; path = src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc; sourceTree = "<group>"; };
 		5A8F6B3DC95849E697AF7CC174866C6F /* GTMSessionFetcherLogging.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GTMSessionFetcherLogging.h; path = Source/GTMSessionFetcherLogging.h; sourceTree = "<group>"; };
 		5AA29FD2F3567C351DD78354F008D32B /* FIRPhoneMultiFactorInfo.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRPhoneMultiFactorInfo.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRPhoneMultiFactorInfo.h; sourceTree = "<group>"; };
 		5ABC4EDFC97AE1354928E6489115180A /* FIRStorageReference.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStorageReference.m; path = FirebaseStorage/Sources/FIRStorageReference.m; sourceTree = "<group>"; };
-		5ACEDC4A1C55B75D3DBE136917A7C159 /* grpc_root_certificate_finder_generated.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_root_certificate_finder_generated.cc; path = Firestore/core/src/remote/grpc_root_certificate_finder_generated.cc; sourceTree = "<group>"; };
+		5ACEDC4A1C55B75D3DBE136917A7C159 /* grpc_root_certificate_finder_generated.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_root_certificate_finder_generated.cc; path = Firestore/core/src/remote/grpc_root_certificate_finder_generated.cc; sourceTree = "<group>"; };
 		5AE5E78B18249EB952AE6C1AFAA1EB5D /* invoke.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = invoke.h; path = absl/base/internal/invoke.h; sourceTree = "<group>"; };
 		5AF6D745EE561A9238FC41845C73002B /* FIRResetPasswordRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRResetPasswordRequest.m; path = FirebaseAuth/Sources/Backend/RPC/FIRResetPasswordRequest.m; sourceTree = "<group>"; };
-		5B19D29D2B0C7767861395007AF61987 /* memory_persistence.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = memory_persistence.cc; path = Firestore/core/src/local/memory_persistence.cc; sourceTree = "<group>"; };
+		5B19D29D2B0C7767861395007AF61987 /* memory_persistence.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = memory_persistence.cc; path = Firestore/core/src/local/memory_persistence.cc; sourceTree = "<group>"; };
 		5B1D14ED5D9A5D15E46B21D8F0A3841E /* grpcpp.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = grpcpp.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		5B885B8480816BBCD8B874F66D1777A8 /* manual_constructor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = manual_constructor.h; path = src/core/lib/gprpp/manual_constructor.h; sourceTree = "<group>"; };
 		5B9475B11CFA07724FE1829A1C52E75A /* GULHeartbeatDateStorage.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULHeartbeatDateStorage.h; path = GoogleUtilities/Environment/Public/GoogleUtilities/GULHeartbeatDateStorage.h; sourceTree = "<group>"; };
-		5BCECAD0D8530CF94CC6BD2EE3988AB9 /* channel_create.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = channel_create.cc; path = src/core/ext/transport/chttp2/client/insecure/channel_create.cc; sourceTree = "<group>"; };
+		5BCECAD0D8530CF94CC6BD2EE3988AB9 /* channel_create.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = channel_create.cc; path = src/core/ext/transport/chttp2/client/insecure/channel_create.cc; sourceTree = "<group>"; };
 		5BE3BDF2127F1A4D8A8758F2C835F392 /* GDTCORTransport.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORTransport.h; path = GoogleDataTransport/GDTCORLibrary/Public/GoogleDataTransport/GDTCORTransport.h; sourceTree = "<group>"; };
-		5BE7F67D1C2B7C672D6C29E3B01D33A1 /* static_metadata.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = static_metadata.cc; path = src/core/lib/transport/static_metadata.cc; sourceTree = "<group>"; };
-		5C062AC7E55F67BAD62A3B8652A2817D /* status_errno.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = status_errno.cc; path = Firestore/core/src/util/status_errno.cc; sourceTree = "<group>"; };
+		5BE7F67D1C2B7C672D6C29E3B01D33A1 /* static_metadata.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = static_metadata.cc; path = src/core/lib/transport/static_metadata.cc; sourceTree = "<group>"; };
+		5C062AC7E55F67BAD62A3B8652A2817D /* status_errno.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = status_errno.cc; path = Firestore/core/src/util/status_errno.cc; sourceTree = "<group>"; };
 		5C1D61EA726D980AD9C0287EDBB50081 /* lb_policy_factory.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = lb_policy_factory.h; path = src/core/ext/filters/client_channel/lb_policy_factory.h; sourceTree = "<group>"; };
 		5C303FB3A2A98D7D13FCEA7E1C512870 /* FIRStorageUploadTask.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageUploadTask.h; path = FirebaseStorage/Sources/Public/FirebaseStorage/FIRStorageUploadTask.h; sourceTree = "<group>"; };
 		5C3E7B9A0A6C3D6A35FEA5497674EA32 /* parser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = parser.h; path = absl/strings/internal/str_format/parser.h; sourceTree = "<group>"; };
 		5C71800625E808C679392086B792FF99 /* combiner.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = combiner.h; path = src/core/lib/iomgr/combiner.h; sourceTree = "<group>"; };
-		5C7373CDBF7914A2D1DFFB1E44281CCA /* lame_client.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = lame_client.cc; path = src/core/lib/surface/lame_client.cc; sourceTree = "<group>"; };
-		5C9951854F493C9EA4E2315D0E8CC33B /* log_linux.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = log_linux.cc; path = src/core/lib/gpr/log_linux.cc; sourceTree = "<group>"; };
+		5C7373CDBF7914A2D1DFFB1E44281CCA /* lame_client.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = lame_client.cc; path = src/core/lib/surface/lame_client.cc; sourceTree = "<group>"; };
+		5C9951854F493C9EA4E2315D0E8CC33B /* log_linux.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = log_linux.cc; path = src/core/lib/gpr/log_linux.cc; sourceTree = "<group>"; };
 		5CA8CD9CDE5D1C031772AC808C046284 /* GDTCOREndpoints_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCOREndpoints_Private.h; path = GoogleDataTransport/GDTCORLibrary/Private/GDTCOREndpoints_Private.h; sourceTree = "<group>"; };
 		5CAEC90FB45E2985FA0A0942BF1A4361 /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/fipsmodule/des/internal.h; sourceTree = "<group>"; };
 		5CC2B1E62155B37C71D4C3A290B5DF6B /* FBLPromise+Await.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "FBLPromise+Await.m"; path = "Sources/FBLPromises/FBLPromise+Await.m"; sourceTree = "<group>"; };
@@ -9512,8 +9513,8 @@
 		5D086C7E70BE584E63F3DB7BDA7C540F /* endpoint_cfstream.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = endpoint_cfstream.h; path = src/core/lib/iomgr/endpoint_cfstream.h; sourceTree = "<group>"; };
 		5D0CC180D01E06676E0285D52B49A793 /* FirebaseCoreDiagnostics.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = FirebaseCoreDiagnostics.modulemap; sourceTree = "<group>"; };
 		5D0E3E443EB6BF48FF7760D2027FA3B4 /* xds_client_stats.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = xds_client_stats.h; path = src/core/ext/filters/client_channel/xds/xds_client_stats.h; sourceTree = "<group>"; };
-		5D1582044BB418C65F2E447DC250E3BB /* x_pkey.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x_pkey.c; path = src/crypto/x509/x_pkey.c; sourceTree = "<group>"; };
-		5D1D50191A1DA6300EED9B3CDFFBCE8B /* user.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = user.cc; path = Firestore/core/src/auth/user.cc; sourceTree = "<group>"; };
+		5D1582044BB418C65F2E447DC250E3BB /* x_pkey.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x_pkey.c; path = src/crypto/x509/x_pkey.c; sourceTree = "<group>"; };
+		5D1D50191A1DA6300EED9B3CDFFBCE8B /* user.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = user.cc; path = Firestore/core/src/auth/user.cc; sourceTree = "<group>"; };
 		5D281DACEDF16445843486AD0B597B14 /* macros.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = macros.h; path = absl/base/macros.h; sourceTree = "<group>"; };
 		5D28E44426F720A5309DC312A073C719 /* type_traits.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = type_traits.h; path = absl/meta/type_traits.h; sourceTree = "<group>"; };
 		5D2B4D962A2810094E4E87D1C49BE1E3 /* GULLoggerLevel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULLoggerLevel.h; path = GoogleUtilities/Logger/Public/GoogleUtilities/GULLoggerLevel.h; sourceTree = "<group>"; };
@@ -9521,7 +9522,7 @@
 		5D54F021034312099656F95CD0163AB0 /* spinlock_wait.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = spinlock_wait.h; path = absl/base/internal/spinlock_wait.h; sourceTree = "<group>"; };
 		5D59A0A9238045D69A9F36F7932EF84C /* check_gcp_environment.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = check_gcp_environment.h; path = src/core/lib/security/credentials/alts/check_gcp_environment.h; sourceTree = "<group>"; };
 		5D925515935D4DB54F2A4C90946B3702 /* FirebaseCore.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = FirebaseCore.modulemap; sourceTree = "<group>"; };
-		5DA5F6599864B3A31275D701E2D7B414 /* log_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = log_windows.cc; path = src/core/lib/gpr/log_windows.cc; sourceTree = "<group>"; };
+		5DA5F6599864B3A31275D701E2D7B414 /* log_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = log_windows.cc; path = src/core/lib/gpr/log_windows.cc; sourceTree = "<group>"; };
 		5DA62AF5092DE772AEB0AA8D8249EDEB /* FIRTransaction.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRTransaction.h; path = Firestore/Source/Public/FirebaseFirestore/FIRTransaction.h; sourceTree = "<group>"; };
 		5DB07917ED20D748B96087125323BA57 /* log_format.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = log_format.h; path = db/log_format.h; sourceTree = "<group>"; };
 		5DCF42E0D085DEB9A43ECF5FBDB2C55B /* FIRAuthAPNSTokenManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthAPNSTokenManager.h; path = FirebaseAuth/Sources/SystemService/FIRAuthAPNSTokenManager.h; sourceTree = "<group>"; };
@@ -9529,77 +9530,77 @@
 		5E043C489C994234CD65283CB933CDF2 /* xds_client.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = xds_client.h; path = src/core/ext/filters/client_channel/xds/xds_client.h; sourceTree = "<group>"; };
 		5E15384120A990D973F963562DB3340D /* pb_decode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = pb_decode.h; sourceTree = "<group>"; };
 		5E273174FBB26BE4FA0871FE30DC1636 /* local_subchannel_pool.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = local_subchannel_pool.h; path = src/core/ext/filters/client_channel/local_subchannel_pool.h; sourceTree = "<group>"; };
-		5E3F0D41EBD9F04846D5D0A68FC514DA /* gethostname_host_name_max.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = gethostname_host_name_max.cc; path = src/core/lib/iomgr/gethostname_host_name_max.cc; sourceTree = "<group>"; };
+		5E3F0D41EBD9F04846D5D0A68FC514DA /* gethostname_host_name_max.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = gethostname_host_name_max.cc; path = src/core/lib/iomgr/gethostname_host_name_max.cc; sourceTree = "<group>"; };
 		5E3FCE7A67B39DACEB2EFC490EB95488 /* FIRAuthDataResult.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthDataResult.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRAuthDataResult.h; sourceTree = "<group>"; };
 		5E41E11364EE44D80981514DCF501ED2 /* event_string.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = event_string.h; path = src/core/lib/surface/event_string.h; sourceTree = "<group>"; };
 		5E51F98B7F9B2D077A316DAB17D5A024 /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/x509v3/internal.h; sourceTree = "<group>"; };
 		5E64924D9806BAE1B5025A5633D6017B /* FIRConfigurationInternal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRConfigurationInternal.h; path = FirebaseCore/Sources/FIRConfigurationInternal.h; sourceTree = "<group>"; };
 		5E7E003FCA81BDB92574B1073619D079 /* tcp_server_utils_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tcp_server_utils_posix.h; path = src/core/lib/iomgr/tcp_server_utils_posix.h; sourceTree = "<group>"; };
-		5E8374A9DCAF0C5A3009D876B566B7CC /* background_queue.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = background_queue.cc; path = Firestore/core/src/util/background_queue.cc; sourceTree = "<group>"; };
-		5E985F9629933432B07661349C9E6B98 /* route_components.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = route_components.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/route/route_components.upb.c"; sourceTree = "<group>"; };
+		5E8374A9DCAF0C5A3009D876B566B7CC /* background_queue.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = background_queue.cc; path = Firestore/core/src/util/background_queue.cc; sourceTree = "<group>"; };
+		5E985F9629933432B07661349C9E6B98 /* route_components.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = route_components.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/route/route_components.upb.c"; sourceTree = "<group>"; };
 		5ED70EA847BAA0B3D411D9269A3D6A6A /* FIRFinalizeMFASignInRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRFinalizeMFASignInRequest.m; path = FirebaseAuth/Sources/Backend/RPC/MultiFactor/SignIn/FIRFinalizeMFASignInRequest.m; sourceTree = "<group>"; };
-		5EDA02AC12FB9FA361066CF3C3F9465E /* round_robin.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = round_robin.cc; path = src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc; sourceTree = "<group>"; };
-		5EF9ACA44FCEB1F9BAFE31C8CFDC074A /* escaping.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = escaping.cc; path = absl/strings/internal/escaping.cc; sourceTree = "<group>"; };
+		5EDA02AC12FB9FA361066CF3C3F9465E /* round_robin.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = round_robin.cc; path = src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc; sourceTree = "<group>"; };
+		5EF9ACA44FCEB1F9BAFE31C8CFDC074A /* escaping.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = escaping.cc; path = absl/strings/internal/escaping.cc; sourceTree = "<group>"; };
 		5F05CABBB994A3BFD1E454059417ADD7 /* civil_time.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = civil_time.h; path = absl/time/internal/cctz/include/cctz/civil_time.h; sourceTree = "<group>"; };
 		5F202DB6855F81AB92997DF3573CD73E /* GTMSessionFetcher.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GTMSessionFetcher.h; path = Source/GTMSessionFetcher.h; sourceTree = "<group>"; };
-		5F2F3A86AF7257A4354EFFF7E3437C60 /* wrappers.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = wrappers.nanopb.cc; path = Firestore/Protos/nanopb/google/protobuf/wrappers.nanopb.cc; sourceTree = "<group>"; };
-		5F4739EF61DB461E522D053E06D96AEC /* json_token.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = json_token.cc; path = src/core/lib/security/credentials/jwt/json_token.cc; sourceTree = "<group>"; };
-		5F52E221C811D1AABFE6DBB263F9C7D8 /* ssl_x509.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_x509.cc; path = src/ssl/ssl_x509.cc; sourceTree = "<group>"; };
-		5F55396969EC6B9200A9C3EA08514BF0 /* filesystem_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = filesystem_posix.cc; path = Firestore/core/src/util/filesystem_posix.cc; sourceTree = "<group>"; };
+		5F2F3A86AF7257A4354EFFF7E3437C60 /* wrappers.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = wrappers.nanopb.cc; path = Firestore/Protos/nanopb/google/protobuf/wrappers.nanopb.cc; sourceTree = "<group>"; };
+		5F4739EF61DB461E522D053E06D96AEC /* json_token.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = json_token.cc; path = src/core/lib/security/credentials/jwt/json_token.cc; sourceTree = "<group>"; };
+		5F52E221C811D1AABFE6DBB263F9C7D8 /* ssl_x509.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_x509.cc; path = src/ssl/ssl_x509.cc; sourceTree = "<group>"; };
+		5F55396969EC6B9200A9C3EA08514BF0 /* filesystem_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = filesystem_posix.cc; path = Firestore/core/src/util/filesystem_posix.cc; sourceTree = "<group>"; };
 		5F56B7EE1E8AB104F973E0977CE63CBA /* default_health_check_service.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = default_health_check_service.h; path = src/cpp/server/health/default_health_check_service.h; sourceTree = "<group>"; };
-		5F865DD4AA2612B6728C7EF6A32E3D45 /* testharness.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = testharness.cc; path = util/testharness.cc; sourceTree = "<group>"; };
+		5F865DD4AA2612B6728C7EF6A32E3D45 /* testharness.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = testharness.cc; path = util/testharness.cc; sourceTree = "<group>"; };
 		601A4119471A29ECE3E76E67E679F7C9 /* FIRLibrary.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRLibrary.h; path = FirebaseCore/Sources/Private/FIRLibrary.h; sourceTree = "<group>"; };
 		60358A6D929C8C96018FD814F43825B6 /* env.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = env.h; path = src/core/lib/gpr/env.h; sourceTree = "<group>"; };
-		604D83550F7AC4D06788FBD0C98AAC3F /* query_core.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = query_core.cc; path = Firestore/core/src/api/query_core.cc; sourceTree = "<group>"; };
+		604D83550F7AC4D06788FBD0C98AAC3F /* query_core.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = query_core.cc; path = Firestore/core/src/api/query_core.cc; sourceTree = "<group>"; };
 		604DA133FA136CB3D3EC78B62C948B58 /* call_once.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = call_once.h; path = absl/base/call_once.h; sourceTree = "<group>"; };
 		6078D468C24CC9C444B8C1F9D5CC6358 /* auth_metadata_processor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = auth_metadata_processor.h; path = include/grpcpp/security/auth_metadata_processor.h; sourceTree = "<group>"; };
-		607F7BE8C5080CE3CB9305BE4FD8B512 /* FIRDocumentChange.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FIRDocumentChange.mm; path = Firestore/Source/API/FIRDocumentChange.mm; sourceTree = "<group>"; };
+		607F7BE8C5080CE3CB9305BE4FD8B512 /* FIRDocumentChange.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FIRDocumentChange.mm; path = Firestore/Source/API/FIRDocumentChange.mm; sourceTree = "<group>"; };
 		609FFDAB46248D2C6FD9401535D6C8AD /* GULNetworkURLSession.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GULNetworkURLSession.m; path = GoogleUtilities/Network/GULNetworkURLSession.m; sourceTree = "<group>"; };
 		60C028F76A695FE14A6E15A3EBEBFF2D /* obj_mac.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = obj_mac.h; path = src/include/openssl/obj_mac.h; sourceTree = "<group>"; };
-		60C597CBCD8EED1C95B530EED17F0C53 /* pkcs7_x509.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pkcs7_x509.c; path = src/crypto/pkcs7/pkcs7_x509.c; sourceTree = "<group>"; };
+		60C597CBCD8EED1C95B530EED17F0C53 /* pkcs7_x509.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pkcs7_x509.c; path = src/crypto/pkcs7/pkcs7_x509.c; sourceTree = "<group>"; };
 		60E8B3F6B4A2E7818B06A2EFC87C6254 /* FBLPromise+Reduce.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FBLPromise+Reduce.h"; path = "Sources/FBLPromises/include/FBLPromise+Reduce.h"; sourceTree = "<group>"; };
-		6121099E40E3032E2440FB30A9CBAD84 /* poly1305_vec.c */ = {isa = PBXFileReference; includeInIndex = 1; name = poly1305_vec.c; path = src/crypto/poly1305/poly1305_vec.c; sourceTree = "<group>"; };
+		6121099E40E3032E2440FB30A9CBAD84 /* poly1305_vec.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = poly1305_vec.c; path = src/crypto/poly1305/poly1305_vec.c; sourceTree = "<group>"; };
 		6125761B93AAEEEB0261B2F6D1125A39 /* iomgr_internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = iomgr_internal.h; path = src/core/lib/iomgr/iomgr_internal.h; sourceTree = "<group>"; };
-		6127C943ADFCF19CD33B0E3E5B65C108 /* chttp2_transport.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = chttp2_transport.cc; path = src/core/ext/transport/chttp2/transport/chttp2_transport.cc; sourceTree = "<group>"; };
-		61393700F1AF93A2105B9F52177B2F55 /* div.c */ = {isa = PBXFileReference; includeInIndex = 1; name = div.c; path = src/crypto/fipsmodule/bn/div.c; sourceTree = "<group>"; };
-		616383C6F1F46939557C60455F5A1EFE /* pool.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pool.c; path = src/crypto/pool/pool.c; sourceTree = "<group>"; };
-		61638826A63882BDC3DFBBF11C03D03F /* msg.c */ = {isa = PBXFileReference; includeInIndex = 1; name = msg.c; path = third_party/upb/upb/msg.c; sourceTree = "<group>"; };
-		616413DEDC85EBC21B3FB8E18CAD1DDC /* pcy_tree.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pcy_tree.c; path = src/crypto/x509v3/pcy_tree.c; sourceTree = "<group>"; };
+		6127C943ADFCF19CD33B0E3E5B65C108 /* chttp2_transport.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = chttp2_transport.cc; path = src/core/ext/transport/chttp2/transport/chttp2_transport.cc; sourceTree = "<group>"; };
+		61393700F1AF93A2105B9F52177B2F55 /* div.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = div.c; path = src/crypto/fipsmodule/bn/div.c; sourceTree = "<group>"; };
+		616383C6F1F46939557C60455F5A1EFE /* pool.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pool.c; path = src/crypto/pool/pool.c; sourceTree = "<group>"; };
+		61638826A63882BDC3DFBBF11C03D03F /* msg.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = msg.c; path = third_party/upb/upb/msg.c; sourceTree = "<group>"; };
+		616413DEDC85EBC21B3FB8E18CAD1DDC /* pcy_tree.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pcy_tree.c; path = src/crypto/x509v3/pcy_tree.c; sourceTree = "<group>"; };
 		616EF94ADC21C426749492EF54703976 /* safestack.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = safestack.h; path = src/include/openssl/safestack.h; sourceTree = "<group>"; };
-		616F70CA434650FC24F185E75471B63F /* filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = filter.cc; path = Firestore/core/src/core/filter.cc; sourceTree = "<group>"; };
-		61A5E34E1BFCDCAB28FE5B1DA3092AFE /* evp_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; name = evp_asn1.c; path = src/crypto/evp/evp_asn1.c; sourceTree = "<group>"; };
-		61B8E818BA74FA9FEF25DF47F92BC13B /* deterministic.c */ = {isa = PBXFileReference; includeInIndex = 1; name = deterministic.c; path = src/crypto/rand_extra/deterministic.c; sourceTree = "<group>"; };
-		61BD591D8942728FC8CADA75D677E17A /* merger.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = merger.cc; path = table/merger.cc; sourceTree = "<group>"; };
+		616F70CA434650FC24F185E75471B63F /* filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = filter.cc; path = Firestore/core/src/core/filter.cc; sourceTree = "<group>"; };
+		61A5E34E1BFCDCAB28FE5B1DA3092AFE /* evp_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = evp_asn1.c; path = src/crypto/evp/evp_asn1.c; sourceTree = "<group>"; };
+		61B8E818BA74FA9FEF25DF47F92BC13B /* deterministic.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = deterministic.c; path = src/crypto/rand_extra/deterministic.c; sourceTree = "<group>"; };
+		61BD591D8942728FC8CADA75D677E17A /* merger.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = merger.cc; path = table/merger.cc; sourceTree = "<group>"; };
 		61EE1F58229072021635D7FD10F8DA78 /* internal_errqueue.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal_errqueue.h; path = src/core/lib/iomgr/internal_errqueue.h; sourceTree = "<group>"; };
-		620013B3D7E54E9E7F15957177E47F39 /* e_aes.c */ = {isa = PBXFileReference; includeInIndex = 1; name = e_aes.c; path = src/crypto/fipsmodule/cipher/e_aes.c; sourceTree = "<group>"; };
-		62071B304090D7B150D547B8FD3FA952 /* oauth2_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = oauth2_credentials.cc; path = src/core/lib/security/credentials/oauth2/oauth2_credentials.cc; sourceTree = "<group>"; };
+		620013B3D7E54E9E7F15957177E47F39 /* e_aes.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = e_aes.c; path = src/crypto/fipsmodule/cipher/e_aes.c; sourceTree = "<group>"; };
+		62071B304090D7B150D547B8FD3FA952 /* oauth2_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = oauth2_credentials.cc; path = src/core/lib/security/credentials/oauth2/oauth2_credentials.cc; sourceTree = "<group>"; };
 		621DE901C75F78530C7A0F9A70DEC2CE /* migrate.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = migrate.upb.h; path = "src/core/ext/upb-generated/udpa/annotations/migrate.upb.h"; sourceTree = "<group>"; };
-		622389A45959026A81256D61C2C2FDEE /* x_req.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x_req.c; path = src/crypto/x509/x_req.c; sourceTree = "<group>"; };
+		622389A45959026A81256D61C2C2FDEE /* x_req.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x_req.c; path = src/crypto/x509/x_req.c; sourceTree = "<group>"; };
 		623FCA48720B51A227D3B6DFF569F477 /* FIRStorageTask.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageTask.h; path = FirebaseStorage/Sources/Public/FirebaseStorage/FIRStorageTask.h; sourceTree = "<group>"; };
-		624863DCA9535435A9021216D2BBEF31 /* thread.c */ = {isa = PBXFileReference; includeInIndex = 1; name = thread.c; path = src/crypto/thread.c; sourceTree = "<group>"; };
+		624863DCA9535435A9021216D2BBEF31 /* thread.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = thread.c; path = src/crypto/thread.c; sourceTree = "<group>"; };
 		6248C1AC40396C89C910538D1F47D305 /* log_writer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = log_writer.h; path = db/log_writer.h; sourceTree = "<group>"; };
-		624D909FA2F574BB76BE717A26F9349A /* plugin_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = plugin_credentials.cc; path = src/core/lib/security/credentials/plugin/plugin_credentials.cc; sourceTree = "<group>"; };
-		626B09F6E46B2A99FD2A3523DC651EF5 /* cycleclock.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = cycleclock.cc; path = absl/base/internal/cycleclock.cc; sourceTree = "<group>"; };
-		6271D9390182203CFCF9C4AE48E80E45 /* err.c */ = {isa = PBXFileReference; includeInIndex = 1; name = err.c; path = src/crypto/err/err.c; sourceTree = "<group>"; };
+		624D909FA2F574BB76BE717A26F9349A /* plugin_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = plugin_credentials.cc; path = src/core/lib/security/credentials/plugin/plugin_credentials.cc; sourceTree = "<group>"; };
+		626B09F6E46B2A99FD2A3523DC651EF5 /* cycleclock.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = cycleclock.cc; path = absl/base/internal/cycleclock.cc; sourceTree = "<group>"; };
+		6271D9390182203CFCF9C4AE48E80E45 /* err.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = err.c; path = src/crypto/err/err.c; sourceTree = "<group>"; };
 		627815E9B8DE972DF2B45994465A54C1 /* global_config.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = global_config.h; path = src/core/lib/gprpp/global_config.h; sourceTree = "<group>"; };
-		628E374253E4171B5EAA2ADCEEB27DAA /* cpu-arm-linux.c */ = {isa = PBXFileReference; includeInIndex = 1; name = "cpu-arm-linux.c"; path = "src/crypto/cpu-arm-linux.c"; sourceTree = "<group>"; };
+		628E374253E4171B5EAA2ADCEEB27DAA /* cpu-arm-linux.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = "cpu-arm-linux.c"; path = "src/crypto/cpu-arm-linux.c"; sourceTree = "<group>"; };
 		62942CE42D532C26E06163C8C1D24890 /* FBLPromise+All.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "FBLPromise+All.m"; path = "Sources/FBLPromises/FBLPromise+All.m"; sourceTree = "<group>"; };
 		62B38F35A37FF5B5DB2581AE0BDC13E4 /* FIRGetAccountInfoResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRGetAccountInfoResponse.h; path = FirebaseAuth/Sources/Backend/RPC/FIRGetAccountInfoResponse.h; sourceTree = "<group>"; };
 		62CF24A3997EF8FA2A61A6C180A7F295 /* xds_channel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = xds_channel.h; path = src/core/ext/filters/client_channel/xds/xds_channel.h; sourceTree = "<group>"; };
 		62DD33AE60FA29238E23FA23B7F2FEB4 /* percent_encoding.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = percent_encoding.h; path = src/core/lib/slice/percent_encoding.h; sourceTree = "<group>"; };
-		62F4793E446D7A7FE7879C48F8359AA6 /* print.c */ = {isa = PBXFileReference; includeInIndex = 1; name = print.c; path = src/crypto/evp/print.c; sourceTree = "<group>"; };
+		62F4793E446D7A7FE7879C48F8359AA6 /* print.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = print.c; path = src/crypto/evp/print.c; sourceTree = "<group>"; };
 		62FB24772374D806288DAA10EDCE5A3F /* timeout_encoding.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = timeout_encoding.h; path = src/core/lib/transport/timeout_encoding.h; sourceTree = "<group>"; };
-		630528C19EE5F9623D2ED45D48068A6F /* leveldb_persistence.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = leveldb_persistence.cc; path = Firestore/core/src/local/leveldb_persistence.cc; sourceTree = "<group>"; };
-		630BFF23EA8AC296099293CC13A0BB3A /* filter_policy.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = filter_policy.cc; path = util/filter_policy.cc; sourceTree = "<group>"; };
+		630528C19EE5F9623D2ED45D48068A6F /* leveldb_persistence.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = leveldb_persistence.cc; path = Firestore/core/src/local/leveldb_persistence.cc; sourceTree = "<group>"; };
+		630BFF23EA8AC296099293CC13A0BB3A /* filter_policy.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = filter_policy.cc; path = util/filter_policy.cc; sourceTree = "<group>"; };
 		6324F14FA52BF95D7CE74D397F03ECAE /* GTMSessionFetcher-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "GTMSessionFetcher-prefix.pch"; sourceTree = "<group>"; };
-		63255232077253F5A71D8EA895B5DA85 /* a_bitstr.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_bitstr.c; path = src/crypto/asn1/a_bitstr.c; sourceTree = "<group>"; };
+		63255232077253F5A71D8EA895B5DA85 /* a_bitstr.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_bitstr.c; path = src/crypto/asn1/a_bitstr.c; sourceTree = "<group>"; };
 		632E7109234D5FFE85A3888EBB65EB48 /* FIRAuthProtoMFAEnrollment.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthProtoMFAEnrollment.m; path = FirebaseAuth/Sources/Backend/RPC/Proto/FIRAuthProtoMFAEnrollment.m; sourceTree = "<group>"; };
-		63392F63CB50B5BFA74B6A5527503AC8 /* prime.c */ = {isa = PBXFileReference; includeInIndex = 1; name = prime.c; path = src/crypto/fipsmodule/bn/prime.c; sourceTree = "<group>"; };
-		634AFAD521404FB0055439E8DFE8A41D /* conf.c */ = {isa = PBXFileReference; includeInIndex = 1; name = conf.c; path = src/crypto/conf/conf.c; sourceTree = "<group>"; };
+		63392F63CB50B5BFA74B6A5527503AC8 /* prime.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = prime.c; path = src/crypto/fipsmodule/bn/prime.c; sourceTree = "<group>"; };
+		634AFAD521404FB0055439E8DFE8A41D /* conf.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = conf.c; path = src/crypto/conf/conf.c; sourceTree = "<group>"; };
 		634DDF5D49BA4A951CE4CE2D3A00E1F9 /* client_authority_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_authority_filter.h; path = src/core/ext/filters/http/client_authority_filter.h; sourceTree = "<group>"; };
-		6352D66A61DBD7AD920189454CB232DF /* thread_manager.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = thread_manager.cc; path = src/cpp/thread_manager/thread_manager.cc; sourceTree = "<group>"; };
+		6352D66A61DBD7AD920189454CB232DF /* thread_manager.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = thread_manager.cc; path = src/cpp/thread_manager/thread_manager.cc; sourceTree = "<group>"; };
 		63530928ED68BF7FBBA91D3D98D4C266 /* authority.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = authority.h; path = src/core/ext/transport/chttp2/client/authority.h; sourceTree = "<group>"; };
-		6366F2A1EBA88147C57D3C69FAC17BBC /* v3_pcia.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_pcia.c; path = src/crypto/x509v3/v3_pcia.c; sourceTree = "<group>"; };
+		6366F2A1EBA88147C57D3C69FAC17BBC /* v3_pcia.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_pcia.c; path = src/crypto/x509v3/v3_pcia.c; sourceTree = "<group>"; };
 		639459D892FAB9716DDB949A2251E6FE /* handshaker_registry.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = handshaker_registry.h; path = src/core/lib/channel/handshaker_registry.h; sourceTree = "<group>"; };
 		6394A317CECF39E7C116B5ACF7692755 /* compression.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = compression.h; path = include/grpc/compression.h; sourceTree = "<group>"; };
 		63C6A080F4CDB28D956B723248697800 /* thread_annotations.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = thread_annotations.h; path = absl/base/internal/thread_annotations.h; sourceTree = "<group>"; };
@@ -9608,10 +9609,10 @@
 		63D9647A0688774106C458D04C635DB3 /* resource_quota_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resource_quota_impl.h; path = include/grpcpp/resource_quota_impl.h; sourceTree = "<group>"; };
 		63ED7D771A82D8DF73214E29F5B3F3DD /* frame_data.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = frame_data.h; path = src/core/ext/transport/chttp2/transport/frame_data.h; sourceTree = "<group>"; };
 		63F39C9E0AC4383D49470EA4738E3E51 /* GDTCOREventDataObject.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCOREventDataObject.h; path = GoogleDataTransport/GDTCORLibrary/Public/GoogleDataTransport/GDTCOREventDataObject.h; sourceTree = "<group>"; };
-		640A5773E753C9A3DC19FE14FDEA164B /* client_channel_channelz.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = client_channel_channelz.cc; path = src/core/ext/filters/client_channel/client_channel_channelz.cc; sourceTree = "<group>"; };
+		640A5773E753C9A3DC19FE14FDEA164B /* client_channel_channelz.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = client_channel_channelz.cc; path = src/core/ext/filters/client_channel/client_channel_channelz.cc; sourceTree = "<group>"; };
 		64387FF1ECF693628D75EC7DD59DE4AB /* grpclb_client_stats.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpclb_client_stats.h; path = src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h; sourceTree = "<group>"; };
-		643AC532B4B0F8CD31FDCB60ED092C95 /* compression_args.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = compression_args.cc; path = src/core/lib/compression/compression_args.cc; sourceTree = "<group>"; };
-		644308F92FF1C05E7FA7F1689112A030 /* time_averaged_stats.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = time_averaged_stats.cc; path = src/core/lib/iomgr/time_averaged_stats.cc; sourceTree = "<group>"; };
+		643AC532B4B0F8CD31FDCB60ED092C95 /* compression_args.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = compression_args.cc; path = src/core/lib/compression/compression_args.cc; sourceTree = "<group>"; };
+		644308F92FF1C05E7FA7F1689112A030 /* time_averaged_stats.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = time_averaged_stats.cc; path = src/core/lib/iomgr/time_averaged_stats.cc; sourceTree = "<group>"; };
 		645606F95CF1FECE496965B8349CBDC2 /* ecdsa.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ecdsa.h; path = src/include/openssl/ecdsa.h; sourceTree = "<group>"; };
 		6459B8ECDF931BB92E6C22B0C54A95FE /* max_age_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = max_age_filter.h; path = src/core/ext/filters/max_age/max_age_filter.h; sourceTree = "<group>"; };
 		649ED262B9288D5038CBDD2D09AE9378 /* async_unary_call_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = async_unary_call_impl.h; path = include/grpcpp/impl/codegen/async_unary_call_impl.h; sourceTree = "<group>"; };
@@ -9621,16 +9622,16 @@
 		64CC6722179792977D4316DAB537DDF5 /* FIRLoggerLevel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRLoggerLevel.h; path = FirebaseCore/Sources/Public/FirebaseCore/FIRLoggerLevel.h; sourceTree = "<group>"; };
 		64DB71E17EB64EA09D5AF8CB6BE42894 /* time_precise.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = time_precise.h; path = src/core/lib/gpr/time_precise.h; sourceTree = "<group>"; };
 		64FD1712666DA892143373E73C2728D8 /* FIRStorage_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorage_Private.h; path = FirebaseStorage/Sources/FIRStorage_Private.h; sourceTree = "<group>"; };
-		651A859E5F98F55770FAD832467E7C60 /* memory_mutation_queue.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = memory_mutation_queue.cc; path = Firestore/core/src/local/memory_mutation_queue.cc; sourceTree = "<group>"; };
-		653E2F590644A91956C2F2D739DD5CEC /* cipher.c */ = {isa = PBXFileReference; includeInIndex = 1; name = cipher.c; path = src/crypto/fipsmodule/cipher/cipher.c; sourceTree = "<group>"; };
+		651A859E5F98F55770FAD832467E7C60 /* memory_mutation_queue.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = memory_mutation_queue.cc; path = Firestore/core/src/local/memory_mutation_queue.cc; sourceTree = "<group>"; };
+		653E2F590644A91956C2F2D739DD5CEC /* cipher.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = cipher.c; path = src/crypto/fipsmodule/cipher/cipher.c; sourceTree = "<group>"; };
 		65403D714A9C9DD07ADC3DA502A74573 /* timer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = timer.h; path = src/core/lib/iomgr/timer.h; sourceTree = "<group>"; };
 		6541C641445F2DEDD9B3599D04F1A3B2 /* digest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = digest.h; path = src/include/openssl/digest.h; sourceTree = "<group>"; };
-		654D37841CDA80594CFECF538253541B /* insecure_server_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = insecure_server_credentials.cc; path = src/cpp/server/insecure_server_credentials.cc; sourceTree = "<group>"; };
+		654D37841CDA80594CFECF538253541B /* insecure_server_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = insecure_server_credentials.cc; path = src/cpp/server/insecure_server_credentials.cc; sourceTree = "<group>"; };
 		6566E87E6F5365CC445BBA1627F84C90 /* handshaker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = handshaker.h; path = src/core/lib/channel/handshaker.h; sourceTree = "<group>"; };
 		6574A684CAB7F040233F5958BDEA9F38 /* FIRAuthCredential_Internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthCredential_Internal.h; path = FirebaseAuth/Sources/AuthProvider/FIRAuthCredential_Internal.h; sourceTree = "<group>"; };
-		6590B759B75F1B96FC5E2DD839DD73AE /* FIRDocumentReference.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FIRDocumentReference.mm; path = Firestore/Source/API/FIRDocumentReference.mm; sourceTree = "<group>"; };
+		6590B759B75F1B96FC5E2DD839DD73AE /* FIRDocumentReference.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FIRDocumentReference.mm; path = Firestore/Source/API/FIRDocumentReference.mm; sourceTree = "<group>"; };
 		65BC1324CAD516D579F78AC8A08DA9B8 /* string.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = string.upb.h; path = "src/core/ext/upb-generated/envoy/type/matcher/string.upb.h"; sourceTree = "<group>"; };
-		65BC474A6664BE143367E5E37FCDB3F2 /* ostringstream.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ostringstream.cc; path = absl/strings/internal/ostringstream.cc; sourceTree = "<group>"; };
+		65BC474A6664BE143367E5E37FCDB3F2 /* ostringstream.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ostringstream.cc; path = absl/strings/internal/ostringstream.cc; sourceTree = "<group>"; };
 		65C52029666B84FD50E919193FC699CF /* x509v3.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = x509v3.h; path = src/include/openssl/x509v3.h; sourceTree = "<group>"; };
 		660B00AA08D3A81CB1FB41BDB710243E /* method_handler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = method_handler.h; path = include/grpcpp/impl/codegen/method_handler.h; sourceTree = "<group>"; };
 		6625C7F28EC72F2CFD6944799DF20FB7 /* gRPC-C++.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "gRPC-C++.modulemap"; sourceTree = "<group>"; };
@@ -9639,9 +9640,9 @@
 		664580C1921BD57E8A15D68286769809 /* timestamp.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = timestamp.upb.h; path = "src/core/ext/upb-generated/google/protobuf/timestamp.upb.h"; sourceTree = "<group>"; };
 		669C7C4770F8043F981F0CA792A0C20A /* FIRDeleteAccountResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRDeleteAccountResponse.m; path = FirebaseAuth/Sources/Backend/RPC/FIRDeleteAccountResponse.m; sourceTree = "<group>"; };
 		66B3434F6217F6C92F90EA3DCC42004E /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/hrss/internal.h; sourceTree = "<group>"; };
-		66D425422CE35AA17235D3BDFE763877 /* dumpfile.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = dumpfile.cc; path = db/dumpfile.cc; sourceTree = "<group>"; };
+		66D425422CE35AA17235D3BDFE763877 /* dumpfile.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = dumpfile.cc; path = db/dumpfile.cc; sourceTree = "<group>"; };
 		670BF72C27423B2D1D2CF1B84391B291 /* GULSceneDelegateSwizzler_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULSceneDelegateSwizzler_Private.h; path = GoogleUtilities/AppDelegateSwizzler/Internal/GULSceneDelegateSwizzler_Private.h; sourceTree = "<group>"; };
-		6710389D89EAFE3C15E940C1FDE8F7E8 /* dsa.c */ = {isa = PBXFileReference; includeInIndex = 1; name = dsa.c; path = src/crypto/dsa/dsa.c; sourceTree = "<group>"; };
+		6710389D89EAFE3C15E940C1FDE8F7E8 /* dsa.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = dsa.c; path = src/crypto/dsa/dsa.c; sourceTree = "<group>"; };
 		67129950B104FE4CB0136A2067F2C3B7 /* grpclb_client_stats.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpclb_client_stats.h; path = src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h; sourceTree = "<group>"; };
 		6719826E715D253748A8EC987578E166 /* FIRUser.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRUser.m; path = FirebaseAuth/Sources/User/FIRUser.m; sourceTree = "<group>"; };
 		67206B1BA059C8890E29E6D067519485 /* pb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = pb.h; sourceTree = "<group>"; };
@@ -9649,133 +9650,133 @@
 		6748BCC0196C5276F5830B419801AA56 /* inproc_transport.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = inproc_transport.h; path = src/core/ext/transport/inproc/inproc_transport.h; sourceTree = "<group>"; };
 		6770704D1A0AB65779BD5646576C71E9 /* GULURLSessionDataResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULURLSessionDataResponse.h; path = GoogleUtilities/Environment/Public/GoogleUtilities/GULURLSessionDataResponse.h; sourceTree = "<group>"; };
 		6772678010C3BC35F0CE4DB54981C3D4 /* config.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = config.h; path = absl/base/config.h; sourceTree = "<group>"; };
-		67AF0763909F1F1966FC5BBE5312E057 /* env.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = env.cc; path = util/env.cc; sourceTree = "<group>"; };
-		67BC2525C9E944576D3DDB273E8E57F7 /* range.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = range.upb.c; path = "src/core/ext/upb-generated/envoy/type/range.upb.c"; sourceTree = "<group>"; };
+		67AF0763909F1F1966FC5BBE5312E057 /* env.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = env.cc; path = util/env.cc; sourceTree = "<group>"; };
+		67BC2525C9E944576D3DDB273E8E57F7 /* range.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = range.upb.c; path = "src/core/ext/upb-generated/envoy/type/range.upb.c"; sourceTree = "<group>"; };
 		67E2E3B34F1890818ED67320C9869A94 /* transport_security_interface.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = transport_security_interface.h; path = src/core/tsi/transport_security_interface.h; sourceTree = "<group>"; };
-		67E4A1C23911714BAB4069BAA1E6B24A /* scalar.c */ = {isa = PBXFileReference; includeInIndex = 1; name = scalar.c; path = src/crypto/fipsmodule/ec/scalar.c; sourceTree = "<group>"; };
+		67E4A1C23911714BAB4069BAA1E6B24A /* scalar.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = scalar.c; path = src/crypto/fipsmodule/ec/scalar.c; sourceTree = "<group>"; };
 		6810DA2E97CC08D5256DE07B1C76052A /* status.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = status.upb.h; path = "src/core/ext/upb-generated/google/rpc/status.upb.h"; sourceTree = "<group>"; };
-		681B18AF66975F69D25B668CC4CA1DA9 /* field_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = field_filter.cc; path = Firestore/core/src/core/field_filter.cc; sourceTree = "<group>"; };
+		681B18AF66975F69D25B668CC4CA1DA9 /* field_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = field_filter.cc; path = Firestore/core/src/core/field_filter.cc; sourceTree = "<group>"; };
 		6827EEC156BC9A6EC33BE066B708A302 /* FirebaseCore.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FirebaseCore.h; path = FirebaseCore/Sources/Public/FirebaseCore/FirebaseCore.h; sourceTree = "<group>"; };
-		6845C3D9668CFCC76E63450E5D51A589 /* dtls_method.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = dtls_method.cc; path = src/ssl/dtls_method.cc; sourceTree = "<group>"; };
-		6862761C32E6C506C707B443B9C3FADA /* a_i2d_fp.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_i2d_fp.c; path = src/crypto/asn1/a_i2d_fp.c; sourceTree = "<group>"; };
+		6845C3D9668CFCC76E63450E5D51A589 /* dtls_method.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = dtls_method.cc; path = src/ssl/dtls_method.cc; sourceTree = "<group>"; };
+		6862761C32E6C506C707B443B9C3FADA /* a_i2d_fp.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_i2d_fp.c; path = src/crypto/asn1/a_i2d_fp.c; sourceTree = "<group>"; };
 		6866EB08B263FDAE21FC2B284F0202E4 /* thread_pool_interface.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = thread_pool_interface.h; path = src/cpp/server/thread_pool_interface.h; sourceTree = "<group>"; };
-		68713B51CF9879E8027D236A0501935A /* gethostname_fallback.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = gethostname_fallback.cc; path = src/core/lib/iomgr/gethostname_fallback.cc; sourceTree = "<group>"; };
-		68E203EE60A591EEE8996E643AAEE037 /* FIRFieldValue.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FIRFieldValue.mm; path = Firestore/Source/API/FIRFieldValue.mm; sourceTree = "<group>"; };
+		68713B51CF9879E8027D236A0501935A /* gethostname_fallback.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = gethostname_fallback.cc; path = src/core/lib/iomgr/gethostname_fallback.cc; sourceTree = "<group>"; };
+		68E203EE60A591EEE8996E643AAEE037 /* FIRFieldValue.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FIRFieldValue.mm; path = Firestore/Source/API/FIRFieldValue.mm; sourceTree = "<group>"; };
 		68E43D323642FD0B83D6EDE2494F3278 /* transport_security.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = transport_security.h; path = src/core/tsi/transport_security.h; sourceTree = "<group>"; };
 		68F391D6787F5655282C256B71374AC8 /* any.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = any.upb.h; path = "src/core/ext/upb-generated/google/protobuf/any.upb.h"; sourceTree = "<group>"; };
 		68F42793FFA75A01900B34E6BC71B4A3 /* core_codegen_interface.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = core_codegen_interface.h; path = include/grpcpp/impl/codegen/core_codegen_interface.h; sourceTree = "<group>"; };
-		68F5354F7019B49A6F145343CBB7F131 /* alts_seal_privacy_integrity_crypter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alts_seal_privacy_integrity_crypter.cc; path = src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc; sourceTree = "<group>"; };
+		68F5354F7019B49A6F145343CBB7F131 /* alts_seal_privacy_integrity_crypter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alts_seal_privacy_integrity_crypter.cc; path = src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc; sourceTree = "<group>"; };
 		68FB03EE9C890B6828A5B798C911DABB /* FIRAuthAPNSToken.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthAPNSToken.m; path = FirebaseAuth/Sources/SystemService/FIRAuthAPNSToken.m; sourceTree = "<group>"; };
 		690D795E77B445A9FDDB8C2303376DBF /* FIRSetAccountInfoResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRSetAccountInfoResponse.m; path = FirebaseAuth/Sources/Backend/RPC/FIRSetAccountInfoResponse.m; sourceTree = "<group>"; };
 		694A49B6AB625D7F4C5D16C381842787 /* scoped_route.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = scoped_route.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/scoped_route.upb.h"; sourceTree = "<group>"; };
 		694B7AC0DA3244FBB618C3DF8CEB4E49 /* upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = upb.h; path = third_party/upb/upb/upb.h; sourceTree = "<group>"; };
-		6973DB46EF11EF6C76D9BE5A65DC364D /* format_request.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = format_request.cc; path = src/core/lib/http/format_request.cc; sourceTree = "<group>"; };
-		69F456FEE2767F440330165E8B730320 /* lrs.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = lrs.upb.c; path = "src/core/ext/upb-generated/envoy/service/load_stats/v2/lrs.upb.c"; sourceTree = "<group>"; };
-		6A1029F56EDE981916A9244020A865FA /* socket_utils_uv.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = socket_utils_uv.cc; path = src/core/lib/iomgr/socket_utils_uv.cc; sourceTree = "<group>"; };
-		6A3C30CBED549F479C912760AF5DBD48 /* pem_oth.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pem_oth.c; path = src/crypto/pem/pem_oth.c; sourceTree = "<group>"; };
+		6973DB46EF11EF6C76D9BE5A65DC364D /* format_request.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = format_request.cc; path = src/core/lib/http/format_request.cc; sourceTree = "<group>"; };
+		69F456FEE2767F440330165E8B730320 /* lrs.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = lrs.upb.c; path = "src/core/ext/upb-generated/envoy/service/load_stats/v2/lrs.upb.c"; sourceTree = "<group>"; };
+		6A1029F56EDE981916A9244020A865FA /* socket_utils_uv.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = socket_utils_uv.cc; path = src/core/lib/iomgr/socket_utils_uv.cc; sourceTree = "<group>"; };
+		6A3C30CBED549F479C912760AF5DBD48 /* pem_oth.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pem_oth.c; path = src/crypto/pem/pem_oth.c; sourceTree = "<group>"; };
 		6A4B2CD01ECDCD28F587F9DC33389F2E /* BoringSSL-GRPC.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "BoringSSL-GRPC.release.xcconfig"; sourceTree = "<group>"; };
 		6A9E7241C647616738079E49518BF7A1 /* FIRSecureTokenService.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRSecureTokenService.m; path = FirebaseAuth/Sources/SystemService/FIRSecureTokenService.m; sourceTree = "<group>"; };
 		6AAD0002D89A7C5CAB6D7EA5F382DF84 /* string_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = string_windows.h; path = src/core/lib/gpr/string_windows.h; sourceTree = "<group>"; };
-		6AAEF33592307854092E315F3CBDE500 /* security_connector.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = security_connector.cc; path = src/core/lib/security/security_connector/security_connector.cc; sourceTree = "<group>"; };
-		6ADCA888A41DC638E3EBD1F3FB4B1432 /* tcp_uv.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tcp_uv.cc; path = src/core/lib/iomgr/tcp_uv.cc; sourceTree = "<group>"; };
-		6ADF189F11208A973569B3838248C170 /* client_channel_plugin.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = client_channel_plugin.cc; path = src/core/ext/filters/client_channel/client_channel_plugin.cc; sourceTree = "<group>"; };
+		6AAEF33592307854092E315F3CBDE500 /* security_connector.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = security_connector.cc; path = src/core/lib/security/security_connector/security_connector.cc; sourceTree = "<group>"; };
+		6ADCA888A41DC638E3EBD1F3FB4B1432 /* tcp_uv.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tcp_uv.cc; path = src/core/lib/iomgr/tcp_uv.cc; sourceTree = "<group>"; };
+		6ADF189F11208A973569B3838248C170 /* client_channel_plugin.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = client_channel_plugin.cc; path = src/core/ext/filters/client_channel/client_channel_plugin.cc; sourceTree = "<group>"; };
 		6AF56FE4A43E7763EDBE84CB3F418AB7 /* socket_factory_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = socket_factory_posix.h; path = src/core/lib/iomgr/socket_factory_posix.h; sourceTree = "<group>"; };
 		6B09495B8AA28419FC0DD5E1B72A63F5 /* port.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = port.h; path = absl/base/port.h; sourceTree = "<group>"; };
-		6B3A7B749ECD49E349681A5D7B47992C /* sensitive.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = sensitive.upb.c; path = "src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c"; sourceTree = "<group>"; };
+		6B3A7B749ECD49E349681A5D7B47992C /* sensitive.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = sensitive.upb.c; path = "src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c"; sourceTree = "<group>"; };
 		6B3C181D1788EBCCE0A61415A91366AF /* nid.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = nid.h; path = src/include/openssl/nid.h; sourceTree = "<group>"; };
 		6B578D8A7B4CA2F6147326C1106DFCE3 /* ssl_utils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl_utils.h; path = src/core/lib/security/security_connector/ssl_utils.h; sourceTree = "<group>"; };
 		6B68BDE0942CE5D6A9387FFD0B052690 /* generated_util.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = generated_util.h; path = third_party/upb/upb/generated_util.h; sourceTree = "<group>"; };
 		6B772147E4E370799528F1F95A005673 /* fake_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = fake_credentials.h; path = src/core/lib/security/credentials/fake/fake_credentials.h; sourceTree = "<group>"; };
-		6B8F0D9DA239D870C04A44CD6D6CA397 /* precondition.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = precondition.cc; path = Firestore/core/src/model/precondition.cc; sourceTree = "<group>"; };
-		6B9564BD021913D93E0A86C8E213E5D4 /* ecdsa_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; name = ecdsa_asn1.c; path = src/crypto/ecdsa_extra/ecdsa_asn1.c; sourceTree = "<group>"; };
+		6B8F0D9DA239D870C04A44CD6D6CA397 /* precondition.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = precondition.cc; path = Firestore/core/src/model/precondition.cc; sourceTree = "<group>"; };
+		6B9564BD021913D93E0A86C8E213E5D4 /* ecdsa_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = ecdsa_asn1.c; path = src/crypto/ecdsa_extra/ecdsa_asn1.c; sourceTree = "<group>"; };
 		6B99BEDB77660D5CEB44B43B7688377E /* lockfree_event.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = lockfree_event.h; path = src/core/lib/iomgr/lockfree_event.h; sourceTree = "<group>"; };
-		6BA7E057405AE32896D2F00FEC4D7347 /* document_key_reference.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = document_key_reference.cc; path = Firestore/core/src/local/document_key_reference.cc; sourceTree = "<group>"; };
+		6BA7E057405AE32896D2F00FEC4D7347 /* document_key_reference.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = document_key_reference.cc; path = Firestore/core/src/local/document_key_reference.cc; sourceTree = "<group>"; };
 		6BA871A1E2B83996C86630BD15FFA419 /* dumpfile.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = dumpfile.h; path = include/leveldb/dumpfile.h; sourceTree = "<group>"; };
 		6BB53BCC049995C17DD0DDC93CC3E8F4 /* lb_policy.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = lb_policy.h; path = src/core/ext/filters/client_channel/lb_policy.h; sourceTree = "<group>"; };
 		6BDAA0FB3EA4DCF0DE7C84C7C1CDEF01 /* fake_resolver.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = fake_resolver.h; path = src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h; sourceTree = "<group>"; };
 		6BE7ECBEC2C73C3201EE9B81FB343FFE /* auth_context.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = auth_context.h; path = include/grpcpp/security/auth_context.h; sourceTree = "<group>"; };
 		6BE8733A9223F6F96DB9E378CC162AC1 /* FIRUserMetadata.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRUserMetadata.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRUserMetadata.h; sourceTree = "<group>"; };
-		6BF7CF526219B222CFE17977ABA114A3 /* sockaddr_utils.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = sockaddr_utils.cc; path = src/core/lib/iomgr/sockaddr_utils.cc; sourceTree = "<group>"; };
-		6C04C3CF79514D08F59B2FA74D171C47 /* grpc_if_nametoindex_unsupported.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_if_nametoindex_unsupported.cc; path = src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc; sourceTree = "<group>"; };
-		6C08B7C6B9CEB525944F7063101DE6BE /* oct.c */ = {isa = PBXFileReference; includeInIndex = 1; name = oct.c; path = src/crypto/fipsmodule/ec/oct.c; sourceTree = "<group>"; };
+		6BF7CF526219B222CFE17977ABA114A3 /* sockaddr_utils.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = sockaddr_utils.cc; path = src/core/lib/iomgr/sockaddr_utils.cc; sourceTree = "<group>"; };
+		6C04C3CF79514D08F59B2FA74D171C47 /* grpc_if_nametoindex_unsupported.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_if_nametoindex_unsupported.cc; path = src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc; sourceTree = "<group>"; };
+		6C08B7C6B9CEB525944F7063101DE6BE /* oct.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = oct.c; path = src/crypto/fipsmodule/ec/oct.c; sourceTree = "<group>"; };
 		6C1DF0764AD601774A321E20E7D3AF28 /* escaping.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = escaping.h; path = absl/strings/internal/escaping.h; sourceTree = "<group>"; };
 		6C2F18CED1C562AE8ED589B91E350C80 /* GULLoggerCodes.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULLoggerCodes.h; path = GoogleUtilities/Common/GULLoggerCodes.h; sourceTree = "<group>"; };
 		6C4332D23F891D46D4169008B79FE324 /* FIRMultiFactorInfo+Internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FIRMultiFactorInfo+Internal.h"; path = "FirebaseAuth/Sources/MultiFactor/FIRMultiFactorInfo+Internal.h"; sourceTree = "<group>"; };
-		6C4399EA96D7A19377D7425D31CBFC73 /* custom_tag.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = custom_tag.upb.c; path = "src/core/ext/upb-generated/envoy/type/tracing/v2/custom_tag.upb.c"; sourceTree = "<group>"; };
+		6C4399EA96D7A19377D7425D31CBFC73 /* custom_tag.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = custom_tag.upb.c; path = "src/core/ext/upb-generated/envoy/type/tracing/v2/custom_tag.upb.c"; sourceTree = "<group>"; };
 		6C47F29DA61BB9236D847EF26FA1ABEB /* channel_init.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channel_init.h; path = src/core/lib/surface/channel_init.h; sourceTree = "<group>"; };
-		6C55404036939F84708A46C2717B0413 /* d1_both.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = d1_both.cc; path = src/ssl/d1_both.cc; sourceTree = "<group>"; };
+		6C55404036939F84708A46C2717B0413 /* d1_both.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = d1_both.cc; path = src/ssl/d1_both.cc; sourceTree = "<group>"; };
 		6C629FB99E8C940D1CE7399C0FD9C9E9 /* GDTCORStorageEventSelector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORStorageEventSelector.h; path = GoogleDataTransport/GDTCORLibrary/Internal/GDTCORStorageEventSelector.h; sourceTree = "<group>"; };
 		6C78D2CFA13CC0A732C298A31C0E9A9D /* call.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = call.h; path = include/grpcpp/impl/call.h; sourceTree = "<group>"; };
 		6C84A01F9C3949981D5B968B9669F0C2 /* xds_api.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = xds_api.h; path = src/core/ext/filters/client_channel/xds/xds_api.h; sourceTree = "<group>"; };
 		6C8A0C606FE5776B7176FAD38C5521B8 /* GULMutableDictionary.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GULMutableDictionary.m; path = GoogleUtilities/Network/GULMutableDictionary.m; sourceTree = "<group>"; };
 		6CB4D433F9F339062F961D93071BC2CC /* rpc_method.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = rpc_method.h; path = include/grpcpp/impl/rpc_method.h; sourceTree = "<group>"; };
 		6CCB7EA8526BF456CF6614A21F9B6B81 /* GULNetworkLoggerProtocol.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULNetworkLoggerProtocol.h; path = GoogleUtilities/Network/Public/GoogleUtilities/GULNetworkLoggerProtocol.h; sourceTree = "<group>"; };
-		6CCBA8A50425231462B3067E2686B739 /* hmac.c */ = {isa = PBXFileReference; includeInIndex = 1; name = hmac.c; path = src/crypto/fipsmodule/hmac/hmac.c; sourceTree = "<group>"; };
+		6CCBA8A50425231462B3067E2686B739 /* hmac.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = hmac.c; path = src/crypto/fipsmodule/hmac/hmac.c; sourceTree = "<group>"; };
 		6CD993856809DEFFA7AE02046FB7C63E /* FIRFinalizeMFAEnrollmentResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRFinalizeMFAEnrollmentResponse.m; path = FirebaseAuth/Sources/Backend/RPC/MultiFactor/Enroll/FIRFinalizeMFAEnrollmentResponse.m; sourceTree = "<group>"; };
 		6CE7EC6A04AA62D862BA623B284A6DD1 /* mem.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = mem.h; path = src/include/openssl/mem.h; sourceTree = "<group>"; };
 		6CFD5DA41227A4A327C8F58E0663745B /* posix_logger.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = posix_logger.h; path = util/posix_logger.h; sourceTree = "<group>"; };
-		6D11E0876DCDA098FB327C3BD0FBC47D /* fd.c */ = {isa = PBXFileReference; includeInIndex = 1; name = fd.c; path = src/crypto/bio/fd.c; sourceTree = "<group>"; };
-		6D12D3CA8101A7E278A4CC8C0F9D97E7 /* frame_settings.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = frame_settings.cc; path = src/core/ext/transport/chttp2/transport/frame_settings.cc; sourceTree = "<group>"; };
+		6D11E0876DCDA098FB327C3BD0FBC47D /* fd.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = fd.c; path = src/crypto/bio/fd.c; sourceTree = "<group>"; };
+		6D12D3CA8101A7E278A4CC8C0F9D97E7 /* frame_settings.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = frame_settings.cc; path = src/core/ext/transport/chttp2/transport/frame_settings.cc; sourceTree = "<group>"; };
 		6D27AD8DBAFB4110EA7C0830081B4354 /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/poly1305/internal.h; sourceTree = "<group>"; };
-		6D2DE616790EF85F2A19289CB122D8E5 /* bloom.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = bloom.cc; path = util/bloom.cc; sourceTree = "<group>"; };
-		6D56874DB972856CC631B045C0460D7D /* byte_stream_apple.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = byte_stream_apple.mm; path = Firestore/core/src/util/byte_stream_apple.mm; sourceTree = "<group>"; };
+		6D2DE616790EF85F2A19289CB122D8E5 /* bloom.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = bloom.cc; path = util/bloom.cc; sourceTree = "<group>"; };
+		6D56874DB972856CC631B045C0460D7D /* byte_stream_apple.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = byte_stream_apple.mm; path = Firestore/core/src/util/byte_stream_apple.mm; sourceTree = "<group>"; };
 		6D6292F42E5FBB08A0D4FD8A9B40833E /* BoringSSL-GRPC-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "BoringSSL-GRPC-prefix.pch"; sourceTree = "<group>"; };
 		6D6658D4DE164376E1D80038EBD85D5C /* tls_msvc.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tls_msvc.h; path = src/core/lib/gpr/tls_msvc.h; sourceTree = "<group>"; };
 		6D6AD58873CC71E95F73BC8469E8A46D /* time_zone_if.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = time_zone_if.h; path = absl/time/internal/cctz/src/time_zone_if.h; sourceTree = "<group>"; };
-		6D8B38A6EFDA000E47C18AD31D4CB3A4 /* dns_resolver_selection.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = dns_resolver_selection.cc; path = src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc; sourceTree = "<group>"; };
-		6D90B4EA4D464860188623B75E1520F5 /* grpc_ares_wrapper_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_ares_wrapper_posix.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc; sourceTree = "<group>"; };
+		6D8B38A6EFDA000E47C18AD31D4CB3A4 /* dns_resolver_selection.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = dns_resolver_selection.cc; path = src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc; sourceTree = "<group>"; };
+		6D90B4EA4D464860188623B75E1520F5 /* grpc_ares_wrapper_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_ares_wrapper_posix.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc; sourceTree = "<group>"; };
 		6DB5E8D7E4B5C7538FC13DC7CBBE8E7D /* FIRAuthURLPresenter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthURLPresenter.h; path = FirebaseAuth/Sources/Utilities/FIRAuthURLPresenter.h; sourceTree = "<group>"; };
 		6DC1F5FDC465992C55FD5DE38583DE8C /* FIRUserInfoImpl.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRUserInfoImpl.m; path = FirebaseAuth/Sources/User/FIRUserInfoImpl.m; sourceTree = "<group>"; };
 		6E16E44E6875F9FF86F63272F643FF77 /* grpc_tls_credentials_options.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpc_tls_credentials_options.h; path = src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h; sourceTree = "<group>"; };
 		6E4BDCC1DF224396A9F6DBF2DF67B6E4 /* tcp_client_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tcp_client_posix.h; path = src/core/lib/iomgr/tcp_client_posix.h; sourceTree = "<group>"; };
 		6E626208692F0A8034D26869C1FBAF43 /* FIRAuthDispatcher.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthDispatcher.h; path = FirebaseAuth/Sources/Auth/FIRAuthDispatcher.h; sourceTree = "<group>"; };
-		6E6363DC37183E62FB79FAFA66DC9710 /* backoff.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = backoff.cc; path = src/core/lib/backoff/backoff.cc; sourceTree = "<group>"; };
-		6EB53E99BF5AAF7B46D0DDFEC30D93FB /* arena.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = arena.cc; path = util/arena.cc; sourceTree = "<group>"; };
-		6EE39FF37A9F0D13F3F16B7C6CF247C5 /* write_batch.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = write_batch.cc; path = db/write_batch.cc; sourceTree = "<group>"; };
+		6E6363DC37183E62FB79FAFA66DC9710 /* backoff.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = backoff.cc; path = src/core/lib/backoff/backoff.cc; sourceTree = "<group>"; };
+		6EB53E99BF5AAF7B46D0DDFEC30D93FB /* arena.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = arena.cc; path = util/arena.cc; sourceTree = "<group>"; };
+		6EE39FF37A9F0D13F3F16B7C6CF247C5 /* write_batch.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = write_batch.cc; path = db/write_batch.cc; sourceTree = "<group>"; };
 		6EF15A2E80CB18CE6E7B3B829715293D /* ev_epoll1_linux.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ev_epoll1_linux.h; path = src/core/lib/iomgr/ev_epoll1_linux.h; sourceTree = "<group>"; };
-		6EFA248BC02338F7F31C1793E6ACBADA /* ssl_session.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_session.cc; path = src/ssl/ssl_session.cc; sourceTree = "<group>"; };
+		6EFA248BC02338F7F31C1793E6ACBADA /* ssl_session.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_session.cc; path = src/ssl/ssl_session.cc; sourceTree = "<group>"; };
 		6F0177044946E525A9517D2BA5C43A72 /* GoogleUtilities.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = GoogleUtilities.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		6F051CCE9A0816AA42B5A1A1141E6071 /* http_client_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = http_client_filter.h; path = src/core/ext/filters/http/client/http_client_filter.h; sourceTree = "<group>"; };
 		6F1C46F7ECFCB93F743BB2A2C3040289 /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/pool/internal.h; sourceTree = "<group>"; };
-		6F32E3E74CE7A79AAB0BD486B1DA80E1 /* v3_info.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_info.c; path = src/crypto/x509v3/v3_info.c; sourceTree = "<group>"; };
+		6F32E3E74CE7A79AAB0BD486B1DA80E1 /* v3_info.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_info.c; path = src/crypto/x509v3/v3_info.c; sourceTree = "<group>"; };
 		6F5EFED85C71752061BACA871B82DB3B /* semantic_version.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = semantic_version.upb.h; path = "src/core/ext/upb-generated/envoy/type/semantic_version.upb.h"; sourceTree = "<group>"; };
-		6F652385298BD9847517100CAD787D98 /* murmur_hash.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = murmur_hash.cc; path = src/core/lib/gpr/murmur_hash.cc; sourceTree = "<group>"; };
+		6F652385298BD9847517100CAD787D98 /* murmur_hash.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = murmur_hash.cc; path = src/core/lib/gpr/murmur_hash.cc; sourceTree = "<group>"; };
 		6F6E57D55A38478950C05B77DF11E163 /* FIRCoreDiagnosticsConnector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRCoreDiagnosticsConnector.h; path = FirebaseCore/Sources/Private/FIRCoreDiagnosticsConnector.h; sourceTree = "<group>"; };
 		6F782B9E73B453FCB3E5C94230DBB346 /* FIRApp.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRApp.h; path = FirebaseCore/Sources/Public/FirebaseCore/FIRApp.h; sourceTree = "<group>"; };
-		6F7B688E9CBEA599AACFBFE4418B7F36 /* backup_poller.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = backup_poller.cc; path = src/core/ext/filters/client_channel/backup_poller.cc; sourceTree = "<group>"; };
-		6F8E14B801604B43B8C6C1A4F37AD8FF /* ev_epoll1_linux.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ev_epoll1_linux.cc; path = src/core/lib/iomgr/ev_epoll1_linux.cc; sourceTree = "<group>"; };
-		6FA11B58B852FED452955C9B9BA57B62 /* string_format.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = string_format.cc; path = Firestore/core/src/util/string_format.cc; sourceTree = "<group>"; };
-		6FA5F8EC779268D3DE53BC6C71D86EF6 /* p224-64.c */ = {isa = PBXFileReference; includeInIndex = 1; name = "p224-64.c"; path = "src/crypto/fipsmodule/ec/p224-64.c"; sourceTree = "<group>"; };
-		6FAA8A8D86779061904B265498D62F8D /* key_field_not_in_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = key_field_not_in_filter.cc; path = Firestore/core/src/core/key_field_not_in_filter.cc; sourceTree = "<group>"; };
+		6F7B688E9CBEA599AACFBFE4418B7F36 /* backup_poller.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = backup_poller.cc; path = src/core/ext/filters/client_channel/backup_poller.cc; sourceTree = "<group>"; };
+		6F8E14B801604B43B8C6C1A4F37AD8FF /* ev_epoll1_linux.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ev_epoll1_linux.cc; path = src/core/lib/iomgr/ev_epoll1_linux.cc; sourceTree = "<group>"; };
+		6FA11B58B852FED452955C9B9BA57B62 /* string_format.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = string_format.cc; path = Firestore/core/src/util/string_format.cc; sourceTree = "<group>"; };
+		6FA5F8EC779268D3DE53BC6C71D86EF6 /* p224-64.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = "p224-64.c"; path = "src/crypto/fipsmodule/ec/p224-64.c"; sourceTree = "<group>"; };
+		6FAA8A8D86779061904B265498D62F8D /* key_field_not_in_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = key_field_not_in_filter.cc; path = Firestore/core/src/core/key_field_not_in_filter.cc; sourceTree = "<group>"; };
 		6FAAF4F8C789000109E1C4F0D8E01219 /* srtp.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = srtp.h; path = src/include/openssl/srtp.h; sourceTree = "<group>"; };
 		6FC159D6E5907D97A57F324359E41DD9 /* firebasecore.nanopb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = firebasecore.nanopb.h; path = Firebase/CoreDiagnostics/FIRCDLibrary/Protogen/nanopb/firebasecore.nanopb.h; sourceTree = "<group>"; };
 		6FC2D88E62EF091FFCD77AD9A2DD3647 /* config.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = config.h; path = include/grpcpp/support/config.h; sourceTree = "<group>"; };
 		6FCE931882FEE6AD8E09DECCCF8017B4 /* FirebaseAuth-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "FirebaseAuth-Info.plist"; sourceTree = "<group>"; };
-		6FE4B489FD94EC47519A6CBA3E984B05 /* e_des.c */ = {isa = PBXFileReference; includeInIndex = 1; name = e_des.c; path = src/crypto/fipsmodule/cipher/e_des.c; sourceTree = "<group>"; };
+		6FE4B489FD94EC47519A6CBA3E984B05 /* e_des.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = e_des.c; path = src/crypto/fipsmodule/cipher/e_des.c; sourceTree = "<group>"; };
 		6FEA810EFB097AF08E39A2BB0EFD23CE /* wakeup_fd_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = wakeup_fd_posix.h; path = src/core/lib/iomgr/wakeup_fd_posix.h; sourceTree = "<group>"; };
 		6FF16F65538BBDFABFDA0C4435E6E9C9 /* varint.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = varint.h; path = src/core/ext/transport/chttp2/transport/varint.h; sourceTree = "<group>"; };
-		7002D67F28487CF75D1595AEC43E86FC /* chttp2_plugin.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = chttp2_plugin.cc; path = src/core/ext/transport/chttp2/transport/chttp2_plugin.cc; sourceTree = "<group>"; };
-		70162E01612D2F7EC7B204DCE1C1CC00 /* xds_resolver.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = xds_resolver.cc; path = src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc; sourceTree = "<group>"; };
-		70211B6D030909AB67CFEB1EF8F416A8 /* fake_resolver.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = fake_resolver.cc; path = src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc; sourceTree = "<group>"; };
+		7002D67F28487CF75D1595AEC43E86FC /* chttp2_plugin.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = chttp2_plugin.cc; path = src/core/ext/transport/chttp2/transport/chttp2_plugin.cc; sourceTree = "<group>"; };
+		70162E01612D2F7EC7B204DCE1C1CC00 /* xds_resolver.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = xds_resolver.cc; path = src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc; sourceTree = "<group>"; };
+		70211B6D030909AB67CFEB1EF8F416A8 /* fake_resolver.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = fake_resolver.cc; path = src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc; sourceTree = "<group>"; };
 		7031C699C2A43A22D9717C0AB3612618 /* huffsyms.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = huffsyms.h; path = src/core/ext/transport/chttp2/transport/huffsyms.h; sourceTree = "<group>"; };
-		704911731CCCA55B44F69810C873B8A4 /* fork.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = fork.cc; path = src/core/lib/gprpp/fork.cc; sourceTree = "<group>"; };
+		704911731CCCA55B44F69810C873B8A4 /* fork.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = fork.cc; path = src/core/lib/gprpp/fork.cc; sourceTree = "<group>"; };
 		7064B2FED59A7F1767E8A18EFD81B9C1 /* FIRIdentityToolkitRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRIdentityToolkitRequest.m; path = FirebaseAuth/Sources/Backend/FIRIdentityToolkitRequest.m; sourceTree = "<group>"; };
 		70A4D782123D62A983606462BCCC4B97 /* workaround_list.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = workaround_list.h; path = include/grpc/support/workaround_list.h; sourceTree = "<group>"; };
-		70A672ABD5148702739DC0E2767309DF /* ev_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ev_posix.cc; path = src/core/lib/iomgr/ev_posix.cc; sourceTree = "<group>"; };
-		70B3B5D8DCA29096D6B9FC81D15ED7A6 /* asn1_gen.c */ = {isa = PBXFileReference; includeInIndex = 1; name = asn1_gen.c; path = src/crypto/x509/asn1_gen.c; sourceTree = "<group>"; };
-		70D554D986277A7C89CE3C981199895B /* connectivity_state.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = connectivity_state.cc; path = src/core/lib/transport/connectivity_state.cc; sourceTree = "<group>"; };
+		70A672ABD5148702739DC0E2767309DF /* ev_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ev_posix.cc; path = src/core/lib/iomgr/ev_posix.cc; sourceTree = "<group>"; };
+		70B3B5D8DCA29096D6B9FC81D15ED7A6 /* asn1_gen.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = asn1_gen.c; path = src/crypto/x509/asn1_gen.c; sourceTree = "<group>"; };
+		70D554D986277A7C89CE3C981199895B /* connectivity_state.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = connectivity_state.cc; path = src/core/lib/transport/connectivity_state.cc; sourceTree = "<group>"; };
 		70E91511DB7EA2CB8B5C04D904A905F6 /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/internal.h; sourceTree = "<group>"; };
-		70EF3DE716AB31F2BA2CD1F15F2C8621 /* alts_crypter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alts_crypter.cc; path = src/core/tsi/alts/frame_protector/alts_crypter.cc; sourceTree = "<group>"; };
-		71141E3ECDE5F3DC2F57DAD56000834B /* urandom.c */ = {isa = PBXFileReference; includeInIndex = 1; name = urandom.c; path = src/crypto/fipsmodule/rand/urandom.c; sourceTree = "<group>"; };
+		70EF3DE716AB31F2BA2CD1F15F2C8621 /* alts_crypter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alts_crypter.cc; path = src/core/tsi/alts/frame_protector/alts_crypter.cc; sourceTree = "<group>"; };
+		71141E3ECDE5F3DC2F57DAD56000834B /* urandom.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = urandom.c; path = src/crypto/fipsmodule/rand/urandom.c; sourceTree = "<group>"; };
 		71149D4372C28714A8A4A54984A49652 /* ecdh.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ecdh.h; path = src/include/openssl/ecdh.h; sourceTree = "<group>"; };
 		712ADC7CBDD552F9762C19AD3678D9B1 /* FIRMultiFactor.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRMultiFactor.m; path = FirebaseAuth/Sources/MultiFactor/FIRMultiFactor.m; sourceTree = "<group>"; };
-		71322CFE4418B9D6E2CD1B5DFF3DE99B /* coding.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = coding.cc; path = util/coding.cc; sourceTree = "<group>"; };
+		71322CFE4418B9D6E2CD1B5DFF3DE99B /* coding.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = coding.cc; path = util/coding.cc; sourceTree = "<group>"; };
 		7161F44E8850459420BEADF62F32AEE0 /* proxy_mapper.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = proxy_mapper.h; path = src/core/ext/filters/client_channel/proxy_mapper.h; sourceTree = "<group>"; };
 		71666B17F067DA7314A0D1920A847A83 /* http_proxy.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = http_proxy.h; path = src/core/ext/filters/client_channel/http_proxy.h; sourceTree = "<group>"; };
 		71ADC828D351696C5FF767B316A18FE7 /* sync.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sync.h; path = include/grpcpp/impl/codegen/sync.h; sourceTree = "<group>"; };
 		71CABF18A6A948F0118203897F215ACF /* census.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = census.h; path = include/grpc/census.h; sourceTree = "<group>"; };
-		71F1FDC2577BB9F4256F8053A552AC6F /* completion_queue_factory.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = completion_queue_factory.cc; path = src/core/lib/surface/completion_queue_factory.cc; sourceTree = "<group>"; };
-		71FE8B02257C8A1FB43F8BC4C1310B08 /* t1_enc.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = t1_enc.cc; path = src/ssl/t1_enc.cc; sourceTree = "<group>"; };
+		71F1FDC2577BB9F4256F8053A552AC6F /* completion_queue_factory.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = completion_queue_factory.cc; path = src/core/lib/surface/completion_queue_factory.cc; sourceTree = "<group>"; };
+		71FE8B02257C8A1FB43F8BC4C1310B08 /* t1_enc.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = t1_enc.cc; path = src/ssl/t1_enc.cc; sourceTree = "<group>"; };
 		720CC4D53EABB1723EB9A080A66F8710 /* ex_data.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ex_data.h; path = src/include/openssl/ex_data.h; sourceTree = "<group>"; };
 		72199DC6D2BAF2F5A96919DCEC2F51C0 /* client_channel_channelz.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_channel_channelz.h; path = src/core/ext/filters/client_channel/client_channel_channelz.h; sourceTree = "<group>"; };
 		723161C712CA5602D856F53D3832ABE7 /* async_generic_service.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = async_generic_service.h; path = include/grpcpp/generic/async_generic_service.h; sourceTree = "<group>"; };
@@ -9787,18 +9788,18 @@
 		72D5AFEC96A1E10731241E2A25B292B7 /* server_callback_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_callback_impl.h; path = include/grpcpp/support/server_callback_impl.h; sourceTree = "<group>"; };
 		72DA218C85697A3A250F70EEDB19148E /* FIRAuthDataResult.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthDataResult.m; path = FirebaseAuth/Sources/Auth/FIRAuthDataResult.m; sourceTree = "<group>"; };
 		72DFD0AD238DC9A0922060E7C165A72D /* tls_credentials_options_util.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tls_credentials_options_util.h; path = src/cpp/common/tls_credentials_options_util.h; sourceTree = "<group>"; };
-		72E412AA330F582BB95EAE64AB02FF28 /* v3_akeya.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_akeya.c; path = src/crypto/x509v3/v3_akeya.c; sourceTree = "<group>"; };
+		72E412AA330F582BB95EAE64AB02FF28 /* v3_akeya.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_akeya.c; path = src/crypto/x509v3/v3_akeya.c; sourceTree = "<group>"; };
 		73069AF4EDE9BF1984925F185C45FB1E /* channel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channel.h; path = include/grpcpp/channel.h; sourceTree = "<group>"; };
 		7339ED00B7EEECCEDD2D3FD3D37415EC /* FIRVerifyClientRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRVerifyClientRequest.m; path = FirebaseAuth/Sources/Backend/RPC/FIRVerifyClientRequest.m; sourceTree = "<group>"; };
-		734B53650ED875583197AB5DE9E9331B /* stream_map.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = stream_map.cc; path = src/core/ext/transport/chttp2/transport/stream_map.cc; sourceTree = "<group>"; };
+		734B53650ED875583197AB5DE9E9331B /* stream_map.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = stream_map.cc; path = src/core/ext/transport/chttp2/transport/stream_map.cc; sourceTree = "<group>"; };
 		735AA8CDD94DB9F3DBF81E5F338BA30D /* FIRLogger.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRLogger.h; path = FirebaseCore/Sources/Private/FIRLogger.h; sourceTree = "<group>"; };
 		7365C74487282580AD5422D88FB17429 /* leveldb-library.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "leveldb-library.modulemap"; sourceTree = "<group>"; };
-		73691F88BB5174BAC3BCD42FCF74EDCF /* Pods_FaceRecogAttendance.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_FaceRecogAttendance.framework; path = "Pods-FaceRecogAttendance.framework"; sourceTree = BUILT_PRODUCTS_DIR; };
-		737CCD2DD8F94E21EAC6CE80CB945936 /* siphash.c */ = {isa = PBXFileReference; includeInIndex = 1; name = siphash.c; path = src/crypto/siphash/siphash.c; sourceTree = "<group>"; };
+		73691F88BB5174BAC3BCD42FCF74EDCF /* Pods_FaceRecogAttendance.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_FaceRecogAttendance.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		737CCD2DD8F94E21EAC6CE80CB945936 /* siphash.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = siphash.c; path = src/crypto/siphash/siphash.c; sourceTree = "<group>"; };
 		737F1369402538CA824A113813BA34C0 /* ssl_utils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl_utils.h; path = src/core/lib/security/security_connector/ssl_utils.h; sourceTree = "<group>"; };
 		738894540E614582BA81A72C73530BE6 /* bin_encoder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = bin_encoder.h; path = src/core/ext/transport/chttp2/transport/bin_encoder.h; sourceTree = "<group>"; };
-		73A17BC521B0949BEE024BAEFA288391 /* mutation.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = mutation.cc; path = Firestore/core/src/model/mutation.cc; sourceTree = "<group>"; };
-		73A8FB63EE53EDE4C2C3F42B59B997A4 /* client_interceptor.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = client_interceptor.cc; path = src/cpp/client/client_interceptor.cc; sourceTree = "<group>"; };
+		73A17BC521B0949BEE024BAEFA288391 /* mutation.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = mutation.cc; path = Firestore/core/src/model/mutation.cc; sourceTree = "<group>"; };
+		73A8FB63EE53EDE4C2C3F42B59B997A4 /* client_interceptor.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = client_interceptor.cc; path = src/cpp/client/client_interceptor.cc; sourceTree = "<group>"; };
 		73BCFE78AD0A9FD6A42A494750041E6C /* check_gcp_environment.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = check_gcp_environment.h; path = src/core/lib/security/credentials/alts/check_gcp_environment.h; sourceTree = "<group>"; };
 		73C7FDAA0EA2717787AE2E64D4B7312E /* zone_info_source.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = zone_info_source.h; path = absl/time/internal/cctz/include/cctz/zone_info_source.h; sourceTree = "<group>"; };
 		73C9770CD3C19B3205FB7328A10CEAC0 /* FirebaseStorage-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "FirebaseStorage-Info.plist"; sourceTree = "<group>"; };
@@ -9810,230 +9811,230 @@
 		741051EC9FD83809F389CF6828B8762B /* GDTCORFlatFileStorage.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORFlatFileStorage.h; path = GoogleDataTransport/GDTCORLibrary/Private/GDTCORFlatFileStorage.h; sourceTree = "<group>"; };
 		742633AED5DC8F31EAAB105B9B3C3B06 /* filename.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = filename.h; path = db/filename.h; sourceTree = "<group>"; };
 		742AAE4CD953518477836C0F7407F1BE /* validate.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = validate.upb.h; path = "src/core/ext/upb-generated/validate/validate.upb.h"; sourceTree = "<group>"; };
-		74428FC936CABDC89805B74ACB376B99 /* status.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = status.nanopb.cc; path = Firestore/Protos/nanopb/google/rpc/status.nanopb.cc; sourceTree = "<group>"; };
+		74428FC936CABDC89805B74ACB376B99 /* status.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = status.nanopb.cc; path = Firestore/Protos/nanopb/google/rpc/status.nanopb.cc; sourceTree = "<group>"; };
 		747D8256434F2104D236C56C90BB6AA8 /* alts_tsi_handshaker_private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_tsi_handshaker_private.h; path = src/core/tsi/alts/handshaker/alts_tsi_handshaker_private.h; sourceTree = "<group>"; };
-		749B5B341515B692F8746535D9B419B6 /* varint.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = varint.cc; path = src/core/ext/transport/chttp2/transport/varint.cc; sourceTree = "<group>"; };
-		74B9B16636DA9B50B2F347C2ECEBA856 /* escaping.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = escaping.cc; path = absl/strings/escaping.cc; sourceTree = "<group>"; };
-		74B9FC3765945FAC9AC35934162D83F2 /* timer.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = timer.cc; path = src/core/lib/iomgr/timer.cc; sourceTree = "<group>"; };
+		749B5B341515B692F8746535D9B419B6 /* varint.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = varint.cc; path = src/core/ext/transport/chttp2/transport/varint.cc; sourceTree = "<group>"; };
+		74B9B16636DA9B50B2F347C2ECEBA856 /* escaping.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = escaping.cc; path = absl/strings/escaping.cc; sourceTree = "<group>"; };
+		74B9FC3765945FAC9AC35934162D83F2 /* timer.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = timer.cc; path = src/core/lib/iomgr/timer.cc; sourceTree = "<group>"; };
 		74E19BF873D9256E0C1780438C8D6F98 /* FIRFacebookAuthCredential.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRFacebookAuthCredential.h; path = FirebaseAuth/Sources/AuthProvider/Facebook/FIRFacebookAuthCredential.h; sourceTree = "<group>"; };
 		74EF4303E4326FE8F7998D83052E917B /* tls_msvc.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tls_msvc.h; path = src/core/lib/gpr/tls_msvc.h; sourceTree = "<group>"; };
 		74F0C9BDD31C851C8AE0792442F36E4D /* pid_controller.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pid_controller.h; path = src/core/lib/transport/pid_controller.h; sourceTree = "<group>"; };
-		75032797C59E92F415E321C2C69D7A14 /* cipher_extra.c */ = {isa = PBXFileReference; includeInIndex = 1; name = cipher_extra.c; path = src/crypto/cipher_extra/cipher_extra.c; sourceTree = "<group>"; };
+		75032797C59E92F415E321C2C69D7A14 /* cipher_extra.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = cipher_extra.c; path = src/crypto/cipher_extra/cipher_extra.c; sourceTree = "<group>"; };
 		754E6DA8A6F87F25427DB31AF1309AF3 /* FIRDeleteAccountResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRDeleteAccountResponse.h; path = FirebaseAuth/Sources/Backend/RPC/FIRDeleteAccountResponse.h; sourceTree = "<group>"; };
-		7564CAF76CF4A5D7C91872273D5268E2 /* alpn.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alpn.cc; path = src/core/ext/transport/chttp2/alpn/alpn.cc; sourceTree = "<group>"; };
+		7564CAF76CF4A5D7C91872273D5268E2 /* alpn.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alpn.cc; path = src/core/ext/transport/chttp2/alpn/alpn.cc; sourceTree = "<group>"; };
 		758906584D117F02DCD952BE649DD667 /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/fipsmodule/bn/internal.h; sourceTree = "<group>"; };
-		75ACB49FC52BFA17B4C7C42FBA2C269A /* ec_montgomery.c */ = {isa = PBXFileReference; includeInIndex = 1; name = ec_montgomery.c; path = src/crypto/fipsmodule/ec/ec_montgomery.c; sourceTree = "<group>"; };
+		75ACB49FC52BFA17B4C7C42FBA2C269A /* ec_montgomery.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = ec_montgomery.c; path = src/crypto/fipsmodule/ec/ec_montgomery.c; sourceTree = "<group>"; };
 		75D0457C548549BDAB813F2EA208BE76 /* FIRCoreDiagnosticsInterop.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRCoreDiagnosticsInterop.h; path = Interop/CoreDiagnostics/Public/FIRCoreDiagnosticsInterop.h; sourceTree = "<group>"; };
-		75D81DFA24D92C2F095767C2782F1B05 /* http_proxy.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = http_proxy.cc; path = src/core/ext/filters/client_channel/http_proxy.cc; sourceTree = "<group>"; };
-		75FA045DBE7224E4A660FDFB6E288067 /* FIRGeoPoint.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FIRGeoPoint.mm; path = Firestore/Source/API/FIRGeoPoint.mm; sourceTree = "<group>"; };
+		75D81DFA24D92C2F095767C2782F1B05 /* http_proxy.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = http_proxy.cc; path = src/core/ext/filters/client_channel/http_proxy.cc; sourceTree = "<group>"; };
+		75FA045DBE7224E4A660FDFB6E288067 /* FIRGeoPoint.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FIRGeoPoint.mm; path = Firestore/Source/API/FIRGeoPoint.mm; sourceTree = "<group>"; };
 		7605029F72EA85D8B8EEE5621215885E /* FIRSignUpNewUserRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRSignUpNewUserRequest.h; path = FirebaseAuth/Sources/Backend/RPC/FIRSignUpNewUserRequest.h; sourceTree = "<group>"; };
 		760CC3FD219A45AA4036AA32357E6505 /* socket_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = socket_windows.h; path = src/core/lib/iomgr/socket_windows.h; sourceTree = "<group>"; };
 		761450171689D5A9CE5BF517225FCA64 /* format.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = format.h; path = table/format.h; sourceTree = "<group>"; };
-		762792249468652723D90A7EE0C4F8C3 /* tasn_new.c */ = {isa = PBXFileReference; includeInIndex = 1; name = tasn_new.c; path = src/crypto/asn1/tasn_new.c; sourceTree = "<group>"; };
-		7637BA72DFA9D7B6C2EEE67EFB45A5F5 /* converters.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = converters.mm; path = Firestore/Source/API/converters.mm; sourceTree = "<group>"; };
-		764BF8C087787D8F3CFB87816FC18D46 /* any.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = any.nanopb.cc; path = Firestore/Protos/nanopb/google/protobuf/any.nanopb.cc; sourceTree = "<group>"; };
+		762792249468652723D90A7EE0C4F8C3 /* tasn_new.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = tasn_new.c; path = src/crypto/asn1/tasn_new.c; sourceTree = "<group>"; };
+		7637BA72DFA9D7B6C2EEE67EFB45A5F5 /* converters.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = converters.mm; path = Firestore/Source/API/converters.mm; sourceTree = "<group>"; };
+		764BF8C087787D8F3CFB87816FC18D46 /* any.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = any.nanopb.cc; path = Firestore/Protos/nanopb/google/protobuf/any.nanopb.cc; sourceTree = "<group>"; };
 		7659501D038E5DFE40E2225B625F34AF /* FBLPromise+Catch.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "FBLPromise+Catch.m"; path = "Sources/FBLPromises/FBLPromise+Catch.m"; sourceTree = "<group>"; };
 		7659CF7277628FEFC335C8EAA9B8586D /* security_context.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = security_context.h; path = src/core/lib/security/context/security_context.h; sourceTree = "<group>"; };
 		76692B8E0590F9799A5DF337F07480FE /* alpn.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alpn.h; path = src/core/ext/transport/chttp2/alpn/alpn.h; sourceTree = "<group>"; };
 		768D3322C0BF547EDFC9601CA5ABCE5C /* base.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = base.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/core/base.upb.h"; sourceTree = "<group>"; };
 		76923E12981FD1973088177B7AF65FA0 /* oauth2_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = oauth2_credentials.h; path = src/core/lib/security/credentials/oauth2/oauth2_credentials.h; sourceTree = "<group>"; };
 		769F060C197C59FC25CBD48E8E015EAA /* engine.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = engine.h; path = src/include/openssl/engine.h; sourceTree = "<group>"; };
-		76D23401C973EFBB1D2BC750A03107D4 /* sync_engine.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = sync_engine.cc; path = Firestore/core/src/core/sync_engine.cc; sourceTree = "<group>"; };
-		76F27CCEC544C9C96412531796E6A66A /* tcp_client_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tcp_client_windows.cc; path = src/core/lib/iomgr/tcp_client_windows.cc; sourceTree = "<group>"; };
+		76D23401C973EFBB1D2BC750A03107D4 /* sync_engine.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = sync_engine.cc; path = Firestore/core/src/core/sync_engine.cc; sourceTree = "<group>"; };
+		76F27CCEC544C9C96412531796E6A66A /* tcp_client_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tcp_client_windows.cc; path = src/core/lib/iomgr/tcp_client_windows.cc; sourceTree = "<group>"; };
 		770714B36799EBC07859D19FEAF9EB50 /* async_unary_call_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = async_unary_call_impl.h; path = include/grpcpp/support/async_unary_call_impl.h; sourceTree = "<group>"; };
-		771783CE207EB684FB52134C0E726C83 /* thread_win.c */ = {isa = PBXFileReference; includeInIndex = 1; name = thread_win.c; path = src/crypto/thread_win.c; sourceTree = "<group>"; };
+		771783CE207EB684FB52134C0E726C83 /* thread_win.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = thread_win.c; path = src/crypto/thread_win.c; sourceTree = "<group>"; };
 		773DD380BD3E40458FA71EE20AAAB5BC /* alarm.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alarm.h; path = include/grpcpp/alarm.h; sourceTree = "<group>"; };
 		774F27ABFC63ADB1A1EAA093B6C786F4 /* alpn.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alpn.h; path = src/core/ext/transport/chttp2/alpn/alpn.h; sourceTree = "<group>"; };
-		7750F527055C9FA9F0A3D87B0848AE52 /* byte_stream.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = byte_stream.cc; path = src/core/lib/transport/byte_stream.cc; sourceTree = "<group>"; };
-		77762A1D3817448A137A815A37535C76 /* comparator.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = comparator.cc; path = util/comparator.cc; sourceTree = "<group>"; };
+		7750F527055C9FA9F0A3D87B0848AE52 /* byte_stream.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = byte_stream.cc; path = src/core/lib/transport/byte_stream.cc; sourceTree = "<group>"; };
+		77762A1D3817448A137A815A37535C76 /* comparator.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = comparator.cc; path = util/comparator.cc; sourceTree = "<group>"; };
 		777D32C87B25D33C6D2E17B835ED8DDC /* FIRAuthRequestConfiguration.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthRequestConfiguration.h; path = FirebaseAuth/Sources/Backend/FIRAuthRequestConfiguration.h; sourceTree = "<group>"; };
-		7788C6AC71B9A78A585074C4773AFFD6 /* string_win.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = string_win.cc; path = Firestore/core/src/util/string_win.cc; sourceTree = "<group>"; };
+		7788C6AC71B9A78A585074C4773AFFD6 /* string_win.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = string_win.cc; path = Firestore/core/src/util/string_win.cc; sourceTree = "<group>"; };
 		778B6639D5EF1F88BB1BFFAF2A9A3A66 /* xds_client.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = xds_client.h; path = src/core/ext/filters/client_channel/xds/xds_client.h; sourceTree = "<group>"; };
 		77C4A2FBC085EF6F8A1235E85CB56643 /* load_balancer.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = load_balancer.upb.h; path = "src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h"; sourceTree = "<group>"; };
 		77C8CFD852C6253DE467E9B8F9A06E13 /* bin_decoder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = bin_decoder.h; path = src/core/ext/transport/chttp2/transport/bin_decoder.h; sourceTree = "<group>"; };
 		77C9F18BB932075BF2AF27B41BE8633C /* GTMSessionFetcher-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "GTMSessionFetcher-umbrella.h"; sourceTree = "<group>"; };
-		77D41C19BECC34FA498D6F984A635CB0 /* d1_srtp.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = d1_srtp.cc; path = src/ssl/d1_srtp.cc; sourceTree = "<group>"; };
-		77E11713F095F2CF5153D8FDFA8700B7 /* remote_event.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = remote_event.cc; path = Firestore/core/src/remote/remote_event.cc; sourceTree = "<group>"; };
+		77D41C19BECC34FA498D6F984A635CB0 /* d1_srtp.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = d1_srtp.cc; path = src/ssl/d1_srtp.cc; sourceTree = "<group>"; };
+		77E11713F095F2CF5153D8FDFA8700B7 /* remote_event.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = remote_event.cc; path = Firestore/core/src/remote/remote_event.cc; sourceTree = "<group>"; };
 		77E84DFB45996A5FA44BE3FCF0A76C27 /* FIRComponent.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRComponent.m; path = FirebaseCore/Sources/FIRComponent.m; sourceTree = "<group>"; };
-		77F70D0F90DE0F94AE88ABB67A15F1F9 /* sha1-altivec.c */ = {isa = PBXFileReference; includeInIndex = 1; name = "sha1-altivec.c"; path = "src/crypto/fipsmodule/sha/sha1-altivec.c"; sourceTree = "<group>"; };
+		77F70D0F90DE0F94AE88ABB67A15F1F9 /* sha1-altivec.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = "sha1-altivec.c"; path = "src/crypto/fipsmodule/sha/sha1-altivec.c"; sourceTree = "<group>"; };
 		77FC09DFC8250236B962CA3334DDE823 /* http2_settings.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = http2_settings.h; path = src/core/ext/transport/chttp2/transport/http2_settings.h; sourceTree = "<group>"; };
 		7801C8A639085127C10859414484BF2A /* orphanable.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = orphanable.h; path = src/core/lib/gprpp/orphanable.h; sourceTree = "<group>"; };
 		78208AEF9CE674E5E2823C4C445F5543 /* stream_compression_gzip.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = stream_compression_gzip.h; path = src/core/lib/compression/stream_compression_gzip.h; sourceTree = "<group>"; };
-		7824ACBFADB1629328B57E1CBB5E4418 /* thread_pthread.c */ = {isa = PBXFileReference; includeInIndex = 1; name = thread_pthread.c; path = src/crypto/thread_pthread.c; sourceTree = "<group>"; };
+		7824ACBFADB1629328B57E1CBB5E4418 /* thread_pthread.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = thread_pthread.c; path = src/crypto/thread_pthread.c; sourceTree = "<group>"; };
 		7830CE9D8661C86E0685BC6D8BEA0BDE /* FBLPromise+Retry.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FBLPromise+Retry.h"; path = "Sources/FBLPromises/include/FBLPromise+Retry.h"; sourceTree = "<group>"; };
 		78403CEB10FC8C5DEA28D11F6A11A5FE /* FirebaseFirestore.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FirebaseFirestore.h; path = Firestore/Source/Public/FirebaseFirestore/FirebaseFirestore.h; sourceTree = "<group>"; };
 		78A711DBA2CB1704F7AD756113B0CBF0 /* handshaker_factory.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = handshaker_factory.h; path = src/core/lib/channel/handshaker_factory.h; sourceTree = "<group>"; };
-		78B12BA425A2AB121F9C2E8B1485BDA7 /* x509_req.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509_req.c; path = src/crypto/x509/x509_req.c; sourceTree = "<group>"; };
+		78B12BA425A2AB121F9C2E8B1485BDA7 /* x509_req.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509_req.c; path = src/crypto/x509/x509_req.c; sourceTree = "<group>"; };
 		78B50FC5B333BF3F979854ABB26886C9 /* unix_sockets_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = unix_sockets_posix.h; path = src/core/lib/iomgr/unix_sockets_posix.h; sourceTree = "<group>"; };
-		78BDE3D6EF71EB4086787238F7C1CB71 /* srds.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = srds.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/srds.upb.c"; sourceTree = "<group>"; };
+		78BDE3D6EF71EB4086787238F7C1CB71 /* srds.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = srds.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/srds.upb.c"; sourceTree = "<group>"; };
 		78C2D50954E39558A953098B6A4C43EA /* time_zone.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = time_zone.h; path = absl/time/internal/cctz/include/cctz/time_zone.h; sourceTree = "<group>"; };
 		78C7922E74274FFC5E1D5D020B518F3D /* executor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = executor.h; path = src/core/lib/iomgr/executor.h; sourceTree = "<group>"; };
 		78C883D2BBC8CB71DAE4FE2ED8F22C6D /* FIRUser_Internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRUser_Internal.h; path = FirebaseAuth/Sources/User/FIRUser_Internal.h; sourceTree = "<group>"; };
 		78CA4E1A1A6C197CE943D21E7AAEB701 /* FIRComponentContainer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRComponentContainer.h; path = FirebaseCore/Sources/Private/FIRComponentContainer.h; sourceTree = "<group>"; };
-		78D78437BDF8C73FDE1E93201213E11D /* v3_akey.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_akey.c; path = src/crypto/x509v3/v3_akey.c; sourceTree = "<group>"; };
+		78D78437BDF8C73FDE1E93201213E11D /* v3_akey.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_akey.c; path = src/crypto/x509v3/v3_akey.c; sourceTree = "<group>"; };
 		78F1ED1FB4AB6B7B0C82752886EF040B /* address.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = address.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/core/address.upb.h"; sourceTree = "<group>"; };
-		795F81A20D64AFE71269067DEE462D5D /* query_listener_registration.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = query_listener_registration.cc; path = Firestore/core/src/api/query_listener_registration.cc; sourceTree = "<group>"; };
+		795F81A20D64AFE71269067DEE462D5D /* query_listener_registration.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = query_listener_registration.cc; path = Firestore/core/src/api/query_listener_registration.cc; sourceTree = "<group>"; };
 		7967A681A915DCAD52C7BDE66BA50C74 /* channel_stack.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channel_stack.h; path = src/core/lib/channel/channel_stack.h; sourceTree = "<group>"; };
 		796BCE71528CE90F8516692CF4927449 /* FIRMultiFactorSession.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRMultiFactorSession.m; path = FirebaseAuth/Sources/MultiFactor/FIRMultiFactorSession.m; sourceTree = "<group>"; };
-		79841F8654DD43E754002153099E1090 /* writer.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = writer.cc; path = Firestore/core/src/nanopb/writer.cc; sourceTree = "<group>"; };
-		798548E3BDBE192C60C362D9CBFF824C /* raw_logging.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = raw_logging.cc; path = absl/base/internal/raw_logging.cc; sourceTree = "<group>"; };
-		798FDDAB548B8CCEC541144BE7C2A384 /* digest_extra.c */ = {isa = PBXFileReference; includeInIndex = 1; name = digest_extra.c; path = src/crypto/digest_extra/digest_extra.c; sourceTree = "<group>"; };
+		79841F8654DD43E754002153099E1090 /* writer.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = writer.cc; path = Firestore/core/src/nanopb/writer.cc; sourceTree = "<group>"; };
+		798548E3BDBE192C60C362D9CBFF824C /* raw_logging.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = raw_logging.cc; path = absl/base/internal/raw_logging.cc; sourceTree = "<group>"; };
+		798FDDAB548B8CCEC541144BE7C2A384 /* digest_extra.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = digest_extra.c; path = src/crypto/digest_extra/digest_extra.c; sourceTree = "<group>"; };
 		799E6187137A0F5732232EDDCF882868 /* resource_quota.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resource_quota.h; path = src/core/lib/iomgr/resource_quota.h; sourceTree = "<group>"; };
-		79DFF5B7AF92B72BAC942AB98F479AC1 /* tasn_dec.c */ = {isa = PBXFileReference; includeInIndex = 1; name = tasn_dec.c; path = src/crypto/asn1/tasn_dec.c; sourceTree = "<group>"; };
+		79DFF5B7AF92B72BAC942AB98F479AC1 /* tasn_dec.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = tasn_dec.c; path = src/crypto/asn1/tasn_dec.c; sourceTree = "<group>"; };
 		79E56A61E5945DE3B45D7C85B26A12A3 /* fork.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = fork.h; path = src/core/lib/gprpp/fork.h; sourceTree = "<group>"; };
 		79E6AB99ED80907B738B3369C0197B40 /* workaround_cronet_compression_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = workaround_cronet_compression_filter.h; path = src/core/ext/filters/workarounds/workaround_cronet_compression_filter.h; sourceTree = "<group>"; };
 		79F72B251214CEDF88767A36ACAE0CF7 /* FIRAuthGlobalWorkQueue.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthGlobalWorkQueue.m; path = FirebaseAuth/Sources/Auth/FIRAuthGlobalWorkQueue.m; sourceTree = "<group>"; };
 		79F833C4D8713556B677561163A370FE /* NSData+FIRBase64.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "NSData+FIRBase64.h"; path = "FirebaseAuth/Sources/Utilities/NSData+FIRBase64.h"; sourceTree = "<group>"; };
-		79FE91D2E07424BD4A6B0D7EF390C73F /* cpu-arm.c */ = {isa = PBXFileReference; includeInIndex = 1; name = "cpu-arm.c"; path = "src/crypto/cpu-arm.c"; sourceTree = "<group>"; };
+		79FE91D2E07424BD4A6B0D7EF390C73F /* cpu-arm.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = "cpu-arm.c"; path = "src/crypto/cpu-arm.c"; sourceTree = "<group>"; };
 		7A11D348683DE2C0240E428027C0C730 /* security_connector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = security_connector.h; path = src/core/lib/security/security_connector/security_connector.h; sourceTree = "<group>"; };
 		7A168063E726BEC10F1BF89338E63C7B /* byte_stream.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = byte_stream.h; path = src/core/lib/transport/byte_stream.h; sourceTree = "<group>"; };
 		7A16D81A722F874318DAD4BDA9080A19 /* grpc_shadow_boringssl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpc_shadow_boringssl.h; path = src/core/tsi/grpc_shadow_boringssl.h; sourceTree = "<group>"; };
-		7A29CF3523F5E784FD604119B1229CAA /* log_reader.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = log_reader.cc; path = db/log_reader.cc; sourceTree = "<group>"; };
+		7A29CF3523F5E784FD604119B1229CAA /* log_reader.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = log_reader.cc; path = db/log_reader.cc; sourceTree = "<group>"; };
 		7A2F633A7C66FA95942A5E205E078EF0 /* async_stream_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = async_stream_impl.h; path = include/grpcpp/impl/codegen/async_stream_impl.h; sourceTree = "<group>"; };
 		7A34B94B66A6C75325E5167050B854DF /* ref_counted_ptr.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ref_counted_ptr.h; path = src/core/lib/gprpp/ref_counted_ptr.h; sourceTree = "<group>"; };
 		7A3A7FC398D61624A7BDC201072EC312 /* grpc_ares_ev_driver.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpc_ares_ev_driver.h; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h; sourceTree = "<group>"; };
-		7A4FE9F602EF99B2CCFD4AE9C32EC6E7 /* error_cfstream.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = error_cfstream.cc; path = src/core/lib/iomgr/error_cfstream.cc; sourceTree = "<group>"; };
-		7A626BA059E20FBC6EE30D8F5469E1FF /* s3_lib.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = s3_lib.cc; path = src/ssl/s3_lib.cc; sourceTree = "<group>"; };
-		7A785D628818DF0E138BDB33EAD16EB5 /* internal_errqueue.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = internal_errqueue.cc; path = src/core/lib/iomgr/internal_errqueue.cc; sourceTree = "<group>"; };
-		7A7AD162933861FE7C4011AA8B38E523 /* get_current_time_posix.inc */ = {isa = PBXFileReference; includeInIndex = 1; name = get_current_time_posix.inc; path = absl/time/internal/get_current_time_posix.inc; sourceTree = "<group>"; };
+		7A4FE9F602EF99B2CCFD4AE9C32EC6E7 /* error_cfstream.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = error_cfstream.cc; path = src/core/lib/iomgr/error_cfstream.cc; sourceTree = "<group>"; };
+		7A626BA059E20FBC6EE30D8F5469E1FF /* s3_lib.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = s3_lib.cc; path = src/ssl/s3_lib.cc; sourceTree = "<group>"; };
+		7A785D628818DF0E138BDB33EAD16EB5 /* internal_errqueue.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = internal_errqueue.cc; path = src/core/lib/iomgr/internal_errqueue.cc; sourceTree = "<group>"; };
+		7A7AD162933861FE7C4011AA8B38E523 /* get_current_time_posix.inc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.pascal; name = get_current_time_posix.inc; path = absl/time/internal/get_current_time_posix.inc; sourceTree = "<group>"; };
 		7A864DAB4771392EA532BF158923CD0E /* string_ref.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = string_ref.h; path = include/grpcpp/impl/codegen/string_ref.h; sourceTree = "<group>"; };
 		7A8C6E76D5BAEF05761FAD0AC29E9ECF /* FIRAuthProto.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthProto.h; path = FirebaseAuth/Sources/Backend/RPC/Proto/FIRAuthProto.h; sourceTree = "<group>"; };
-		7A96FE25499BD1D93B816081F3B06A60 /* pkcs8.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pkcs8.c; path = src/crypto/pkcs8/pkcs8.c; sourceTree = "<group>"; };
+		7A96FE25499BD1D93B816081F3B06A60 /* pkcs8.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pkcs8.c; path = src/crypto/pkcs8/pkcs8.c; sourceTree = "<group>"; };
 		7AA89603218397FE26E0586CE0979F3C /* endpoint_cfstream.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = endpoint_cfstream.h; path = src/core/lib/iomgr/endpoint_cfstream.h; sourceTree = "<group>"; };
 		7ADC863374D365943CC663C528F34A96 /* block_builder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = block_builder.h; path = table/block_builder.h; sourceTree = "<group>"; };
 		7AE835501541AE92AE34ACB83317DD8A /* secure_auth_context.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = secure_auth_context.h; path = src/cpp/common/secure_auth_context.h; sourceTree = "<group>"; };
 		7AF519490FC2EE4A294B06A78022BEDB /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/ssl/internal.h; sourceTree = "<group>"; };
 		7B19CDBB78B8A40EDB59958F8B3B2D52 /* throw_delegate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = throw_delegate.h; path = absl/base/internal/throw_delegate.h; sourceTree = "<group>"; };
-		7B3A94FCDE26F03B2B1CFC24CF746237 /* v3_ia5.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_ia5.c; path = src/crypto/x509v3/v3_ia5.c; sourceTree = "<group>"; };
+		7B3A94FCDE26F03B2B1CFC24CF746237 /* v3_ia5.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_ia5.c; path = src/crypto/x509v3/v3_ia5.c; sourceTree = "<group>"; };
 		7B408D701F7E3F59B3F98CC661CF2D9F /* server_address.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_address.h; path = src/core/ext/filters/client_channel/server_address.h; sourceTree = "<group>"; };
-		7B8577C581C82E5A20459FEB2ABC4ADF /* x_all.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x_all.c; path = src/crypto/x509/x_all.c; sourceTree = "<group>"; };
-		7BC1A9C26E82219BE7CDF64585C17F78 /* datastore.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = datastore.cc; path = Firestore/core/src/remote/datastore.cc; sourceTree = "<group>"; };
-		7BCCAB010336CDF07BBA1A52D5B59E9B /* convert.c */ = {isa = PBXFileReference; includeInIndex = 1; name = convert.c; path = src/crypto/bn_extra/convert.c; sourceTree = "<group>"; };
+		7B8577C581C82E5A20459FEB2ABC4ADF /* x_all.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x_all.c; path = src/crypto/x509/x_all.c; sourceTree = "<group>"; };
+		7BC1A9C26E82219BE7CDF64585C17F78 /* datastore.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = datastore.cc; path = Firestore/core/src/remote/datastore.cc; sourceTree = "<group>"; };
+		7BCCAB010336CDF07BBA1A52D5B59E9B /* convert.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = convert.c; path = src/crypto/bn_extra/convert.c; sourceTree = "<group>"; };
 		7C1799E1D2267F48342D8003F8700A68 /* security_handshaker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = security_handshaker.h; path = src/core/lib/security/transport/security_handshaker.h; sourceTree = "<group>"; };
 		7C3AFD198BB699F8DB52194B7EB76CE5 /* FIRGetAccountInfoResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRGetAccountInfoResponse.m; path = FirebaseAuth/Sources/Backend/RPC/FIRGetAccountInfoResponse.m; sourceTree = "<group>"; };
-		7C421499CB9007E80A59B2751750696C /* cpu_linux.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = cpu_linux.cc; path = src/core/lib/gpr/cpu_linux.cc; sourceTree = "<group>"; };
+		7C421499CB9007E80A59B2751750696C /* cpu_linux.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = cpu_linux.cc; path = src/core/lib/gpr/cpu_linux.cc; sourceTree = "<group>"; };
 		7C4499230A7D143899F154C1DF16521F /* method_handler_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = method_handler_impl.h; path = include/grpcpp/impl/codegen/method_handler_impl.h; sourceTree = "<group>"; };
 		7C6473A1E53BCEE8160AAD7989B9851F /* GDTCCTCompressionHelper.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCCTCompressionHelper.h; path = GoogleDataTransport/GDTCCTLibrary/Private/GDTCCTCompressionHelper.h; sourceTree = "<group>"; };
-		7C67E04A40EB950ABD5D792AC2078DDE /* polyval.c */ = {isa = PBXFileReference; includeInIndex = 1; name = polyval.c; path = src/crypto/fipsmodule/modes/polyval.c; sourceTree = "<group>"; };
+		7C67E04A40EB950ABD5D792AC2078DDE /* polyval.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = polyval.c; path = src/crypto/fipsmodule/modes/polyval.c; sourceTree = "<group>"; };
 		7C6B451D1CCDAE02746E81ACB533CDFE /* GTMSessionFetcherService.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GTMSessionFetcherService.h; path = Source/GTMSessionFetcherService.h; sourceTree = "<group>"; };
-		7C71976FBA2FD49AED7C20376338F553 /* charconv_parse.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = charconv_parse.cc; path = absl/strings/internal/charconv_parse.cc; sourceTree = "<group>"; };
+		7C71976FBA2FD49AED7C20376338F553 /* charconv_parse.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = charconv_parse.cc; path = absl/strings/internal/charconv_parse.cc; sourceTree = "<group>"; };
 		7C8239F273C130A2FD2E5C046A1003B3 /* sync_abseil.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sync_abseil.h; path = include/grpc/support/sync_abseil.h; sourceTree = "<group>"; };
 		7C8C9CEA4121D7AC7DAA572FA0619AA1 /* pollset.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pollset.h; path = src/core/lib/iomgr/pollset.h; sourceTree = "<group>"; };
 		7C997F5D82A30CF1E1342334D5CD6F96 /* GDTCORDirectorySizeTracker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORDirectorySizeTracker.h; path = GoogleDataTransport/GDTCORLibrary/Internal/GDTCORDirectorySizeTracker.h; sourceTree = "<group>"; };
-		7CB1B7836943A9A615B3A588AB85B0DF /* mutation.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = mutation.nanopb.cc; path = Firestore/Protos/nanopb/firestore/local/mutation.nanopb.cc; sourceTree = "<group>"; };
+		7CB1B7836943A9A615B3A588AB85B0DF /* mutation.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = mutation.nanopb.cc; path = Firestore/Protos/nanopb/firestore/local/mutation.nanopb.cc; sourceTree = "<group>"; };
 		7CC25984DB3BC4944D526486B146CAF3 /* parse_address.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = parse_address.h; path = src/core/ext/filters/client_channel/parse_address.h; sourceTree = "<group>"; };
 		7CD3233E367E0E466F9879E10EB96C4E /* FIRAuthKeychainServices.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthKeychainServices.h; path = FirebaseAuth/Sources/Storage/FIRAuthKeychainServices.h; sourceTree = "<group>"; };
 		7CED6123F0122E1A13082E2934665EC5 /* FIRSetAccountInfoRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRSetAccountInfoRequest.m; path = FirebaseAuth/Sources/Backend/RPC/FIRSetAccountInfoRequest.m; sourceTree = "<group>"; };
-		7CF23BF8FD1BAA79BF54A2F5D802AFEC /* ssl_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_credentials.cc; path = src/core/lib/security/credentials/ssl/ssl_credentials.cc; sourceTree = "<group>"; };
+		7CF23BF8FD1BAA79BF54A2F5D802AFEC /* ssl_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_credentials.cc; path = src/core/lib/security/credentials/ssl/ssl_credentials.cc; sourceTree = "<group>"; };
 		7D0F9DF6C3116CA0D50D002104FA1E9C /* completion_queue.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = completion_queue.h; path = src/core/lib/surface/completion_queue.h; sourceTree = "<group>"; };
-		7D3276014102B456B27E824FF5D3EE93 /* pollset_set.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = pollset_set.cc; path = src/core/lib/iomgr/pollset_set.cc; sourceTree = "<group>"; };
-		7D3B1A325204407B7360097442EFAA42 /* dynamic_thread_pool.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = dynamic_thread_pool.cc; path = src/cpp/server/dynamic_thread_pool.cc; sourceTree = "<group>"; };
-		7D57970B3374A387872CC924B32EC635 /* iomgr_uv.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = iomgr_uv.cc; path = src/core/lib/iomgr/iomgr_uv.cc; sourceTree = "<group>"; };
-		7D8E3FCC37579532D114D8DE8C48ADBB /* geo_point.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = geo_point.cc; path = Firestore/core/src/geo_point.cc; sourceTree = "<group>"; };
-		7D9157AE7293284D28BBB9617697E5E7 /* x509rset.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509rset.c; path = src/crypto/x509/x509rset.c; sourceTree = "<group>"; };
-		7DA157ABDB069E02CFAA11C38D23462A /* ssl_asn1.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_asn1.cc; path = src/ssl/ssl_asn1.cc; sourceTree = "<group>"; };
+		7D3276014102B456B27E824FF5D3EE93 /* pollset_set.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = pollset_set.cc; path = src/core/lib/iomgr/pollset_set.cc; sourceTree = "<group>"; };
+		7D3B1A325204407B7360097442EFAA42 /* dynamic_thread_pool.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = dynamic_thread_pool.cc; path = src/cpp/server/dynamic_thread_pool.cc; sourceTree = "<group>"; };
+		7D57970B3374A387872CC924B32EC635 /* iomgr_uv.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = iomgr_uv.cc; path = src/core/lib/iomgr/iomgr_uv.cc; sourceTree = "<group>"; };
+		7D8E3FCC37579532D114D8DE8C48ADBB /* geo_point.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = geo_point.cc; path = Firestore/core/src/geo_point.cc; sourceTree = "<group>"; };
+		7D9157AE7293284D28BBB9617697E5E7 /* x509rset.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509rset.c; path = src/crypto/x509/x509rset.c; sourceTree = "<group>"; };
+		7DA157ABDB069E02CFAA11C38D23462A /* ssl_asn1.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_asn1.cc; path = src/ssl/ssl_asn1.cc; sourceTree = "<group>"; };
 		7DBB9A5BE41BA10CDC2A0049CFE4B9CA /* grpc_types.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpc_types.h; path = include/grpc/impl/codegen/grpc_types.h; sourceTree = "<group>"; };
 		7DDA8E0DFC82835B103C84F7A0CF4213 /* tls_pthread.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tls_pthread.h; path = src/core/lib/gpr/tls_pthread.h; sourceTree = "<group>"; };
 		7DEAE34AEB11443C4ED1CC8BF35CF6AD /* grpc_shadow_boringssl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpc_shadow_boringssl.h; path = src/core/tsi/grpc_shadow_boringssl.h; sourceTree = "<group>"; };
 		7DEBF5B8306539279BB32C003A12FED6 /* FIRAuthAPNSToken.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthAPNSToken.h; path = FirebaseAuth/Sources/SystemService/FIRAuthAPNSToken.h; sourceTree = "<group>"; };
-		7E1F97990DD3E99E973FEC6F314173EE /* duration.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = duration.cc; path = absl/time/duration.cc; sourceTree = "<group>"; };
+		7E1F97990DD3E99E973FEC6F314173EE /* duration.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = duration.cc; path = absl/time/duration.cc; sourceTree = "<group>"; };
 		7E37CFAC5C299165A95A76D0A4521A89 /* FIRComponentContainer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRComponentContainer.h; path = FirebaseCore/Sources/Private/FIRComponentContainer.h; sourceTree = "<group>"; };
 		7E444E67AC16B50C049BF34D26A79C36 /* FIREmailLinkSignInResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIREmailLinkSignInResponse.m; path = FirebaseAuth/Sources/Backend/RPC/FIREmailLinkSignInResponse.m; sourceTree = "<group>"; };
-		7E47F7411EA2595D40872D7E702008BA /* err_data.c */ = {isa = PBXFileReference; includeInIndex = 1; path = err_data.c; sourceTree = "<group>"; };
-		7E489619CA5CFD965C9B965DA8B9CB9F /* error_apple.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = error_apple.mm; path = Firestore/core/src/util/error_apple.mm; sourceTree = "<group>"; };
+		7E47F7411EA2595D40872D7E702008BA /* err_data.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = err_data.c; sourceTree = "<group>"; };
+		7E489619CA5CFD965C9B965DA8B9CB9F /* error_apple.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = error_apple.mm; path = Firestore/core/src/util/error_apple.mm; sourceTree = "<group>"; };
 		7E7D7897D501D27AEF42B9E0C7031795 /* FIRComponent.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRComponent.h; path = FirebaseCore/Sources/Private/FIRComponent.h; sourceTree = "<group>"; };
 		7E83B2C9FAB96BD0EDBD89150083C08B /* FIRGitHubAuthProvider.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRGitHubAuthProvider.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRGitHubAuthProvider.h; sourceTree = "<group>"; };
-		7E9EB98A407098D94D6F3A1B4DC9D7BA /* duration.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = duration.upb.c; path = "src/core/ext/upb-generated/google/protobuf/duration.upb.c"; sourceTree = "<group>"; };
-		7ED87D92EC8DBA763725909092018508 /* ec.c */ = {isa = PBXFileReference; includeInIndex = 1; name = ec.c; path = src/crypto/fipsmodule/ec/ec.c; sourceTree = "<group>"; };
-		7EE672723A2A4D85E87E2C3205D118BF /* pick_first.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = pick_first.cc; path = src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc; sourceTree = "<group>"; };
+		7E9EB98A407098D94D6F3A1B4DC9D7BA /* duration.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = duration.upb.c; path = "src/core/ext/upb-generated/google/protobuf/duration.upb.c"; sourceTree = "<group>"; };
+		7ED87D92EC8DBA763725909092018508 /* ec.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = ec.c; path = src/crypto/fipsmodule/ec/ec.c; sourceTree = "<group>"; };
+		7EE672723A2A4D85E87E2C3205D118BF /* pick_first.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = pick_first.cc; path = src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc; sourceTree = "<group>"; };
 		7EE760F85AAC2202D9F92225AAF9610F /* struct.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = struct.upb.h; path = "src/core/ext/upb-generated/google/protobuf/struct.upb.h"; sourceTree = "<group>"; };
-		7EEDA9F10A5CC8E400A6439119F41B52 /* time_zone_libc.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = time_zone_libc.cc; path = absl/time/internal/cctz/src/time_zone_libc.cc; sourceTree = "<group>"; };
+		7EEDA9F10A5CC8E400A6439119F41B52 /* time_zone_libc.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = time_zone_libc.cc; path = absl/time/internal/cctz/src/time_zone_libc.cc; sourceTree = "<group>"; };
 		7EEE92C27CD8BFE0900C8C22C3A08CFC /* grpclb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpclb.h; path = src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h; sourceTree = "<group>"; };
 		7EEFB2FEDFCA421A82CAF6DCC758E1F7 /* child_policy_handler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = child_policy_handler.h; path = src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h; sourceTree = "<group>"; };
-		7EF1A202AE6FF215B3E549A5270EC3E6 /* pretty_printing.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = pretty_printing.cc; path = Firestore/core/src/nanopb/pretty_printing.cc; sourceTree = "<group>"; };
-		7EFB25310357A59BF8E99F07AFDEF1B0 /* frame_rst_stream.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = frame_rst_stream.cc; path = src/core/ext/transport/chttp2/transport/frame_rst_stream.cc; sourceTree = "<group>"; };
+		7EF1A202AE6FF215B3E549A5270EC3E6 /* pretty_printing.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = pretty_printing.cc; path = Firestore/core/src/nanopb/pretty_printing.cc; sourceTree = "<group>"; };
+		7EFB25310357A59BF8E99F07AFDEF1B0 /* frame_rst_stream.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = frame_rst_stream.cc; path = src/core/ext/transport/chttp2/transport/frame_rst_stream.cc; sourceTree = "<group>"; };
 		7EFC0875AA523A138C1AA3940FE4D145 /* pollset_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pollset_windows.h; path = src/core/lib/iomgr/pollset_windows.h; sourceTree = "<group>"; };
-		7F22628487EB6D19FCAB02F141697AD9 /* bio.c */ = {isa = PBXFileReference; includeInIndex = 1; name = bio.c; path = src/crypto/bio/bio.c; sourceTree = "<group>"; };
-		7F243E0174EC4739F667E56365CB5D73 /* endpoint_pair_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = endpoint_pair_windows.cc; path = src/core/lib/iomgr/endpoint_pair_windows.cc; sourceTree = "<group>"; };
+		7F22628487EB6D19FCAB02F141697AD9 /* bio.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = bio.c; path = src/crypto/bio/bio.c; sourceTree = "<group>"; };
+		7F243E0174EC4739F667E56365CB5D73 /* endpoint_pair_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = endpoint_pair_windows.cc; path = src/core/lib/iomgr/endpoint_pair_windows.cc; sourceTree = "<group>"; };
 		7F26E0C05B13D7D0362C1C6336809A1A /* tzfile.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tzfile.h; path = absl/time/internal/cctz/src/tzfile.h; sourceTree = "<group>"; };
 		7F2A55AA403999EBC4363BE141A40FA8 /* alts_tsi_utils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_tsi_utils.h; path = src/core/tsi/alts/handshaker/alts_tsi_utils.h; sourceTree = "<group>"; };
 		7F2C99E7EDF5CE04A45F829534B497EA /* FIRVerifyClientResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRVerifyClientResponse.m; path = FirebaseAuth/Sources/Backend/RPC/FIRVerifyClientResponse.m; sourceTree = "<group>"; };
-		7F337E7C4DAFC3CA6AFB893103F6840A /* dtls_record.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = dtls_record.cc; path = src/ssl/dtls_record.cc; sourceTree = "<group>"; };
-		7F43ADBD83567D0D63D9495BCC988648 /* validate.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = validate.upb.c; path = "src/core/ext/upb-generated/validate/validate.upb.c"; sourceTree = "<group>"; };
-		7F526F74FF66AC72697E682DD7427DDC /* bundle_loader.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = bundle_loader.cc; path = Firestore/core/src/bundle/bundle_loader.cc; sourceTree = "<group>"; };
-		7F5F935821607FF46DB59AD06229AC41 /* status.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = status.cc; path = util/status.cc; sourceTree = "<group>"; };
+		7F337E7C4DAFC3CA6AFB893103F6840A /* dtls_record.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = dtls_record.cc; path = src/ssl/dtls_record.cc; sourceTree = "<group>"; };
+		7F43ADBD83567D0D63D9495BCC988648 /* validate.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = validate.upb.c; path = "src/core/ext/upb-generated/validate/validate.upb.c"; sourceTree = "<group>"; };
+		7F526F74FF66AC72697E682DD7427DDC /* bundle_loader.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = bundle_loader.cc; path = Firestore/core/src/bundle/bundle_loader.cc; sourceTree = "<group>"; };
+		7F5F935821607FF46DB59AD06229AC41 /* status.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = status.cc; path = util/status.cc; sourceTree = "<group>"; };
 		7F6BD7467BF6656B2437DDB411B7334B /* FIRIdentityToolkitRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRIdentityToolkitRequest.h; path = FirebaseAuth/Sources/Backend/FIRIdentityToolkitRequest.h; sourceTree = "<group>"; };
-		7F9DA7637BC5F047500273E0A911FEA1 /* handshaker.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = handshaker.cc; path = src/core/lib/channel/handshaker.cc; sourceTree = "<group>"; };
+		7F9DA7637BC5F047500273E0A911FEA1 /* handshaker.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = handshaker.cc; path = src/core/lib/channel/handshaker.cc; sourceTree = "<group>"; };
 		7FA7C681144D94BDE965268FCE531E75 /* FIRGetOOBConfirmationCodeResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRGetOOBConfirmationCodeResponse.m; path = FirebaseAuth/Sources/Backend/RPC/FIRGetOOBConfirmationCodeResponse.m; sourceTree = "<group>"; };
-		7FB64C823B7D3D966038DF3EF70E57DB /* roots.pem */ = {isa = PBXFileReference; includeInIndex = 1; name = roots.pem; path = etc/roots.pem; sourceTree = "<group>"; };
-		7FC299B1AB72BC096E6DCA036ED09500 /* key_field_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = key_field_filter.cc; path = Firestore/core/src/core/key_field_filter.cc; sourceTree = "<group>"; };
+		7FB64C823B7D3D966038DF3EF70E57DB /* roots.pem */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = roots.pem; path = etc/roots.pem; sourceTree = "<group>"; };
+		7FC299B1AB72BC096E6DCA036ED09500 /* key_field_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = key_field_filter.cc; path = Firestore/core/src/core/key_field_filter.cc; sourceTree = "<group>"; };
 		7FE6BA1D2AA8EB85D2FC62FC8C85FE1C /* FIRMultiFactor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRMultiFactor.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRMultiFactor.h; sourceTree = "<group>"; };
-		80305890B7E11EBE65CBC5792109237C /* outlier_detection.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = outlier_detection.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c"; sourceTree = "<group>"; };
+		80305890B7E11EBE65CBC5792109237C /* outlier_detection.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = outlier_detection.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c"; sourceTree = "<group>"; };
 		80379183287A6CE46F5BCBCFA07700EB /* FIRStorageComponent.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageComponent.h; path = FirebaseStorage/Sources/FIRStorageComponent.h; sourceTree = "<group>"; };
-		8061A68B5F3BF3CABE304BD581A34E82 /* document_set.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = document_set.cc; path = Firestore/core/src/model/document_set.cc; sourceTree = "<group>"; };
+		8061A68B5F3BF3CABE304BD581A34E82 /* document_set.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = document_set.cc; path = Firestore/core/src/model/document_set.cc; sourceTree = "<group>"; };
 		80711984944D139C9396F53EEFA1F3B9 /* xds_client_stats.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = xds_client_stats.h; path = src/core/ext/filters/client_channel/xds/xds_client_stats.h; sourceTree = "<group>"; };
-		80918DDA0B3DE45399B1D0F41F3AEF42 /* not_in_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = not_in_filter.cc; path = Firestore/core/src/core/not_in_filter.cc; sourceTree = "<group>"; };
-		80A0B6A1B9E1D0B1050419A595F93FAD /* transport.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = transport.cc; path = src/core/lib/transport/transport.cc; sourceTree = "<group>"; };
+		80918DDA0B3DE45399B1D0F41F3AEF42 /* not_in_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = not_in_filter.cc; path = Firestore/core/src/core/not_in_filter.cc; sourceTree = "<group>"; };
+		80A0B6A1B9E1D0B1050419A595F93FAD /* transport.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = transport.cc; path = src/core/lib/transport/transport.cc; sourceTree = "<group>"; };
 		80A5EEA543789106E997559DA710BA9B /* algorithm_metadata.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = algorithm_metadata.h; path = src/core/lib/compression/algorithm_metadata.h; sourceTree = "<group>"; };
 		80C9498CD0972774E6872F752221BB30 /* FIRDeleteAccountRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRDeleteAccountRequest.m; path = FirebaseAuth/Sources/Backend/RPC/FIRDeleteAccountRequest.m; sourceTree = "<group>"; };
-		80E44AB9AAEC75F39D00B569A4FC722E /* combiner.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = combiner.cc; path = src/core/lib/iomgr/combiner.cc; sourceTree = "<group>"; };
+		80E44AB9AAEC75F39D00B569A4FC722E /* combiner.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = combiner.cc; path = src/core/lib/iomgr/combiner.cc; sourceTree = "<group>"; };
 		80F240533B0B6ECD4E0CC298BFF375E2 /* load_balancer_api.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = load_balancer_api.h; path = src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h; sourceTree = "<group>"; };
 		80FAA00B4C6A54F9BB754F7E7B087139 /* leveldb-library.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "leveldb-library.debug.xcconfig"; sourceTree = "<group>"; };
-		811D20BABE32D0B37C0D24682499A5BE /* int128_have_intrinsic.inc */ = {isa = PBXFileReference; includeInIndex = 1; name = int128_have_intrinsic.inc; path = absl/numeric/int128_have_intrinsic.inc; sourceTree = "<group>"; };
+		811D20BABE32D0B37C0D24682499A5BE /* int128_have_intrinsic.inc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.pascal; name = int128_have_intrinsic.inc; path = absl/numeric/int128_have_intrinsic.inc; sourceTree = "<group>"; };
 		8143223220E18F2A737DA97C1B4343AD /* GDTCORUploader.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORUploader.h; path = GoogleDataTransport/GDTCORLibrary/Internal/GDTCORUploader.h; sourceTree = "<group>"; };
 		8149C7B6BC9A8EB1A07A7C42D00B4BBB /* db_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = db_impl.h; path = db/db_impl.h; sourceTree = "<group>"; };
-		81593BCE02106A3651FED04F9EF3993F /* host_port.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = host_port.cc; path = src/core/lib/gprpp/host_port.cc; sourceTree = "<group>"; };
-		817927B654AFB8AC470693DB53C8E814 /* local_store.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = local_store.cc; path = Firestore/core/src/local/local_store.cc; sourceTree = "<group>"; };
+		81593BCE02106A3651FED04F9EF3993F /* host_port.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = host_port.cc; path = src/core/lib/gprpp/host_port.cc; sourceTree = "<group>"; };
+		817927B654AFB8AC470693DB53C8E814 /* local_store.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = local_store.cc; path = Firestore/core/src/local/local_store.cc; sourceTree = "<group>"; };
 		81884D03F8469E2E00676E4D3CD605CC /* flow_control.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = flow_control.h; path = src/core/ext/transport/chttp2/transport/flow_control.h; sourceTree = "<group>"; };
 		81A138508FA3C891496EDD2E03BDEAFF /* FIRFirebaseUserAgent.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRFirebaseUserAgent.m; path = FirebaseCore/Sources/FIRFirebaseUserAgent.m; sourceTree = "<group>"; };
 		81DC1E83B762ECD39ACC2757B833993A /* metadata.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = metadata.h; path = src/core/lib/transport/metadata.h; sourceTree = "<group>"; };
-		81DCC8B6C6BC2738C512CAFA1D7DF62D /* proxy_mapper_registry.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = proxy_mapper_registry.cc; path = src/core/ext/filters/client_channel/proxy_mapper_registry.cc; sourceTree = "<group>"; };
+		81DCC8B6C6BC2738C512CAFA1D7DF62D /* proxy_mapper_registry.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = proxy_mapper_registry.cc; path = src/core/ext/filters/client_channel/proxy_mapper_registry.cc; sourceTree = "<group>"; };
 		81F92FB494509601B0A2C74B23347E17 /* curve25519_64.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = curve25519_64.h; path = src/third_party/fiat/curve25519_64.h; sourceTree = "<group>"; };
 		8212BD3A0D7400C2A9A9966296428BF9 /* gsec.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = gsec.h; path = src/core/tsi/alts/crypt/gsec.h; sourceTree = "<group>"; };
-		8222911978A2F5B7885FC3D6DD83F1FA /* slice_buffer.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = slice_buffer.cc; path = src/core/lib/slice/slice_buffer.cc; sourceTree = "<group>"; };
-		826C6D79F073B35AF79AFECF8026791D /* leveldb_migrations.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = leveldb_migrations.cc; path = Firestore/core/src/local/leveldb_migrations.cc; sourceTree = "<group>"; };
+		8222911978A2F5B7885FC3D6DD83F1FA /* slice_buffer.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = slice_buffer.cc; path = src/core/lib/slice/slice_buffer.cc; sourceTree = "<group>"; };
+		826C6D79F073B35AF79AFECF8026791D /* leveldb_migrations.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = leveldb_migrations.cc; path = Firestore/core/src/local/leveldb_migrations.cc; sourceTree = "<group>"; };
 		8278463CBCC7AC805B919A2838AA486B /* alloc.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alloc.h; path = src/core/lib/gpr/alloc.h; sourceTree = "<group>"; };
-		82B95FE123319A91E0AFA09EAA43DD20 /* strerror.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = strerror.cc; path = Firestore/core/src/util/strerror.cc; sourceTree = "<group>"; };
+		82B95FE123319A91E0AFA09EAA43DD20 /* strerror.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = strerror.cc; path = Firestore/core/src/util/strerror.cc; sourceTree = "<group>"; };
 		82BCBE0168F374B736A214A8F02A2E10 /* call.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = call.h; path = src/core/lib/surface/call.h; sourceTree = "<group>"; };
 		831BBC205B3983854BC33EB3DBDC2C86 /* gRPC-Core.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "gRPC-Core.debug.xcconfig"; sourceTree = "<group>"; };
 		83301F3A8ACA81D8DDC4FB97E2A3A47F /* credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = credentials.h; path = src/core/lib/security/credentials/credentials.h; sourceTree = "<group>"; };
-		835BC9525DCCA7594BA59D02EEE1CD98 /* v3_int.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_int.c; path = src/crypto/x509v3/v3_int.c; sourceTree = "<group>"; };
+		835BC9525DCCA7594BA59D02EEE1CD98 /* v3_int.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_int.c; path = src/crypto/x509v3/v3_int.c; sourceTree = "<group>"; };
 		8368A3629B9FF8A98F6B895A292D17EE /* FIROAuthCredential_Internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIROAuthCredential_Internal.h; path = FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential_Internal.h; sourceTree = "<group>"; };
 		836C3A37E2F53B2F17D73C4D7A442A20 /* FIRComponent.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRComponent.h; path = FirebaseCore/Sources/Private/FIRComponent.h; sourceTree = "<group>"; };
 		837F2A44953316744371CABA89A12322 /* objects.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = objects.h; path = src/include/openssl/objects.h; sourceTree = "<group>"; };
 		8382831D5A49FF634918686ACF20C0CA /* GDTCORStorageEventSelector.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCORStorageEventSelector.m; path = GoogleDataTransport/GDTCORLibrary/GDTCORStorageEventSelector.m; sourceTree = "<group>"; };
 		840179CB36380E0B2E792BD19D3A1683 /* http_uri.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = http_uri.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.h"; sourceTree = "<group>"; };
 		84136D6A8E230DDF846C6C334EAFF098 /* FIRAuthProtoFinalizeMFAPhoneResponseInfo.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthProtoFinalizeMFAPhoneResponseInfo.m; path = FirebaseAuth/Sources/Backend/RPC/Proto/Phone/FIRAuthProtoFinalizeMFAPhoneResponseInfo.m; sourceTree = "<group>"; };
-		841CC186A8D3D6D813ACDD090209DB01 /* unscaledcycleclock.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = unscaledcycleclock.cc; path = absl/base/internal/unscaledcycleclock.cc; sourceTree = "<group>"; };
-		841D006DFABA7A219E63FA38D3084B59 /* tls_pthread.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tls_pthread.cc; path = src/core/lib/gpr/tls_pthread.cc; sourceTree = "<group>"; };
+		841CC186A8D3D6D813ACDD090209DB01 /* unscaledcycleclock.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = unscaledcycleclock.cc; path = absl/base/internal/unscaledcycleclock.cc; sourceTree = "<group>"; };
+		841D006DFABA7A219E63FA38D3084B59 /* tls_pthread.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tls_pthread.cc; path = src/core/lib/gpr/tls_pthread.cc; sourceTree = "<group>"; };
 		841F6A793C571FA82B59D76124DE0DAB /* PromisesObjC-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PromisesObjC-umbrella.h"; sourceTree = "<group>"; };
 		8424FDB408B58D368A0B39F84849AAE8 /* GDTCORTransport_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORTransport_Private.h; path = GoogleDataTransport/GDTCORLibrary/Private/GDTCORTransport_Private.h; sourceTree = "<group>"; };
-		8444E047226A793F4A6873EBA67BDFE7 /* ec_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; name = ec_asn1.c; path = src/crypto/ec_extra/ec_asn1.c; sourceTree = "<group>"; };
+		8444E047226A793F4A6873EBA67BDFE7 /* ec_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = ec_asn1.c; path = src/crypto/ec_extra/ec_asn1.c; sourceTree = "<group>"; };
 		84467B20099AD5EAA6E892F9051D79B6 /* FIRSetAccountInfoRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRSetAccountInfoRequest.h; path = FirebaseAuth/Sources/Backend/RPC/FIRSetAccountInfoRequest.h; sourceTree = "<group>"; };
-		8466EF131003D30B2E5C280791D36F09 /* xds_client_stats.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = xds_client_stats.cc; path = src/core/ext/filters/client_channel/xds/xds_client_stats.cc; sourceTree = "<group>"; };
+		8466EF131003D30B2E5C280791D36F09 /* xds_client_stats.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = xds_client_stats.cc; path = src/core/ext/filters/client_channel/xds/xds_client_stats.cc; sourceTree = "<group>"; };
 		846B38858F8E1B713FF58098D803ED55 /* json_util.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = json_util.h; path = src/core/lib/security/util/json_util.h; sourceTree = "<group>"; };
 		846FA7D59F48EF3C69DCDB51342C0279 /* incoming_metadata.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = incoming_metadata.h; path = src/core/ext/transport/chttp2/transport/incoming_metadata.h; sourceTree = "<group>"; };
 		847BC722F89D0BFAD72ACB66881A58CC /* avl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = avl.h; path = src/core/lib/avl/avl.h; sourceTree = "<group>"; };
-		8488846FABFD3E88692B582949816C27 /* FSTFirestoreComponent.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FSTFirestoreComponent.mm; path = Firestore/Source/API/FSTFirestoreComponent.mm; sourceTree = "<group>"; };
+		8488846FABFD3E88692B582949816C27 /* FSTFirestoreComponent.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FSTFirestoreComponent.mm; path = Firestore/Source/API/FSTFirestoreComponent.mm; sourceTree = "<group>"; };
 		84BF4C923B183ABB4B1FAD67875E9A1B /* udp_listener_config.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = udp_listener_config.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/listener/udp_listener_config.upb.h"; sourceTree = "<group>"; };
 		84D63A9AF4309530D3D8564E2C80527D /* GDTCOREvent+GDTCCTSupport.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "GDTCOREvent+GDTCCTSupport.m"; path = "GoogleDataTransport/GDTCCTLibrary/GDTCOREvent+GDTCCTSupport.m"; sourceTree = "<group>"; };
 		84D71771C320BBD7E3AA76BFF6DEB6C7 /* credentials_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = credentials_impl.h; path = include/grpcpp/security/credentials_impl.h; sourceTree = "<group>"; };
-		84E378FDAE5970AA46E0F0A6D17FE17B /* x509_ext.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509_ext.c; path = src/crypto/x509/x509_ext.c; sourceTree = "<group>"; };
-		85456C73AC8D9902D87A146BF7B4D23A /* rsaz_exp.c */ = {isa = PBXFileReference; includeInIndex = 1; name = rsaz_exp.c; path = src/crypto/fipsmodule/bn/rsaz_exp.c; sourceTree = "<group>"; };
-		856B5CD56F194FAD26EA91620B66D614 /* GoogleDataTransport.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = GoogleDataTransport.framework; path = GoogleDataTransport.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		84E378FDAE5970AA46E0F0A6D17FE17B /* x509_ext.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509_ext.c; path = src/crypto/x509/x509_ext.c; sourceTree = "<group>"; };
+		85456C73AC8D9902D87A146BF7B4D23A /* rsaz_exp.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = rsaz_exp.c; path = src/crypto/fipsmodule/bn/rsaz_exp.c; sourceTree = "<group>"; };
+		856B5CD56F194FAD26EA91620B66D614 /* GoogleDataTransport.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = GoogleDataTransport.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		85B9337D88E745D4D66229F07E032F3A /* resolver_factory.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resolver_factory.h; path = src/core/ext/filters/client_channel/resolver_factory.h; sourceTree = "<group>"; };
-		85E21496C81848BBBDD555FAF6E710FD /* endpoint.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = endpoint.cc; path = src/core/lib/iomgr/endpoint.cc; sourceTree = "<group>"; };
+		85E21496C81848BBBDD555FAF6E710FD /* endpoint.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = endpoint.cc; path = src/core/lib/iomgr/endpoint.cc; sourceTree = "<group>"; };
 		85E4A15AD71A97B7E2E9BC6012C4F7D7 /* timer_manager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = timer_manager.h; path = src/core/lib/iomgr/timer_manager.h; sourceTree = "<group>"; };
-		86149C907FF3AE64B1800B6731808A44 /* remote_objc_bridge.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = remote_objc_bridge.cc; path = Firestore/core/src/remote/remote_objc_bridge.cc; sourceTree = "<group>"; };
-		861D4D0EB5644ECB9D70042D6B5C3C20 /* tmpfile_msys.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tmpfile_msys.cc; path = src/core/lib/gpr/tmpfile_msys.cc; sourceTree = "<group>"; };
+		86149C907FF3AE64B1800B6731808A44 /* remote_objc_bridge.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = remote_objc_bridge.cc; path = Firestore/core/src/remote/remote_objc_bridge.cc; sourceTree = "<group>"; };
+		861D4D0EB5644ECB9D70042D6B5C3C20 /* tmpfile_msys.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tmpfile_msys.cc; path = src/core/lib/gpr/tmpfile_msys.cc; sourceTree = "<group>"; };
 		8626160AACC2F967BFE4CE4F82E6D7EB /* gRPC-C++-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "gRPC-C++-umbrella.h"; sourceTree = "<group>"; };
 		865544F46267E315A68EB8FFF9E0148F /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/pkcs7/internal.h; sourceTree = "<group>"; };
-		86556A8A6F41E12E6A56D49F44C93FDB /* statusor.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = statusor.cc; path = Firestore/core/src/util/statusor.cc; sourceTree = "<group>"; };
+		86556A8A6F41E12E6A56D49F44C93FDB /* statusor.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = statusor.cc; path = Firestore/core/src/util/statusor.cc; sourceTree = "<group>"; };
 		8665E10B0E8CC90DF27E33D316DF53AE /* byte_buffer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = byte_buffer.h; path = include/grpc/impl/codegen/byte_buffer.h; sourceTree = "<group>"; };
 		8692D41D988EAEA3AD6AF2D3D0B42589 /* block.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = block.h; path = table/block.h; sourceTree = "<group>"; };
-		869C97177767016DD37E832C160E5F28 /* dsa_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; name = dsa_asn1.c; path = src/crypto/dsa/dsa_asn1.c; sourceTree = "<group>"; };
+		869C97177767016DD37E832C160E5F28 /* dsa_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = dsa_asn1.c; path = src/crypto/dsa/dsa_asn1.c; sourceTree = "<group>"; };
 		86A7D6C0AECFDA0FA387E77B9512E4D6 /* load_system_roots.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = load_system_roots.h; path = src/core/lib/security/security_connector/load_system_roots.h; sourceTree = "<group>"; };
-		86BE83F9424B32A5A1D310D1691754F2 /* ads.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = ads.upb.c; path = "src/core/ext/upb-generated/envoy/service/discovery/v2/ads.upb.c"; sourceTree = "<group>"; };
+		86BE83F9424B32A5A1D310D1691754F2 /* ads.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = ads.upb.c; path = "src/core/ext/upb-generated/envoy/service/discovery/v2/ads.upb.c"; sourceTree = "<group>"; };
 		870BC95A0C42444EEC7E3A23A07FC6EC /* string_view.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = string_view.h; path = src/core/lib/gprpp/string_view.h; sourceTree = "<group>"; };
 		87269B0337E6D1AB7CD13283416035F2 /* fake_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = fake_credentials.h; path = src/core/lib/security/credentials/fake/fake_credentials.h; sourceTree = "<group>"; };
 		873D70559C735CE4A220F4586530C99F /* FBLPromise+Reduce.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "FBLPromise+Reduce.m"; path = "Sources/FBLPromises/FBLPromise+Reduce.m"; sourceTree = "<group>"; };
@@ -10042,58 +10043,58 @@
 		880CFA5425E663EBD1C6BD8FD3995A8F /* curve25519.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = curve25519.h; path = src/include/openssl/curve25519.h; sourceTree = "<group>"; };
 		8819CE38062A7DA7D2EA1D6919A3CB7E /* FIREmailAuthProvider.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIREmailAuthProvider.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIREmailAuthProvider.h; sourceTree = "<group>"; };
 		883806E045E88940416902D266A90299 /* transport_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = transport_impl.h; path = src/core/lib/transport/transport_impl.h; sourceTree = "<group>"; };
-		88475758A38531FF92F1C1B7F87A4176 /* grpc_ares_ev_driver_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_ares_ev_driver_posix.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc; sourceTree = "<group>"; };
+		88475758A38531FF92F1C1B7F87A4176 /* grpc_ares_ev_driver_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_ares_ev_driver_posix.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc; sourceTree = "<group>"; };
 		885814F83B771B2C14F3EA5591F95F96 /* memory.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = memory.h; path = absl/memory/memory.h; sourceTree = "<group>"; };
-		8866616BCBDB12AF2A7CB8D3620953C5 /* codegen_init.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = codegen_init.cc; path = src/cpp/codegen/codegen_init.cc; sourceTree = "<group>"; };
+		8866616BCBDB12AF2A7CB8D3620953C5 /* codegen_init.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = codegen_init.cc; path = src/cpp/codegen/codegen_init.cc; sourceTree = "<group>"; };
 		8875D0D623D9FDC8C65C79B3B4662A0B /* FIRAnalyticsConfiguration.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAnalyticsConfiguration.h; path = FirebaseCore/Sources/FIRAnalyticsConfiguration.h; sourceTree = "<group>"; };
 		88A22F5E14AE1EDF14E7DADB449E7A3B /* FIRAppInternal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAppInternal.h; path = FirebaseCore/Sources/Private/FIRAppInternal.h; sourceTree = "<group>"; };
 		88A77F68F3B9188BA28AFA150AFA88BE /* identity.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = identity.h; path = absl/base/internal/identity.h; sourceTree = "<group>"; };
 		8912197F33B2EC08CA250B07CAD01BD2 /* cct.nanopb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = cct.nanopb.h; path = GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h; sourceTree = "<group>"; };
-		891767522DF224AE00190678A15B4086 /* backend_metric.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = backend_metric.cc; path = src/core/ext/filters/client_channel/backend_metric.cc; sourceTree = "<group>"; };
-		893E186746EB8C08D7236E89B6D56AE3 /* thd_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = thd_windows.cc; path = src/core/lib/gprpp/thd_windows.cc; sourceTree = "<group>"; };
+		891767522DF224AE00190678A15B4086 /* backend_metric.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = backend_metric.cc; path = src/core/ext/filters/client_channel/backend_metric.cc; sourceTree = "<group>"; };
+		893E186746EB8C08D7236E89B6D56AE3 /* thd_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = thd_windows.cc; path = src/core/lib/gprpp/thd_windows.cc; sourceTree = "<group>"; };
 		8944E21A811AC6FC014587AE35B8C72D /* resolving_lb_policy.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resolving_lb_policy.h; path = src/core/ext/filters/client_channel/resolving_lb_policy.h; sourceTree = "<group>"; };
-		89472CA0F1F1055674E8804207CF59AA /* crypto.c */ = {isa = PBXFileReference; includeInIndex = 1; name = crypto.c; path = src/crypto/crypto.c; sourceTree = "<group>"; };
+		89472CA0F1F1055674E8804207CF59AA /* crypto.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = crypto.c; path = src/crypto/crypto.c; sourceTree = "<group>"; };
 		89566B47EB822A57B8400CC2C23DD0CD /* version_set.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = version_set.h; path = db/version_set.h; sourceTree = "<group>"; };
 		8956B5BEB9A8C7E3EE3073B376D81FB7 /* FIRStorageErrors.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageErrors.h; path = FirebaseStorage/Sources/FIRStorageErrors.h; sourceTree = "<group>"; };
 		89710DEAD9F65D5778E7F23E897B2162 /* GDTCORUploadBatch.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORUploadBatch.h; path = GoogleDataTransport/GDTCORLibrary/Private/GDTCORUploadBatch.h; sourceTree = "<group>"; };
-		89843CF2C923FF496431E8DDFE9D4E9D /* array_contains_any_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = array_contains_any_filter.cc; path = Firestore/core/src/core/array_contains_any_filter.cc; sourceTree = "<group>"; };
-		89A0A26A113E040EC078535DC1FA3287 /* ex_data.c */ = {isa = PBXFileReference; includeInIndex = 1; name = ex_data.c; path = src/crypto/ex_data.c; sourceTree = "<group>"; };
+		89843CF2C923FF496431E8DDFE9D4E9D /* array_contains_any_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = array_contains_any_filter.cc; path = Firestore/core/src/core/array_contains_any_filter.cc; sourceTree = "<group>"; };
+		89A0A26A113E040EC078535DC1FA3287 /* ex_data.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = ex_data.c; path = src/crypto/ex_data.c; sourceTree = "<group>"; };
 		89A0BE510FE096DCA866FE7AB48F1512 /* utility.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = utility.h; path = absl/utility/utility.h; sourceTree = "<group>"; };
 		89A80C893CC5572BDEC5BCE28F77EABD /* lockfree_event.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = lockfree_event.h; path = src/core/lib/iomgr/lockfree_event.h; sourceTree = "<group>"; };
 		89CCA565632137707316AC11139082E3 /* error.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = error.h; path = src/core/lib/iomgr/error.h; sourceTree = "<group>"; };
-		89D1E98DBFEC7876447031B4087BA7CC /* http_uri.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = http_uri.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c"; sourceTree = "<group>"; };
+		89D1E98DBFEC7876447031B4087BA7CC /* http_uri.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = http_uri.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c"; sourceTree = "<group>"; };
 		89DD2D0E36CAEAC8305351328746C191 /* options.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = options.h; path = absl/base/options.h; sourceTree = "<group>"; };
 		89F122F324B25D3C6DFF323E8C5BAF21 /* thd_id.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = thd_id.h; path = include/grpc/support/thd_id.h; sourceTree = "<group>"; };
-		8A058235FF2312A44E57E97C2E6EE479 /* mpmcqueue.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = mpmcqueue.cc; path = src/core/lib/iomgr/executor/mpmcqueue.cc; sourceTree = "<group>"; };
+		8A058235FF2312A44E57E97C2E6EE479 /* mpmcqueue.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = mpmcqueue.cc; path = src/core/lib/iomgr/executor/mpmcqueue.cc; sourceTree = "<group>"; };
 		8A07409FB7020E71E8B12ED9B3FEF737 /* endpoint_components.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = endpoint_components.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/endpoint/endpoint_components.upb.h"; sourceTree = "<group>"; };
 		8A07A9911A4C8BA54E0D6CD20662E6F8 /* FirebaseStorage.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FirebaseStorage.release.xcconfig; sourceTree = "<group>"; };
-		8A218188C3C8A8BA76E5C3B8735A6DF8 /* secure_channel_create.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = secure_channel_create.cc; path = src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc; sourceTree = "<group>"; };
-		8A2B0C6B4229C5E71DAEC2AA243F870B /* auth_property_iterator.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = auth_property_iterator.cc; path = src/cpp/common/auth_property_iterator.cc; sourceTree = "<group>"; };
+		8A218188C3C8A8BA76E5C3B8735A6DF8 /* secure_channel_create.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = secure_channel_create.cc; path = src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc; sourceTree = "<group>"; };
+		8A2B0C6B4229C5E71DAEC2AA243F870B /* auth_property_iterator.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = auth_property_iterator.cc; path = src/cpp/common/auth_property_iterator.cc; sourceTree = "<group>"; };
 		8A343251A8C16CE7C9E6DA0D698A8E09 /* xds_bootstrap.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = xds_bootstrap.h; path = src/core/ext/filters/client_channel/xds/xds_bootstrap.h; sourceTree = "<group>"; };
 		8A52A9F8B69B26EC1DDF60706E191F08 /* ssl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl.h; path = src/include/openssl/ssl.h; sourceTree = "<group>"; };
 		8ACA57CF250D1C39820426D27F2DC8B6 /* FirebaseAuth.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = FirebaseAuth.modulemap; sourceTree = "<group>"; };
-		8AD9F3AC723353E1ECAE1A895DB2710A /* init.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = init.cc; path = src/core/lib/surface/init.cc; sourceTree = "<group>"; };
+		8AD9F3AC723353E1ECAE1A895DB2710A /* init.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = init.cc; path = src/core/lib/surface/init.cc; sourceTree = "<group>"; };
 		8B027B6E9E2FF6FDC143F633F3D8671F /* tls_pthread.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tls_pthread.h; path = src/core/lib/gpr/tls_pthread.h; sourceTree = "<group>"; };
 		8B21DC059E2A05F9BF34FF71824AFC99 /* port.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = port.h; path = src/core/lib/iomgr/port.h; sourceTree = "<group>"; };
-		8B29A43AC95763879A644AEBAA84EE19 /* tcp_client_custom.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tcp_client_custom.cc; path = src/core/lib/iomgr/tcp_client_custom.cc; sourceTree = "<group>"; };
+		8B29A43AC95763879A644AEBAA84EE19 /* tcp_client_custom.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tcp_client_custom.cc; path = src/core/lib/iomgr/tcp_client_custom.cc; sourceTree = "<group>"; };
 		8B3618EC3989A17B7655DAFBA9267DB0 /* decode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = decode.h; path = third_party/upb/upb/decode.h; sourceTree = "<group>"; };
 		8B4121EF1EEBFEEDC6FCCC4B3D38FCE4 /* alloc.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alloc.h; path = src/core/lib/gpr/alloc.h; sourceTree = "<group>"; };
 		8B4DBAA8985B4B4FED4C3616E7861A05 /* bind.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = bind.h; path = absl/strings/internal/str_format/bind.h; sourceTree = "<group>"; };
 		8B818B1E0CDE85F1C2706A98F86929EE /* GDTCCTNanopbHelpers.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCCTNanopbHelpers.m; path = GoogleDataTransport/GDTCCTLibrary/GDTCCTNanopbHelpers.m; sourceTree = "<group>"; };
 		8B8C5A3A2FB17412F7069502211AC748 /* FIRAuth.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuth.m; path = FirebaseAuth/Sources/Auth/FIRAuth.m; sourceTree = "<group>"; };
-		8B8CB6643EA6EABEBD32A18F741215CB /* rsa_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; name = rsa_asn1.c; path = src/crypto/rsa_extra/rsa_asn1.c; sourceTree = "<group>"; };
-		8BAA4AB63C21BB69DB63769EAFEDFE41 /* rc4.c */ = {isa = PBXFileReference; includeInIndex = 1; name = rc4.c; path = src/crypto/rc4/rc4.c; sourceTree = "<group>"; };
-		8BB0065617C9E642B0232B553FAC8038 /* tmpfile_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tmpfile_windows.cc; path = src/core/lib/gpr/tmpfile_windows.cc; sourceTree = "<group>"; };
+		8B8CB6643EA6EABEBD32A18F741215CB /* rsa_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = rsa_asn1.c; path = src/crypto/rsa_extra/rsa_asn1.c; sourceTree = "<group>"; };
+		8BAA4AB63C21BB69DB63769EAFEDFE41 /* rc4.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = rc4.c; path = src/crypto/rc4/rc4.c; sourceTree = "<group>"; };
+		8BB0065617C9E642B0232B553FAC8038 /* tmpfile_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tmpfile_windows.cc; path = src/core/lib/gpr/tmpfile_windows.cc; sourceTree = "<group>"; };
 		8BB27F5D589A1369C57D47D97A913739 /* alts_grpc_record_protocol.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_grpc_record_protocol.h; path = src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol.h; sourceTree = "<group>"; };
-		8BBD764CA2EC7FD87EAF602795CD91C0 /* parse_address.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = parse_address.cc; path = src/core/ext/filters/client_channel/parse_address.cc; sourceTree = "<group>"; };
+		8BBD764CA2EC7FD87EAF602795CD91C0 /* parse_address.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = parse_address.cc; path = src/core/ext/filters/client_channel/parse_address.cc; sourceTree = "<group>"; };
 		8BC743569D8A18CD507E3F60A5515231 /* str_split_internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = str_split_internal.h; path = absl/strings/internal/str_split_internal.h; sourceTree = "<group>"; };
 		8BD1F2DC46C0D83BDC78ED45658129C3 /* FIRVerifyClientResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRVerifyClientResponse.h; path = FirebaseAuth/Sources/Backend/RPC/FIRVerifyClientResponse.h; sourceTree = "<group>"; };
 		8BD5732E95470E0763F2594C52DB6326 /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/pkcs8/internal.h; sourceTree = "<group>"; };
 		8BDB81C9445F7AA21D8476F8BA6030A9 /* FIRMultiFactorInfo.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRMultiFactorInfo.m; path = FirebaseAuth/Sources/MultiFactor/FIRMultiFactorInfo.m; sourceTree = "<group>"; };
-		8BDBCC3CCBA327E4F9B918D806F94E74 /* parser.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = parser.cc; path = absl/strings/internal/str_format/parser.cc; sourceTree = "<group>"; };
+		8BDBCC3CCBA327E4F9B918D806F94E74 /* parser.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = parser.cc; path = absl/strings/internal/str_format/parser.cc; sourceTree = "<group>"; };
 		8BDE143A6EF15DFD3D7718CD1B70ECC7 /* transport_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = transport_impl.h; path = src/core/lib/transport/transport_impl.h; sourceTree = "<group>"; };
-		8BE408A3F5A551CD9BD6841275ADD27B /* log_apple.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = log_apple.mm; path = Firestore/core/src/util/log_apple.mm; sourceTree = "<group>"; };
-		8BF034C884791E018B04A1222664FEF0 /* port_def.inc */ = {isa = PBXFileReference; includeInIndex = 1; name = port_def.inc; path = third_party/upb/upb/port_def.inc; sourceTree = "<group>"; };
+		8BE408A3F5A551CD9BD6841275ADD27B /* log_apple.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = log_apple.mm; path = Firestore/core/src/util/log_apple.mm; sourceTree = "<group>"; };
+		8BF034C884791E018B04A1222664FEF0 /* port_def.inc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.pascal; name = port_def.inc; path = third_party/upb/upb/port_def.inc; sourceTree = "<group>"; };
 		8BF86B95AB872546488CCBF29FF584FB /* iocp_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = iocp_windows.h; path = src/core/lib/iomgr/iocp_windows.h; sourceTree = "<group>"; };
 		8C1259A83053745C3E0427C99DD37359 /* FIRPhoneAuthProvider.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRPhoneAuthProvider.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRPhoneAuthProvider.h; sourceTree = "<group>"; };
 		8C29E2A7943FC307703BC9332009D9F1 /* abseil.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = abseil.modulemap; sourceTree = "<group>"; };
@@ -10102,41 +10103,41 @@
 		8C74294E8F2145D3041178EE94429472 /* status_code_enum.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = status_code_enum.h; path = include/grpcpp/support/status_code_enum.h; sourceTree = "<group>"; };
 		8C90359B7B7DCE7565E2DF2D6B00DA49 /* Pods-FaceRecogAttendance-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-FaceRecogAttendance-acknowledgements.plist"; sourceTree = "<group>"; };
 		8C9BC0EF86DD6C0C2257EDF23B8F995A /* FIRStorageListResult.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStorageListResult.m; path = FirebaseStorage/Sources/FIRStorageListResult.m; sourceTree = "<group>"; };
-		8CBE6F874090A650228AA3F6BC1AFD05 /* hkdf.c */ = {isa = PBXFileReference; includeInIndex = 1; name = hkdf.c; path = src/crypto/hkdf/hkdf.c; sourceTree = "<group>"; };
-		8CC9178C366942FD6FF6A115604EAD58 /* FirebaseCoreDiagnostics.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = FirebaseCoreDiagnostics.framework; path = FirebaseCoreDiagnostics.framework; sourceTree = BUILT_PRODUCTS_DIR; };
-		8CD85F245339DA1C9140FAB0E026F5AC /* env_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = env_posix.cc; path = src/core/lib/gpr/env_posix.cc; sourceTree = "<group>"; };
+		8CBE6F874090A650228AA3F6BC1AFD05 /* hkdf.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = hkdf.c; path = src/crypto/hkdf/hkdf.c; sourceTree = "<group>"; };
+		8CC9178C366942FD6FF6A115604EAD58 /* FirebaseCoreDiagnostics.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FirebaseCoreDiagnostics.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		8CD85F245339DA1C9140FAB0E026F5AC /* env_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = env_posix.cc; path = src/core/lib/gpr/env_posix.cc; sourceTree = "<group>"; };
 		8CF4E756E2FD8E0205CCAC549CD262AC /* slice_internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = slice_internal.h; path = src/core/lib/slice/slice_internal.h; sourceTree = "<group>"; };
-		8D36DA0E7BAA25E78385C4407977D95D /* lru_garbage_collector.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = lru_garbage_collector.cc; path = Firestore/core/src/local/lru_garbage_collector.cc; sourceTree = "<group>"; };
+		8D36DA0E7BAA25E78385C4407977D95D /* lru_garbage_collector.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = lru_garbage_collector.cc; path = Firestore/core/src/local/lru_garbage_collector.cc; sourceTree = "<group>"; };
 		8D6F3B0D0B31C976DB9780E11C16DE07 /* GULAppDelegateSwizzler_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULAppDelegateSwizzler_Private.h; path = GoogleUtilities/AppDelegateSwizzler/Internal/GULAppDelegateSwizzler_Private.h; sourceTree = "<group>"; };
 		8D77950F098395F55F63772DFDE7E34F /* FIROptions.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIROptions.m; path = FirebaseCore/Sources/FIROptions.m; sourceTree = "<group>"; };
-		8DC86F1E26036C9A2F619D64A53882C9 /* leveldb_transaction.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = leveldb_transaction.cc; path = Firestore/core/src/local/leveldb_transaction.cc; sourceTree = "<group>"; };
-		8DF67EF744B69CB4A4338242D9333516 /* health_check_service_server_builder_option.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = health_check_service_server_builder_option.cc; path = src/cpp/server/health/health_check_service_server_builder_option.cc; sourceTree = "<group>"; };
+		8DC86F1E26036C9A2F619D64A53882C9 /* leveldb_transaction.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = leveldb_transaction.cc; path = Firestore/core/src/local/leveldb_transaction.cc; sourceTree = "<group>"; };
+		8DF67EF744B69CB4A4338242D9333516 /* health_check_service_server_builder_option.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = health_check_service_server_builder_option.cc; path = src/cpp/server/health/health_check_service_server_builder_option.cc; sourceTree = "<group>"; };
 		8DFBB9FD37811735D022AE68DC1F5243 /* atm_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = atm_windows.h; path = include/grpc/impl/codegen/atm_windows.h; sourceTree = "<group>"; };
-		8E0CF219CD8367CA41696BCEB3B5D081 /* gsec.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = gsec.cc; path = src/core/tsi/alts/crypt/gsec.cc; sourceTree = "<group>"; };
+		8E0CF219CD8367CA41696BCEB3B5D081 /* gsec.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = gsec.cc; path = src/core/tsi/alts/crypt/gsec.cc; sourceTree = "<group>"; };
 		8E12041567545DAE289742D40904BFE1 /* timers.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = timers.h; path = src/core/lib/profiling/timers.h; sourceTree = "<group>"; };
 		8E3059970612E7113A7E1E7706746DED /* leveldb-library.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "leveldb-library.release.xcconfig"; sourceTree = "<group>"; };
 		8E30E98819BBE1A657E24BCBA5BE1DA2 /* status.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = status.h; path = include/grpcpp/impl/codegen/status.h; sourceTree = "<group>"; };
 		8E3EB7238D7691390F43B06B002EC9A2 /* type_check.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = type_check.h; path = src/include/openssl/type_check.h; sourceTree = "<group>"; };
-		8E59E49BB79443C7CA34BBABCB9D66DB /* bdp_estimator.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = bdp_estimator.cc; path = src/core/lib/transport/bdp_estimator.cc; sourceTree = "<group>"; };
+		8E59E49BB79443C7CA34BBABCB9D66DB /* bdp_estimator.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = bdp_estimator.cc; path = src/core/lib/transport/bdp_estimator.cc; sourceTree = "<group>"; };
 		8E5E80779AE120D39120F221C408D25D /* timer_manager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = timer_manager.h; path = src/core/lib/iomgr/timer_manager.h; sourceTree = "<group>"; };
 		8E7B72685F88F0FC706108ECD7BB17CA /* nanopb-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "nanopb-Info.plist"; sourceTree = "<group>"; };
 		8E9162FEBBC182F5F5E17D8935D804E8 /* chttp2_transport.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = chttp2_transport.h; path = src/core/ext/transport/chttp2/transport/chttp2_transport.h; sourceTree = "<group>"; };
-		8EEAAD35DBE6EE2A9D89215559F31222 /* inproc_plugin.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = inproc_plugin.cc; path = src/core/ext/transport/inproc/inproc_plugin.cc; sourceTree = "<group>"; };
+		8EEAAD35DBE6EE2A9D89215559F31222 /* inproc_plugin.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = inproc_plugin.cc; path = src/core/ext/transport/inproc/inproc_plugin.cc; sourceTree = "<group>"; };
 		8F1BC818C12F2A4678B01D06E082ED16 /* custom_tag.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = custom_tag.upb.h; path = "src/core/ext/upb-generated/envoy/type/tracing/v2/custom_tag.upb.h"; sourceTree = "<group>"; };
-		8F441E6168D86ADCB99803FAD9FE0E66 /* snapshot_version.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = snapshot_version.cc; path = Firestore/core/src/model/snapshot_version.cc; sourceTree = "<group>"; };
-		8F48BBEB740B79250E7DADD94C4157DE /* unix_sockets_posix_noop.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = unix_sockets_posix_noop.cc; path = src/core/lib/iomgr/unix_sockets_posix_noop.cc; sourceTree = "<group>"; };
+		8F441E6168D86ADCB99803FAD9FE0E66 /* snapshot_version.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = snapshot_version.cc; path = Firestore/core/src/model/snapshot_version.cc; sourceTree = "<group>"; };
+		8F48BBEB740B79250E7DADD94C4157DE /* unix_sockets_posix_noop.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = unix_sockets_posix_noop.cc; path = src/core/lib/iomgr/unix_sockets_posix_noop.cc; sourceTree = "<group>"; };
 		8F49483A24655F33B19399B33AC59661 /* GDTCOREndpoints.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCOREndpoints.h; path = GoogleDataTransport/GDTCORLibrary/Public/GoogleDataTransport/GDTCOREndpoints.h; sourceTree = "<group>"; };
 		8F6CB629AEEE1C89420F18DA6E850300 /* atomic_hook.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = atomic_hook.h; path = absl/base/internal/atomic_hook.h; sourceTree = "<group>"; };
 		8F7C7D7C0FF618371368CFF8EC3F3268 /* secure_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = secure_credentials.h; path = src/cpp/client/secure_credentials.h; sourceTree = "<group>"; };
-		8F7D126E2045101D7FA5B2CDD9325217 /* local_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = local_credentials.cc; path = src/core/lib/security/credentials/local/local_credentials.cc; sourceTree = "<group>"; };
+		8F7D126E2045101D7FA5B2CDD9325217 /* local_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = local_credentials.cc; path = src/core/lib/security/credentials/local/local_credentials.cc; sourceTree = "<group>"; };
 		8F85284BF26330F191159936217279E7 /* httpcli.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = httpcli.h; path = src/core/lib/http/httpcli.h; sourceTree = "<group>"; };
 		8F861516769A7DE33248CC53C0F141B7 /* FIRCoreDiagnosticsData.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRCoreDiagnosticsData.h; path = Interop/CoreDiagnostics/Public/FIRCoreDiagnosticsData.h; sourceTree = "<group>"; };
 		8F8F2CFE0E421DEC6BC8EA963B66DBCD /* env_posix_test_helper.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = env_posix_test_helper.h; path = util/env_posix_test_helper.h; sourceTree = "<group>"; };
 		8F971D01EB31E911A2C74F5CAFB7AE25 /* FIRTimestamp.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRTimestamp.h; path = Firestore/Source/Public/FirebaseFirestore/FIRTimestamp.h; sourceTree = "<group>"; };
 		8FA1D987A085186EE6180DA49802AB87 /* sockaddr_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sockaddr_windows.h; path = src/core/lib/iomgr/sockaddr_windows.h; sourceTree = "<group>"; };
-		8FA3B71EFDA41A289CFA3EB95687B9AF /* chttp2_server.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = chttp2_server.cc; path = src/core/ext/transport/chttp2/server/chttp2_server.cc; sourceTree = "<group>"; };
+		8FA3B71EFDA41A289CFA3EB95687B9AF /* chttp2_server.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = chttp2_server.cc; path = src/core/ext/transport/chttp2/server/chttp2_server.cc; sourceTree = "<group>"; };
 		8FA4E05CBF7A2C60FFD8F4859A35C8A9 /* FirebaseCoreDiagnostics.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FirebaseCoreDiagnostics.debug.xcconfig; sourceTree = "<group>"; };
-		8FCD225F4E984D744DD2F43B30B9FD06 /* query_snapshot.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = query_snapshot.cc; path = Firestore/core/src/api/query_snapshot.cc; sourceTree = "<group>"; };
+		8FCD225F4E984D744DD2F43B30B9FD06 /* query_snapshot.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = query_snapshot.cc; path = Firestore/core/src/api/query_snapshot.cc; sourceTree = "<group>"; };
 		8FD6FAEE61ED755900454C8208D15E1D /* ssl_session.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl_session.h; path = src/core/tsi/ssl/session_cache/ssl_session.h; sourceTree = "<group>"; };
 		8FF70F9D44FD8FECBDB96A1405C775BF /* opensslv.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = opensslv.h; path = src/include/openssl/opensslv.h; sourceTree = "<group>"; };
 		8FFD1637CEAA91F3ECF60C9FA604F8AA /* useful.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = useful.h; path = src/core/lib/gpr/useful.h; sourceTree = "<group>"; };
@@ -10147,41 +10148,41 @@
 		907907800B2E437C83757AA05EFA7B9D /* FIRBundleUtil.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRBundleUtil.h; path = FirebaseCore/Sources/FIRBundleUtil.h; sourceTree = "<group>"; };
 		90B3F23229B0F23E1CA967A00B09CF62 /* FIRStorageDownloadTask_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageDownloadTask_Private.h; path = FirebaseStorage/Sources/FIRStorageDownloadTask_Private.h; sourceTree = "<group>"; };
 		90BEAB3CF7A22C91BF8B54DE093F6426 /* abseil.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = abseil.debug.xcconfig; sourceTree = "<group>"; };
-		90C8A9D2D44CE387A7BAE48594BD0F00 /* inproc_transport.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = inproc_transport.cc; path = src/core/ext/transport/inproc/inproc_transport.cc; sourceTree = "<group>"; };
-		90DD8679CE5C22B408E38152709024D2 /* time_zone_lookup.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = time_zone_lookup.cc; path = absl/time/internal/cctz/src/time_zone_lookup.cc; sourceTree = "<group>"; };
+		90C8A9D2D44CE387A7BAE48594BD0F00 /* inproc_transport.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = inproc_transport.cc; path = src/core/ext/transport/inproc/inproc_transport.cc; sourceTree = "<group>"; };
+		90DD8679CE5C22B408E38152709024D2 /* time_zone_lookup.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = time_zone_lookup.cc; path = absl/time/internal/cctz/src/time_zone_lookup.cc; sourceTree = "<group>"; };
 		90E10AB0CC4988939346C7EB55A36E2E /* thd.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = thd.h; path = src/core/lib/gprpp/thd.h; sourceTree = "<group>"; };
 		90F18475DC68D861E7459439BBC16D4E /* local_security_connector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = local_security_connector.h; path = src/core/lib/security/security_connector/local/local_security_connector.h; sourceTree = "<group>"; };
 		90F419262C2F254D6ECA9CED2A36945C /* sync_stream.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sync_stream.h; path = include/grpcpp/impl/codegen/sync_stream.h; sourceTree = "<group>"; };
 		910B3D94F23AF6D6A84D83DE15ECF173 /* lhash.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = lhash.h; path = src/include/openssl/lhash.h; sourceTree = "<group>"; };
-		9143F59CE52E4193A5DA6D127DB804CD /* channel_argument_option.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = channel_argument_option.cc; path = src/cpp/server/channel_argument_option.cc; sourceTree = "<group>"; };
+		9143F59CE52E4193A5DA6D127DB804CD /* channel_argument_option.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = channel_argument_option.cc; path = src/cpp/server/channel_argument_option.cc; sourceTree = "<group>"; };
 		91697AA2FA58C3397D6BC2253270D061 /* FIRAuthUserDefaults.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthUserDefaults.m; path = FirebaseAuth/Sources/Storage/FIRAuthUserDefaults.m; sourceTree = "<group>"; };
 		916E80DDE4C1930CF461960B5E782456 /* server_address.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_address.h; path = src/core/ext/filters/client_channel/server_address.h; sourceTree = "<group>"; };
 		9183A39E53F742E53F101CB8907C2CB8 /* const_init.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = const_init.h; path = absl/base/const_init.h; sourceTree = "<group>"; };
 		918519789452BE8EB2A8E8AA63A80EC1 /* timer_heap.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = timer_heap.h; path = src/core/lib/iomgr/timer_heap.h; sourceTree = "<group>"; };
 		91ACE3F2CAF2F4B8C228B07E7AE7A0FD /* connectivity_state.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = connectivity_state.h; path = include/grpc/impl/codegen/connectivity_state.h; sourceTree = "<group>"; };
-		91AD62BB7C5B8A0130EBEF5A26B5F228 /* v3_lib.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_lib.c; path = src/crypto/x509v3/v3_lib.c; sourceTree = "<group>"; };
+		91AD62BB7C5B8A0130EBEF5A26B5F228 /* v3_lib.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_lib.c; path = src/crypto/x509v3/v3_lib.c; sourceTree = "<group>"; };
 		91B721EE8865C032E8DB3815EFDFA859 /* FIRBundleUtil.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRBundleUtil.m; path = FirebaseCore/Sources/FIRBundleUtil.m; sourceTree = "<group>"; };
-		91BFEB4F2030A788D29E42B7B7D50B84 /* ec_key.c */ = {isa = PBXFileReference; includeInIndex = 1; name = ec_key.c; path = src/crypto/fipsmodule/ec/ec_key.c; sourceTree = "<group>"; };
-		91C26220B538AEF846053B1FEDB4D13D /* exponentiation.c */ = {isa = PBXFileReference; includeInIndex = 1; name = exponentiation.c; path = src/crypto/fipsmodule/bn/exponentiation.c; sourceTree = "<group>"; };
+		91BFEB4F2030A788D29E42B7B7D50B84 /* ec_key.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = ec_key.c; path = src/crypto/fipsmodule/ec/ec_key.c; sourceTree = "<group>"; };
+		91C26220B538AEF846053B1FEDB4D13D /* exponentiation.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = exponentiation.c; path = src/crypto/fipsmodule/bn/exponentiation.c; sourceTree = "<group>"; };
 		91C831BACCF77569A58E2F3950536F1D /* FIRGitHubAuthProvider.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRGitHubAuthProvider.m; path = FirebaseAuth/Sources/AuthProvider/GitHub/FIRGitHubAuthProvider.m; sourceTree = "<group>"; };
 		91D58EE49FFB6A3BDDA873457D8237CE /* chttp2_transport.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = chttp2_transport.h; path = src/core/ext/transport/chttp2/transport/chttp2_transport.h; sourceTree = "<group>"; };
-		91DBD20B6B5B66AA415C9FFE589C3BA9 /* socket_utils_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = socket_utils_posix.cc; path = src/core/lib/iomgr/socket_utils_posix.cc; sourceTree = "<group>"; };
-		91EE0ABDC3D63F420BC7DF7946DB8138 /* x509spki.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509spki.c; path = src/crypto/x509/x509spki.c; sourceTree = "<group>"; };
-		92000153CD73F7FC2DBAB4AB708269F3 /* FirebaseFirestore.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = FirebaseFirestore.framework; path = FirebaseFirestore.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		91DBD20B6B5B66AA415C9FFE589C3BA9 /* socket_utils_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = socket_utils_posix.cc; path = src/core/lib/iomgr/socket_utils_posix.cc; sourceTree = "<group>"; };
+		91EE0ABDC3D63F420BC7DF7946DB8138 /* x509spki.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509spki.c; path = src/crypto/x509/x509spki.c; sourceTree = "<group>"; };
+		92000153CD73F7FC2DBAB4AB708269F3 /* FirebaseFirestore.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FirebaseFirestore.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		923A1A8702A1459524DC9D10DF23CCCF /* socket_utils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = socket_utils.h; path = src/core/lib/iomgr/socket_utils.h; sourceTree = "<group>"; };
-		923A32F1800E47C4426AD16ECB9BCCB4 /* env_linux.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = env_linux.cc; path = src/core/lib/gpr/env_linux.cc; sourceTree = "<group>"; };
-		9267A035B7A78C53A3D98A3C2A6FF9EF /* iomgr.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = iomgr.cc; path = src/core/lib/iomgr/iomgr.cc; sourceTree = "<group>"; };
-		927A7AE3AB7C0F8526E286125E5DEE0A /* client_idle_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = client_idle_filter.cc; path = src/core/ext/filters/client_idle/client_idle_filter.cc; sourceTree = "<group>"; };
-		928CC98D7628E6E56FC0D7EF4FBD74D6 /* pem_all.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pem_all.c; path = src/crypto/pem/pem_all.c; sourceTree = "<group>"; };
+		923A32F1800E47C4426AD16ECB9BCCB4 /* env_linux.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = env_linux.cc; path = src/core/lib/gpr/env_linux.cc; sourceTree = "<group>"; };
+		9267A035B7A78C53A3D98A3C2A6FF9EF /* iomgr.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = iomgr.cc; path = src/core/lib/iomgr/iomgr.cc; sourceTree = "<group>"; };
+		927A7AE3AB7C0F8526E286125E5DEE0A /* client_idle_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = client_idle_filter.cc; path = src/core/ext/filters/client_idle/client_idle_filter.cc; sourceTree = "<group>"; };
+		928CC98D7628E6E56FC0D7EF4FBD74D6 /* pem_all.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pem_all.c; path = src/crypto/pem/pem_all.c; sourceTree = "<group>"; };
 		92A295459EA1D4E85A56D0BEE8EC2384 /* p256_32.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = p256_32.h; path = src/third_party/fiat/p256_32.h; sourceTree = "<group>"; };
 		92BC530DF9225364A3980C8E4D73A5E8 /* metadata_map.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = metadata_map.h; path = include/grpcpp/impl/codegen/metadata_map.h; sourceTree = "<group>"; };
-		92C5ABFBF3591B536B4D157DF4BDF0B5 /* proto_sizer.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = proto_sizer.cc; path = Firestore/core/src/local/proto_sizer.cc; sourceTree = "<group>"; };
-		92E4F2589F3E30648B4F9C6CFC9918D9 /* spake25519.c */ = {isa = PBXFileReference; includeInIndex = 1; name = spake25519.c; path = src/crypto/curve25519/spake25519.c; sourceTree = "<group>"; };
+		92C5ABFBF3591B536B4D157DF4BDF0B5 /* proto_sizer.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = proto_sizer.cc; path = Firestore/core/src/local/proto_sizer.cc; sourceTree = "<group>"; };
+		92E4F2589F3E30648B4F9C6CFC9918D9 /* spake25519.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = spake25519.c; path = src/crypto/curve25519/spake25519.c; sourceTree = "<group>"; };
 		92EC8093E0235356204D33306B5B1FC5 /* error.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = error.h; path = src/core/lib/iomgr/error.h; sourceTree = "<group>"; };
 		92FFCC4D560A7B717BBC4494BE77AAD1 /* percent_encoding.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = percent_encoding.h; path = src/core/lib/slice/percent_encoding.h; sourceTree = "<group>"; };
 		930DDAD889383D056A576169CF2D5D1F /* gRPC-C++-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "gRPC-C++-Info.plist"; sourceTree = "<group>"; };
-		9319A263C700ECCDFDA4B9846BDAF5B5 /* stats.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = stats.cc; path = src/core/lib/debug/stats.cc; sourceTree = "<group>"; };
-		933E01693351F79E67BC8B34B956254A /* thd_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = thd_posix.cc; path = src/core/lib/gprpp/thd_posix.cc; sourceTree = "<group>"; };
+		9319A263C700ECCDFDA4B9846BDAF5B5 /* stats.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = stats.cc; path = src/core/lib/debug/stats.cc; sourceTree = "<group>"; };
+		933E01693351F79E67BC8B34B956254A /* thd_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = thd_posix.cc; path = src/core/lib/gprpp/thd_posix.cc; sourceTree = "<group>"; };
 		9379E20383E5A63767CD49DDC155141F /* call.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = call.h; path = src/core/lib/surface/call.h; sourceTree = "<group>"; };
 		93959E59AA26CE591DF6CEEC530AC7A1 /* xds.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = xds.h; path = src/core/ext/filters/client_channel/lb_policy/xds/xds.h; sourceTree = "<group>"; };
 		93A547E6B6033A1AA8FFF6B17886BF81 /* SafariServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SafariServices.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/SafariServices.framework; sourceTree = DEVELOPER_DIR; };
@@ -10194,7 +10195,7 @@
 		94505AFCBC1006FF25F54155B8E71FDB /* sync.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sync.h; path = include/grpc/support/sync.h; sourceTree = "<group>"; };
 		9450CE0AA0A5FB62EEC96D7ED74A943D /* sys_epoll_wrapper.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sys_epoll_wrapper.h; path = src/core/lib/iomgr/sys_epoll_wrapper.h; sourceTree = "<group>"; };
 		94689F88352DEAD341AC38DB5921B56D /* conf_def.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = conf_def.h; path = src/crypto/conf/conf_def.h; sourceTree = "<group>"; };
-		9478BDB0B6F02328A44400C79A9EE81A /* poly1305.c */ = {isa = PBXFileReference; includeInIndex = 1; name = poly1305.c; path = src/crypto/poly1305/poly1305.c; sourceTree = "<group>"; };
+		9478BDB0B6F02328A44400C79A9EE81A /* poly1305.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = poly1305.c; path = src/crypto/poly1305/poly1305.c; sourceTree = "<group>"; };
 		948EAB1A1B2D5E00B9021667354814F5 /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/fipsmodule/aes/internal.h; sourceTree = "<group>"; };
 		9492736D02CEF5696F44C2F8E088CF66 /* auth_filters.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = auth_filters.h; path = src/core/lib/security/transport/auth_filters.h; sourceTree = "<group>"; };
 		94B79B2CAAE6BA87A6614BD129D55CEB /* FIRStorageMetadata.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageMetadata.h; path = FirebaseStorage/Sources/Public/FirebaseStorage/FIRStorageMetadata.h; sourceTree = "<group>"; };
@@ -10206,9 +10207,9 @@
 		95553002232B430D51EA131F12022892 /* FIRLibrary.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRLibrary.h; path = FirebaseCore/Sources/Private/FIRLibrary.h; sourceTree = "<group>"; };
 		955D57B6B5B2B0FD593001C43BDB73AB /* message_compress.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = message_compress.h; path = src/core/lib/compression/message_compress.h; sourceTree = "<group>"; };
 		955D8CB2D47A4AA578EBB27CFD038FC9 /* FIRVerifyClientRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRVerifyClientRequest.h; path = FirebaseAuth/Sources/Backend/RPC/FIRVerifyClientRequest.h; sourceTree = "<group>"; };
-		957820252658F231A1284AC2609CC0F4 /* is_epollexclusive_available.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = is_epollexclusive_available.cc; path = src/core/lib/iomgr/is_epollexclusive_available.cc; sourceTree = "<group>"; };
+		957820252658F231A1284AC2609CC0F4 /* is_epollexclusive_available.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = is_epollexclusive_available.cc; path = src/core/lib/iomgr/is_epollexclusive_available.cc; sourceTree = "<group>"; };
 		957F70AC38D28CEE1624A9C8F4DFA8B6 /* FIRFinalizeMFASignInResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRFinalizeMFASignInResponse.m; path = FirebaseAuth/Sources/Backend/RPC/MultiFactor/SignIn/FIRFinalizeMFASignInResponse.m; sourceTree = "<group>"; };
-		958ABD150AF860D8E77FB1BB08CF4A16 /* pem_x509.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pem_x509.c; path = src/crypto/pem/pem_x509.c; sourceTree = "<group>"; };
+		958ABD150AF860D8E77FB1BB08CF4A16 /* pem_x509.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pem_x509.c; path = src/crypto/pem/pem_x509.c; sourceTree = "<group>"; };
 		958F47619A51C24FAFBD50924A353059 /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/core/ext/transport/chttp2/transport/internal.h; sourceTree = "<group>"; };
 		9596C50058DCC526FA2F726B88AE690B /* FIRStartMFAEnrollmentResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStartMFAEnrollmentResponse.m; path = FirebaseAuth/Sources/Backend/RPC/MultiFactor/Enroll/FIRStartMFAEnrollmentResponse.m; sourceTree = "<group>"; };
 		95A60FBD16642C1D6CF9CF562AFDDA32 /* CoreTelephony.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreTelephony.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/CoreTelephony.framework; sourceTree = DEVELOPER_DIR; };
@@ -10220,19 +10221,19 @@
 		964340D7A357977FA69BF3357A637525 /* compression_args.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = compression_args.h; path = src/core/lib/compression/compression_args.h; sourceTree = "<group>"; };
 		964A11163D071E9A52CD723720F165F8 /* dns_resolver_selection.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = dns_resolver_selection.h; path = src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.h; sourceTree = "<group>"; };
 		96601BC814EBB8B5462B2EB2F8A2BECB /* json.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = json.h; path = src/core/lib/json/json.h; sourceTree = "<group>"; };
-		9693D24A1DB430A48152EF53E25FE967 /* self_check.c */ = {isa = PBXFileReference; includeInIndex = 1; name = self_check.c; path = src/crypto/fipsmodule/self_check/self_check.c; sourceTree = "<group>"; };
+		9693D24A1DB430A48152EF53E25FE967 /* self_check.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = self_check.c; path = src/crypto/fipsmodule/self_check/self_check.c; sourceTree = "<group>"; };
 		96B177BC8885D781DF76EB8ADC07F785 /* FIRStorageUpdateMetadataTask.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStorageUpdateMetadataTask.m; path = FirebaseStorage/Sources/FIRStorageUpdateMetadataTask.m; sourceTree = "<group>"; };
-		96C800F9837AF49E85EFBBBCE8CDBE35 /* security_context.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = security_context.cc; path = src/core/lib/security/context/security_context.cc; sourceTree = "<group>"; };
-		96F0DFA10613BA88E7F4E67D6146650B /* numbers.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = numbers.cc; path = absl/strings/numbers.cc; sourceTree = "<group>"; };
+		96C800F9837AF49E85EFBBBCE8CDBE35 /* security_context.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = security_context.cc; path = src/core/lib/security/context/security_context.cc; sourceTree = "<group>"; };
+		96F0DFA10613BA88E7F4E67D6146650B /* numbers.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = numbers.cc; path = absl/strings/numbers.cc; sourceTree = "<group>"; };
 		970C952F97DD33BF1641C99D25AC4054 /* nanopb.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = nanopb.debug.xcconfig; sourceTree = "<group>"; };
 		97211E9B2094F36F79CD073E8D1FF9BB /* BoringSSL-GRPC.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "BoringSSL-GRPC.debug.xcconfig"; sourceTree = "<group>"; };
 		9723B445786FF1F896D77EAC8AFAE6D6 /* container.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = container.h; path = absl/algorithm/container.h; sourceTree = "<group>"; };
-		97283213ADBA0FFE21D84D084578E324 /* unicode.c */ = {isa = PBXFileReference; includeInIndex = 1; name = unicode.c; path = src/crypto/bytestring/unicode.c; sourceTree = "<group>"; };
+		97283213ADBA0FFE21D84D084578E324 /* unicode.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = unicode.c; path = src/crypto/bytestring/unicode.c; sourceTree = "<group>"; };
 		97322ACA511482883F15AE8E65D18457 /* server_initializer_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_initializer_impl.h; path = include/grpcpp/impl/server_initializer_impl.h; sourceTree = "<group>"; };
 		97377006B36EA815943DC144C4538636 /* memutil.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = memutil.h; path = absl/strings/internal/memutil.h; sourceTree = "<group>"; };
-		97438050D3CCE8F9A3597014210D26A8 /* a_object.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_object.c; path = src/crypto/asn1/a_object.c; sourceTree = "<group>"; };
+		97438050D3CCE8F9A3597014210D26A8 /* a_object.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_object.c; path = src/crypto/asn1/a_object.c; sourceTree = "<group>"; };
 		976AC0B07D302B02D70BEA723637638F /* FBLPromise+Timeout.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "FBLPromise+Timeout.m"; path = "Sources/FBLPromises/FBLPromise+Timeout.m"; sourceTree = "<group>"; };
-		97C0D64D7711B9CF7C228FC1400C4120 /* base.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = base.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/core/base.upb.c"; sourceTree = "<group>"; };
+		97C0D64D7711B9CF7C228FC1400C4120 /* base.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = base.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/core/base.upb.c"; sourceTree = "<group>"; };
 		97CF0A836AA730B5DDF182CEF9D4BAAB /* parser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = parser.h; path = src/core/lib/http/parser.h; sourceTree = "<group>"; };
 		97D3875E700DC33AF9DCD530D89D5D72 /* FIROAuthCredential.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIROAuthCredential.m; path = FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m; sourceTree = "<group>"; };
 		97DBC9DA7F1EE2F7CE6E4E0F7570ED55 /* frame_handler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = frame_handler.h; path = src/core/tsi/alts/frame_protector/frame_handler.h; sourceTree = "<group>"; };
@@ -10240,30 +10241,30 @@
 		9842CFFAB694037825A267A300154371 /* gRPC-Core-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "gRPC-Core-dummy.m"; sourceTree = "<group>"; };
 		9853A9D28CB7522834F144BDA10E00AE /* atm_gcc_atomic.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = atm_gcc_atomic.h; path = include/grpc/impl/codegen/atm_gcc_atomic.h; sourceTree = "<group>"; };
 		985E16260CCF5745134980A8BA5019B9 /* GULNetwork.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GULNetwork.m; path = GoogleUtilities/Network/GULNetwork.m; sourceTree = "<group>"; };
-		987180EFF6C68E658FCF2E5F3974DE50 /* table_cache.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = table_cache.cc; path = db/table_cache.cc; sourceTree = "<group>"; };
+		987180EFF6C68E658FCF2E5F3974DE50 /* table_cache.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = table_cache.cc; path = db/table_cache.cc; sourceTree = "<group>"; };
 		988BBEC5EFFDC475FDFB02A864B1B1A0 /* FirebaseStorage-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "FirebaseStorage-umbrella.h"; sourceTree = "<group>"; };
-		988F3945CB39C0063BE24256CB33308F /* frame_data.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = frame_data.cc; path = src/core/ext/transport/chttp2/transport/frame_data.cc; sourceTree = "<group>"; };
+		988F3945CB39C0063BE24256CB33308F /* frame_data.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = frame_data.cc; path = src/core/ext/transport/chttp2/transport/frame_data.cc; sourceTree = "<group>"; };
 		98AF4AEFCCEFAC296274C97C6EF9AAC5 /* p256_64.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = p256_64.h; path = src/third_party/fiat/p256_64.h; sourceTree = "<group>"; };
 		98B1BB9D1347AC527CE6F825FD68316B /* FIRActionCodeSettings.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRActionCodeSettings.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRActionCodeSettings.h; sourceTree = "<group>"; };
-		98BCC9D19F5AA65A5C85D385B8854428 /* document_change.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = document_change.cc; path = Firestore/core/src/api/document_change.cc; sourceTree = "<group>"; };
+		98BCC9D19F5AA65A5C85D385B8854428 /* document_change.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = document_change.cc; path = Firestore/core/src/api/document_change.cc; sourceTree = "<group>"; };
 		98D96AA53AA7A662FE47DE873C8A91D3 /* FIRStorageDownloadTask.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStorageDownloadTask.m; path = FirebaseStorage/Sources/FIRStorageDownloadTask.m; sourceTree = "<group>"; };
 		98F936E33542627E478BECE45E4BB114 /* FIRStorageListResult_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageListResult_Private.h; path = FirebaseStorage/Sources/FIRStorageListResult_Private.h; sourceTree = "<group>"; };
-		98FE2824104359E89C283D41EBC28DF4 /* server_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = server_credentials.cc; path = src/cpp/server/server_credentials.cc; sourceTree = "<group>"; };
-		9930DA4484992080B3CBC84B064DBFD9 /* rpc_method.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = rpc_method.cc; path = src/cpp/common/rpc_method.cc; sourceTree = "<group>"; };
+		98FE2824104359E89C283D41EBC28DF4 /* server_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = server_credentials.cc; path = src/cpp/server/server_credentials.cc; sourceTree = "<group>"; };
+		9930DA4484992080B3CBC84B064DBFD9 /* rpc_method.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = rpc_method.cc; path = src/cpp/common/rpc_method.cc; sourceTree = "<group>"; };
 		99333682608FC9E0270820837EDA376A /* status_conversion.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = status_conversion.h; path = src/core/lib/transport/status_conversion.h; sourceTree = "<group>"; };
-		993C137FFA51A9699A2F5ECC7746AD7E /* blinding.c */ = {isa = PBXFileReference; includeInIndex = 1; name = blinding.c; path = src/crypto/fipsmodule/rsa/blinding.c; sourceTree = "<group>"; };
+		993C137FFA51A9699A2F5ECC7746AD7E /* blinding.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = blinding.c; path = src/crypto/fipsmodule/rsa/blinding.c; sourceTree = "<group>"; };
 		994ACB7390FEC1FCB59816E7764B5197 /* FIRStartMFAEnrollmentResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStartMFAEnrollmentResponse.h; path = FirebaseAuth/Sources/Backend/RPC/MultiFactor/Enroll/FIRStartMFAEnrollmentResponse.h; sourceTree = "<group>"; };
-		997F18836A58E131F098783D22612CDD /* tls_record.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tls_record.cc; path = src/ssl/tls_record.cc; sourceTree = "<group>"; };
+		997F18836A58E131F098783D22612CDD /* tls_record.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tls_record.cc; path = src/ssl/tls_record.cc; sourceTree = "<group>"; };
 		99867D8A6828826C94B43859442081E0 /* spinlock.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = spinlock.h; path = src/core/lib/gpr/spinlock.h; sourceTree = "<group>"; };
-		99B126304AB4373DFA79C9AE677D87D0 /* dh.c */ = {isa = PBXFileReference; includeInIndex = 1; name = dh.c; path = src/crypto/dh/dh.c; sourceTree = "<group>"; };
-		99B3268C3F524C365A3BF5E05B29B64E /* mode_wrappers.c */ = {isa = PBXFileReference; includeInIndex = 1; name = mode_wrappers.c; path = src/crypto/fipsmodule/aes/mode_wrappers.c; sourceTree = "<group>"; };
-		99BBEC01C5D2BD22809D960586234C5C /* e_aesccm.c */ = {isa = PBXFileReference; includeInIndex = 1; name = e_aesccm.c; path = src/crypto/cipher_extra/e_aesccm.c; sourceTree = "<group>"; };
+		99B126304AB4373DFA79C9AE677D87D0 /* dh.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = dh.c; path = src/crypto/dh/dh.c; sourceTree = "<group>"; };
+		99B3268C3F524C365A3BF5E05B29B64E /* mode_wrappers.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = mode_wrappers.c; path = src/crypto/fipsmodule/aes/mode_wrappers.c; sourceTree = "<group>"; };
+		99BBEC01C5D2BD22809D960586234C5C /* e_aesccm.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = e_aesccm.c; path = src/crypto/cipher_extra/e_aesccm.c; sourceTree = "<group>"; };
 		99BE4117CB19632247BC73406A0D2FB7 /* GoogleDataTransport-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "GoogleDataTransport-umbrella.h"; sourceTree = "<group>"; };
 		99CF5891462151468599D6C500B45A37 /* sync.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sync.h; path = src/core/lib/gprpp/sync.h; sourceTree = "<group>"; };
 		99E649EC3E17E4890BDEC807D1FB55CE /* context.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = context.h; path = src/core/lib/channel/context.h; sourceTree = "<group>"; };
-		99EB02586EE40ECDECE44CF54D0E49EA /* sync.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = sync.cc; path = src/core/lib/gpr/sync.cc; sourceTree = "<group>"; };
+		99EB02586EE40ECDECE44CF54D0E49EA /* sync.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = sync.cc; path = src/core/lib/gpr/sync.cc; sourceTree = "<group>"; };
 		99F5B010FCF3744B59C8480DFEA5CC47 /* global_config_env.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = global_config_env.h; path = src/core/lib/gprpp/global_config_env.h; sourceTree = "<group>"; };
-		9A0337A07B3833D912F4A43C0C43BD61 /* fuchsia.c */ = {isa = PBXFileReference; includeInIndex = 1; name = fuchsia.c; path = src/crypto/rand_extra/fuchsia.c; sourceTree = "<group>"; };
+		9A0337A07B3833D912F4A43C0C43BD61 /* fuchsia.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = fuchsia.c; path = src/crypto/rand_extra/fuchsia.c; sourceTree = "<group>"; };
 		9A09663A70973E35D9139B9DECAE851D /* FIRAdditionalUserInfo_Internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAdditionalUserInfo_Internal.h; path = FirebaseAuth/Sources/User/FIRAdditionalUserInfo_Internal.h; sourceTree = "<group>"; };
 		9A12481362B30E46D929BC003EE6C498 /* status_metadata.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = status_metadata.h; path = src/core/lib/transport/status_metadata.h; sourceTree = "<group>"; };
 		9A25015B93E9F9F6E894551AD40A1F97 /* transport.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = transport.h; path = src/core/lib/transport/transport.h; sourceTree = "<group>"; };
@@ -10274,27 +10275,27 @@
 		9A8ED36A6790F405D3A3FDD1E59C2B86 /* GULAppDelegateSwizzler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULAppDelegateSwizzler.h; path = GoogleUtilities/AppDelegateSwizzler/Public/GoogleUtilities/GULAppDelegateSwizzler.h; sourceTree = "<group>"; };
 		9AA1E3D449138B69129A8852240E3A3F /* iam_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = iam_credentials.h; path = src/core/lib/security/credentials/iam/iam_credentials.h; sourceTree = "<group>"; };
 		9AA6BEEECFF761F2BC95D7FCC51DB93C /* FIRSignInWithGameCenterResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRSignInWithGameCenterResponse.m; path = FirebaseAuth/Sources/Backend/RPC/FIRSignInWithGameCenterResponse.m; sourceTree = "<group>"; };
-		9AB2FE8B898793515A9E02EBF4298E6B /* cpu-intel.c */ = {isa = PBXFileReference; includeInIndex = 1; name = "cpu-intel.c"; path = "src/crypto/cpu-intel.c"; sourceTree = "<group>"; };
-		9AD253F2677913054EC482E757893FB5 /* query.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = query.cc; path = Firestore/core/src/core/query.cc; sourceTree = "<group>"; };
-		9ADCAA746685974EF77C0417D8FD1B4A /* endpoint.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = endpoint.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/endpoint/endpoint.upb.c"; sourceTree = "<group>"; };
+		9AB2FE8B898793515A9E02EBF4298E6B /* cpu-intel.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = "cpu-intel.c"; path = "src/crypto/cpu-intel.c"; sourceTree = "<group>"; };
+		9AD253F2677913054EC482E757893FB5 /* query.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = query.cc; path = Firestore/core/src/core/query.cc; sourceTree = "<group>"; };
+		9ADCAA746685974EF77C0417D8FD1B4A /* endpoint.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = endpoint.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/endpoint/endpoint.upb.c"; sourceTree = "<group>"; };
 		9ADDB20F91F79E49CF3AE1E32047C48F /* nameser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = nameser.h; path = src/core/lib/iomgr/nameser.h; sourceTree = "<group>"; };
 		9AE02072ABE1A2521C411D1A29F59887 /* slice_string_helpers.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = slice_string_helpers.h; path = src/core/lib/slice/slice_string_helpers.h; sourceTree = "<group>"; };
-		9B081F4E738717E21CB25C5FFB6F6E42 /* tcp_server.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tcp_server.cc; path = src/core/lib/iomgr/tcp_server.cc; sourceTree = "<group>"; };
-		9B0DB8CF0B60DE73DF50AB0E6D646FC7 /* pbkdf.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pbkdf.c; path = src/crypto/evp/pbkdf.c; sourceTree = "<group>"; };
-		9B15BCE06463DA658A6E23CC96F192FA /* x_val.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x_val.c; path = src/crypto/x509/x_val.c; sourceTree = "<group>"; };
+		9B081F4E738717E21CB25C5FFB6F6E42 /* tcp_server.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tcp_server.cc; path = src/core/lib/iomgr/tcp_server.cc; sourceTree = "<group>"; };
+		9B0DB8CF0B60DE73DF50AB0E6D646FC7 /* pbkdf.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pbkdf.c; path = src/crypto/evp/pbkdf.c; sourceTree = "<group>"; };
+		9B15BCE06463DA658A6E23CC96F192FA /* x_val.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x_val.c; path = src/crypto/x509/x_val.c; sourceTree = "<group>"; };
 		9B44911874ED639014869CD261DBE166 /* validate_metadata.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = validate_metadata.h; path = src/core/lib/surface/validate_metadata.h; sourceTree = "<group>"; };
-		9B7EEA9904C5CB7D2486762DFEB70EC9 /* pem_pkey.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pem_pkey.c; path = src/crypto/pem/pem_pkey.c; sourceTree = "<group>"; };
-		9B8DFF0F16148E873D29CE44A06256F6 /* string_ref.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = string_ref.cc; path = src/cpp/util/string_ref.cc; sourceTree = "<group>"; };
+		9B7EEA9904C5CB7D2486762DFEB70EC9 /* pem_pkey.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pem_pkey.c; path = src/crypto/pem/pem_pkey.c; sourceTree = "<group>"; };
+		9B8DFF0F16148E873D29CE44A06256F6 /* string_ref.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = string_ref.cc; path = src/cpp/util/string_ref.cc; sourceTree = "<group>"; };
 		9B8F2F0C64E553B6748D4E18968215D3 /* GULNetworkURLSession.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULNetworkURLSession.h; path = GoogleUtilities/Network/Public/GoogleUtilities/GULNetworkURLSession.h; sourceTree = "<group>"; };
 		9B9A757F5A8832523B29AA8856B48F5E /* exec_ctx.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = exec_ctx.h; path = src/core/lib/iomgr/exec_ctx.h; sourceTree = "<group>"; };
 		9BA012409A1A8A49D69877B2E631295B /* FIRStorageTaskSnapshot.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageTaskSnapshot.h; path = FirebaseStorage/Sources/Public/FirebaseStorage/FIRStorageTaskSnapshot.h; sourceTree = "<group>"; };
-		9BB458E0BB4DD9EE40D0715BE816453D /* log_android.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = log_android.cc; path = src/core/lib/gpr/log_android.cc; sourceTree = "<group>"; };
-		9BB6FD7C1F1FA802C3D2524DEE49732C /* cpu-aarch64-fuchsia.c */ = {isa = PBXFileReference; includeInIndex = 1; name = "cpu-aarch64-fuchsia.c"; path = "src/crypto/cpu-aarch64-fuchsia.c"; sourceTree = "<group>"; };
-		9BCA1AE1D0A23C922BE1816AF95FB683 /* percent.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = percent.upb.c; path = "src/core/ext/upb-generated/envoy/type/percent.upb.c"; sourceTree = "<group>"; };
-		9BCC0C7AD34AD3EA35AA7A9F3F411757 /* transport_security_common.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = transport_security_common.upb.c; path = "src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c"; sourceTree = "<group>"; };
+		9BB458E0BB4DD9EE40D0715BE816453D /* log_android.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = log_android.cc; path = src/core/lib/gpr/log_android.cc; sourceTree = "<group>"; };
+		9BB6FD7C1F1FA802C3D2524DEE49732C /* cpu-aarch64-fuchsia.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = "cpu-aarch64-fuchsia.c"; path = "src/crypto/cpu-aarch64-fuchsia.c"; sourceTree = "<group>"; };
+		9BCA1AE1D0A23C922BE1816AF95FB683 /* percent.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = percent.upb.c; path = "src/core/ext/upb-generated/envoy/type/percent.upb.c"; sourceTree = "<group>"; };
+		9BCC0C7AD34AD3EA35AA7A9F3F411757 /* transport_security_common.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = transport_security_common.upb.c; path = "src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c"; sourceTree = "<group>"; };
 		9BD962130B5E15935839D70D56BF6C0F /* debug_location.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = debug_location.h; path = src/core/lib/gprpp/debug_location.h; sourceTree = "<group>"; };
 		9BE26ADF236F804B271F21594F43DDF2 /* ec.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ec.h; path = src/include/openssl/ec.h; sourceTree = "<group>"; };
-		9BF6C2DF7370C395B0C4F6023329D34F /* alloc.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alloc.cc; path = src/core/lib/gpr/alloc.cc; sourceTree = "<group>"; };
+		9BF6C2DF7370C395B0C4F6023329D34F /* alloc.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alloc.cc; path = src/core/lib/gpr/alloc.cc; sourceTree = "<group>"; };
 		9BFD955C0AC01ACC97BD31255CA6D65E /* completion_queue.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = completion_queue.h; path = src/core/lib/surface/completion_queue.h; sourceTree = "<group>"; };
 		9BFDA60926F98B11F04F33FB0F80116F /* alts_grpc_integrity_only_record_protocol.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_grpc_integrity_only_record_protocol.h; path = src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.h; sourceTree = "<group>"; };
 		9C1022814E88D63594A8F2A033518137 /* client_context_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_context_impl.h; path = include/grpcpp/impl/codegen/client_context_impl.h; sourceTree = "<group>"; };
@@ -10302,193 +10303,193 @@
 		9C16C645F2B02AC39300AD269F78A974 /* FIRPhoneAuthCredential.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRPhoneAuthCredential.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRPhoneAuthCredential.h; sourceTree = "<group>"; };
 		9C27D8F6508CE3918CF72E8884D20140 /* FIREmailAuthProvider.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIREmailAuthProvider.m; path = FirebaseAuth/Sources/AuthProvider/Email/FIREmailAuthProvider.m; sourceTree = "<group>"; };
 		9C287C3C8DA754D29DB721860C842C49 /* chttp2_connector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = chttp2_connector.h; path = src/core/ext/transport/chttp2/client/chttp2_connector.h; sourceTree = "<group>"; };
-		9C7C87B5D0A6752AFA2642F1BCA967A3 /* gRPCCertificates-Cpp.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; name = "gRPCCertificates-Cpp.bundle"; path = "gRPC-C++-gRPCCertificates-Cpp.bundle"; sourceTree = BUILT_PRODUCTS_DIR; };
+		9C7C87B5D0A6752AFA2642F1BCA967A3 /* gRPCCertificates-Cpp.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "gRPCCertificates-Cpp.bundle"; sourceTree = BUILT_PRODUCTS_DIR; };
 		9C7D9CAD3B4E04DA8D1AB71C748C74BD /* GDTCORTransformer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORTransformer.h; path = GoogleDataTransport/GDTCORLibrary/Private/GDTCORTransformer.h; sourceTree = "<group>"; };
 		9C87EF5850CF94F7CA587669AB995CFC /* client_callback.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_callback.h; path = include/grpcpp/impl/codegen/client_callback.h; sourceTree = "<group>"; };
 		9C8ACEE90B8FF974B0A9D3618A4E8B79 /* CLTypingLabel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CLTypingLabel.swift; path = Pod/Classes/CLTypingLabel.swift; sourceTree = "<group>"; };
-		9CC9F8EDC5C084C082F6D9747DB78579 /* ssl_session_boringssl.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_session_boringssl.cc; path = src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc; sourceTree = "<group>"; };
-		9CCDBCFE3C2D187D652FD180EB0BBF03 /* socket_utils_linux.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = socket_utils_linux.cc; path = src/core/lib/iomgr/socket_utils_linux.cc; sourceTree = "<group>"; };
+		9CC9F8EDC5C084C082F6D9747DB78579 /* ssl_session_boringssl.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_session_boringssl.cc; path = src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc; sourceTree = "<group>"; };
+		9CCDBCFE3C2D187D652FD180EB0BBF03 /* socket_utils_linux.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = socket_utils_linux.cc; path = src/core/lib/iomgr/socket_utils_linux.cc; sourceTree = "<group>"; };
 		9CDC8D7629C85F4E6878103BA6CF7813 /* alts_tsi_utils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_tsi_utils.h; path = src/core/tsi/alts/handshaker/alts_tsi_utils.h; sourceTree = "<group>"; };
 		9CE60FE6B08C77DBBBE4C1F599DAE676 /* gpr_types.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = gpr_types.h; path = include/grpc/impl/codegen/gpr_types.h; sourceTree = "<group>"; };
-		9CF8FA5F01F446F01AAC7331075452AD /* FirebaseStorage.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = FirebaseStorage.framework; path = FirebaseStorage.framework; sourceTree = BUILT_PRODUCTS_DIR; };
-		9CF97D00575686468EE77F4692E5C846 /* endpoint_components.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = endpoint_components.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/endpoint/endpoint_components.upb.c"; sourceTree = "<group>"; };
+		9CF8FA5F01F446F01AAC7331075452AD /* FirebaseStorage.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FirebaseStorage.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		9CF97D00575686468EE77F4692E5C846 /* endpoint_components.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = endpoint_components.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/endpoint/endpoint_components.upb.c"; sourceTree = "<group>"; };
 		9CFE326C57E33C7F89073F8D4BF0B844 /* FIRStorageGetMetadataTask.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageGetMetadataTask.h; path = FirebaseStorage/Sources/FIRStorageGetMetadataTask.h; sourceTree = "<group>"; };
 		9D0DD9E94858E8FF0E97B034EE445CF8 /* bin_encoder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = bin_encoder.h; path = src/core/ext/transport/chttp2/transport/bin_encoder.h; sourceTree = "<group>"; };
 		9D21F75F0BE96DAF310D04238CFF8D0B /* fake_security_connector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = fake_security_connector.h; path = src/core/lib/security/security_connector/fake/fake_security_connector.h; sourceTree = "<group>"; };
 		9D512860B96430C1F54D389C6AA201F5 /* custom_tag.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = custom_tag.upb.h; path = "src/core/ext/upb-generated/envoy/type/tracing/v2/custom_tag.upb.h"; sourceTree = "<group>"; };
 		9D5B617957AAD55AD341F0A97DA99131 /* hash.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = hash.h; path = util/hash.h; sourceTree = "<group>"; };
 		9D62C0516E3F8DAF819A2E6F8D40F461 /* format_request.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = format_request.h; path = src/core/lib/http/format_request.h; sourceTree = "<group>"; };
-		9D63C182426C5E1558EFAD87E7E1D9BE /* bin_decoder.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = bin_decoder.cc; path = src/core/ext/transport/chttp2/transport/bin_decoder.cc; sourceTree = "<group>"; };
+		9D63C182426C5E1558EFAD87E7E1D9BE /* bin_decoder.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = bin_decoder.cc; path = src/core/ext/transport/chttp2/transport/bin_decoder.cc; sourceTree = "<group>"; };
 		9D7E6CCF16D97E1FB6CB02B8DDC96B0E /* FIRStorageTask.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStorageTask.m; path = FirebaseStorage/Sources/FIRStorageTask.m; sourceTree = "<group>"; };
-		9D8421C51EB80F57C9FCFCA6A63052D1 /* exponential_backoff.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = exponential_backoff.cc; path = Firestore/core/src/remote/exponential_backoff.cc; sourceTree = "<group>"; };
-		9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; };
+		9D8421C51EB80F57C9FCFCA6A63052D1 /* exponential_backoff.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = exponential_backoff.cc; path = Firestore/core/src/remote/exponential_backoff.cc; sourceTree = "<group>"; };
+		9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; };
 		9DA0D8A1728F7F85B47E03F93383ACC4 /* e_os2.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = e_os2.h; path = src/include/openssl/e_os2.h; sourceTree = "<group>"; };
-		9DA356524D999AD88FC52658215C9820 /* collection_reference.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = collection_reference.cc; path = Firestore/core/src/api/collection_reference.cc; sourceTree = "<group>"; };
+		9DA356524D999AD88FC52658215C9820 /* collection_reference.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = collection_reference.cc; path = Firestore/core/src/api/collection_reference.cc; sourceTree = "<group>"; };
 		9DAE960677C21731FB595B6A6F5A6011 /* chttp2_server.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = chttp2_server.h; path = src/core/ext/transport/chttp2/server/chttp2_server.h; sourceTree = "<group>"; };
-		9DEF1C28E3FB9EEB0B6AF7513FCD4045 /* x509.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509.c; path = src/crypto/x509/x509.c; sourceTree = "<group>"; };
+		9DEF1C28E3FB9EEB0B6AF7513FCD4045 /* x509.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509.c; path = src/crypto/x509/x509.c; sourceTree = "<group>"; };
 		9DF06822CD976D94F6695EDD321489CA /* fork.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = fork.h; path = include/grpc/impl/codegen/fork.h; sourceTree = "<group>"; };
-		9DFA79857CDD8FE785FFD3198FAD0105 /* params.c */ = {isa = PBXFileReference; includeInIndex = 1; name = params.c; path = src/crypto/dh/params.c; sourceTree = "<group>"; };
+		9DFA79857CDD8FE785FFD3198FAD0105 /* params.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = params.c; path = src/crypto/dh/params.c; sourceTree = "<group>"; };
 		9DFD34382D04CC5DD51F8A3E1C07B421 /* CLTypingLabel-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "CLTypingLabel-dummy.m"; sourceTree = "<group>"; };
-		9E0ECAD0607F6859950AB8610DC0D4DD /* p_ec_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; name = p_ec_asn1.c; path = src/crypto/evp/p_ec_asn1.c; sourceTree = "<group>"; };
+		9E0ECAD0607F6859950AB8610DC0D4DD /* p_ec_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = p_ec_asn1.c; path = src/crypto/evp/p_ec_asn1.c; sourceTree = "<group>"; };
 		9E20AD124D05975209BC324BCB9FA0F9 /* host_port.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = host_port.h; path = src/core/lib/gprpp/host_port.h; sourceTree = "<group>"; };
 		9E32A788323D875E29E3A87BCB5746F8 /* FIRAuthDispatcher.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthDispatcher.m; path = FirebaseAuth/Sources/Auth/FIRAuthDispatcher.m; sourceTree = "<group>"; };
-		9E5CCCAE97B4C59ABF33320030271B32 /* spinlock.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = spinlock.cc; path = absl/base/internal/spinlock.cc; sourceTree = "<group>"; };
-		9E62A18A4C3CB1E6BD4CC56C9992D468 /* e_chacha20poly1305.c */ = {isa = PBXFileReference; includeInIndex = 1; name = e_chacha20poly1305.c; path = src/crypto/cipher_extra/e_chacha20poly1305.c; sourceTree = "<group>"; };
+		9E5CCCAE97B4C59ABF33320030271B32 /* spinlock.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = spinlock.cc; path = absl/base/internal/spinlock.cc; sourceTree = "<group>"; };
+		9E62A18A4C3CB1E6BD4CC56C9992D468 /* e_chacha20poly1305.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = e_chacha20poly1305.c; path = src/crypto/cipher_extra/e_chacha20poly1305.c; sourceTree = "<group>"; };
 		9E663D6AE3EA4A0325C9EA7196C00A09 /* string_ref.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = string_ref.h; path = include/grpcpp/support/string_ref.h; sourceTree = "<group>"; };
 		9E6DD0EB4A179C17E29AC0F27F23389E /* subchannel_pool_interface.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = subchannel_pool_interface.h; path = src/core/ext/filters/client_channel/subchannel_pool_interface.h; sourceTree = "<group>"; };
 		9E79DD4279088D45B96CD02E3A95E288 /* p256-x86_64.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "p256-x86_64.h"; path = "src/crypto/fipsmodule/ec/p256-x86_64.h"; sourceTree = "<group>"; };
-		9E7B0C52E324DA1ABA34EE5E68DCE525 /* upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = upb.c; path = third_party/upb/upb/upb.c; sourceTree = "<group>"; };
+		9E7B0C52E324DA1ABA34EE5E68DCE525 /* upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = upb.c; path = third_party/upb/upb/upb.c; sourceTree = "<group>"; };
 		9E89D1ACE0F4B2928ECDBF73F8E16CF1 /* GTMSessionFetcher-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "GTMSessionFetcher-dummy.m"; sourceTree = "<group>"; };
-		9E90C6B7138E8D83C913109BD5931BED /* stream_compression_identity.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = stream_compression_identity.cc; path = src/core/lib/compression/stream_compression_identity.cc; sourceTree = "<group>"; };
+		9E90C6B7138E8D83C913109BD5931BED /* stream_compression_identity.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = stream_compression_identity.cc; path = src/core/lib/compression/stream_compression_identity.cc; sourceTree = "<group>"; };
 		9EA9DFA8F844A1C6934A9B7EBEF4EA19 /* health.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = health.upb.h; path = "src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h"; sourceTree = "<group>"; };
 		9EB362552FAD09E411F58C076ECCA57B /* slice_internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = slice_internal.h; path = src/core/lib/slice/slice_internal.h; sourceTree = "<group>"; };
-		9EBDAFA39CD32C71DC2334471C05F3EE /* work_serializer.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = work_serializer.cc; path = src/core/lib/iomgr/work_serializer.cc; sourceTree = "<group>"; };
-		9EEDFF1D62F48D4C50B69067B49627E9 /* firebase_metadata_provider.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = firebase_metadata_provider.cc; path = Firestore/core/src/remote/firebase_metadata_provider.cc; sourceTree = "<group>"; };
+		9EBDAFA39CD32C71DC2334471C05F3EE /* work_serializer.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = work_serializer.cc; path = src/core/lib/iomgr/work_serializer.cc; sourceTree = "<group>"; };
+		9EEDFF1D62F48D4C50B69067B49627E9 /* firebase_metadata_provider.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = firebase_metadata_provider.cc; path = Firestore/core/src/remote/firebase_metadata_provider.cc; sourceTree = "<group>"; };
 		9EF0565813CD8099C705E49282B0133C /* ssl_session_cache.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl_session_cache.h; path = src/core/tsi/ssl/session_cache/ssl_session_cache.h; sourceTree = "<group>"; };
 		9EFD6817B9FE40872C0412359E76EA40 /* Pods-FaceRecogAttendance.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-FaceRecogAttendance.modulemap"; sourceTree = "<group>"; };
 		9EFDD3BBEEEE7A6D4BDC8EEDDFD5E324 /* FIRComponentContainer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRComponentContainer.h; path = FirebaseCore/Sources/Private/FIRComponentContainer.h; sourceTree = "<group>"; };
-		9F05087AA217966CA7F21B54CA7411D6 /* ctx.c */ = {isa = PBXFileReference; includeInIndex = 1; name = ctx.c; path = src/crypto/fipsmodule/bn/ctx.c; sourceTree = "<group>"; };
+		9F05087AA217966CA7F21B54CA7411D6 /* ctx.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = ctx.c; path = src/crypto/fipsmodule/bn/ctx.c; sourceTree = "<group>"; };
 		9F6758865D076693BD0D0054C2F5A7DC /* GDTCORClock.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORClock.h; path = GoogleDataTransport/GDTCORLibrary/Public/GoogleDataTransport/GDTCORClock.h; sourceTree = "<group>"; };
 		9F927094713B79E9DB31F22DC0D9D8B8 /* executor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = executor.h; path = src/core/lib/iomgr/executor.h; sourceTree = "<group>"; };
 		9F93539BAAF0F8491C7744C354D61E35 /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/fipsmodule/ec/internal.h; sourceTree = "<group>"; };
-		9FA79D387DFDD9E1285E230CA835D988 /* arg.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = arg.cc; path = absl/strings/internal/str_format/arg.cc; sourceTree = "<group>"; };
-		9FC13A0B36F4D054552CE4B403941B02 /* pb_decode.c */ = {isa = PBXFileReference; includeInIndex = 1; path = pb_decode.c; sourceTree = "<group>"; };
+		9FA79D387DFDD9E1285E230CA835D988 /* arg.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = arg.cc; path = absl/strings/internal/str_format/arg.cc; sourceTree = "<group>"; };
+		9FC13A0B36F4D054552CE4B403941B02 /* pb_decode.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = pb_decode.c; sourceTree = "<group>"; };
 		9FE06B8FD8F4118C6DCF997ED48FE521 /* hpack_encoder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = hpack_encoder.h; path = src/core/ext/transport/chttp2/transport/hpack_encoder.h; sourceTree = "<group>"; };
 		9FE643DEFF8E0ABFD88E0FD86ED369DD /* rpc_service_method.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = rpc_service_method.h; path = include/grpcpp/impl/rpc_service_method.h; sourceTree = "<group>"; };
-		9FE9EDC40AAFF2450D430F2218139E32 /* lockfree_event.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = lockfree_event.cc; path = src/core/lib/iomgr/lockfree_event.cc; sourceTree = "<group>"; };
+		9FE9EDC40AAFF2450D430F2218139E32 /* lockfree_event.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = lockfree_event.cc; path = src/core/lib/iomgr/lockfree_event.cc; sourceTree = "<group>"; };
 		9FEC483D933D2599E0DED500D6D65481 /* memory.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = memory.h; path = src/core/lib/gprpp/memory.h; sourceTree = "<group>"; };
-		9FF163D62F62E86FBE9380EC05D50717 /* load_report.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = load_report.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/endpoint/load_report.upb.c"; sourceTree = "<group>"; };
+		9FF163D62F62E86FBE9380EC05D50717 /* load_report.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = load_report.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/endpoint/load_report.upb.c"; sourceTree = "<group>"; };
 		9FF30FEA5D0BDAABB5D8BEFB443E42D2 /* sync_abseil.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sync_abseil.h; path = include/grpc/impl/codegen/sync_abseil.h; sourceTree = "<group>"; };
 		9FF6C27955FB79C2C4F264D1629D7136 /* max_age_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = max_age_filter.h; path = src/core/ext/filters/max_age/max_age_filter.h; sourceTree = "<group>"; };
-		A015F4EA169BED14C9746DE4F0484F93 /* ec_derive.c */ = {isa = PBXFileReference; includeInIndex = 1; name = ec_derive.c; path = src/crypto/ec_extra/ec_derive.c; sourceTree = "<group>"; };
+		A015F4EA169BED14C9746DE4F0484F93 /* ec_derive.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = ec_derive.c; path = src/crypto/ec_extra/ec_derive.c; sourceTree = "<group>"; };
 		A0340BC5A1002DC817D1C51446A06125 /* log_severity.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = log_severity.h; path = absl/base/log_severity.h; sourceTree = "<group>"; };
-		A04545C644DA59FA709D12B844DA3816 /* tcp_server_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tcp_server_windows.cc; path = src/core/lib/iomgr/tcp_server_windows.cc; sourceTree = "<group>"; };
+		A04545C644DA59FA709D12B844DA3816 /* tcp_server_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tcp_server_windows.cc; path = src/core/lib/iomgr/tcp_server_windows.cc; sourceTree = "<group>"; };
 		A0555D543485B2D0FB67D3254773B850 /* timer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = timer.h; path = src/core/lib/iomgr/timer.h; sourceTree = "<group>"; };
-		A09281C367F0937F6BCE4CF876A0975E /* handshake_client.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = handshake_client.cc; path = src/ssl/handshake_client.cc; sourceTree = "<group>"; };
-		A0A7CBE83035A2803839F2519EEB2AE8 /* x86_64-gcc.c */ = {isa = PBXFileReference; includeInIndex = 1; name = "x86_64-gcc.c"; path = "src/crypto/fipsmodule/bn/asm/x86_64-gcc.c"; sourceTree = "<group>"; };
+		A09281C367F0937F6BCE4CF876A0975E /* handshake_client.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = handshake_client.cc; path = src/ssl/handshake_client.cc; sourceTree = "<group>"; };
+		A0A7CBE83035A2803839F2519EEB2AE8 /* x86_64-gcc.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = "x86_64-gcc.c"; path = "src/crypto/fipsmodule/bn/asm/x86_64-gcc.c"; sourceTree = "<group>"; };
 		A0AA9F2465ABB760B79F39F362E002AA /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/fipsmodule/tls/internal.h; sourceTree = "<group>"; };
 		A0B04C33F7BE519BDA3C57D2582C1E1B /* wrappers.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = wrappers.upb.h; path = "src/core/ext/upb-generated/google/protobuf/wrappers.upb.h"; sourceTree = "<group>"; };
 		A0F531255CDE7DAF5B25F050E6AEB9D4 /* slice_hash_table.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = slice_hash_table.h; path = src/core/lib/slice/slice_hash_table.h; sourceTree = "<group>"; };
 		A0FA933E89C318427B76D093F837FFEE /* FIRFirestoreSource.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRFirestoreSource.h; path = Firestore/Source/Public/FirebaseFirestore/FIRFirestoreSource.h; sourceTree = "<group>"; };
-		A105CC51F3EB50AF90D7222CE59F74A2 /* bn_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; name = bn_asn1.c; path = src/crypto/bn_extra/bn_asn1.c; sourceTree = "<group>"; };
+		A105CC51F3EB50AF90D7222CE59F74A2 /* bn_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = bn_asn1.c; path = src/crypto/bn_extra/bn_asn1.c; sourceTree = "<group>"; };
 		A122A74C475456042416415EE5A7BEAC /* load_balancer_api.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = load_balancer_api.h; path = src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h; sourceTree = "<group>"; };
-		A129C0D65C80A066B5E00522BC03D8E3 /* dns_resolver_ares.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = dns_resolver_ares.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc; sourceTree = "<group>"; };
+		A129C0D65C80A066B5E00522BC03D8E3 /* dns_resolver_ares.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = dns_resolver_ares.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc; sourceTree = "<group>"; };
 		A130B162DEF7B4029771B9D788FF4AED /* arm_arch.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = arm_arch.h; path = src/include/openssl/arm_arch.h; sourceTree = "<group>"; };
-		A1461FE88B857359364C3D8F44613686 /* config_source.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = config_source.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c"; sourceTree = "<group>"; };
-		A14B70664834987E60B5283395E53F67 /* asn_pack.c */ = {isa = PBXFileReference; includeInIndex = 1; name = asn_pack.c; path = src/crypto/asn1/asn_pack.c; sourceTree = "<group>"; };
+		A1461FE88B857359364C3D8F44613686 /* config_source.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = config_source.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c"; sourceTree = "<group>"; };
+		A14B70664834987E60B5283395E53F67 /* asn_pack.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = asn_pack.c; path = src/crypto/asn1/asn_pack.c; sourceTree = "<group>"; };
 		A17A10F0B71640C4C0862EA2A78CE443 /* FIRAuthBackend.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthBackend.h; path = FirebaseAuth/Sources/Backend/FIRAuthBackend.h; sourceTree = "<group>"; };
 		A1A2845FAD1AF286E43E28F672CE2C0B /* FIRComponentType.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRComponentType.h; path = FirebaseCore/Sources/Private/FIRComponentType.h; sourceTree = "<group>"; };
-		A1B661980FA7563DC9F77F885815EF08 /* time_zone_format.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = time_zone_format.cc; path = absl/time/internal/cctz/src/time_zone_format.cc; sourceTree = "<group>"; };
+		A1B661980FA7563DC9F77F885815EF08 /* time_zone_format.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = time_zone_format.cc; path = absl/time/internal/cctz/src/time_zone_format.cc; sourceTree = "<group>"; };
 		A1D1A4E3E2B8DBEE25E0D0FA22E7E2D4 /* circuit_breaker.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = circuit_breaker.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h"; sourceTree = "<group>"; };
 		A1D2A282F8AF731D30FB4FF7A24693BB /* FIREmailLinkSignInRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIREmailLinkSignInRequest.h; path = FirebaseAuth/Sources/Backend/RPC/FIREmailLinkSignInRequest.h; sourceTree = "<group>"; };
-		A1D43A0D69BE23204E2C5F59FFBACE2B /* a_strnid.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_strnid.c; path = src/crypto/asn1/a_strnid.c; sourceTree = "<group>"; };
+		A1D43A0D69BE23204E2C5F59FFBACE2B /* a_strnid.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_strnid.c; path = src/crypto/asn1/a_strnid.c; sourceTree = "<group>"; };
 		A1DEA1B40924EB90233FED0E7D90DE1E /* mpscq.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = mpscq.h; path = src/core/lib/gprpp/mpscq.h; sourceTree = "<group>"; };
-		A1ED95EB297B6B62C67E63D6D58CEAEF /* ssl_lib.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_lib.cc; path = src/ssl/ssl_lib.cc; sourceTree = "<group>"; };
+		A1ED95EB297B6B62C67E63D6D58CEAEF /* ssl_lib.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_lib.cc; path = src/ssl/ssl_lib.cc; sourceTree = "<group>"; };
 		A2208EBD80ABC2F28DDAA25143A54544 /* pem.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pem.h; path = src/include/openssl/pem.h; sourceTree = "<group>"; };
 		A23D9BA72E95DF11A97D70395EAEC2AF /* channelz_registry.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channelz_registry.h; path = src/core/lib/channel/channelz_registry.h; sourceTree = "<group>"; };
 		A23F8DA2AB15FB768A88EBAC93046D06 /* evp.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = evp.h; path = src/include/openssl/evp.h; sourceTree = "<group>"; };
 		A244025572EF3B5B6CCB3D24C6E08AB0 /* BoringSSL-GRPC-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "BoringSSL-GRPC-Info.plist"; sourceTree = "<group>"; };
 		A25915ADC669C9285CC67AB088721A6E /* server.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server.h; path = include/grpcpp/server.h; sourceTree = "<group>"; };
-		A278C2ADDCE07B91EE0B92A5991BE3EF /* external_connection_acceptor_impl.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = external_connection_acceptor_impl.cc; path = src/cpp/server/external_connection_acceptor_impl.cc; sourceTree = "<group>"; };
-		A29F0D6128DE06A48E819A59C6579FE9 /* t_req.c */ = {isa = PBXFileReference; includeInIndex = 1; name = t_req.c; path = src/crypto/x509/t_req.c; sourceTree = "<group>"; };
+		A278C2ADDCE07B91EE0B92A5991BE3EF /* external_connection_acceptor_impl.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = external_connection_acceptor_impl.cc; path = src/cpp/server/external_connection_acceptor_impl.cc; sourceTree = "<group>"; };
+		A29F0D6128DE06A48E819A59C6579FE9 /* t_req.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = t_req.c; path = src/crypto/x509/t_req.c; sourceTree = "<group>"; };
 		A2AFB4A62F050AA7E97E88CD7C7D23B3 /* target_authority_table.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = target_authority_table.h; path = src/core/lib/security/transport/target_authority_table.h; sourceTree = "<group>"; };
-		A2B5FC876F2663E392E95450043660F3 /* hpack_parser.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = hpack_parser.cc; path = src/core/ext/transport/chttp2/transport/hpack_parser.cc; sourceTree = "<group>"; };
-		A2E29BB0C78138A03733D334D0DF33DE /* b64.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = b64.cc; path = src/core/lib/slice/b64.cc; sourceTree = "<group>"; };
+		A2B5FC876F2663E392E95450043660F3 /* hpack_parser.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = hpack_parser.cc; path = src/core/ext/transport/chttp2/transport/hpack_parser.cc; sourceTree = "<group>"; };
+		A2E29BB0C78138A03733D334D0DF33DE /* b64.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = b64.cc; path = src/core/lib/slice/b64.cc; sourceTree = "<group>"; };
 		A2FE5E432A0197E605D21426A8DD60C7 /* plugin_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = plugin_credentials.h; path = src/core/lib/security/credentials/plugin/plugin_credentials.h; sourceTree = "<group>"; };
 		A2FED18FCB1E28B87F91953DD6F36819 /* FIRComponentType.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRComponentType.h; path = FirebaseCore/Sources/Private/FIRComponentType.h; sourceTree = "<group>"; };
 		A32CEEF497054AA9F4C68BBCAA042D00 /* table_cache.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = table_cache.h; path = db/table_cache.h; sourceTree = "<group>"; };
 		A34F8C68E0724FDD9F37251A63F9ED24 /* FIRSnapshotMetadata.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRSnapshotMetadata.h; path = Firestore/Source/Public/FirebaseFirestore/FIRSnapshotMetadata.h; sourceTree = "<group>"; };
 		A353C4E0F187F36D386351EDEAFE1F79 /* grpc_service.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpc_service.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h"; sourceTree = "<group>"; };
 		A36ABDADBFE6808620D2998EAA6ED731 /* slice_hash_table.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = slice_hash_table.h; path = src/core/lib/slice/slice_hash_table.h; sourceTree = "<group>"; };
-		A387EF79197AB159DE91C5B298C5C254 /* remote_store.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = remote_store.cc; path = Firestore/core/src/remote/remote_store.cc; sourceTree = "<group>"; };
+		A387EF79197AB159DE91C5B298C5C254 /* remote_store.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = remote_store.cc; path = Firestore/core/src/remote/remote_store.cc; sourceTree = "<group>"; };
 		A38AA1793212274873C736557534B6F2 /* jwt_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = jwt_credentials.h; path = src/core/lib/security/credentials/jwt/jwt_credentials.h; sourceTree = "<group>"; };
 		A3AF9850233A53DA8289ADB7AC33BE1C /* client_callback_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_callback_impl.h; path = include/grpcpp/impl/codegen/client_callback_impl.h; sourceTree = "<group>"; };
 		A3BDE814FE873716F4321641435D02F5 /* format_request.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = format_request.h; path = src/core/lib/http/format_request.h; sourceTree = "<group>"; };
 		A3C0318C06A7F0DA0948195E1D6D1059 /* GDTCORAssert.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORAssert.h; path = GoogleDataTransport/GDTCORLibrary/Internal/GDTCORAssert.h; sourceTree = "<group>"; };
-		A3C39BF00BA8191F7FC5893BEF1CB1F8 /* algorithm.c */ = {isa = PBXFileReference; includeInIndex = 1; name = algorithm.c; path = src/crypto/x509/algorithm.c; sourceTree = "<group>"; };
+		A3C39BF00BA8191F7FC5893BEF1CB1F8 /* algorithm.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = algorithm.c; path = src/crypto/x509/algorithm.c; sourceTree = "<group>"; };
 		A3E17FD47CD0F8DEAD0AC318546E40BA /* ads.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ads.upb.h; path = "src/core/ext/upb-generated/envoy/service/discovery/v2/ads.upb.h"; sourceTree = "<group>"; };
-		A40428DF3A61DAD78ABC3BA35F70AD6E /* options.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = options.cc; path = util/options.cc; sourceTree = "<group>"; };
+		A40428DF3A61DAD78ABC3BA35F70AD6E /* options.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = options.cc; path = util/options.cc; sourceTree = "<group>"; };
 		A451A5BC6D733800559B27CD83A595B3 /* resolve_address.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resolve_address.h; path = src/core/lib/iomgr/resolve_address.h; sourceTree = "<group>"; };
 		A460EBD914EF7E1CCC4DA9DD14FCF7A1 /* http.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = http.upb.h; path = "src/core/ext/upb-generated/envoy/type/http.upb.h"; sourceTree = "<group>"; };
 		A4657EADBA9D957A17FD3B86A99E4552 /* FIRGameCenterAuthCredential.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRGameCenterAuthCredential.h; path = FirebaseAuth/Sources/AuthProvider/GameCenter/FIRGameCenterAuthCredential.h; sourceTree = "<group>"; };
-		A489A1BE892DFD3DFDAB346C045CDE9B /* ofb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = ofb.c; path = src/crypto/fipsmodule/modes/ofb.c; sourceTree = "<group>"; };
+		A489A1BE892DFD3DFDAB346C045CDE9B /* ofb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = ofb.c; path = src/crypto/fipsmodule/modes/ofb.c; sourceTree = "<group>"; };
 		A48D7ADA400DF4822594A1BED75FC440 /* port_platform.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = port_platform.h; path = include/grpc/support/port_platform.h; sourceTree = "<group>"; };
 		A48D89DDB3DBAD45B472413FB7610EB0 /* GDTCOREvent_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCOREvent_Private.h; path = GoogleDataTransport/GDTCORLibrary/Private/GDTCOREvent_Private.h; sourceTree = "<group>"; };
 		A4B26D6E47BBE5E5AA3593A291659C91 /* mpmcqueue.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = mpmcqueue.h; path = src/core/lib/iomgr/executor/mpmcqueue.h; sourceTree = "<group>"; };
-		A4B70C912E0B552B6F8D1D9F85AF30A1 /* timer_heap.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = timer_heap.cc; path = src/core/lib/iomgr/timer_heap.cc; sourceTree = "<group>"; };
+		A4B70C912E0B552B6F8D1D9F85AF30A1 /* timer_heap.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = timer_heap.cc; path = src/core/lib/iomgr/timer_heap.cc; sourceTree = "<group>"; };
 		A4CDF4AA16ABF8FA53B29986321BDE18 /* server_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_credentials.h; path = include/grpcpp/security/server_credentials.h; sourceTree = "<group>"; };
-		A4D54B2D5977D054D8E780BE5E14B17D /* firebasecore.nanopb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = firebasecore.nanopb.c; path = Firebase/CoreDiagnostics/FIRCDLibrary/Protogen/nanopb/firebasecore.nanopb.c; sourceTree = "<group>"; };
+		A4D54B2D5977D054D8E780BE5E14B17D /* firebasecore.nanopb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = firebasecore.nanopb.c; path = Firebase/CoreDiagnostics/FIRCDLibrary/Protogen/nanopb/firebasecore.nanopb.c; sourceTree = "<group>"; };
 		A4DFF4245AF272831F740CD41C9736D0 /* iterator_wrapper.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = iterator_wrapper.h; path = table/iterator_wrapper.h; sourceTree = "<group>"; };
-		A4E16E911D802D93B6159A0A1E446E2E /* resolver_result_parsing.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = resolver_result_parsing.cc; path = src/core/ext/filters/client_channel/resolver_result_parsing.cc; sourceTree = "<group>"; };
+		A4E16E911D802D93B6159A0A1E446E2E /* resolver_result_parsing.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = resolver_result_parsing.cc; path = src/core/ext/filters/client_channel/resolver_result_parsing.cc; sourceTree = "<group>"; };
 		A5065E1312B68C957379764E8D74BC48 /* time_averaged_stats.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = time_averaged_stats.h; path = src/core/lib/iomgr/time_averaged_stats.h; sourceTree = "<group>"; };
 		A50AB987D13791075A8ED563CE7966C6 /* FIRAdditionalUserInfo.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAdditionalUserInfo.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRAdditionalUserInfo.h; sourceTree = "<group>"; };
-		A526E1395A64DD8BA7FD43AC974ADE44 /* connected_channel.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = connected_channel.cc; path = src/core/lib/channel/connected_channel.cc; sourceTree = "<group>"; };
-		A54E8686C82B46E18D065D3CBFF1BFE1 /* a_print.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_print.c; path = src/crypto/asn1/a_print.c; sourceTree = "<group>"; };
-		A54F2F60BE1A1978B9BB1E61624495EC /* p256.c */ = {isa = PBXFileReference; includeInIndex = 1; name = p256.c; path = src/third_party/fiat/p256.c; sourceTree = "<group>"; };
+		A526E1395A64DD8BA7FD43AC974ADE44 /* connected_channel.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = connected_channel.cc; path = src/core/lib/channel/connected_channel.cc; sourceTree = "<group>"; };
+		A54E8686C82B46E18D065D3CBFF1BFE1 /* a_print.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_print.c; path = src/crypto/asn1/a_print.c; sourceTree = "<group>"; };
+		A54F2F60BE1A1978B9BB1E61624495EC /* p256.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = p256.c; path = src/third_party/fiat/p256.c; sourceTree = "<group>"; };
 		A5570D7E9F63B4D756415C96469D13FE /* resize_uninitialized.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resize_uninitialized.h; path = absl/strings/internal/resize_uninitialized.h; sourceTree = "<group>"; };
 		A57064DF07EDFFAD621A0110607F73B9 /* service_type.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = service_type.h; path = include/grpcpp/impl/service_type.h; sourceTree = "<group>"; };
 		A57D068713E8035AE3BF67FF3632CC5C /* port.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = port.h; path = src/core/lib/iomgr/port.h; sourceTree = "<group>"; };
 		A58F7C4D078B8B3EBF5468C07BCCB038 /* credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = credentials.h; path = include/grpcpp/security/credentials.h; sourceTree = "<group>"; };
-		A59CB747FA1DFA597068385C1D09C9E0 /* alts_tsi_handshaker.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alts_tsi_handshaker.cc; path = src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc; sourceTree = "<group>"; };
+		A59CB747FA1DFA597068385C1D09C9E0 /* alts_tsi_handshaker.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alts_tsi_handshaker.cc; path = src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc; sourceTree = "<group>"; };
 		A5A87F22BD30787D59214951AC5FBE10 /* subchannel_interface.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = subchannel_interface.h; path = src/core/ext/filters/client_channel/subchannel_interface.h; sourceTree = "<group>"; };
 		A5BBC9A42298E55A8D3DB109723E709A /* base.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = base.h; path = src/include/openssl/base.h; sourceTree = "<group>"; };
-		A5CD49C90A217EBF17D9A19F95F4C017 /* channel_arguments.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = channel_arguments.cc; path = src/cpp/common/channel_arguments.cc; sourceTree = "<group>"; };
-		A5E4E6D8AAE71B8CDC89084EC87E7213 /* a_utctm.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_utctm.c; path = src/crypto/asn1/a_utctm.c; sourceTree = "<group>"; };
-		A5F51CBDE34EA696379C4F2611E3F746 /* channel_stack_type.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = channel_stack_type.cc; path = src/core/lib/surface/channel_stack_type.cc; sourceTree = "<group>"; };
-		A608EC585A8964E6BEEF8941840D8D44 /* transport_security.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = transport_security.cc; path = src/core/tsi/transport_security.cc; sourceTree = "<group>"; };
+		A5CD49C90A217EBF17D9A19F95F4C017 /* channel_arguments.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = channel_arguments.cc; path = src/cpp/common/channel_arguments.cc; sourceTree = "<group>"; };
+		A5E4E6D8AAE71B8CDC89084EC87E7213 /* a_utctm.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_utctm.c; path = src/crypto/asn1/a_utctm.c; sourceTree = "<group>"; };
+		A5F51CBDE34EA696379C4F2611E3F746 /* channel_stack_type.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = channel_stack_type.cc; path = src/core/lib/surface/channel_stack_type.cc; sourceTree = "<group>"; };
+		A608EC585A8964E6BEEF8941840D8D44 /* transport_security.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = transport_security.cc; path = src/core/tsi/transport_security.cc; sourceTree = "<group>"; };
 		A61887E8E4F461069479C36F28F47A7B /* jwt_verifier.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = jwt_verifier.h; path = src/core/lib/security/credentials/jwt/jwt_verifier.h; sourceTree = "<group>"; };
 		A61E6EBB9E7A53C43771199E03E56543 /* load_balancer.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = load_balancer.upb.h; path = "src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h"; sourceTree = "<group>"; };
 		A625743ED5DFFEE0B962B197C5AAE7D0 /* grpc_library.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpc_library.h; path = include/grpcpp/impl/grpc_library.h; sourceTree = "<group>"; };
-		A62ADF6D46E0703793E739BE536B5504 /* tls_method.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tls_method.cc; path = src/ssl/tls_method.cc; sourceTree = "<group>"; };
+		A62ADF6D46E0703793E739BE536B5504 /* tls_method.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tls_method.cc; path = src/ssl/tls_method.cc; sourceTree = "<group>"; };
 		A6487C7B6E77F3345370F2ECBB406F06 /* context.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = context.h; path = src/core/lib/channel/context.h; sourceTree = "<group>"; };
-		A6541912711C1744B34F8A8CD3A188BB /* bundle.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = bundle.nanopb.cc; path = Firestore/Protos/nanopb/firestore/bundle.nanopb.cc; sourceTree = "<group>"; };
-		A66A0E804CD9606F227E8E6903A55F0A /* sockaddr_resolver.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = sockaddr_resolver.cc; path = src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc; sourceTree = "<group>"; };
+		A6541912711C1744B34F8A8CD3A188BB /* bundle.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = bundle.nanopb.cc; path = Firestore/Protos/nanopb/firestore/bundle.nanopb.cc; sourceTree = "<group>"; };
+		A66A0E804CD9606F227E8E6903A55F0A /* sockaddr_resolver.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = sockaddr_resolver.cc; path = src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc; sourceTree = "<group>"; };
 		A670DF534EF9FECD2A4742C12DAF2085 /* metadata.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = metadata.h; path = src/core/lib/transport/metadata.h; sourceTree = "<group>"; };
 		A67F646D4BA96E5C2470F533D3FA3722 /* socket_mutator.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = socket_mutator.h; path = src/core/lib/iomgr/socket_mutator.h; sourceTree = "<group>"; };
 		A6AA0A87ED15C0E8A065004574D7E24E /* alloc.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alloc.h; path = include/grpc/support/alloc.h; sourceTree = "<group>"; };
-		A6B32CC25911F55E9FF531428A4A131B /* nanopb_util.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = nanopb_util.cc; path = Firestore/core/src/nanopb/nanopb_util.cc; sourceTree = "<group>"; };
+		A6B32CC25911F55E9FF531428A4A131B /* nanopb_util.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = nanopb_util.cc; path = Firestore/core/src/nanopb/nanopb_util.cc; sourceTree = "<group>"; };
 		A6C0CBAF8CEB85B51DAFCB546B556849 /* config_source.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = config_source.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.h"; sourceTree = "<group>"; };
 		A6C2F4B609D6AFDA478957F53EA3865B /* status.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = status.h; path = include/grpc/impl/codegen/status.h; sourceTree = "<group>"; };
-		A6C741C36A7D52DC8F361706231F5A6A /* e_rc2.c */ = {isa = PBXFileReference; includeInIndex = 1; name = e_rc2.c; path = src/crypto/cipher_extra/e_rc2.c; sourceTree = "<group>"; };
+		A6C741C36A7D52DC8F361706231F5A6A /* e_rc2.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = e_rc2.c; path = src/crypto/cipher_extra/e_rc2.c; sourceTree = "<group>"; };
 		A6D23951F875F0A608769D1FC9523F8E /* grpclb_channel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpclb_channel.h; path = src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.h; sourceTree = "<group>"; };
 		A6FB02D31D3A98BFCD9DB95F05BB7B59 /* FIRAuthProtoStartMFAPhoneResponseInfo.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthProtoStartMFAPhoneResponseInfo.h; path = FirebaseAuth/Sources/Backend/RPC/Proto/Phone/FIRAuthProtoStartMFAPhoneResponseInfo.h; sourceTree = "<group>"; };
-		A7249644408C8B568BE13DE217B5F9D1 /* v3_sxnet.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_sxnet.c; path = src/crypto/x509v3/v3_sxnet.c; sourceTree = "<group>"; };
+		A7249644408C8B568BE13DE217B5F9D1 /* v3_sxnet.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_sxnet.c; path = src/crypto/x509v3/v3_sxnet.c; sourceTree = "<group>"; };
 		A751586DA7B432D26F583A630AE472CF /* filter.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = filter.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.h"; sourceTree = "<group>"; };
-		A752C89938C578375F021B18AE9E9318 /* regex.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = regex.upb.c; path = "src/core/ext/upb-generated/envoy/type/matcher/regex.upb.c"; sourceTree = "<group>"; };
-		A77E6A6D9C1385982533C27E7E7EB268 /* client_load_reporting_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = client_load_reporting_filter.cc; path = src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc; sourceTree = "<group>"; };
+		A752C89938C578375F021B18AE9E9318 /* regex.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = regex.upb.c; path = "src/core/ext/upb-generated/envoy/type/matcher/regex.upb.c"; sourceTree = "<group>"; };
+		A77E6A6D9C1385982533C27E7E7EB268 /* client_load_reporting_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = client_load_reporting_filter.cc; path = src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc; sourceTree = "<group>"; };
 		A797A91AAD284643C1C7175DB5A7C825 /* FIRMultiFactor+Internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FIRMultiFactor+Internal.h"; path = "FirebaseAuth/Sources/MultiFactor/FIRMultiFactor+Internal.h"; sourceTree = "<group>"; };
 		A7BE426C8D6613407C658DE1F863176B /* health_check_client.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = health_check_client.h; path = src/core/ext/filters/client_channel/health/health_check_client.h; sourceTree = "<group>"; };
-		A7C05A9A7061C3CA3402E061AD5740F3 /* bytes.c */ = {isa = PBXFileReference; includeInIndex = 1; name = bytes.c; path = src/crypto/fipsmodule/bn/bytes.c; sourceTree = "<group>"; };
+		A7C05A9A7061C3CA3402E061AD5740F3 /* bytes.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = bytes.c; path = src/crypto/fipsmodule/bn/bytes.c; sourceTree = "<group>"; };
 		A7D0B54FC018417F0AFDE36FC9E2EC91 /* FIRSendVerificationCodeResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRSendVerificationCodeResponse.h; path = FirebaseAuth/Sources/Backend/RPC/FIRSendVerificationCodeResponse.h; sourceTree = "<group>"; };
-		A7EBCA5F64B85B5A778C9616D466F70F /* watch_stream.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = watch_stream.cc; path = Firestore/core/src/remote/watch_stream.cc; sourceTree = "<group>"; };
-		A7F568BAF07C459599514EE0C3E6316C /* x509_v3.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509_v3.c; path = src/crypto/x509/x509_v3.c; sourceTree = "<group>"; };
-		A7FD22415F4A4076077D051A490E5EB9 /* delete_mutation.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = delete_mutation.cc; path = Firestore/core/src/model/delete_mutation.cc; sourceTree = "<group>"; };
-		A7FE7771A8C50C222378EC8779D95D9B /* secure_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = secure_credentials.cc; path = src/cpp/client/secure_credentials.cc; sourceTree = "<group>"; };
-		A822E5F9C0B1B932A61BCC1C8572D628 /* status.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = status.cc; path = src/cpp/util/status.cc; sourceTree = "<group>"; };
+		A7EBCA5F64B85B5A778C9616D466F70F /* watch_stream.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = watch_stream.cc; path = Firestore/core/src/remote/watch_stream.cc; sourceTree = "<group>"; };
+		A7F568BAF07C459599514EE0C3E6316C /* x509_v3.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509_v3.c; path = src/crypto/x509/x509_v3.c; sourceTree = "<group>"; };
+		A7FD22415F4A4076077D051A490E5EB9 /* delete_mutation.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = delete_mutation.cc; path = Firestore/core/src/model/delete_mutation.cc; sourceTree = "<group>"; };
+		A7FE7771A8C50C222378EC8779D95D9B /* secure_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = secure_credentials.cc; path = src/cpp/client/secure_credentials.cc; sourceTree = "<group>"; };
+		A822E5F9C0B1B932A61BCC1C8572D628 /* status.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = status.cc; path = src/cpp/util/status.cc; sourceTree = "<group>"; };
 		A82EB67874B058EFF13A326B065B44ED /* GDTCORUploadCoordinator.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORUploadCoordinator.h; path = GoogleDataTransport/GDTCORLibrary/Private/GDTCORUploadCoordinator.h; sourceTree = "<group>"; };
 		A830A7CFD7C66B8C502936BB672C0C31 /* FIRStartMFAEnrollmentRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStartMFAEnrollmentRequest.m; path = FirebaseAuth/Sources/Backend/RPC/MultiFactor/Enroll/FIRStartMFAEnrollmentRequest.m; sourceTree = "<group>"; };
-		A8321261CA2A36CDCE2AD5BB429920CB /* compression_internal.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = compression_internal.cc; path = src/core/lib/compression/compression_internal.cc; sourceTree = "<group>"; };
-		A8408A1994F4B1D282AA0E30CB87859B /* cpu_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = cpu_windows.cc; path = src/core/lib/gpr/cpu_windows.cc; sourceTree = "<group>"; };
+		A8321261CA2A36CDCE2AD5BB429920CB /* compression_internal.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = compression_internal.cc; path = src/core/lib/compression/compression_internal.cc; sourceTree = "<group>"; };
+		A8408A1994F4B1D282AA0E30CB87859B /* cpu_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = cpu_windows.cc; path = src/core/lib/gpr/cpu_windows.cc; sourceTree = "<group>"; };
 		A868C05AD74EEC7B8641848B5B39880D /* tcp_client.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tcp_client.h; path = src/core/lib/iomgr/tcp_client.h; sourceTree = "<group>"; };
 		A873F890DEB81DC6A80E8CAAE482AF0F /* slice.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = slice.h; path = include/grpcpp/support/slice.h; sourceTree = "<group>"; };
 		A879F6D26A74F8994CF8AB11C126CFE3 /* xds_channel_args.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = xds_channel_args.h; path = src/core/ext/filters/client_channel/xds/xds_channel_args.h; sourceTree = "<group>"; };
-		A8A8915A2543E363FC7537EAF0AC23D6 /* subchannel_pool_interface.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = subchannel_pool_interface.cc; path = src/core/ext/filters/client_channel/subchannel_pool_interface.cc; sourceTree = "<group>"; };
-		A8C40FEBE689C3FE08EA7BA0C6C2F0F7 /* target_id_generator.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = target_id_generator.cc; path = Firestore/core/src/core/target_id_generator.cc; sourceTree = "<group>"; };
+		A8A8915A2543E363FC7537EAF0AC23D6 /* subchannel_pool_interface.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = subchannel_pool_interface.cc; path = src/core/ext/filters/client_channel/subchannel_pool_interface.cc; sourceTree = "<group>"; };
+		A8C40FEBE689C3FE08EA7BA0C6C2F0F7 /* target_id_generator.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = target_id_generator.cc; path = Firestore/core/src/core/target_id_generator.cc; sourceTree = "<group>"; };
 		A8C66300DD2FB5E20E2FF50C225E9E72 /* iomgr_custom.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = iomgr_custom.h; path = src/core/lib/iomgr/iomgr_custom.h; sourceTree = "<group>"; };
-		A8D30F9D5A1A5E882FE8346CF391136F /* table.c */ = {isa = PBXFileReference; includeInIndex = 1; name = table.c; path = third_party/upb/upb/table.c; sourceTree = "<group>"; };
+		A8D30F9D5A1A5E882FE8346CF391136F /* table.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = table.c; path = third_party/upb/upb/table.c; sourceTree = "<group>"; };
 		A8D3ECD77A2AD02408DB236A83FF1884 /* FIRComponent.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRComponent.h; path = FirebaseCore/Sources/Private/FIRComponent.h; sourceTree = "<group>"; };
 		A9091E718F5489A483B69B031A4C7051 /* external_connection_acceptor_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = external_connection_acceptor_impl.h; path = src/cpp/server/external_connection_acceptor_impl.h; sourceTree = "<group>"; };
 		A90E9F9E6F906B8EDC228F872A76D6F6 /* FIRFacebookAuthProvider.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRFacebookAuthProvider.m; path = FirebaseAuth/Sources/AuthProvider/Facebook/FIRFacebookAuthProvider.m; sourceTree = "<group>"; };
-		A91B26250AF7F17BD53245E2C58E8A93 /* logging.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = logging.cc; path = util/logging.cc; sourceTree = "<group>"; };
+		A91B26250AF7F17BD53245E2C58E8A93 /* logging.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = logging.cc; path = util/logging.cc; sourceTree = "<group>"; };
 		A9417BCE1373FDFDCA8EDDB19764BD00 /* metadata_batch.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = metadata_batch.h; path = src/core/lib/transport/metadata_batch.h; sourceTree = "<group>"; };
 		A951068BD5F76F722E3C5F170A6349D8 /* FirebaseCore.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FirebaseCore.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		A959EEB3160E9787133C2E6F1326E5A6 /* FBLPromise+Recover.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "FBLPromise+Recover.m"; path = "Sources/FBLPromises/FBLPromise+Recover.m"; sourceTree = "<group>"; };
-		A9602E64F60C1ACE250ECB8FB064F924 /* memory_remote_document_cache.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = memory_remote_document_cache.cc; path = Firestore/core/src/local/memory_remote_document_cache.cc; sourceTree = "<group>"; };
+		A9602E64F60C1ACE250ECB8FB064F924 /* memory_remote_document_cache.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = memory_remote_document_cache.cc; path = Firestore/core/src/local/memory_remote_document_cache.cc; sourceTree = "<group>"; };
 		A962FB3862701606265F59E8A505AB0F /* Pods-FaceRecogAttendance.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-FaceRecogAttendance.debug.xcconfig"; sourceTree = "<group>"; };
-		A977E703A630C070E1056EB9D8FAFCD8 /* d1_pkt.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = d1_pkt.cc; path = src/ssl/d1_pkt.cc; sourceTree = "<group>"; };
-		A9A2EFF82CC35190D2133A2204C8F719 /* api_listener.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = api_listener.upb.c; path = "src/core/ext/upb-generated/envoy/config/listener/v2/api_listener.upb.c"; sourceTree = "<group>"; };
+		A977E703A630C070E1056EB9D8FAFCD8 /* d1_pkt.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = d1_pkt.cc; path = src/ssl/d1_pkt.cc; sourceTree = "<group>"; };
+		A9A2EFF82CC35190D2133A2204C8F719 /* api_listener.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = api_listener.upb.c; path = "src/core/ext/upb-generated/envoy/config/listener/v2/api_listener.upb.c"; sourceTree = "<group>"; };
 		A9C4872685641AFDEDB04EE0B51BB245 /* time.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = time.h; path = include/grpc/support/time.h; sourceTree = "<group>"; };
-		A9D5E1E880AED36545619BD5088B88D1 /* v3_skey.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_skey.c; path = src/crypto/x509v3/v3_skey.c; sourceTree = "<group>"; };
+		A9D5E1E880AED36545619BD5088B88D1 /* v3_skey.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_skey.c; path = src/crypto/x509v3/v3_skey.c; sourceTree = "<group>"; };
 		A9D9038AA4DBF1DBEA87FB6CF537A789 /* optional.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = optional.h; path = src/core/lib/gprpp/optional.h; sourceTree = "<group>"; };
 		AA14B88D82E08EADDB04EB1F5704EA9E /* FIRListenerRegistration.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRListenerRegistration.h; path = Firestore/Source/Public/FirebaseFirestore/FIRListenerRegistration.h; sourceTree = "<group>"; };
 		AA182C756BCCF2DD5BB30B93C90B3E21 /* FIRLoadBundleTask.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRLoadBundleTask.h; path = Firestore/Source/Public/FirebaseFirestore/FIRLoadBundleTask.h; sourceTree = "<group>"; };
@@ -10498,52 +10499,52 @@
 		AA72A0F99B78B72EA7220EBFDF849158 /* FIRStorageUploadTask.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStorageUploadTask.m; path = FirebaseStorage/Sources/FIRStorageUploadTask.m; sourceTree = "<group>"; };
 		AA930A0E0AAB1FCBC48175127BA39C24 /* sockaddr_custom.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sockaddr_custom.h; path = src/core/lib/iomgr/sockaddr_custom.h; sourceTree = "<group>"; };
 		AAA8BDF98F202C2EDC9C238EF2011885 /* FIRAuthURLPresenter.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthURLPresenter.m; path = FirebaseAuth/Sources/Utilities/FIRAuthURLPresenter.m; sourceTree = "<group>"; };
-		AADF281B81F4E0F2E5319995A9E318A3 /* client_authority_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = client_authority_filter.cc; path = src/core/ext/filters/http/client_authority_filter.cc; sourceTree = "<group>"; };
+		AADF281B81F4E0F2E5319995A9E318A3 /* client_authority_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = client_authority_filter.cc; path = src/core/ext/filters/http/client_authority_filter.cc; sourceTree = "<group>"; };
 		AB0575231BDBF284D2C82D77BBD41323 /* FBLPromise+Validate.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "FBLPromise+Validate.m"; path = "Sources/FBLPromises/FBLPromise+Validate.m"; sourceTree = "<group>"; };
-		AB1966E1496EB2A5D2544547EA58627A /* lds.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = lds.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/lds.upb.c"; sourceTree = "<group>"; };
-		AB35245217B71021CE0B4F13E6CF6D07 /* tls_security_connector.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tls_security_connector.cc; path = src/core/lib/security/security_connector/tls/tls_security_connector.cc; sourceTree = "<group>"; };
-		AB3BE2859FC8F4CE770F2FF974A7C98B /* is_fips.c */ = {isa = PBXFileReference; includeInIndex = 1; name = is_fips.c; path = src/crypto/fipsmodule/is_fips.c; sourceTree = "<group>"; };
+		AB1966E1496EB2A5D2544547EA58627A /* lds.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = lds.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/lds.upb.c"; sourceTree = "<group>"; };
+		AB35245217B71021CE0B4F13E6CF6D07 /* tls_security_connector.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tls_security_connector.cc; path = src/core/lib/security/security_connector/tls/tls_security_connector.cc; sourceTree = "<group>"; };
+		AB3BE2859FC8F4CE770F2FF974A7C98B /* is_fips.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = is_fips.c; path = src/crypto/fipsmodule/is_fips.c; sourceTree = "<group>"; };
 		AB4F06C1C33E4BBB161B5A0EBA2C4F88 /* time.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = time.h; path = include/grpcpp/impl/codegen/time.h; sourceTree = "<group>"; };
 		AB52CC361F4C667C1F1F8DCD253EFAA5 /* FIRWriteBatch.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRWriteBatch.h; path = Firestore/Source/Public/FirebaseFirestore/FIRWriteBatch.h; sourceTree = "<group>"; };
 		AB63797475C673408CE247F4ACB73C72 /* FIRAuthErrorUtils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthErrorUtils.h; path = FirebaseAuth/Sources/Utilities/FIRAuthErrorUtils.h; sourceTree = "<group>"; };
-		AB901D6CAD2A4E606783D26ADD7E2D43 /* stream_compression_gzip.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = stream_compression_gzip.cc; path = src/core/lib/compression/stream_compression_gzip.cc; sourceTree = "<group>"; };
-		ABB7E01BBFF7A46A7E016729FCBD849A /* zone_info_source.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = zone_info_source.cc; path = absl/time/internal/cctz/src/zone_info_source.cc; sourceTree = "<group>"; };
-		ABBC23EA33A4C35ABF5ADD47E57E97CB /* xds_api.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = xds_api.cc; path = src/core/ext/filters/client_channel/xds/xds_api.cc; sourceTree = "<group>"; };
+		AB901D6CAD2A4E606783D26ADD7E2D43 /* stream_compression_gzip.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = stream_compression_gzip.cc; path = src/core/lib/compression/stream_compression_gzip.cc; sourceTree = "<group>"; };
+		ABB7E01BBFF7A46A7E016729FCBD849A /* zone_info_source.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = zone_info_source.cc; path = absl/time/internal/cctz/src/zone_info_source.cc; sourceTree = "<group>"; };
+		ABBC23EA33A4C35ABF5ADD47E57E97CB /* xds_api.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = xds_api.cc; path = src/core/ext/filters/client_channel/xds/xds_api.cc; sourceTree = "<group>"; };
 		ABCC0525B5F7F350E77D606E4B9DF059 /* FIRAuthErrorUtils.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthErrorUtils.m; path = FirebaseAuth/Sources/Utilities/FIRAuthErrorUtils.m; sourceTree = "<group>"; };
-		ABD6DB5C04DEB93B423E0A22553F1C6D /* executor.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = executor.cc; path = src/core/lib/iomgr/executor.cc; sourceTree = "<group>"; };
-		ABE7369C8BB98244C05684A0C79A7C1A /* avl.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = avl.cc; path = src/core/lib/avl/avl.cc; sourceTree = "<group>"; };
+		ABD6DB5C04DEB93B423E0A22553F1C6D /* executor.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = executor.cc; path = src/core/lib/iomgr/executor.cc; sourceTree = "<group>"; };
+		ABE7369C8BB98244C05684A0C79A7C1A /* avl.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = avl.cc; path = src/core/lib/avl/avl.cc; sourceTree = "<group>"; };
 		ABED4A434B54B0D1B22D91E13C6E380C /* FIRHeartbeatInfo.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRHeartbeatInfo.h; path = FirebaseCore/Sources/Private/FIRHeartbeatInfo.h; sourceTree = "<group>"; };
 		AC098A40513814AF68562996BA26030E /* hpack_parser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = hpack_parser.h; path = src/core/ext/transport/chttp2/transport/hpack_parser.h; sourceTree = "<group>"; };
 		AC32FD151B14E1137D5069D4EF49EB2F /* exponential_biased.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = exponential_biased.h; path = absl/base/internal/exponential_biased.h; sourceTree = "<group>"; };
-		AC799FE9C9CE91DFDD1C415B7C40CDAE /* jwt_verifier.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = jwt_verifier.cc; path = src/core/lib/security/credentials/jwt/jwt_verifier.cc; sourceTree = "<group>"; };
+		AC799FE9C9CE91DFDD1C415B7C40CDAE /* jwt_verifier.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = jwt_verifier.cc; path = src/core/lib/security/credentials/jwt/jwt_verifier.cc; sourceTree = "<group>"; };
 		AC8731F1AD5B7A8380450EF812690E45 /* listener.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = listener.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/listener.upb.h"; sourceTree = "<group>"; };
-		ACAF48071555ED8FC9B0F5A1C5459A68 /* udp_server.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = udp_server.cc; path = src/core/lib/iomgr/udp_server.cc; sourceTree = "<group>"; };
-		ACE76766D7C2995ECEA3B3D86B809D4B /* x509_txt.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509_txt.c; path = src/crypto/x509/x509_txt.c; sourceTree = "<group>"; };
+		ACAF48071555ED8FC9B0F5A1C5459A68 /* udp_server.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = udp_server.cc; path = src/core/lib/iomgr/udp_server.cc; sourceTree = "<group>"; };
+		ACE76766D7C2995ECEA3B3D86B809D4B /* x509_txt.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509_txt.c; path = src/crypto/x509/x509_txt.c; sourceTree = "<group>"; };
 		AD2B6F8AE83F4C303364C18261C5309A /* status_metadata.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = status_metadata.h; path = src/core/lib/transport/status_metadata.h; sourceTree = "<group>"; };
 		AD357284FD9676B87E204DD0C6BDE3F3 /* time.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = time.h; path = absl/time/time.h; sourceTree = "<group>"; };
-		AD3B36282EAEF59F1146CED24F3C9124 /* credentials_generic.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = credentials_generic.cc; path = src/core/lib/security/credentials/google_default/credentials_generic.cc; sourceTree = "<group>"; };
+		AD3B36282EAEF59F1146CED24F3C9124 /* credentials_generic.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = credentials_generic.cc; path = src/core/lib/security/credentials/google_default/credentials_generic.cc; sourceTree = "<group>"; };
 		AD44AB6716F14E0F6C16F24CE892D00D /* protocol.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = protocol.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h"; sourceTree = "<group>"; };
-		AD54FABE33BB49495E367CBDAF073B8F /* FSTUserDataConverter.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FSTUserDataConverter.mm; path = Firestore/Source/API/FSTUserDataConverter.mm; sourceTree = "<group>"; };
+		AD54FABE33BB49495E367CBDAF073B8F /* FSTUserDataConverter.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FSTUserDataConverter.mm; path = Firestore/Source/API/FSTUserDataConverter.mm; sourceTree = "<group>"; };
 		AD6D1E1B747DDDE5FB6914297A9CC8F7 /* FIRTwitterAuthCredential.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRTwitterAuthCredential.m; path = FirebaseAuth/Sources/AuthProvider/Twitter/FIRTwitterAuthCredential.m; sourceTree = "<group>"; };
 		AD7D5D7FADBF052D71231675BF312BC1 /* GTMSessionFetcher-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "GTMSessionFetcher-Info.plist"; sourceTree = "<group>"; };
-		AD8E02C02C4CD21849C9DD76F4783196 /* FIRFieldPath.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FIRFieldPath.mm; path = Firestore/Source/API/FIRFieldPath.mm; sourceTree = "<group>"; };
-		AD9BC85603160D5088E89B765EAA7273 /* unknown_document.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = unknown_document.cc; path = Firestore/core/src/model/unknown_document.cc; sourceTree = "<group>"; };
+		AD8E02C02C4CD21849C9DD76F4783196 /* FIRFieldPath.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FIRFieldPath.mm; path = Firestore/Source/API/FIRFieldPath.mm; sourceTree = "<group>"; };
+		AD9BC85603160D5088E89B765EAA7273 /* unknown_document.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = unknown_document.cc; path = Firestore/core/src/model/unknown_document.cc; sourceTree = "<group>"; };
 		ADA40791EF1FE246F770E9F67BC4FDA9 /* handshaker.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = handshaker.upb.h; path = "src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h"; sourceTree = "<group>"; };
 		ADB27612A3AFA450D8BFDB0CAE9D368C /* route.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = route.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/route/route.upb.h"; sourceTree = "<group>"; };
 		ADBB5D6D7A512CB6FC92545AF43D5D63 /* alts_grpc_integrity_only_record_protocol.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_grpc_integrity_only_record_protocol.h; path = src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.h; sourceTree = "<group>"; };
 		ADBE0284A2E49ACFF1A4BEB8C0E8EF0D /* message_size_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = message_size_filter.h; path = src/core/ext/filters/message_size/message_size_filter.h; sourceTree = "<group>"; };
-		ADDC53BB26442D10511C7F9A10F0368A /* workaround_utils.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = workaround_utils.cc; path = src/core/ext/filters/workarounds/workaround_utils.cc; sourceTree = "<group>"; };
-		AE062C93B70A5EA572FA9210B89F374D /* pollset_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = pollset_windows.cc; path = src/core/lib/iomgr/pollset_windows.cc; sourceTree = "<group>"; };
+		ADDC53BB26442D10511C7F9A10F0368A /* workaround_utils.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = workaround_utils.cc; path = src/core/ext/filters/workarounds/workaround_utils.cc; sourceTree = "<group>"; };
+		AE062C93B70A5EA572FA9210B89F374D /* pollset_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = pollset_windows.cc; path = src/core/lib/iomgr/pollset_windows.cc; sourceTree = "<group>"; };
 		AE0E5E0841EA6F348252599D563F15B3 /* proxy_mapper.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = proxy_mapper.h; path = src/core/ext/filters/client_channel/proxy_mapper.h; sourceTree = "<group>"; };
-		AE241C78FCA30E033F6EF46AA018A328 /* rand_extra.c */ = {isa = PBXFileReference; includeInIndex = 1; name = rand_extra.c; path = src/crypto/rand_extra/rand_extra.c; sourceTree = "<group>"; };
+		AE241C78FCA30E033F6EF46AA018A328 /* rand_extra.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = rand_extra.c; path = src/crypto/rand_extra/rand_extra.c; sourceTree = "<group>"; };
 		AE34E3A50AF38A92C2B68B2D276B4840 /* slice_string_helpers.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = slice_string_helpers.h; path = src/core/lib/slice/slice_string_helpers.h; sourceTree = "<group>"; };
 		AE5AC6120D91E61CFD9385BBEF8FEBD9 /* eventmanager_libuv.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = eventmanager_libuv.h; path = src/core/lib/iomgr/poller/eventmanager_libuv.h; sourceTree = "<group>"; };
-		AE6FCF5F088E913069DF538DE5781A99 /* transport_security_grpc.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = transport_security_grpc.cc; path = src/core/tsi/transport_security_grpc.cc; sourceTree = "<group>"; };
-		AE80801C64C38F97A9EA07EBBF210A8E /* error.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = error.cc; path = src/core/lib/iomgr/error.cc; sourceTree = "<group>"; };
+		AE6FCF5F088E913069DF538DE5781A99 /* transport_security_grpc.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = transport_security_grpc.cc; path = src/core/tsi/transport_security_grpc.cc; sourceTree = "<group>"; };
+		AE80801C64C38F97A9EA07EBBF210A8E /* error.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = error.cc; path = src/core/lib/iomgr/error.cc; sourceTree = "<group>"; };
 		AE87B9F9AB3E8B4AFC6BEB511506E875 /* interceptor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = interceptor.h; path = include/grpcpp/support/interceptor.h; sourceTree = "<group>"; };
-		AE8AA42151A19742032F5CACD3E9959C /* v3_utl.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_utl.c; path = src/crypto/x509v3/v3_utl.c; sourceTree = "<group>"; };
-		AEC924CCC8F13F54E6EEA51916925B91 /* grpc_ares_ev_driver_libuv.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_ares_ev_driver_libuv.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc; sourceTree = "<group>"; };
-		AEDCE0822D668DB49F9299454A6D4F15 /* maybe_document.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = maybe_document.cc; path = Firestore/core/src/model/maybe_document.cc; sourceTree = "<group>"; };
+		AE8AA42151A19742032F5CACD3E9959C /* v3_utl.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_utl.c; path = src/crypto/x509v3/v3_utl.c; sourceTree = "<group>"; };
+		AEC924CCC8F13F54E6EEA51916925B91 /* grpc_ares_ev_driver_libuv.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_ares_ev_driver_libuv.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc; sourceTree = "<group>"; };
+		AEDCE0822D668DB49F9299454A6D4F15 /* maybe_document.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = maybe_document.cc; path = Firestore/core/src/model/maybe_document.cc; sourceTree = "<group>"; };
 		AEEAB82696B56D9A6BBFEAB8177AA3A0 /* string_view.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = string_view.h; path = absl/strings/string_view.h; sourceTree = "<group>"; };
 		AEF4F26A7B7D40851BDDF010705C2A80 /* endian.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = endian.h; path = absl/base/internal/endian.h; sourceTree = "<group>"; };
 		AF19D2C43693078BA38E8BEAE7DFB90E /* GULNSData+zlib.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "GULNSData+zlib.h"; path = "GoogleUtilities/NSData+zlib/Public/GoogleUtilities/GULNSData+zlib.h"; sourceTree = "<group>"; };
@@ -10551,56 +10552,56 @@
 		AF345C92202978FD25DA3C03095CA5AA /* metadata.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = metadata.upb.h; path = "src/core/ext/upb-generated/envoy/type/metadata/v2/metadata.upb.h"; sourceTree = "<group>"; };
 		AF4664CE791A9FE08CCC6C3449778707 /* FIRLibrary.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRLibrary.h; path = FirebaseCore/Sources/Private/FIRLibrary.h; sourceTree = "<group>"; };
 		AF667A7CA9705D76B8EB5CA2B4ED16BA /* sync_generic.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sync_generic.h; path = include/grpc/impl/codegen/sync_generic.h; sourceTree = "<group>"; };
-		AF6CEF8B8D6112BBB3B37843AE34756D /* grpc_nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_nanopb.cc; path = Firestore/core/src/remote/grpc_nanopb.cc; sourceTree = "<group>"; };
+		AF6CEF8B8D6112BBB3B37843AE34756D /* grpc_nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_nanopb.cc; path = Firestore/core/src/remote/grpc_nanopb.cc; sourceTree = "<group>"; };
 		AF7868F6D4E44DC07F5EC2EEF50FF974 /* FIRAuthWebView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthWebView.h; path = FirebaseAuth/Sources/Utilities/FIRAuthWebView.h; sourceTree = "<group>"; };
 		AF98E41AA93B6BF0165BF2BA4DD630DB /* BoringSSL-GRPC.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "BoringSSL-GRPC.modulemap"; sourceTree = "<group>"; };
 		AFEB0F73B90A03B72E2ACFCD945E3D73 /* GULReachabilityMessageCode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULReachabilityMessageCode.h; path = GoogleUtilities/Reachability/GULReachabilityMessageCode.h; sourceTree = "<group>"; };
 		AFF4D14497A9B5BC4C44856CA242FDA1 /* any.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = any.upb.h; path = "src/core/ext/upb-generated/google/protobuf/any.upb.h"; sourceTree = "<group>"; };
-		B0082939D4D8652CBD50788625D8E799 /* extension.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = extension.cc; path = absl/strings/internal/str_format/extension.cc; sourceTree = "<group>"; };
+		B0082939D4D8652CBD50788625D8E799 /* extension.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = extension.cc; path = absl/strings/internal/str_format/extension.cc; sourceTree = "<group>"; };
 		B008D7500810CD594336584AC27A31F4 /* FIRFinalizeMFASignInRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRFinalizeMFASignInRequest.h; path = FirebaseAuth/Sources/Backend/RPC/MultiFactor/SignIn/FIRFinalizeMFASignInRequest.h; sourceTree = "<group>"; };
-		B00B8BF8D7DC95F90AA6C9A58B525DEA /* check.c */ = {isa = PBXFileReference; includeInIndex = 1; name = check.c; path = src/crypto/dh/check.c; sourceTree = "<group>"; };
+		B00B8BF8D7DC95F90AA6C9A58B525DEA /* check.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = check.c; path = src/crypto/dh/check.c; sourceTree = "<group>"; };
 		B01036C4BDA44EE8499609B418BDF29D /* CLTypingLabel-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "CLTypingLabel-prefix.pch"; sourceTree = "<group>"; };
 		B02BC9C63C564080E497450615102B0C /* FIRGetAccountInfoRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRGetAccountInfoRequest.m; path = FirebaseAuth/Sources/Backend/RPC/FIRGetAccountInfoRequest.m; sourceTree = "<group>"; };
-		B03018C5A3325FEA2DCCFC3CFC436ABE /* obj.c */ = {isa = PBXFileReference; includeInIndex = 1; name = obj.c; path = src/crypto/obj/obj.c; sourceTree = "<group>"; };
+		B03018C5A3325FEA2DCCFC3CFC436ABE /* obj.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = obj.c; path = src/crypto/obj/obj.c; sourceTree = "<group>"; };
 		B03ADA8D46417CE29AC1EE093042BA01 /* FBLPromise+Any.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FBLPromise+Any.h"; path = "Sources/FBLPromises/include/FBLPromise+Any.h"; sourceTree = "<group>"; };
 		B03FE23692F124471CBC1267F3382890 /* asn1.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = asn1.h; path = src/include/openssl/asn1.h; sourceTree = "<group>"; };
 		B04235890BE636A0025E1BFD14E79E28 /* connected_channel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = connected_channel.h; path = src/core/lib/channel/connected_channel.h; sourceTree = "<group>"; };
-		B04E3DD056102F2181722A5BFBB571F5 /* util.c */ = {isa = PBXFileReference; includeInIndex = 1; name = util.c; path = src/crypto/fipsmodule/ec/util.c; sourceTree = "<group>"; };
+		B04E3DD056102F2181722A5BFBB571F5 /* util.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = util.c; path = src/crypto/fipsmodule/ec/util.c; sourceTree = "<group>"; };
 		B05BBA6D547CE675E1593EE703324290 /* event_string.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = event_string.h; path = src/core/lib/surface/event_string.h; sourceTree = "<group>"; };
 		B06A975A3A32F3DF8FD12925921F3AB5 /* int128.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = int128.h; path = absl/numeric/int128.h; sourceTree = "<group>"; };
-		B06CB9607F707BF42DB931D5FF96BFDF /* p5_pbev2.c */ = {isa = PBXFileReference; includeInIndex = 1; name = p5_pbev2.c; path = src/crypto/pkcs8/p5_pbev2.c; sourceTree = "<group>"; };
-		B090D0E4445802DFB641F09FA63201CB /* v3_bcons.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_bcons.c; path = src/crypto/x509v3/v3_bcons.c; sourceTree = "<group>"; };
+		B06CB9607F707BF42DB931D5FF96BFDF /* p5_pbev2.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = p5_pbev2.c; path = src/crypto/pkcs8/p5_pbev2.c; sourceTree = "<group>"; };
+		B090D0E4445802DFB641F09FA63201CB /* v3_bcons.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_bcons.c; path = src/crypto/x509v3/v3_bcons.c; sourceTree = "<group>"; };
 		B095815DC28C7ABB5C7E479B8E932945 /* endpoint_pair.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = endpoint_pair.h; path = src/core/lib/iomgr/endpoint_pair.h; sourceTree = "<group>"; };
 		B0A9EBC11C3CF25EA4DD7070C1464EE1 /* load_system_roots_linux.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = load_system_roots_linux.h; path = src/core/lib/security/security_connector/load_system_roots_linux.h; sourceTree = "<group>"; };
-		B0BBDDA9D102EB01F0D96EB3E3CFF47A /* alts_iovec_record_protocol.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alts_iovec_record_protocol.cc; path = src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc; sourceTree = "<group>"; };
+		B0BBDDA9D102EB01F0D96EB3E3CFF47A /* alts_iovec_record_protocol.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alts_iovec_record_protocol.cc; path = src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc; sourceTree = "<group>"; };
 		B0FCF84C809A549DB3458CD9798A65D1 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; };
-		B0FDFE979414A862BCD45B87582A1F34 /* subchannel.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = subchannel.cc; path = src/core/ext/filters/client_channel/subchannel.cc; sourceTree = "<group>"; };
-		B10260117486B0625C3091FC1FFEFCE6 /* channel_ping.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = channel_ping.cc; path = src/core/lib/surface/channel_ping.cc; sourceTree = "<group>"; };
+		B0FDFE979414A862BCD45B87582A1F34 /* subchannel.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = subchannel.cc; path = src/core/ext/filters/client_channel/subchannel.cc; sourceTree = "<group>"; };
+		B10260117486B0625C3091FC1FFEFCE6 /* channel_ping.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = channel_ping.cc; path = src/core/lib/surface/channel_ping.cc; sourceTree = "<group>"; };
 		B1663591D7F9221395C0633327653BD1 /* srds.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = srds.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/srds.upb.h"; sourceTree = "<group>"; };
-		B16FB15DE03717E1E929E82376F2BA97 /* timestamp.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = timestamp.upb.c; path = "src/core/ext/upb-generated/google/protobuf/timestamp.upb.c"; sourceTree = "<group>"; };
-		B170DD1148FBE6707EF3BA6942FD6A02 /* FIRQuery.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FIRQuery.mm; path = Firestore/Source/API/FIRQuery.mm; sourceTree = "<group>"; };
-		B172583D7CAB69D57DF7E48EBB77042C /* v3_alt.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_alt.c; path = src/crypto/x509v3/v3_alt.c; sourceTree = "<group>"; };
-		B1787190551FEFB420FE22322FC8E4C6 /* thread_none.c */ = {isa = PBXFileReference; includeInIndex = 1; name = thread_none.c; path = src/crypto/thread_none.c; sourceTree = "<group>"; };
+		B16FB15DE03717E1E929E82376F2BA97 /* timestamp.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = timestamp.upb.c; path = "src/core/ext/upb-generated/google/protobuf/timestamp.upb.c"; sourceTree = "<group>"; };
+		B170DD1148FBE6707EF3BA6942FD6A02 /* FIRQuery.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FIRQuery.mm; path = Firestore/Source/API/FIRQuery.mm; sourceTree = "<group>"; };
+		B172583D7CAB69D57DF7E48EBB77042C /* v3_alt.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_alt.c; path = src/crypto/x509v3/v3_alt.c; sourceTree = "<group>"; };
+		B1787190551FEFB420FE22322FC8E4C6 /* thread_none.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = thread_none.c; path = src/crypto/thread_none.c; sourceTree = "<group>"; };
 		B18005CC35720330990BB520BF7801D8 /* client_context.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_context.h; path = include/grpcpp/impl/codegen/client_context.h; sourceTree = "<group>"; };
 		B182B4A1918B4F6B7DF4E4A34E46498D /* FIRUser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRUser.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRUser.h; sourceTree = "<group>"; };
-		B19011FA91C450508BD40092A58108DC /* annotations.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = annotations.nanopb.cc; path = Firestore/Protos/nanopb/google/api/annotations.nanopb.cc; sourceTree = "<group>"; };
+		B19011FA91C450508BD40092A58108DC /* annotations.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = annotations.nanopb.cc; path = Firestore/Protos/nanopb/google/api/annotations.nanopb.cc; sourceTree = "<group>"; };
 		B19EA18187767D566940120018AD18BB /* tsan_mutex_interface.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tsan_mutex_interface.h; path = absl/base/internal/tsan_mutex_interface.h; sourceTree = "<group>"; };
 		B1C8C4AB95E67F451F3EB88F9E6EC660 /* ext_dat.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ext_dat.h; path = src/crypto/x509v3/ext_dat.h; sourceTree = "<group>"; };
-		B1CDE7E24B3CAD160ABB6D46B86D706F /* empty_credentials_provider.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = empty_credentials_provider.cc; path = Firestore/core/src/auth/empty_credentials_provider.cc; sourceTree = "<group>"; };
-		B1D43DC3F7721D8B2F10D1DEF104F270 /* grpclb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpclb.cc; path = src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc; sourceTree = "<group>"; };
-		B1E325AA11AA9E94A7E55D66BF5B45E1 /* create_default_thread_pool.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = create_default_thread_pool.cc; path = src/cpp/server/create_default_thread_pool.cc; sourceTree = "<group>"; };
+		B1CDE7E24B3CAD160ABB6D46B86D706F /* empty_credentials_provider.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = empty_credentials_provider.cc; path = Firestore/core/src/auth/empty_credentials_provider.cc; sourceTree = "<group>"; };
+		B1D43DC3F7721D8B2F10D1DEF104F270 /* grpclb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpclb.cc; path = src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc; sourceTree = "<group>"; };
+		B1E325AA11AA9E94A7E55D66BF5B45E1 /* create_default_thread_pool.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = create_default_thread_pool.cc; path = src/cpp/server/create_default_thread_pool.cc; sourceTree = "<group>"; };
 		B209B3A12D3809D03904BF87FADDCB55 /* stream_compression_identity.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = stream_compression_identity.h; path = src/core/lib/compression/stream_compression_identity.h; sourceTree = "<group>"; };
-		B227A5E2EF32E61BF1BC44EF0E26E151 /* route.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = route.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/route/route.upb.c"; sourceTree = "<group>"; };
-		B250342EA2921FB461ACE3907BF59F0A /* charconv.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = charconv.cc; path = absl/strings/charconv.cc; sourceTree = "<group>"; };
+		B227A5E2EF32E61BF1BC44EF0E26E151 /* route.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = route.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/route/route.upb.c"; sourceTree = "<group>"; };
+		B250342EA2921FB461ACE3907BF59F0A /* charconv.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = charconv.cc; path = absl/strings/charconv.cc; sourceTree = "<group>"; };
 		B25639D9B3EFAF01BC0991E686792FD6 /* md4.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = md4.h; path = src/include/openssl/md4.h; sourceTree = "<group>"; };
 		B277753B3BD455EE9754DF36F8EE5E64 /* FIRAuthAppCredentialManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthAppCredentialManager.h; path = FirebaseAuth/Sources/SystemService/FIRAuthAppCredentialManager.h; sourceTree = "<group>"; };
-		B2A368C342BC75E4F0A0AE0146427166 /* channel_args.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = channel_args.cc; path = src/core/lib/channel/channel_args.cc; sourceTree = "<group>"; };
-		B2AE967A1660423E5B8D0DD830BC8354 /* eventmanager_libuv.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = eventmanager_libuv.cc; path = src/core/lib/iomgr/poller/eventmanager_libuv.cc; sourceTree = "<group>"; };
-		B2CCA97B6B15AD731E4F9B19F3012F4A /* ssl_privkey.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_privkey.cc; path = src/ssl/ssl_privkey.cc; sourceTree = "<group>"; };
-		B2DDD7DFE685EAABD3D71A2AD9689879 /* leveldb_bundle_cache.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = leveldb_bundle_cache.cc; path = Firestore/core/src/local/leveldb_bundle_cache.cc; sourceTree = "<group>"; };
-		B301A737245E8A7A38C6FA3967835E45 /* http.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = http.upb.c; path = "src/core/ext/upb-generated/google/api/http.upb.c"; sourceTree = "<group>"; };
+		B2A368C342BC75E4F0A0AE0146427166 /* channel_args.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = channel_args.cc; path = src/core/lib/channel/channel_args.cc; sourceTree = "<group>"; };
+		B2AE967A1660423E5B8D0DD830BC8354 /* eventmanager_libuv.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = eventmanager_libuv.cc; path = src/core/lib/iomgr/poller/eventmanager_libuv.cc; sourceTree = "<group>"; };
+		B2CCA97B6B15AD731E4F9B19F3012F4A /* ssl_privkey.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_privkey.cc; path = src/ssl/ssl_privkey.cc; sourceTree = "<group>"; };
+		B2DDD7DFE685EAABD3D71A2AD9689879 /* leveldb_bundle_cache.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = leveldb_bundle_cache.cc; path = Firestore/core/src/local/leveldb_bundle_cache.cc; sourceTree = "<group>"; };
+		B301A737245E8A7A38C6FA3967835E45 /* http.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = http.upb.c; path = "src/core/ext/upb-generated/google/api/http.upb.c"; sourceTree = "<group>"; };
 		B304E86DEF3BDD6BDDDE1FD436C2E09D /* composite_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = composite_credentials.h; path = src/core/lib/security/credentials/composite/composite_credentials.h; sourceTree = "<group>"; };
-		B3166EE6D44663E44B96A35EB8646FC3 /* field_mask.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = field_mask.cc; path = Firestore/core/src/model/field_mask.cc; sourceTree = "<group>"; };
+		B3166EE6D44663E44B96A35EB8646FC3 /* field_mask.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = field_mask.cc; path = Firestore/core/src/model/field_mask.cc; sourceTree = "<group>"; };
 		B318590B8E2F9931FD5474799F4144C9 /* slice_weak_hash_table.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = slice_weak_hash_table.h; path = src/core/lib/slice/slice_weak_hash_table.h; sourceTree = "<group>"; };
 		B31EBFB1EACF5442B52B64358E79B604 /* listener.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = listener.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/listener/listener.upb.h"; sourceTree = "<group>"; };
 		B35014D049B70B001E22274988C5A607 /* core_codegen.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = core_codegen.h; path = include/grpcpp/impl/codegen/core_codegen.h; sourceTree = "<group>"; };
@@ -10611,103 +10612,103 @@
 		B39C70C8666CA0A61E3DB42DADBC6B28 /* timer_custom.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = timer_custom.h; path = src/core/lib/iomgr/timer_custom.h; sourceTree = "<group>"; };
 		B3A08B1F154C5166E6989D93AB511099 /* ssl_utils_config.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl_utils_config.h; path = src/core/lib/security/security_connector/ssl_utils_config.h; sourceTree = "<group>"; };
 		B3A2471C5C1D4E0C9A90790392CA9C99 /* FIRUserInfoImpl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRUserInfoImpl.h; path = FirebaseAuth/Sources/User/FIRUserInfoImpl.h; sourceTree = "<group>"; };
-		B3A33825F31863DE849052CB9612A24E /* ssl_cert.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_cert.cc; path = src/ssl/ssl_cert.cc; sourceTree = "<group>"; };
+		B3A33825F31863DE849052CB9612A24E /* ssl_cert.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_cert.cc; path = src/ssl/ssl_cert.cc; sourceTree = "<group>"; };
 		B3AC343113D903A0CD37ED428371B278 /* FIRAnalyticsConfiguration.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAnalyticsConfiguration.m; path = FirebaseCore/Sources/FIRAnalyticsConfiguration.m; sourceTree = "<group>"; };
 		B3AF0864B2184088B2202AF2F225AB8E /* GoogleDataTransport.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = GoogleDataTransport.modulemap; sourceTree = "<group>"; };
 		B3D2619E278027AC1FCBFCFF976AC9BA /* alts_iovec_record_protocol.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_iovec_record_protocol.h; path = src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.h; sourceTree = "<group>"; };
-		B3D534E6103B6BECE47EAC4A4DBBAD6D /* pcy_node.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pcy_node.c; path = src/crypto/x509v3/pcy_node.c; sourceTree = "<group>"; };
+		B3D534E6103B6BECE47EAC4A4DBBAD6D /* pcy_node.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pcy_node.c; path = src/crypto/x509v3/pcy_node.c; sourceTree = "<group>"; };
 		B3D58B0E1F960920504AE2D03FA3CD3A /* migrate.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = migrate.upb.h; path = "src/core/ext/upb-generated/udpa/annotations/migrate.upb.h"; sourceTree = "<group>"; };
-		B40EC6ABCE607EA58CA850DB07DB9795 /* tcp_server_custom.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tcp_server_custom.cc; path = src/core/lib/iomgr/tcp_server_custom.cc; sourceTree = "<group>"; };
-		B431A511AE0972D6E4A35A2D505F7A43 /* http_client_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = http_client_filter.cc; path = src/core/ext/filters/http/client/http_client_filter.cc; sourceTree = "<group>"; };
-		B43874C6CBB50E7134FBEC24BABFE14F /* GoogleUtilities.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = GoogleUtilities.framework; path = GoogleUtilities.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		B40EC6ABCE607EA58CA850DB07DB9795 /* tcp_server_custom.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tcp_server_custom.cc; path = src/core/lib/iomgr/tcp_server_custom.cc; sourceTree = "<group>"; };
+		B431A511AE0972D6E4A35A2D505F7A43 /* http_client_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = http_client_filter.cc; path = src/core/ext/filters/http/client/http_client_filter.cc; sourceTree = "<group>"; };
+		B43874C6CBB50E7134FBEC24BABFE14F /* GoogleUtilities.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = GoogleUtilities.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		B438CD1702B0ED84AC870C39EC14C1BD /* stream_map.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = stream_map.h; path = src/core/ext/transport/chttp2/transport/stream_map.h; sourceTree = "<group>"; };
 		B447F615F9A7ED2E2DF776A99FA11F37 /* str_format.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = str_format.h; path = absl/strings/str_format.h; sourceTree = "<group>"; };
 		B448C5DB9E95444758BD898CDB2101FB /* gRPC-C++-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "gRPC-C++-prefix.pch"; sourceTree = "<group>"; };
-		B450233AEEAA737CBD57110A1E6248DC /* generic.c */ = {isa = PBXFileReference; includeInIndex = 1; name = generic.c; path = src/crypto/fipsmodule/bn/generic.c; sourceTree = "<group>"; };
+		B450233AEEAA737CBD57110A1E6248DC /* generic.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = generic.c; path = src/crypto/fipsmodule/bn/generic.c; sourceTree = "<group>"; };
 		B45728FCF15BCF0FC79C66335E0E100C /* abseil-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "abseil-prefix.pch"; sourceTree = "<group>"; };
 		B46BEC9FD53D7E76B9DE9CA9416F15D2 /* ev_poll_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ev_poll_posix.h; path = src/core/lib/iomgr/ev_poll_posix.h; sourceTree = "<group>"; };
-		B471867C535B02FA55D87E260F6480F8 /* grpc.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = grpc.framework; path = "gRPC-Core.framework"; sourceTree = BUILT_PRODUCTS_DIR; };
+		B471867C535B02FA55D87E260F6480F8 /* grpc.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = grpc.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		B482A9A972EE1497AD15DF72C52BDD78 /* GDTCORStorageProtocol.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORStorageProtocol.h; path = GoogleDataTransport/GDTCORLibrary/Internal/GDTCORStorageProtocol.h; sourceTree = "<group>"; };
-		B4AB0BD26853E181147468CF70ADC965 /* polling_entity.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = polling_entity.cc; path = src/core/lib/iomgr/polling_entity.cc; sourceTree = "<group>"; };
+		B4AB0BD26853E181147468CF70ADC965 /* polling_entity.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = polling_entity.cc; path = src/core/lib/iomgr/polling_entity.cc; sourceTree = "<group>"; };
 		B4BCAF1982A69A3FE92762A2D97D595B /* server_callback.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_callback.h; path = include/grpcpp/impl/codegen/server_callback.h; sourceTree = "<group>"; };
-		B4BE1A4ED9156BA03908998A6E148421 /* table_builder.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = table_builder.cc; path = table/table_builder.cc; sourceTree = "<group>"; };
+		B4BE1A4ED9156BA03908998A6E148421 /* table_builder.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = table_builder.cc; path = table/table_builder.cc; sourceTree = "<group>"; };
 		B4C0E9D8053DBF420824F8DD4FF4503B /* connector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = connector.h; path = src/core/ext/filters/client_channel/connector.h; sourceTree = "<group>"; };
 		B4D679044AC794B2EEEAB27665AD040E /* channel_args.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channel_args.h; path = src/core/lib/channel/channel_args.h; sourceTree = "<group>"; };
 		B5062530825EBE786FE26363310539A8 /* FIRStorageGetDownloadURLTask.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStorageGetDownloadURLTask.m; path = FirebaseStorage/Sources/FIRStorageGetDownloadURLTask.m; sourceTree = "<group>"; };
 		B527EC80DB77F9A5811BA6553202FDDA /* periodic_sampler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = periodic_sampler.h; path = absl/base/internal/periodic_sampler.h; sourceTree = "<group>"; };
 		B531C57720D3193E946C67238AEDE9AB /* resolver_result_parsing.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resolver_result_parsing.h; path = src/core/ext/filters/client_channel/resolver_result_parsing.h; sourceTree = "<group>"; };
 		B53E56290D552AE61056D352F97559D2 /* encode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = encode.h; path = third_party/upb/upb/encode.h; sourceTree = "<group>"; };
-		B544B9197A411D95104919090E8F7A39 /* sha256.c */ = {isa = PBXFileReference; includeInIndex = 1; name = sha256.c; path = src/crypto/fipsmodule/sha/sha256.c; sourceTree = "<group>"; };
+		B544B9197A411D95104919090E8F7A39 /* sha256.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = sha256.c; path = src/crypto/fipsmodule/sha/sha256.c; sourceTree = "<group>"; };
 		B55543375C836E740D84770E03E217DB /* handshaker_factory.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = handshaker_factory.h; path = src/core/lib/channel/handshaker_factory.h; sourceTree = "<group>"; };
-		B55B679A05C4A79877F75D08EC2D301A /* float_conversion.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = float_conversion.cc; path = absl/strings/internal/str_format/float_conversion.cc; sourceTree = "<group>"; };
+		B55B679A05C4A79877F75D08EC2D301A /* float_conversion.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = float_conversion.cc; path = absl/strings/internal/str_format/float_conversion.cc; sourceTree = "<group>"; };
 		B55FC961734E7964836FB8073DA0D923 /* lds.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = lds.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/lds.upb.h"; sourceTree = "<group>"; };
 		B56D940416FB766920FAFC33BD308232 /* FIRMultiFactorResolver.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRMultiFactorResolver.m; path = FirebaseAuth/Sources/MultiFactor/FIRMultiFactorResolver.m; sourceTree = "<group>"; };
-		B59F0EBDEE8E9B5FE3EA025A3576CF33 /* dns_resolver.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = dns_resolver.cc; path = src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc; sourceTree = "<group>"; };
+		B59F0EBDEE8E9B5FE3EA025A3576CF33 /* dns_resolver.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = dns_resolver.cc; path = src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc; sourceTree = "<group>"; };
 		B5A3B2D64AAC7E907FD0D6C1A033C7C8 /* dbformat.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = dbformat.h; path = db/dbformat.h; sourceTree = "<group>"; };
 		B5A69641D35AD64487133E408EFF4E60 /* FIRAuthRPCResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthRPCResponse.h; path = FirebaseAuth/Sources/Backend/FIRAuthRPCResponse.h; sourceTree = "<group>"; };
-		B5CF859976BB584A3B8454F38A08D60F /* FIRWriteBatch.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FIRWriteBatch.mm; path = Firestore/Source/API/FIRWriteBatch.mm; sourceTree = "<group>"; };
+		B5CF859976BB584A3B8454F38A08D60F /* FIRWriteBatch.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FIRWriteBatch.mm; path = Firestore/Source/API/FIRWriteBatch.mm; sourceTree = "<group>"; };
 		B5D272ED0E72F76ABD5CF42997E9E24D /* FIREmailPasswordAuthCredential.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIREmailPasswordAuthCredential.m; path = FirebaseAuth/Sources/AuthProvider/Email/FIREmailPasswordAuthCredential.m; sourceTree = "<group>"; };
-		B5F39DC867CCC43E0029FD881B166ED7 /* json_writer.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = json_writer.cc; path = src/core/lib/json/json_writer.cc; sourceTree = "<group>"; };
+		B5F39DC867CCC43E0029FD881B166ED7 /* json_writer.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = json_writer.cc; path = src/core/lib/json/json_writer.cc; sourceTree = "<group>"; };
 		B60AFA859EA82AB990821A7F1EEF7380 /* GDTCORClock.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCORClock.m; path = GoogleDataTransport/GDTCORLibrary/GDTCORClock.m; sourceTree = "<group>"; };
 		B60C812B92C095FBC8AD50DEEB563E75 /* crypto.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = crypto.h; path = src/include/openssl/crypto.h; sourceTree = "<group>"; };
-		B60F32D97909B0AD24D5093A8234FF59 /* child_policy_handler.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = child_policy_handler.cc; path = src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc; sourceTree = "<group>"; };
+		B60F32D97909B0AD24D5093A8234FF59 /* child_policy_handler.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = child_policy_handler.cc; path = src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc; sourceTree = "<group>"; };
 		B6290BA2E8C38FDA6DA73E5432A2B101 /* env.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = env.h; path = src/core/lib/gpr/env.h; sourceTree = "<group>"; };
 		B6390118D7BD9C8C5BB77A3F7B0DA39D /* grpclb_channel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpclb_channel.h; path = src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.h; sourceTree = "<group>"; };
-		B662A25B7176F160292DF308945C26C7 /* FIRQuerySnapshot.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FIRQuerySnapshot.mm; path = Firestore/Source/API/FIRQuerySnapshot.mm; sourceTree = "<group>"; };
+		B662A25B7176F160292DF308945C26C7 /* FIRQuerySnapshot.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FIRQuerySnapshot.mm; path = Firestore/Source/API/FIRQuerySnapshot.mm; sourceTree = "<group>"; };
 		B67288E64B97266FA4C0E6D3A6437BF7 /* per_thread_tls.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = per_thread_tls.h; path = absl/base/internal/per_thread_tls.h; sourceTree = "<group>"; };
-		B68236907AB8AE3637CBEF6B7E5A1604 /* p_rsa.c */ = {isa = PBXFileReference; includeInIndex = 1; name = p_rsa.c; path = src/crypto/evp/p_rsa.c; sourceTree = "<group>"; };
+		B68236907AB8AE3637CBEF6B7E5A1604 /* p_rsa.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = p_rsa.c; path = src/crypto/evp/p_rsa.c; sourceTree = "<group>"; };
 		B68D2606AB15448B5506B84E1CF3A210 /* FIRSignUpNewUserRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRSignUpNewUserRequest.m; path = FirebaseAuth/Sources/Backend/RPC/FIRSignUpNewUserRequest.m; sourceTree = "<group>"; };
 		B68DA9D127FA4A0B908C301D84F5CA01 /* FIRDiagnosticsData.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRDiagnosticsData.h; path = FirebaseCore/Sources/FIRDiagnosticsData.h; sourceTree = "<group>"; };
-		B69B1C49CC306B02BA3211747DD9ADD5 /* client_channel_factory.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = client_channel_factory.cc; path = src/core/ext/filters/client_channel/client_channel_factory.cc; sourceTree = "<group>"; };
+		B69B1C49CC306B02BA3211747DD9ADD5 /* client_channel_factory.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = client_channel_factory.cc; path = src/core/ext/filters/client_channel/client_channel_factory.cc; sourceTree = "<group>"; };
 		B6A90B3CB8CF0917FADDBAB746E037BC /* transport_security_common.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = transport_security_common.upb.h; path = "src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h"; sourceTree = "<group>"; };
 		B6B7C500C95E564CACB6A89AAD9E94D9 /* testutil.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = testutil.h; path = util/testutil.h; sourceTree = "<group>"; };
 		B6CCD81BB01BFF9A1A46BD0B633FF227 /* lame_client.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = lame_client.h; path = src/core/lib/surface/lame_client.h; sourceTree = "<group>"; };
-		B6DCA4C7CD4EC90939B20546998A12A5 /* pcy_lib.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pcy_lib.c; path = src/crypto/x509v3/pcy_lib.c; sourceTree = "<group>"; };
+		B6DCA4C7CD4EC90939B20546998A12A5 /* pcy_lib.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pcy_lib.c; path = src/crypto/x509v3/pcy_lib.c; sourceTree = "<group>"; };
 		B6F8875D64F5CD9B91C0FAF465134F71 /* FIRCoreDiagnosticsInterop.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRCoreDiagnosticsInterop.h; path = Interop/CoreDiagnostics/Public/FIRCoreDiagnosticsInterop.h; sourceTree = "<group>"; };
 		B71EA8600AB96AA31012AE947B79231F /* FIRApp.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRApp.m; path = FirebaseCore/Sources/FIRApp.m; sourceTree = "<group>"; };
-		B7596FD6E87F0CEE3C59DCC906D011AA /* cmac.c */ = {isa = PBXFileReference; includeInIndex = 1; name = cmac.c; path = src/crypto/cmac/cmac.c; sourceTree = "<group>"; };
-		B75AB0328A91144EEA39EF59037F3542 /* str_replace.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = str_replace.cc; path = absl/strings/str_replace.cc; sourceTree = "<group>"; };
+		B7596FD6E87F0CEE3C59DCC906D011AA /* cmac.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = cmac.c; path = src/crypto/cmac/cmac.c; sourceTree = "<group>"; };
+		B75AB0328A91144EEA39EF59037F3542 /* str_replace.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = str_replace.cc; path = absl/strings/str_replace.cc; sourceTree = "<group>"; };
 		B77C43F50E11E765F9A6A9178D7C64CA /* FIRStorageMetadata.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStorageMetadata.m; path = FirebaseStorage/Sources/FIRStorageMetadata.m; sourceTree = "<group>"; };
 		B781009E7CBDE90B859E07208CD605A9 /* CLTypingLabel.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = CLTypingLabel.debug.xcconfig; sourceTree = "<group>"; };
 		B7933BA74330E6A3C9D6EA2094E667E0 /* sync.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sync.h; path = src/core/lib/gprpp/sync.h; sourceTree = "<group>"; };
-		B7B62FA0339CF2285BCAC822B7DC80E5 /* message_compress.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = message_compress.cc; path = src/core/lib/compression/message_compress.cc; sourceTree = "<group>"; };
+		B7B62FA0339CF2285BCAC822B7DC80E5 /* message_compress.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = message_compress.cc; path = src/core/lib/compression/message_compress.cc; sourceTree = "<group>"; };
 		B7C6E79874BA2C4AA3EFE01551AC6453 /* GTMSessionFetcher.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = GTMSessionFetcher.framework; sourceTree = BUILT_PRODUCTS_DIR; };
-		B7E5BFCB18B1B04CC6AB2099058B7B84 /* write_stream.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = write_stream.cc; path = Firestore/core/src/remote/write_stream.cc; sourceTree = "<group>"; };
+		B7E5BFCB18B1B04CC6AB2099058B7B84 /* write_stream.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = write_stream.cc; path = Firestore/core/src/remote/write_stream.cc; sourceTree = "<group>"; };
 		B8061D137391A3F39AEB80BC583CED51 /* FIRActionCodeSettings.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRActionCodeSettings.m; path = FirebaseAuth/Sources/Auth/FIRActionCodeSettings.m; sourceTree = "<group>"; };
 		B80838FE21C5900979A5CB6C3703594B /* call_op_set.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = call_op_set.h; path = include/grpcpp/impl/codegen/call_op_set.h; sourceTree = "<group>"; };
-		B824BA07867EC077934A5AE9E03084E1 /* async_queue.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = async_queue.cc; path = Firestore/core/src/util/async_queue.cc; sourceTree = "<group>"; };
+		B824BA07867EC077934A5AE9E03084E1 /* async_queue.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = async_queue.cc; path = Firestore/core/src/util/async_queue.cc; sourceTree = "<group>"; };
 		B8294B90853CE89248668C48FED4549D /* options.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = options.h; path = include/leveldb/options.h; sourceTree = "<group>"; };
 		B832FB8FB04B0D7ECFC430B28F5A40C9 /* dns_resolver_selection.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = dns_resolver_selection.h; path = src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.h; sourceTree = "<group>"; };
 		B83F80E985DF7ACBD4C20EF8481D0ED0 /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/conf/internal.h; sourceTree = "<group>"; };
-		B84A52E901719FCB990441A6D501BC1D /* target_authority_table.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = target_authority_table.cc; path = src/core/lib/security/transport/target_authority_table.cc; sourceTree = "<group>"; };
-		B85A2BB7A648E63EBA462E70AD5255B1 /* wakeup_fd_pipe.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = wakeup_fd_pipe.cc; path = src/core/lib/iomgr/wakeup_fd_pipe.cc; sourceTree = "<group>"; };
+		B84A52E901719FCB990441A6D501BC1D /* target_authority_table.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = target_authority_table.cc; path = src/core/lib/security/transport/target_authority_table.cc; sourceTree = "<group>"; };
+		B85A2BB7A648E63EBA462E70AD5255B1 /* wakeup_fd_pipe.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = wakeup_fd_pipe.cc; path = src/core/lib/iomgr/wakeup_fd_pipe.cc; sourceTree = "<group>"; };
 		B86035B2E2C5EA5E22BFC705FBE48F9B /* async_stream.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = async_stream.h; path = include/grpcpp/impl/codegen/async_stream.h; sourceTree = "<group>"; };
-		B87C002D4DE8B15573955106ADE02279 /* sqrt.c */ = {isa = PBXFileReference; includeInIndex = 1; name = sqrt.c; path = src/crypto/fipsmodule/bn/sqrt.c; sourceTree = "<group>"; };
-		B89CF8AB1D031440EDC1CCA716800889 /* cert.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = cert.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c"; sourceTree = "<group>"; };
-		B8DC50AE427FC5E38957651AE09D57C8 /* frame_goaway.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = frame_goaway.cc; path = src/core/ext/transport/chttp2/transport/frame_goaway.cc; sourceTree = "<group>"; };
+		B87C002D4DE8B15573955106ADE02279 /* sqrt.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = sqrt.c; path = src/crypto/fipsmodule/bn/sqrt.c; sourceTree = "<group>"; };
+		B89CF8AB1D031440EDC1CCA716800889 /* cert.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = cert.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c"; sourceTree = "<group>"; };
+		B8DC50AE427FC5E38957651AE09D57C8 /* frame_goaway.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = frame_goaway.cc; path = src/core/ext/transport/chttp2/transport/frame_goaway.cc; sourceTree = "<group>"; };
 		B8E2AF3F5B39E15328440B98999143FC /* tcp_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tcp_windows.h; path = src/core/lib/iomgr/tcp_windows.h; sourceTree = "<group>"; };
 		B8EB35D572C2A5F084EBB8D8AB880F1C /* FIRSignInWithGameCenterRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRSignInWithGameCenterRequest.m; path = FirebaseAuth/Sources/Backend/RPC/FIRSignInWithGameCenterRequest.m; sourceTree = "<group>"; };
-		B8FCA5108FA5DD76CA42814943FC5D89 /* metadata.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = metadata.upb.c; path = "src/core/ext/upb-generated/envoy/type/metadata/v2/metadata.upb.c"; sourceTree = "<group>"; };
+		B8FCA5108FA5DD76CA42814943FC5D89 /* metadata.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = metadata.upb.c; path = "src/core/ext/upb-generated/envoy/type/metadata/v2/metadata.upb.c"; sourceTree = "<group>"; };
 		B8FE4BF2E8EA4541B8E6091D79FC209C /* time_zone_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = time_zone_posix.h; path = absl/time/internal/cctz/src/time_zone_posix.h; sourceTree = "<group>"; };
 		B9267E5F25FE10FEC17713E97C86E652 /* FirebaseCoreDiagnostics-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "FirebaseCoreDiagnostics-Info.plist"; sourceTree = "<group>"; };
 		B934AAF7CDC3F4F7712FA64600AF84C7 /* FIRAuthTokenResult_Internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthTokenResult_Internal.h; path = FirebaseAuth/Sources/Auth/FIRAuthTokenResult_Internal.h; sourceTree = "<group>"; };
 		B9390E578C4376E4AFB83D684BD32A5A /* FIRDiagnosticsData.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRDiagnosticsData.m; path = FirebaseCore/Sources/FIRDiagnosticsData.m; sourceTree = "<group>"; };
 		B93AFF816CD4BBD1B64829084BDEC6F2 /* GoogleUtilities-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "GoogleUtilities-umbrella.h"; sourceTree = "<group>"; };
-		B964587F4071C4E8F66A6A2A22528EC2 /* clock.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = clock.cc; path = absl/time/clock.cc; sourceTree = "<group>"; };
+		B964587F4071C4E8F66A6A2A22528EC2 /* clock.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = clock.cc; path = absl/time/clock.cc; sourceTree = "<group>"; };
 		B97557ED81F3D976448DE4B6209024B3 /* byte_buffer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = byte_buffer.h; path = include/grpcpp/support/byte_buffer.h; sourceTree = "<group>"; };
 		B99F132F87E11B25772ED16431226720 /* stream_compression.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = stream_compression.h; path = src/core/lib/compression/stream_compression.h; sourceTree = "<group>"; };
-		B9A3F4A37794678FA6D711ED49C4070F /* create_channel.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = create_channel.cc; path = src/cpp/client/create_channel.cc; sourceTree = "<group>"; };
-		B9AE4E3CFD0301D5B64E9908D3EEB531 /* v3_pmaps.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_pmaps.c; path = src/crypto/x509v3/v3_pmaps.c; sourceTree = "<group>"; };
+		B9A3F4A37794678FA6D711ED49C4070F /* create_channel.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = create_channel.cc; path = src/cpp/client/create_channel.cc; sourceTree = "<group>"; };
+		B9AE4E3CFD0301D5B64E9908D3EEB531 /* v3_pmaps.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_pmaps.c; path = src/crypto/x509v3/v3_pmaps.c; sourceTree = "<group>"; };
 		B9C9B006C865B2B477B45F433B5514A7 /* rsa.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = rsa.h; path = src/include/openssl/rsa.h; sourceTree = "<group>"; };
 		B9D38D18BFBCDABDF8F4B980A9DE7ECE /* leveldb-library-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "leveldb-library-Info.plist"; sourceTree = "<group>"; };
-		B9E1FAF01249603AD63C67B9243E6D3A /* sorted_container.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = sorted_container.cc; path = Firestore/core/src/immutable/sorted_container.cc; sourceTree = "<group>"; };
+		B9E1FAF01249603AD63C67B9243E6D3A /* sorted_container.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = sorted_container.cc; path = Firestore/core/src/immutable/sorted_container.cc; sourceTree = "<group>"; };
 		B9EBDD7797CBF0A65BD7605B1B1C4393 /* FBLPromise+Then.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "FBLPromise+Then.m"; path = "Sources/FBLPromises/FBLPromise+Then.m"; sourceTree = "<group>"; };
 		B9EF101AA5D1D901784C8476CD174802 /* gpr_slice.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = gpr_slice.h; path = include/grpc/impl/codegen/gpr_slice.h; sourceTree = "<group>"; };
 		BA271F6DC129472C57147BD63B3B5350 /* load_report.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = load_report.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/endpoint/load_report.upb.h"; sourceTree = "<group>"; };
 		BA2F23B8237FBCC62FAC8E790801521F /* grpc_ares_ev_driver.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpc_ares_ev_driver.h; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h; sourceTree = "<group>"; };
 		BA50B421344CC32DE489867C083033A0 /* GoogleDataTransport.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GoogleDataTransport.h; path = GoogleDataTransport/GDTCORLibrary/Public/GoogleDataTransport/GoogleDataTransport.h; sourceTree = "<group>"; };
-		BA6301A46FB2DAC8F802D23791D8765A /* version_edit.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = version_edit.cc; path = db/version_edit.cc; sourceTree = "<group>"; };
-		BA77D18329E28564A2E7EF997AAEC58B /* builder.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = builder.cc; path = db/builder.cc; sourceTree = "<group>"; };
+		BA6301A46FB2DAC8F802D23791D8765A /* version_edit.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = version_edit.cc; path = db/version_edit.cc; sourceTree = "<group>"; };
+		BA77D18329E28564A2E7EF997AAEC58B /* builder.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = builder.cc; path = db/builder.cc; sourceTree = "<group>"; };
 		BA7F021B56DCC5CEA29F476BB8F55D5B /* resolver_registry.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resolver_registry.h; path = src/core/ext/filters/client_channel/resolver_registry.h; sourceTree = "<group>"; };
 		BA82AAAA96A7F6BFB8AE32D62BFDD62A /* x509_vfy.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = x509_vfy.h; path = src/include/openssl/x509_vfy.h; sourceTree = "<group>"; };
 		BA8A5AB33174E12272F6293B6C590C91 /* grpc.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = grpc.framework; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -10718,131 +10719,131 @@
 		BB117FAC217F0FCB4BD7D859409A1AE7 /* Firebase.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Firebase.release.xcconfig; sourceTree = "<group>"; };
 		BB129A3115CD59359BC58293C065CA8A /* dtls1.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = dtls1.h; path = src/include/openssl/dtls1.h; sourceTree = "<group>"; };
 		BB181A669060AA9DDBBA7F78CEF6CB8C /* FIRAuthSerialTaskQueue.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthSerialTaskQueue.h; path = FirebaseAuth/Sources/Auth/FIRAuthSerialTaskQueue.h; sourceTree = "<group>"; };
-		BB1FE5B1DA9172CEA502FCABBA17240B /* tls13_both.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tls13_both.cc; path = src/ssl/tls13_both.cc; sourceTree = "<group>"; };
-		BB261CAD997D44CF845F14A2043969A2 /* a_mbstr.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_mbstr.c; path = src/crypto/asn1/a_mbstr.c; sourceTree = "<group>"; };
+		BB1FE5B1DA9172CEA502FCABBA17240B /* tls13_both.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tls13_both.cc; path = src/ssl/tls13_both.cc; sourceTree = "<group>"; };
+		BB261CAD997D44CF845F14A2043969A2 /* a_mbstr.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_mbstr.c; path = src/crypto/asn1/a_mbstr.c; sourceTree = "<group>"; };
 		BB28F59C6D77B324595FD2A8E9C89197 /* base.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = base.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/core/base.upb.h"; sourceTree = "<group>"; };
 		BB3FF03D8860C2AFEE6F508D85CA1580 /* health.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = health.upb.h; path = "src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h"; sourceTree = "<group>"; };
 		BB43F100A008B7D93ADC6694211B2149 /* percent.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = percent.upb.h; path = "src/core/ext/upb-generated/envoy/type/percent.upb.h"; sourceTree = "<group>"; };
 		BB5BD307B11FF0CF629E3BE9BDC721BE /* resource_quota.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resource_quota.h; path = src/core/lib/iomgr/resource_quota.h; sourceTree = "<group>"; };
 		BB83D9716A717B71089A9E0EB471E892 /* nanopb.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = nanopb.release.xcconfig; sourceTree = "<group>"; };
-		BBA32FBE5C4C1C453CE7D857BAC6F6C7 /* ssl_utils_config.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_utils_config.cc; path = src/core/lib/security/security_connector/ssl_utils_config.cc; sourceTree = "<group>"; };
-		BBB623F594918AC0C7868696BF266ACE /* format.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = format.cc; path = absl/time/format.cc; sourceTree = "<group>"; };
+		BBA32FBE5C4C1C453CE7D857BAC6F6C7 /* ssl_utils_config.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_utils_config.cc; path = src/core/lib/security/security_connector/ssl_utils_config.cc; sourceTree = "<group>"; };
+		BBB623F594918AC0C7868696BF266ACE /* format.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = format.cc; path = absl/time/format.cc; sourceTree = "<group>"; };
 		BBB84F17F5DFC450B57615E67601BCCF /* ossl_typ.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ossl_typ.h; path = src/include/openssl/ossl_typ.h; sourceTree = "<group>"; };
-		BBC075D7AA5D6B42257709813DCFC8F8 /* context_list.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = context_list.cc; path = src/core/ext/transport/chttp2/transport/context_list.cc; sourceTree = "<group>"; };
+		BBC075D7AA5D6B42257709813DCFC8F8 /* context_list.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = context_list.cc; path = src/core/ext/transport/chttp2/transport/context_list.cc; sourceTree = "<group>"; };
 		BBC900C1F8142DB802C834747A1CAFDC /* FIRStorageDeleteTask.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStorageDeleteTask.m; path = FirebaseStorage/Sources/FIRStorageDeleteTask.m; sourceTree = "<group>"; };
 		BBD57450F72F1B5B594E1A1F5251BCB1 /* generated_util.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = generated_util.h; path = third_party/upb/upb/generated_util.h; sourceTree = "<group>"; };
-		BBDAB40FED5E16F363956F4B102B38A6 /* timer_uv.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = timer_uv.cc; path = src/core/lib/iomgr/timer_uv.cc; sourceTree = "<group>"; };
-		BBEC25E1CED25EB93AE54D91C9B009F9 /* event_manager.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = event_manager.cc; path = Firestore/core/src/core/event_manager.cc; sourceTree = "<group>"; };
-		BC387126F1F9D8FBC73A68E57A65424D /* x509_d2.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509_d2.c; path = src/crypto/x509/x509_d2.c; sourceTree = "<group>"; };
-		BC659188E9BC7F998C7DD8F0A88E9006 /* e_aesctrhmac.c */ = {isa = PBXFileReference; includeInIndex = 1; name = e_aesctrhmac.c; path = src/crypto/cipher_extra/e_aesctrhmac.c; sourceTree = "<group>"; };
+		BBDAB40FED5E16F363956F4B102B38A6 /* timer_uv.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = timer_uv.cc; path = src/core/lib/iomgr/timer_uv.cc; sourceTree = "<group>"; };
+		BBEC25E1CED25EB93AE54D91C9B009F9 /* event_manager.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = event_manager.cc; path = Firestore/core/src/core/event_manager.cc; sourceTree = "<group>"; };
+		BC387126F1F9D8FBC73A68E57A65424D /* x509_d2.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509_d2.c; path = src/crypto/x509/x509_d2.c; sourceTree = "<group>"; };
+		BC659188E9BC7F998C7DD8F0A88E9006 /* e_aesctrhmac.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = e_aesctrhmac.c; path = src/crypto/cipher_extra/e_aesctrhmac.c; sourceTree = "<group>"; };
 		BC66848DA0BED616773CE2F3B1C314AC /* FIRLogger.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRLogger.m; path = FirebaseCore/Sources/FIRLogger.m; sourceTree = "<group>"; };
 		BC78C1F58AA5463083E06797482D87A5 /* alarm_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alarm_impl.h; path = include/grpcpp/alarm_impl.h; sourceTree = "<group>"; };
 		BC89F586A3F7DBBA0D475D2FFEC04968 /* FIRStartMFASignInRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStartMFASignInRequest.m; path = FirebaseAuth/Sources/Backend/RPC/MultiFactor/SignIn/FIRStartMFASignInRequest.m; sourceTree = "<group>"; };
-		BCC1BBE2372CD40292FD22C174B09CF5 /* reader.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = reader.cc; path = Firestore/core/src/nanopb/reader.cc; sourceTree = "<group>"; };
+		BCC1BBE2372CD40292FD22C174B09CF5 /* reader.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = reader.cc; path = Firestore/core/src/nanopb/reader.cc; sourceTree = "<group>"; };
 		BCC7686F9EE523ABC9D9E65A9F2E7F04 /* tls_security_connector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tls_security_connector.h; path = src/core/lib/security/security_connector/tls/tls_security_connector.h; sourceTree = "<group>"; };
-		BCEC0519799EF74AB4D0C032504E3470 /* secure_auth_context.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = secure_auth_context.cc; path = src/cpp/common/secure_auth_context.cc; sourceTree = "<group>"; };
-		BD25A28D8022C1B4CB8A36155358BBA1 /* async_generic_service.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = async_generic_service.cc; path = src/cpp/server/async_generic_service.cc; sourceTree = "<group>"; };
+		BCEC0519799EF74AB4D0C032504E3470 /* secure_auth_context.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = secure_auth_context.cc; path = src/cpp/common/secure_auth_context.cc; sourceTree = "<group>"; };
+		BD25A28D8022C1B4CB8A36155358BBA1 /* async_generic_service.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = async_generic_service.cc; path = src/cpp/server/async_generic_service.cc; sourceTree = "<group>"; };
 		BD30776FE1DA93EF780A52FFEAF1DD12 /* FIRStorageObservableTask.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStorageObservableTask.m; path = FirebaseStorage/Sources/FIRStorageObservableTask.m; sourceTree = "<group>"; };
 		BD43AB02BD31E8B0B046165C293AEF6A /* grpc_library.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpc_library.h; path = include/grpcpp/impl/codegen/grpc_library.h; sourceTree = "<group>"; };
 		BD53A134D29A5C7BB253A82F054F1007 /* udp_server.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = udp_server.h; path = src/core/lib/iomgr/udp_server.h; sourceTree = "<group>"; };
 		BD55022738E25BB19484C86B952C07BF /* GTMSessionFetcherLogging.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GTMSessionFetcherLogging.m; path = Source/GTMSessionFetcherLogging.m; sourceTree = "<group>"; };
 		BD6F470C4E285A36137EFBF47D4DF29C /* FIRStorageTask_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageTask_Private.h; path = FirebaseStorage/Sources/FIRStorageTask_Private.h; sourceTree = "<group>"; };
 		BD8F98BC9EADE54E892F4E7BD6B70C51 /* http_proxy.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = http_proxy.h; path = src/core/ext/filters/client_channel/http_proxy.h; sourceTree = "<group>"; };
-		BD904EAE5F385F91C5AD82EB81A64B19 /* channel.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = channel.cc; path = src/core/lib/surface/channel.cc; sourceTree = "<group>"; };
+		BD904EAE5F385F91C5AD82EB81A64B19 /* channel.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = channel.cc; path = src/core/lib/surface/channel.cc; sourceTree = "<group>"; };
 		BDB58C24DCED1146F3FA94BC99822D8A /* char_map.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = char_map.h; path = absl/strings/internal/char_map.h; sourceTree = "<group>"; };
 		BDF0C5C64849FF571826C7CE869F9C40 /* GDTCORTransport.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCORTransport.m; path = GoogleDataTransport/GDTCORLibrary/GDTCORTransport.m; sourceTree = "<group>"; };
-		BDF805C5C0AE95A3447BB4AAF54B5D51 /* grpc_ares_wrapper_fallback.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_ares_wrapper_fallback.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc; sourceTree = "<group>"; };
+		BDF805C5C0AE95A3447BB4AAF54B5D51 /* grpc_ares_wrapper_fallback.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_ares_wrapper_fallback.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc; sourceTree = "<group>"; };
 		BE0BE40EDF12A4610E5A7DC23173202F /* timer_custom.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = timer_custom.h; path = src/core/lib/iomgr/timer_custom.h; sourceTree = "<group>"; };
 		BE13146712F4618076F74CBBC8023D7D /* FIRAuthProtoStartMFAPhoneRequestInfo.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthProtoStartMFAPhoneRequestInfo.h; path = FirebaseAuth/Sources/Backend/RPC/Proto/Phone/FIRAuthProtoStartMFAPhoneRequestInfo.h; sourceTree = "<group>"; };
 		BE2D3A3B8B533CFA341D155B6405806C /* GoogleDataTransport.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = GoogleDataTransport.release.xcconfig; sourceTree = "<group>"; };
 		BE4E77EA8EF1E1B6BAE1F4CAB9325177 /* FIRStorageListResult.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageListResult.h; path = FirebaseStorage/Sources/Public/FirebaseStorage/FIRStorageListResult.h; sourceTree = "<group>"; };
 		BEA95F623AB609E69743BBA5C1192850 /* FIRLibrary.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRLibrary.h; path = FirebaseCore/Sources/Private/FIRLibrary.h; sourceTree = "<group>"; };
-		BF54EAAE308020A08D55197139E781F5 /* alts_shared_resource.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alts_shared_resource.cc; path = src/core/tsi/alts/handshaker/alts_shared_resource.cc; sourceTree = "<group>"; };
+		BF54EAAE308020A08D55197139E781F5 /* alts_shared_resource.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alts_shared_resource.cc; path = src/core/tsi/alts/handshaker/alts_shared_resource.cc; sourceTree = "<group>"; };
 		BF62C7B9DE2A6FBD3E9E86B8DFB045E1 /* FIRVerifyPhoneNumberResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRVerifyPhoneNumberResponse.h; path = FirebaseAuth/Sources/Backend/RPC/FIRVerifyPhoneNumberResponse.h; sourceTree = "<group>"; };
 		BF83BAF53F49A121D335CD8558AA3F0C /* api_trace.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = api_trace.h; path = src/core/lib/surface/api_trace.h; sourceTree = "<group>"; };
 		BF882B0D88F44FE9E7CD63F01D2CCB54 /* duration.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = duration.upb.h; path = "src/core/ext/upb-generated/google/protobuf/duration.upb.h"; sourceTree = "<group>"; };
-		BF96B57ADE05E8909F823BDF6868B3E3 /* absl.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = absl.framework; path = abseil.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		BF96B57ADE05E8909F823BDF6868B3E3 /* absl.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = absl.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		BF9CDE062404C53D5044262FD4D61035 /* FIRStorageTaskSnapshot.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStorageTaskSnapshot.m; path = FirebaseStorage/Sources/FIRStorageTaskSnapshot.m; sourceTree = "<group>"; };
-		BFAF637E415A1B7840707928DF2750C6 /* check_gcp_environment_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = check_gcp_environment_windows.cc; path = src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc; sourceTree = "<group>"; };
+		BFAF637E415A1B7840707928DF2750C6 /* check_gcp_environment_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = check_gcp_environment_windows.cc; path = src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc; sourceTree = "<group>"; };
 		BFAFA6E1797C7864544B02A97DCD80E8 /* FIRVerifyAssertionRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRVerifyAssertionRequest.m; path = FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.m; sourceTree = "<group>"; };
-		BFB1677828E643FD878239471C284237 /* ssl_key_share.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_key_share.cc; path = src/ssl/ssl_key_share.cc; sourceTree = "<group>"; };
+		BFB1677828E643FD878239471C284237 /* ssl_key_share.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_key_share.cc; path = src/ssl/ssl_key_share.cc; sourceTree = "<group>"; };
 		BFBA067479CC60309BA552FA0711FC54 /* GULReachabilityChecker.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GULReachabilityChecker.m; path = GoogleUtilities/Reachability/GULReachabilityChecker.m; sourceTree = "<group>"; };
-		BFCFC50758D6D19AA5269C660197C4DF /* v3_pci.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_pci.c; path = src/crypto/x509v3/v3_pci.c; sourceTree = "<group>"; };
-		C01AEA0E87799CC42DFA8E051F5573A5 /* ctrdrbg.c */ = {isa = PBXFileReference; includeInIndex = 1; name = ctrdrbg.c; path = src/crypto/fipsmodule/rand/ctrdrbg.c; sourceTree = "<group>"; };
+		BFCFC50758D6D19AA5269C660197C4DF /* v3_pci.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_pci.c; path = src/crypto/x509v3/v3_pci.c; sourceTree = "<group>"; };
+		C01AEA0E87799CC42DFA8E051F5573A5 /* ctrdrbg.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = ctrdrbg.c; path = src/crypto/fipsmodule/rand/ctrdrbg.c; sourceTree = "<group>"; };
 		C01DD058BEF75499F26F945EAC44A436 /* aes.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = aes.h; path = src/include/openssl/aes.h; sourceTree = "<group>"; };
 		C0449CB898D1C7AD1DBB39C4BF4AF7A0 /* FIRVerifyAssertionResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRVerifyAssertionResponse.h; path = FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionResponse.h; sourceTree = "<group>"; };
-		C069DFCB5CC18861268DEAA252A7828A /* call_details.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = call_details.cc; path = src/core/lib/surface/call_details.cc; sourceTree = "<group>"; };
-		C09C63DFE49E24A1BA8C5575540155A0 /* time_zone_fixed.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = time_zone_fixed.cc; path = absl/time/internal/cctz/src/time_zone_fixed.cc; sourceTree = "<group>"; };
+		C069DFCB5CC18861268DEAA252A7828A /* call_details.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = call_details.cc; path = src/core/lib/surface/call_details.cc; sourceTree = "<group>"; };
+		C09C63DFE49E24A1BA8C5575540155A0 /* time_zone_fixed.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = time_zone_fixed.cc; path = absl/time/internal/cctz/src/time_zone_fixed.cc; sourceTree = "<group>"; };
 		C0AC65998F6B667ACAC6255EFFE26C2E /* server_builder_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_builder_impl.h; path = include/grpcpp/server_builder_impl.h; sourceTree = "<group>"; };
 		C0B944A1F82AAACDCE66CB027B18E6E7 /* google_default_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = google_default_credentials.h; path = src/core/lib/security/credentials/google_default/google_default_credentials.h; sourceTree = "<group>"; };
-		C0C59EEFF100BA8B51F3033C9BA7CE3A /* asn1_par.c */ = {isa = PBXFileReference; includeInIndex = 1; name = asn1_par.c; path = src/crypto/asn1/asn1_par.c; sourceTree = "<group>"; };
-		C0C713021CA91E89DF283F729BB95CAA /* string_util.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = string_util.cc; path = Firestore/core/src/util/string_util.cc; sourceTree = "<group>"; };
+		C0C59EEFF100BA8B51F3033C9BA7CE3A /* asn1_par.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = asn1_par.c; path = src/crypto/asn1/asn1_par.c; sourceTree = "<group>"; };
+		C0C713021CA91E89DF283F729BB95CAA /* string_util.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = string_util.cc; path = Firestore/core/src/util/string_util.cc; sourceTree = "<group>"; };
 		C0DADC73641250B64C5041FA1C4833A4 /* chttp2_server.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = chttp2_server.h; path = src/core/ext/transport/chttp2/server/chttp2_server.h; sourceTree = "<group>"; };
 		C0E37A2C52DA64BCF2E43BB90B1D2B91 /* GDTCCTNanopbHelpers.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCCTNanopbHelpers.h; path = GoogleDataTransport/GDTCCTLibrary/Private/GDTCCTNanopbHelpers.h; sourceTree = "<group>"; };
-		C0E400DE5C182EC3828D324C1518747B /* message_size_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = message_size_filter.cc; path = src/core/ext/filters/message_size/message_size_filter.cc; sourceTree = "<group>"; };
-		C102C94BCCA83894787941AB807DA8F1 /* gcm_nohw.c */ = {isa = PBXFileReference; includeInIndex = 1; name = gcm_nohw.c; path = src/crypto/fipsmodule/modes/gcm_nohw.c; sourceTree = "<group>"; };
+		C0E400DE5C182EC3828D324C1518747B /* message_size_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = message_size_filter.cc; path = src/core/ext/filters/message_size/message_size_filter.cc; sourceTree = "<group>"; };
+		C102C94BCCA83894787941AB807DA8F1 /* gcm_nohw.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = gcm_nohw.c; path = src/crypto/fipsmodule/modes/gcm_nohw.c; sourceTree = "<group>"; };
 		C1097754FB532B0B539BBAFC3F212BFF /* completion_queue.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = completion_queue.h; path = include/grpcpp/completion_queue.h; sourceTree = "<group>"; };
-		C11A39E31E4E505731227F3DA83FF563 /* handshake.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = handshake.cc; path = src/ssl/handshake.cc; sourceTree = "<group>"; };
-		C11DBFC4359542E24F05B3508BF7E8D1 /* wnaf.c */ = {isa = PBXFileReference; includeInIndex = 1; name = wnaf.c; path = src/crypto/fipsmodule/ec/wnaf.c; sourceTree = "<group>"; };
-		C1277041FA58B498A43B53129899CC34 /* query_listener.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = query_listener.cc; path = Firestore/core/src/core/query_listener.cc; sourceTree = "<group>"; };
-		C15E1C116120800C6D5AA824C1DE6C77 /* global_config_env.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = global_config_env.cc; path = src/core/lib/gprpp/global_config_env.cc; sourceTree = "<group>"; };
+		C11A39E31E4E505731227F3DA83FF563 /* handshake.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = handshake.cc; path = src/ssl/handshake.cc; sourceTree = "<group>"; };
+		C11DBFC4359542E24F05B3508BF7E8D1 /* wnaf.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = wnaf.c; path = src/crypto/fipsmodule/ec/wnaf.c; sourceTree = "<group>"; };
+		C1277041FA58B498A43B53129899CC34 /* query_listener.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = query_listener.cc; path = Firestore/core/src/core/query_listener.cc; sourceTree = "<group>"; };
+		C15E1C116120800C6D5AA824C1DE6C77 /* global_config_env.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = global_config_env.cc; path = src/core/lib/gprpp/global_config_env.cc; sourceTree = "<group>"; };
 		C180F6E5CEC2E4240EC1CD7B5D98858E /* arena.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = arena.h; path = util/arena.h; sourceTree = "<group>"; };
 		C18341875D9B266D9DC75A600D1E3470 /* GULNetworkMessageCode.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULNetworkMessageCode.h; path = GoogleUtilities/Network/Public/GoogleUtilities/GULNetworkMessageCode.h; sourceTree = "<group>"; };
-		C1998E0D8085221AD87F89B614C10E52 /* GTMSessionFetcher.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = GTMSessionFetcher.framework; path = GTMSessionFetcher.framework; sourceTree = BUILT_PRODUCTS_DIR; };
-		C19EA3C5ABD810305A05C51C431AFFD4 /* tls_cbc.c */ = {isa = PBXFileReference; includeInIndex = 1; name = tls_cbc.c; path = src/crypto/cipher_extra/tls_cbc.c; sourceTree = "<group>"; };
-		C1B1CA390E0A1C5DB932AAA1ED0AE98C /* local_view_changes.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = local_view_changes.cc; path = Firestore/core/src/local/local_view_changes.cc; sourceTree = "<group>"; };
+		C1998E0D8085221AD87F89B614C10E52 /* GTMSessionFetcher.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = GTMSessionFetcher.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		C19EA3C5ABD810305A05C51C431AFFD4 /* tls_cbc.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = tls_cbc.c; path = src/crypto/cipher_extra/tls_cbc.c; sourceTree = "<group>"; };
+		C1B1CA390E0A1C5DB932AAA1ED0AE98C /* local_view_changes.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = local_view_changes.cc; path = Firestore/core/src/local/local_view_changes.cc; sourceTree = "<group>"; };
 		C1BB6C76DEF02F56256DAC455F7F3E94 /* PromisesObjC-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "PromisesObjC-Info.plist"; sourceTree = "<group>"; };
-		C1C4A01B5CAC6B969AA2290BEE8D744F /* x_attrib.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x_attrib.c; path = src/crypto/x509/x_attrib.c; sourceTree = "<group>"; };
-		C1C9D3D626DCA83346579A74A0E26594 /* grpc_ares_ev_driver_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_ares_ev_driver_windows.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc; sourceTree = "<group>"; };
+		C1C4A01B5CAC6B969AA2290BEE8D744F /* x_attrib.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x_attrib.c; path = src/crypto/x509/x_attrib.c; sourceTree = "<group>"; };
+		C1C9D3D626DCA83346579A74A0E26594 /* grpc_ares_ev_driver_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_ares_ev_driver_windows.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc; sourceTree = "<group>"; };
 		C1D887C22FA83ACE9D4CF9ACC1F39653 /* FIRCreateAuthURIResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRCreateAuthURIResponse.h; path = FirebaseAuth/Sources/Backend/RPC/FIRCreateAuthURIResponse.h; sourceTree = "<group>"; };
 		C1F31B8041E868420A237339C2740D3D /* accesslog.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = accesslog.upb.h; path = "src/core/ext/upb-generated/envoy/config/filter/accesslog/v2/accesslog.upb.h"; sourceTree = "<group>"; };
 		C1FC8164DEA99B90DA29B28D07813DFF /* GULLogger.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULLogger.h; path = GoogleUtilities/Logger/Public/GoogleUtilities/GULLogger.h; sourceTree = "<group>"; };
-		C209B38D737E1F62DB86BD542AA3B7BD /* pollset_set_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = pollset_set_windows.cc; path = src/core/lib/iomgr/pollset_set_windows.cc; sourceTree = "<group>"; };
+		C209B38D737E1F62DB86BD542AA3B7BD /* pollset_set_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = pollset_set_windows.cc; path = src/core/lib/iomgr/pollset_set_windows.cc; sourceTree = "<group>"; };
 		C214A078F4356DEDE0F2F1DA09BBDAB9 /* string.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = string.h; path = src/core/lib/gpr/string.h; sourceTree = "<group>"; };
 		C224DA58B66A03421A7092597BE1C982 /* alts_security_connector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_security_connector.h; path = src/core/lib/security/security_connector/alts/alts_security_connector.h; sourceTree = "<group>"; };
-		C22FCB2DA6F6EEB6FC3EA5B06FBADA07 /* memory_index_manager.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = memory_index_manager.cc; path = Firestore/core/src/local/memory_index_manager.cc; sourceTree = "<group>"; };
-		C234CAACFF7D246A64713981002566B1 /* stap_timers.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = stap_timers.cc; path = src/core/lib/profiling/stap_timers.cc; sourceTree = "<group>"; };
-		C257DA83A62252FF69CC1814AA79FBF1 /* message.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = message.cc; path = Firestore/core/src/nanopb/message.cc; sourceTree = "<group>"; };
-		C26DFB5F870B14CBC975444E3D5DD75B /* pkcs8_x509.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pkcs8_x509.c; path = src/crypto/pkcs8/pkcs8_x509.c; sourceTree = "<group>"; };
-		C28AFC766E2A2B14933D0E5CB098802F /* local_transport_security.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = local_transport_security.cc; path = src/core/tsi/local_transport_security.cc; sourceTree = "<group>"; };
+		C22FCB2DA6F6EEB6FC3EA5B06FBADA07 /* memory_index_manager.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = memory_index_manager.cc; path = Firestore/core/src/local/memory_index_manager.cc; sourceTree = "<group>"; };
+		C234CAACFF7D246A64713981002566B1 /* stap_timers.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = stap_timers.cc; path = src/core/lib/profiling/stap_timers.cc; sourceTree = "<group>"; };
+		C257DA83A62252FF69CC1814AA79FBF1 /* message.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = message.cc; path = Firestore/core/src/nanopb/message.cc; sourceTree = "<group>"; };
+		C26DFB5F870B14CBC975444E3D5DD75B /* pkcs8_x509.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pkcs8_x509.c; path = src/crypto/pkcs8/pkcs8_x509.c; sourceTree = "<group>"; };
+		C28AFC766E2A2B14933D0E5CB098802F /* local_transport_security.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = local_transport_security.cc; path = src/core/tsi/local_transport_security.cc; sourceTree = "<group>"; };
 		C28CB047A0DE574B28FBB08B5BA8F9BA /* alts_counter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_counter.h; path = src/core/tsi/alts/frame_protector/alts_counter.h; sourceTree = "<group>"; };
 		C28D358DB43995BF1B9FCA5332AFE3C1 /* FIRAppAssociationRegistration.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAppAssociationRegistration.m; path = FirebaseCore/Sources/FIRAppAssociationRegistration.m; sourceTree = "<group>"; };
 		C28EB959DD10B4767B9CF6127DEB9192 /* route_components.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = route_components.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/route/route_components.upb.h"; sourceTree = "<group>"; };
 		C29921059E7D7A6A7A1D03E58F5D05BD /* auth_context.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = auth_context.h; path = include/grpcpp/impl/codegen/security/auth_context.h; sourceTree = "<group>"; };
-		C2A269FC8DCC833E04E68385C769A0A6 /* buf.c */ = {isa = PBXFileReference; includeInIndex = 1; name = buf.c; path = src/crypto/buf/buf.c; sourceTree = "<group>"; };
+		C2A269FC8DCC833E04E68385C769A0A6 /* buf.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = buf.c; path = src/crypto/buf/buf.c; sourceTree = "<group>"; };
 		C2B8AC5C722C4B793D41D0EBA43DF19D /* flow_control.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = flow_control.h; path = src/core/ext/transport/chttp2/transport/flow_control.h; sourceTree = "<group>"; };
 		C2BA36404FF1EF9A5BE5EA58ABBCFE2C /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/fipsmodule/md5/internal.h; sourceTree = "<group>"; };
-		C317BD8B7D78A72600D5DE23D06FC710 /* iterator.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = iterator.cc; path = table/iterator.cc; sourceTree = "<group>"; };
+		C317BD8B7D78A72600D5DE23D06FC710 /* iterator.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = iterator.cc; path = table/iterator.cc; sourceTree = "<group>"; };
 		C3192DD937C615E4DEB7454F489D54DA /* FIRGoogleAuthCredential.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRGoogleAuthCredential.h; path = FirebaseAuth/Sources/AuthProvider/Google/FIRGoogleAuthCredential.h; sourceTree = "<group>"; };
 		C3375795E5EA8E3CBED9B95DF8364D16 /* FIROptionsInternal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIROptionsInternal.h; path = FirebaseCore/Sources/Private/FIROptionsInternal.h; sourceTree = "<group>"; };
-		C341CBEAED457AC982243F88642C4217 /* autoid.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = autoid.cc; path = Firestore/core/src/util/autoid.cc; sourceTree = "<group>"; };
+		C341CBEAED457AC982243F88642C4217 /* autoid.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = autoid.cc; path = Firestore/core/src/util/autoid.cc; sourceTree = "<group>"; };
 		C3545FBEEA2D2C3DEB6E11F05ECF23D4 /* cpu.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = cpu.h; path = include/grpc/support/cpu.h; sourceTree = "<group>"; };
-		C35FB12E00986F99BA9D27703C558E08 /* asn1_lib.c */ = {isa = PBXFileReference; includeInIndex = 1; name = asn1_lib.c; path = src/crypto/asn1/asn1_lib.c; sourceTree = "<group>"; };
+		C35FB12E00986F99BA9D27703C558E08 /* asn1_lib.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = asn1_lib.c; path = src/crypto/asn1/asn1_lib.c; sourceTree = "<group>"; };
 		C362E81FE5C98E27A6DDEC309EA9DA06 /* metadata.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = metadata.upb.h; path = "src/core/ext/upb-generated/envoy/type/metadata/v2/metadata.upb.h"; sourceTree = "<group>"; };
 		C3657319C5949F255404D1E6AEA60DC1 /* FirebaseFirestore-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "FirebaseFirestore-dummy.m"; sourceTree = "<group>"; };
 		C3675CD24822B7810EEAA208AFFEBF6A /* ResourceBundle-gRPCCertificates-Cpp-gRPC-C++-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "ResourceBundle-gRPCCertificates-Cpp-gRPC-C++-Info.plist"; sourceTree = "<group>"; };
 		C36A0576320D101DF84698891D13FBFC /* subchannel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = subchannel.h; path = src/core/ext/filters/client_channel/subchannel.h; sourceTree = "<group>"; };
 		C36B13FF5DB6138FB735AA8ADA837E95 /* init.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = init.h; path = src/core/lib/surface/init.h; sourceTree = "<group>"; };
-		C3786E8AB63086898EE423406AC6E928 /* a_gentm.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_gentm.c; path = src/crypto/asn1/a_gentm.c; sourceTree = "<group>"; };
+		C3786E8AB63086898EE423406AC6E928 /* a_gentm.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_gentm.c; path = src/crypto/asn1/a_gentm.c; sourceTree = "<group>"; };
 		C38BC1A82685414D1143D8ADF694B076 /* auth_metadata_processor_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = auth_metadata_processor_impl.h; path = include/grpcpp/security/auth_metadata_processor_impl.h; sourceTree = "<group>"; };
 		C390D2C91D060522EEAB3C6B62FDFC58 /* oauth2_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = oauth2_credentials.h; path = src/core/lib/security/credentials/oauth2/oauth2_credentials.h; sourceTree = "<group>"; };
-		C39E57327EFCE780D0C7121119E65AE6 /* jacobi.c */ = {isa = PBXFileReference; includeInIndex = 1; name = jacobi.c; path = src/crypto/fipsmodule/bn/jacobi.c; sourceTree = "<group>"; };
-		C3A4F2584254DA9A0FDD88E637FBBC6C /* check_gcp_environment_no_op.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = check_gcp_environment_no_op.cc; path = src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc; sourceTree = "<group>"; };
-		C3C296F469CF4C7C0E3EB7E06ABE19C5 /* x_x509.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x_x509.c; path = src/crypto/x509/x_x509.c; sourceTree = "<group>"; };
+		C39E57327EFCE780D0C7121119E65AE6 /* jacobi.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = jacobi.c; path = src/crypto/fipsmodule/bn/jacobi.c; sourceTree = "<group>"; };
+		C3A4F2584254DA9A0FDD88E637FBBC6C /* check_gcp_environment_no_op.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = check_gcp_environment_no_op.cc; path = src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc; sourceTree = "<group>"; };
+		C3C296F469CF4C7C0E3EB7E06ABE19C5 /* x_x509.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x_x509.c; path = src/crypto/x509/x_x509.c; sourceTree = "<group>"; };
 		C3C3695347DF554E6D77B58265A73AB8 /* frame_window_update.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = frame_window_update.h; path = src/core/ext/transport/chttp2/transport/frame_window_update.h; sourceTree = "<group>"; };
 		C3DC486F3C182D79A2962FC88854866F /* GDTCORReachability.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORReachability.h; path = GoogleDataTransport/GDTCORLibrary/Internal/GDTCORReachability.h; sourceTree = "<group>"; };
 		C3EEE1D89F3EDC6F48D23A68EC66CDF9 /* message_compress.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = message_compress.h; path = src/core/lib/compression/message_compress.h; sourceTree = "<group>"; };
 		C3F031F6171307343279C0B39244EE39 /* nanopb-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "nanopb-umbrella.h"; sourceTree = "<group>"; };
-		C3F2FAD36C950B23ED9C87ABCC785B2C /* f_int.c */ = {isa = PBXFileReference; includeInIndex = 1; name = f_int.c; path = src/crypto/asn1/f_int.c; sourceTree = "<group>"; };
-		C40B14FA891EFEC6A5A8B86263065700 /* timer_generic.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = timer_generic.cc; path = src/core/lib/iomgr/timer_generic.cc; sourceTree = "<group>"; };
-		C41CC81626123C1DEB92DECCFD942A7B /* frame_ping.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = frame_ping.cc; path = src/core/ext/transport/chttp2/transport/frame_ping.cc; sourceTree = "<group>"; };
+		C3F2FAD36C950B23ED9C87ABCC785B2C /* f_int.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = f_int.c; path = src/crypto/asn1/f_int.c; sourceTree = "<group>"; };
+		C40B14FA891EFEC6A5A8B86263065700 /* timer_generic.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = timer_generic.cc; path = src/core/lib/iomgr/timer_generic.cc; sourceTree = "<group>"; };
+		C41CC81626123C1DEB92DECCFD942A7B /* frame_ping.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = frame_ping.cc; path = src/core/ext/transport/chttp2/transport/frame_ping.cc; sourceTree = "<group>"; };
 		C425F2EAB497A5AD49453F845DC04C95 /* FIRGetOOBConfirmationCodeRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRGetOOBConfirmationCodeRequest.m; path = FirebaseAuth/Sources/Backend/RPC/FIRGetOOBConfirmationCodeRequest.m; sourceTree = "<group>"; };
-		C42701EB104A92BD18BB06A21EAF95A8 /* cmp.c */ = {isa = PBXFileReference; includeInIndex = 1; name = cmp.c; path = src/crypto/fipsmodule/bn/cmp.c; sourceTree = "<group>"; };
+		C42701EB104A92BD18BB06A21EAF95A8 /* cmp.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = cmp.c; path = src/crypto/fipsmodule/bn/cmp.c; sourceTree = "<group>"; };
 		C44288E4A8EAFADC06B05AB887F50F43 /* GDTCORUploadCoordinator.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCORUploadCoordinator.m; path = GoogleDataTransport/GDTCORLibrary/GDTCORUploadCoordinator.m; sourceTree = "<group>"; };
 		C45A11F368E998542E10895D017517D3 /* address.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = address.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/core/address.upb.h"; sourceTree = "<group>"; };
 		C48A2832342E1E5D0A10D558271FC321 /* subchannel_interface.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = subchannel_interface.h; path = src/core/ext/filters/client_channel/subchannel_interface.h; sourceTree = "<group>"; };
-		C491A9B791C089094A3054ADCAF605E9 /* health.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = health.upb.c; path = "src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c"; sourceTree = "<group>"; };
-		C49EB710724D012E8C25B82759CCBADD /* alts_counter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alts_counter.cc; path = src/core/tsi/alts/frame_protector/alts_counter.cc; sourceTree = "<group>"; };
+		C491A9B791C089094A3054ADCAF605E9 /* health.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = health.upb.c; path = "src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c"; sourceTree = "<group>"; };
+		C49EB710724D012E8C25B82759CCBADD /* alts_counter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alts_counter.cc; path = src/core/tsi/alts/frame_protector/alts_counter.cc; sourceTree = "<group>"; };
 		C4A35DECD15106C4B861B472CEF7A406 /* GULApplication.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULApplication.h; path = GoogleUtilities/AppDelegateSwizzler/Public/GoogleUtilities/GULApplication.h; sourceTree = "<group>"; };
 		C4C90A2807BBD1C0B830487BF3D8E578 /* slice.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = slice.h; path = include/grpcpp/impl/codegen/slice.h; sourceTree = "<group>"; };
 		C4E54430E661BF1B9A30EC25333C7331 /* async_unary_call.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = async_unary_call.h; path = include/grpcpp/impl/codegen/async_unary_call.h; sourceTree = "<group>"; };
@@ -10850,34 +10851,34 @@
 		C504476352E6FF7CA99A91A7F2DD8E18 /* GULSceneDelegateSwizzler.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GULSceneDelegateSwizzler.m; path = GoogleUtilities/AppDelegateSwizzler/GULSceneDelegateSwizzler.m; sourceTree = "<group>"; };
 		C50B62DB08608545EB223C32FA75A6F1 /* civil_time_detail.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = civil_time_detail.h; path = absl/time/internal/cctz/include/cctz/civil_time_detail.h; sourceTree = "<group>"; };
 		C51E4A9A3ACFB9D93CD0CCEEF208B1CB /* err.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = err.h; path = src/include/openssl/err.h; sourceTree = "<group>"; };
-		C52D028F6F149F5A61BEDA87C8FE396B /* exception_apple.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = exception_apple.mm; path = Firestore/core/src/util/exception_apple.mm; sourceTree = "<group>"; };
+		C52D028F6F149F5A61BEDA87C8FE396B /* exception_apple.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = exception_apple.mm; path = Firestore/core/src/util/exception_apple.mm; sourceTree = "<group>"; };
 		C538393291A65B0981530D432C7D7CFA /* GoogleUtilities.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = GoogleUtilities.modulemap; sourceTree = "<group>"; };
 		C551B3B6C2F308A8A254DC69510F8656 /* FIRAuthExceptionUtils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthExceptionUtils.h; path = FirebaseAuth/Sources/Utilities/FIRAuthExceptionUtils.h; sourceTree = "<group>"; };
-		C56085D7A89B80FD9166F07E1F46ECC8 /* set_mutation.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = set_mutation.cc; path = Firestore/core/src/model/set_mutation.cc; sourceTree = "<group>"; };
+		C56085D7A89B80FD9166F07E1F46ECC8 /* set_mutation.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = set_mutation.cc; path = Firestore/core/src/model/set_mutation.cc; sourceTree = "<group>"; };
 		C560F8A8CF8E84B7D1ACAA4148191FB4 /* hpack_table.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = hpack_table.h; path = src/core/ext/transport/chttp2/transport/hpack_table.h; sourceTree = "<group>"; };
 		C57957EE63648C1BCD749A5CE116E008 /* ostringstream.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ostringstream.h; path = absl/strings/internal/ostringstream.h; sourceTree = "<group>"; };
-		C580A3476187B8D3A80551EA590EA284 /* compression.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = compression.cc; path = src/core/lib/compression/compression.cc; sourceTree = "<group>"; };
+		C580A3476187B8D3A80551EA590EA284 /* compression.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = compression.cc; path = src/core/lib/compression/compression.cc; sourceTree = "<group>"; };
 		C5856E2420A6AA68D137ABBDE8A3946F /* hide_ptr.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = hide_ptr.h; path = absl/base/internal/hide_ptr.h; sourceTree = "<group>"; };
 		C5889FCFEECBF17224B04836FE3EC4D0 /* FIRAuthProtoFinalizeMFAPhoneRequestInfo.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthProtoFinalizeMFAPhoneRequestInfo.m; path = FirebaseAuth/Sources/Backend/RPC/Proto/Phone/FIRAuthProtoFinalizeMFAPhoneRequestInfo.m; sourceTree = "<group>"; };
 		C58CA916382B14DF8B42ABC401695492 /* FIRStorageErrors.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStorageErrors.m; path = FirebaseStorage/Sources/FIRStorageErrors.m; sourceTree = "<group>"; };
 		C5AB711B452C4D050193DC4AA43619F0 /* config.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = config.h; path = include/grpcpp/impl/codegen/config.h; sourceTree = "<group>"; };
-		C5AD0C23F8D3BC63C741F3FE811F55AE /* tcp_client_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tcp_client_posix.cc; path = src/core/lib/iomgr/tcp_client_posix.cc; sourceTree = "<group>"; };
-		C5BB2D70064C749211DB27007808CF2E /* channel_cc.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = channel_cc.cc; path = src/cpp/client/channel_cc.cc; sourceTree = "<group>"; };
+		C5AD0C23F8D3BC63C741F3FE811F55AE /* tcp_client_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tcp_client_posix.cc; path = src/core/lib/iomgr/tcp_client_posix.cc; sourceTree = "<group>"; };
+		C5BB2D70064C749211DB27007808CF2E /* channel_cc.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = channel_cc.cc; path = src/cpp/client/channel_cc.cc; sourceTree = "<group>"; };
 		C5E08D641EF065B0DCDA9D1C09F9D4C5 /* annotations.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = annotations.upb.h; path = "src/core/ext/upb-generated/google/api/annotations.upb.h"; sourceTree = "<group>"; };
-		C5E28B95A8AFD110D54B52F7BA78AC8C /* pb_common.c */ = {isa = PBXFileReference; includeInIndex = 1; path = pb_common.c; sourceTree = "<group>"; };
+		C5E28B95A8AFD110D54B52F7BA78AC8C /* pb_common.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = pb_common.c; sourceTree = "<group>"; };
 		C60AF760D08B386D79846A3ECC396E2D /* alts_handshaker_client.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_handshaker_client.h; path = src/core/tsi/alts/handshaker/alts_handshaker_client.h; sourceTree = "<group>"; };
 		C610010EDD7B32B769647BE53AF78FE7 /* subchannel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = subchannel.h; path = src/core/ext/filters/client_channel/subchannel.h; sourceTree = "<group>"; };
-		C6367A5BAD4170028590130479A4FA4C /* grpc_stream.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_stream.cc; path = Firestore/core/src/remote/grpc_stream.cc; sourceTree = "<group>"; };
+		C6367A5BAD4170028590130479A4FA4C /* grpc_stream.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_stream.cc; path = Firestore/core/src/remote/grpc_stream.cc; sourceTree = "<group>"; };
 		C648F83DF0B058CAA57721716A013EF0 /* curve25519_32.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = curve25519_32.h; path = src/third_party/fiat/curve25519_32.h; sourceTree = "<group>"; };
-		C68B87424E235A6D19F0D1E99210C4E5 /* byte_stream_cpp.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = byte_stream_cpp.cc; path = Firestore/core/src/util/byte_stream_cpp.cc; sourceTree = "<group>"; };
+		C68B87424E235A6D19F0D1E99210C4E5 /* byte_stream_cpp.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = byte_stream_cpp.cc; path = Firestore/core/src/util/byte_stream_cpp.cc; sourceTree = "<group>"; };
 		C6DD9C1ECD9308E9779A6415CAD8841E /* FIRVerifyPasswordRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRVerifyPasswordRequest.h; path = FirebaseAuth/Sources/Backend/RPC/FIRVerifyPasswordRequest.h; sourceTree = "<group>"; };
-		C6DF093137395BBB685658365F754D2D /* a_time.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_time.c; path = src/crypto/asn1/a_time.c; sourceTree = "<group>"; };
+		C6DF093137395BBB685658365F754D2D /* a_time.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_time.c; path = src/crypto/asn1/a_time.c; sourceTree = "<group>"; };
 		C6EAF5967EEDE1A3F966DCE65665835E /* work_serializer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = work_serializer.h; path = src/core/lib/iomgr/work_serializer.h; sourceTree = "<group>"; };
-		C6F4398A0C6B28C745A7FD4EE4822A56 /* e_tls.c */ = {isa = PBXFileReference; includeInIndex = 1; name = e_tls.c; path = src/crypto/cipher_extra/e_tls.c; sourceTree = "<group>"; };
+		C6F4398A0C6B28C745A7FD4EE4822A56 /* e_tls.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = e_tls.c; path = src/crypto/cipher_extra/e_tls.c; sourceTree = "<group>"; };
 		C6F7ED6A4810269AC7A7F264EF3B4E0F /* pid_controller.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pid_controller.h; path = src/core/lib/transport/pid_controller.h; sourceTree = "<group>"; };
-		C7035AA6B6C21DA06621C2F321983E8A /* connectivity_monitor_apple.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = connectivity_monitor_apple.mm; path = Firestore/core/src/remote/connectivity_monitor_apple.mm; sourceTree = "<group>"; };
+		C7035AA6B6C21DA06621C2F321983E8A /* connectivity_monitor_apple.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = connectivity_monitor_apple.mm; path = Firestore/core/src/remote/connectivity_monitor_apple.mm; sourceTree = "<group>"; };
 		C7505C82B7FC2C96E97394DC826935AE /* dynamic_annotations.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = dynamic_annotations.h; path = absl/base/dynamic_annotations.h; sourceTree = "<group>"; };
-		C750A664BB75EF1F363AD80AAE0AF6CF /* log_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = log_posix.cc; path = src/core/lib/gpr/log_posix.cc; sourceTree = "<group>"; };
+		C750A664BB75EF1F363AD80AAE0AF6CF /* log_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = log_posix.cc; path = src/core/lib/gpr/log_posix.cc; sourceTree = "<group>"; };
 		C778E421E49042DDB31540082319CD31 /* GDTCORFlatFileStorage+Promises.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "GDTCORFlatFileStorage+Promises.h"; path = "GoogleDataTransport/GDTCORLibrary/Private/GDTCORFlatFileStorage+Promises.h"; sourceTree = "<group>"; };
 		C783E2E2583EFBFEBFF1E84CCC0ACD16 /* BoringSSL-GRPC-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "BoringSSL-GRPC-dummy.m"; sourceTree = "<group>"; };
 		C7B16F209933932D9545D8050772CAC9 /* sha.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sha.h; path = src/include/openssl/sha.h; sourceTree = "<group>"; };
@@ -10890,13 +10891,13 @@
 		C87CF4F6D5765F6888E42C8EA35BEADC /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; };
 		C8901112E93C89C013ECC8FB6C4C26F5 /* FIRGameCenterAuthCredential.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRGameCenterAuthCredential.m; path = FirebaseAuth/Sources/AuthProvider/GameCenter/FIRGameCenterAuthCredential.m; sourceTree = "<group>"; };
 		C91DC76D58759CD1F348B209C922CF4F /* FIRAuthNotificationManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthNotificationManager.m; path = FirebaseAuth/Sources/SystemService/FIRAuthNotificationManager.m; sourceTree = "<group>"; };
-		C9416943ECB62B8B15909880395C2BE8 /* common.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = common.nanopb.cc; path = Firestore/Protos/nanopb/google/firestore/v1/common.nanopb.cc; sourceTree = "<group>"; };
+		C9416943ECB62B8B15909880395C2BE8 /* common.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = common.nanopb.cc; path = Firestore/Protos/nanopb/google/firestore/v1/common.nanopb.cc; sourceTree = "<group>"; };
 		C945E21621E9FBB4E6CFB494080C6C08 /* server_interface.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_interface.h; path = include/grpcpp/impl/codegen/server_interface.h; sourceTree = "<group>"; };
 		C974CA09A29003DE0E814B77D2208F90 /* FIRGetProjectConfigRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRGetProjectConfigRequest.h; path = FirebaseAuth/Sources/Backend/RPC/FIRGetProjectConfigRequest.h; sourceTree = "<group>"; };
-		C978B25A20F14EBB57DF704F1F0A39E6 /* server.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = server.cc; path = src/core/lib/surface/server.cc; sourceTree = "<group>"; };
+		C978B25A20F14EBB57DF704F1F0A39E6 /* server.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = server.cc; path = src/core/lib/surface/server.cc; sourceTree = "<group>"; };
 		C9833A2F9F412D749C46090251F3C6C7 /* FIRStorageDeleteTask.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageDeleteTask.h; path = FirebaseStorage/Sources/FIRStorageDeleteTask.h; sourceTree = "<group>"; };
 		C9997AA1F6321342025243A598DEFCC9 /* FIRComponentContainer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRComponentContainer.h; path = FirebaseCore/Sources/Private/FIRComponentContainer.h; sourceTree = "<group>"; };
-		C9A227B6E607ABA27E0B442355D7859C /* derive_key.c */ = {isa = PBXFileReference; includeInIndex = 1; name = derive_key.c; path = src/crypto/cipher_extra/derive_key.c; sourceTree = "<group>"; };
+		C9A227B6E607ABA27E0B442355D7859C /* derive_key.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = derive_key.c; path = src/crypto/cipher_extra/derive_key.c; sourceTree = "<group>"; };
 		C9BB1D5A3BC3D97856A8FF59BA4B8BD2 /* NSURLSession+GULPromises.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "NSURLSession+GULPromises.h"; path = "GoogleUtilities/Environment/Public/GoogleUtilities/NSURLSession+GULPromises.h"; sourceTree = "<group>"; };
 		C9DE761EE51CA06D0303CDA7EA0BA1D6 /* FIRMultiFactorAssertion.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRMultiFactorAssertion.m; path = FirebaseAuth/Sources/MultiFactor/FIRMultiFactorAssertion.m; sourceTree = "<group>"; };
 		CA063C80D39FBE28823A0C244F9C4F83 /* FIRComponentType.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRComponentType.h; path = FirebaseCore/Sources/Private/FIRComponentType.h; sourceTree = "<group>"; };
@@ -10904,18 +10905,18 @@
 		CA2190A2903B11511652E54BCE170BF5 /* FIRResetPasswordRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRResetPasswordRequest.h; path = FirebaseAuth/Sources/Backend/RPC/FIRResetPasswordRequest.h; sourceTree = "<group>"; };
 		CA56174A29D59848AA34623087748D4A /* grpcpp.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpcpp.h; path = include/grpcpp/grpcpp.h; sourceTree = "<group>"; };
 		CA6ACE5418DBA4E8F938FF1EBD81FE77 /* upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = upb.h; path = third_party/upb/upb/upb.h; sourceTree = "<group>"; };
-		CA6AF0C1E4C528C8F2BF769B5C3E7F4E /* schedule.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = schedule.cc; path = Firestore/core/src/util/schedule.cc; sourceTree = "<group>"; };
+		CA6AF0C1E4C528C8F2BF769B5C3E7F4E /* schedule.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = schedule.cc; path = Firestore/core/src/util/schedule.cc; sourceTree = "<group>"; };
 		CA7ED3C55644E8A30F48A40926DDD2B6 /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/fipsmodule/digest/internal.h; sourceTree = "<group>"; };
-		CAC1B8C277DAD8D65527F938A020458B /* verify_mutation.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = verify_mutation.cc; path = Firestore/core/src/model/verify_mutation.cc; sourceTree = "<group>"; };
+		CAC1B8C277DAD8D65527F938A020458B /* verify_mutation.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = verify_mutation.cc; path = Firestore/core/src/model/verify_mutation.cc; sourceTree = "<group>"; };
 		CAD1FA8C40F1B0D9E947EE696AD11BD2 /* log.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = log.h; path = include/grpc/support/log.h; sourceTree = "<group>"; };
 		CAD57297C81FFD63B91908BA67CDC6D8 /* FirebaseAuth.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FirebaseAuth.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FirebaseAuth.h; sourceTree = "<group>"; };
 		CADB828A75EA3B4DE14B92807A3140A9 /* FIRUserMetadata_Internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRUserMetadata_Internal.h; path = FirebaseAuth/Sources/User/FIRUserMetadata_Internal.h; sourceTree = "<group>"; };
-		CADF9C236D96F3F92C5C353B1C6F5697 /* time.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = time.cc; path = absl/time/time.cc; sourceTree = "<group>"; };
-		CB01540AF727879D5416D21E49FD7354 /* tsi_error.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tsi_error.cc; path = src/core/lib/security/transport/tsi_error.cc; sourceTree = "<group>"; };
+		CADF9C236D96F3F92C5C353B1C6F5697 /* time.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = time.cc; path = absl/time/time.cc; sourceTree = "<group>"; };
+		CB01540AF727879D5416D21E49FD7354 /* tsi_error.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tsi_error.cc; path = src/core/lib/security/transport/tsi_error.cc; sourceTree = "<group>"; };
 		CB01D6794E967FE058E690E932044D9A /* FIRStorageUpdateMetadataTask.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageUpdateMetadataTask.h; path = FirebaseStorage/Sources/FIRStorageUpdateMetadataTask.h; sourceTree = "<group>"; };
 		CB389249D3AA3DA1B3C2A45D599BE38D /* obj.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = obj.h; path = src/include/openssl/obj.h; sourceTree = "<group>"; };
-		CB72CA162820A9698B0FFDF10730FCA3 /* grpc_tls_credentials_options.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_tls_credentials_options.cc; path = src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc; sourceTree = "<group>"; };
-		CB8F320E54EE6658D312E86807DD9C66 /* latlng.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = latlng.nanopb.cc; path = Firestore/Protos/nanopb/google/type/latlng.nanopb.cc; sourceTree = "<group>"; };
+		CB72CA162820A9698B0FFDF10730FCA3 /* grpc_tls_credentials_options.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_tls_credentials_options.cc; path = src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc; sourceTree = "<group>"; };
+		CB8F320E54EE6658D312E86807DD9C66 /* latlng.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = latlng.nanopb.cc; path = Firestore/Protos/nanopb/google/type/latlng.nanopb.cc; sourceTree = "<group>"; };
 		CB92DAF05974E6E9FD8E11EC61D86AD2 /* FIRStartMFASignInResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStartMFASignInResponse.m; path = FirebaseAuth/Sources/Backend/RPC/MultiFactor/SignIn/FIRStartMFASignInResponse.m; sourceTree = "<group>"; };
 		CBB0D8980B71A837AD93967A5D3204CB /* FIRTwitterAuthCredential.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRTwitterAuthCredential.h; path = FirebaseAuth/Sources/AuthProvider/Twitter/FIRTwitterAuthCredential.h; sourceTree = "<group>"; };
 		CBD8C35FA407766356D9609022CB7524 /* ssl_types.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl_types.h; path = src/core/tsi/ssl_types.h; sourceTree = "<group>"; };
@@ -10923,67 +10924,67 @@
 		CC07BB9867E8064A22573537099BABF3 /* credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = credentials.h; path = src/core/lib/security/credentials/credentials.h; sourceTree = "<group>"; };
 		CC1B2497514A9B49C3C9B29880AF177D /* work_serializer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = work_serializer.h; path = src/core/lib/iomgr/work_serializer.h; sourceTree = "<group>"; };
 		CC415CE1C6F0FF96CA2B81A21A4281BB /* init.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = init.h; path = src/core/lib/surface/init.h; sourceTree = "<group>"; };
-		CCB262B6E79F8FD3D0AFCBB219D0E075 /* x_name.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x_name.c; path = src/crypto/x509/x_name.c; sourceTree = "<group>"; };
+		CCB262B6E79F8FD3D0AFCBB219D0E075 /* x_name.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x_name.c; path = src/crypto/x509/x_name.c; sourceTree = "<group>"; };
 		CCB947E249A0067B56BE7682DF3080F6 /* FIRGetProjectConfigRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRGetProjectConfigRequest.m; path = FirebaseAuth/Sources/Backend/RPC/FIRGetProjectConfigRequest.m; sourceTree = "<group>"; };
 		CCCF3E8AB4D91F39A26289D63A20F8E6 /* sync_generic.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sync_generic.h; path = include/grpc/support/sync_generic.h; sourceTree = "<group>"; };
-		CD072273D0B33788EDAE9CF401068C11 /* iam_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = iam_credentials.cc; path = src/core/lib/security/credentials/iam/iam_credentials.cc; sourceTree = "<group>"; };
-		CD0E1374DFDF21D2179ACBC42F758527 /* a_bool.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_bool.c; path = src/crypto/asn1/a_bool.c; sourceTree = "<group>"; };
+		CD072273D0B33788EDAE9CF401068C11 /* iam_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = iam_credentials.cc; path = src/core/lib/security/credentials/iam/iam_credentials.cc; sourceTree = "<group>"; };
+		CD0E1374DFDF21D2179ACBC42F758527 /* a_bool.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_bool.c; path = src/crypto/asn1/a_bool.c; sourceTree = "<group>"; };
 		CD1D94E54C44685AA6A328AC1AF4246F /* transport_security.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = transport_security.h; path = src/core/tsi/transport_security.h; sourceTree = "<group>"; };
 		CD5F3FA36B958D543C97E548C2024C78 /* alts_counter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_counter.h; path = src/core/tsi/alts/frame_protector/alts_counter.h; sourceTree = "<group>"; };
-		CD6FE9BC6E2A403C0EA894F4A1A82BDF /* crc32c.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = crc32c.cc; path = util/crc32c.cc; sourceTree = "<group>"; };
+		CD6FE9BC6E2A403C0EA894F4A1A82BDF /* crc32c.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = crc32c.cc; path = util/crc32c.cc; sourceTree = "<group>"; };
 		CD83DA8361920A044E6D57052A6FC946 /* call_combiner.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = call_combiner.h; path = src/core/lib/iomgr/call_combiner.h; sourceTree = "<group>"; };
 		CD93B811FEB875EAFF759FE542D1F585 /* strip.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = strip.h; path = absl/strings/strip.h; sourceTree = "<group>"; };
 		CDAB6772E8A9BE6034609E3657132C85 /* FIREmailLinkSignInRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIREmailLinkSignInRequest.m; path = FirebaseAuth/Sources/Backend/RPC/FIREmailLinkSignInRequest.m; sourceTree = "<group>"; };
 		CDAC48A01B1A24318AB0259E5988DF83 /* channel_arguments_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channel_arguments_impl.h; path = include/grpcpp/support/channel_arguments_impl.h; sourceTree = "<group>"; };
-		CDBDABB86F4559E834F61C9E70385E77 /* writing.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = writing.cc; path = src/core/ext/transport/chttp2/transport/writing.cc; sourceTree = "<group>"; };
-		CDC6306250F9B8F0EFA223C7BD589E85 /* get_current_time_chrono.inc */ = {isa = PBXFileReference; includeInIndex = 1; name = get_current_time_chrono.inc; path = absl/time/internal/get_current_time_chrono.inc; sourceTree = "<group>"; };
+		CDBDABB86F4559E834F61C9E70385E77 /* writing.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = writing.cc; path = src/core/ext/transport/chttp2/transport/writing.cc; sourceTree = "<group>"; };
+		CDC6306250F9B8F0EFA223C7BD589E85 /* get_current_time_chrono.inc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.pascal; name = get_current_time_chrono.inc; path = absl/time/internal/get_current_time_chrono.inc; sourceTree = "<group>"; };
 		CE0B9D41E67C0F464D45C6D2BBFB48E6 /* resolve_address_custom.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resolve_address_custom.h; path = src/core/lib/iomgr/resolve_address_custom.h; sourceTree = "<group>"; };
-		CE109D0F72C1EAA766F117EA754423DE /* document_snapshot.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = document_snapshot.cc; path = Firestore/core/src/api/document_snapshot.cc; sourceTree = "<group>"; };
-		CE40059ABDB6117624A044DCB4761FBB /* load_file.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = load_file.cc; path = src/core/lib/iomgr/load_file.cc; sourceTree = "<group>"; };
-		CE40247A6C4AAD414A61332845587622 /* pem_info.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pem_info.c; path = src/crypto/pem/pem_info.c; sourceTree = "<group>"; };
+		CE109D0F72C1EAA766F117EA754423DE /* document_snapshot.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = document_snapshot.cc; path = Firestore/core/src/api/document_snapshot.cc; sourceTree = "<group>"; };
+		CE40059ABDB6117624A044DCB4761FBB /* load_file.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = load_file.cc; path = src/core/lib/iomgr/load_file.cc; sourceTree = "<group>"; };
+		CE40247A6C4AAD414A61332845587622 /* pem_info.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pem_info.c; path = src/crypto/pem/pem_info.c; sourceTree = "<group>"; };
 		CE6B6CD2DB2640B7F5799E08CD5DF35A /* resource.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resource.upb.h; path = "src/core/ext/upb-generated/envoy/annotations/resource.upb.h"; sourceTree = "<group>"; };
 		CE6EC55331548621CDA78C4516876B80 /* context_list.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = context_list.h; path = src/core/ext/transport/chttp2/transport/context_list.h; sourceTree = "<group>"; };
-		CE7EC19A6E5C9FDC470DE644D1234FAD /* endpoint.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = endpoint.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/endpoint.upb.c"; sourceTree = "<group>"; };
+		CE7EC19A6E5C9FDC470DE644D1234FAD /* endpoint.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = endpoint.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/endpoint.upb.c"; sourceTree = "<group>"; };
 		CE80E72C78B299687830AEA36C2FAB42 /* static_metadata.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = static_metadata.h; path = src/core/lib/transport/static_metadata.h; sourceTree = "<group>"; };
-		CE8765B3053874E73AFDC78B5D6B4396 /* CLTypingLabel.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = CLTypingLabel.framework; path = CLTypingLabel.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		CE8765B3053874E73AFDC78B5D6B4396 /* CLTypingLabel.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = CLTypingLabel.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		CE9875C8A73877F86489E1084A226319 /* gethostname.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = gethostname.h; path = src/core/lib/iomgr/gethostname.h; sourceTree = "<group>"; };
 		CEA4E29E79F07BACF500C7C53220F0F1 /* FIRAuthInterop.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthInterop.h; path = Interop/Auth/Public/FIRAuthInterop.h; sourceTree = "<group>"; };
-		CEB767725D4B9EF98255CFF7D155BA58 /* shift.c */ = {isa = PBXFileReference; includeInIndex = 1; name = shift.c; path = src/crypto/fipsmodule/bn/shift.c; sourceTree = "<group>"; };
+		CEB767725D4B9EF98255CFF7D155BA58 /* shift.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = shift.c; path = src/crypto/fipsmodule/bn/shift.c; sourceTree = "<group>"; };
 		CEC566EDC32C5C63C7332E1487CD7C0E /* FIRVerifyCustomTokenRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRVerifyCustomTokenRequest.h; path = FirebaseAuth/Sources/Backend/RPC/FIRVerifyCustomTokenRequest.h; sourceTree = "<group>"; };
 		CF08CEE434BFDECE4D2F449FC1D57260 /* FIRPhoneMultiFactorAssertion+Internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FIRPhoneMultiFactorAssertion+Internal.h"; path = "FirebaseAuth/Sources/MultiFactor/Phone/FIRPhoneMultiFactorAssertion+Internal.h"; sourceTree = "<group>"; };
-		CF1EB2519CA5F0F6F8EAF1EE851595DC /* key_field_in_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = key_field_in_filter.cc; path = Firestore/core/src/core/key_field_in_filter.cc; sourceTree = "<group>"; };
+		CF1EB2519CA5F0F6F8EAF1EE851595DC /* key_field_in_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = key_field_in_filter.cc; path = Firestore/core/src/core/key_field_in_filter.cc; sourceTree = "<group>"; };
 		CF39C960AD329D704ECAF3F5F63426AC /* status.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = status.h; path = include/grpc/status.h; sourceTree = "<group>"; };
-		CF3B4D7EFBD231DE57CFF5DB4D8BC5DE /* t_x509.c */ = {isa = PBXFileReference; includeInIndex = 1; name = t_x509.c; path = src/crypto/x509/t_x509.c; sourceTree = "<group>"; };
-		CF546082E503B7F342DE88B1428A1110 /* md4.c */ = {isa = PBXFileReference; includeInIndex = 1; name = md4.c; path = src/crypto/fipsmodule/md4/md4.c; sourceTree = "<group>"; };
-		CF8F9E647575416C74D93C9CA22057FF /* atm.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = atm.cc; path = src/core/lib/gpr/atm.cc; sourceTree = "<group>"; };
+		CF3B4D7EFBD231DE57CFF5DB4D8BC5DE /* t_x509.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = t_x509.c; path = src/crypto/x509/t_x509.c; sourceTree = "<group>"; };
+		CF546082E503B7F342DE88B1428A1110 /* md4.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = md4.c; path = src/crypto/fipsmodule/md4/md4.c; sourceTree = "<group>"; };
+		CF8F9E647575416C74D93C9CA22057FF /* atm.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = atm.cc; path = src/core/lib/gpr/atm.cc; sourceTree = "<group>"; };
 		CFD919B5DF4AFF5E0C4382DE4ACB5BF1 /* FBLPromise+Await.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FBLPromise+Await.h"; path = "Sources/FBLPromises/include/FBLPromise+Await.h"; sourceTree = "<group>"; };
 		CFE011D0ACBABC6D4403A1DE1E583116 /* crc32c.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = crc32c.h; path = util/crc32c.h; sourceTree = "<group>"; };
-		CFFF4177ACCD5EA51AD267F59F59DCC3 /* s3_pkt.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = s3_pkt.cc; path = src/ssl/s3_pkt.cc; sourceTree = "<group>"; };
+		CFFF4177ACCD5EA51AD267F59F59DCC3 /* s3_pkt.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = s3_pkt.cc; path = src/ssl/s3_pkt.cc; sourceTree = "<group>"; };
 		D02E087A3CBA948944407C480F2C8046 /* md32_common.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = md32_common.h; path = src/crypto/fipsmodule/digest/md32_common.h; sourceTree = "<group>"; };
 		D033C4F3FFFFBE4DD54BBF1AC147FF9A /* FIRWithdrawMFARequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRWithdrawMFARequest.h; path = FirebaseAuth/Sources/Backend/RPC/MultiFactor/Unenroll/FIRWithdrawMFARequest.h; sourceTree = "<group>"; };
-		D03BA9B99C007E1316E813F7CC65997F /* client_channel.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = client_channel.cc; path = src/core/ext/filters/client_channel/client_channel.cc; sourceTree = "<group>"; };
-		D04F69E2CB0179FAF6F2482E595CA313 /* message_compress_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = message_compress_filter.cc; path = src/core/ext/filters/http/message_compress/message_compress_filter.cc; sourceTree = "<group>"; };
+		D03BA9B99C007E1316E813F7CC65997F /* client_channel.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = client_channel.cc; path = src/core/ext/filters/client_channel/client_channel.cc; sourceTree = "<group>"; };
+		D04F69E2CB0179FAF6F2482E595CA313 /* message_compress_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = message_compress_filter.cc; path = src/core/ext/filters/http/message_compress/message_compress_filter.cc; sourceTree = "<group>"; };
 		D0648BD061B3E0728CBD366BAA0E70F2 /* FIRAuthAPNSTokenManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthAPNSTokenManager.m; path = FirebaseAuth/Sources/SystemService/FIRAuthAPNSTokenManager.m; sourceTree = "<group>"; };
 		D0767128DE48873E9910EB5429B17196 /* stats_data.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = stats_data.h; path = src/core/lib/debug/stats_data.h; sourceTree = "<group>"; };
-		D099BD9FC773AFE79BB6113D83F3CA90 /* grpc_ares_ev_driver.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_ares_ev_driver.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.cc; sourceTree = "<group>"; };
+		D099BD9FC773AFE79BB6113D83F3CA90 /* grpc_ares_ev_driver.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_ares_ev_driver.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.cc; sourceTree = "<group>"; };
 		D09B74F642B3CA0CC7132C2F3998C634 /* inline_variable.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = inline_variable.h; path = absl/base/internal/inline_variable.h; sourceTree = "<group>"; };
 		D0C0F8E30F59FC7FDB944B4B2343C53E /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/bio/internal.h; sourceTree = "<group>"; };
-		D0C629E16533FF27CC8D9C83A5F6B390 /* x_info.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x_info.c; path = src/crypto/x509/x_info.c; sourceTree = "<group>"; };
+		D0C629E16533FF27CC8D9C83A5F6B390 /* x_info.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x_info.c; path = src/crypto/x509/x_info.c; sourceTree = "<group>"; };
 		D0D038DBFA728A0143E5A6E078EE9F07 /* iam_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = iam_credentials.h; path = src/core/lib/security/credentials/iam/iam_credentials.h; sourceTree = "<group>"; };
-		D0D3A4D8CD621950915D7DDCAC15FA63 /* max_age_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = max_age_filter.cc; path = src/core/ext/filters/max_age/max_age_filter.cc; sourceTree = "<group>"; };
+		D0D3A4D8CD621950915D7DDCAC15FA63 /* max_age_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = max_age_filter.cc; path = src/core/ext/filters/max_age/max_age_filter.cc; sourceTree = "<group>"; };
 		D0E99F05C310AC5521B130C9EE4D4D99 /* call.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = call.h; path = include/grpcpp/impl/codegen/call.h; sourceTree = "<group>"; };
-		D107A6D102AB33650A2CD7250E61CCA6 /* bn.c */ = {isa = PBXFileReference; includeInIndex = 1; name = bn.c; path = src/crypto/fipsmodule/bn/bn.c; sourceTree = "<group>"; };
-		D1115CF7F43933E982B5AAA0986B6CC4 /* resolver.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = resolver.cc; path = src/core/ext/filters/client_channel/resolver.cc; sourceTree = "<group>"; };
+		D107A6D102AB33650A2CD7250E61CCA6 /* bn.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = bn.c; path = src/crypto/fipsmodule/bn/bn.c; sourceTree = "<group>"; };
+		D1115CF7F43933E982B5AAA0986B6CC4 /* resolver.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = resolver.cc; path = src/core/ext/filters/client_channel/resolver.cc; sourceTree = "<group>"; };
 		D117DA948B765545915CF7D17E2C9631 /* alts_iovec_record_protocol.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_iovec_record_protocol.h; path = src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.h; sourceTree = "<group>"; };
-		D14A4EF0A177FDE6C59B53099740A5BE /* credentials_provider.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = credentials_provider.cc; path = Firestore/core/src/auth/credentials_provider.cc; sourceTree = "<group>"; };
-		D153E3323FE742B06295F70BCB63950D /* montgomery.c */ = {isa = PBXFileReference; includeInIndex = 1; name = montgomery.c; path = src/crypto/fipsmodule/bn/montgomery.c; sourceTree = "<group>"; };
-		D15B277D11AFC3FD3AC58D22883B8AAC /* resolver_registry.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = resolver_registry.cc; path = src/core/ext/filters/client_channel/resolver_registry.cc; sourceTree = "<group>"; };
-		D17631950D6321ACCD3CFC30D85310B1 /* spinlock_posix.inc */ = {isa = PBXFileReference; includeInIndex = 1; name = spinlock_posix.inc; path = absl/base/internal/spinlock_posix.inc; sourceTree = "<group>"; };
-		D184EA1833EC8D788E7B1FC6AF3A8D06 /* metadata_array.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = metadata_array.cc; path = src/core/lib/surface/metadata_array.cc; sourceTree = "<group>"; };
-		D1C081FF9E9D7CCEFB2A5DA8E10BC4DD /* document_reference.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = document_reference.cc; path = Firestore/core/src/api/document_reference.cc; sourceTree = "<group>"; };
+		D14A4EF0A177FDE6C59B53099740A5BE /* credentials_provider.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = credentials_provider.cc; path = Firestore/core/src/auth/credentials_provider.cc; sourceTree = "<group>"; };
+		D153E3323FE742B06295F70BCB63950D /* montgomery.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = montgomery.c; path = src/crypto/fipsmodule/bn/montgomery.c; sourceTree = "<group>"; };
+		D15B277D11AFC3FD3AC58D22883B8AAC /* resolver_registry.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = resolver_registry.cc; path = src/core/ext/filters/client_channel/resolver_registry.cc; sourceTree = "<group>"; };
+		D17631950D6321ACCD3CFC30D85310B1 /* spinlock_posix.inc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.pascal; name = spinlock_posix.inc; path = absl/base/internal/spinlock_posix.inc; sourceTree = "<group>"; };
+		D184EA1833EC8D788E7B1FC6AF3A8D06 /* metadata_array.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = metadata_array.cc; path = src/core/lib/surface/metadata_array.cc; sourceTree = "<group>"; };
+		D1C081FF9E9D7CCEFB2A5DA8E10BC4DD /* document_reference.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = document_reference.cc; path = Firestore/core/src/api/document_reference.cc; sourceTree = "<group>"; };
 		D1C2A657DDB0356DBF22D4BCBFD25745 /* FIRAuthKeychainServices.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthKeychainServices.m; path = FirebaseAuth/Sources/Storage/FIRAuthKeychainServices.m; sourceTree = "<group>"; };
 		D1F0B54E81645321522C0A0A23503A89 /* callback_common.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = callback_common.h; path = include/grpcpp/impl/codegen/callback_common.h; sourceTree = "<group>"; };
-		D20B0AF5F663C319C1280BCC56A0E629 /* t1_lib.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = t1_lib.cc; path = src/ssl/t1_lib.cc; sourceTree = "<group>"; };
+		D20B0AF5F663C319C1280BCC56A0E629 /* t1_lib.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = t1_lib.cc; path = src/ssl/t1_lib.cc; sourceTree = "<group>"; };
 		D2231F9A1004FCAB1CD944FC99E13C07 /* str_split.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = str_split.h; path = absl/strings/str_split.h; sourceTree = "<group>"; };
 		D23EADF42356BFBA80D3BC8D4CCF6B78 /* context_list.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = context_list.h; path = src/core/ext/transport/chttp2/transport/context_list.h; sourceTree = "<group>"; };
 		D245B2FA7D83D6738416E23AEE364BD0 /* FIRComponentContainer.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRComponentContainer.m; path = FirebaseCore/Sources/FIRComponentContainer.m; sourceTree = "<group>"; };
@@ -10992,32 +10993,32 @@
 		D27671C57F265D3FC38FA7744DEC84FA /* poly1305.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = poly1305.h; path = src/include/openssl/poly1305.h; sourceTree = "<group>"; };
 		D2AFF73BF0C12961C40C80BD81D41A76 /* timers.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = timers.h; path = src/core/lib/profiling/timers.h; sourceTree = "<group>"; };
 		D2B83DAEA0FC9131A81F32AD395AC7B5 /* message_compress_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = message_compress_filter.h; path = src/core/ext/filters/http/message_compress/message_compress_filter.h; sourceTree = "<group>"; };
-		D2C38430F9352C2E2F56DB2227DB92F4 /* retry_throttle.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = retry_throttle.cc; path = src/core/ext/filters/client_channel/retry_throttle.cc; sourceTree = "<group>"; };
+		D2C38430F9352C2E2F56DB2227DB92F4 /* retry_throttle.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = retry_throttle.cc; path = src/core/ext/filters/client_channel/retry_throttle.cc; sourceTree = "<group>"; };
 		D2CB29912CE566681BF11262F069B558 /* builder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = builder.h; path = db/builder.h; sourceTree = "<group>"; };
-		D31DDFD98547C4650BBC1E64D7AA1627 /* field_value.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = field_value.cc; path = Firestore/core/src/model/field_value.cc; sourceTree = "<group>"; };
+		D31DDFD98547C4650BBC1E64D7AA1627 /* field_value.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = field_value.cc; path = Firestore/core/src/model/field_value.cc; sourceTree = "<group>"; };
 		D327781F260DC22BA63D2A5F66995F8A /* FIRWithdrawMFARequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRWithdrawMFARequest.m; path = FirebaseAuth/Sources/Backend/RPC/MultiFactor/Unenroll/FIRWithdrawMFARequest.m; sourceTree = "<group>"; };
-		D35291A12AB17848C12F3AB193F7B1F6 /* refcount_lock.c */ = {isa = PBXFileReference; includeInIndex = 1; name = refcount_lock.c; path = src/crypto/refcount_lock.c; sourceTree = "<group>"; };
+		D35291A12AB17848C12F3AB193F7B1F6 /* refcount_lock.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = refcount_lock.c; path = src/crypto/refcount_lock.c; sourceTree = "<group>"; };
 		D36CB2233F4AD9CC81ACDAF7F1CF58F0 /* span.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = span.h; path = absl/types/span.h; sourceTree = "<group>"; };
-		D36D8F51C6BD4100648585D232EE22DA /* grpc_ares_wrapper_libuv.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_ares_wrapper_libuv.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc; sourceTree = "<group>"; };
+		D36D8F51C6BD4100648585D232EE22DA /* grpc_ares_wrapper_libuv.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_ares_wrapper_libuv.cc; path = src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc; sourceTree = "<group>"; };
 		D3781328D01656EC2BA1E4138ACF856D /* child_policy_handler.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = child_policy_handler.h; path = src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h; sourceTree = "<group>"; };
 		D396329FB8457A41F8AD0F4A24AF31CB /* FIRAppInternal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAppInternal.h; path = FirebaseCore/Sources/Private/FIRAppInternal.h; sourceTree = "<group>"; };
 		D3B23E10B4314FAEDD5686274537CE6C /* orca_load_report.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = orca_load_report.upb.h; path = "src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.h"; sourceTree = "<group>"; };
 		D3BD0082F297018188EE92262144EDAF /* socket_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = socket_windows.h; path = src/core/lib/iomgr/socket_windows.h; sourceTree = "<group>"; };
 		D404BF0DD1A91CFBEDC1D0990462E739 /* db_iter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = db_iter.h; path = db/db_iter.h; sourceTree = "<group>"; };
 		D4269142AE7888586658A95D99A93694 /* status.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = status.h; path = include/grpcpp/support/status.h; sourceTree = "<group>"; };
-		D434892AC309A2295488BAC23F6B5521 /* leveldb_util.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = leveldb_util.cc; path = Firestore/core/src/local/leveldb_util.cc; sourceTree = "<group>"; };
+		D434892AC309A2295488BAC23F6B5521 /* leveldb_util.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = leveldb_util.cc; path = Firestore/core/src/local/leveldb_util.cc; sourceTree = "<group>"; };
 		D44B1D2F1B768DFA8893BC01DA17D099 /* FIROptionsInternal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIROptionsInternal.h; path = FirebaseCore/Sources/Private/FIROptionsInternal.h; sourceTree = "<group>"; };
 		D4556BE49D3B8FD1D7E01A42044513C7 /* FIRStoragePath.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStoragePath.h; path = FirebaseStorage/Sources/FIRStoragePath.h; sourceTree = "<group>"; };
 		D46173FBBB0DEDA43373641D7E9F9E34 /* health_check.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = health_check.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h"; sourceTree = "<group>"; };
-		D46EBD2FB82EA1A3591E39C03EECC4B3 /* circuit_breaker.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = circuit_breaker.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c"; sourceTree = "<group>"; };
+		D46EBD2FB82EA1A3591E39C03EECC4B3 /* circuit_breaker.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = circuit_breaker.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c"; sourceTree = "<group>"; };
 		D4919C5E6DA8C30E8093D4B46BFBCB7E /* FIRAuthCredential.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthCredential.m; path = FirebaseAuth/Sources/AuthProvider/FIRAuthCredential.m; sourceTree = "<group>"; };
 		D49CA46AAB1B61ED79A0C4D2DC4EADAD /* transport_security_common_api.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = transport_security_common_api.h; path = src/core/tsi/alts/handshaker/transport_security_common_api.h; sourceTree = "<group>"; };
 		D49E858839B7A57C935DA1ABDC04B780 /* channel_trace.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channel_trace.h; path = src/core/lib/channel/channel_trace.h; sourceTree = "<group>"; };
 		D4B51E47DC3A9BE522B2CB6359B637EA /* empty.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = empty.upb.h; path = "src/core/ext/upb-generated/google/protobuf/empty.upb.h"; sourceTree = "<group>"; };
-		D4C2D6A9293ED38A769ED947231404FB /* aead.c */ = {isa = PBXFileReference; includeInIndex = 1; name = aead.c; path = src/crypto/fipsmodule/cipher/aead.c; sourceTree = "<group>"; };
-		D4C5DB476F5D0F8A959D1A60153CB806 /* v3_extku.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_extku.c; path = src/crypto/x509v3/v3_extku.c; sourceTree = "<group>"; };
+		D4C2D6A9293ED38A769ED947231404FB /* aead.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = aead.c; path = src/crypto/fipsmodule/cipher/aead.c; sourceTree = "<group>"; };
+		D4C5DB476F5D0F8A959D1A60153CB806 /* v3_extku.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_extku.c; path = src/crypto/x509v3/v3_extku.c; sourceTree = "<group>"; };
 		D4CBBA05E1F78C0546137DD5B2BF2B44 /* rc4.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = rc4.h; path = src/include/openssl/rc4.h; sourceTree = "<group>"; };
-		D4D99AC3AC10BB5805ACB7FB2DB77A31 /* digest.c */ = {isa = PBXFileReference; includeInIndex = 1; name = digest.c; path = src/crypto/fipsmodule/digest/digest.c; sourceTree = "<group>"; };
+		D4D99AC3AC10BB5805ACB7FB2DB77A31 /* digest.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = digest.c; path = src/crypto/fipsmodule/digest/digest.c; sourceTree = "<group>"; };
 		D4F8B6B89616E33E13D75394BA22FDB3 /* FirebaseAuth-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "FirebaseAuth-dummy.m"; sourceTree = "<group>"; };
 		D5174E94857B8439FEE5E78B782904AB /* x509.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = x509.h; path = src/include/openssl/x509.h; sourceTree = "<group>"; };
 		D51A3C0FB1DAFE19BD37B7342760C8EA /* polling_entity.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = polling_entity.h; path = src/core/lib/iomgr/polling_entity.h; sourceTree = "<group>"; };
@@ -11025,7 +11026,7 @@
 		D51D6746BE99F438425F90D5D7400F48 /* pollset_set_custom.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pollset_set_custom.h; path = src/core/lib/iomgr/pollset_set_custom.h; sourceTree = "<group>"; };
 		D53D5E6DDC965455222C78D5420DB533 /* client_channel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_channel.h; path = src/core/ext/filters/client_channel/client_channel.h; sourceTree = "<group>"; };
 		D546D188A709206529EB565014C8CD06 /* arg.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = arg.h; path = absl/strings/internal/str_format/arg.h; sourceTree = "<group>"; };
-		D555B54FA89AA07845DE425A0BA3683C /* server_secure_chttp2.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = server_secure_chttp2.cc; path = src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc; sourceTree = "<group>"; };
+		D555B54FA89AA07845DE425A0BA3683C /* server_secure_chttp2.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = server_secure_chttp2.cc; path = src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc; sourceTree = "<group>"; };
 		D559758D33F7E25814DB84235A9353EA /* filter_block.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = filter_block.h; path = table/filter_block.h; sourceTree = "<group>"; };
 		D58BCD5F40923DCBB90204B9F784ED73 /* cert.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = cert.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.h"; sourceTree = "<group>"; };
 		D59ACCCAB58BE6B4CF560E2B738D8F53 /* FIRVerifyCustomTokenResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRVerifyCustomTokenResponse.m; path = FirebaseAuth/Sources/Backend/RPC/FIRVerifyCustomTokenResponse.m; sourceTree = "<group>"; };
@@ -11034,203 +11035,203 @@
 		D642729CC2EE974A64FBEEB23D546572 /* timestamp.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = timestamp.upb.h; path = "src/core/ext/upb-generated/google/protobuf/timestamp.upb.h"; sourceTree = "<group>"; };
 		D6702941307A7B6387B8BC92D9AC3541 /* GULNetworkConstants.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULNetworkConstants.h; path = GoogleUtilities/Network/Public/GoogleUtilities/GULNetworkConstants.h; sourceTree = "<group>"; };
 		D6832ACE3FC15EEC75248519082CAC82 /* GoogleDataTransport-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "GoogleDataTransport-Info.plist"; sourceTree = "<group>"; };
-		D68C513E344DCC8A15F7D12828393297 /* ssl_session_openssl.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_session_openssl.cc; path = src/core/tsi/ssl/session_cache/ssl_session_openssl.cc; sourceTree = "<group>"; };
+		D68C513E344DCC8A15F7D12828393297 /* ssl_session_openssl.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_session_openssl.cc; path = src/core/tsi/ssl/session_cache/ssl_session_openssl.cc; sourceTree = "<group>"; };
 		D69B873E28E41CB2E7B9AD5D9CE36026 /* endpoint.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = endpoint.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/endpoint.upb.h"; sourceTree = "<group>"; };
-		D6C2E1F73724CDD887B61D1AB4C09A02 /* a_verify.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_verify.c; path = src/crypto/x509/a_verify.c; sourceTree = "<group>"; };
+		D6C2E1F73724CDD887B61D1AB4C09A02 /* a_verify.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_verify.c; path = src/crypto/x509/a_verify.c; sourceTree = "<group>"; };
 		D6C8E1C2AE4290B31E251F5E404AE14B /* error_cfstream.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = error_cfstream.h; path = src/core/lib/iomgr/error_cfstream.h; sourceTree = "<group>"; };
 		D6D47E49940BF02DEBAF38D1960AF285 /* tls_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tls_credentials.h; path = src/core/lib/security/credentials/tls/tls_credentials.h; sourceTree = "<group>"; };
-		D6DF13FC29E9FB76E6BA52715EF0C7EB /* grpclb_channel_secure.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpclb_channel_secure.cc; path = src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc; sourceTree = "<group>"; };
+		D6DF13FC29E9FB76E6BA52715EF0C7EB /* grpclb_channel_secure.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpclb_channel_secure.cc; path = src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc; sourceTree = "<group>"; };
 		D702F420D90311B64051B1BE79EA7B95 /* bdp_estimator.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = bdp_estimator.h; path = src/core/lib/transport/bdp_estimator.h; sourceTree = "<group>"; };
 		D722DDDF6CF7F02598C1C4ABFE21A549 /* altscontext.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = altscontext.upb.h; path = "src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h"; sourceTree = "<group>"; };
-		D72501A77A35B5B61E7CE6AC440A8DAD /* x_exten.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x_exten.c; path = src/crypto/x509/x_exten.c; sourceTree = "<group>"; };
-		D72C570BE5623BCA81B83741848BC6F4 /* mutation_batch_result.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = mutation_batch_result.cc; path = Firestore/core/src/model/mutation_batch_result.cc; sourceTree = "<group>"; };
-		D739B5CBFC5196BA6EB999B6E669D340 /* alts_security_connector.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alts_security_connector.cc; path = src/core/lib/security/security_connector/alts/alts_security_connector.cc; sourceTree = "<group>"; };
+		D72501A77A35B5B61E7CE6AC440A8DAD /* x_exten.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x_exten.c; path = src/crypto/x509/x_exten.c; sourceTree = "<group>"; };
+		D72C570BE5623BCA81B83741848BC6F4 /* mutation_batch_result.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = mutation_batch_result.cc; path = Firestore/core/src/model/mutation_batch_result.cc; sourceTree = "<group>"; };
+		D739B5CBFC5196BA6EB999B6E669D340 /* alts_security_connector.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alts_security_connector.cc; path = src/core/lib/security/security_connector/alts/alts_security_connector.cc; sourceTree = "<group>"; };
 		D73A3B3F216910C630BEF47A11B107A1 /* FIRAuth.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuth.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRAuth.h; sourceTree = "<group>"; };
-		D779F6EFA1DEECB33679B234DF3B7C50 /* authority.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = authority.cc; path = src/core/ext/transport/chttp2/client/authority.cc; sourceTree = "<group>"; };
-		D7B6A6F481D1EC647373A0314DD3BD1E /* struct.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = struct.upb.c; path = "src/core/ext/upb-generated/google/protobuf/struct.upb.c"; sourceTree = "<group>"; };
+		D779F6EFA1DEECB33679B234DF3B7C50 /* authority.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = authority.cc; path = src/core/ext/transport/chttp2/client/authority.cc; sourceTree = "<group>"; };
+		D7B6A6F481D1EC647373A0314DD3BD1E /* struct.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = struct.upb.c; path = "src/core/ext/upb-generated/google/protobuf/struct.upb.c"; sourceTree = "<group>"; };
 		D7CEFD180812FE130F5680076133EF3C /* FIRPhoneMultiFactorGenerator.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRPhoneMultiFactorGenerator.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRPhoneMultiFactorGenerator.h; sourceTree = "<group>"; };
 		D7F1904AC5B5125634ED0E1CCA7CB2B8 /* create_channel_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = create_channel_impl.h; path = include/grpcpp/create_channel_impl.h; sourceTree = "<group>"; };
-		D823640CE1F9FC9F51957B7B692A99FD /* spinlock_akaros.inc */ = {isa = PBXFileReference; includeInIndex = 1; name = spinlock_akaros.inc; path = absl/base/internal/spinlock_akaros.inc; sourceTree = "<group>"; };
+		D823640CE1F9FC9F51957B7B692A99FD /* spinlock_akaros.inc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.pascal; name = spinlock_akaros.inc; path = absl/base/internal/spinlock_akaros.inc; sourceTree = "<group>"; };
 		D8401F07E5D76083CDFA0A688E4D991A /* endpoint.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = endpoint.h; path = src/core/lib/iomgr/endpoint.h; sourceTree = "<group>"; };
 		D8423C79C8E27354BC4AF17B5E9E38AE /* filter.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = filter.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.h"; sourceTree = "<group>"; };
 		D88EE21AB5355E511B20232D02B441B2 /* api_listener.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = api_listener.upb.h; path = "src/core/ext/upb-generated/envoy/config/listener/v2/api_listener.upb.h"; sourceTree = "<group>"; };
-		D89A781A8CE03BE7787BFC14966EA748 /* view_snapshot.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = view_snapshot.cc; path = Firestore/core/src/core/view_snapshot.cc; sourceTree = "<group>"; };
+		D89A781A8CE03BE7787BFC14966EA748 /* view_snapshot.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = view_snapshot.cc; path = Firestore/core/src/core/view_snapshot.cc; sourceTree = "<group>"; };
 		D89E7AA5132876DEDAE90B2FD6646EDD /* cmac.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = cmac.h; path = src/include/openssl/cmac.h; sourceTree = "<group>"; };
 		D8B2C292A30F608E39B15F6E2DBFDB39 /* string.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = string.h; path = src/core/lib/gpr/string.h; sourceTree = "<group>"; };
-		D8BA13BF0588D244A85C09D027114FBF /* tcp_server_utils_posix_noifaddrs.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tcp_server_utils_posix_noifaddrs.cc; path = src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc; sourceTree = "<group>"; };
-		D8CCDFFF24D230F4B9DA69DB23899E4C /* cpu-ppc64le.c */ = {isa = PBXFileReference; includeInIndex = 1; name = "cpu-ppc64le.c"; path = "src/crypto/cpu-ppc64le.c"; sourceTree = "<group>"; };
-		D8CECB6B044A5F29A94ED72900F881AA /* connectivity_monitor.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = connectivity_monitor.cc; path = Firestore/core/src/remote/connectivity_monitor.cc; sourceTree = "<group>"; };
+		D8BA13BF0588D244A85C09D027114FBF /* tcp_server_utils_posix_noifaddrs.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tcp_server_utils_posix_noifaddrs.cc; path = src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc; sourceTree = "<group>"; };
+		D8CCDFFF24D230F4B9DA69DB23899E4C /* cpu-ppc64le.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = "cpu-ppc64le.c"; path = "src/crypto/cpu-ppc64le.c"; sourceTree = "<group>"; };
+		D8CECB6B044A5F29A94ED72900F881AA /* connectivity_monitor.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = connectivity_monitor.cc; path = Firestore/core/src/remote/connectivity_monitor.cc; sourceTree = "<group>"; };
 		D8FCF03081479DDC266EE11DE44EF8E8 /* create_channel_internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = create_channel_internal.h; path = src/cpp/client/create_channel_internal.h; sourceTree = "<group>"; };
 		D9140A6E4D31304FAF567929F15AE860 /* uri_parser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = uri_parser.h; path = src/core/lib/uri/uri_parser.h; sourceTree = "<group>"; };
-		D918F16E4D0286F05A3CEA3590258A74 /* server_cc.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = server_cc.cc; path = src/cpp/server/server_cc.cc; sourceTree = "<group>"; };
+		D918F16E4D0286F05A3CEA3590258A74 /* server_cc.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = server_cc.cc; path = src/cpp/server/server_cc.cc; sourceTree = "<group>"; };
 		D9244A341B8A3A3C826398F2B7F261CB /* GTMSessionUploadFetcher.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GTMSessionUploadFetcher.h; path = Source/GTMSessionUploadFetcher.h; sourceTree = "<group>"; };
-		D93CF11161B87F23A506B67636028B31 /* load_balancer.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = load_balancer.upb.c; path = "src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c"; sourceTree = "<group>"; };
+		D93CF11161B87F23A506B67636028B31 /* load_balancer.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = load_balancer.upb.c; path = "src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c"; sourceTree = "<group>"; };
 		D974E8886708C8C09B017E803922DE8A /* channel_stack.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channel_stack.h; path = src/core/lib/channel/channel_stack.h; sourceTree = "<group>"; };
-		D97D36A8925F4A3E7BEABA754D27DD3B /* by_file.c */ = {isa = PBXFileReference; includeInIndex = 1; name = by_file.c; path = src/crypto/x509/by_file.c; sourceTree = "<group>"; };
+		D97D36A8925F4A3E7BEABA754D27DD3B /* by_file.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = by_file.c; path = src/crypto/x509/by_file.c; sourceTree = "<group>"; };
 		D980E2A80C1B922CD06FF196960BA26B /* FIRAuthWebViewController.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthWebViewController.h; path = FirebaseAuth/Sources/Utilities/FIRAuthWebViewController.h; sourceTree = "<group>"; };
 		D99758AAA16204B14B0D0624301F4FBA /* FBLPromise+Testing.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "FBLPromise+Testing.m"; path = "Sources/FBLPromises/FBLPromise+Testing.m"; sourceTree = "<group>"; };
-		D99C8F7374CAABA2EE580D026AA6F2A3 /* env_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = env_windows.cc; path = src/core/lib/gpr/env_windows.cc; sourceTree = "<group>"; };
-		D9AE88765553557D371E5DA113649511 /* v3_ncons.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_ncons.c; path = src/crypto/x509v3/v3_ncons.c; sourceTree = "<group>"; };
+		D99C8F7374CAABA2EE580D026AA6F2A3 /* env_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = env_windows.cc; path = src/core/lib/gpr/env_windows.cc; sourceTree = "<group>"; };
+		D9AE88765553557D371E5DA113649511 /* v3_ncons.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_ncons.c; path = src/crypto/x509v3/v3_ncons.c; sourceTree = "<group>"; };
 		D9CE6799C05067119A95F796BD2AE3C0 /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/err/internal.h; sourceTree = "<group>"; };
-		D9DC3D3DBC2D5AAD030BF95CC6E81A18 /* log_writer.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = log_writer.cc; path = db/log_writer.cc; sourceTree = "<group>"; };
+		D9DC3D3DBC2D5AAD030BF95CC6E81A18 /* log_writer.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = log_writer.cc; path = db/log_writer.cc; sourceTree = "<group>"; };
 		D9DCAB0B674D8EFA9F2753D1FF16A185 /* FIRWithdrawMFAResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRWithdrawMFAResponse.h; path = FirebaseAuth/Sources/Backend/RPC/MultiFactor/Unenroll/FIRWithdrawMFAResponse.h; sourceTree = "<group>"; };
-		D9E26FE8C899EF239B5AB55D5691A9A4 /* validate_service_config.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = validate_service_config.cc; path = src/cpp/common/validate_service_config.cc; sourceTree = "<group>"; };
+		D9E26FE8C899EF239B5AB55D5691A9A4 /* validate_service_config.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = validate_service_config.cc; path = src/cpp/common/validate_service_config.cc; sourceTree = "<group>"; };
 		DA03AE7F373A930821A803397118DA7F /* FIRMultiFactorResolver.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRMultiFactorResolver.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRMultiFactorResolver.h; sourceTree = "<group>"; };
 		DA07EC34DB8D721509A6330D957C3E24 /* GDTCORRegistrar.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCORRegistrar.m; path = GoogleDataTransport/GDTCORLibrary/GDTCORRegistrar.m; sourceTree = "<group>"; };
 		DA123304E1D1EC38667A7D97B01132E9 /* low_level_alloc.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = low_level_alloc.h; path = absl/base/internal/low_level_alloc.h; sourceTree = "<group>"; };
 		DA5535EA21D66CA677D6E3E5C355CCA3 /* FBLPromise+Validate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FBLPromise+Validate.h"; path = "Sources/FBLPromises/include/FBLPromise+Validate.h"; sourceTree = "<group>"; };
-		DA6E618BA2B69B0C5EDBCF15EAC6C060 /* health_check_client.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = health_check_client.cc; path = src/core/ext/filters/client_channel/health/health_check_client.cc; sourceTree = "<group>"; };
+		DA6E618BA2B69B0C5EDBCF15EAC6C060 /* health_check_client.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = health_check_client.cc; path = src/core/ext/filters/client_channel/health/health_check_client.cc; sourceTree = "<group>"; };
 		DA74011731DAC5451920825B1B11BAD9 /* completion_queue_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = completion_queue_impl.h; path = include/grpcpp/completion_queue_impl.h; sourceTree = "<group>"; };
 		DA9BD3E63C8031D14151C1AC97C1BBF8 /* extension.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = extension.h; path = absl/strings/internal/str_format/extension.h; sourceTree = "<group>"; };
 		DA9C738FFE99253A65400D4FC611FFA7 /* GoogleUtilities-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "GoogleUtilities-Info.plist"; sourceTree = "<group>"; };
-		DAC5FF2A0B2E7322CAFA65DD70328476 /* server_context.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = server_context.cc; path = src/cpp/server/server_context.cc; sourceTree = "<group>"; };
-		DACC3B2AE3A18E52935996C3F503AFCA /* div_extra.c */ = {isa = PBXFileReference; includeInIndex = 1; name = div_extra.c; path = src/crypto/fipsmodule/bn/div_extra.c; sourceTree = "<group>"; };
-		DAF44A60DC76AB87421192E2CA664C8E /* gethostname_sysconf.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = gethostname_sysconf.cc; path = src/core/lib/iomgr/gethostname_sysconf.cc; sourceTree = "<group>"; };
+		DAC5FF2A0B2E7322CAFA65DD70328476 /* server_context.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = server_context.cc; path = src/cpp/server/server_context.cc; sourceTree = "<group>"; };
+		DACC3B2AE3A18E52935996C3F503AFCA /* div_extra.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = div_extra.c; path = src/crypto/fipsmodule/bn/div_extra.c; sourceTree = "<group>"; };
+		DAF44A60DC76AB87421192E2CA664C8E /* gethostname_sysconf.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = gethostname_sysconf.cc; path = src/core/lib/iomgr/gethostname_sysconf.cc; sourceTree = "<group>"; };
 		DAF5AB57F04922A26C6DA02366CF7AB5 /* propagation_bits.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = propagation_bits.h; path = include/grpc/impl/codegen/propagation_bits.h; sourceTree = "<group>"; };
-		DAF86AEA6C04949A483A0242644DB2DE /* rsa.c */ = {isa = PBXFileReference; includeInIndex = 1; name = rsa.c; path = src/crypto/fipsmodule/rsa/rsa.c; sourceTree = "<group>"; };
+		DAF86AEA6C04949A483A0242644DB2DE /* rsa.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = rsa.c; path = src/crypto/fipsmodule/rsa/rsa.c; sourceTree = "<group>"; };
 		DB12BF94A07DF4A56DCFB19A00375CE3 /* FIRHeartbeatInfo.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRHeartbeatInfo.m; path = FirebaseCore/Sources/FIRHeartbeatInfo.m; sourceTree = "<group>"; };
-		DB29F378263A80CA69862812618D2CB2 /* http_connection_manager.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = http_connection_manager.upb.c; path = "src/core/ext/upb-generated/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.upb.c"; sourceTree = "<group>"; };
+		DB29F378263A80CA69862812618D2CB2 /* http_connection_manager.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = http_connection_manager.upb.c; path = "src/core/ext/upb-generated/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.upb.c"; sourceTree = "<group>"; };
 		DB310C3E11096D5D4E2D298EFBCEA05C /* method_handler_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = method_handler_impl.h; path = include/grpcpp/impl/method_handler_impl.h; sourceTree = "<group>"; };
-		DB3BCE0DB87EC37BA39A45AF40AA65BB /* snapshots_in_sync_listener_registration.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = snapshots_in_sync_listener_registration.cc; path = Firestore/core/src/api/snapshots_in_sync_listener_registration.cc; sourceTree = "<group>"; };
+		DB3BCE0DB87EC37BA39A45AF40AA65BB /* snapshots_in_sync_listener_registration.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = snapshots_in_sync_listener_registration.cc; path = Firestore/core/src/api/snapshots_in_sync_listener_registration.cc; sourceTree = "<group>"; };
 		DB41896114FAB74B684761B84D1B83EE /* create_channel_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = create_channel_posix.h; path = include/grpcpp/create_channel_posix.h; sourceTree = "<group>"; };
-		DB43E83E24DF3068AC890BC7A6EB2E67 /* a_d2i_fp.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_d2i_fp.c; path = src/crypto/asn1/a_d2i_fp.c; sourceTree = "<group>"; };
+		DB43E83E24DF3068AC890BC7A6EB2E67 /* a_d2i_fp.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_d2i_fp.c; path = src/crypto/asn1/a_d2i_fp.c; sourceTree = "<group>"; };
 		DB4E4C479D2FAF6823AB264641FA664F /* varint.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = varint.h; path = src/core/ext/transport/chttp2/transport/varint.h; sourceTree = "<group>"; };
 		DB7DE017920A41EB4EAA1A2891784135 /* create_auth_context.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = create_auth_context.h; path = include/grpcpp/impl/codegen/create_auth_context.h; sourceTree = "<group>"; };
 		DB845CB6EC6013EF844D271D2994F942 /* alts_grpc_record_protocol_common.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_grpc_record_protocol_common.h; path = src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.h; sourceTree = "<group>"; };
-		DB8FB6938FA9123F29257DFAA90CE26D /* cds.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = cds.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/cds.upb.c"; sourceTree = "<group>"; };
+		DB8FB6938FA9123F29257DFAA90CE26D /* cds.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = cds.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/cds.upb.c"; sourceTree = "<group>"; };
 		DB910ED89F5F96C43C5C949C45CDFAB2 /* Firebase.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Firebase.h; path = CoreOnly/Sources/Firebase.h; sourceTree = "<group>"; };
 		DB91A20BACE89D4414EA7D258DD64FD0 /* FIRSecureTokenService.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRSecureTokenService.h; path = FirebaseAuth/Sources/SystemService/FIRSecureTokenService.h; sourceTree = "<group>"; };
-		DB948AAD134FDF51BBC47B4B0607A01E /* orca_load_report.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = orca_load_report.upb.c; path = "src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c"; sourceTree = "<group>"; };
+		DB948AAD134FDF51BBC47B4B0607A01E /* orca_load_report.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = orca_load_report.upb.c; path = "src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c"; sourceTree = "<group>"; };
 		DB94ECD9DA5B1803C67213BA7F4BD6D8 /* FIRAuthTokenResult.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthTokenResult.m; path = FirebaseAuth/Sources/Auth/FIRAuthTokenResult.m; sourceTree = "<group>"; };
-		DBF0A9CDF31904419EB491577AC77C5B /* settings.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = settings.cc; path = Firestore/core/src/api/settings.cc; sourceTree = "<group>"; };
+		DBF0A9CDF31904419EB491577AC77C5B /* settings.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = settings.cc; path = Firestore/core/src/api/settings.cc; sourceTree = "<group>"; };
 		DC0634ED0EAF59AF1F149941D7A4B377 /* trace.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = trace.h; path = src/core/lib/debug/trace.h; sourceTree = "<group>"; };
 		DC2AE42DCA513F28B9404688CEA4B3C2 /* alts_frame_protector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_frame_protector.h; path = src/core/tsi/alts/frame_protector/alts_frame_protector.h; sourceTree = "<group>"; };
-		DC417C1A8F18A0ECFDD7B0D90D1FC62C /* block.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = block.cc; path = table/block.cc; sourceTree = "<group>"; };
-		DC6A05A10DA222B79B40F2FDEB889971 /* address.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = address.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/core/address.upb.c"; sourceTree = "<group>"; };
-		DC6CB740C2A5912F4383CE21FF0871E7 /* leveldb_target_cache.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = leveldb_target_cache.cc; path = Firestore/core/src/local/leveldb_target_cache.cc; sourceTree = "<group>"; };
+		DC417C1A8F18A0ECFDD7B0D90D1FC62C /* block.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = block.cc; path = table/block.cc; sourceTree = "<group>"; };
+		DC6A05A10DA222B79B40F2FDEB889971 /* address.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = address.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/core/address.upb.c"; sourceTree = "<group>"; };
+		DC6CB740C2A5912F4383CE21FF0871E7 /* leveldb_target_cache.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = leveldb_target_cache.cc; path = Firestore/core/src/local/leveldb_target_cache.cc; sourceTree = "<group>"; };
 		DC8F4B339F5EEF00B7A0619B62F50178 /* FIRAuthProtoFinalizeMFAPhoneResponseInfo.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthProtoFinalizeMFAPhoneResponseInfo.h; path = FirebaseAuth/Sources/Backend/RPC/Proto/Phone/FIRAuthProtoFinalizeMFAPhoneResponseInfo.h; sourceTree = "<group>"; };
 		DCAF047B3323E95637AF394966C0DC5B /* http_client_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = http_client_filter.h; path = src/core/ext/filters/http/client/http_client_filter.h; sourceTree = "<group>"; };
 		DCD578DA7051E99781CFB988B11CC6E6 /* gRPC-Core-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "gRPC-Core-prefix.pch"; sourceTree = "<group>"; };
 		DD2E831BDCF3CB932F227210DEBA1163 /* ripemd.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ripemd.h; path = src/include/openssl/ripemd.h; sourceTree = "<group>"; };
-		DD6AFD805711C2A9B695825BA5D46B37 /* arena.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = arena.cc; path = src/core/lib/gprpp/arena.cc; sourceTree = "<group>"; };
+		DD6AFD805711C2A9B695825BA5D46B37 /* arena.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = arena.cc; path = src/core/lib/gprpp/arena.cc; sourceTree = "<group>"; };
 		DD825CEED52D3DF5A0E83533C75FEC4B /* env_windows_test_helper.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = env_windows_test_helper.h; path = util/env_windows_test_helper.h; sourceTree = "<group>"; };
-		DD8A9A99362E3CBB4DF7E01E99E7B83A /* exponential_biased.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = exponential_biased.cc; path = absl/base/internal/exponential_biased.cc; sourceTree = "<group>"; };
-		DD9581BE883AE03F17487249D416749F /* leveldb_lru_reference_delegate.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = leveldb_lru_reference_delegate.cc; path = Firestore/core/src/local/leveldb_lru_reference_delegate.cc; sourceTree = "<group>"; };
+		DD8A9A99362E3CBB4DF7E01E99E7B83A /* exponential_biased.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = exponential_biased.cc; path = absl/base/internal/exponential_biased.cc; sourceTree = "<group>"; };
+		DD9581BE883AE03F17487249D416749F /* leveldb_lru_reference_delegate.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = leveldb_lru_reference_delegate.cc; path = Firestore/core/src/local/leveldb_lru_reference_delegate.cc; sourceTree = "<group>"; };
 		DDB1F68E3090DFAB963A5D13CD1A1625 /* client_channel_factory.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_channel_factory.h; path = src/core/ext/filters/client_channel/client_channel_factory.h; sourceTree = "<group>"; };
 		DDBC0745589A3338330294515FE9E934 /* alts_grpc_privacy_integrity_record_protocol.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_grpc_privacy_integrity_record_protocol.h; path = src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.h; sourceTree = "<group>"; };
 		DE125926E484BAF9435BCE7273380C85 /* GULAppEnvironmentUtil.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GULAppEnvironmentUtil.m; path = GoogleUtilities/Environment/third_party/GULAppEnvironmentUtil.m; sourceTree = "<group>"; };
 		DE2C0A6CF98B1BED616F78C4BCAC43DB /* pollset_custom.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pollset_custom.h; path = src/core/lib/iomgr/pollset_custom.h; sourceTree = "<group>"; };
-		DE30987AB512C683BF8FC9EE3851ED6A /* int128_no_intrinsic.inc */ = {isa = PBXFileReference; includeInIndex = 1; name = int128_no_intrinsic.inc; path = absl/numeric/int128_no_intrinsic.inc; sourceTree = "<group>"; };
+		DE30987AB512C683BF8FC9EE3851ED6A /* int128_no_intrinsic.inc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.pascal; name = int128_no_intrinsic.inc; path = absl/numeric/int128_no_intrinsic.inc; sourceTree = "<group>"; };
 		DE31EB0BC88AFF1E80766A9B9CA04510 /* export.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = export.h; path = include/leveldb/export.h; sourceTree = "<group>"; };
 		DE870FD51E747809A6D571B417553E09 /* GULKeychainStorage.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GULKeychainStorage.m; path = GoogleUtilities/Environment/SecureStorage/GULKeychainStorage.m; sourceTree = "<group>"; };
 		DEA0D923B5AEAD3B0BDA0408AF1C6692 /* cache.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = cache.h; path = include/leveldb/cache.h; sourceTree = "<group>"; };
 		DEAD3BAC81F45A1B5AF4AC10F29A04C7 /* FIRStorageConstants.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageConstants.h; path = FirebaseStorage/Sources/Public/FirebaseStorage/FIRStorageConstants.h; sourceTree = "<group>"; };
 		DED40CDD9B50CA0BCCA18E4B9F16ACF0 /* FIRComponentContainerInternal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRComponentContainerInternal.h; path = FirebaseCore/Sources/FIRComponentContainerInternal.h; sourceTree = "<group>"; };
-		DEED8B1CCD2599B2BED7F972D51E2B5D /* insecure_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = insecure_credentials.cc; path = src/cpp/client/insecure_credentials.cc; sourceTree = "<group>"; };
+		DEED8B1CCD2599B2BED7F972D51E2B5D /* insecure_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = insecure_credentials.cc; path = src/cpp/client/insecure_credentials.cc; sourceTree = "<group>"; };
 		DF05E79396404E70E81CADCD4FDEF08E /* optional.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = optional.h; path = src/core/lib/gprpp/optional.h; sourceTree = "<group>"; };
-		DF19844A1EF05AE5F3948475736AD0C9 /* discovery.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = discovery.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c"; sourceTree = "<group>"; };
+		DF19844A1EF05AE5F3948475736AD0C9 /* discovery.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = discovery.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c"; sourceTree = "<group>"; };
 		DF1D30368FBB4543EF622C78174C3A87 /* obj_dat.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = obj_dat.h; path = src/crypto/obj/obj_dat.h; sourceTree = "<group>"; };
 		DF2F2B73966C84C8965A40E0E4E3F752 /* FIRSignUpNewUserResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRSignUpNewUserResponse.h; path = FirebaseAuth/Sources/Backend/RPC/FIRSignUpNewUserResponse.h; sourceTree = "<group>"; };
-		DF40D87F55575AEE4A3F04483B3BC722 /* v3_cpols.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_cpols.c; path = src/crypto/x509v3/v3_cpols.c; sourceTree = "<group>"; };
-		DF50804C59D0B324280CABAC81AA3BDD /* document.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = document.nanopb.cc; path = Firestore/Protos/nanopb/google/firestore/v1/document.nanopb.cc; sourceTree = "<group>"; };
+		DF40D87F55575AEE4A3F04483B3BC722 /* v3_cpols.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_cpols.c; path = src/crypto/x509v3/v3_cpols.c; sourceTree = "<group>"; };
+		DF50804C59D0B324280CABAC81AA3BDD /* document.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = document.nanopb.cc; path = Firestore/Protos/nanopb/google/firestore/v1/document.nanopb.cc; sourceTree = "<group>"; };
 		DF55CC0EFF3FE24606C3A66B276BF374 /* generic_stub.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = generic_stub.h; path = include/grpcpp/generic/generic_stub.h; sourceTree = "<group>"; };
 		DF6E28B8D41FF33D65CCAE36C4356B46 /* FIRAuthWebUtils.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthWebUtils.m; path = FirebaseAuth/Sources/Utilities/FIRAuthWebUtils.m; sourceTree = "<group>"; };
 		DF8CD7C3B0D03BBCDABDBCDA3F342248 /* asn1_locl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = asn1_locl.h; path = src/crypto/asn1/asn1_locl.h; sourceTree = "<group>"; };
 		DF968E8FFD619E9BC3C430594911A32E /* buf.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = buf.h; path = src/include/openssl/buf.h; sourceTree = "<group>"; };
 		DF9E5659AA94B4C00D31B21E8D505765 /* db.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = db.h; path = include/leveldb/db.h; sourceTree = "<group>"; };
-		DFADC396693AE7A0E434C4A5A2932274 /* wrappers.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = wrappers.upb.c; path = "src/core/ext/upb-generated/google/protobuf/wrappers.upb.c"; sourceTree = "<group>"; };
+		DFADC396693AE7A0E434C4A5A2932274 /* wrappers.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = wrappers.upb.c; path = "src/core/ext/upb-generated/google/protobuf/wrappers.upb.c"; sourceTree = "<group>"; };
 		DFAFFCA12C3F95935866FEEEBDC0C549 /* async_generic_service.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = async_generic_service.h; path = include/grpcpp/impl/codegen/async_generic_service.h; sourceTree = "<group>"; };
-		DFD9FBE9C551F90CA470E4EAB9190CD5 /* handshake_server.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = handshake_server.cc; path = src/ssl/handshake_server.cc; sourceTree = "<group>"; };
+		DFD9FBE9C551F90CA470E4EAB9190CD5 /* handshake_server.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = handshake_server.cc; path = src/ssl/handshake_server.cc; sourceTree = "<group>"; };
 		DFDB6AC935B5A475022FDBF9B9EBBA96 /* connected_channel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = connected_channel.h; path = src/core/lib/channel/connected_channel.h; sourceTree = "<group>"; };
 		DFE0DB5D73B3EDDB469AEB602CCA0EC9 /* GDTCORConsoleLogger.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCORConsoleLogger.m; path = GoogleDataTransport/GDTCORLibrary/GDTCORConsoleLogger.m; sourceTree = "<group>"; };
-		DFE58A993F7C724EE79146561C47F5CA /* ssl_stat.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_stat.cc; path = src/ssl/ssl_stat.cc; sourceTree = "<group>"; };
+		DFE58A993F7C724EE79146561C47F5CA /* ssl_stat.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_stat.cc; path = src/ssl/ssl_stat.cc; sourceTree = "<group>"; };
 		E009517F468653F359A6521C6EA74ABF /* table.int.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = table.int.h; path = third_party/upb/upb/table.int.h; sourceTree = "<group>"; };
 		E0255E7C2273B6235131D10B36E2FD78 /* workaround_utils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = workaround_utils.h; path = src/core/ext/filters/workarounds/workaround_utils.h; sourceTree = "<group>"; };
-		E02CB3ABD33B8C83BEB75BB2630CD56A /* firestore_version.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = firestore_version.cc; path = Firestore/core/src/firestore_version.cc; sourceTree = "<group>"; };
+		E02CB3ABD33B8C83BEB75BB2630CD56A /* firestore_version.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = firestore_version.cc; path = Firestore/core/src/firestore_version.cc; sourceTree = "<group>"; };
 		E04653FED4519E82FD744669F5D17D2F /* FIRAuthRequestConfiguration.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthRequestConfiguration.m; path = FirebaseAuth/Sources/Backend/FIRAuthRequestConfiguration.m; sourceTree = "<group>"; };
-		E077565017FFFDA5E22131280A817F44 /* semantic_version.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = semantic_version.upb.c; path = "src/core/ext/upb-generated/envoy/type/semantic_version.upb.c"; sourceTree = "<group>"; };
+		E077565017FFFDA5E22131280A817F44 /* semantic_version.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = semantic_version.upb.c; path = "src/core/ext/upb-generated/envoy/type/semantic_version.upb.c"; sourceTree = "<group>"; };
 		E08F3C2F69466263E0E8AFC88BEBDC7C /* server_context_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_context_impl.h; path = include/grpcpp/impl/codegen/server_context_impl.h; sourceTree = "<group>"; };
-		E08F8C1598590FBD2BA9D06E361FF736 /* in_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = in_filter.cc; path = Firestore/core/src/core/in_filter.cc; sourceTree = "<group>"; };
+		E08F8C1598590FBD2BA9D06E361FF736 /* in_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = in_filter.cc; path = Firestore/core/src/core/in_filter.cc; sourceTree = "<group>"; };
 		E0B63C1625C5710BE51626B73856A8A3 /* FIRStorageReference_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageReference_Private.h; path = FirebaseStorage/Sources/FIRStorageReference_Private.h; sourceTree = "<group>"; };
 		E0C031E34B01FEF634688EAECD163289 /* FBLPromise+Wrap.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FBLPromise+Wrap.h"; path = "Sources/FBLPromises/include/FBLPromise+Wrap.h"; sourceTree = "<group>"; };
 		E0CE6EED783F9FE79DF6D352518C2D06 /* tls_credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tls_credentials.h; path = src/core/lib/security/credentials/tls/tls_credentials.h; sourceTree = "<group>"; };
-		E0D2364DB295233FF18CA6EE2FE25BBF /* call.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = call.cc; path = src/core/lib/surface/call.cc; sourceTree = "<group>"; };
-		E0E1E5633F17032C6E500FCDC4C6F2D5 /* x509_trs.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509_trs.c; path = src/crypto/x509/x509_trs.c; sourceTree = "<group>"; };
-		E0F34E71A73A47534493B893C32786FB /* ssl_buffer.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_buffer.cc; path = src/ssl/ssl_buffer.cc; sourceTree = "<group>"; };
+		E0D2364DB295233FF18CA6EE2FE25BBF /* call.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = call.cc; path = src/core/lib/surface/call.cc; sourceTree = "<group>"; };
+		E0E1E5633F17032C6E500FCDC4C6F2D5 /* x509_trs.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509_trs.c; path = src/crypto/x509/x509_trs.c; sourceTree = "<group>"; };
+		E0F34E71A73A47534493B893C32786FB /* ssl_buffer.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_buffer.cc; path = src/ssl/ssl_buffer.cc; sourceTree = "<group>"; };
 		E11BA785927741E9F06CD3A851ED57E2 /* FirebaseCoreDiagnostics.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FirebaseCoreDiagnostics.release.xcconfig; sourceTree = "<group>"; };
 		E12CA257A3845CDCACE289AB780C6CB8 /* ev_epollex_linux.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ev_epollex_linux.h; path = src/core/lib/iomgr/ev_epollex_linux.h; sourceTree = "<group>"; };
-		E13964AAADDC58A6B3D682552B1D510A /* block_builder.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = block_builder.cc; path = table/block_builder.cc; sourceTree = "<group>"; };
+		E13964AAADDC58A6B3D682552B1D510A /* block_builder.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = block_builder.cc; path = table/block_builder.cc; sourceTree = "<group>"; };
 		E14095D0FC7C2AC66F68153C31AB5467 /* client_channel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_channel.h; path = src/core/ext/filters/client_channel/client_channel.h; sourceTree = "<group>"; };
-		E15B8F7DDD4FCD72DD6BEA4228323722 /* alts_grpc_record_protocol_common.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alts_grpc_record_protocol_common.cc; path = src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc; sourceTree = "<group>"; };
+		E15B8F7DDD4FCD72DD6BEA4228323722 /* alts_grpc_record_protocol_common.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alts_grpc_record_protocol_common.cc; path = src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc; sourceTree = "<group>"; };
 		E1624F790A23D17A5C3598536B52674D /* error_internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = error_internal.h; path = src/core/lib/iomgr/error_internal.h; sourceTree = "<group>"; };
-		E1694FFB04B1155A22E18954AFC5A4A9 /* completion_queue.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = completion_queue.cc; path = src/core/lib/surface/completion_queue.cc; sourceTree = "<group>"; };
+		E1694FFB04B1155A22E18954AFC5A4A9 /* completion_queue.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = completion_queue.cc; path = src/core/lib/surface/completion_queue.cc; sourceTree = "<group>"; };
 		E172CFA0D71312C089100BC44084CB50 /* alts_tsi_handshaker_private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = alts_tsi_handshaker_private.h; path = src/core/tsi/alts/handshaker/alts_tsi_handshaker_private.h; sourceTree = "<group>"; };
-		E1971A02BB6249154B6C7BDB77B962D8 /* x_algor.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x_algor.c; path = src/crypto/x509/x_algor.c; sourceTree = "<group>"; };
-		E1D868AAC36F397B7BEB13D5493DB0E8 /* version_cc.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = version_cc.cc; path = src/cpp/common/version_cc.cc; sourceTree = "<group>"; };
-		E1EFE004A86E663E81697F65C207FBBD /* buffer_list.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = buffer_list.cc; path = src/core/lib/iomgr/buffer_list.cc; sourceTree = "<group>"; };
+		E1971A02BB6249154B6C7BDB77B962D8 /* x_algor.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x_algor.c; path = src/crypto/x509/x_algor.c; sourceTree = "<group>"; };
+		E1D868AAC36F397B7BEB13D5493DB0E8 /* version_cc.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = version_cc.cc; path = src/cpp/common/version_cc.cc; sourceTree = "<group>"; };
+		E1EFE004A86E663E81697F65C207FBBD /* buffer_list.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = buffer_list.cc; path = src/core/lib/iomgr/buffer_list.cc; sourceTree = "<group>"; };
 		E1F0D4163167EAB0C013254E5B821DC5 /* client_unary_call.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_unary_call.h; path = include/grpcpp/impl/client_unary_call.h; sourceTree = "<group>"; };
 		E21BA7E3A38A366DD735B332F8DB1293 /* FIRVerifyCustomTokenRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRVerifyCustomTokenRequest.m; path = FirebaseAuth/Sources/Backend/RPC/FIRVerifyCustomTokenRequest.m; sourceTree = "<group>"; };
 		E225C24A4DD00A9805EC2A260652924E /* workaround_cronet_compression_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = workaround_cronet_compression_filter.h; path = src/core/ext/filters/workarounds/workaround_cronet_compression_filter.h; sourceTree = "<group>"; };
 		E22C2F4B43ED4FAACB63842EEEF91769 /* charconv_parse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = charconv_parse.h; path = absl/strings/internal/charconv_parse.h; sourceTree = "<group>"; };
-		E22C870082E8E71AD65F8553902AF392 /* cct.nanopb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = cct.nanopb.c; path = GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.c; sourceTree = "<group>"; };
+		E22C870082E8E71AD65F8553902AF392 /* cct.nanopb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = cct.nanopb.c; path = GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.c; sourceTree = "<group>"; };
 		E24163D49B752EF190006693952EFDF0 /* FBLPromise+Then.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FBLPromise+Then.h"; path = "Sources/FBLPromises/include/FBLPromise+Then.h"; sourceTree = "<group>"; };
-		E24E47B4865FA8BC61F5B1D018BE0E7B /* pb_encode.c */ = {isa = PBXFileReference; includeInIndex = 1; path = pb_encode.c; sourceTree = "<group>"; };
-		E26903AEFA5BA5BC80C5D628C69DF364 /* s3_both.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = s3_both.cc; path = src/ssl/s3_both.cc; sourceTree = "<group>"; };
-		E2717E16A21B984069A3AF17C8B8E0BD /* rsa_print.c */ = {isa = PBXFileReference; includeInIndex = 1; name = rsa_print.c; path = src/crypto/rsa_extra/rsa_print.c; sourceTree = "<group>"; };
-		E278322A52D7360FC32AE9296E71BFBD /* handshaker.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = handshaker.upb.c; path = "src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c"; sourceTree = "<group>"; };
-		E28906AFBE0B0EB4F057AB83998C38F8 /* grpc_plugin_registry.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_plugin_registry.cc; path = src/core/plugin_registry/grpc_plugin_registry.cc; sourceTree = "<group>"; };
-		E2A308CF4FF2158FD83E870D6031510B /* format.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = format.cc; path = table/format.cc; sourceTree = "<group>"; };
-		E2B63D462DB7F827C4B11FD51E4F8E2D /* FirebaseCore.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = FirebaseCore.framework; path = FirebaseCore.framework; sourceTree = BUILT_PRODUCTS_DIR; };
-		E2BE1B6B16D8EC3406554ACE96E83806 /* local_subchannel_pool.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = local_subchannel_pool.cc; path = src/core/ext/filters/client_channel/local_subchannel_pool.cc; sourceTree = "<group>"; };
+		E24E47B4865FA8BC61F5B1D018BE0E7B /* pb_encode.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = pb_encode.c; sourceTree = "<group>"; };
+		E26903AEFA5BA5BC80C5D628C69DF364 /* s3_both.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = s3_both.cc; path = src/ssl/s3_both.cc; sourceTree = "<group>"; };
+		E2717E16A21B984069A3AF17C8B8E0BD /* rsa_print.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = rsa_print.c; path = src/crypto/rsa_extra/rsa_print.c; sourceTree = "<group>"; };
+		E278322A52D7360FC32AE9296E71BFBD /* handshaker.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = handshaker.upb.c; path = "src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c"; sourceTree = "<group>"; };
+		E28906AFBE0B0EB4F057AB83998C38F8 /* grpc_plugin_registry.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_plugin_registry.cc; path = src/core/plugin_registry/grpc_plugin_registry.cc; sourceTree = "<group>"; };
+		E2A308CF4FF2158FD83E870D6031510B /* format.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = format.cc; path = table/format.cc; sourceTree = "<group>"; };
+		E2B63D462DB7F827C4B11FD51E4F8E2D /* FirebaseCore.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FirebaseCore.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		E2BE1B6B16D8EC3406554ACE96E83806 /* local_subchannel_pool.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = local_subchannel_pool.cc; path = src/core/ext/filters/client_channel/local_subchannel_pool.cc; sourceTree = "<group>"; };
 		E2C11556DED658764BB3FAE86C385138 /* gogo.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = gogo.upb.h; path = "src/core/ext/upb-generated/gogoproto/gogo.upb.h"; sourceTree = "<group>"; };
-		E2FA161A666487B38F92CE0B61185635 /* memory_target_cache.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = memory_target_cache.cc; path = Firestore/core/src/local/memory_target_cache.cc; sourceTree = "<group>"; };
+		E2FA161A666487B38F92CE0B61185635 /* memory_target_cache.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = memory_target_cache.cc; path = Firestore/core/src/local/memory_target_cache.cc; sourceTree = "<group>"; };
 		E2FFE077FA8C22E0422A3547C09F74F0 /* FIRDependency.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRDependency.h; path = FirebaseCore/Sources/Private/FIRDependency.h; sourceTree = "<group>"; };
 		E3457104479EF469633FC20ED8D2E827 /* FirebaseFirestore-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "FirebaseFirestore-umbrella.h"; sourceTree = "<group>"; };
 		E3665E0B577CA0AF54CEE9AC029B1C22 /* slice_buffer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = slice_buffer.h; path = include/grpc/slice_buffer.h; sourceTree = "<group>"; };
 		E36C31086F8BCC8720748E0B12B1BFAE /* raw_logging.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = raw_logging.h; path = absl/base/internal/raw_logging.h; sourceTree = "<group>"; };
 		E38660457AEAA44CFBE4E7E17769193F /* tcp_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tcp_posix.h; path = src/core/lib/iomgr/tcp_posix.h; sourceTree = "<group>"; };
 		E3B293855F07FF97DFE786CCA8E70D60 /* FIRSetAccountInfoResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRSetAccountInfoResponse.h; path = FirebaseAuth/Sources/Backend/RPC/FIRSetAccountInfoResponse.h; sourceTree = "<group>"; };
-		E3B69A4CDCD68398CE82DBAA0113470A /* rand.c */ = {isa = PBXFileReference; includeInIndex = 1; name = rand.c; path = src/crypto/fipsmodule/rand/rand.c; sourceTree = "<group>"; };
+		E3B69A4CDCD68398CE82DBAA0113470A /* rand.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = rand.c; path = src/crypto/fipsmodule/rand/rand.c; sourceTree = "<group>"; };
 		E3D8315182C7346A55A44ABC6BD9576A /* atm_gcc_sync.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = atm_gcc_sync.h; path = include/grpc/support/atm_gcc_sync.h; sourceTree = "<group>"; };
-		E3FD71834F10C20E9274ECBDCF219CFB /* slice_intern.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = slice_intern.cc; path = src/core/lib/slice/slice_intern.cc; sourceTree = "<group>"; };
-		E409B46F744C3E2C0A6779FEDC29C22A /* status_metadata.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = status_metadata.cc; path = src/core/lib/transport/status_metadata.cc; sourceTree = "<group>"; };
-		E41E1480EA09AFBA16B46E799843232B /* pollset_set_custom.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = pollset_set_custom.cc; path = src/core/lib/iomgr/pollset_set_custom.cc; sourceTree = "<group>"; };
-		E43748FE81518F29C973BC12C0A64BA3 /* gcd.c */ = {isa = PBXFileReference; includeInIndex = 1; name = gcd.c; path = src/crypto/fipsmodule/bn/gcd.c; sourceTree = "<group>"; };
+		E3FD71834F10C20E9274ECBDCF219CFB /* slice_intern.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = slice_intern.cc; path = src/core/lib/slice/slice_intern.cc; sourceTree = "<group>"; };
+		E409B46F744C3E2C0A6779FEDC29C22A /* status_metadata.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = status_metadata.cc; path = src/core/lib/transport/status_metadata.cc; sourceTree = "<group>"; };
+		E41E1480EA09AFBA16B46E799843232B /* pollset_set_custom.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = pollset_set_custom.cc; path = src/core/lib/iomgr/pollset_set_custom.cc; sourceTree = "<group>"; };
+		E43748FE81518F29C973BC12C0A64BA3 /* gcd.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = gcd.c; path = src/crypto/fipsmodule/bn/gcd.c; sourceTree = "<group>"; };
 		E43E25DE2D5CF52F67BB01DDD854225F /* completion_queue_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = completion_queue_impl.h; path = include/grpcpp/impl/codegen/completion_queue_impl.h; sourceTree = "<group>"; };
-		E444F8A9402B3D2F75166E57BE65685D /* a_octet.c */ = {isa = PBXFileReference; includeInIndex = 1; name = a_octet.c; path = src/crypto/asn1/a_octet.c; sourceTree = "<group>"; };
+		E444F8A9402B3D2F75166E57BE65685D /* a_octet.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = a_octet.c; path = src/crypto/asn1/a_octet.c; sourceTree = "<group>"; };
 		E47C3717CD5892C3527A9C1DD2C438EB /* curve25519_tables.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = curve25519_tables.h; path = src/third_party/fiat/curve25519_tables.h; sourceTree = "<group>"; };
-		E4CE57EF085AB90AA408F74F9CBA56EF /* cpu_iphone.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = cpu_iphone.cc; path = src/core/lib/gpr/cpu_iphone.cc; sourceTree = "<group>"; };
+		E4CE57EF085AB90AA408F74F9CBA56EF /* cpu_iphone.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = cpu_iphone.cc; path = src/core/lib/gpr/cpu_iphone.cc; sourceTree = "<group>"; };
 		E4D2C36AD3C4BD84190D26C35F08A9DC /* FIRStorageListTask.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRStorageListTask.m; path = FirebaseStorage/Sources/FIRStorageListTask.m; sourceTree = "<group>"; };
 		E4E0FBDFF9BB545A377391C85F4FBFB0 /* client_load_reporting_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_load_reporting_filter.h; path = src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h; sourceTree = "<group>"; };
 		E52EDC7664D1D64CE305F6805F073A1D /* FIRAuthStoredUserManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthStoredUserManager.h; path = FirebaseAuth/Sources/SystemService/FIRAuthStoredUserManager.h; sourceTree = "<group>"; };
 		E56051D3775701D3351AB03AC2F16DE4 /* FIRLogger.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRLogger.h; path = FirebaseCore/Sources/Private/FIRLogger.h; sourceTree = "<group>"; };
 		E5AD8A36A02D4A3C78F211F4220E96AF /* block_annotate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = block_annotate.h; path = src/core/lib/iomgr/block_annotate.h; sourceTree = "<group>"; };
-		E5B323A793E1C9D2F34DCC62C494FE80 /* huffsyms.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = huffsyms.cc; path = src/core/ext/transport/chttp2/transport/huffsyms.cc; sourceTree = "<group>"; };
+		E5B323A793E1C9D2F34DCC62C494FE80 /* huffsyms.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = huffsyms.cc; path = src/core/ext/transport/chttp2/transport/huffsyms.cc; sourceTree = "<group>"; };
 		E5CCF7AB75F55D4D5BEFCC4A78FB3C55 /* chacha.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = chacha.h; path = src/include/openssl/chacha.h; sourceTree = "<group>"; };
 		E5E75B9DAA9738F1D36B48405AED1D19 /* any.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = any.h; path = absl/types/any.h; sourceTree = "<group>"; };
 		E5F3CDF810267DFD0BDC596C6767A813 /* status_util.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = status_util.h; path = src/core/lib/channel/status_util.h; sourceTree = "<group>"; };
-		E5FCEE60210B441B763D0F6B11B20334 /* time_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = time_posix.cc; path = src/core/lib/gpr/time_posix.cc; sourceTree = "<group>"; };
+		E5FCEE60210B441B763D0F6B11B20334 /* time_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = time_posix.cc; path = src/core/lib/gpr/time_posix.cc; sourceTree = "<group>"; };
 		E639F5DA45BFF7DD5A939FBFA104A951 /* sockaddr_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sockaddr_windows.h; path = src/core/lib/iomgr/sockaddr_windows.h; sourceTree = "<group>"; };
 		E64054ECD45811F582382D20377374DB /* local_transport_security.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = local_transport_security.h; path = src/core/tsi/local_transport_security.h; sourceTree = "<group>"; };
 		E64F2CE5A155FF449BC9E6433832710C /* pollset_set.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pollset_set.h; path = src/core/lib/iomgr/pollset_set.h; sourceTree = "<group>"; };
-		E654599725D63C399B46750FC98FC38A /* ssl_transcript.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_transcript.cc; path = src/ssl/ssl_transcript.cc; sourceTree = "<group>"; };
+		E654599725D63C399B46750FC98FC38A /* ssl_transcript.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_transcript.cc; path = src/ssl/ssl_transcript.cc; sourceTree = "<group>"; };
 		E6758BA3209C5213636ED46205197668 /* server_interceptor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_interceptor.h; path = include/grpcpp/impl/codegen/server_interceptor.h; sourceTree = "<group>"; };
-		E683BB1EB8CB5DA77F55159E6219D28B /* unix_sockets_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = unix_sockets_posix.cc; path = src/core/lib/iomgr/unix_sockets_posix.cc; sourceTree = "<group>"; };
+		E683BB1EB8CB5DA77F55159E6219D28B /* unix_sockets_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = unix_sockets_posix.cc; path = src/core/lib/iomgr/unix_sockets_posix.cc; sourceTree = "<group>"; };
 		E6AC9D03F27F9B8ADAA9843AD4B5BE96 /* cast.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = cast.h; path = src/include/openssl/cast.h; sourceTree = "<group>"; };
-		E6AEF7F25F56DC8633BD4239B947409C /* cbs.c */ = {isa = PBXFileReference; includeInIndex = 1; name = cbs.c; path = src/crypto/bytestring/cbs.c; sourceTree = "<group>"; };
-		E6BE6502BCBE61085941FB9214F07A3E /* x_crl.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x_crl.c; path = src/crypto/x509/x_crl.c; sourceTree = "<group>"; };
-		E6BEC24E35BBE7DF8A29549C0011A7DE /* port_undef.inc */ = {isa = PBXFileReference; includeInIndex = 1; name = port_undef.inc; path = third_party/upb/upb/port_undef.inc; sourceTree = "<group>"; };
-		E6C296F61DEDE32AF93F99E787C2B0DE /* tcp_server_utils_posix_common.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tcp_server_utils_posix_common.cc; path = src/core/lib/iomgr/tcp_server_utils_posix_common.cc; sourceTree = "<group>"; };
+		E6AEF7F25F56DC8633BD4239B947409C /* cbs.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = cbs.c; path = src/crypto/bytestring/cbs.c; sourceTree = "<group>"; };
+		E6BE6502BCBE61085941FB9214F07A3E /* x_crl.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x_crl.c; path = src/crypto/x509/x_crl.c; sourceTree = "<group>"; };
+		E6BEC24E35BBE7DF8A29549C0011A7DE /* port_undef.inc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.pascal; name = port_undef.inc; path = third_party/upb/upb/port_undef.inc; sourceTree = "<group>"; };
+		E6C296F61DEDE32AF93F99E787C2B0DE /* tcp_server_utils_posix_common.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tcp_server_utils_posix_common.cc; path = src/core/lib/iomgr/tcp_server_utils_posix_common.cc; sourceTree = "<group>"; };
 		E6E3B616DF5FC6088A787BD9077823C3 /* ssl_session.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl_session.h; path = src/core/tsi/ssl/session_cache/ssl_session.h; sourceTree = "<group>"; };
 		E6EFBE594532ECD490283F2E4628022F /* call_combiner.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = call_combiner.h; path = src/core/lib/iomgr/call_combiner.h; sourceTree = "<group>"; };
-		E6F68DE30C075D3CBC57C333496B7090 /* document_key.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = document_key.cc; path = Firestore/core/src/model/document_key.cc; sourceTree = "<group>"; };
+		E6F68DE30C075D3CBC57C333496B7090 /* document_key.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = document_key.cc; path = Firestore/core/src/model/document_key.cc; sourceTree = "<group>"; };
 		E7037DA2A488AC4131256C90CFEB3949 /* stats_data.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = stats_data.h; path = src/core/lib/debug/stats_data.h; sourceTree = "<group>"; };
-		E70D0D6FBF9211BD821CF04195E6E8A0 /* ssl_file.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_file.cc; path = src/ssl/ssl_file.cc; sourceTree = "<group>"; };
+		E70D0D6FBF9211BD821CF04195E6E8A0 /* ssl_file.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_file.cc; path = src/ssl/ssl_file.cc; sourceTree = "<group>"; };
 		E71A270CD47AE5FF67BE083C0FF76818 /* FIRSendVerificationCodeRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRSendVerificationCodeRequest.m; path = FirebaseAuth/Sources/Backend/RPC/FIRSendVerificationCodeRequest.m; sourceTree = "<group>"; };
-		E720E84A74B915D52BF1D792D84A9649 /* cache.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = cache.cc; path = util/cache.cc; sourceTree = "<group>"; };
+		E720E84A74B915D52BF1D792D84A9649 /* cache.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = cache.cc; path = util/cache.cc; sourceTree = "<group>"; };
 		E73B7382AF60AF5973E772EBD33766A8 /* FIRVersion.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRVersion.h; path = FirebaseCore/Sources/Public/FirebaseCore/FIRVersion.h; sourceTree = "<group>"; };
 		E74B12417452227DF12C598F746C7E81 /* gRPC-C++-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "gRPC-C++-dummy.m"; sourceTree = "<group>"; };
-		E756E2B1D3F0A0D58D3F7319D1A99A45 /* memutil.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = memutil.cc; path = absl/strings/internal/memutil.cc; sourceTree = "<group>"; };
+		E756E2B1D3F0A0D58D3F7319D1A99A45 /* memutil.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = memutil.cc; path = absl/strings/internal/memutil.cc; sourceTree = "<group>"; };
 		E76D2016713DD7A6B617E816D78B4304 /* spinlock.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = spinlock.h; path = src/core/lib/gpr/spinlock.h; sourceTree = "<group>"; };
 		E781DBDD2321BBE143F3618C23EBD8CB /* iomgr_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = iomgr_posix.h; path = src/core/lib/iomgr/iomgr_posix.h; sourceTree = "<group>"; };
 		E7851DEE39C80C80122DE2196D3587E8 /* pkcs7.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pkcs7.h; path = src/include/openssl/pkcs7.h; sourceTree = "<group>"; };
@@ -11238,21 +11239,21 @@
 		E79B19CCDAE5115561F00010F9FD189A /* pollset_set_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pollset_set_windows.h; path = src/core/lib/iomgr/pollset_set_windows.h; sourceTree = "<group>"; };
 		E79FB834E6AD09A8C01B64A8F8E27317 /* FIRFirestore.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRFirestore.h; path = Firestore/Source/Public/FirebaseFirestore/FIRFirestore.h; sourceTree = "<group>"; };
 		E7A81BBC6F4F11A4BB26E2EB22FF0049 /* FIRAuthInterop.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthInterop.h; path = Interop/Auth/Public/FIRAuthInterop.h; sourceTree = "<group>"; };
-		E7C1A66A44EE5F165F98148FA5E9B349 /* gogo.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = gogo.upb.c; path = "src/core/ext/upb-generated/gogoproto/gogo.upb.c"; sourceTree = "<group>"; };
-		E7DDA4B15615C6D16BFA577DE37D9B5E /* load_balancer_api.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = load_balancer_api.cc; path = src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc; sourceTree = "<group>"; };
-		E7E0E684DBF969C649FD3209C7733647 /* string_view.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = string_view.cc; path = absl/strings/string_view.cc; sourceTree = "<group>"; };
+		E7C1A66A44EE5F165F98148FA5E9B349 /* gogo.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = gogo.upb.c; path = "src/core/ext/upb-generated/gogoproto/gogo.upb.c"; sourceTree = "<group>"; };
+		E7DDA4B15615C6D16BFA577DE37D9B5E /* load_balancer_api.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = load_balancer_api.cc; path = src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc; sourceTree = "<group>"; };
+		E7E0E684DBF969C649FD3209C7733647 /* string_view.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = string_view.cc; path = absl/strings/string_view.cc; sourceTree = "<group>"; };
 		E7F374DC25A91E1DB9F31360D8DB31E9 /* FIRStartMFASignInResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStartMFASignInResponse.h; path = FirebaseAuth/Sources/Backend/RPC/MultiFactor/SignIn/FIRStartMFASignInResponse.h; sourceTree = "<group>"; };
 		E80EF190406A3FA3ED3B26C76D42ECE6 /* FIRGameCenterAuthProvider.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRGameCenterAuthProvider.m; path = FirebaseAuth/Sources/AuthProvider/GameCenter/FIRGameCenterAuthProvider.m; sourceTree = "<group>"; };
 		E8193689A4EAA2B779011EB273C32AB0 /* buffer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = buffer.h; path = src/include/openssl/buffer.h; sourceTree = "<group>"; };
 		E81D77324A6E8AA4294C324E9A112F0A /* variant.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = variant.h; path = absl/types/internal/variant.h; sourceTree = "<group>"; };
 		E829EFBF1FA0C57F6BDF0D71C971B221 /* FIRTwitterAuthProvider.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRTwitterAuthProvider.m; path = FirebaseAuth/Sources/AuthProvider/Twitter/FIRTwitterAuthProvider.m; sourceTree = "<group>"; };
 		E86FB9F685BA85347ADC754F34352CC3 /* FIRAuthDefaultUIDelegate.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthDefaultUIDelegate.m; path = FirebaseAuth/Sources/Utilities/FIRAuthDefaultUIDelegate.m; sourceTree = "<group>"; };
-		E89A54CC03D7C61B88BCD7C2B1812425 /* ssl_session_cache.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_session_cache.cc; path = src/core/tsi/ssl/session_cache/ssl_session_cache.cc; sourceTree = "<group>"; };
-		E89BC140EF4E4C275F6E1BB0434383ED /* pem_lib.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pem_lib.c; path = src/crypto/pem/pem_lib.c; sourceTree = "<group>"; };
-		E8BFB806E0D3E7B0970359079654F84B /* load_system_roots_fallback.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = load_system_roots_fallback.cc; path = src/core/lib/security/security_connector/load_system_roots_fallback.cc; sourceTree = "<group>"; };
+		E89A54CC03D7C61B88BCD7C2B1812425 /* ssl_session_cache.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_session_cache.cc; path = src/core/tsi/ssl/session_cache/ssl_session_cache.cc; sourceTree = "<group>"; };
+		E89BC140EF4E4C275F6E1BB0434383ED /* pem_lib.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pem_lib.c; path = src/crypto/pem/pem_lib.c; sourceTree = "<group>"; };
+		E8BFB806E0D3E7B0970359079654F84B /* load_system_roots_fallback.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = load_system_roots_fallback.cc; path = src/core/lib/security/security_connector/load_system_roots_fallback.cc; sourceTree = "<group>"; };
 		E8DC7F02EC6058C47B5230AF43CE3045 /* FirebaseFirestore.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FirebaseFirestore.debug.xcconfig; sourceTree = "<group>"; };
 		E8EE9236B4F590CC106090ECA6AF1025 /* FIRGameCenterAuthProvider.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRGameCenterAuthProvider.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRGameCenterAuthProvider.h; sourceTree = "<group>"; };
-		E8FAFDB62D3142F45C46F0804E932751 /* online_state_tracker.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = online_state_tracker.cc; path = Firestore/core/src/remote/online_state_tracker.cc; sourceTree = "<group>"; };
+		E8FAFDB62D3142F45C46F0804E932751 /* online_state_tracker.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = online_state_tracker.cc; path = Firestore/core/src/remote/online_state_tracker.cc; sourceTree = "<group>"; };
 		E90632D37327489F10951A1C58647D85 /* server_callback_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_callback_impl.h; path = include/grpcpp/impl/codegen/server_callback_impl.h; sourceTree = "<group>"; };
 		E9136313AC57B06501650E319A09CE1A /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/core/ext/transport/chttp2/transport/internal.h; sourceTree = "<group>"; };
 		E91BB52E0E5B9B7B669E6B2D27D3BAF6 /* client_load_reporting_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_load_reporting_filter.h; path = src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h; sourceTree = "<group>"; };
@@ -11260,58 +11261,58 @@
 		E95D6B198D8DFABD62E3DA2947B99A6A /* gRPC-C++.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "gRPC-C++.debug.xcconfig"; sourceTree = "<group>"; };
 		E9B69295151DE348C800FEE2D8369C26 /* time_zone_info.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = time_zone_info.h; path = absl/time/internal/cctz/src/time_zone_info.h; sourceTree = "<group>"; };
 		E9C8B6663D83DCFCA74ADD99DABD0DF5 /* FIRSecureTokenRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRSecureTokenRequest.h; path = FirebaseAuth/Sources/Backend/RPC/FIRSecureTokenRequest.h; sourceTree = "<group>"; };
-		E9D35DD116D567308093371D01C9E8BD /* alts_zero_copy_grpc_protector.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alts_zero_copy_grpc_protector.cc; path = src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc; sourceTree = "<group>"; };
+		E9D35DD116D567308093371D01C9E8BD /* alts_zero_copy_grpc_protector.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alts_zero_copy_grpc_protector.cc; path = src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc; sourceTree = "<group>"; };
 		E9DDDC70CC3CB227224C64A148782062 /* channel_trace.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channel_trace.h; path = src/core/lib/channel/channel_trace.h; sourceTree = "<group>"; };
-		E9DEC2D15F4524C8FC3785FEC9CB677B /* comparison.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = comparison.cc; path = Firestore/core/src/util/comparison.cc; sourceTree = "<group>"; };
-		EA1427ADF7C3CC7FDD596EA68B24E425 /* x_pubkey.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x_pubkey.c; path = src/crypto/x509/x_pubkey.c; sourceTree = "<group>"; };
+		E9DEC2D15F4524C8FC3785FEC9CB677B /* comparison.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = comparison.cc; path = Firestore/core/src/util/comparison.cc; sourceTree = "<group>"; };
+		EA1427ADF7C3CC7FDD596EA68B24E425 /* x_pubkey.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x_pubkey.c; path = src/crypto/x509/x_pubkey.c; sourceTree = "<group>"; };
 		EA44D63FB0160514F8259A9E4F70BC24 /* pool.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pool.h; path = src/include/openssl/pool.h; sourceTree = "<group>"; };
-		EA4811051E7341321CFEF27EAD45027B /* channel_init.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = channel_init.cc; path = src/core/lib/surface/channel_init.cc; sourceTree = "<group>"; };
-		EA5EBB2970801C4B032275AD7ACCCF66 /* channel_trace.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = channel_trace.cc; path = src/core/lib/channel/channel_trace.cc; sourceTree = "<group>"; };
-		EA695D68691E0FBC4CE8EC047A11D9F4 /* query_engine.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = query_engine.cc; path = Firestore/core/src/local/query_engine.cc; sourceTree = "<group>"; };
+		EA4811051E7341321CFEF27EAD45027B /* channel_init.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = channel_init.cc; path = src/core/lib/surface/channel_init.cc; sourceTree = "<group>"; };
+		EA5EBB2970801C4B032275AD7ACCCF66 /* channel_trace.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = channel_trace.cc; path = src/core/lib/channel/channel_trace.cc; sourceTree = "<group>"; };
+		EA695D68691E0FBC4CE8EC047A11D9F4 /* query_engine.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = query_engine.cc; path = Firestore/core/src/local/query_engine.cc; sourceTree = "<group>"; };
 		EA80590BCC5002BF39D1E453A945AB88 /* FBLPromise+Delay.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "FBLPromise+Delay.m"; path = "Sources/FBLPromises/FBLPromise+Delay.m"; sourceTree = "<group>"; };
 		EAB277E18229F4436CDC55A9A7F6FB98 /* client_callback_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_callback_impl.h; path = include/grpcpp/support/client_callback_impl.h; sourceTree = "<group>"; };
 		EAB94F2401E75F534DBCE3D75112F509 /* FirebaseCoreDiagnostics-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "FirebaseCoreDiagnostics-dummy.m"; sourceTree = "<group>"; };
 		EAE51B6A6D4E401E935009EA85C3D448 /* socket_utils_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = socket_utils_posix.h; path = src/core/lib/iomgr/socket_utils_posix.h; sourceTree = "<group>"; };
-		EAE909166D17A83135630AC7D115643B /* grpc_alts_credentials_client_options.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_alts_credentials_client_options.cc; path = src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc; sourceTree = "<group>"; };
+		EAE909166D17A83135630AC7D115643B /* grpc_alts_credentials_client_options.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_alts_credentials_client_options.cc; path = src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc; sourceTree = "<group>"; };
 		EB209B2387A2432A912ACEC6FE810A11 /* stub_options.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = stub_options.h; path = include/grpcpp/support/stub_options.h; sourceTree = "<group>"; };
 		EB209E1BE68EE45B1DC16BEF0B1E9090 /* FIRAuthInterop.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthInterop.h; path = Interop/Auth/Public/FIRAuthInterop.h; sourceTree = "<group>"; };
 		EB2A05797D3004E2324D8E6057C47DCE /* server_posix_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_posix_impl.h; path = include/grpcpp/server_posix_impl.h; sourceTree = "<group>"; };
 		EB5691308FA88C7F1031E96B5D86A6F1 /* FIRSignInWithGameCenterResponse.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRSignInWithGameCenterResponse.h; path = FirebaseAuth/Sources/Backend/RPC/FIRSignInWithGameCenterResponse.h; sourceTree = "<group>"; };
-		EB57849A1DFA9F2D3E48016D183D1413 /* listener_components.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = listener_components.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/listener/listener_components.upb.c"; sourceTree = "<group>"; };
+		EB57849A1DFA9F2D3E48016D183D1413 /* listener_components.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = listener_components.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/listener/listener_components.upb.c"; sourceTree = "<group>"; };
 		EB61ECCAD4AD312241892CE202652026 /* FIRStorage.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorage.h; path = FirebaseStorage/Sources/Public/FirebaseStorage/FIRStorage.h; sourceTree = "<group>"; };
 		EB63FC6626EF0AD548D4BF85890E6C39 /* cpu.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = cpu.h; path = src/include/openssl/cpu.h; sourceTree = "<group>"; };
 		EB799BC3FE6347E436BB1A805CBF27A3 /* sockaddr.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sockaddr.h; path = src/core/lib/iomgr/sockaddr.h; sourceTree = "<group>"; };
 		EBAE54E772D2FAEADEF1E3B28E34A3D5 /* FIRGitHubAuthCredential.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRGitHubAuthCredential.h; path = FirebaseAuth/Sources/AuthProvider/GitHub/FIRGitHubAuthCredential.h; sourceTree = "<group>"; };
-		EBBD42C57B2C7EF19296FF2455B69666 /* timer_custom.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = timer_custom.cc; path = src/core/lib/iomgr/timer_custom.cc; sourceTree = "<group>"; };
-		EBCFDDA6C3119528E7E158AFCC216004 /* timeout_encoding.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = timeout_encoding.cc; path = src/core/lib/transport/timeout_encoding.cc; sourceTree = "<group>"; };
-		EBE41464663F41EE86C90B576907BDBB /* curve25519.c */ = {isa = PBXFileReference; includeInIndex = 1; name = curve25519.c; path = src/third_party/fiat/curve25519.c; sourceTree = "<group>"; };
-		EC4F363313F74853A2746AC992F8A017 /* low_level_alloc.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = low_level_alloc.cc; path = absl/base/internal/low_level_alloc.cc; sourceTree = "<group>"; };
-		EC54442CFE1DAFA1C2B8B27428A58E1D /* chacha.c */ = {isa = PBXFileReference; includeInIndex = 1; name = chacha.c; path = src/crypto/chacha/chacha.c; sourceTree = "<group>"; };
+		EBBD42C57B2C7EF19296FF2455B69666 /* timer_custom.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = timer_custom.cc; path = src/core/lib/iomgr/timer_custom.cc; sourceTree = "<group>"; };
+		EBCFDDA6C3119528E7E158AFCC216004 /* timeout_encoding.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = timeout_encoding.cc; path = src/core/lib/transport/timeout_encoding.cc; sourceTree = "<group>"; };
+		EBE41464663F41EE86C90B576907BDBB /* curve25519.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = curve25519.c; path = src/third_party/fiat/curve25519.c; sourceTree = "<group>"; };
+		EC4F363313F74853A2746AC992F8A017 /* low_level_alloc.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = low_level_alloc.cc; path = absl/base/internal/low_level_alloc.cc; sourceTree = "<group>"; };
+		EC54442CFE1DAFA1C2B8B27428A58E1D /* chacha.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = chacha.c; path = src/crypto/chacha/chacha.c; sourceTree = "<group>"; };
 		EC7946A0CE01A8FDDD0D5B7C9B89ABA2 /* channelz.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channelz.h; path = src/core/lib/channel/channelz.h; sourceTree = "<group>"; };
 		EC7B09EE5506FB8CAD9458E270EA85EF /* GDTCOREvent.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCOREvent.h; path = GoogleDataTransport/GDTCORLibrary/Public/GoogleDataTransport/GDTCOREvent.h; sourceTree = "<group>"; };
-		EC945BC0DF3D51E329CFF22D45CE5EBB /* resolve_address_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = resolve_address_posix.cc; path = src/core/lib/iomgr/resolve_address_posix.cc; sourceTree = "<group>"; };
+		EC945BC0DF3D51E329CFF22D45CE5EBB /* resolve_address_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = resolve_address_posix.cc; path = src/core/lib/iomgr/resolve_address_posix.cc; sourceTree = "<group>"; };
 		ECC77086B8216264AC958F45AFED1115 /* outlier_detection.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = outlier_detection.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h"; sourceTree = "<group>"; };
 		ECE652218877D1578BBB590AF847F1FF /* descriptor.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = descriptor.upb.h; path = "src/core/ext/upb-generated/google/protobuf/descriptor.upb.h"; sourceTree = "<group>"; };
-		ED0B7AF28C41DB6E0A067E22740286DE /* ecdh.c */ = {isa = PBXFileReference; includeInIndex = 1; name = ecdh.c; path = src/crypto/fipsmodule/ecdh/ecdh.c; sourceTree = "<group>"; };
-		ED2364153796CEA34EB403E457E5585E /* snapshot_metadata.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = snapshot_metadata.cc; path = Firestore/core/src/api/snapshot_metadata.cc; sourceTree = "<group>"; };
+		ED0B7AF28C41DB6E0A067E22740286DE /* ecdh.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = ecdh.c; path = src/crypto/fipsmodule/ecdh/ecdh.c; sourceTree = "<group>"; };
+		ED2364153796CEA34EB403E457E5585E /* snapshot_metadata.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = snapshot_metadata.cc; path = Firestore/core/src/api/snapshot_metadata.cc; sourceTree = "<group>"; };
 		ED5B0DF4B02D0D1AEAEE4A53989E2C64 /* deadline_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = deadline_filter.h; path = src/core/ext/filters/deadline/deadline_filter.h; sourceTree = "<group>"; };
-		EDA654E3E75AFAE949976FC132665856 /* pcy_data.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pcy_data.c; path = src/crypto/x509v3/pcy_data.c; sourceTree = "<group>"; };
-		EDBF42B0491921B37AA2443AE0914B7E /* string.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = string.upb.c; path = "src/core/ext/upb-generated/envoy/type/matcher/string.upb.c"; sourceTree = "<group>"; };
+		EDA654E3E75AFAE949976FC132665856 /* pcy_data.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pcy_data.c; path = src/crypto/x509v3/pcy_data.c; sourceTree = "<group>"; };
+		EDBF42B0491921B37AA2443AE0914B7E /* string.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = string.upb.c; path = "src/core/ext/upb-generated/envoy/type/matcher/string.upb.c"; sourceTree = "<group>"; };
 		EDC2A6BBD0421EE41DB123EF61401E0C /* nanopb.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = nanopb.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		EDC4EF25576369E870B97FCDC3BCD0B5 /* global_subchannel_pool.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = global_subchannel_pool.h; path = src/core/ext/filters/client_channel/global_subchannel_pool.h; sourceTree = "<group>"; };
-		EDDE645EEFB10B3E60FA6CEC063BA4EA /* transform_operation.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = transform_operation.cc; path = Firestore/core/src/model/transform_operation.cc; sourceTree = "<group>"; };
-		EDE718F391065BFD8EA4F31AE77FF20A /* deprecation.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = deprecation.upb.c; path = "src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c"; sourceTree = "<group>"; };
+		EDDE645EEFB10B3E60FA6CEC063BA4EA /* transform_operation.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = transform_operation.cc; path = Firestore/core/src/model/transform_operation.cc; sourceTree = "<group>"; };
+		EDE718F391065BFD8EA4F31AE77FF20A /* deprecation.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = deprecation.upb.c; path = "src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c"; sourceTree = "<group>"; };
 		EE0D78099B76FD7D90BAB89FFCBF1F17 /* GULNetworkConstants.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GULNetworkConstants.m; path = GoogleUtilities/Network/GULNetworkConstants.m; sourceTree = "<group>"; };
 		EE244BE1F09A27E69C784150166D1006 /* client_unary_call.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_unary_call.h; path = include/grpcpp/impl/codegen/client_unary_call.h; sourceTree = "<group>"; };
 		EE27F651DF30E6A37D1122D29C931282 /* thd.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = thd.h; path = src/core/lib/gprpp/thd.h; sourceTree = "<group>"; };
 		EE3D138CDF14CC007801E63AA87B386D /* secure_endpoint.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = secure_endpoint.h; path = src/core/lib/security/transport/secure_endpoint.h; sourceTree = "<group>"; };
 		EE46EB253422F2F9A98E2FDA60449B8D /* FBLPromise+Always.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "FBLPromise+Always.m"; path = "Sources/FBLPromises/FBLPromise+Always.m"; sourceTree = "<group>"; };
-		EE502D922CEED4990A586B1DA71FA151 /* v3_conf.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_conf.c; path = src/crypto/x509v3/v3_conf.c; sourceTree = "<group>"; };
+		EE502D922CEED4990A586B1DA71FA151 /* v3_conf.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_conf.c; path = src/crypto/x509v3/v3_conf.c; sourceTree = "<group>"; };
 		EE61EE713AD5E88BAB9191E3E322BBC8 /* const_amd64.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = const_amd64.h; path = src/ssl/test/runner/curve25519/const_amd64.h; sourceTree = "<group>"; };
-		EE784F19FDE2226E2DE89906603EB415 /* channel_stack.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = channel_stack.cc; path = src/core/lib/channel/channel_stack.cc; sourceTree = "<group>"; };
-		EE91413F384D7E2D17544DC3C3E9EFE6 /* str_split.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = str_split.cc; path = absl/strings/str_split.cc; sourceTree = "<group>"; };
-		EEAA71CB2EBBFDB472FB699E519E1D25 /* listener.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = listener.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/listener/listener.upb.c"; sourceTree = "<group>"; };
-		EEAD82C9F12EA7CFAE152AA3149579CD /* ssl_aead_ctx.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = ssl_aead_ctx.cc; path = src/ssl/ssl_aead_ctx.cc; sourceTree = "<group>"; };
+		EE784F19FDE2226E2DE89906603EB415 /* channel_stack.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = channel_stack.cc; path = src/core/lib/channel/channel_stack.cc; sourceTree = "<group>"; };
+		EE91413F384D7E2D17544DC3C3E9EFE6 /* str_split.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = str_split.cc; path = absl/strings/str_split.cc; sourceTree = "<group>"; };
+		EEAA71CB2EBBFDB472FB699E519E1D25 /* listener.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = listener.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/listener/listener.upb.c"; sourceTree = "<group>"; };
+		EEAD82C9F12EA7CFAE152AA3149579CD /* ssl_aead_ctx.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = ssl_aead_ctx.cc; path = src/ssl/ssl_aead_ctx.cc; sourceTree = "<group>"; };
 		EEC488FFF9C832E748DE654768FBDDF1 /* global_config_env.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = global_config_env.h; path = src/core/lib/gprpp/global_config_env.h; sourceTree = "<group>"; };
 		EEDBD47AF7E6767D96A67AB58797AEAA /* FBLPromise+Delay.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "FBLPromise+Delay.h"; path = "Sources/FBLPromises/include/FBLPromise+Delay.h"; sourceTree = "<group>"; };
 		EF1F7EEB74A2D2B7BB667FC57698E6AA /* FIRTwitterAuthProvider.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRTwitterAuthProvider.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRTwitterAuthProvider.h; sourceTree = "<group>"; };
@@ -11319,57 +11320,57 @@
 		EF3601C668AB74177F2379254F9914F0 /* stream_compression_gzip.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = stream_compression_gzip.h; path = src/core/lib/compression/stream_compression_gzip.h; sourceTree = "<group>"; };
 		EF7D5C5CC8D4CBA0DFA996CFBBE956E2 /* server_builder_option_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server_builder_option_impl.h; path = include/grpcpp/impl/server_builder_option_impl.h; sourceTree = "<group>"; };
 		EF7DAA613CB0DC2242919EB758866533 /* annotations.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = annotations.upb.h; path = "src/core/ext/upb-generated/google/api/annotations.upb.h"; sourceTree = "<group>"; };
-		EF8384CF724ADC209574753B919FB185 /* v3_pcons.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_pcons.c; path = src/crypto/x509v3/v3_pcons.c; sourceTree = "<group>"; };
+		EF8384CF724ADC209574753B919FB185 /* v3_pcons.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_pcons.c; path = src/crypto/x509v3/v3_pcons.c; sourceTree = "<group>"; };
 		EF865F6BC4B18E44649B169A1F3AF64F /* GULKeychainUtils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULKeychainUtils.h; path = GoogleUtilities/Environment/Public/GoogleUtilities/GULKeychainUtils.h; sourceTree = "<group>"; };
 		EF87159DF61F7379C7DC780F8CE6EFFB /* hmac.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = hmac.h; path = src/include/openssl/hmac.h; sourceTree = "<group>"; };
-		EFA9D32C7AA50779BFE6A7CCAC83861A /* port.c */ = {isa = PBXFileReference; includeInIndex = 1; name = port.c; path = third_party/upb/upb/port.c; sourceTree = "<group>"; };
-		EFBAE2AC08C74C9885CEC01ED7C03A58 /* pcy_cache.c */ = {isa = PBXFileReference; includeInIndex = 1; name = pcy_cache.c; path = src/crypto/x509v3/pcy_cache.c; sourceTree = "<group>"; };
-		EFBC415426BCCD4F687CE3EFC5DED696 /* evp.c */ = {isa = PBXFileReference; includeInIndex = 1; name = evp.c; path = src/crypto/evp/evp.c; sourceTree = "<group>"; };
+		EFA9D32C7AA50779BFE6A7CCAC83861A /* port.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = port.c; path = third_party/upb/upb/port.c; sourceTree = "<group>"; };
+		EFBAE2AC08C74C9885CEC01ED7C03A58 /* pcy_cache.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = pcy_cache.c; path = src/crypto/x509v3/pcy_cache.c; sourceTree = "<group>"; };
+		EFBC415426BCCD4F687CE3EFC5DED696 /* evp.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = evp.c; path = src/crypto/evp/evp.c; sourceTree = "<group>"; };
 		EFCDF4BE68669249E97691F7D8F0D648 /* FIRPhoneAuthProvider.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRPhoneAuthProvider.m; path = FirebaseAuth/Sources/AuthProvider/Phone/FIRPhoneAuthProvider.m; sourceTree = "<group>"; };
 		EFDD333F01A3EA873DE1F7FA814B9652 /* FIRAuthAppCredential.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthAppCredential.m; path = FirebaseAuth/Sources/SystemService/FIRAuthAppCredential.m; sourceTree = "<group>"; };
 		EFEE12D3CC01D5A36A1A9383975C3EF2 /* FIRPhoneMultiFactorInfo.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRPhoneMultiFactorInfo.m; path = FirebaseAuth/Sources/MultiFactor/Phone/FIRPhoneMultiFactorInfo.m; sourceTree = "<group>"; };
-		F013FEC50C8CB6ADB20ED94985BE7BDC /* v3_pku.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_pku.c; path = src/crypto/x509v3/v3_pku.c; sourceTree = "<group>"; };
-		F01AFEB6A60C31A3E879BEE646E50406 /* ecdh_extra.c */ = {isa = PBXFileReference; includeInIndex = 1; name = ecdh_extra.c; path = src/crypto/ecdh_extra/ecdh_extra.c; sourceTree = "<group>"; };
+		F013FEC50C8CB6ADB20ED94985BE7BDC /* v3_pku.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_pku.c; path = src/crypto/x509v3/v3_pku.c; sourceTree = "<group>"; };
+		F01AFEB6A60C31A3E879BEE646E50406 /* ecdh_extra.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = ecdh_extra.c; path = src/crypto/ecdh_extra/ecdh_extra.c; sourceTree = "<group>"; };
 		F03373DB9C73CC3DC3B1D8876BD61A0F /* socket_utils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = socket_utils.h; path = src/core/lib/iomgr/socket_utils.h; sourceTree = "<group>"; };
 		F049EA3B1DAA82C4DBE1BC157BDAC505 /* md5.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = md5.h; path = src/include/openssl/md5.h; sourceTree = "<group>"; };
-		F066A3877FAE9F671818D626F6C47CAA /* secure_random_arc4random.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = secure_random_arc4random.cc; path = Firestore/core/src/util/secure_random_arc4random.cc; sourceTree = "<group>"; };
+		F066A3877FAE9F671818D626F6C47CAA /* secure_random_arc4random.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = secure_random_arc4random.cc; path = Firestore/core/src/util/secure_random_arc4random.cc; sourceTree = "<group>"; };
 		F06B8E78AA8C2C67EE3AF8084F813C59 /* CLTypingLabel-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "CLTypingLabel-Info.plist"; sourceTree = "<group>"; };
-		F07F2B963F52DEFBE4DBCD9311FB31A9 /* write.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = write.nanopb.cc; path = Firestore/Protos/nanopb/google/firestore/v1/write.nanopb.cc; sourceTree = "<group>"; };
-		F090C856ED1BC5BCDF40A0DDAD6B085A /* alts_grpc_integrity_only_record_protocol.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = alts_grpc_integrity_only_record_protocol.cc; path = src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc; sourceTree = "<group>"; };
-		F0AE194B5BF9A818EA183B7C1F18FB8B /* parser.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = parser.cc; path = src/core/lib/http/parser.cc; sourceTree = "<group>"; };
-		F0BE364C243D67163B1547437AAEDA22 /* scrypt.c */ = {isa = PBXFileReference; includeInIndex = 1; name = scrypt.c; path = src/crypto/evp/scrypt.c; sourceTree = "<group>"; };
+		F07F2B963F52DEFBE4DBCD9311FB31A9 /* write.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = write.nanopb.cc; path = Firestore/Protos/nanopb/google/firestore/v1/write.nanopb.cc; sourceTree = "<group>"; };
+		F090C856ED1BC5BCDF40A0DDAD6B085A /* alts_grpc_integrity_only_record_protocol.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = alts_grpc_integrity_only_record_protocol.cc; path = src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc; sourceTree = "<group>"; };
+		F0AE194B5BF9A818EA183B7C1F18FB8B /* parser.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = parser.cc; path = src/core/lib/http/parser.cc; sourceTree = "<group>"; };
+		F0BE364C243D67163B1547437AAEDA22 /* scrypt.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = scrypt.c; path = src/crypto/evp/scrypt.c; sourceTree = "<group>"; };
 		F0CC14E4F1FA27D5BEEDE1DBDCD0B9CA /* GDTCCTUploader.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCCTUploader.m; path = GoogleDataTransport/GDTCCTLibrary/GDTCCTUploader.m; sourceTree = "<group>"; };
 		F0EBB0669E52B4B25079FD988071B2E8 /* interceptor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = interceptor.h; path = include/grpcpp/impl/codegen/interceptor.h; sourceTree = "<group>"; };
-		F10B769EAA87911BD8D07DE05477E0F1 /* httpcli.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = httpcli.cc; path = src/core/lib/http/httpcli.cc; sourceTree = "<group>"; };
+		F10B769EAA87911BD8D07DE05477E0F1 /* httpcli.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = httpcli.cc; path = src/core/lib/http/httpcli.cc; sourceTree = "<group>"; };
 		F1152709967AEB1B26C0E58D8EDD9C5F /* GULReachabilityChecker+Internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "GULReachabilityChecker+Internal.h"; path = "GoogleUtilities/Reachability/GULReachabilityChecker+Internal.h"; sourceTree = "<group>"; };
 		F12EC2A59F47B26BD6F0D1CE36D0724B /* GTMSessionFetcherService.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GTMSessionFetcherService.m; path = Source/GTMSessionFetcherService.m; sourceTree = "<group>"; };
-		F14EADF1793BADC75328F38E0978A117 /* byte_string.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = byte_string.cc; path = Firestore/core/src/nanopb/byte_string.cc; sourceTree = "<group>"; };
+		F14EADF1793BADC75328F38E0978A117 /* byte_string.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = byte_string.cc; path = Firestore/core/src/nanopb/byte_string.cc; sourceTree = "<group>"; };
 		F151BAE2C77D193E204D0A5EADA198C4 /* pollset_set_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pollset_set_windows.h; path = src/core/lib/iomgr/pollset_set_windows.h; sourceTree = "<group>"; };
-		F16A131A5D1A0CB4E323F5FF5E22A45D /* ber.c */ = {isa = PBXFileReference; includeInIndex = 1; name = ber.c; path = src/crypto/bytestring/ber.c; sourceTree = "<group>"; };
+		F16A131A5D1A0CB4E323F5FF5E22A45D /* ber.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = ber.c; path = src/crypto/bytestring/ber.c; sourceTree = "<group>"; };
 		F16B03125CCB43D09B40CFC90678B7F5 /* GULAppDelegateSwizzler.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GULAppDelegateSwizzler.m; path = GoogleUtilities/AppDelegateSwizzler/GULAppDelegateSwizzler.m; sourceTree = "<group>"; };
 		F1824B1D7E44D105E0C385E3F077D6C2 /* threadpool.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = threadpool.h; path = src/core/lib/iomgr/executor/threadpool.h; sourceTree = "<group>"; };
 		F1833354584FC5ADB71686A6B2AD67F4 /* GULAppEnvironmentUtil.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GULAppEnvironmentUtil.h; path = GoogleUtilities/Environment/Public/GoogleUtilities/GULAppEnvironmentUtil.h; sourceTree = "<group>"; };
-		F1906F46EBA07B3921E5649A9C9E2025 /* civil_time_detail.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = civil_time_detail.cc; path = absl/time/internal/cctz/src/civil_time_detail.cc; sourceTree = "<group>"; };
-		F195EB35F3B11C66DE5F20494DD92AE5 /* hash.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = hash.cc; path = util/hash.cc; sourceTree = "<group>"; };
-		F19B0731A0473DE3EB4CB9FBD671E219 /* direction.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = direction.cc; path = Firestore/core/src/core/direction.cc; sourceTree = "<group>"; };
+		F1906F46EBA07B3921E5649A9C9E2025 /* civil_time_detail.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = civil_time_detail.cc; path = absl/time/internal/cctz/src/civil_time_detail.cc; sourceTree = "<group>"; };
+		F195EB35F3B11C66DE5F20494DD92AE5 /* hash.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = hash.cc; path = util/hash.cc; sourceTree = "<group>"; };
+		F19B0731A0473DE3EB4CB9FBD671E219 /* direction.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = direction.cc; path = Firestore/core/src/core/direction.cc; sourceTree = "<group>"; };
 		F1BE0C2776D89ED20441E0E751FBC08A /* xds.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = xds.h; path = src/core/ext/filters/client_channel/lb_policy/xds/xds.h; sourceTree = "<group>"; };
 		F1E0F6010A2B178896685CFF09747222 /* checker.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = checker.h; path = absl/strings/internal/str_format/checker.h; sourceTree = "<group>"; };
 		F1E97881B345DD859BF2DC053567D78C /* gRPC-C++.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "gRPC-C++.release.xcconfig"; sourceTree = "<group>"; };
 		F1F019EE3D6645C2B8A65FFACEFD913F /* internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = internal.h; path = src/crypto/fipsmodule/sha/internal.h; sourceTree = "<group>"; };
 		F20AA0E149CDCEF0F72B3EFF4DD205E8 /* FIRDependency.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRDependency.m; path = FirebaseCore/Sources/FIRDependency.m; sourceTree = "<group>"; };
-		F20BDCD4BA739328703A3A38CF2C2744 /* grpc_if_nametoindex_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_if_nametoindex_posix.cc; path = src/core/lib/iomgr/grpc_if_nametoindex_posix.cc; sourceTree = "<group>"; };
+		F20BDCD4BA739328703A3A38CF2C2744 /* grpc_if_nametoindex_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_if_nametoindex_posix.cc; path = src/core/lib/iomgr/grpc_if_nametoindex_posix.cc; sourceTree = "<group>"; };
 		F219949A226303F07C300EAE9C762C63 /* nameser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = nameser.h; path = src/core/lib/iomgr/nameser.h; sourceTree = "<group>"; };
 		F219CAE3CE1B67C90E9CF24647840005 /* compression_args.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = compression_args.h; path = src/core/lib/compression/compression_args.h; sourceTree = "<group>"; };
 		F21D45FE70F7E55B6EDA7FC49AE5B528 /* sockaddr.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sockaddr.h; path = src/core/lib/iomgr/sockaddr.h; sourceTree = "<group>"; };
-		F22FBD118AD25F1F55442E9B8D8C8121 /* output.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = output.cc; path = absl/strings/internal/str_format/output.cc; sourceTree = "<group>"; };
+		F22FBD118AD25F1F55442E9B8D8C8121 /* output.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = output.cc; path = absl/strings/internal/str_format/output.cc; sourceTree = "<group>"; };
 		F233893D74BEEC29560EBFD537301FED /* FIRCollectionReference.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRCollectionReference.h; path = Firestore/Source/Public/FirebaseFirestore/FIRCollectionReference.h; sourceTree = "<group>"; };
-		F23FABDFEF4667F5E38686DCCA94CF39 /* sync_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = sync_posix.cc; path = src/core/lib/gpr/sync_posix.cc; sourceTree = "<group>"; };
+		F23FABDFEF4667F5E38686DCCA94CF39 /* sync_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = sync_posix.cc; path = src/core/lib/gpr/sync_posix.cc; sourceTree = "<group>"; };
 		F25B4A92A33601F7457919CECC3ED282 /* policy_checks.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = policy_checks.h; path = absl/base/policy_checks.h; sourceTree = "<group>"; };
 		F27D1B11B5886572EF4CE8E5D46AC2E2 /* listener.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = listener.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/listener/listener.upb.h"; sourceTree = "<group>"; };
 		F29F2FF3C1C65CB03BEF5F0C2D33F12A /* exec_ctx.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = exec_ctx.h; path = src/core/lib/iomgr/exec_ctx.h; sourceTree = "<group>"; };
 		F2B22542652412D7FA3844612B31DD92 /* sensitive.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sensitive.upb.h; path = "src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h"; sourceTree = "<group>"; };
 		F2BF75D9202E8025A5EAA8991149F351 /* ssl_types.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl_types.h; path = src/core/tsi/ssl_types.h; sourceTree = "<group>"; };
-		F2C260E3E56232425DED1E62AAA19043 /* time_cc.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = time_cc.cc; path = src/cpp/util/time_cc.cc; sourceTree = "<group>"; };
+		F2C260E3E56232425DED1E62AAA19043 /* time_cc.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = time_cc.cc; path = src/cpp/util/time_cc.cc; sourceTree = "<group>"; };
 		F2C5BC450534321F9208D0C1BC120E3D /* channel_stack_type.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channel_stack_type.h; path = src/core/lib/surface/channel_stack_type.h; sourceTree = "<group>"; };
 		F2E0D655AC4E8D00E161F0F1691ACCEB /* ev_epoll1_linux.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ev_epoll1_linux.h; path = src/core/lib/iomgr/ev_epoll1_linux.h; sourceTree = "<group>"; };
 		F2E88CE3C80FE8394DB31DCEE5F20C41 /* health_check_client.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = health_check_client.h; path = src/core/ext/filters/client_channel/health/health_check_client.h; sourceTree = "<group>"; };
@@ -11379,131 +11380,131 @@
 		F33E0764948DB9F2148B1885437852FC /* mpmcqueue.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = mpmcqueue.h; path = src/core/lib/iomgr/executor/mpmcqueue.h; sourceTree = "<group>"; };
 		F34C521892B39E42C34A5AF51762A611 /* PromisesObjC-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "PromisesObjC-dummy.m"; sourceTree = "<group>"; };
 		F34E6ACAE3819A716B87A33CFC607682 /* xds_api.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = xds_api.h; path = src/core/ext/filters/client_channel/xds/xds_api.h; sourceTree = "<group>"; };
-		F36B91CA6BDCDECFE04A8747E4B5E3A0 /* dh_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; name = dh_asn1.c; path = src/crypto/dh/dh_asn1.c; sourceTree = "<group>"; };
+		F36B91CA6BDCDECFE04A8747E4B5E3A0 /* dh_asn1.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = dh_asn1.c; path = src/crypto/dh/dh_asn1.c; sourceTree = "<group>"; };
 		F37321937EB0FA891B45DE620DA877B6 /* FIRFinalizeMFAEnrollmentRequest.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRFinalizeMFAEnrollmentRequest.h; path = FirebaseAuth/Sources/Backend/RPC/MultiFactor/Enroll/FIRFinalizeMFAEnrollmentRequest.h; sourceTree = "<group>"; };
 		F373EE778CB4BEFC6D7058E25DDB3C38 /* channel_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = channel_impl.h; path = include/grpcpp/channel_impl.h; sourceTree = "<group>"; };
 		F37749F56088E7F7A6DD94D8DFB032D8 /* iterator.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = iterator.h; path = include/leveldb/iterator.h; sourceTree = "<group>"; };
-		F39D36A2CDA5BFE32E8F774E0ECBF3D0 /* x509_r2x.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509_r2x.c; path = src/crypto/x509/x509_r2x.c; sourceTree = "<group>"; };
-		F3A3D52C298CE50907F8608994D72483 /* array_contains_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = array_contains_filter.cc; path = Firestore/core/src/core/array_contains_filter.cc; sourceTree = "<group>"; };
+		F39D36A2CDA5BFE32E8F774E0ECBF3D0 /* x509_r2x.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509_r2x.c; path = src/crypto/x509/x509_r2x.c; sourceTree = "<group>"; };
+		F3A3D52C298CE50907F8608994D72483 /* array_contains_filter.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = array_contains_filter.cc; path = Firestore/core/src/core/array_contains_filter.cc; sourceTree = "<group>"; };
 		F3B5A32BAA01B09FB5C2EE1EFE129992 /* grpc.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpc.h; path = include/grpc/grpc.h; sourceTree = "<group>"; };
 		F3C764F4FBC0A49488754548A67FD712 /* FIRDocumentReference.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRDocumentReference.h; path = Firestore/Source/Public/FirebaseFirestore/FIRDocumentReference.h; sourceTree = "<group>"; };
 		F3C8AD2E39133464D0FFC15AC3B1317D /* lrs.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = lrs.upb.h; path = "src/core/ext/upb-generated/envoy/service/load_stats/v2/lrs.upb.h"; sourceTree = "<group>"; };
 		F3EAD28BEF2A1D785A9B40B171D9AF9D /* tcp_custom.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tcp_custom.h; path = src/core/lib/iomgr/tcp_custom.h; sourceTree = "<group>"; };
 		F3FF66F2DCA278FF8D064B9EFE44104A /* string_util.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = string_util.h; path = include/grpc/support/string_util.h; sourceTree = "<group>"; };
-		F3FFB58BCFDD6CF6AAB585489D7A8EDE /* composite_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = composite_credentials.cc; path = src/core/lib/security/credentials/composite/composite_credentials.cc; sourceTree = "<group>"; };
+		F3FFB58BCFDD6CF6AAB585489D7A8EDE /* composite_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = composite_credentials.cc; path = src/core/lib/security/credentials/composite/composite_credentials.cc; sourceTree = "<group>"; };
 		F411F37649460B08C93348ED26B292F4 /* backup_poller.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = backup_poller.h; path = src/core/ext/filters/client_channel/backup_poller.h; sourceTree = "<group>"; };
 		F4138E48BEE85276FC6F5911DD26FC5C /* srds.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = srds.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/srds.upb.h"; sourceTree = "<group>"; };
-		F44C618BE2937530E63BFA6AA6C0A2FE /* substitute.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = substitute.cc; path = absl/strings/substitute.cc; sourceTree = "<group>"; };
+		F44C618BE2937530E63BFA6AA6C0A2FE /* substitute.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = substitute.cc; path = absl/strings/substitute.cc; sourceTree = "<group>"; };
 		F478604CD53324B873F84273F43EB426 /* FIRStorageUtils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRStorageUtils.h; path = FirebaseStorage/Sources/FIRStorageUtils.h; sourceTree = "<group>"; };
 		F4814812AD828C44C3A275F00D4A2067 /* attributes.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = attributes.h; path = absl/base/attributes.h; sourceTree = "<group>"; };
 		F49880ED3124F341AEC3B2C2F70EA2F4 /* atm_gcc_atomic.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = atm_gcc_atomic.h; path = include/grpc/support/atm_gcc_atomic.h; sourceTree = "<group>"; };
 		F49DF958309A50D879AB40BCF1447BF6 /* tls_gcc.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tls_gcc.h; path = src/core/lib/gpr/tls_gcc.h; sourceTree = "<group>"; };
-		F4B77A80764C9D2E6B29997FB02AFA6B /* xds_channel_secure.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = xds_channel_secure.cc; path = src/core/ext/filters/client_channel/xds/xds_channel_secure.cc; sourceTree = "<group>"; };
+		F4B77A80764C9D2E6B29997FB02AFA6B /* xds_channel_secure.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = xds_channel_secure.cc; path = src/core/ext/filters/client_channel/xds/xds_channel_secure.cc; sourceTree = "<group>"; };
 		F4CF2FDADB67AC55C4C852C597231F58 /* FIRAuthGlobalWorkQueue.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAuthGlobalWorkQueue.h; path = FirebaseAuth/Sources/Auth/FIRAuthGlobalWorkQueue.h; sourceTree = "<group>"; };
-		F4FC63B7BB3AFA6DF9668022CBD64922 /* metadata.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = metadata.cc; path = src/core/lib/transport/metadata.cc; sourceTree = "<group>"; };
+		F4FC63B7BB3AFA6DF9668022CBD64922 /* metadata.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = metadata.cc; path = src/core/lib/transport/metadata.cc; sourceTree = "<group>"; };
 		F504B70BC81AF9FAFDB3DE06C201E27B /* tls.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tls.h; path = src/core/lib/gpr/tls.h; sourceTree = "<group>"; };
-		F52033A981309A68BD14F9D43A515A53 /* string_apple.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = string_apple.cc; path = Firestore/core/src/util/string_apple.cc; sourceTree = "<group>"; };
-		F52263F32710A42AE4388A30B20F6BD9 /* v3_purp.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_purp.c; path = src/crypto/x509v3/v3_purp.c; sourceTree = "<group>"; };
+		F52033A981309A68BD14F9D43A515A53 /* string_apple.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = string_apple.cc; path = Firestore/core/src/util/string_apple.cc; sourceTree = "<group>"; };
+		F52263F32710A42AE4388A30B20F6BD9 /* v3_purp.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_purp.c; path = src/crypto/x509v3/v3_purp.c; sourceTree = "<group>"; };
 		F525747E42221CDC3165959E0889A00B /* pollset.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pollset.h; path = src/core/lib/iomgr/pollset.h; sourceTree = "<group>"; };
 		F53E4473C60CABDE0383A34E4AAF6CEE /* FIRHeartbeatInfo.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRHeartbeatInfo.h; path = FirebaseCore/Sources/Private/FIRHeartbeatInfo.h; sourceTree = "<group>"; };
-		F546BF162A7390C6C615FAFF7D73C227 /* cpu-aarch64-linux.c */ = {isa = PBXFileReference; includeInIndex = 1; name = "cpu-aarch64-linux.c"; path = "src/crypto/cpu-aarch64-linux.c"; sourceTree = "<group>"; };
-		F547E1EDAFFD0E92C69992D5FDAFAF15 /* secure_endpoint.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = secure_endpoint.cc; path = src/core/lib/security/transport/secure_endpoint.cc; sourceTree = "<group>"; };
+		F546BF162A7390C6C615FAFF7D73C227 /* cpu-aarch64-linux.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = "cpu-aarch64-linux.c"; path = "src/crypto/cpu-aarch64-linux.c"; sourceTree = "<group>"; };
+		F547E1EDAFFD0E92C69992D5FDAFAF15 /* secure_endpoint.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = secure_endpoint.cc; path = src/core/lib/security/transport/secure_endpoint.cc; sourceTree = "<group>"; };
 		F55DA6360E1FAA42F7541F1BA687BABE /* grpclb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = grpclb.h; path = src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h; sourceTree = "<group>"; };
 		F564B35A687535E716056BEAA0BE7B6C /* global_config.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = global_config.h; path = src/core/lib/gprpp/global_config.h; sourceTree = "<group>"; };
-		F56D54F136D43F0B1446491433BE1060 /* two_level_iterator.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = two_level_iterator.cc; path = table/two_level_iterator.cc; sourceTree = "<group>"; };
-		F571733D8340D8A7B75A59F914593758 /* x509_def.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509_def.c; path = src/crypto/x509/x509_def.c; sourceTree = "<group>"; };
+		F56D54F136D43F0B1446491433BE1060 /* two_level_iterator.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = two_level_iterator.cc; path = table/two_level_iterator.cc; sourceTree = "<group>"; };
+		F571733D8340D8A7B75A59F914593758 /* x509_def.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509_def.c; path = src/crypto/x509/x509_def.c; sourceTree = "<group>"; };
 		F574F3B72763FAD0FAC9F1990B37E15F /* delegating_channel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = delegating_channel.h; path = include/grpcpp/impl/codegen/delegating_channel.h; sourceTree = "<group>"; };
-		F58546CC0727E8410954B594A70C7713 /* parsing.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = parsing.cc; path = src/core/ext/transport/chttp2/transport/parsing.cc; sourceTree = "<group>"; };
-		F597BDC1F8CCBADC749161B792CDDA37 /* http.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = http.nanopb.cc; path = Firestore/Protos/nanopb/google/api/http.nanopb.cc; sourceTree = "<group>"; };
+		F58546CC0727E8410954B594A70C7713 /* parsing.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = parsing.cc; path = src/core/ext/transport/chttp2/transport/parsing.cc; sourceTree = "<group>"; };
+		F597BDC1F8CCBADC749161B792CDDA37 /* http.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = http.nanopb.cc; path = Firestore/Protos/nanopb/google/api/http.nanopb.cc; sourceTree = "<group>"; };
 		F59B67CC375B044E5B5D81173F919780 /* wakeup_fd_pipe.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = wakeup_fd_pipe.h; path = src/core/lib/iomgr/wakeup_fd_pipe.h; sourceTree = "<group>"; };
-		F5BB9D4C62AB239247A5A2F41CF35B6C /* v3_enum.c */ = {isa = PBXFileReference; includeInIndex = 1; name = v3_enum.c; path = src/crypto/x509v3/v3_enum.c; sourceTree = "<group>"; };
-		F5C3BDEE3FFFBDFC306F00F544FC5516 /* channelz_registry.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = channelz_registry.cc; path = src/core/lib/channel/channelz_registry.cc; sourceTree = "<group>"; };
+		F5BB9D4C62AB239247A5A2F41CF35B6C /* v3_enum.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = v3_enum.c; path = src/crypto/x509v3/v3_enum.c; sourceTree = "<group>"; };
+		F5C3BDEE3FFFBDFC306F00F544FC5516 /* channelz_registry.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = channelz_registry.cc; path = src/core/lib/channel/channelz_registry.cc; sourceTree = "<group>"; };
 		F5CB9B7E1741CAB1F4CAA263C19D74EE /* charmap.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = charmap.h; path = src/crypto/x509/charmap.h; sourceTree = "<group>"; };
-		F5E9F9D99414B4857C129986F69905BC /* spinlock_linux.inc */ = {isa = PBXFileReference; includeInIndex = 1; name = spinlock_linux.inc; path = absl/base/internal/spinlock_linux.inc; sourceTree = "<group>"; };
+		F5E9F9D99414B4857C129986F69905BC /* spinlock_linux.inc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.pascal; name = spinlock_linux.inc; path = absl/base/internal/spinlock_linux.inc; sourceTree = "<group>"; };
 		F5FD9D46D1F8CFC5C5EE094384A9304D /* wrappers.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = wrappers.upb.h; path = "src/core/ext/upb-generated/google/protobuf/wrappers.upb.h"; sourceTree = "<group>"; };
-		F6044ADC40A03842C89C219DEDFE3FB6 /* httpcli_security_connector.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = httpcli_security_connector.cc; path = src/core/lib/http/httpcli_security_connector.cc; sourceTree = "<group>"; };
-		F60846BA912F5DCB606AF5E2B63D3EEF /* gcm.c */ = {isa = PBXFileReference; includeInIndex = 1; name = gcm.c; path = src/crypto/fipsmodule/modes/gcm.c; sourceTree = "<group>"; };
+		F6044ADC40A03842C89C219DEDFE3FB6 /* httpcli_security_connector.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = httpcli_security_connector.cc; path = src/core/lib/http/httpcli_security_connector.cc; sourceTree = "<group>"; };
+		F60846BA912F5DCB606AF5E2B63D3EEF /* gcm.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = gcm.c; path = src/crypto/fipsmodule/modes/gcm.c; sourceTree = "<group>"; };
 		F62C8D2F136619820DA93F263AF54936 /* GDTCORLifecycle.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCORLifecycle.m; path = GoogleDataTransport/GDTCORLibrary/GDTCORLifecycle.m; sourceTree = "<group>"; };
-		F64674054E333DDB791F8475B920E654 /* tcp_server_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tcp_server_posix.cc; path = src/core/lib/iomgr/tcp_server_posix.cc; sourceTree = "<group>"; };
+		F64674054E333DDB791F8475B920E654 /* tcp_server_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tcp_server_posix.cc; path = src/core/lib/iomgr/tcp_server_posix.cc; sourceTree = "<group>"; };
 		F658D6265DF28535284C7A82A40E6439 /* udp_listener_config.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = udp_listener_config.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/listener/udp_listener_config.upb.h"; sourceTree = "<group>"; };
 		F6655720AE9F0D854B49897940D62AA2 /* ev_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ev_posix.h; path = src/core/lib/iomgr/ev_posix.h; sourceTree = "<group>"; };
 		F68C3DF30767A04B0DF4230607B7F6A2 /* testharness.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = testharness.h; path = util/testharness.h; sourceTree = "<group>"; };
-		F6BC48AC896DD7BA23463EB42C70782D /* target.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = target.nanopb.cc; path = Firestore/Protos/nanopb/firestore/local/target.nanopb.cc; sourceTree = "<group>"; };
+		F6BC48AC896DD7BA23463EB42C70782D /* target.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = target.nanopb.cc; path = Firestore/Protos/nanopb/firestore/local/target.nanopb.cc; sourceTree = "<group>"; };
 		F6BD9BC18E620CC112F6BC7B1F76A566 /* FIRCoreDiagnosticsConnector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRCoreDiagnosticsConnector.h; path = FirebaseCore/Sources/Private/FIRCoreDiagnosticsConnector.h; sourceTree = "<group>"; };
-		F6C8C93EEA56F04D53FD7ED95C8E9E85 /* time_zone_if.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = time_zone_if.cc; path = absl/time/internal/cctz/src/time_zone_if.cc; sourceTree = "<group>"; };
+		F6C8C93EEA56F04D53FD7ED95C8E9E85 /* time_zone_if.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = time_zone_if.cc; path = absl/time/internal/cctz/src/time_zone_if.cc; sourceTree = "<group>"; };
 		F6CF0A9D8A39F232B4A078C5C01C5564 /* gsec.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = gsec.h; path = src/core/tsi/alts/crypt/gsec.h; sourceTree = "<group>"; };
 		F73EE067352B6638684A141DBE375E08 /* GDTCORConsoleLogger.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORConsoleLogger.h; path = GoogleDataTransport/GDTCORLibrary/Public/GoogleDataTransport/GDTCORConsoleLogger.h; sourceTree = "<group>"; };
 		F75AFFBFECCDF710DC89BA989917E022 /* ssl3.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl3.h; path = src/include/openssl/ssl3.h; sourceTree = "<group>"; };
-		F783DEC97A6770DF85637A6DBF2D7FC0 /* time_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = time_windows.cc; path = src/core/lib/gpr/time_windows.cc; sourceTree = "<group>"; };
+		F783DEC97A6770DF85637A6DBF2D7FC0 /* time_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = time_windows.cc; path = src/core/lib/gpr/time_windows.cc; sourceTree = "<group>"; };
 		F78A6AC1C9EE4442A0AFC9DF8B0C47E1 /* algorithm_metadata.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = algorithm_metadata.h; path = src/core/lib/compression/algorithm_metadata.h; sourceTree = "<group>"; };
 		F79F18C4A3CB5CEBB3C23BB641C292F2 /* GDTCOREvent.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCOREvent.m; path = GoogleDataTransport/GDTCORLibrary/GDTCOREvent.m; sourceTree = "<group>"; };
-		F7A7673F6699F75E85DF4F00678B0E7B /* protocol.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = protocol.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c"; sourceTree = "<group>"; };
+		F7A7673F6699F75E85DF4F00678B0E7B /* protocol.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = protocol.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c"; sourceTree = "<group>"; };
 		F7C87B8F126C2941D236CEB479D06C2F /* manual_constructor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = manual_constructor.h; path = src/core/lib/gprpp/manual_constructor.h; sourceTree = "<group>"; };
 		F7CAA654EF86DC3D56B9050054670D25 /* FirebaseCoreInternal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FirebaseCoreInternal.h; path = FirebaseCore/Sources/Private/FirebaseCoreInternal.h; sourceTree = "<group>"; };
 		F7D6B1C3508F7501DFA1524AC439FC6D /* FirebaseFirestore.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = FirebaseFirestore.modulemap; sourceTree = "<group>"; };
-		F7E070EFD5E2E04EBD97F105B8D16655 /* secure_server_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = secure_server_credentials.cc; path = src/cpp/server/secure_server_credentials.cc; sourceTree = "<group>"; };
+		F7E070EFD5E2E04EBD97F105B8D16655 /* secure_server_credentials.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = secure_server_credentials.cc; path = src/cpp/server/secure_server_credentials.cc; sourceTree = "<group>"; };
 		F7E0BEAD4E6CED7A6A165974FF73E690 /* FIRGetProjectConfigResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRGetProjectConfigResponse.m; path = FirebaseAuth/Sources/Backend/RPC/FIRGetProjectConfigResponse.m; sourceTree = "<group>"; };
 		F7F2309774FF5BE8DA4F7EDD09FE9862 /* client_channel_channelz.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = client_channel_channelz.h; path = src/core/ext/filters/client_channel/client_channel_channelz.h; sourceTree = "<group>"; };
 		F7F2C31B3332653D879B285232F17341 /* low_level_scheduling.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = low_level_scheduling.h; path = absl/base/internal/low_level_scheduling.h; sourceTree = "<group>"; };
-		F7FC10B4EB61F0F79A566E5E7C8C4824 /* grpc_context.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = grpc_context.cc; path = src/core/ext/filters/census/grpc_context.cc; sourceTree = "<group>"; };
+		F7FC10B4EB61F0F79A566E5E7C8C4824 /* grpc_context.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = grpc_context.cc; path = src/core/ext/filters/census/grpc_context.cc; sourceTree = "<group>"; };
 		F81C90E0F001C9C92FE8A3262893218A /* resolver_registry.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resolver_registry.h; path = src/core/ext/filters/client_channel/resolver_registry.h; sourceTree = "<group>"; };
-		F824E2361FC477F092C67D44A7A70961 /* x509name.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509name.c; path = src/crypto/x509/x509name.c; sourceTree = "<group>"; };
-		F82DEA78C794778CD743DE7A4B6DC864 /* listener.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = listener.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/listener.upb.c"; sourceTree = "<group>"; };
+		F824E2361FC477F092C67D44A7A70961 /* x509name.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509name.c; path = src/crypto/x509/x509name.c; sourceTree = "<group>"; };
+		F82DEA78C794778CD743DE7A4B6DC864 /* listener.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = listener.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/listener.upb.c"; sourceTree = "<group>"; };
 		F8497F9D9F4F14F329CE23377F3086C5 /* wakeup_fd_pipe.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = wakeup_fd_pipe.h; path = src/core/lib/iomgr/wakeup_fd_pipe.h; sourceTree = "<group>"; };
-		F84EE48A732F8FF48CDCECDEDC5E7EDF /* tls13_server.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tls13_server.cc; path = src/ssl/tls13_server.cc; sourceTree = "<group>"; };
-		F8648AB2631D082233EB1BA03EF3363B /* rsa_pss.c */ = {isa = PBXFileReference; includeInIndex = 1; name = rsa_pss.c; path = src/crypto/x509/rsa_pss.c; sourceTree = "<group>"; };
+		F84EE48A732F8FF48CDCECDEDC5E7EDF /* tls13_server.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tls13_server.cc; path = src/ssl/tls13_server.cc; sourceTree = "<group>"; };
+		F8648AB2631D082233EB1BA03EF3363B /* rsa_pss.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = rsa_pss.c; path = src/crypto/x509/rsa_pss.c; sourceTree = "<group>"; };
 		F8663B8B50ECEA9E3FCECD7CAB565092 /* handshaker_registry.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = handshaker_registry.h; path = src/core/lib/channel/handshaker_registry.h; sourceTree = "<group>"; };
-		F86A33DA73E83EC7846C690BD08C654F /* channel_connectivity.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = channel_connectivity.cc; path = src/core/ext/filters/client_channel/channel_connectivity.cc; sourceTree = "<group>"; };
+		F86A33DA73E83EC7846C690BD08C654F /* channel_connectivity.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = channel_connectivity.cc; path = src/core/ext/filters/client_channel/channel_connectivity.cc; sourceTree = "<group>"; };
 		F899DAA787EC00CBCDC891CC0B4143B8 /* global_config_custom.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = global_config_custom.h; path = src/core/lib/gprpp/global_config_custom.h; sourceTree = "<group>"; };
 		F89AEE02B47E4990D9301B5F8D17C44D /* GDTCORFlatFileStorage.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GDTCORFlatFileStorage.m; path = GoogleDataTransport/GDTCORLibrary/GDTCORFlatFileStorage.m; sourceTree = "<group>"; };
-		F8B26C8F177BFB417A73CF28DE520249 /* cbb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = cbb.c; path = src/crypto/bytestring/cbb.c; sourceTree = "<group>"; };
+		F8B26C8F177BFB417A73CF28DE520249 /* cbb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = cbb.c; path = src/crypto/bytestring/cbb.c; sourceTree = "<group>"; };
 		F8BA9E2D741A8376695E28B47E8978B3 /* struct.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = struct.upb.h; path = "src/core/ext/upb-generated/google/protobuf/struct.upb.h"; sourceTree = "<group>"; };
 		F9031E585329C9394748277333DD3CB2 /* orphanable.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = orphanable.h; path = src/core/lib/gprpp/orphanable.h; sourceTree = "<group>"; };
 		F9115241B99A895443A2145423984137 /* tcp_server.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tcp_server.h; path = src/core/lib/iomgr/tcp_server.h; sourceTree = "<group>"; };
 		F934ED88754A80B49DB8DCA5903EDEFA /* GDTCORRegistrar_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCORRegistrar_Private.h; path = GoogleDataTransport/GDTCORLibrary/Private/GDTCORRegistrar_Private.h; sourceTree = "<group>"; };
-		F9753451F95866BC83277D27E7C844DF /* digests.c */ = {isa = PBXFileReference; includeInIndex = 1; name = digests.c; path = src/crypto/fipsmodule/digest/digests.c; sourceTree = "<group>"; };
+		F9753451F95866BC83277D27E7C844DF /* digests.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = digests.c; path = src/crypto/fipsmodule/digest/digests.c; sourceTree = "<group>"; };
 		F97E1C0E548C1D4A935307250FC31D71 /* iomgr.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = iomgr.h; path = src/core/lib/iomgr/iomgr.h; sourceTree = "<group>"; };
 		F98A291B32488AC682D643AC6B4BA077 /* server.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = server.h; path = src/core/lib/surface/server.h; sourceTree = "<group>"; };
 		F9BC1918F8950E96C6FDA34FE62D8470 /* port_platform.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = port_platform.h; path = include/grpc/impl/codegen/port_platform.h; sourceTree = "<group>"; };
 		F9C9D3E0902B994849D9E164B142EE8A /* FBLPromise+Retry.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "FBLPromise+Retry.m"; path = "Sources/FBLPromises/FBLPromise+Retry.m"; sourceTree = "<group>"; };
 		F9F907CEEF572BCB3ABD26DE6F8F4DF3 /* FIRGoogleAuthProvider.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRGoogleAuthProvider.h; path = FirebaseAuth/Sources/Public/FirebaseAuth/FIRGoogleAuthProvider.h; sourceTree = "<group>"; };
-		FA0800711C5A7769E7D8D9A4B4524D36 /* filename.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = filename.cc; path = db/filename.cc; sourceTree = "<group>"; };
+		FA0800711C5A7769E7D8D9A4B4524D36 /* filename.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = filename.cc; path = db/filename.cc; sourceTree = "<group>"; };
 		FA24ED7B18A9735DE3635122F7EBE760 /* health_check_service_interface.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = health_check_service_interface.h; path = include/grpcpp/health_check_service_interface.h; sourceTree = "<group>"; };
 		FA2E0004CC3672D09C58863FC870FD02 /* murmur_hash.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = murmur_hash.h; path = src/core/lib/gpr/murmur_hash.h; sourceTree = "<group>"; };
-		FAAD6B431FBCEBB3A043F6FB1C191834 /* channel_create_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = channel_create_posix.cc; path = src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc; sourceTree = "<group>"; };
+		FAAD6B431FBCEBB3A043F6FB1C191834 /* channel_create_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = channel_create_posix.cc; path = src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc; sourceTree = "<group>"; };
 		FAB11E6B8CC6A0C04CF5ACF227B61F59 /* status_conversion.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = status_conversion.h; path = src/core/lib/transport/status_conversion.h; sourceTree = "<group>"; };
-		FABB3F4CF41338AF88C86BFEE2FCFCF1 /* FIRFirestoreVersion.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FIRFirestoreVersion.mm; path = Firestore/Source/API/FIRFirestoreVersion.mm; sourceTree = "<group>"; };
-		FACDFCF483D3914FE39FB0724E5051DE /* error_utils.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = error_utils.cc; path = src/core/lib/transport/error_utils.cc; sourceTree = "<group>"; };
+		FABB3F4CF41338AF88C86BFEE2FCFCF1 /* FIRFirestoreVersion.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FIRFirestoreVersion.mm; path = Firestore/Source/API/FIRFirestoreVersion.mm; sourceTree = "<group>"; };
+		FACDFCF483D3914FE39FB0724E5051DE /* error_utils.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = error_utils.cc; path = src/core/lib/transport/error_utils.cc; sourceTree = "<group>"; };
 		FB00618947DD5DB10B26F1B1C49F11BA /* status_util.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = status_util.h; path = src/core/lib/channel/status_util.h; sourceTree = "<group>"; };
 		FB432A0EE0A7B0E773C875622350DB81 /* FIROAuthProvider.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIROAuthProvider.m; path = FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthProvider.m; sourceTree = "<group>"; };
 		FB44195EB955AD886771DD665965D531 /* FIRWithdrawMFAResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRWithdrawMFAResponse.m; path = FirebaseAuth/Sources/Backend/RPC/MultiFactor/Unenroll/FIRWithdrawMFAResponse.m; sourceTree = "<group>"; };
 		FB466E676DDBA69EE38745E05E55D2DC /* aead.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = aead.h; path = src/include/openssl/aead.h; sourceTree = "<group>"; };
-		FB777F27295666D76008C5F25E5608AE /* filesystem_common.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = filesystem_common.cc; path = Firestore/core/src/util/filesystem_common.cc; sourceTree = "<group>"; };
-		FB811E1E252FA631112AEC632AF38F8D /* port_def.inc */ = {isa = PBXFileReference; includeInIndex = 1; name = port_def.inc; path = third_party/upb/upb/port_def.inc; sourceTree = "<group>"; };
-		FB821A33DA7EDC2BAAFD33E3A9845CA5 /* filesystem_apple.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = filesystem_apple.mm; path = Firestore/core/src/util/filesystem_apple.mm; sourceTree = "<group>"; };
+		FB777F27295666D76008C5F25E5608AE /* filesystem_common.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = filesystem_common.cc; path = Firestore/core/src/util/filesystem_common.cc; sourceTree = "<group>"; };
+		FB811E1E252FA631112AEC632AF38F8D /* port_def.inc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.pascal; name = port_def.inc; path = third_party/upb/upb/port_def.inc; sourceTree = "<group>"; };
+		FB821A33DA7EDC2BAAFD33E3A9845CA5 /* filesystem_apple.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = filesystem_apple.mm; path = Firestore/core/src/util/filesystem_apple.mm; sourceTree = "<group>"; };
 		FB848AA0FD6A08C7ABB533926F5AC54B /* optimization.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = optimization.h; path = absl/base/optimization.h; sourceTree = "<group>"; };
-		FB910E17E39F65699B30BC197E554755 /* server_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = server_posix.cc; path = src/cpp/server/server_posix.cc; sourceTree = "<group>"; };
-		FB93568B0961E6418E180D0B232DAF5D /* resolve_address_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = resolve_address_windows.cc; path = src/core/lib/iomgr/resolve_address_windows.cc; sourceTree = "<group>"; };
-		FB94766535277EBACB30B176CC00A9E4 /* route.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; name = route.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/route.upb.c"; sourceTree = "<group>"; };
-		FBF2582F38280E35DA9040914E382BC2 /* version.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = version.cc; path = src/core/lib/surface/version.cc; sourceTree = "<group>"; };
+		FB910E17E39F65699B30BC197E554755 /* server_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = server_posix.cc; path = src/cpp/server/server_posix.cc; sourceTree = "<group>"; };
+		FB93568B0961E6418E180D0B232DAF5D /* resolve_address_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = resolve_address_windows.cc; path = src/core/lib/iomgr/resolve_address_windows.cc; sourceTree = "<group>"; };
+		FB94766535277EBACB30B176CC00A9E4 /* route.upb.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = route.upb.c; path = "src/core/ext/upb-generated/envoy/api/v2/route.upb.c"; sourceTree = "<group>"; };
+		FBF2582F38280E35DA9040914E382BC2 /* version.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = version.cc; path = src/core/lib/surface/version.cc; sourceTree = "<group>"; };
 		FC042D496AC36D676AD58A582118C650 /* serialization_traits.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = serialization_traits.h; path = include/grpcpp/impl/serialization_traits.h; sourceTree = "<group>"; };
-		FC071C7724C9B426310BE3E3D363AE51 /* FIRCollectionReference.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FIRCollectionReference.mm; path = Firestore/Source/API/FIRCollectionReference.mm; sourceTree = "<group>"; };
+		FC071C7724C9B426310BE3E3D363AE51 /* FIRCollectionReference.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FIRCollectionReference.mm; path = Firestore/Source/API/FIRCollectionReference.mm; sourceTree = "<group>"; };
 		FC18A3F3CD55BB5CB35C0F0C1A75D5E1 /* FIRCoreDiagnosticsData.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRCoreDiagnosticsData.h; path = Interop/CoreDiagnostics/Public/FIRCoreDiagnosticsData.h; sourceTree = "<group>"; };
 		FC47C269C02650CB8FD3509FABED5798 /* FIRAppInternal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FIRAppInternal.h; path = FirebaseCore/Sources/Private/FIRAppInternal.h; sourceTree = "<group>"; };
-		FC52D530EF393C6B9B81101B569963A1 /* fips_shared_support.c */ = {isa = PBXFileReference; includeInIndex = 1; name = fips_shared_support.c; path = src/crypto/fipsmodule/fips_shared_support.c; sourceTree = "<group>"; };
+		FC52D530EF393C6B9B81101B569963A1 /* fips_shared_support.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = fips_shared_support.c; path = src/crypto/fipsmodule/fips_shared_support.c; sourceTree = "<group>"; };
 		FCCDA2208875105AFB64E7AC4F352FAF /* dynamic_thread_pool.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = dynamic_thread_pool.h; path = src/cpp/server/dynamic_thread_pool.h; sourceTree = "<group>"; };
 		FCD215B28890C815A8DF3EB5AECBF25F /* FIRGoogleAuthProvider.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRGoogleAuthProvider.m; path = FirebaseAuth/Sources/AuthProvider/Google/FIRGoogleAuthProvider.m; sourceTree = "<group>"; };
 		FCDF8C799B8BFA73DBDBC4BC81152344 /* is_epollexclusive_available.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = is_epollexclusive_available.h; path = src/core/lib/iomgr/is_epollexclusive_available.h; sourceTree = "<group>"; };
 		FD0146D582495D602CAFD047CF2F85C3 /* ev_epollex_linux.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ev_epollex_linux.h; path = src/core/lib/iomgr/ev_epollex_linux.h; sourceTree = "<group>"; };
-		FD1A762D31CF5E04571260D418ED0099 /* tcp_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tcp_posix.cc; path = src/core/lib/iomgr/tcp_posix.cc; sourceTree = "<group>"; };
-		FD25C7F3A0A07BEDC49B0F57A7C57E80 /* iomgr_posix_cfstream.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = iomgr_posix_cfstream.cc; path = src/core/lib/iomgr/iomgr_posix_cfstream.cc; sourceTree = "<group>"; };
-		FD43ECACD978848922CF664251DC4A4A /* tcp_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tcp_windows.cc; path = src/core/lib/iomgr/tcp_windows.cc; sourceTree = "<group>"; };
+		FD1A762D31CF5E04571260D418ED0099 /* tcp_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tcp_posix.cc; path = src/core/lib/iomgr/tcp_posix.cc; sourceTree = "<group>"; };
+		FD25C7F3A0A07BEDC49B0F57A7C57E80 /* iomgr_posix_cfstream.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = iomgr_posix_cfstream.cc; path = src/core/lib/iomgr/iomgr_posix_cfstream.cc; sourceTree = "<group>"; };
+		FD43ECACD978848922CF664251DC4A4A /* tcp_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tcp_windows.cc; path = src/core/lib/iomgr/tcp_windows.cc; sourceTree = "<group>"; };
 		FD62B1B7DDB58AA386237461C7B85228 /* async_stream.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = async_stream.h; path = include/grpcpp/support/async_stream.h; sourceTree = "<group>"; };
 		FD74617814F7E705792736F2EBEAE018 /* jwt_verifier.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = jwt_verifier.h; path = src/core/lib/security/credentials/jwt/jwt_verifier.h; sourceTree = "<group>"; };
 		FD8668209DB8E99CD9A03AE4946AFE97 /* endpoint_components.upb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = endpoint_components.upb.h; path = "src/core/ext/upb-generated/envoy/api/v2/endpoint/endpoint_components.upb.h"; sourceTree = "<group>"; };
-		FD8BB15B006C49E21E1955784C4DB400 /* throw_delegate.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = throw_delegate.cc; path = absl/base/internal/throw_delegate.cc; sourceTree = "<group>"; };
+		FD8BB15B006C49E21E1955784C4DB400 /* throw_delegate.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = throw_delegate.cc; path = absl/base/internal/throw_delegate.cc; sourceTree = "<group>"; };
 		FDC0CB6C540756F3888F521E618B54FF /* FIRAuthProvider.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRAuthProvider.m; path = FirebaseAuth/Sources/AuthProvider/FIRAuthProvider.m; sourceTree = "<group>"; };
-		FDC3E212CD0B3159D02890FA3860BE81 /* x509cset.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x509cset.c; path = src/crypto/x509/x509cset.c; sourceTree = "<group>"; };
+		FDC3E212CD0B3159D02890FA3860BE81 /* x509cset.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x509cset.c; path = src/crypto/x509/x509cset.c; sourceTree = "<group>"; };
 		FDCD790B19C50EFFD9E1B0D8443E354E /* message_compress_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = message_compress_filter.h; path = src/core/ext/filters/http/message_compress/message_compress_filter.h; sourceTree = "<group>"; };
 		FE1747A784C6A6F35880EC90D223489F /* bdp_estimator.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = bdp_estimator.h; path = src/core/lib/transport/bdp_estimator.h; sourceTree = "<group>"; };
 		FE28992D66CAF74BF56D102F30999CCA /* static_metadata.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = static_metadata.h; path = src/core/lib/transport/static_metadata.h; sourceTree = "<group>"; };
@@ -11511,23 +11512,23 @@
 		FE5B99BBBD28C0EF96AFAC5B90300A4D /* GDTCCTUploader.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GDTCCTUploader.h; path = GoogleDataTransport/GDTCCTLibrary/Private/GDTCCTUploader.h; sourceTree = "<group>"; };
 		FE84E020EFA469FCA50F80951571F6E8 /* FirebaseCore.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FirebaseCore.release.xcconfig; sourceTree = "<group>"; };
 		FE939F443525415D2EC4FD17E2B8BB67 /* resolver.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = resolver.h; path = src/core/ext/filters/client_channel/resolver.h; sourceTree = "<group>"; };
-		FEB48AF4596533F1B94F2C1239551196 /* iocp_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = iocp_windows.cc; path = src/core/lib/iomgr/iocp_windows.cc; sourceTree = "<group>"; };
+		FEB48AF4596533F1B94F2C1239551196 /* iocp_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = iocp_windows.cc; path = src/core/lib/iomgr/iocp_windows.cc; sourceTree = "<group>"; };
 		FED0BA9DF54A93961CADF04DBA3D7420 /* compression_internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = compression_internal.h; path = src/core/lib/compression/compression_internal.h; sourceTree = "<group>"; };
-		FED412BE983032F51F99512BCFBF4907 /* memory_bundle_cache.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = memory_bundle_cache.cc; path = Firestore/core/src/local/memory_bundle_cache.cc; sourceTree = "<group>"; };
+		FED412BE983032F51F99512BCFBF4907 /* memory_bundle_cache.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = memory_bundle_cache.cc; path = Firestore/core/src/local/memory_bundle_cache.cc; sourceTree = "<group>"; };
 		FED884A10D7D5E3251901329F06B393C /* metadata_batch.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = metadata_batch.h; path = src/core/lib/transport/metadata_batch.h; sourceTree = "<group>"; };
 		FF01BBF48AF2D9D20BBFF1AE523C732C /* arena.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = arena.h; path = src/core/lib/gpr/arena.h; sourceTree = "<group>"; };
-		FF05D42C924CCE3D0460D38E2BA73C9E /* FIRSnapshotMetadata.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FIRSnapshotMetadata.mm; path = Firestore/Source/API/FIRSnapshotMetadata.mm; sourceTree = "<group>"; };
+		FF05D42C924CCE3D0460D38E2BA73C9E /* FIRSnapshotMetadata.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FIRSnapshotMetadata.mm; path = Firestore/Source/API/FIRSnapshotMetadata.mm; sourceTree = "<group>"; };
 		FF12BA3F947E9063166E28E4841B6957 /* socket_factory_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = socket_factory_posix.h; path = src/core/lib/iomgr/socket_factory_posix.h; sourceTree = "<group>"; };
 		FF16E328998F5F5326E3AFA3A5B70F7B /* FIRSecureTokenRequest.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRSecureTokenRequest.m; path = FirebaseAuth/Sources/Backend/RPC/FIRSecureTokenRequest.m; sourceTree = "<group>"; };
-		FF61E98B30DDA597625744522C9894C9 /* x_x509a.c */ = {isa = PBXFileReference; includeInIndex = 1; name = x_x509a.c; path = src/crypto/x509/x_x509a.c; sourceTree = "<group>"; };
-		FF94520DEBD10E530B41600D03DD679E /* digestsign.c */ = {isa = PBXFileReference; includeInIndex = 1; name = digestsign.c; path = src/crypto/evp/digestsign.c; sourceTree = "<group>"; };
-		FF99E16464B7809593A95292EE354AA3 /* tmpfile_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = tmpfile_posix.cc; path = src/core/lib/gpr/tmpfile_posix.cc; sourceTree = "<group>"; };
+		FF61E98B30DDA597625744522C9894C9 /* x_x509a.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = x_x509a.c; path = src/crypto/x509/x_x509a.c; sourceTree = "<group>"; };
+		FF94520DEBD10E530B41600D03DD679E /* digestsign.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; name = digestsign.c; path = src/crypto/evp/digestsign.c; sourceTree = "<group>"; };
+		FF99E16464B7809593A95292EE354AA3 /* tmpfile_posix.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = tmpfile_posix.cc; path = src/core/lib/gpr/tmpfile_posix.cc; sourceTree = "<group>"; };
 		FF9A884E5A9720705A04571B7CC6180E /* compare.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = compare.h; path = absl/types/compare.h; sourceTree = "<group>"; };
 		FF9D1C190AC23ED09A5540EE7218FE79 /* FIRCreateAuthURIResponse.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FIRCreateAuthURIResponse.m; path = FirebaseAuth/Sources/Backend/RPC/FIRCreateAuthURIResponse.m; sourceTree = "<group>"; };
-		FFBF2BB439F76F0A9BA4E2DBC06AD0CE /* FIRTransaction.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = FIRTransaction.mm; path = Firestore/Source/API/FIRTransaction.mm; sourceTree = "<group>"; };
-		FFC4EB13922B65988A61EDEE13316592 /* leveldb_index_manager.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = leveldb_index_manager.cc; path = Firestore/core/src/local/leveldb_index_manager.cc; sourceTree = "<group>"; };
-		FFD616170117E301C60B4934A96349FF /* socket_utils_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = socket_utils_windows.cc; path = src/core/lib/iomgr/socket_utils_windows.cc; sourceTree = "<group>"; };
-		FFF7FCF41FD632C1C269B09EBFE2BFCE /* timestamp.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; name = timestamp.nanopb.cc; path = Firestore/Protos/nanopb/google/protobuf/timestamp.nanopb.cc; sourceTree = "<group>"; };
+		FFBF2BB439F76F0A9BA4E2DBC06AD0CE /* FIRTransaction.mm */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.objcpp; name = FIRTransaction.mm; path = Firestore/Source/API/FIRTransaction.mm; sourceTree = "<group>"; };
+		FFC4EB13922B65988A61EDEE13316592 /* leveldb_index_manager.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = leveldb_index_manager.cc; path = Firestore/core/src/local/leveldb_index_manager.cc; sourceTree = "<group>"; };
+		FFD616170117E301C60B4934A96349FF /* socket_utils_windows.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = socket_utils_windows.cc; path = src/core/lib/iomgr/socket_utils_windows.cc; sourceTree = "<group>"; };
+		FFF7FCF41FD632C1C269B09EBFE2BFCE /* timestamp.nanopb.cc */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.cpp.cpp; name = timestamp.nanopb.cc; path = Firestore/Protos/nanopb/google/protobuf/timestamp.nanopb.cc; sourceTree = "<group>"; };
 /* End PBXFileReference section */
 
 /* Begin PBXFrameworksBuildPhase section */
@@ -13165,7 +13166,6 @@
 				C5675FF96BE6572A5D7DAEDE6D40BA34 /* types */,
 				8579C772FFDFB74B25FF0386893BF9A2 /* utility */,
 			);
-			name = abseil;
 			path = abseil;
 			sourceTree = "<group>";
 		};
@@ -13183,7 +13183,6 @@
 				9C8ACEE90B8FF974B0A9D3618A4E8B79 /* CLTypingLabel.swift */,
 				D61A67E60ED39F6D1A2B0351169A4E6C /* Support Files */,
 			);
-			name = CLTypingLabel;
 			path = CLTypingLabel;
 			sourceTree = "<group>";
 		};
@@ -14046,7 +14045,6 @@
 				0ACA657CEB2517604E9490E2E371FE34 /* NSData+FIRBase64.m */,
 				FA2BB144B9C612B4DF4016AE08DCA5D9 /* Support Files */,
 			);
-			name = FirebaseAuth;
 			path = FirebaseAuth;
 			sourceTree = "<group>";
 		};
@@ -14303,7 +14301,6 @@
 				79841F8654DD43E754002153099E1090 /* writer.cc */,
 				BE1F265FD43CF08EB727FD93F2C8F100 /* Support Files */,
 			);
-			name = FirebaseFirestore;
 			path = FirebaseFirestore;
 			sourceTree = "<group>";
 		};
@@ -14376,7 +14373,6 @@
 				416E33BD331702109DA70EF21A3942BB /* FIRStorageUtils.m */,
 				5206911C6048C0675DAA32D18B3265CE /* Support Files */,
 			);
-			name = FirebaseStorage;
 			path = FirebaseStorage;
 			sourceTree = "<group>";
 		};
@@ -14491,7 +14487,6 @@
 				254A05C92080FBEFF873BFB88F531DF6 /* write_batch_internal.h */,
 				8BFD67BAF12E1D469520458DCB45B7D6 /* Support Files */,
 			);
-			name = "leveldb-library";
 			path = "leveldb-library";
 			sourceTree = "<group>";
 		};
@@ -14550,7 +14545,6 @@
 				596D7A1183DB86AB654623B629245FA2 /* FIRVersion.m */,
 				21747240E8D713C3CAC76AECF987EFBB /* Support Files */,
 			);
-			name = FirebaseCore;
 			path = FirebaseCore;
 			sourceTree = "<group>";
 		};
@@ -14584,7 +14578,6 @@
 				B7A4C0E1E6054A19A95A9C575C5D89F4 /* Interface */,
 				8EF86DB2E84338077C14130999E2D6A6 /* Support Files */,
 			);
-			name = "BoringSSL-GRPC";
 			path = "BoringSSL-GRPC";
 			sourceTree = "<group>";
 		};
@@ -14647,7 +14640,6 @@
 				C830454FB60B23605DBB72A847C8A565 /* FBLPromises.h */,
 				18BE442B89E27DFE2BD50E763A0FDC33 /* Support Files */,
 			);
-			name = PromisesObjC;
 			path = PromisesObjC;
 			sourceTree = "<group>";
 		};
@@ -14689,7 +14681,6 @@
 				C7B9295B2D3E989BADE050424B9B99D3 /* encode */,
 				E4CC91B092935E987760AD4C2FAD740A /* Support Files */,
 			);
-			name = nanopb;
 			path = nanopb;
 			sourceTree = "<group>";
 		};
@@ -14764,7 +14755,6 @@
 				BA50B421344CC32DE489867C083033A0 /* GoogleDataTransport.h */,
 				C5B242051CADCF41F3AA77B4A5623714 /* Support Files */,
 			);
-			name = GoogleDataTransport;
 			path = GoogleDataTransport;
 			sourceTree = "<group>";
 		};
@@ -14823,7 +14813,6 @@
 				C42BEC02B0DC5FB69076F2628465E025 /* Interface */,
 				77D33BA56E56929FA3AA1F63BE937FF0 /* Support Files */,
 			);
-			name = "gRPC-Core";
 			path = "gRPC-Core";
 			sourceTree = "<group>";
 		};
@@ -14955,7 +14944,6 @@
 				ED19ED5A611A0D8DD90B3EE14D5D2BAE /* Reachability */,
 				4731D9AFF7FD38A200BB27BFCE4EE970 /* Support Files */,
 			);
-			name = GoogleUtilities;
 			path = GoogleUtilities;
 			sourceTree = "<group>";
 		};
@@ -15516,7 +15504,6 @@
 				6FC159D6E5907D97A57F324359E41DD9 /* firebasecore.nanopb.h */,
 				D3AB767802F481479FA6BFEE221FD81A /* Support Files */,
 			);
-			name = FirebaseCoreDiagnostics;
 			path = FirebaseCoreDiagnostics;
 			sourceTree = "<group>";
 		};
@@ -15546,7 +15533,6 @@
 				A084C42CE63E7CC053D1920F3B82A2AF /* Resources */,
 				52E56FB585D1739BB5B649D53AA89152 /* Support Files */,
 			);
-			name = "gRPC-C++";
 			path = "gRPC-C++";
 			sourceTree = "<group>";
 		};
@@ -15571,7 +15557,6 @@
 				340E29E4B73E2E369F8D8A1198CFB19B /* CoreOnly */,
 				F38871DE8AB9E14FEB65CBEA13951A07 /* Support Files */,
 			);
-			name = Firebase;
 			path = Firebase;
 			sourceTree = "<group>";
 		};
@@ -15669,7 +15654,6 @@
 				FD31AA2DDC2CFD543339AC9A79617413 /* Core */,
 				36E56590DF7105127E4A71BE479CF4B5 /* Support Files */,
 			);
-			name = GTMSessionFetcher;
 			path = GTMSessionFetcher;
 			sourceTree = "<group>";
 		};
@@ -18115,7 +18099,7 @@
 			isa = PBXProject;
 			attributes = {
 				LastSwiftUpdateCheck = 1100;
-				LastUpgradeCheck = 1100;
+				LastUpgradeCheck = 1240;
 			};
 			buildConfigurationList = 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */;
 			compatibilityVersion = "Xcode 9.3";
@@ -20056,7 +20040,7 @@
 				DYLIB_INSTALL_NAME_BASE = "@rpath";
 				INFOPLIST_FILE = "Target Support Files/FirebaseFirestore/FirebaseFirestore-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20130,7 +20114,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/CLTypingLabel/CLTypingLabel-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/CLTypingLabel/CLTypingLabel-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20164,7 +20148,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/gRPC-C++/gRPC-C++-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/gRPC-C++/gRPC-C++-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20198,7 +20182,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/abseil/abseil-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/abseil/abseil-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20232,7 +20216,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/BoringSSL-GRPC/BoringSSL-GRPC-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/BoringSSL-GRPC/BoringSSL-GRPC-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20265,7 +20249,7 @@
 				DYLIB_INSTALL_NAME_BASE = "@rpath";
 				INFOPLIST_FILE = "Target Support Files/GoogleDataTransport/GoogleDataTransport-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20300,7 +20284,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/nanopb/nanopb-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/nanopb/nanopb-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20334,7 +20318,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/gRPC-Core/gRPC-Core-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/gRPC-Core/gRPC-Core-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20367,7 +20351,7 @@
 				DYLIB_INSTALL_NAME_BASE = "@rpath";
 				INFOPLIST_FILE = "Target Support Files/PromisesObjC/PromisesObjC-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20403,7 +20387,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/CLTypingLabel/CLTypingLabel-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/CLTypingLabel/CLTypingLabel-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20437,7 +20421,7 @@
 				DYLIB_INSTALL_NAME_BASE = "@rpath";
 				INFOPLIST_FILE = "Target Support Files/GoogleUtilities/GoogleUtilities-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20472,7 +20456,7 @@
 				DYLIB_INSTALL_NAME_BASE = "@rpath";
 				INFOPLIST_FILE = "Target Support Files/FirebaseAuth/FirebaseAuth-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20505,7 +20489,7 @@
 				DYLIB_INSTALL_NAME_BASE = "@rpath";
 				INFOPLIST_FILE = "Target Support Files/FirebaseCoreDiagnostics/FirebaseCoreDiagnostics-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20539,7 +20523,7 @@
 				DYLIB_INSTALL_NAME_BASE = "@rpath";
 				INFOPLIST_FILE = "Target Support Files/FirebaseStorage/FirebaseStorage-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20573,7 +20557,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/GTMSessionFetcher/GTMSessionFetcher-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/GTMSessionFetcher/GTMSessionFetcher-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20607,7 +20591,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/nanopb/nanopb-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/nanopb/nanopb-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20642,7 +20626,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/GTMSessionFetcher/GTMSessionFetcher-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/GTMSessionFetcher/GTMSessionFetcher-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20706,7 +20690,7 @@
 				CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/gRPC-C++";
 				IBSC_MODULE = grpcpp;
 				INFOPLIST_FILE = "Target Support Files/gRPC-C++/ResourceBundle-gRPCCertificates-Cpp-gRPC-C++-Info.plist";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				PRODUCT_NAME = "gRPCCertificates-Cpp";
 				SDKROOT = iphoneos;
 				SKIP_INSTALL = YES;
@@ -20730,7 +20714,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/gRPC-Core/gRPC-Core-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/gRPC-Core/gRPC-Core-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20757,7 +20741,7 @@
 				CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/gRPC-C++";
 				IBSC_MODULE = grpcpp;
 				INFOPLIST_FILE = "Target Support Files/gRPC-C++/ResourceBundle-gRPCCertificates-Cpp-gRPC-C++-Info.plist";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				PRODUCT_NAME = "gRPCCertificates-Cpp";
 				SDKROOT = iphoneos;
 				SKIP_INSTALL = YES;
@@ -20780,7 +20764,7 @@
 				DYLIB_INSTALL_NAME_BASE = "@rpath";
 				INFOPLIST_FILE = "Target Support Files/FirebaseCore/FirebaseCore-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20813,7 +20797,7 @@
 				DYLIB_INSTALL_NAME_BASE = "@rpath";
 				INFOPLIST_FILE = "Target Support Files/PromisesObjC/PromisesObjC-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -20913,7 +20897,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/gRPC-C++/gRPC-C++-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/gRPC-C++/gRPC-C++-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -21010,7 +20994,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/abseil/abseil-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/abseil/abseil-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -21045,7 +21029,7 @@
 				DYLIB_INSTALL_NAME_BASE = "@rpath";
 				INFOPLIST_FILE = "Target Support Files/FirebaseFirestore/FirebaseFirestore-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -21071,7 +21055,7 @@
 				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
 				ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
 				CLANG_ENABLE_OBJC_WEAK = NO;
-				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -21097,7 +21081,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/leveldb-library/leveldb-library-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/leveldb-library/leveldb-library-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -21131,7 +21115,7 @@
 				DYLIB_INSTALL_NAME_BASE = "@rpath";
 				INFOPLIST_FILE = "Target Support Files/GoogleDataTransport/GoogleDataTransport-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -21157,7 +21141,7 @@
 				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
 				ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
 				CLANG_ENABLE_OBJC_WEAK = NO;
-				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -21181,7 +21165,7 @@
 				DYLIB_INSTALL_NAME_BASE = "@rpath";
 				INFOPLIST_FILE = "Target Support Files/FirebaseCore/FirebaseCore-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -21215,7 +21199,7 @@
 				DYLIB_INSTALL_NAME_BASE = "@rpath";
 				INFOPLIST_FILE = "Target Support Files/GoogleUtilities/GoogleUtilities-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -21249,7 +21233,7 @@
 				DYLIB_INSTALL_NAME_BASE = "@rpath";
 				INFOPLIST_FILE = "Target Support Files/FirebaseAuth/FirebaseAuth-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -21284,7 +21268,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/BoringSSL-GRPC/BoringSSL-GRPC-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/BoringSSL-GRPC/BoringSSL-GRPC-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -21318,7 +21302,7 @@
 				DYLIB_INSTALL_NAME_BASE = "@rpath";
 				INFOPLIST_FILE = "Target Support Files/FirebaseCoreDiagnostics/FirebaseCoreDiagnostics-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -21353,7 +21337,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/leveldb-library/leveldb-library-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/leveldb-library/leveldb-library-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -21387,7 +21371,7 @@
 				DYLIB_INSTALL_NAME_BASE = "@rpath";
 				INFOPLIST_FILE = "Target Support Files/FirebaseStorage/FirebaseStorage-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 12.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/BoringSSL-GRPC.xcscheme b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/BoringSSL-GRPC.xcscheme
index 87d1780..e436f8d 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/BoringSSL-GRPC.xcscheme
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/BoringSSL-GRPC.xcscheme
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Scheme
-   LastUpgradeVersion = "1100"
+   LastUpgradeVersion = "1240"
    version = "1.3">
    <BuildAction
       parallelizeBuildables = "YES"
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/CLTypingLabel.xcscheme b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/CLTypingLabel.xcscheme
index ac020b7..eadf534 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/CLTypingLabel.xcscheme
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/CLTypingLabel.xcscheme
@@ -1,17 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Scheme
-   LastUpgradeVersion = "1100"
+   LastUpgradeVersion = "1240"
    version = "1.3">
    <BuildAction
       parallelizeBuildables = "YES"
       buildImplicitDependencies = "YES">
       <BuildActionEntries>
          <BuildActionEntry
-            buildForAnalyzing = "YES"
             buildForTesting = "YES"
             buildForRunning = "YES"
             buildForProfiling = "YES"
-            buildForArchiving = "YES">
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
                BlueprintIdentifier = "6F8A929BDB6E633BE35459804508532F"
@@ -23,14 +23,15 @@
       </BuildActionEntries>
    </BuildAction>
    <TestAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      shouldUseLaunchSchemeArgsEnv = "YES"
-      buildConfiguration = "Debug">
-      <AdditionalOptions>
-      </AdditionalOptions>
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+      </Testables>
    </TestAction>
    <LaunchAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
       launchStyle = "0"
@@ -38,17 +39,14 @@
       ignoresPersistentStateOnLaunch = "NO"
       debugDocumentVersioning = "YES"
       debugServiceExtension = "internal"
-      buildConfiguration = "Debug"
       allowLocationSimulation = "YES">
-      <AdditionalOptions>
-      </AdditionalOptions>
    </LaunchAction>
    <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
       savedToolIdentifier = ""
       useCustomWorkingDirectory = "NO"
-      debugDocumentVersioning = "YES"
-      buildConfiguration = "Release"
-      shouldUseLaunchSchemeArgsEnv = "YES">
+      debugDocumentVersioning = "YES">
    </ProfileAction>
    <AnalyzeAction
       buildConfiguration = "Debug">
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/Firebase.xcscheme b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/Firebase.xcscheme
index ab9e834..ee79af5 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/Firebase.xcscheme
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/Firebase.xcscheme
@@ -1,17 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Scheme
-   LastUpgradeVersion = "1100"
+   LastUpgradeVersion = "1240"
    version = "1.3">
    <BuildAction
       parallelizeBuildables = "YES"
       buildImplicitDependencies = "YES">
       <BuildActionEntries>
          <BuildActionEntry
-            buildForAnalyzing = "YES"
             buildForTesting = "YES"
             buildForRunning = "YES"
             buildForProfiling = "YES"
-            buildForArchiving = "YES">
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
                BlueprintIdentifier = "072CEA044D2EF26F03496D5996BBF59F"
@@ -23,14 +23,15 @@
       </BuildActionEntries>
    </BuildAction>
    <TestAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      shouldUseLaunchSchemeArgsEnv = "YES"
-      buildConfiguration = "Debug">
-      <AdditionalOptions>
-      </AdditionalOptions>
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+      </Testables>
    </TestAction>
    <LaunchAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
       launchStyle = "0"
@@ -38,17 +39,14 @@
       ignoresPersistentStateOnLaunch = "NO"
       debugDocumentVersioning = "YES"
       debugServiceExtension = "internal"
-      buildConfiguration = "Debug"
       allowLocationSimulation = "YES">
-      <AdditionalOptions>
-      </AdditionalOptions>
    </LaunchAction>
    <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
       savedToolIdentifier = ""
       useCustomWorkingDirectory = "NO"
-      debugDocumentVersioning = "YES"
-      buildConfiguration = "Release"
-      shouldUseLaunchSchemeArgsEnv = "YES">
+      debugDocumentVersioning = "YES">
    </ProfileAction>
    <AnalyzeAction
       buildConfiguration = "Debug">
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseAuth.xcscheme b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseAuth.xcscheme
index 4e571de..1837c76 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseAuth.xcscheme
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseAuth.xcscheme
@@ -1,17 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Scheme
-   LastUpgradeVersion = "1100"
+   LastUpgradeVersion = "1240"
    version = "1.3">
    <BuildAction
       parallelizeBuildables = "YES"
       buildImplicitDependencies = "YES">
       <BuildActionEntries>
          <BuildActionEntry
-            buildForAnalyzing = "YES"
             buildForTesting = "YES"
             buildForRunning = "YES"
             buildForProfiling = "YES"
-            buildForArchiving = "YES">
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
                BlueprintIdentifier = "6AE4A3D573DED275B034E20506596C62"
@@ -23,14 +23,15 @@
       </BuildActionEntries>
    </BuildAction>
    <TestAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      shouldUseLaunchSchemeArgsEnv = "YES"
-      buildConfiguration = "Debug">
-      <AdditionalOptions>
-      </AdditionalOptions>
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+      </Testables>
    </TestAction>
    <LaunchAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
       launchStyle = "0"
@@ -38,17 +39,14 @@
       ignoresPersistentStateOnLaunch = "NO"
       debugDocumentVersioning = "YES"
       debugServiceExtension = "internal"
-      buildConfiguration = "Debug"
       allowLocationSimulation = "YES">
-      <AdditionalOptions>
-      </AdditionalOptions>
    </LaunchAction>
    <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
       savedToolIdentifier = ""
       useCustomWorkingDirectory = "NO"
-      debugDocumentVersioning = "YES"
-      buildConfiguration = "Release"
-      shouldUseLaunchSchemeArgsEnv = "YES">
+      debugDocumentVersioning = "YES">
    </ProfileAction>
    <AnalyzeAction
       buildConfiguration = "Debug">
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseCore.xcscheme b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseCore.xcscheme
index a4c140c..f94353a 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseCore.xcscheme
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseCore.xcscheme
@@ -1,17 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Scheme
-   LastUpgradeVersion = "1100"
+   LastUpgradeVersion = "1240"
    version = "1.3">
    <BuildAction
       parallelizeBuildables = "YES"
       buildImplicitDependencies = "YES">
       <BuildActionEntries>
          <BuildActionEntry
-            buildForAnalyzing = "YES"
             buildForTesting = "YES"
             buildForRunning = "YES"
             buildForProfiling = "YES"
-            buildForArchiving = "YES">
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
                BlueprintIdentifier = "4402AFF83DBDC4DD07E198685FDC2DF2"
@@ -23,14 +23,15 @@
       </BuildActionEntries>
    </BuildAction>
    <TestAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      shouldUseLaunchSchemeArgsEnv = "YES"
-      buildConfiguration = "Debug">
-      <AdditionalOptions>
-      </AdditionalOptions>
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+      </Testables>
    </TestAction>
    <LaunchAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
       launchStyle = "0"
@@ -38,17 +39,14 @@
       ignoresPersistentStateOnLaunch = "NO"
       debugDocumentVersioning = "YES"
       debugServiceExtension = "internal"
-      buildConfiguration = "Debug"
       allowLocationSimulation = "YES">
-      <AdditionalOptions>
-      </AdditionalOptions>
    </LaunchAction>
    <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
       savedToolIdentifier = ""
       useCustomWorkingDirectory = "NO"
-      debugDocumentVersioning = "YES"
-      buildConfiguration = "Release"
-      shouldUseLaunchSchemeArgsEnv = "YES">
+      debugDocumentVersioning = "YES">
    </ProfileAction>
    <AnalyzeAction
       buildConfiguration = "Debug">
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseCoreDiagnostics.xcscheme b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseCoreDiagnostics.xcscheme
index 21f827d..af54f84 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseCoreDiagnostics.xcscheme
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseCoreDiagnostics.xcscheme
@@ -1,17 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Scheme
-   LastUpgradeVersion = "1100"
+   LastUpgradeVersion = "1240"
    version = "1.3">
    <BuildAction
       parallelizeBuildables = "YES"
       buildImplicitDependencies = "YES">
       <BuildActionEntries>
          <BuildActionEntry
-            buildForAnalyzing = "YES"
             buildForTesting = "YES"
             buildForRunning = "YES"
             buildForProfiling = "YES"
-            buildForArchiving = "YES">
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
                BlueprintIdentifier = "620E05868772C10B4920DC7E324F2C87"
@@ -23,14 +23,15 @@
       </BuildActionEntries>
    </BuildAction>
    <TestAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      shouldUseLaunchSchemeArgsEnv = "YES"
-      buildConfiguration = "Debug">
-      <AdditionalOptions>
-      </AdditionalOptions>
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+      </Testables>
    </TestAction>
    <LaunchAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
       launchStyle = "0"
@@ -38,17 +39,14 @@
       ignoresPersistentStateOnLaunch = "NO"
       debugDocumentVersioning = "YES"
       debugServiceExtension = "internal"
-      buildConfiguration = "Debug"
       allowLocationSimulation = "YES">
-      <AdditionalOptions>
-      </AdditionalOptions>
    </LaunchAction>
    <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
       savedToolIdentifier = ""
       useCustomWorkingDirectory = "NO"
-      debugDocumentVersioning = "YES"
-      buildConfiguration = "Release"
-      shouldUseLaunchSchemeArgsEnv = "YES">
+      debugDocumentVersioning = "YES">
    </ProfileAction>
    <AnalyzeAction
       buildConfiguration = "Debug">
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseFirestore.xcscheme b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseFirestore.xcscheme
index b52ebd1..34a410d 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseFirestore.xcscheme
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseFirestore.xcscheme
@@ -1,17 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Scheme
-   LastUpgradeVersion = "1100"
+   LastUpgradeVersion = "1240"
    version = "1.3">
    <BuildAction
       parallelizeBuildables = "YES"
       buildImplicitDependencies = "YES">
       <BuildActionEntries>
          <BuildActionEntry
-            buildForAnalyzing = "YES"
             buildForTesting = "YES"
             buildForRunning = "YES"
             buildForProfiling = "YES"
-            buildForArchiving = "YES">
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
                BlueprintIdentifier = "DBA2B63E3A5FE83FE89E731664C9269F"
@@ -23,14 +23,15 @@
       </BuildActionEntries>
    </BuildAction>
    <TestAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      shouldUseLaunchSchemeArgsEnv = "YES"
-      buildConfiguration = "Debug">
-      <AdditionalOptions>
-      </AdditionalOptions>
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+      </Testables>
    </TestAction>
    <LaunchAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
       launchStyle = "0"
@@ -38,17 +39,14 @@
       ignoresPersistentStateOnLaunch = "NO"
       debugDocumentVersioning = "YES"
       debugServiceExtension = "internal"
-      buildConfiguration = "Debug"
       allowLocationSimulation = "YES">
-      <AdditionalOptions>
-      </AdditionalOptions>
    </LaunchAction>
    <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
       savedToolIdentifier = ""
       useCustomWorkingDirectory = "NO"
-      debugDocumentVersioning = "YES"
-      buildConfiguration = "Release"
-      shouldUseLaunchSchemeArgsEnv = "YES">
+      debugDocumentVersioning = "YES">
    </ProfileAction>
    <AnalyzeAction
       buildConfiguration = "Debug">
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseStorage.xcscheme b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseStorage.xcscheme
index 2f89b49..d4c67a7 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseStorage.xcscheme
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/FirebaseStorage.xcscheme
@@ -1,17 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Scheme
-   LastUpgradeVersion = "1100"
+   LastUpgradeVersion = "1240"
    version = "1.3">
    <BuildAction
       parallelizeBuildables = "YES"
       buildImplicitDependencies = "YES">
       <BuildActionEntries>
          <BuildActionEntry
-            buildForAnalyzing = "YES"
             buildForTesting = "YES"
             buildForRunning = "YES"
             buildForProfiling = "YES"
-            buildForArchiving = "YES">
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
                BlueprintIdentifier = "23E7C4A52360C026F97E4A96D91B03CE"
@@ -23,14 +23,15 @@
       </BuildActionEntries>
    </BuildAction>
    <TestAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      shouldUseLaunchSchemeArgsEnv = "YES"
-      buildConfiguration = "Debug">
-      <AdditionalOptions>
-      </AdditionalOptions>
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+      </Testables>
    </TestAction>
    <LaunchAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
       launchStyle = "0"
@@ -38,17 +39,14 @@
       ignoresPersistentStateOnLaunch = "NO"
       debugDocumentVersioning = "YES"
       debugServiceExtension = "internal"
-      buildConfiguration = "Debug"
       allowLocationSimulation = "YES">
-      <AdditionalOptions>
-      </AdditionalOptions>
    </LaunchAction>
    <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
       savedToolIdentifier = ""
       useCustomWorkingDirectory = "NO"
-      debugDocumentVersioning = "YES"
-      buildConfiguration = "Release"
-      shouldUseLaunchSchemeArgsEnv = "YES">
+      debugDocumentVersioning = "YES">
    </ProfileAction>
    <AnalyzeAction
       buildConfiguration = "Debug">
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/GTMSessionFetcher.xcscheme b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/GTMSessionFetcher.xcscheme
index 4e23ec8..ac08711 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/GTMSessionFetcher.xcscheme
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/GTMSessionFetcher.xcscheme
@@ -1,17 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Scheme
-   LastUpgradeVersion = "1100"
+   LastUpgradeVersion = "1240"
    version = "1.3">
    <BuildAction
       parallelizeBuildables = "YES"
       buildImplicitDependencies = "YES">
       <BuildActionEntries>
          <BuildActionEntry
-            buildForAnalyzing = "YES"
             buildForTesting = "YES"
             buildForRunning = "YES"
             buildForProfiling = "YES"
-            buildForArchiving = "YES">
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
                BlueprintIdentifier = "D676E21115185671D7258A56944ABE98"
@@ -23,14 +23,15 @@
       </BuildActionEntries>
    </BuildAction>
    <TestAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      shouldUseLaunchSchemeArgsEnv = "YES"
-      buildConfiguration = "Debug">
-      <AdditionalOptions>
-      </AdditionalOptions>
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+      </Testables>
    </TestAction>
    <LaunchAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
       launchStyle = "0"
@@ -38,17 +39,14 @@
       ignoresPersistentStateOnLaunch = "NO"
       debugDocumentVersioning = "YES"
       debugServiceExtension = "internal"
-      buildConfiguration = "Debug"
       allowLocationSimulation = "YES">
-      <AdditionalOptions>
-      </AdditionalOptions>
    </LaunchAction>
    <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
       savedToolIdentifier = ""
       useCustomWorkingDirectory = "NO"
-      debugDocumentVersioning = "YES"
-      buildConfiguration = "Release"
-      shouldUseLaunchSchemeArgsEnv = "YES">
+      debugDocumentVersioning = "YES">
    </ProfileAction>
    <AnalyzeAction
       buildConfiguration = "Debug">
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/GoogleDataTransport.xcscheme b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/GoogleDataTransport.xcscheme
index 6208c32..e2deb3c 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/GoogleDataTransport.xcscheme
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/GoogleDataTransport.xcscheme
@@ -1,17 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Scheme
-   LastUpgradeVersion = "1100"
+   LastUpgradeVersion = "1240"
    version = "1.3">
    <BuildAction
       parallelizeBuildables = "YES"
       buildImplicitDependencies = "YES">
       <BuildActionEntries>
          <BuildActionEntry
-            buildForAnalyzing = "YES"
             buildForTesting = "YES"
             buildForRunning = "YES"
             buildForProfiling = "YES"
-            buildForArchiving = "YES">
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
                BlueprintIdentifier = "5C0371EE948D0357B8EE0E34ABB44BF0"
@@ -23,14 +23,15 @@
       </BuildActionEntries>
    </BuildAction>
    <TestAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      shouldUseLaunchSchemeArgsEnv = "YES"
-      buildConfiguration = "Debug">
-      <AdditionalOptions>
-      </AdditionalOptions>
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+      </Testables>
    </TestAction>
    <LaunchAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
       launchStyle = "0"
@@ -38,17 +39,14 @@
       ignoresPersistentStateOnLaunch = "NO"
       debugDocumentVersioning = "YES"
       debugServiceExtension = "internal"
-      buildConfiguration = "Debug"
       allowLocationSimulation = "YES">
-      <AdditionalOptions>
-      </AdditionalOptions>
    </LaunchAction>
    <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
       savedToolIdentifier = ""
       useCustomWorkingDirectory = "NO"
-      debugDocumentVersioning = "YES"
-      buildConfiguration = "Release"
-      shouldUseLaunchSchemeArgsEnv = "YES">
+      debugDocumentVersioning = "YES">
    </ProfileAction>
    <AnalyzeAction
       buildConfiguration = "Debug">
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/GoogleUtilities.xcscheme b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/GoogleUtilities.xcscheme
index 3915f21..611102c 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/GoogleUtilities.xcscheme
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/GoogleUtilities.xcscheme
@@ -1,17 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Scheme
-   LastUpgradeVersion = "1100"
+   LastUpgradeVersion = "1240"
    version = "1.3">
    <BuildAction
       parallelizeBuildables = "YES"
       buildImplicitDependencies = "YES">
       <BuildActionEntries>
          <BuildActionEntry
-            buildForAnalyzing = "YES"
             buildForTesting = "YES"
             buildForRunning = "YES"
             buildForProfiling = "YES"
-            buildForArchiving = "YES">
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
                BlueprintIdentifier = "8D7F5D5DD528D21A72DC87ADA5B12E2D"
@@ -23,14 +23,15 @@
       </BuildActionEntries>
    </BuildAction>
    <TestAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      shouldUseLaunchSchemeArgsEnv = "YES"
-      buildConfiguration = "Debug">
-      <AdditionalOptions>
-      </AdditionalOptions>
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+      </Testables>
    </TestAction>
    <LaunchAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
       launchStyle = "0"
@@ -38,17 +39,14 @@
       ignoresPersistentStateOnLaunch = "NO"
       debugDocumentVersioning = "YES"
       debugServiceExtension = "internal"
-      buildConfiguration = "Debug"
       allowLocationSimulation = "YES">
-      <AdditionalOptions>
-      </AdditionalOptions>
    </LaunchAction>
    <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
       savedToolIdentifier = ""
       useCustomWorkingDirectory = "NO"
-      debugDocumentVersioning = "YES"
-      buildConfiguration = "Release"
-      shouldUseLaunchSchemeArgsEnv = "YES">
+      debugDocumentVersioning = "YES">
    </ProfileAction>
    <AnalyzeAction
       buildConfiguration = "Debug">
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/Pods-FaceRecogAttendance.xcscheme b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/Pods-FaceRecogAttendance.xcscheme
index c9a8f5b..87d870e 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/Pods-FaceRecogAttendance.xcscheme
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/Pods-FaceRecogAttendance.xcscheme
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Scheme
-   LastUpgradeVersion = "1100"
+   LastUpgradeVersion = "1240"
    version = "1.3">
    <BuildAction
       parallelizeBuildables = "YES"
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/PromisesObjC.xcscheme b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/PromisesObjC.xcscheme
index d1487d6..db916a3 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/PromisesObjC.xcscheme
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/PromisesObjC.xcscheme
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Scheme
-   LastUpgradeVersion = "1100"
+   LastUpgradeVersion = "1240"
    version = "1.3">
    <BuildAction
       parallelizeBuildables = "YES"
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/abseil.xcscheme b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/abseil.xcscheme
index 877ad61..3bda5f0 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/abseil.xcscheme
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/abseil.xcscheme
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Scheme
-   LastUpgradeVersion = "1100"
+   LastUpgradeVersion = "1240"
    version = "1.3">
    <BuildAction
       parallelizeBuildables = "YES"
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/gRPC-C++-gRPCCertificates-Cpp.xcscheme b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/gRPC-C++-gRPCCertificates-Cpp.xcscheme
index 0a5e323..8397cd9 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/gRPC-C++-gRPCCertificates-Cpp.xcscheme
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/gRPC-C++-gRPCCertificates-Cpp.xcscheme
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Scheme
-   LastUpgradeVersion = "1100"
+   LastUpgradeVersion = "1240"
    version = "1.3">
    <BuildAction
       parallelizeBuildables = "YES"
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/gRPC-C++.xcscheme b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/gRPC-C++.xcscheme
index 76056a1..c1f2218 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/gRPC-C++.xcscheme
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/gRPC-C++.xcscheme
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Scheme
-   LastUpgradeVersion = "1100"
+   LastUpgradeVersion = "1240"
    version = "1.3">
    <BuildAction
       parallelizeBuildables = "YES"
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/gRPC-Core.xcscheme b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/gRPC-Core.xcscheme
index 5afa1d5..26c5bc2 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/gRPC-Core.xcscheme
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/gRPC-Core.xcscheme
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Scheme
-   LastUpgradeVersion = "1100"
+   LastUpgradeVersion = "1240"
    version = "1.3">
    <BuildAction
       parallelizeBuildables = "YES"
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/leveldb-library.xcscheme b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/leveldb-library.xcscheme
index b199804..d7690dd 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/leveldb-library.xcscheme
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/leveldb-library.xcscheme
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Scheme
-   LastUpgradeVersion = "1100"
+   LastUpgradeVersion = "1240"
    version = "1.3">
    <BuildAction
       parallelizeBuildables = "YES"
diff --git a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/nanopb.xcscheme b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/nanopb.xcscheme
index 2183889..955a195 100644
--- a/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/nanopb.xcscheme
+++ b/FaceRecogAttendance/Pods/Pods.xcodeproj/xcuserdata/Lucas.xcuserdatad/xcschemes/nanopb.xcscheme
@@ -1,17 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <Scheme
-   LastUpgradeVersion = "1100"
+   LastUpgradeVersion = "1240"
    version = "1.3">
    <BuildAction
       parallelizeBuildables = "YES"
       buildImplicitDependencies = "YES">
       <BuildActionEntries>
          <BuildActionEntry
-            buildForAnalyzing = "YES"
             buildForTesting = "YES"
             buildForRunning = "YES"
             buildForProfiling = "YES"
-            buildForArchiving = "YES">
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
             <BuildableReference
                BuildableIdentifier = "primary"
                BlueprintIdentifier = "D2B5E7DCCBBFB32341D857D01211A1A3"
@@ -23,14 +23,15 @@
       </BuildActionEntries>
    </BuildAction>
    <TestAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      shouldUseLaunchSchemeArgsEnv = "YES"
-      buildConfiguration = "Debug">
-      <AdditionalOptions>
-      </AdditionalOptions>
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+      </Testables>
    </TestAction>
    <LaunchAction
+      buildConfiguration = "Debug"
       selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
       selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
       launchStyle = "0"
@@ -38,17 +39,14 @@
       ignoresPersistentStateOnLaunch = "NO"
       debugDocumentVersioning = "YES"
       debugServiceExtension = "internal"
-      buildConfiguration = "Debug"
       allowLocationSimulation = "YES">
-      <AdditionalOptions>
-      </AdditionalOptions>
    </LaunchAction>
    <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
       savedToolIdentifier = ""
       useCustomWorkingDirectory = "NO"
-      debugDocumentVersioning = "YES"
-      buildConfiguration = "Release"
-      shouldUseLaunchSchemeArgsEnv = "YES">
+      debugDocumentVersioning = "YES">
    </ProfileAction>
    <AnalyzeAction
       buildConfiguration = "Debug">
-- 
GitLab