Added Mac OS X project file and Mach-IPC support code
authorAlexandra Ellwood <lxs@mit.edu>
Fri, 9 Jun 2006 21:59:36 +0000 (21:59 +0000)
committerAlexandra Ellwood <lxs@mit.edu>
Fri, 9 Jun 2006 21:59:36 +0000 (21:59 +0000)
git-svn-id: svn://anonsvn.mit.edu/krb5/branches/ccapi@18099 dc483132-0cff-0310-8789-dd5450dbe970

src/lib/ccapi/common/mac/mig.defs [new file with mode: 0755]
src/lib/ccapi/common/mac/mig_types.h [new file with mode: 0644]
src/lib/ccapi/mac/CCAPI.xcodeproj/lxs.pbxuser [new file with mode: 0644]
src/lib/ccapi/mac/CCAPI.xcodeproj/lxs.perspective [new file with mode: 0644]
src/lib/ccapi/mac/CCAPI.xcodeproj/project.pbxproj [new file with mode: 0644]
src/lib/ccapi/server/mac/CCacheServer.plist [new file with mode: 0644]
src/lib/ccapi/server/mac/CCacheServerInfo.plist [new file with mode: 0644]
src/lib/ccapi/server/mac/main.c [new file with mode: 0644]

diff --git a/src/lib/ccapi/common/mac/mig.defs b/src/lib/ccapi/common/mac/mig.defs
new file mode 100755 (executable)
index 0000000..dd3ee1b
--- /dev/null
@@ -0,0 +1,58 @@
+/* $Copyright:
+ *
+ * Copyright 2004-2006 by the Massachusetts Institute of Technology.
+ * 
+ * All rights reserved.
+ * 
+ * Export of this software from the United States of America may require a
+ * specific license from the United States Government.  It is the
+ * responsibility of any person or organization contemplating export to
+ * obtain such a license before exporting.
+ * 
+ * WITHIN THAT CONSTRAINT, permission to use, copy, modify, and distribute
+ * this software and its documentation for any purpose and without fee is
+ * hereby granted, provided that the above copyright notice appear in all
+ * copies and that both that copyright notice and this permission notice
+ * appear in supporting documentation, and that the name of M.I.T. not be
+ * used in advertising or publicity pertaining to distribution of the
+ * software without specific, written prior permission.  Furthermore if you
+ * modify this software you must label your software as modified software
+ * and not distribute it in such a fashion that it might be confused with
+ * the original MIT software. M.I.T. makes no representations about the
+ * suitability of this software for any purpose.  It is provided "as is"
+ * without express or implied warranty.
+ * 
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
+ * MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+ * 
+ * Individual source code files are copyright MIT, Cygnus Support,
+ * OpenVision, Oracle, Sun Soft, FundsXpress, and others.
+ * 
+ * Project Athena, Athena, Athena MUSE, Discuss, Hesiod, Kerberos, Moira,
+ * and Zephyr are trademarks of the Massachusetts Institute of Technology
+ * (MIT).  No commercial use of these trademarks may be made without prior
+ * written permission of MIT.
+ * 
+ * "Commercial use" means use of a name in a product or other for-profit
+ * manner.  It does NOT prevent a commercial firm from referring to the MIT
+ * trademarks in order to convey information (although in doing so,
+ * recognition of their trademark status should be given).
+ * $
+ */
+import "mig_types.h";
+
+#include <mach/std_types.defs>
+#include <mach/mach_types.defs>
+
+subsystem ccapi 128;
+
+type msg_request_t = array [] of char;
+type msg_reply_t = array [] of char;
+type msg_error_t = int32;
+
+routine ccapi_msg (in_server_port : mach_port_t;
+                   in_request     : msg_request_t;
+               out out_reply      : msg_reply_t;
+               out out_error      : msg_error_t);
diff --git a/src/lib/ccapi/common/mac/mig_types.h b/src/lib/ccapi/common/mac/mig_types.h
new file mode 100644 (file)
index 0000000..586a019
--- /dev/null
@@ -0,0 +1,48 @@
+/* $Copyright:
+*
+* Copyright 2004-2006 by the Massachusetts Institute of Technology.
+* 
+* All rights reserved.
+* 
+* Export of this software from the United States of America may require a
+* specific license from the United States Government.  It is the
+* responsibility of any person or organization contemplating export to
+* obtain such a license before exporting.
+* 
+* WITHIN THAT CONSTRAINT, permission to use, copy, modify, and distribute
+* this software and its documentation for any purpose and without fee is
+* hereby granted, provided that the above copyright notice appear in all
+* copies and that both that copyright notice and this permission notice
+* appear in supporting documentation, and that the name of M.I.T. not be
+* used in advertising or publicity pertaining to distribution of the
+* software without specific, written prior permission.  Furthermore if you
+* modify this software you must label your software as modified software
+* and not distribute it in such a fashion that it might be confused with
+* the original MIT software. M.I.T. makes no representations about the
+* suitability of this software for any purpose.  It is provided "as is"
+* without express or implied warranty.
+* 
+* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
+* WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
+* MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+* 
+* Individual source code files are copyright MIT, Cygnus Support,
+* OpenVision, Oracle, Sun Soft, FundsXpress, and others.
+* 
+* Project Athena, Athena, Athena MUSE, Discuss, Hesiod, Kerberos, Moira,
+* and Zephyr are trademarks of the Massachusetts Institute of Technology
+* (MIT).  No commercial use of these trademarks may be made without prior
+* written permission of MIT.
+* 
+* "Commercial use" means use of a name in a product or other for-profit
+* manner.  It does NOT prevent a commercial firm from referring to the MIT
+* trademarks in order to convey information (although in doing so,
+* recognition of their trademark status should be given).
+* $
+*/
+
+#include "CredentialsCache.h"
+
+typedef const char *msg_request_t;
+typedef char       *msg_reply_t;
+typedef cc_int32    msg_error_t;
diff --git a/src/lib/ccapi/mac/CCAPI.xcodeproj/lxs.pbxuser b/src/lib/ccapi/mac/CCAPI.xcodeproj/lxs.pbxuser
new file mode 100644 (file)
index 0000000..ea15e54
--- /dev/null
@@ -0,0 +1,2005 @@
+// !$*UTF8*$!
+{
+       08FB7793FE84155DC02AAC07 /* Project object */ = {
+               activeBuildConfigurationName = Debug;
+               activeExecutable = A1E70D5E0A38B796007BE3E3 /* CCacheServer */;
+               activeTarget = A1E70D5C0A38B796007BE3E3 /* CCacheServer */;
+               addToTargets = (
+               );
+               breakpoints = (
+               );
+               breakpointsGroup = A1E70D500A38B5F3007BE3E3 /* XCBreakpointsBucket */;
+               codeSenseManager = A1E70CFE0A38B536007BE3E3 /* Code sense */;
+               executables = (
+                       A1E70D5E0A38B796007BE3E3 /* CCacheServer */,
+               );
+               perUserDictionary = {
+                       PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
+                               PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
+                               PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
+                               PBXFileTableDataSourceColumnWidthsKey = (
+                                       20,
+                                       811,
+                                       20,
+                                       48,
+                                       43,
+                                       43,
+                                       20,
+                               );
+                               PBXFileTableDataSourceColumnsKey = (
+                                       PBXFileDataSource_FiletypeID,
+                                       PBXFileDataSource_Filename_ColumnID,
+                                       PBXFileDataSource_Built_ColumnID,
+                                       PBXFileDataSource_ObjectSize_ColumnID,
+                                       PBXFileDataSource_Errors_ColumnID,
+                                       PBXFileDataSource_Warnings_ColumnID,
+                                       PBXFileDataSource_Target_ColumnID,
+                               );
+                       };
+                       PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = {
+                               PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
+                               PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
+                               PBXFileTableDataSourceColumnWidthsKey = (
+                                       20,
+                                       200,
+                                       608,
+                                       20,
+                                       48,
+                                       43,
+                                       43,
+                               );
+                               PBXFileTableDataSourceColumnsKey = (
+                                       PBXFileDataSource_FiletypeID,
+                                       PBXFileDataSource_Filename_ColumnID,
+                                       PBXTargetDataSource_PrimaryAttribute,
+                                       PBXFileDataSource_Built_ColumnID,
+                                       PBXFileDataSource_ObjectSize_ColumnID,
+                                       PBXFileDataSource_Errors_ColumnID,
+                                       PBXFileDataSource_Warnings_ColumnID,
+                               );
+                       };
+                       PBXPerProjectTemplateStateSaveDate = 171582174;
+                       PBXWorkspaceStateSaveDate = 171582174;
+               };
+               perUserProjectItems = {
+                       A1E70DF70A38C765007BE3E3 /* PBXTextBookmark */ = A1E70DF70A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70DF80A38C765007BE3E3 /* PBXTextBookmark */ = A1E70DF80A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70DF90A38C765007BE3E3 /* PBXTextBookmark */ = A1E70DF90A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70DFA0A38C765007BE3E3 /* PBXTextBookmark */ = A1E70DFA0A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70DFB0A38C765007BE3E3 /* PBXTextBookmark */ = A1E70DFB0A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70DFD0A38C765007BE3E3 /* PBXTextBookmark */ = A1E70DFD0A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E010A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E010A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E020A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E020A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E060A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E060A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E090A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E090A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E0A0A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E0A0A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E0B0A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E0B0A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E0C0A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E0C0A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E100A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E100A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E110A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E110A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E120A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E120A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E130A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E130A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E140A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E140A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E150A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E150A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E160A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E160A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E170A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E170A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E180A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E180A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E1B0A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E1B0A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E1E0A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E1E0A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E1F0A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E1F0A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E200A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E200A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E250A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E250A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E260A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E260A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E290A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E290A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E2A0A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E2A0A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E2B0A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E2B0A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E2D0A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E2D0A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E2E0A38C765007BE3E3 /* PBXTextBookmark */ = A1E70E2E0A38C765007BE3E3 /* PBXTextBookmark */;
+                       A1E70E380A38C778007BE3E3 /* PBXTextBookmark */ = A1E70E380A38C778007BE3E3 /* PBXTextBookmark */;
+                       A1E70E3D0A38C78C007BE3E3 /* PBXTextBookmark */ = A1E70E3D0A38C78C007BE3E3 /* PBXTextBookmark */;
+                       A1E70E410A38C78C007BE3E3 /* PBXTextBookmark */ = A1E70E410A38C78C007BE3E3 /* PBXTextBookmark */;
+                       A1E70E430A38C791007BE3E3 /* PBXTextBookmark */ = A1E70E430A38C791007BE3E3 /* PBXTextBookmark */;
+                       A1E70E450A38C791007BE3E3 /* PBXTextBookmark */ = A1E70E450A38C791007BE3E3 /* PBXTextBookmark */;
+                       A1E70E4A0A38C7BE007BE3E3 /* PBXTextBookmark */ = A1E70E4A0A38C7BE007BE3E3 /* PBXTextBookmark */;
+                       A1E70E520A38C9FD007BE3E3 /* PBXTextBookmark */ = A1E70E520A38C9FD007BE3E3 /* PBXTextBookmark */;
+                       A1E70E530A38C9FD007BE3E3 /* PBXTextBookmark */ = A1E70E530A38C9FD007BE3E3 /* PBXTextBookmark */;
+                       A1E70E560A38C9FD007BE3E3 /* PBXTextBookmark */ = A1E70E560A38C9FD007BE3E3 /* PBXTextBookmark */;
+                       A1E70E580A38C9FD007BE3E3 /* PBXTextBookmark */ = A1E70E580A38C9FD007BE3E3 /* PBXTextBookmark */;
+                       A1E70E6F0A38CA08007BE3E3 /* PBXTextBookmark */ = A1E70E6F0A38CA08007BE3E3 /* PBXTextBookmark */;
+                       A1E70E770A38CA55007BE3E3 /* PBXTextBookmark */ = A1E70E770A38CA55007BE3E3 /* PBXTextBookmark */;
+                       A1E70E7D0A38CA55007BE3E3 /* PBXTextBookmark */ = A1E70E7D0A38CA55007BE3E3 /* PBXTextBookmark */;
+                       A1E70E9C0A38CAF1007BE3E3 /* PBXTextBookmark */ = A1E70E9C0A38CAF1007BE3E3 /* PBXTextBookmark */;
+                       A1E70EA80A38CB24007BE3E3 /* PBXTextBookmark */ = A1E70EA80A38CB24007BE3E3 /* PBXTextBookmark */;
+                       A1E70EAB0A38CB24007BE3E3 /* PBXTextBookmark */ = A1E70EAB0A38CB24007BE3E3 /* PBXTextBookmark */;
+                       A1E70EB50A38CB4D007BE3E3 /* PBXTextBookmark */ = A1E70EB50A38CB4D007BE3E3 /* PBXTextBookmark */;
+                       A1E70EC30A38CC14007BE3E3 /* PBXTextBookmark */ = A1E70EC30A38CC14007BE3E3 /* PBXTextBookmark */;
+                       A1E70ECB0A38CC4C007BE3E3 /* PBXTextBookmark */ = A1E70ECB0A38CC4C007BE3E3 /* PBXTextBookmark */;
+                       A1E70ED70A38CCB6007BE3E3 /* PBXTextBookmark */ = A1E70ED70A38CCB6007BE3E3 /* PBXTextBookmark */;
+                       A1E70EE20A38CCD6007BE3E3 /* PBXTextBookmark */ = A1E70EE20A38CCD6007BE3E3 /* PBXTextBookmark */;
+                       A1E70EFE0A38CD66007BE3E3 /* PBXTextBookmark */ = A1E70EFE0A38CD66007BE3E3 /* PBXTextBookmark */;
+                       A1E70F0F0A38CE21007BE3E3 /* PBXTextBookmark */ = A1E70F0F0A38CE21007BE3E3 /* PBXTextBookmark */;
+                       A1E70F440A38D252007BE3E3 /* PBXTextBookmark */ = A1E70F440A38D252007BE3E3 /* PBXTextBookmark */;
+                       A1E70F450A38D252007BE3E3 /* PBXTextBookmark */ = A1E70F450A38D252007BE3E3 /* PBXTextBookmark */;
+                       A1E70F8B0A38D3B4007BE3E3 /* PBXTextBookmark */ = A1E70F8B0A38D3B4007BE3E3 /* PBXTextBookmark */;
+                       A1E70F9C0A38D41E007BE3E3 /* PBXTextBookmark */ = A1E70F9C0A38D41E007BE3E3 /* PBXTextBookmark */;
+                       A1E70F9D0A38D41E007BE3E3 /* PBXTextBookmark */ = A1E70F9D0A38D41E007BE3E3 /* PBXTextBookmark */;
+                       A1E70FC60A38D560007BE3E3 /* PBXTextBookmark */ = A1E70FC60A38D560007BE3E3 /* PBXTextBookmark */;
+                       A1E70FC80A38D560007BE3E3 /* PBXTextBookmark */ = A1E70FC80A38D560007BE3E3 /* PBXTextBookmark */;
+                       A1E70FC90A38D560007BE3E3 /* PBXTextBookmark */ = A1E70FC90A38D560007BE3E3 /* PBXTextBookmark */;
+                       A1E70FCA0A38D560007BE3E3 /* PBXTextBookmark */ = A1E70FCA0A38D560007BE3E3 /* PBXTextBookmark */;
+                       A1E70FCD0A38D560007BE3E3 /* PBXTextBookmark */ = A1E70FCD0A38D560007BE3E3 /* PBXTextBookmark */;
+                       A1E70FD80A38D573007BE3E3 /* PBXTextBookmark */ = A1E70FD80A38D573007BE3E3 /* PBXTextBookmark */;
+                       A1E70FEE0A38D7C0007BE3E3 /* PBXTextBookmark */ = A1E70FEE0A38D7C0007BE3E3 /* PBXTextBookmark */;
+                       A1E70FEF0A38D7C0007BE3E3 /* PBXTextBookmark */ = A1E70FEF0A38D7C0007BE3E3 /* PBXTextBookmark */;
+                       A1E70FF00A38D7C0007BE3E3 /* PBXTextBookmark */ = A1E70FF00A38D7C0007BE3E3 /* PBXTextBookmark */;
+                       A1E70FFA0A38D806007BE3E3 /* PBXTextBookmark */ = A1E70FFA0A38D806007BE3E3 /* PBXTextBookmark */;
+                       A1E70FFC0A38D806007BE3E3 /* PBXTextBookmark */ = A1E70FFC0A38D806007BE3E3 /* PBXTextBookmark */;
+                       A1E70FFF0A38D806007BE3E3 /* PBXTextBookmark */ = A1E70FFF0A38D806007BE3E3 /* PBXTextBookmark */;
+                       A1E710010A38D814007BE3E3 /* PBXTextBookmark */ = A1E710010A38D814007BE3E3 /* PBXTextBookmark */;
+                       A1E7100A0A38D888007BE3E3 /* PBXTextBookmark */ = A1E7100A0A38D888007BE3E3 /* PBXTextBookmark */;
+                       A1E7100C0A38D888007BE3E3 /* PBXTextBookmark */ = A1E7100C0A38D888007BE3E3 /* PBXTextBookmark */;
+                       A1E7100D0A38D888007BE3E3 /* PBXTextBookmark */ = A1E7100D0A38D888007BE3E3 /* PBXTextBookmark */;
+                       A1E710110A38D888007BE3E3 /* PBXTextBookmark */ = A1E710110A38D888007BE3E3 /* PBXTextBookmark */;
+                       A1E710140A38D888007BE3E3 /* PBXTextBookmark */ = A1E710140A38D888007BE3E3 /* PBXTextBookmark */;
+                       A1E7103C0A38DE0B007BE3E3 /* PBXTextBookmark */ = A1E7103C0A38DE0B007BE3E3 /* PBXTextBookmark */;
+                       A1E710400A38DE0B007BE3E3 /* PBXTextBookmark */ = A1E710400A38DE0B007BE3E3 /* PBXTextBookmark */;
+                       A1E710530A39EC0B007BE3E3 /* PBXTextBookmark */ = A1E710530A39EC0B007BE3E3 /* PBXTextBookmark */;
+                       A1E7105A0A39ED89007BE3E3 /* PBXTextBookmark */ = A1E7105A0A39ED89007BE3E3 /* PBXTextBookmark */;
+                       A1E7105D0A39ED89007BE3E3 /* PBXTextBookmark */ = A1E7105D0A39ED89007BE3E3 /* PBXTextBookmark */;
+                       A1E7105E0A39ED89007BE3E3 /* PBXTextBookmark */ = A1E7105E0A39ED89007BE3E3 /* PBXTextBookmark */;
+                       A1E710680A39F102007BE3E3 /* PBXTextBookmark */ = A1E710680A39F102007BE3E3 /* PBXTextBookmark */;
+                       A1E710840A3A1CFB007BE3E3 /* PBXTextBookmark */ = A1E710840A3A1CFB007BE3E3 /* PBXTextBookmark */;
+                       A1E710860A3A1CFB007BE3E3 /* PBXTextBookmark */ = A1E710860A3A1CFB007BE3E3 /* PBXTextBookmark */;
+                       A1E710870A3A1CFB007BE3E3 /* PBXTextBookmark */ = A1E710870A3A1CFB007BE3E3 /* PBXTextBookmark */;
+                       A1E710890A3A1D04007BE3E3 /* PBXTextBookmark */ = A1E710890A3A1D04007BE3E3 /* PBXTextBookmark */;
+                       A1E7108B0A3A1D04007BE3E3 /* PBXTextBookmark */ = A1E7108B0A3A1D04007BE3E3 /* PBXTextBookmark */;
+                       A1E7108D0A3A1D06007BE3E3 /* PBXTextBookmark */ = A1E7108D0A3A1D06007BE3E3 /* PBXTextBookmark */;
+                       A1E710930A3A1D22007BE3E3 /* PBXTextBookmark */ = A1E710930A3A1D22007BE3E3 /* PBXTextBookmark */;
+                       A1E710940A3A1D22007BE3E3 /* PBXTextBookmark */ = A1E710940A3A1D22007BE3E3 /* PBXTextBookmark */;
+                       A1E710950A3A1D22007BE3E3 /* PBXTextBookmark */ = A1E710950A3A1D22007BE3E3 /* PBXTextBookmark */;
+                       A1E710960A3A1D22007BE3E3 /* PBXTextBookmark */ = A1E710960A3A1D22007BE3E3 /* PBXTextBookmark */;
+                       A1E710970A3A1D22007BE3E3 /* PBXTextBookmark */ = A1E710970A3A1D22007BE3E3 /* PBXTextBookmark */;
+                       A1E7109C0A3A1D2B007BE3E3 /* PBXTextBookmark */ = A1E7109C0A3A1D2B007BE3E3 /* PBXTextBookmark */;
+                       A1E7109D0A3A1D2B007BE3E3 /* PBXTextBookmark */ = A1E7109D0A3A1D2B007BE3E3 /* PBXTextBookmark */;
+                       A1E7109F0A3A1DD0007BE3E3 /* PBXTextBookmark */ = A1E7109F0A3A1DD0007BE3E3 /* PBXTextBookmark */;
+                       A1E710A00A3A1DD0007BE3E3 /* PBXTextBookmark */ = A1E710A00A3A1DD0007BE3E3 /* PBXTextBookmark */;
+                       A1E710A50A3A22E1007BE3E3 /* PBXTextBookmark */ = A1E710A50A3A22E1007BE3E3 /* PBXTextBookmark */;
+                       A1E710AB0A3A22F5007BE3E3 /* PBXTextBookmark */ = A1E710AB0A3A22F5007BE3E3 /* PBXTextBookmark */;
+                       A1E710AC0A3A22F5007BE3E3 /* PBXTextBookmark */ = A1E710AC0A3A22F5007BE3E3 /* PBXTextBookmark */;
+                       A1E710AD0A3A22F5007BE3E3 /* PBXTextBookmark */ = A1E710AD0A3A22F5007BE3E3 /* PBXTextBookmark */;
+                       A1E710AF0A3A22FE007BE3E3 /* PBXTextBookmark */ = A1E710AF0A3A22FE007BE3E3 /* PBXTextBookmark */;
+                       A1E710B30A3A22FF007BE3E3 /* PBXTextBookmark */ = A1E710B30A3A22FF007BE3E3 /* PBXTextBookmark */;
+                       A1E710B90A3A23FB007BE3E3 /* PBXTextBookmark */ = A1E710B90A3A23FB007BE3E3 /* PBXTextBookmark */;
+                       A1E710BC0A3A2415007BE3E3 /* PBXTextBookmark */ = A1E710BC0A3A2415007BE3E3 /* PBXTextBookmark */;
+                       A1E710BD0A3A2415007BE3E3 /* PBXTextBookmark */ = A1E710BD0A3A2415007BE3E3 /* PBXTextBookmark */;
+                       A1E710BE0A3A2415007BE3E3 /* PBXTextBookmark */ = A1E710BE0A3A2415007BE3E3 /* PBXTextBookmark */;
+                       A1E710BF0A3A2415007BE3E3 /* PBXTextBookmark */ = A1E710BF0A3A2415007BE3E3 /* PBXTextBookmark */;
+                       A1E710C00A3A2415007BE3E3 /* PBXTextBookmark */ = A1E710C00A3A2415007BE3E3 /* PBXTextBookmark */;
+                       A1E710C60A3A2441007BE3E3 /* PBXTextBookmark */ = A1E710C60A3A2441007BE3E3 /* PBXTextBookmark */;
+                       A1E710C70A3A2441007BE3E3 /* PBXTextBookmark */ = A1E710C70A3A2441007BE3E3 /* PBXTextBookmark */;
+                       A1E710C80A3A2441007BE3E3 /* PBXTextBookmark */ = A1E710C80A3A2441007BE3E3 /* PBXTextBookmark */;
+                       A1E710C90A3A2441007BE3E3 /* PBXTextBookmark */ = A1E710C90A3A2441007BE3E3 /* PBXTextBookmark */;
+                       A1E710CA0A3A244D007BE3E3 /* PBXTextBookmark */ = A1E710CA0A3A244D007BE3E3 /* PBXTextBookmark */;
+                       A1E710CB0A3A244D007BE3E3 /* PBXTextBookmark */ = A1E710CB0A3A244D007BE3E3 /* PBXTextBookmark */;
+                       A1E710CC0A3A244D007BE3E3 /* PBXTextBookmark */ = A1E710CC0A3A244D007BE3E3 /* PBXTextBookmark */;
+                       A1E710CD0A3A244D007BE3E3 /* PBXTextBookmark */ = A1E710CD0A3A244D007BE3E3 /* PBXTextBookmark */;
+                       A1E710CE0A3A244D007BE3E3 /* PBXTextBookmark */ = A1E710CE0A3A244D007BE3E3 /* PBXTextBookmark */;
+                       A1E710D00A3A2456007BE3E3 /* PBXTextBookmark */ = A1E710D00A3A2456007BE3E3 /* PBXTextBookmark */;
+                       A1E710D10A3A2456007BE3E3 /* PBXTextBookmark */ = A1E710D10A3A2456007BE3E3 /* PBXTextBookmark */;
+                       A1E710D20A3A2456007BE3E3 /* PBXTextBookmark */ = A1E710D20A3A2456007BE3E3 /* PBXTextBookmark */;
+                       A1E710D30A3A2456007BE3E3 /* PBXTextBookmark */ = A1E710D30A3A2456007BE3E3 /* PBXTextBookmark */;
+                       A1E710D40A3A2456007BE3E3 /* PBXTextBookmark */ = A1E710D40A3A2456007BE3E3 /* PBXTextBookmark */;
+                       A1E710D70A3A2465007BE3E3 /* PBXTextBookmark */ = A1E710D70A3A2465007BE3E3 /* PBXTextBookmark */;
+                       A1E710D80A3A2465007BE3E3 /* PBXTextBookmark */ = A1E710D80A3A2465007BE3E3 /* PBXTextBookmark */;
+                       A1E710D90A3A2465007BE3E3 /* PBXTextBookmark */ = A1E710D90A3A2465007BE3E3 /* PBXTextBookmark */;
+                       A1E710DB0A3A246E007BE3E3 /* PBXTextBookmark */ = A1E710DB0A3A246E007BE3E3 /* PBXTextBookmark */;
+                       A1E710DF0A3A247D007BE3E3 /* PBXTextBookmark */ = A1E710DF0A3A247D007BE3E3 /* PBXTextBookmark */;
+                       A1E710E00A3A247D007BE3E3 /* PBXTextBookmark */ = A1E710E00A3A247D007BE3E3 /* PBXTextBookmark */;
+                       A1E710E10A3A247D007BE3E3 /* PBXTextBookmark */ = A1E710E10A3A247D007BE3E3 /* PBXTextBookmark */;
+                       A1E710E20A3A247D007BE3E3 /* PBXTextBookmark */ = A1E710E20A3A247D007BE3E3 /* PBXTextBookmark */;
+                       A1E710E30A3A247D007BE3E3 /* PBXTextBookmark */ = A1E710E30A3A247D007BE3E3 /* PBXTextBookmark */;
+                       A1E710E50A3A248A007BE3E3 /* PBXTextBookmark */ = A1E710E50A3A248A007BE3E3 /* PBXTextBookmark */;
+                       A1E710E60A3A248A007BE3E3 /* PBXTextBookmark */ = A1E710E60A3A248A007BE3E3 /* PBXTextBookmark */;
+                       A1E710E70A3A24A4007BE3E3 /* PBXTextBookmark */ = A1E710E70A3A24A4007BE3E3 /* PBXTextBookmark */;
+                       A1E710E80A3A24A5007BE3E3 /* PBXTextBookmark */ = A1E710E80A3A24A5007BE3E3 /* PBXTextBookmark */;
+                       A1E710E90A3A24A5007BE3E3 /* PBXTextBookmark */ = A1E710E90A3A24A5007BE3E3 /* PBXTextBookmark */;
+                       A1E710EA0A3A2521007BE3E3 /* PBXTextBookmark */ = A1E710EA0A3A2521007BE3E3 /* PBXTextBookmark */;
+                       A1E710EB0A3A2521007BE3E3 /* PBXTextBookmark */ = A1E710EB0A3A2521007BE3E3 /* PBXTextBookmark */;
+                       A1E710EC0A3A2521007BE3E3 /* PBXTextBookmark */ = A1E710EC0A3A2521007BE3E3 /* PBXTextBookmark */;
+                       A1E710ED0A3A2521007BE3E3 /* PBXTextBookmark */ = A1E710ED0A3A2521007BE3E3 /* PBXTextBookmark */;
+                       A1E710EE0A3A2521007BE3E3 /* PBXTextBookmark */ = A1E710EE0A3A2521007BE3E3 /* PBXTextBookmark */;
+                       A1E710EF0A3A2521007BE3E3 /* PBXTextBookmark */ = A1E710EF0A3A2521007BE3E3 /* PBXTextBookmark */;
+                       A1E710F00A3A2521007BE3E3 /* PBXTextBookmark */ = A1E710F00A3A2521007BE3E3 /* PBXTextBookmark */;
+                       A1E710F10A3A2521007BE3E3 /* PBXTextBookmark */ = A1E710F10A3A2521007BE3E3 /* PBXTextBookmark */;
+                       A1E710F40A3A253F007BE3E3 /* PBXTextBookmark */ = A1E710F40A3A253F007BE3E3 /* PBXTextBookmark */;
+                       A1E710F50A3A253F007BE3E3 /* PBXTextBookmark */ = A1E710F50A3A253F007BE3E3 /* PBXTextBookmark */;
+               };
+               sourceControlManager = A1E70CFD0A38B536007BE3E3 /* Source Control */;
+               userBuildSettings = {
+               };
+       };
+       A1E70CFD0A38B536007BE3E3 /* Source Control */ = {
+               isa = PBXSourceControlManager;
+               fallbackIsa = XCSourceControlManager;
+               isSCMEnabled = 0;
+               scmConfiguration = {
+               };
+               scmType = "";
+       };
+       A1E70CFE0A38B536007BE3E3 /* Code sense */ = {
+               isa = PBXCodeSenseManager;
+               indexTemplatePath = "";
+       };
+       A1E70D000A38B5BB007BE3E3 /* cacheapi.c */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {1087, 2100}}";
+                       sepNavSelRange = "{4787, 139}";
+                       sepNavVisRect = "{{0, 1547}, {1087, 448}}";
+               };
+       };
+       A1E70D010A38B5BB007BE3E3 /* ccache.c */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {1003, 18424}}";
+                       sepNavSelRange = "{11919, 0}";
+                       sepNavVisRect = "{{0, 5185}, {1003, 481}}";
+               };
+       };
+       A1E70D020A38B5BB007BE3E3 /* ccache.h */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {980, 2058}}";
+                       sepNavSelRange = "{2339, 9}";
+                       sepNavVisRect = "{{0, 556}, {980, 387}}";
+               };
+       };
+       A1E70D080A38B5BB007BE3E3 /* context.c */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {980, 13958}}";
+                       sepNavSelRange = "{29891, 21}";
+                       sepNavVisRect = "{{0, 13156}, {980, 387}}";
+               };
+       };
+       A1E70D0B0A38B5BB007BE3E3 /* credentials.h */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {621, 1330}}";
+                       sepNavSelRange = "{0, 2110}";
+                       sepNavVisRect = "{{0, 235}, {621, 499}}";
+               };
+       };
+       A1E70D0C0A38B5BB007BE3E3 /* credentials_iterator.c */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {980, 3836}}";
+                       sepNavSelRange = "{6723, 21}";
+                       sepNavVisRect = "{{0, 2544}, {980, 387}}";
+               };
+       };
+       A1E70D0F0A38B5BB007BE3E3 /* NTMakefile */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {734, 998}}";
+                       sepNavSelRange = "{0, 0}";
+                       sepNavVisRect = "{{0, 0}, {734, 998}}";
+                       sepNavWindowFrame = "{{15, 46}, {779, 1127}}";
+               };
+       };
+       A1E70D120A38B5BB007BE3E3 /* generic_lists.c */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {1003, 5572}}";
+                       sepNavSelRange = "{2282, 0}";
+                       sepNavVisRect = "{{0, 489}, {1003, 521}}";
+               };
+       };
+       A1E70D130A38B5BB007BE3E3 /* marshall.c */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {980, 6188}}";
+                       sepNavSelRange = "{11995, 68}";
+                       sepNavVisRect = "{{0, 4756}, {980, 387}}";
+               };
+       };
+       A1E70D140A38B5BB007BE3E3 /* msg.c */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {1087, 8722}}";
+                       sepNavSelRange = "{15262, 21}";
+                       sepNavVisRect = "{{0, 7868}, {1087, 448}}";
+               };
+       };
+       A1E70D150A38B5BB007BE3E3 /* NTMakefile */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {621, 499}}";
+                       sepNavSelRange = "{0, 0}";
+                       sepNavVisRect = "{{0, 0}, {621, 499}}";
+               };
+       };
+       A1E70D190A38B5BB007BE3E3 /* cc_rpc.h */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {888, 742}}";
+                       sepNavSelRange = "{2202, 18}";
+                       sepNavVisRect = "{{0, 453}, {888, 289}}";
+               };
+       };
+       A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {1003, 8302}}";
+                       sepNavSelRange = "{2631, 0}";
+                       sepNavVisRect = "{{0, 958}, {1003, 521}}";
+               };
+       };
+       A1E70D1B0A38B5BB007BE3E3 /* CredentialsCache2.h */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {1003, 4340}}";
+                       sepNavSelRange = "{7813, 0}";
+                       sepNavVisRect = "{{0, 422}, {1003, 521}}";
+               };
+       };
+       A1E70D1C0A38B5BB007BE3E3 /* datastore.h */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {888, 2562}}";
+                       sepNavSelRange = "{2301, 0}";
+                       sepNavVisRect = "{{0, 573}, {888, 436}}";
+               };
+       };
+       A1E70D1D0A38B5BB007BE3E3 /* generic_lists.h */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {1003, 1442}}";
+                       sepNavSelRange = "{2369, 0}";
+                       sepNavVisRect = "{{0, 545}, {1003, 521}}";
+               };
+       };
+       A1E70D1F0A38B5BB007BE3E3 /* msg.h */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {1003, 2268}}";
+                       sepNavSelRange = "{5529, 0}";
+                       sepNavVisRect = "{{0, 1721}, {1003, 521}}";
+               };
+       };
+       A1E70D260A38B5BB007BE3E3 /* NTMakefile */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {621, 499}}";
+                       sepNavSelRange = "{0, 0}";
+                       sepNavVisRect = "{{0, 0}, {621, 499}}";
+               };
+       };
+       A1E70D280A38B5BB007BE3E3 /* ccs_ccache.c */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {1003, 9856}}";
+                       sepNavSelRange = "{9783, 0}";
+                       sepNavVisRect = "{{0, 3674}, {1003, 730}}";
+               };
+       };
+       A1E70D2C0A38B5BB007BE3E3 /* main.c */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {621, 910}}";
+                       sepNavSelRange = "{0, 0}";
+                       sepNavVisRect = "{{0, 134}, {621, 727}}";
+               };
+       };
+       A1E70D2F0A38B5BB007BE3E3 /* serv_ops.c */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {1087, 22204}}";
+                       sepNavSelRange = "{36879, 21}";
+                       sepNavVisRect = "{{0, 14168}, {1087, 448}}";
+               };
+       };
+       A1E70D3B0A38B5BB007BE3E3 /* client.c */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {804, 1988}}";
+                       sepNavSelRange = "{0, 0}";
+                       sepNavVisRect = "{{0, 0}, {804, 503}}";
+               };
+       };
+       A1E70D460A38B5BC007BE3E3 /* server.c */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {621, 9520}}";
+                       sepNavSelRange = "{0, 0}";
+                       sepNavVisRect = "{{0, 0}, {621, 499}}";
+               };
+       };
+       A1E70D500A38B5F3007BE3E3 /* XCBreakpointsBucket */ = {
+               isa = XCBreakpointsBucket;
+               name = CCAPI;
+               objects = (
+               );
+       };
+       A1E70D5C0A38B796007BE3E3 /* CCacheServer */ = {
+               activeExec = 0;
+               executables = (
+                       A1E70D5E0A38B796007BE3E3 /* CCacheServer */,
+               );
+       };
+       A1E70D5E0A38B796007BE3E3 /* CCacheServer */ = {
+               isa = PBXExecutable;
+               activeArgIndex = 2147483647;
+               activeArgIndices = (
+               );
+               argumentStrings = (
+               );
+               autoAttachOnCrash = 1;
+               configStateDict = {
+               };
+               customDataFormattersEnabled = 1;
+               debuggerPlugin = GDBDebugging;
+               disassemblyDisplayState = 0;
+               enableDebugStr = 1;
+               environmentEntries = (
+               );
+               executableSystemSymbolLevel = 0;
+               executableUserSymbolLevel = 0;
+               libgmallocEnabled = 0;
+               name = CCacheServer;
+               sourceDirectories = (
+               );
+       };
+       A1E70D930A38BB67007BE3E3 /* main.c */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {980, 476}}";
+                       sepNavSelRange = "{316, 42}";
+                       sepNavVisRect = "{{0, 24}, {980, 387}}";
+               };
+       };
+       A1E70D9E0A38BCAD007BE3E3 /* mig.defs */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {804, 826}}";
+                       sepNavSelRange = "{2123, 0}";
+                       sepNavVisRect = "{{0, 400}, {804, 391}}";
+               };
+       };
+       A1E70DB10A38C01E007BE3E3 /* mig_types.h */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {804, 686}}";
+                       sepNavSelRange = "{2188, 0}";
+                       sepNavVisRect = "{{0, 281}, {804, 391}}";
+               };
+       };
+       A1E70DE10A38C6FD007BE3E3 /* kipc_common.h */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {888, 1078}}";
+                       sepNavSelRange = "{1293, 0}";
+                       sepNavVisRect = "{{0, 206}, {888, 470}}";
+               };
+       };
+       A1E70DE40A38C6FD007BE3E3 /* kipc_client.c */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {804, 1218}}";
+                       sepNavSelRange = "{1240, 34}";
+                       sepNavVisRect = "{{0, 235}, {804, 329}}";
+               };
+       };
+       A1E70DE50A38C6FD007BE3E3 /* kipc_common.c */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {632, 1316}}";
+                       sepNavSelRange = "{0, 0}";
+                       sepNavVisRect = "{{0, 0}, {621, 499}}";
+               };
+       };
+       A1E70DE60A38C6FD007BE3E3 /* kipc_server.c */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {728, 4396}}";
+                       sepNavSelRange = "{0, 0}";
+                       sepNavVisRect = "{{0, 0}, {621, 499}}";
+               };
+       };
+       A1E70DE70A38C6FD007BE3E3 /* kipc_session.c */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {698, 1988}}";
+                       sepNavSelRange = "{0, 0}";
+                       sepNavVisRect = "{{0, 0}, {621, 499}}";
+               };
+       };
+       A1E70DE80A38C6FD007BE3E3 /* notify.defs */ = {
+               uiCtxt = {
+                       sepNavIntBoundsRect = "{{0, 0}, {621, 518}}";
+                       sepNavSelRange = "{0, 0}";
+                       sepNavVisRect = "{{0, 0}, {621, 499}}";
+               };
+       };
+       A1E70DF70A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D150A38B5BB007BE3E3 /* NTMakefile */;
+               name = "NTMakefile: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 308;
+               vrLoc = 0;
+       };
+       A1E70DF80A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D3B0A38B5BB007BE3E3 /* client.c */;
+               name = "client.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 903;
+               vrLoc = 0;
+       };
+       A1E70DF90A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D3C0A38B5BB007BE3E3 /* dllmain.c */;
+               name = "dllmain.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 298;
+               vrLoc = 0;
+       };
+       A1E70DFA0A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D3A0A38B5BB007BE3E3 /* cacheapi.def */;
+               name = "cacheapi.def: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 847;
+               vrLoc = 0;
+       };
+       A1E70DFB0A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D460A38B5BC007BE3E3 /* server.c */;
+               name = "server.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 756;
+               vrLoc = 0;
+       };
+       A1E70DFD0A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D120A38B5BB007BE3E3 /* generic_lists.c */;
+               name = "generic_lists.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 1826;
+               vrLoc = 0;
+       };
+       A1E70E010A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D0B0A38B5BB007BE3E3 /* credentials.h */;
+               name = "credentials.h: 1";
+               rLen = 2110;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 1604;
+               vrLoc = 749;
+       };
+       A1E70E020A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D2C0A38B5BB007BE3E3 /* main.c */;
+               name = "main.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 1306;
+               vrLoc = 202;
+       };
+       A1E70E060A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1B0A38B5BB007BE3E3 /* CredentialsCache2.h */;
+               name = "CredentialsCache2.h: 303";
+               rLen = 0;
+               rLoc = 7813;
+               rType = 0;
+               vrLen = 1128;
+               vrLoc = 6802;
+       };
+       A1E70E090A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70DE80A38C6FD007BE3E3 /* notify.defs */;
+               name = "notify.defs: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 1437;
+               vrLoc = 0;
+       };
+       A1E70E0A0A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70DE60A38C6FD007BE3E3 /* kipc_server.c */;
+               name = "kipc_server.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 1538;
+               vrLoc = 0;
+       };
+       A1E70E0B0A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70DE70A38C6FD007BE3E3 /* kipc_session.c */;
+               name = "kipc_session.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 1461;
+               vrLoc = 0;
+       };
+       A1E70E0C0A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70DE50A38C6FD007BE3E3 /* kipc_common.c */;
+               name = "kipc_common.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 1496;
+               vrLoc = 0;
+       };
+       A1E70E100A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D150A38B5BB007BE3E3 /* NTMakefile */;
+               name = "NTMakefile: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 308;
+               vrLoc = 0;
+       };
+       A1E70E110A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D120A38B5BB007BE3E3 /* generic_lists.c */;
+               name = "generic_lists.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 1826;
+               vrLoc = 0;
+       };
+       A1E70E120A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D3B0A38B5BB007BE3E3 /* client.c */;
+               name = "client.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 903;
+               vrLoc = 0;
+       };
+       A1E70E130A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D3C0A38B5BB007BE3E3 /* dllmain.c */;
+               name = "dllmain.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 298;
+               vrLoc = 0;
+       };
+       A1E70E140A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D3A0A38B5BB007BE3E3 /* cacheapi.def */;
+               name = "cacheapi.def: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 847;
+               vrLoc = 0;
+       };
+       A1E70E150A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D460A38B5BC007BE3E3 /* server.c */;
+               name = "server.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 756;
+               vrLoc = 0;
+       };
+       A1E70E160A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D2C0A38B5BB007BE3E3 /* main.c */;
+               name = "main.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 954;
+               vrLoc = 0;
+       };
+       A1E70E170A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D2F0A38B5BB007BE3E3 /* serv_ops.c */;
+               name = "serv_ops.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 1825;
+               vrLoc = 0;
+       };
+       A1E70E180A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D280A38B5BB007BE3E3 /* ccs_ccache.c */;
+               name = "ccs_ccache.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 1861;
+               vrLoc = 0;
+       };
+       A1E70E1B0A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D930A38BB67007BE3E3 /* main.c */;
+               name = "main.c: 22";
+               rLen = 0;
+               rLoc = 509;
+               rType = 0;
+               vrLen = 954;
+               vrLoc = 0;
+       };
+       A1E70E1E0A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D0B0A38B5BB007BE3E3 /* credentials.h */;
+               name = "credentials.h: 1";
+               rLen = 2110;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 1604;
+               vrLoc = 749;
+       };
+       A1E70E1F0A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D130A38B5BB007BE3E3 /* marshall.c */;
+               name = cci_creds_v5_marshall;
+               rLen = 21;
+               rLoc = 6670;
+               rType = 0;
+               vrLen = 1513;
+               vrLoc = 6116;
+       };
+       A1E70E200A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D140A38B5BB007BE3E3 /* msg.c */;
+               name = cci_msg_flatten;
+               rLen = 15;
+               rLoc = 7396;
+               rType = 0;
+               vrLen = 1003;
+               vrLoc = 7034;
+       };
+       A1E70E250A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = "CredentialsCache.h: 583";
+               rLen = 0;
+               rLoc = 20525;
+               rType = 0;
+               vrLen = 2454;
+               vrLoc = 18163;
+       };
+       A1E70E260A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D9E0A38BCAD007BE3E3 /* mig.defs */;
+               name = "ccapi_ipc.defs: 55";
+               rLen = 0;
+               rLoc = 2520;
+               rType = 0;
+               vrLen = 1955;
+               vrLoc = 87;
+       };
+       A1E70E290A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70DE40A38C6FD007BE3E3 /* kipc_client.c */;
+               name = "kipc_client.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 1544;
+               vrLoc = 0;
+       };
+       A1E70E2A0A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70DE50A38C6FD007BE3E3 /* kipc_common.c */;
+               name = "kipc_common.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 1496;
+               vrLoc = 0;
+       };
+       A1E70E2B0A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70DE80A38C6FD007BE3E3 /* notify.defs */;
+               name = "notify.defs: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 1437;
+               vrLoc = 0;
+       };
+       A1E70E2D0A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70DE60A38C6FD007BE3E3 /* kipc_server.c */;
+               name = "kipc_server.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 1538;
+               vrLoc = 0;
+       };
+       A1E70E2E0A38C765007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70DE70A38C6FD007BE3E3 /* kipc_session.c */;
+               name = "kipc_session.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 1461;
+               vrLoc = 0;
+       };
+       A1E70E380A38C778007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D000A38B5BB007BE3E3 /* cacheapi.c */;
+               name = "#include <CredentialsCache.h>";
+               rLen = 30;
+               rLoc = 2170;
+               rType = 0;
+               vrLen = 696;
+               vrLoc = 1821;
+       };
+       A1E70E3D0A38C78C007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D260A38B5BB007BE3E3 /* NTMakefile */;
+               name = "NTMakefile: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 437;
+               vrLoc = 0;
+       };
+       A1E70E410A38C78C007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D260A38B5BB007BE3E3 /* NTMakefile */;
+               name = "NTMakefile: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 437;
+               vrLoc = 0;
+       };
+       A1E70E430A38C791007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D0F0A38B5BB007BE3E3 /* NTMakefile */;
+               name = "NTMakefile: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 432;
+               vrLoc = 0;
+       };
+       A1E70E450A38C791007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D0F0A38B5BB007BE3E3 /* NTMakefile */;
+               name = "NTMakefile: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 432;
+               vrLoc = 0;
+       };
+       A1E70E4A0A38C7BE007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D0F0A38B5BB007BE3E3 /* NTMakefile */;
+               name = "NTMakefile: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 432;
+               vrLoc = 0;
+       };
+       A1E70E520A38C9FD007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D150A38B5BB007BE3E3 /* NTMakefile */;
+               name = "NTMakefile: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 308;
+               vrLoc = 0;
+       };
+       A1E70E530A38C9FD007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1C0A38B5BB007BE3E3 /* datastore.h */;
+               name = cc_list_type;
+               rLen = 0;
+               rLoc = 2301;
+               rType = 0;
+               vrLen = 425;
+               vrLoc = 2113;
+       };
+       A1E70E560A38C9FD007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1D0A38B5BB007BE3E3 /* generic_lists.h */;
+               name = cc_list_type;
+               rLen = 12;
+               rLoc = 2736;
+               rType = 0;
+               vrLen = 728;
+               vrLoc = 2219;
+       };
+       A1E70E580A38C9FD007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1C0A38B5BB007BE3E3 /* datastore.h */;
+               name = cc_list_type;
+               rLen = 0;
+               rLoc = 2301;
+               rType = 0;
+               vrLen = 425;
+               vrLoc = 2113;
+       };
+       A1E70E6F0A38CA08007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1F0A38B5BB007BE3E3 /* msg.h */;
+               name = "#include \"generic_lists.h\"";
+               rLen = 27;
+               rLoc = 2765;
+               rType = 0;
+               vrLen = 755;
+               vrLoc = 2478;
+       };
+       A1E70E770A38CA55007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D190A38B5BB007BE3E3 /* cc_rpc.h */;
+               name = "#include \"msg.h\"";
+               rLen = 18;
+               rLoc = 2202;
+               rType = 0;
+               vrLen = 644;
+               vrLoc = 1674;
+       };
+       A1E70E7D0A38CA55007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D190A38B5BB007BE3E3 /* cc_rpc.h */;
+               name = "#include \"msg.h\"";
+               rLen = 18;
+               rLoc = 2202;
+               rType = 0;
+               vrLen = 644;
+               vrLoc = 1674;
+       };
+       A1E70E9C0A38CAF1007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D120A38B5BB007BE3E3 /* generic_lists.c */;
+               name = "generic_lists.c: 56";
+               rLen = 0;
+               rLoc = 2280;
+               rType = 0;
+               vrLen = 463;
+               vrLoc = 2119;
+       };
+       A1E70EA80A38CB24007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1D0A38B5BB007BE3E3 /* generic_lists.h */;
+               name = "generic_lists.h: cc_generic_list_node_t";
+               rLen = 0;
+               rLoc = 2452;
+               rType = 0;
+               vrLen = 598;
+               vrLoc = 2206;
+       };
+       A1E70EAB0A38CB24007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D080A38B5BB007BE3E3 /* context.c */;
+               name = "code = cci_msg_add_data_blob(request, (void *)name, strlen(name) + 1, &blob_pos);";
+               rLen = 86;
+               rLoc = 14073;
+               rType = 0;
+               vrLen = 704;
+               vrLoc = 13925;
+       };
+       A1E70EB50A38CB4D007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D000A38B5BB007BE3E3 /* cacheapi.c */;
+               name = "strncpy(vendor, string, sizeof(vendor)-1);";
+               rLen = 55;
+               rLoc = 4926;
+               rType = 0;
+               vrLen = 780;
+               vrLoc = 1821;
+       };
+       A1E70EC30A38CC14007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D010A38B5BB007BE3E3 /* ccache.c */;
+               name = "ccache.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 1115;
+               vrLoc = 0;
+       };
+       A1E70ECB0A38CC4C007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70DE40A38C6FD007BE3E3 /* kipc_client.c */;
+               name = "#include <Kerberos/kipc_client.h>";
+               rLen = 34;
+               rLoc = 1240;
+               rType = 0;
+               vrLen = 891;
+               vrLoc = 724;
+       };
+       A1E70ED70A38CCB6007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70DE40A38C6FD007BE3E3 /* kipc_client.c */;
+               name = "#include <Kerberos/kipc_client.h>";
+               rLen = 34;
+               rLoc = 1240;
+               rType = 0;
+               vrLen = 1069;
+               vrLoc = 582;
+       };
+       A1E70EE20A38CCD6007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70DB10A38C01E007BE3E3 /* mig_types.h */;
+               name = "ccapi_ipc.h: 39";
+               rLen = 0;
+               rLoc = 1957;
+               rType = 0;
+               vrLen = 892;
+               vrLoc = 1209;
+       };
+       A1E70EFE0A38CD66007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70DE10A38C6FD007BE3E3 /* kipc_common.h */;
+               name = "#include <Kerberos/KerberosDebug.h>";
+               rLen = 36;
+               rLoc = 1293;
+               rType = 0;
+               vrLen = 609;
+               vrLoc = 1011;
+       };
+       A1E70F0F0A38CE21007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D3B0A38B5BB007BE3E3 /* client.c */;
+               name = "client.c: 1";
+               rLen = 0;
+               rLoc = 0;
+               rType = 0;
+               vrLen = 903;
+               vrLoc = 0;
+       };
+       A1E70F440A38D252007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70DB10A38C01E007BE3E3 /* mig_types.h */;
+               name = "msg_ipc.h: 48";
+               rLen = 0;
+               rLoc = 2188;
+               rType = 0;
+               vrLen = 793;
+               vrLoc = 1409;
+       };
+       A1E70F450A38D252007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70DE10A38C6FD007BE3E3 /* kipc_common.h */;
+               name = "kipc_common.h: 32";
+               rLen = 0;
+               rLoc = 1293;
+               rType = 0;
+               vrLen = 1252;
+               vrLoc = 450;
+       };
+       A1E70F8B0A38D3B4007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D9E0A38BCAD007BE3E3 /* mig.defs */;
+               name = "msg_ipc.defs: 43";
+               rLen = 0;
+               rLoc = 2111;
+               rType = 0;
+               vrLen = 1149;
+               vrLoc = 1378;
+       };
+       A1E70F9C0A38D41E007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70DB10A38C01E007BE3E3 /* mig_types.h */;
+               name = "mig_types.h: 48";
+               rLen = 0;
+               rLoc = 2188;
+               rType = 0;
+               vrLen = 1178;
+               vrLoc = 1024;
+       };
+       A1E70F9D0A38D41E007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D9E0A38BCAD007BE3E3 /* mig.defs */;
+               name = "mig.defs: 44";
+               rLen = 0;
+               rLoc = 2123;
+               rType = 0;
+               vrLen = 1034;
+               vrLoc = 1439;
+       };
+       A1E70FC60A38D560007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70FC70A38D560007BE3E3 /* migServer.h */;
+               name = ccapi_server;
+               rLen = 12;
+               rLoc = 1268;
+               rType = 0;
+               vrLen = 879;
+               vrLoc = 942;
+       };
+       A1E70FC70A38D560007BE3E3 /* migServer.h */ = {
+               isa = PBXFileReference;
+               name = migServer.h;
+               path = "/Volumes/Ra-Tilt/Users/lxs/Builds/CCAPI.build/Debug/CCacheServer.build/DerivedSources/migServer.h";
+               sourceTree = "<absolute>";
+       };
+       A1E70FC80A38D560007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D930A38BB67007BE3E3 /* main.c */;
+               name = "main.c: 23";
+               rLen = 0;
+               rLoc = 495;
+               rType = 0;
+               vrLen = 691;
+               vrLoc = 0;
+       };
+       A1E70FC90A38D560007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1C0A38B5BB007BE3E3 /* datastore.h */;
+               name = "datastore.h: 55";
+               rLen = 0;
+               rLoc = 2301;
+               rType = 0;
+               vrLen = 805;
+               vrLoc = 2101;
+       };
+       A1E70FCA0A38D560007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1D0A38B5BB007BE3E3 /* generic_lists.h */;
+               name = "generic_lists.h: 52";
+               rLen = 0;
+               rLoc = 2371;
+               rType = 0;
+               vrLen = 757;
+               vrLoc = 2012;
+       };
+       A1E70FCD0A38D560007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D930A38BB67007BE3E3 /* main.c */;
+               name = "main.c: 23";
+               rLen = 0;
+               rLoc = 495;
+               rType = 0;
+               vrLen = 691;
+               vrLoc = 0;
+       };
+       A1E70FD80A38D573007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D930A38BB67007BE3E3 /* main.c */;
+               name = "syslog (LOG_INFO, \"Starting up.\");";
+               rLen = 42;
+               rLoc = 316;
+               rType = 0;
+               vrLen = 628;
+               vrLoc = 21;
+       };
+       A1E70FEE0A38D7C0007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D130A38B5BB007BE3E3 /* marshall.c */;
+               name = "marshall.c: 48";
+               rLen = 0;
+               rLoc = 2234;
+               rType = 0;
+               vrLen = 831;
+               vrLoc = 1674;
+       };
+       A1E70FEF0A38D7C0007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D010A38B5BB007BE3E3 /* ccache.c */;
+               name = "ccache.c: 49";
+               rLen = 0;
+               rLoc = 2186;
+               rType = 0;
+               vrLen = 432;
+               vrLoc = 2106;
+       };
+       A1E70FF00A38D7C0007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D080A38B5BB007BE3E3 /* context.c */;
+               name = "code = cci_msg_retrieve_blob(response, ntohl(response_header->vendor_offset), ntohl(response_header->vendor_length), &string);";
+               rLen = 139;
+               rLoc = 29872;
+               rType = 0;
+               vrLen = 757;
+               vrLoc = 27442;
+       };
+       A1E70FFA0A38D806007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D130A38B5BB007BE3E3 /* marshall.c */;
+               name = "memcpy(creds->client, flat + header->client.data, length);";
+               rLen = 68;
+               rLoc = 11995;
+               rType = 0;
+               vrLen = 1038;
+               vrLoc = 11543;
+       };
+       A1E70FFC0A38D806007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D020A38B5BB007BE3E3 /* ccache.h */;
+               name = cc_handle;
+               rLen = 9;
+               rLoc = 2339;
+               rType = 0;
+               vrLen = 663;
+               vrLoc = 2042;
+       };
+       A1E70FFF0A38D806007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D020A38B5BB007BE3E3 /* ccache.h */;
+               name = cc_handle;
+               rLen = 9;
+               rLoc = 2339;
+               rType = 0;
+               vrLen = 663;
+               vrLoc = 2042;
+       };
+       A1E710010A38D814007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = cc_handle;
+               rLen = 9;
+               rLoc = 5095;
+               rType = 0;
+               vrLen = 617;
+               vrLoc = 4722;
+       };
+       A1E7100A0A38D888007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = cc_handle;
+               rLen = 9;
+               rLoc = 5095;
+               rType = 0;
+               vrLen = 619;
+               vrLoc = 4720;
+       };
+       A1E7100C0A38D888007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D080A38B5BB007BE3E3 /* context.c */;
+               name = cci_msg_retrieve_blob;
+               rLen = 21;
+               rLoc = 29891;
+               rType = 0;
+               vrLen = 1038;
+               vrLoc = 29282;
+       };
+       A1E7100D0A38D888007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D0C0A38B5BB007BE3E3 /* credentials_iterator.c */;
+               name = cci_msg_retrieve_blob;
+               rLen = 21;
+               rLoc = 6723;
+               rType = 0;
+               vrLen = 1080;
+               vrLoc = 6223;
+       };
+       A1E710110A38D888007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D2F0A38B5BB007BE3E3 /* serv_ops.c */;
+               name = cci_msg_retrieve_blob;
+               rLen = 21;
+               rLoc = 22827;
+               rType = 0;
+               vrLen = 921;
+               vrLoc = 22183;
+       };
+       A1E710140A38D888007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D0C0A38B5BB007BE3E3 /* credentials_iterator.c */;
+               name = cci_msg_retrieve_blob;
+               rLen = 21;
+               rLoc = 6723;
+               rType = 0;
+               vrLen = 1080;
+               vrLoc = 6223;
+       };
+       A1E7103C0A38DE0B007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1F0A38B5BB007BE3E3 /* msg.h */;
+               name = "msg.h: 142";
+               rLen = 0;
+               rLoc = 5529;
+               rType = 0;
+               vrLen = 1239;
+               vrLoc = 4630;
+       };
+       A1E710400A38DE0B007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D140A38B5BB007BE3E3 /* msg.c */;
+               name = "msg.c: cci_msg_retrieve_blob";
+               rLen = 0;
+               rLoc = 15353;
+               rType = 0;
+               vrLen = 962;
+               vrLoc = 14947;
+       };
+       A1E710530A39EC0B007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D2F0A38B5BB007BE3E3 /* serv_ops.c */;
+               name = "serv_ops.c: 322";
+               rLen = 0;
+               rLoc = 12676;
+               rType = 0;
+               vrLen = 1049;
+               vrLoc = 12199;
+       };
+       A1E7105A0A39ED89007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D000A38B5BB007BE3E3 /* cacheapi.c */;
+               name = "code = cci_msg_retrieve_blob(response, ntohl(response_header->vendor_offset), ntohl(response_header->vendor_length), &string);";
+               rLen = 139;
+               rLoc = 4787;
+               rType = 0;
+               vrLen = 1079;
+               vrLoc = 4176;
+       };
+       A1E7105D0A39ED89007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D000A38B5BB007BE3E3 /* cacheapi.c */;
+               name = "code = cci_msg_retrieve_blob(response, ntohl(response_header->vendor_offset), ntohl(response_header->vendor_length), &string);";
+               rLen = 139;
+               rLoc = 4787;
+               rType = 0;
+               vrLen = 1079;
+               vrLoc = 4176;
+       };
+       A1E7105E0A39ED89007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D140A38B5BB007BE3E3 /* msg.c */;
+               name = "cur_pos = msg->flat;";
+               rLen = 25;
+               rLoc = 7704;
+               rType = 0;
+               vrLen = 835;
+               vrLoc = 7353;
+       };
+       A1E710680A39F102007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D2F0A38B5BB007BE3E3 /* serv_ops.c */;
+               name = "resp_header->ccache = htonll((cc_handle) ccache);";
+               rLen = 54;
+               rLoc = 23249;
+               rType = 0;
+               vrLen = 1200;
+               vrLoc = 22714;
+       };
+       A1E710840A3A1CFB007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D010A38B5BB007BE3E3 /* ccache.c */;
+               name = "ccache.c: 378";
+               rLen = 0;
+               rLoc = 11919;
+               rType = 0;
+               vrLen = 1092;
+               vrLoc = 11685;
+       };
+       A1E710860A3A1CFB007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D140A38B5BB007BE3E3 /* msg.c */;
+               name = "msg.c: 585";
+               rLen = 0;
+               rLoc = 15353;
+               rType = 0;
+               vrLen = 1129;
+               vrLoc = 14797;
+       };
+       A1E710870A3A1CFB007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D010A38B5BB007BE3E3 /* ccache.c */;
+               name = "ccache.c: 378";
+               rLen = 0;
+               rLoc = 11919;
+               rType = 0;
+               vrLen = 1092;
+               vrLoc = 11685;
+       };
+       A1E710890A3A1D04007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D280A38B5BB007BE3E3 /* ccs_ccache.c */;
+               name = "ccs_ccache.c: 289";
+               rLen = 0;
+               rLoc = 9783;
+               rType = 0;
+               vrLen = 919;
+               vrLoc = 9327;
+       };
+       A1E7108B0A3A1D04007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D280A38B5BB007BE3E3 /* ccs_ccache.c */;
+               name = "ccs_ccache.c: 289";
+               rLen = 0;
+               rLoc = 9783;
+               rType = 0;
+               vrLen = 919;
+               vrLoc = 9327;
+       };
+       A1E7108D0A3A1D06007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D280A38B5BB007BE3E3 /* ccs_ccache.c */;
+               name = "ccs_ccache.c: 289";
+               rLen = 0;
+               rLoc = 9783;
+               rType = 0;
+               vrLen = 1441;
+               vrLoc = 9196;
+       };
+       A1E710930A3A1D22007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D2F0A38B5BB007BE3E3 /* serv_ops.c */;
+               name = cci_msg_retrieve_blob;
+               rLen = 21;
+               rLoc = 36879;
+               rType = 0;
+               vrLen = 1393;
+               vrLoc = 35980;
+       };
+       A1E710940A3A1D22007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1F0A38B5BB007BE3E3 /* msg.h */;
+               name = "msg.h: 142";
+               rLen = 0;
+               rLoc = 5529;
+               rType = 0;
+               vrLen = 1480;
+               vrLoc = 4457;
+       };
+       A1E710950A3A1D22007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D140A38B5BB007BE3E3 /* msg.c */;
+               rLen = 21;
+               rLoc = 14700;
+               rType = 0;
+       };
+       A1E710960A3A1D22007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D2F0A38B5BB007BE3E3 /* serv_ops.c */;
+               name = cci_msg_retrieve_blob;
+               rLen = 21;
+               rLoc = 36879;
+               rType = 0;
+               vrLen = 1393;
+               vrLoc = 35980;
+       };
+       A1E710970A3A1D22007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1F0A38B5BB007BE3E3 /* msg.h */;
+               name = "msg.h: 142";
+               rLen = 0;
+               rLoc = 5529;
+               rType = 0;
+               vrLen = 1480;
+               vrLoc = 4457;
+       };
+       A1E7109C0A3A1D2B007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D2F0A38B5BB007BE3E3 /* serv_ops.c */;
+               name = cci_msg_retrieve_blob;
+               rLen = 21;
+               rLoc = 36879;
+               rType = 0;
+               vrLen = 1196;
+               vrLoc = 36344;
+       };
+       A1E7109D0A3A1D2B007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               comments = "error: conflicting types for 'cci_msg_retrieve_blob'";
+               fRef = A1E70D140A38B5BB007BE3E3 /* msg.c */;
+               rLen = 1;
+               rLoc = 570;
+               rType = 1;
+       };
+       A1E7109F0A3A1DD0007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D140A38B5BB007BE3E3 /* msg.c */;
+               name = "msg.c: 1248";
+               rLen = 0;
+               rLoc = 16800;
+               rType = 0;
+               vrLen = 1576;
+               vrLoc = 14015;
+       };
+       A1E710A00A3A1DD0007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D140A38B5BB007BE3E3 /* msg.c */;
+               name = "msg.c: 1248";
+               rLen = 0;
+               rLoc = 16800;
+               rType = 0;
+               vrLen = 1582;
+               vrLoc = 0;
+       };
+       A1E710A50A3A22E1007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D140A38B5BB007BE3E3 /* msg.c */;
+               name = "msg.c: 623";
+               rLen = 0;
+               rLoc = 16800;
+               rType = 0;
+               vrLen = 1674;
+               vrLoc = 0;
+       };
+       A1E710AB0A3A22F5007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D140A38B5BB007BE3E3 /* msg.c */;
+               name = "msg.c: 623";
+               rLen = 0;
+               rLoc = 16800;
+               rType = 0;
+               vrLen = 2012;
+               vrLoc = 0;
+       };
+       A1E710AC0A3A22F5007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D140A38B5BB007BE3E3 /* msg.c */;
+               name = "msg.c: cci_msg_retrieve_blob";
+               rLen = 0;
+               rLoc = 15346;
+               rType = 0;
+               vrLen = 1284;
+               vrLoc = 15187;
+       };
+       A1E710AD0A3A22F5007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D140A38B5BB007BE3E3 /* msg.c */;
+               name = "msg.c: cci_msg_retrieve_blob";
+               rLen = 0;
+               rLoc = 15346;
+               rType = 0;
+               vrLen = 1209;
+               vrLoc = 15187;
+       };
+       A1E710AF0A3A22FE007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D140A38B5BB007BE3E3 /* msg.c */;
+               name = "msg.c: cci_msg_retrieve_blob";
+               rLen = 0;
+               rLoc = 15346;
+               rType = 0;
+               vrLen = 1589;
+               vrLoc = 14614;
+       };
+       A1E710B30A3A22FF007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D140A38B5BB007BE3E3 /* msg.c */;
+               name = "msg.c: cci_msg_retrieve_blob";
+               rLen = 0;
+               rLoc = 15346;
+               rType = 0;
+               vrLen = 1209;
+               vrLoc = 15187;
+       };
+       A1E710B90A3A23FB007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D140A38B5BB007BE3E3 /* msg.c */;
+               name = cci_msg_retrieve_blob;
+               rLen = 21;
+               rLoc = 15262;
+               rType = 0;
+               vrLen = 1209;
+               vrLoc = 15187;
+       };
+       A1E710BC0A3A2415007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D140A38B5BB007BE3E3 /* msg.c */;
+               name = cci_msg_retrieve_blob;
+               rLen = 21;
+               rLoc = 15262;
+               rType = 0;
+               vrLen = 1356;
+               vrLoc = 15083;
+       };
+       A1E710BD0A3A2415007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D120A38B5BB007BE3E3 /* generic_lists.c */;
+               name = "generic_lists.c: 56";
+               rLen = 0;
+               rLoc = 2280;
+               rType = 0;
+               vrLen = 873;
+               vrLoc = 1826;
+       };
+       A1E710BE0A3A2415007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D140A38B5BB007BE3E3 /* msg.c */;
+               name = cci_msg_retrieve_blob;
+               rLen = 21;
+               rLoc = 15262;
+               rType = 0;
+               vrLen = 1356;
+               vrLoc = 15083;
+       };
+       A1E710BF0A3A2415007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D120A38B5BB007BE3E3 /* generic_lists.c */;
+               name = "generic_lists.c: 56";
+               rLen = 0;
+               rLoc = 2280;
+               rType = 0;
+               vrLen = 863;
+               vrLoc = 1826;
+       };
+       A1E710C00A3A2415007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D140A38B5BB007BE3E3 /* msg.c */;
+               name = cci_msg_retrieve_blob;
+               rLen = 21;
+               rLoc = 15262;
+               rType = 0;
+               vrLen = 1209;
+               vrLoc = 15187;
+       };
+       A1E710C60A3A2441007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D120A38B5BB007BE3E3 /* generic_lists.c */;
+               name = "generic_lists.c: 56";
+               rLen = 0;
+               rLoc = 2280;
+               rType = 0;
+               vrLen = 863;
+               vrLoc = 1826;
+       };
+       A1E710C70A3A2441007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1D0A38B5BB007BE3E3 /* generic_lists.h */;
+               name = "generic_lists.h: 54";
+               rLen = 0;
+               rLoc = 2452;
+               rType = 0;
+               vrLen = 1215;
+               vrLoc = 1674;
+       };
+       A1E710C80A3A2441007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D120A38B5BB007BE3E3 /* generic_lists.c */;
+               name = "generic_lists.c: 56";
+               rLen = 0;
+               rLoc = 2280;
+               rType = 0;
+               vrLen = 863;
+               vrLoc = 1826;
+       };
+       A1E710C90A3A2441007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1D0A38B5BB007BE3E3 /* generic_lists.h */;
+               name = "generic_lists.h: 58";
+               rLen = 0;
+               rLoc = 2369;
+               rType = 0;
+               vrLen = 939;
+               vrLoc = 1935;
+       };
+       A1E710CA0A3A244D007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D140A38B5BB007BE3E3 /* msg.c */;
+               name = cci_msg_retrieve_blob;
+               rLen = 21;
+               rLoc = 15262;
+               rType = 0;
+               vrLen = 1209;
+               vrLoc = 15187;
+       };
+       A1E710CB0A3A244D007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1D0A38B5BB007BE3E3 /* generic_lists.h */;
+               name = "generic_lists.h: 58";
+               rLen = 0;
+               rLoc = 2369;
+               rType = 0;
+               vrLen = 696;
+               vrLoc = 2147;
+       };
+       A1E710CC0A3A244D007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               comments = "error: CredentialsCache.h: No such file or directory";
+               fRef = A1E70D120A38B5BB007BE3E3 /* generic_lists.c */;
+               rLen = 1;
+               rLoc = 53;
+               rType = 1;
+       };
+       A1E710CD0A3A244D007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1D0A38B5BB007BE3E3 /* generic_lists.h */;
+               name = "generic_lists.h: 58";
+               rLen = 0;
+               rLoc = 2369;
+               rType = 0;
+               vrLen = 696;
+               vrLoc = 2147;
+       };
+       A1E710CE0A3A244D007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D120A38B5BB007BE3E3 /* generic_lists.c */;
+               name = "#include \"CredentialsCache.h\"";
+               rLen = 31;
+               rLoc = 2221;
+               rType = 0;
+               vrLen = 608;
+               vrLoc = 2043;
+       };
+       A1E710D00A3A2456007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1D0A38B5BB007BE3E3 /* generic_lists.h */;
+               name = "generic_lists.h: 58";
+               rLen = 0;
+               rLoc = 2369;
+               rType = 0;
+               vrLen = 906;
+               vrLoc = 2012;
+       };
+       A1E710D10A3A2456007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D120A38B5BB007BE3E3 /* generic_lists.c */;
+               name = "#include \"CredentialsCache.h\"";
+               rLen = 31;
+               rLoc = 2221;
+               rType = 0;
+               vrLen = 861;
+               vrLoc = 1792;
+       };
+       A1E710D20A3A2456007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = cc_handle;
+               rLen = 9;
+               rLoc = 5095;
+               rType = 0;
+               vrLen = 822;
+               vrLoc = 4694;
+       };
+       A1E710D30A3A2456007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D120A38B5BB007BE3E3 /* generic_lists.c */;
+               name = "#include \"CredentialsCache.h\"";
+               rLen = 31;
+               rLoc = 2221;
+               rType = 0;
+               vrLen = 861;
+               vrLoc = 1792;
+       };
+       A1E710D40A3A2456007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = cc_handle;
+               rLen = 9;
+               rLoc = 5095;
+               rType = 0;
+               vrLen = 822;
+               vrLoc = 4694;
+       };
+       A1E710D70A3A2465007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = cc_handle;
+               rLen = 9;
+               rLoc = 5095;
+               rType = 0;
+               vrLen = 802;
+               vrLoc = 4694;
+       };
+       A1E710D80A3A2465007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D120A38B5BB007BE3E3 /* generic_lists.c */;
+               name = "#include \"CredentialsCache.h\"";
+               rLen = 31;
+               rLoc = 2221;
+               rType = 0;
+               vrLen = 683;
+               vrLoc = 1899;
+       };
+       A1E710D90A3A2465007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = cc_handle;
+               rLen = 9;
+               rLoc = 5095;
+               rType = 0;
+               vrLen = 726;
+               vrLoc = 4701;
+       };
+       A1E710DB0A3A246E007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = cc_handle;
+               rLen = 9;
+               rLoc = 5095;
+               rType = 0;
+               vrLen = 726;
+               vrLoc = 4701;
+       };
+       A1E710DF0A3A247D007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1B0A38B5BB007BE3E3 /* CredentialsCache2.h */;
+               name = "CredentialsCache2.h: 303";
+               rLen = 0;
+               rLoc = 7813;
+               rType = 0;
+               vrLen = 786;
+               vrLoc = 7144;
+       };
+       A1E710E00A3A247D007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = cc_handle;
+               rLen = 9;
+               rLoc = 5095;
+               rType = 0;
+               vrLen = 802;
+               vrLoc = 4694;
+       };
+       A1E710E10A3A247D007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = cc_handle;
+               rLen = 9;
+               rLoc = 5095;
+               rType = 0;
+               vrLen = 802;
+               vrLoc = 4694;
+       };
+       A1E710E20A3A247D007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1B0A38B5BB007BE3E3 /* CredentialsCache2.h */;
+               name = "CredentialsCache2.h: 303";
+               rLen = 0;
+               rLoc = 7813;
+               rType = 0;
+               vrLen = 786;
+               vrLoc = 7144;
+       };
+       A1E710E30A3A247D007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = "CredentialsCache.h: 67";
+               rLen = 0;
+               rLoc = 2631;
+               rType = 0;
+               vrLen = 836;
+               vrLoc = 2610;
+       };
+       A1E710E50A3A248A007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = "CredentialsCache.h: 67";
+               rLen = 0;
+               rLoc = 2631;
+               rType = 0;
+               vrLen = 1007;
+               vrLoc = 2180;
+       };
+       A1E710E60A3A248A007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = "CredentialsCache.h: 67";
+               rLen = 0;
+               rLoc = 2631;
+               rType = 0;
+               vrLen = 750;
+               vrLoc = 2696;
+       };
+       A1E710E70A3A24A4007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = "CredentialsCache.h: 67";
+               rLen = 0;
+               rLoc = 2631;
+               rType = 0;
+               vrLen = 750;
+               vrLoc = 2696;
+       };
+       A1E710E80A3A24A5007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = "CredentialsCache.h: 67";
+               rLen = 0;
+               rLoc = 2631;
+               rType = 0;
+               vrLen = 825;
+               vrLoc = 2639;
+       };
+       A1E710E90A3A24A5007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = "CredentialsCache.h: 67";
+               rLen = 0;
+               rLoc = 2631;
+               rType = 0;
+               vrLen = 750;
+               vrLoc = 2696;
+       };
+       A1E710EA0A3A2521007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = "CredentialsCache.h: 67";
+               rLen = 0;
+               rLoc = 2631;
+               rType = 0;
+               vrLen = 825;
+               vrLoc = 2639;
+       };
+       A1E710EB0A3A2521007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1B0A38B5BB007BE3E3 /* CredentialsCache2.h */;
+               name = "CredentialsCache2.h: 303";
+               rLen = 0;
+               rLoc = 7813;
+               rType = 0;
+               vrLen = 1103;
+               vrLoc = 1564;
+       };
+       A1E710EC0A3A2521007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1D0A38B5BB007BE3E3 /* generic_lists.h */;
+               name = "generic_lists.h: 58";
+               rLen = 0;
+               rLoc = 2369;
+               rType = 0;
+               vrLen = 906;
+               vrLoc = 2012;
+       };
+       A1E710ED0A3A2521007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = "CredentialsCache.h: 67";
+               rLen = 0;
+               rLoc = 2631;
+               rType = 0;
+               vrLen = 825;
+               vrLoc = 2639;
+       };
+       A1E710EE0A3A2521007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1B0A38B5BB007BE3E3 /* CredentialsCache2.h */;
+               name = "CredentialsCache2.h: 303";
+               rLen = 0;
+               rLoc = 7813;
+               rType = 0;
+               vrLen = 1103;
+               vrLoc = 1564;
+       };
+       A1E710EF0A3A2521007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1D0A38B5BB007BE3E3 /* generic_lists.h */;
+               name = "generic_lists.h: 58";
+               rLen = 0;
+               rLoc = 2369;
+               rType = 0;
+               vrLen = 906;
+               vrLoc = 2012;
+       };
+       A1E710F00A3A2521007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D120A38B5BB007BE3E3 /* generic_lists.c */;
+               name = "generic_lists.c: 56";
+               rLen = 0;
+               rLoc = 2280;
+               rType = 0;
+               vrLen = 842;
+               vrLoc = 1792;
+       };
+       A1E710F10A3A2521007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = "CredentialsCache.h: 67";
+               rLen = 0;
+               rLoc = 2631;
+               rType = 0;
+               vrLen = 750;
+               vrLoc = 2696;
+       };
+       A1E710F40A3A253F007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D120A38B5BB007BE3E3 /* generic_lists.c */;
+               name = "generic_lists.c: 57";
+               rLen = 0;
+               rLoc = 2282;
+               rType = 0;
+               vrLen = 861;
+               vrLoc = 1792;
+       };
+       A1E710F50A3A253F007BE3E3 /* PBXTextBookmark */ = {
+               isa = PBXTextBookmark;
+               fRef = A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */;
+               name = "CredentialsCache.h: 67";
+               rLen = 0;
+               rLoc = 2631;
+               rType = 0;
+               vrLen = 750;
+               vrLoc = 2696;
+       };
+       D2AAC045055464E500DB518D /* CCAPI */ = {
+               activeExec = 0;
+       };
+}
diff --git a/src/lib/ccapi/mac/CCAPI.xcodeproj/lxs.perspective b/src/lib/ccapi/mac/CCAPI.xcodeproj/lxs.perspective
new file mode 100644 (file)
index 0000000..1983707
--- /dev/null
@@ -0,0 +1,1567 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+       <key>ActivePerspectiveName</key>
+       <string>Project</string>
+       <key>AllowedModules</key>
+       <array>
+               <dict>
+                       <key>BundleLoadPath</key>
+                       <string></string>
+                       <key>MaxInstances</key>
+                       <string>n</string>
+                       <key>Module</key>
+                       <string>PBXSmartGroupTreeModule</string>
+                       <key>Name</key>
+                       <string>Groups and Files Outline View</string>
+               </dict>
+               <dict>
+                       <key>BundleLoadPath</key>
+                       <string></string>
+                       <key>MaxInstances</key>
+                       <string>n</string>
+                       <key>Module</key>
+                       <string>PBXNavigatorGroup</string>
+                       <key>Name</key>
+                       <string>Editor</string>
+               </dict>
+               <dict>
+                       <key>BundleLoadPath</key>
+                       <string></string>
+                       <key>MaxInstances</key>
+                       <string>n</string>
+                       <key>Module</key>
+                       <string>XCTaskListModule</string>
+                       <key>Name</key>
+                       <string>Task List</string>
+               </dict>
+               <dict>
+                       <key>BundleLoadPath</key>
+                       <string></string>
+                       <key>MaxInstances</key>
+                       <string>n</string>
+                       <key>Module</key>
+                       <string>XCDetailModule</string>
+                       <key>Name</key>
+                       <string>File and Smart Group Detail Viewer</string>
+               </dict>
+               <dict>
+                       <key>BundleLoadPath</key>
+                       <string></string>
+                       <key>MaxInstances</key>
+                       <string>1</string>
+                       <key>Module</key>
+                       <string>PBXBuildResultsModule</string>
+                       <key>Name</key>
+                       <string>Detailed Build Results Viewer</string>
+               </dict>
+               <dict>
+                       <key>BundleLoadPath</key>
+                       <string></string>
+                       <key>MaxInstances</key>
+                       <string>1</string>
+                       <key>Module</key>
+                       <string>PBXProjectFindModule</string>
+                       <key>Name</key>
+                       <string>Project Batch Find Tool</string>
+               </dict>
+               <dict>
+                       <key>BundleLoadPath</key>
+                       <string></string>
+                       <key>MaxInstances</key>
+                       <string>n</string>
+                       <key>Module</key>
+                       <string>PBXRunSessionModule</string>
+                       <key>Name</key>
+                       <string>Run Log</string>
+               </dict>
+               <dict>
+                       <key>BundleLoadPath</key>
+                       <string></string>
+                       <key>MaxInstances</key>
+                       <string>n</string>
+                       <key>Module</key>
+                       <string>PBXBookmarksModule</string>
+                       <key>Name</key>
+                       <string>Bookmarks Tool</string>
+               </dict>
+               <dict>
+                       <key>BundleLoadPath</key>
+                       <string></string>
+                       <key>MaxInstances</key>
+                       <string>n</string>
+                       <key>Module</key>
+                       <string>PBXClassBrowserModule</string>
+                       <key>Name</key>
+                       <string>Class Browser</string>
+               </dict>
+               <dict>
+                       <key>BundleLoadPath</key>
+                       <string></string>
+                       <key>MaxInstances</key>
+                       <string>n</string>
+                       <key>Module</key>
+                       <string>PBXCVSModule</string>
+                       <key>Name</key>
+                       <string>Source Code Control Tool</string>
+               </dict>
+               <dict>
+                       <key>BundleLoadPath</key>
+                       <string></string>
+                       <key>MaxInstances</key>
+                       <string>n</string>
+                       <key>Module</key>
+                       <string>PBXDebugBreakpointsModule</string>
+                       <key>Name</key>
+                       <string>Debug Breakpoints Tool</string>
+               </dict>
+               <dict>
+                       <key>BundleLoadPath</key>
+                       <string></string>
+                       <key>MaxInstances</key>
+                       <string>n</string>
+                       <key>Module</key>
+                       <string>XCDockableInspector</string>
+                       <key>Name</key>
+                       <string>Inspector</string>
+               </dict>
+               <dict>
+                       <key>BundleLoadPath</key>
+                       <string></string>
+                       <key>MaxInstances</key>
+                       <string>n</string>
+                       <key>Module</key>
+                       <string>PBXOpenQuicklyModule</string>
+                       <key>Name</key>
+                       <string>Open Quickly Tool</string>
+               </dict>
+               <dict>
+                       <key>BundleLoadPath</key>
+                       <string></string>
+                       <key>MaxInstances</key>
+                       <string>1</string>
+                       <key>Module</key>
+                       <string>PBXDebugSessionModule</string>
+                       <key>Name</key>
+                       <string>Debugger</string>
+               </dict>
+               <dict>
+                       <key>BundleLoadPath</key>
+                       <string></string>
+                       <key>MaxInstances</key>
+                       <string>1</string>
+                       <key>Module</key>
+                       <string>PBXDebugCLIModule</string>
+                       <key>Name</key>
+                       <string>Debug Console</string>
+               </dict>
+       </array>
+       <key>Description</key>
+       <string>AIODescriptionKey</string>
+       <key>DockingSystemVisible</key>
+       <false/>
+       <key>Extension</key>
+       <string>perspective</string>
+       <key>FavBarConfig</key>
+       <dict>
+               <key>PBXProjectModuleGUID</key>
+               <string>A1E70E750A38CA08007BE3E3</string>
+               <key>XCBarModuleItemNames</key>
+               <dict/>
+               <key>XCBarModuleItems</key>
+               <array/>
+       </dict>
+       <key>FirstTimeWindowDisplayed</key>
+       <false/>
+       <key>Identifier</key>
+       <string>com.apple.perspectives.project.default</string>
+       <key>MajorVersion</key>
+       <integer>33</integer>
+       <key>MinorVersion</key>
+       <integer>0</integer>
+       <key>Name</key>
+       <string>All-In-One</string>
+       <key>Notifications</key>
+       <array>
+               <dict>
+                       <key>XCObserverAutoDisconnectKey</key>
+                       <true/>
+                       <key>XCObserverDefintionKey</key>
+                       <dict/>
+                       <key>XCObserverFactoryKey</key>
+                       <string>XCPerspectivesSpecificationIdentifier</string>
+                       <key>XCObserverGUIDKey</key>
+                       <string>XCObserverProjectIdentifier</string>
+                       <key>XCObserverNotificationKey</key>
+                       <string>PBXStatusBuildStateMessageNotification</string>
+                       <key>XCObserverTargetKey</key>
+                       <string>XCMainBuildResultsModuleGUID</string>
+                       <key>XCObserverTriggerKey</key>
+                       <string>awakenModuleWithObserver:</string>
+                       <key>XCObserverValidationKey</key>
+                       <dict/>
+               </dict>
+       </array>
+       <key>OpenEditors</key>
+       <array/>
+       <key>PerspectiveWidths</key>
+       <array>
+               <integer>1340</integer>
+               <integer>1340</integer>
+               <integer>1340</integer>
+       </array>
+       <key>Perspectives</key>
+       <array>
+               <dict>
+                       <key>ChosenToolbarItems</key>
+                       <array>
+                               <string>XCToolbarPerspectiveControl</string>
+                               <string>NSToolbarSeparatorItem</string>
+                               <string>active-target-popup</string>
+                               <string>action</string>
+                               <string>NSToolbarFlexibleSpaceItem</string>
+                               <string>buildOrClean</string>
+                               <string>build-and-runOrDebug</string>
+                               <string>com.apple.ide.PBXToolbarStopButton</string>
+                               <string>get-info</string>
+                               <string>toggle-editor</string>
+                               <string>NSToolbarFlexibleSpaceItem</string>
+                               <string>com.apple.pbx.toolbar.searchfield</string>
+                       </array>
+                       <key>ControllerClassBaseName</key>
+                       <string></string>
+                       <key>IconName</key>
+                       <string>WindowOfProject</string>
+                       <key>Identifier</key>
+                       <string>perspective.project</string>
+                       <key>IsVertical</key>
+                       <false/>
+                       <key>Layout</key>
+                       <array>
+                               <dict>
+                                       <key>ContentConfiguration</key>
+                                       <dict>
+                                               <key>PBXBottomSmartGroupGIDs</key>
+                                               <array>
+                                                       <string>1C37FBAC04509CD000000102</string>
+                                                       <string>1C37FAAC04509CD000000102</string>
+                                                       <string>1C08E77C0454961000C914BD</string>
+                                                       <string>1C37FABC05509CD000000102</string>
+                                                       <string>1C37FABC05539CD112110102</string>
+                                                       <string>E2644B35053B69B200211256</string>
+                                                       <string>1C37FABC04509CD000100104</string>
+                                                       <string>1CC0EA4004350EF90044410B</string>
+                                                       <string>1CC0EA4004350EF90041110B</string>
+                                                       <string>1C77FABC04509CD000000102</string>
+                                               </array>
+                                               <key>PBXProjectModuleGUID</key>
+                                               <string>1CA23ED40692098700951B8B</string>
+                                               <key>PBXProjectModuleLabel</key>
+                                               <string>Files</string>
+                                               <key>PBXProjectStructureProvided</key>
+                                               <string>yes</string>
+                                               <key>PBXSmartGroupTreeModuleColumnData</key>
+                                               <dict>
+                                                       <key>PBXSmartGroupTreeModuleColumnWidthsKey</key>
+                                                       <array>
+                                                               <real>268</real>
+                                                       </array>
+                                                       <key>PBXSmartGroupTreeModuleColumnsKey_v4</key>
+                                                       <array>
+                                                               <string>MainColumn</string>
+                                                       </array>
+                                               </dict>
+                                               <key>PBXSmartGroupTreeModuleOutlineStateKey_v7</key>
+                                               <dict>
+                                                       <key>PBXSmartGroupTreeModuleOutlineStateExpansionKey</key>
+                                                       <array>
+                                                               <string>08FB7794FE84155DC02AAC07</string>
+                                                               <string>A1E70CFF0A38B5BB007BE3E3</string>
+                                                               <string>A1E70D110A38B5BB007BE3E3</string>
+                                                               <string>A1E70D7E0A38BAC5007BE3E3</string>
+                                                               <string>A1E70D180A38B5BB007BE3E3</string>
+                                                               <string>A1E70D270A38B5BB007BE3E3</string>
+                                                               <string>A1E70D2B0A38B5BB007BE3E3</string>
+                                                               <string>A1E70D390A38B5BB007BE3E3</string>
+                                                               <string>1C37FBAC04509CD000000102</string>
+                                                       </array>
+                                                       <key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
+                                                       <array>
+                                                               <array>
+                                                                       <integer>24</integer>
+                                                                       <integer>19</integer>
+                                                                       <integer>0</integer>
+                                                               </array>
+                                                       </array>
+                                                       <key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
+                                                       <string>{{0, 0}, {268, 841}}</string>
+                                               </dict>
+                                               <key>PBXTopSmartGroupGIDs</key>
+                                               <array/>
+                                               <key>XCIncludePerspectivesSwitch</key>
+                                               <false/>
+                                       </dict>
+                                       <key>GeometryConfiguration</key>
+                                       <dict>
+                                               <key>Frame</key>
+                                               <string>{{0, 0}, {285, 859}}</string>
+                                               <key>GroupTreeTableConfiguration</key>
+                                               <array>
+                                                       <string>MainColumn</string>
+                                                       <real>268</real>
+                                               </array>
+                                               <key>RubberWindowFrame</key>
+                                               <string>170 278 1340 900 0 0 1920 1178 </string>
+                                       </dict>
+                                       <key>Module</key>
+                                       <string>PBXSmartGroupTreeModule</string>
+                                       <key>Proportion</key>
+                                       <string>285pt</string>
+                               </dict>
+                               <dict>
+                                       <key>Dock</key>
+                                       <array>
+                                               <dict>
+                                                       <key>BecomeActive</key>
+                                                       <true/>
+                                                       <key>ContentConfiguration</key>
+                                                       <dict>
+                                                               <key>PBXProjectModuleGUID</key>
+                                                               <string>A1E70DF50A38C765007BE3E3</string>
+                                                               <key>PBXProjectModuleLabel</key>
+                                                               <string>generic_lists.c</string>
+                                                               <key>PBXSplitModuleInNavigatorKey</key>
+                                                               <dict>
+                                                                       <key>Split0</key>
+                                                                       <dict>
+                                                                               <key>PBXProjectModuleGUID</key>
+                                                                               <string>A1E70DF60A38C765007BE3E3</string>
+                                                                               <key>PBXProjectModuleLabel</key>
+                                                                               <string>generic_lists.c</string>
+                                                                               <key>_historyCapacity</key>
+                                                                               <integer>0</integer>
+                                                                               <key>bookmark</key>
+                                                                               <string>A1E710F40A3A253F007BE3E3</string>
+                                                                               <key>history</key>
+                                                                               <array>
+                                                                                       <string>A1E70DF90A38C765007BE3E3</string>
+                                                                                       <string>A1E70DFA0A38C765007BE3E3</string>
+                                                                                       <string>A1E70DFB0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E010A38C765007BE3E3</string>
+                                                                                       <string>A1E70E020A38C765007BE3E3</string>
+                                                                                       <string>A1E70E090A38C765007BE3E3</string>
+                                                                                       <string>A1E70E0A0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E0B0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E0C0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E3D0A38C78C007BE3E3</string>
+                                                                                       <string>A1E70E4A0A38C7BE007BE3E3</string>
+                                                                                       <string>A1E70E520A38C9FD007BE3E3</string>
+                                                                                       <string>A1E70E530A38C9FD007BE3E3</string>
+                                                                                       <string>A1E70E770A38CA55007BE3E3</string>
+                                                                                       <string>A1E70EB50A38CB4D007BE3E3</string>
+                                                                                       <string>A1E70ED70A38CCB6007BE3E3</string>
+                                                                                       <string>A1E70EFE0A38CD66007BE3E3</string>
+                                                                                       <string>A1E70F0F0A38CE21007BE3E3</string>
+                                                                                       <string>A1E70F9C0A38D41E007BE3E3</string>
+                                                                                       <string>A1E70F9D0A38D41E007BE3E3</string>
+                                                                                       <string>A1E70FC60A38D560007BE3E3</string>
+                                                                                       <string>A1E70FD80A38D573007BE3E3</string>
+                                                                                       <string>A1E70FFA0A38D806007BE3E3</string>
+                                                                                       <string>A1E70FFC0A38D806007BE3E3</string>
+                                                                                       <string>A1E7100C0A38D888007BE3E3</string>
+                                                                                       <string>A1E7100D0A38D888007BE3E3</string>
+                                                                                       <string>A1E710840A3A1CFB007BE3E3</string>
+                                                                                       <string>A1E7108D0A3A1D06007BE3E3</string>
+                                                                                       <string>A1E710930A3A1D22007BE3E3</string>
+                                                                                       <string>A1E710940A3A1D22007BE3E3</string>
+                                                                                       <string>A1E710BC0A3A2415007BE3E3</string>
+                                                                                       <string>A1E710EA0A3A2521007BE3E3</string>
+                                                                                       <string>A1E710EB0A3A2521007BE3E3</string>
+                                                                                       <string>A1E710EC0A3A2521007BE3E3</string>
+                                                                                       <string>A1E710D10A3A2456007BE3E3</string>
+                                                                               </array>
+                                                                               <key>prevStack</key>
+                                                                               <array>
+                                                                                       <string>A1E70E100A38C765007BE3E3</string>
+                                                                                       <string>A1E70E110A38C765007BE3E3</string>
+                                                                                       <string>A1E70E120A38C765007BE3E3</string>
+                                                                                       <string>A1E70E130A38C765007BE3E3</string>
+                                                                                       <string>A1E70E140A38C765007BE3E3</string>
+                                                                                       <string>A1E70E150A38C765007BE3E3</string>
+                                                                                       <string>A1E70E160A38C765007BE3E3</string>
+                                                                                       <string>A1E70E180A38C765007BE3E3</string>
+                                                                                       <string>A1E70E1B0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E1E0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E1F0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E200A38C765007BE3E3</string>
+                                                                                       <string>A1E70E250A38C765007BE3E3</string>
+                                                                                       <string>A1E70E260A38C765007BE3E3</string>
+                                                                                       <string>A1E70E290A38C765007BE3E3</string>
+                                                                                       <string>A1E70E2A0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E2B0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E2D0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E2E0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E380A38C778007BE3E3</string>
+                                                                                       <string>A1E70E410A38C78C007BE3E3</string>
+                                                                                       <string>A1E70E450A38C791007BE3E3</string>
+                                                                                       <string>A1E70E560A38C9FD007BE3E3</string>
+                                                                                       <string>A1E70E580A38C9FD007BE3E3</string>
+                                                                                       <string>A1E70E6F0A38CA08007BE3E3</string>
+                                                                                       <string>A1E70E7D0A38CA55007BE3E3</string>
+                                                                                       <string>A1E70EAB0A38CB24007BE3E3</string>
+                                                                                       <string>A1E70EC30A38CC14007BE3E3</string>
+                                                                                       <string>A1E70EE20A38CCD6007BE3E3</string>
+                                                                                       <string>A1E70FFF0A38D806007BE3E3</string>
+                                                                                       <string>A1E710110A38D888007BE3E3</string>
+                                                                                       <string>A1E710140A38D888007BE3E3</string>
+                                                                                       <string>A1E710BE0A3A2415007BE3E3</string>
+                                                                                       <string>A1E710C80A3A2441007BE3E3</string>
+                                                                                       <string>A1E710D30A3A2456007BE3E3</string>
+                                                                                       <string>A1E710E10A3A247D007BE3E3</string>
+                                                                                       <string>A1E710E20A3A247D007BE3E3</string>
+                                                                                       <string>A1E710ED0A3A2521007BE3E3</string>
+                                                                                       <string>A1E710EE0A3A2521007BE3E3</string>
+                                                                                       <string>A1E710EF0A3A2521007BE3E3</string>
+                                                                               </array>
+                                                                       </dict>
+                                                                       <key>SplitCount</key>
+                                                                       <string>1</string>
+                                                               </dict>
+                                                               <key>StatusBarVisibility</key>
+                                                               <true/>
+                                                               <key>XCSharingToken</key>
+                                                               <string>com.apple.Xcode.CommonNavigatorGroupSharingToken</string>
+                                                       </dict>
+                                                       <key>GeometryConfiguration</key>
+                                                       <dict>
+                                                               <key>Frame</key>
+                                                               <string>{{0, 0}, {1050, 553}}</string>
+                                                               <key>RubberWindowFrame</key>
+                                                               <string>170 278 1340 900 0 0 1920 1178 </string>
+                                                       </dict>
+                                                       <key>Module</key>
+                                                       <string>PBXNavigatorGroup</string>
+                                                       <key>Proportion</key>
+                                                       <string>553pt</string>
+                                               </dict>
+                                               <dict>
+                                                       <key>Proportion</key>
+                                                       <string>301pt</string>
+                                                       <key>Tabs</key>
+                                                       <array>
+                                                               <dict>
+                                                                       <key>ContentConfiguration</key>
+                                                                       <dict>
+                                                                               <key>PBXProjectModuleGUID</key>
+                                                                               <string>1CA23EDF0692099D00951B8B</string>
+                                                                               <key>PBXProjectModuleLabel</key>
+                                                                               <string>Detail</string>
+                                                                       </dict>
+                                                                       <key>GeometryConfiguration</key>
+                                                                       <dict>
+                                                                               <key>Frame</key>
+                                                                               <string>{{10, 27}, {1050, 274}}</string>
+                                                                               <key>RubberWindowFrame</key>
+                                                                               <string>170 278 1340 900 0 0 1920 1178 </string>
+                                                                       </dict>
+                                                                       <key>Module</key>
+                                                                       <string>XCDetailModule</string>
+                                                               </dict>
+                                                               <dict>
+                                                                       <key>ContentConfiguration</key>
+                                                                       <dict>
+                                                                               <key>PBXProjectModuleGUID</key>
+                                                                               <string>1CA23EE00692099D00951B8B</string>
+                                                                               <key>PBXProjectModuleLabel</key>
+                                                                               <string>Project Find</string>
+                                                                       </dict>
+                                                                       <key>GeometryConfiguration</key>
+                                                                       <dict>
+                                                                               <key>Frame</key>
+                                                                               <string>{{10, 27}, {1050, 274}}</string>
+                                                                       </dict>
+                                                                       <key>Module</key>
+                                                                       <string>PBXProjectFindModule</string>
+                                                               </dict>
+                                                               <dict>
+                                                                       <key>ContentConfiguration</key>
+                                                                       <dict>
+                                                                               <key>PBXProjectModuleGUID</key>
+                                                                               <string>1CA23EE10692099D00951B8B</string>
+                                                                               <key>PBXProjectModuleLabel</key>
+                                                                               <string>SCM Results</string>
+                                                                       </dict>
+                                                                       <key>GeometryConfiguration</key>
+                                                                       <dict>
+                                                                               <key>Frame</key>
+                                                                               <string>{{10, 31}, {603, 297}}</string>
+                                                                       </dict>
+                                                                       <key>Module</key>
+                                                                       <string>PBXCVSModule</string>
+                                                               </dict>
+                                                       </array>
+                                               </dict>
+                                       </array>
+                                       <key>Proportion</key>
+                                       <string>1050pt</string>
+                               </dict>
+                       </array>
+                       <key>Name</key>
+                       <string>Project</string>
+                       <key>ServiceClasses</key>
+                       <array>
+                               <string>XCModuleDock</string>
+                               <string>PBXSmartGroupTreeModule</string>
+                               <string>XCModuleDock</string>
+                               <string>PBXNavigatorGroup</string>
+                               <string>XCDockableTabModule</string>
+                               <string>XCDetailModule</string>
+                               <string>PBXProjectFindModule</string>
+                               <string>PBXCVSModule</string>
+                       </array>
+                       <key>TableOfContents</key>
+                       <array>
+                               <string>A1E710B00A3A22FE007BE3E3</string>
+                               <string>1CA23ED40692098700951B8B</string>
+                               <string>A1E710B10A3A22FE007BE3E3</string>
+                               <string>A1E70DF50A38C765007BE3E3</string>
+                               <string>A1E710B20A3A22FE007BE3E3</string>
+                               <string>1CA23EDF0692099D00951B8B</string>
+                               <string>1CA23EE00692099D00951B8B</string>
+                               <string>1CA23EE10692099D00951B8B</string>
+                       </array>
+                       <key>ToolbarConfiguration</key>
+                       <string>xcode.toolbar.config.default</string>
+               </dict>
+               <dict>
+                       <key>ChosenToolbarItems</key>
+                       <array>
+                               <string>XCToolbarPerspectiveControl</string>
+                               <string>NSToolbarSeparatorItem</string>
+                               <string>active-target-popup</string>
+                               <string>active-executable-popup</string>
+                               <string>active-buildstyle-popup</string>
+                               <string>NSToolbarFlexibleSpaceItem</string>
+                               <string>build</string>
+                               <string>clean</string>
+                               <string>NSToolbarSeparatorItem</string>
+                               <string>run</string>
+                               <string>debug</string>
+                       </array>
+                       <key>ControllerClassBaseName</key>
+                       <string></string>
+                       <key>IconName</key>
+                       <string>BuildTabIcon</string>
+                       <key>Identifier</key>
+                       <string>perspective.build</string>
+                       <key>IsVertical</key>
+                       <false/>
+                       <key>Layout</key>
+                       <array>
+                               <dict>
+                                       <key>ContentConfiguration</key>
+                                       <dict>
+                                               <key>PBXBottomSmartGroupGIDs</key>
+                                               <array/>
+                                               <key>PBXProjectModuleGUID</key>
+                                               <string>1CA23EE50692099D00951B8B</string>
+                                               <key>PBXProjectModuleLabel</key>
+                                               <string>Files</string>
+                                               <key>PBXProjectStructureProvided</key>
+                                               <string>yes</string>
+                                               <key>PBXSmartGroupTreeModuleColumnData</key>
+                                               <dict>
+                                                       <key>PBXSmartGroupTreeModuleColumnWidthsKey</key>
+                                                       <array>
+                                                               <real>184</real>
+                                                       </array>
+                                                       <key>PBXSmartGroupTreeModuleColumnsKey_v4</key>
+                                                       <array>
+                                                               <string>MainColumn</string>
+                                                       </array>
+                                               </dict>
+                                               <key>PBXSmartGroupTreeModuleOutlineStateKey_v7</key>
+                                               <dict>
+                                                       <key>PBXSmartGroupTreeModuleOutlineStateExpansionKey</key>
+                                                       <array/>
+                                                       <key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
+                                                       <array>
+                                                               <array>
+                                                                       <integer>0</integer>
+                                                               </array>
+                                                       </array>
+                                                       <key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
+                                                       <string>{{0, 0}, {184, 841}}</string>
+                                               </dict>
+                                               <key>PBXTopSmartGroupGIDs</key>
+                                               <array/>
+                                               <key>XCIncludePerspectivesSwitch</key>
+                                               <false/>
+                                       </dict>
+                                       <key>GeometryConfiguration</key>
+                                       <dict>
+                                               <key>Frame</key>
+                                               <string>{{0, 0}, {201, 859}}</string>
+                                               <key>GroupTreeTableConfiguration</key>
+                                               <array>
+                                                       <string>MainColumn</string>
+                                                       <real>184</real>
+                                               </array>
+                                       </dict>
+                                       <key>Module</key>
+                                       <string>PBXSmartGroupTreeModule</string>
+                                       <key>Proportion</key>
+                                       <string>201pt</string>
+                               </dict>
+                               <dict>
+                                       <key>Dock</key>
+                                       <array>
+                                               <dict>
+                                                       <key>ContentConfiguration</key>
+                                                       <dict>
+                                                               <key>PBXProjectModuleGUID</key>
+                                                               <string>A1E70DF50A38C765007BE3E3</string>
+                                                               <key>PBXProjectModuleLabel</key>
+                                                               <string>CredentialsCache.h</string>
+                                                               <key>PBXSplitModuleInNavigatorKey</key>
+                                                               <dict>
+                                                                       <key>Split0</key>
+                                                                       <dict>
+                                                                               <key>PBXProjectModuleGUID</key>
+                                                                               <string>A1E70DF60A38C765007BE3E3</string>
+                                                                               <key>PBXProjectModuleLabel</key>
+                                                                               <string>CredentialsCache.h</string>
+                                                                               <key>_historyCapacity</key>
+                                                                               <integer>0</integer>
+                                                                               <key>bookmark</key>
+                                                                               <string>A1E710F50A3A253F007BE3E3</string>
+                                                                               <key>history</key>
+                                                                               <array>
+                                                                                       <string>A1E70DF70A38C765007BE3E3</string>
+                                                                                       <string>A1E70DF80A38C765007BE3E3</string>
+                                                                                       <string>A1E70DF90A38C765007BE3E3</string>
+                                                                                       <string>A1E70DFA0A38C765007BE3E3</string>
+                                                                                       <string>A1E70DFB0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E010A38C765007BE3E3</string>
+                                                                                       <string>A1E70E020A38C765007BE3E3</string>
+                                                                                       <string>A1E70E060A38C765007BE3E3</string>
+                                                                                       <string>A1E70E090A38C765007BE3E3</string>
+                                                                                       <string>A1E70E0A0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E0B0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E0C0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E3D0A38C78C007BE3E3</string>
+                                                                                       <string>A1E70E430A38C791007BE3E3</string>
+                                                                                       <string>A1E70E770A38CA55007BE3E3</string>
+                                                                                       <string>A1E70ECB0A38CC4C007BE3E3</string>
+                                                                                       <string>A1E70F440A38D252007BE3E3</string>
+                                                                                       <string>A1E70F450A38D252007BE3E3</string>
+                                                                                       <string>A1E70F8B0A38D3B4007BE3E3</string>
+                                                                                       <string>A1E70FC60A38D560007BE3E3</string>
+                                                                                       <string>A1E70FC80A38D560007BE3E3</string>
+                                                                                       <string>A1E70FC90A38D560007BE3E3</string>
+                                                                                       <string>A1E70FEE0A38D7C0007BE3E3</string>
+                                                                                       <string>A1E70FEF0A38D7C0007BE3E3</string>
+                                                                                       <string>A1E70FF00A38D7C0007BE3E3</string>
+                                                                                       <string>A1E70FFC0A38D806007BE3E3</string>
+                                                                                       <string>A1E7100D0A38D888007BE3E3</string>
+                                                                                       <string>A1E7103C0A38DE0B007BE3E3</string>
+                                                                                       <string>A1E7105A0A39ED89007BE3E3</string>
+                                                                                       <string>A1E710890A3A1D04007BE3E3</string>
+                                                                                       <string>A1E7109C0A3A1D2B007BE3E3</string>
+                                                                                       <string>A1E710CA0A3A244D007BE3E3</string>
+                                                                                       <string>A1E710CB0A3A244D007BE3E3</string>
+                                                                                       <string>A1E710D80A3A2465007BE3E3</string>
+                                                                                       <string>A1E710E30A3A247D007BE3E3</string>
+                                                                               </array>
+                                                                               <key>prevStack</key>
+                                                                               <array>
+                                                                                       <string>A1E70E100A38C765007BE3E3</string>
+                                                                                       <string>A1E70E110A38C765007BE3E3</string>
+                                                                                       <string>A1E70E120A38C765007BE3E3</string>
+                                                                                       <string>A1E70E130A38C765007BE3E3</string>
+                                                                                       <string>A1E70E140A38C765007BE3E3</string>
+                                                                                       <string>A1E70E150A38C765007BE3E3</string>
+                                                                                       <string>A1E70E160A38C765007BE3E3</string>
+                                                                                       <string>A1E70E170A38C765007BE3E3</string>
+                                                                                       <string>A1E70E180A38C765007BE3E3</string>
+                                                                                       <string>A1E70E1E0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E1F0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E250A38C765007BE3E3</string>
+                                                                                       <string>A1E70E260A38C765007BE3E3</string>
+                                                                                       <string>A1E70E290A38C765007BE3E3</string>
+                                                                                       <string>A1E70E2A0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E2B0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E2D0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E2E0A38C765007BE3E3</string>
+                                                                                       <string>A1E70E380A38C778007BE3E3</string>
+                                                                                       <string>A1E70E410A38C78C007BE3E3</string>
+                                                                                       <string>A1E70E450A38C791007BE3E3</string>
+                                                                                       <string>A1E70E560A38C9FD007BE3E3</string>
+                                                                                       <string>A1E70E580A38C9FD007BE3E3</string>
+                                                                                       <string>A1E70E7D0A38CA55007BE3E3</string>
+                                                                                       <string>A1E70EAB0A38CB24007BE3E3</string>
+                                                                                       <string>A1E70EC30A38CC14007BE3E3</string>
+                                                                                       <string>A1E70EE20A38CCD6007BE3E3</string>
+                                                                                       <string>A1E70FCD0A38D560007BE3E3</string>
+                                                                                       <string>A1E70FFF0A38D806007BE3E3</string>
+                                                                                       <string>A1E710140A38D888007BE3E3</string>
+                                                                                       <string>A1E710400A38DE0B007BE3E3</string>
+                                                                                       <string>A1E70E6F0A38CA08007BE3E3</string>
+                                                                                       <string>A1E710CD0A3A244D007BE3E3</string>
+                                                                                       <string>A1E710E20A3A247D007BE3E3</string>
+                                                                               </array>
+                                                                       </dict>
+                                                                       <key>SplitCount</key>
+                                                                       <string>1</string>
+                                                               </dict>
+                                                               <key>StatusBarVisibility</key>
+                                                               <true/>
+                                                               <key>XCSharingToken</key>
+                                                               <string>com.apple.Xcode.CommonNavigatorGroupSharingToken</string>
+                                                       </dict>
+                                                       <key>GeometryConfiguration</key>
+                                                       <dict>
+                                                               <key>Frame</key>
+                                                               <string>{{0, 0}, {1134, 480}}</string>
+                                                       </dict>
+                                                       <key>Module</key>
+                                                       <string>PBXNavigatorGroup</string>
+                                                       <key>Proportion</key>
+                                                       <string>480pt</string>
+                                               </dict>
+                                               <dict>
+                                                       <key>Proportion</key>
+                                                       <string>374pt</string>
+                                                       <key>Tabs</key>
+                                                       <array>
+                                                               <dict>
+                                                                       <key>ContentConfiguration</key>
+                                                                       <dict>
+                                                                               <key>PBXProjectModuleGUID</key>
+                                                                               <string>XCMainBuildResultsModuleGUID</string>
+                                                                               <key>PBXProjectModuleLabel</key>
+                                                                               <string>Build</string>
+                                                                               <key>XCBuildResultsTrigger_Collapse</key>
+                                                                               <integer>1021</integer>
+                                                                               <key>XCBuildResultsTrigger_Open</key>
+                                                                               <integer>1010</integer>
+                                                                       </dict>
+                                                                       <key>GeometryConfiguration</key>
+                                                                       <dict>
+                                                                               <key>Frame</key>
+                                                                               <string>{{10, 27}, {1134, 347}}</string>
+                                                                       </dict>
+                                                                       <key>Module</key>
+                                                                       <string>PBXBuildResultsModule</string>
+                                                               </dict>
+                                                               <dict>
+                                                                       <key>ContentConfiguration</key>
+                                                                       <dict>
+                                                                               <key>LauncherConfigVersion</key>
+                                                                               <string>3</string>
+                                                                               <key>PBXProjectModuleGUID</key>
+                                                                               <string>1CA23EE80692099D00951B8B</string>
+                                                                               <key>PBXProjectModuleLabel</key>
+                                                                               <string>Run</string>
+                                                                               <key>Runner</key>
+                                                                               <dict>
+                                                                                       <key>HorizontalSplitView</key>
+                                                                                       <dict>
+                                                                                               <key>_collapsingFrameDimension</key>
+                                                                                               <real>0.0</real>
+                                                                                               <key>_indexOfCollapsedView</key>
+                                                                                               <integer>0</integer>
+                                                                                               <key>_percentageOfCollapsedView</key>
+                                                                                               <real>0.0</real>
+                                                                                               <key>isCollapsed</key>
+                                                                                               <string>yes</string>
+                                                                                               <key>sizes</key>
+                                                                                               <array>
+                                                                                                       <string>{{0, 0}, {365, 167}}</string>
+                                                                                                       <string>{{0, 176}, {365, 267}}</string>
+                                                                                               </array>
+                                                                                       </dict>
+                                                                                       <key>VerticalSplitView</key>
+                                                                                       <dict>
+                                                                                               <key>_collapsingFrameDimension</key>
+                                                                                               <real>0.0</real>
+                                                                                               <key>_indexOfCollapsedView</key>
+                                                                                               <integer>0</integer>
+                                                                                               <key>_percentageOfCollapsedView</key>
+                                                                                               <real>0.0</real>
+                                                                                               <key>isCollapsed</key>
+                                                                                               <string>yes</string>
+                                                                                               <key>sizes</key>
+                                                                                               <array>
+                                                                                                       <string>{{0, 0}, {405, 443}}</string>
+                                                                                                       <string>{{414, 0}, {514, 443}}</string>
+                                                                                               </array>
+                                                                                       </dict>
+                                                                               </dict>
+                                                                       </dict>
+                                                                       <key>GeometryConfiguration</key>
+                                                                       <dict>
+                                                                               <key>Frame</key>
+                                                                               <string>{{0, 0}, {0, 0}}</string>
+                                                                       </dict>
+                                                                       <key>Module</key>
+                                                                       <string>PBXRunSessionModule</string>
+                                                               </dict>
+                                                       </array>
+                                               </dict>
+                                       </array>
+                                       <key>Proportion</key>
+                                       <string>1134pt</string>
+                               </dict>
+                       </array>
+                       <key>Name</key>
+                       <string>Build</string>
+                       <key>ServiceClasses</key>
+                       <array>
+                               <string>XCModuleDock</string>
+                               <string>PBXSmartGroupTreeModule</string>
+                               <string>XCModuleDock</string>
+                               <string>PBXNavigatorGroup</string>
+                               <string>XCDockableTabModule</string>
+                               <string>PBXBuildResultsModule</string>
+                               <string>PBXRunSessionModule</string>
+                               <string>XCConsole</string>
+                       </array>
+                       <key>TableOfContents</key>
+                       <array>
+                               <string>A1E710B40A3A22FF007BE3E3</string>
+                               <string>1CA23EE50692099D00951B8B</string>
+                               <string>A1E710B50A3A22FF007BE3E3</string>
+                               <string>A1E70DF50A38C765007BE3E3</string>
+                               <string>A1E710B60A3A22FF007BE3E3</string>
+                               <string>XCMainBuildResultsModuleGUID</string>
+                               <string>1CA23EE80692099D00951B8B</string>
+                               <string>A1E710B70A3A22FF007BE3E3</string>
+                       </array>
+                       <key>ToolbarConfiguration</key>
+                       <string>xcode.toolbar.config.buildAndRun</string>
+               </dict>
+               <dict>
+                       <key>ChosenToolbarItems</key>
+                       <array>
+                               <string>XCToolbarPerspectiveControl</string>
+                               <string>NSToolbarSeparatorItem</string>
+                               <string>build-and-debug</string>
+                               <string>debug</string>
+                               <string>NSToolbarFlexibleSpaceItem</string>
+                               <string>debugger-fix-and-continue</string>
+                               <string>debugger-restart-executable</string>
+                               <string>debugger-pause</string>
+                               <string>debugger-continue</string>
+                               <string>debugger-step-over</string>
+                               <string>debugger-step-into</string>
+                               <string>debugger-step-out</string>
+                               <string>debugger-step-instruction</string>
+                               <string>NSToolbarFlexibleSpaceItem</string>
+                       </array>
+                       <key>ControllerClassBaseName</key>
+                       <string>PBXDebugSessionModule</string>
+                       <key>IconName</key>
+                       <string>DebugTabIcon</string>
+                       <key>Identifier</key>
+                       <string>perspective.debug</string>
+                       <key>IsVertical</key>
+                       <integer>1</integer>
+                       <key>Layout</key>
+                       <array>
+                               <dict>
+                                       <key>ContentConfiguration</key>
+                                       <dict>
+                                               <key>PBXProjectModuleGUID</key>
+                                               <string>1CCC7628064C1048000F2A68</string>
+                                               <key>PBXProjectModuleLabel</key>
+                                               <string>Debugger Console</string>
+                                       </dict>
+                                       <key>GeometryConfiguration</key>
+                                       <dict>
+                                               <key>Frame</key>
+                                               <string>{{0, 0}, {810, 0}}</string>
+                                       </dict>
+                                       <key>Module</key>
+                                       <string>PBXDebugCLIModule</string>
+                                       <key>Proportion</key>
+                                       <string>0%</string>
+                               </dict>
+                               <dict>
+                                       <key>ContentConfiguration</key>
+                                       <dict>
+                                               <key>Debugger</key>
+                                               <dict>
+                                                       <key>HorizontalSplitView</key>
+                                                       <dict>
+                                                               <key>_collapsingFrameDimension</key>
+                                                               <real>0.0</real>
+                                                               <key>_indexOfCollapsedView</key>
+                                                               <integer>0</integer>
+                                                               <key>_percentageOfCollapsedView</key>
+                                                               <real>0.0</real>
+                                                               <key>isCollapsed</key>
+                                                               <string>yes</string>
+                                                               <key>sizes</key>
+                                                               <array>
+                                                                       <string>{{0, 0}, {395, 213}}</string>
+                                                                       <string>{{395, 0}, {415, 213}}</string>
+                                                               </array>
+                                                       </dict>
+                                                       <key>VerticalSplitView</key>
+                                                       <dict>
+                                                               <key>_collapsingFrameDimension</key>
+                                                               <real>0.0</real>
+                                                               <key>_indexOfCollapsedView</key>
+                                                               <integer>0</integer>
+                                                               <key>_percentageOfCollapsedView</key>
+                                                               <real>0.0</real>
+                                                               <key>isCollapsed</key>
+                                                               <string>yes</string>
+                                                               <key>sizes</key>
+                                                               <array>
+                                                                       <string>{{0, 0}, {810, 213}}</string>
+                                                                       <string>{{0, 213}, {810, 225}}</string>
+                                                               </array>
+                                                       </dict>
+                                               </dict>
+                                               <key>LauncherConfigVersion</key>
+                                               <string>8</string>
+                                               <key>PBXProjectModuleGUID</key>
+                                               <string>1CCC7629064C1048000F2A68</string>
+                                               <key>PBXProjectModuleLabel</key>
+                                               <string>Debug</string>
+                                       </dict>
+                                       <key>GeometryConfiguration</key>
+                                       <dict>
+                                               <key>DebugConsoleDrawerSize</key>
+                                               <string>{100, 120}</string>
+                                               <key>DebugConsoleVisible</key>
+                                               <string>None</string>
+                                               <key>DebugConsoleWindowFrame</key>
+                                               <string>{{200, 200}, {500, 300}}</string>
+                                               <key>DebugSTDIOWindowFrame</key>
+                                               <string>{{200, 200}, {500, 300}}</string>
+                                               <key>Frame</key>
+                                               <string>{{0, 7}, {810, 438}}</string>
+                                       </dict>
+                                       <key>Module</key>
+                                       <string>PBXDebugSessionModule</string>
+                                       <key>Proportion</key>
+                                       <string>443pt</string>
+                               </dict>
+                       </array>
+                       <key>Name</key>
+                       <string>Debug</string>
+                       <key>ServiceClasses</key>
+                       <array>
+                               <string>XCModuleDock</string>
+                               <string>XCModuleDock</string>
+                               <string>PBXDebugCLIModule</string>
+                               <string>PBXDebugSessionModule</string>
+                               <string>XCConsole</string>
+                       </array>
+                       <key>TableOfContents</key>
+                       <array>
+                               <string>1CC8E6A5069209BD00BB180A</string>
+                               <string>1CC8E6A6069209BD00BB180A</string>
+                               <string>1CCC7628064C1048000F2A68</string>
+                               <string>1CCC7629064C1048000F2A68</string>
+                               <string>1CC8E6A7069209BD00BB180A</string>
+                       </array>
+                       <key>ToolbarConfiguration</key>
+                       <string>xcode.toolbar.config.debug</string>
+               </dict>
+       </array>
+       <key>PerspectivesBarVisible</key>
+       <true/>
+       <key>ShelfIsVisible</key>
+       <false/>
+       <key>SourceDescription</key>
+       <string>file at '/System/Library/PrivateFrameworks/DevToolsInterface.framework/Versions/A/Resources/XCPerspectivesSpecification.xcperspec'</string>
+       <key>StatusbarIsVisible</key>
+       <true/>
+       <key>TimeStamp</key>
+       <real>171582783.00723499</real>
+       <key>ToolbarDisplayMode</key>
+       <integer>1</integer>
+       <key>ToolbarIsVisible</key>
+       <true/>
+       <key>ToolbarSizeMode</key>
+       <integer>1</integer>
+       <key>Type</key>
+       <string>Perspectives</string>
+       <key>UpdateMessage</key>
+       <string></string>
+       <key>WindowJustification</key>
+       <integer>5</integer>
+       <key>WindowOrderList</key>
+       <array>
+               <string>/Volumes/Ra-Tilt/Users/lxs/KfM/CCAPI/src/lib/ccapi/mac/CCAPI.xcodeproj</string>
+       </array>
+       <key>WindowString</key>
+       <string>170 278 1340 900 0 0 1920 1178 </string>
+       <key>WindowTools</key>
+       <array>
+               <dict>
+                       <key>Identifier</key>
+                       <string>windowTool.find</string>
+                       <key>Layout</key>
+                       <array>
+                               <dict>
+                                       <key>Dock</key>
+                                       <array>
+                                               <dict>
+                                                       <key>Dock</key>
+                                                       <array>
+                                                               <dict>
+                                                                       <key>ContentConfiguration</key>
+                                                                       <dict>
+                                                                               <key>PBXProjectModuleGUID</key>
+                                                                               <string>1CDD528C0622207200134675</string>
+                                                                               <key>PBXProjectModuleLabel</key>
+                                                                               <string>&lt;No Editor&gt;</string>
+                                                                               <key>PBXSplitModuleInNavigatorKey</key>
+                                                                               <dict>
+                                                                                       <key>Split0</key>
+                                                                                       <dict>
+                                                                                               <key>PBXProjectModuleGUID</key>
+                                                                                               <string>1CD0528D0623707200166675</string>
+                                                                                       </dict>
+                                                                                       <key>SplitCount</key>
+                                                                                       <string>1</string>
+                                                                               </dict>
+                                                                               <key>StatusBarVisibility</key>
+                                                                               <integer>1</integer>
+                                                                       </dict>
+                                                                       <key>GeometryConfiguration</key>
+                                                                       <dict>
+                                                                               <key>Frame</key>
+                                                                               <string>{{0, 0}, {781, 167}}</string>
+                                                                               <key>RubberWindowFrame</key>
+                                                                               <string>62 385 781 470 0 0 1440 878 </string>
+                                                                       </dict>
+                                                                       <key>Module</key>
+                                                                       <string>PBXNavigatorGroup</string>
+                                                                       <key>Proportion</key>
+                                                                       <string>781pt</string>
+                                                               </dict>
+                                                       </array>
+                                                       <key>Proportion</key>
+                                                       <string>50%</string>
+                                               </dict>
+                                               <dict>
+                                                       <key>BecomeActive</key>
+                                                       <integer>1</integer>
+                                                       <key>ContentConfiguration</key>
+                                                       <dict>
+                                                               <key>PBXProjectModuleGUID</key>
+                                                               <string>1CD0528E0623707200166675</string>
+                                                               <key>PBXProjectModuleLabel</key>
+                                                               <string>Project Find</string>
+                                                       </dict>
+                                                       <key>GeometryConfiguration</key>
+                                                       <dict>
+                                                               <key>Frame</key>
+                                                               <string>{{8, 0}, {773, 254}}</string>
+                                                               <key>RubberWindowFrame</key>
+                                                               <string>62 385 781 470 0 0 1440 878 </string>
+                                                       </dict>
+                                                       <key>Module</key>
+                                                       <string>PBXProjectFindModule</string>
+                                                       <key>Proportion</key>
+                                                       <string>50%</string>
+                                               </dict>
+                                       </array>
+                                       <key>Proportion</key>
+                                       <string>428pt</string>
+                               </dict>
+                       </array>
+                       <key>Name</key>
+                       <string>Project Find</string>
+                       <key>ServiceClasses</key>
+                       <array>
+                               <string>PBXProjectFindModule</string>
+                       </array>
+                       <key>StatusbarIsVisible</key>
+                       <integer>1</integer>
+                       <key>TableOfContents</key>
+                       <array>
+                               <string>1C530D57069F1CE1000CFCEE</string>
+                               <string>1C530D58069F1CE1000CFCEE</string>
+                               <string>1C530D59069F1CE1000CFCEE</string>
+                               <string>1CDD528C0622207200134675</string>
+                               <string>1C530D5A069F1CE1000CFCEE</string>
+                               <string>1CE0B1FE06471DED0097A5F4</string>
+                               <string>1CD0528E0623707200166675</string>
+                       </array>
+                       <key>WindowString</key>
+                       <string>62 385 781 470 0 0 1440 878 </string>
+                       <key>WindowToolGUID</key>
+                       <string>1C530D57069F1CE1000CFCEE</string>
+                       <key>WindowToolIsVisible</key>
+                       <integer>0</integer>
+               </dict>
+               <dict>
+                       <key>Identifier</key>
+                       <string>windowTool.run</string>
+                       <key>Layout</key>
+                       <array>
+                               <dict>
+                                       <key>Dock</key>
+                                       <array>
+                                               <dict>
+                                                       <key>ContentConfiguration</key>
+                                                       <dict>
+                                                               <key>LauncherConfigVersion</key>
+                                                               <string>3</string>
+                                                               <key>PBXProjectModuleGUID</key>
+                                                               <string>1CD0528B0623707200166675</string>
+                                                               <key>PBXProjectModuleLabel</key>
+                                                               <string>Run - cocoapp112 - cocoapp112</string>
+                                                               <key>Runner</key>
+                                                               <dict>
+                                                                       <key>HorizontalSplitView</key>
+                                                                       <dict>
+                                                                               <key>_collapsingFrameDimension</key>
+                                                                               <real>0.0</real>
+                                                                               <key>_indexOfCollapsedView</key>
+                                                                               <integer>0</integer>
+                                                                               <key>_percentageOfCollapsedView</key>
+                                                                               <real>0.0</real>
+                                                                               <key>isCollapsed</key>
+                                                                               <string>yes</string>
+                                                                               <key>sizes</key>
+                                                                               <array>
+                                                                                       <string>{{0, 0}, {365, 167}}</string>
+                                                                                       <string>{{0, 176}, {365, 267}}</string>
+                                                                               </array>
+                                                                       </dict>
+                                                                       <key>VerticalSplitView</key>
+                                                                       <dict>
+                                                                               <key>_collapsingFrameDimension</key>
+                                                                               <real>0.0</real>
+                                                                               <key>_indexOfCollapsedView</key>
+                                                                               <integer>0</integer>
+                                                                               <key>_percentageOfCollapsedView</key>
+                                                                               <real>0.0</real>
+                                                                               <key>isCollapsed</key>
+                                                                               <string>yes</string>
+                                                                               <key>sizes</key>
+                                                                               <array>
+                                                                                       <string>{{0, 0}, {405, 443}}</string>
+                                                                                       <string>{{414, 0}, {514, 443}}</string>
+                                                                               </array>
+                                                                       </dict>
+                                                               </dict>
+                                                       </dict>
+                                                       <key>GeometryConfiguration</key>
+                                                       <dict>
+                                                               <key>Frame</key>
+                                                               <string>{{0, 0}, {456, 192}}</string>
+                                                               <key>RubberWindowFrame</key>
+                                                               <string>741 130 456 234 0 0 1280 1002 </string>
+                                                       </dict>
+                                                       <key>Module</key>
+                                                       <string>PBXRunSessionModule</string>
+                                                       <key>Proportion</key>
+                                                       <string>192pt</string>
+                                               </dict>
+                                       </array>
+                                       <key>Proportion</key>
+                                       <string>192pt</string>
+                               </dict>
+                       </array>
+                       <key>Name</key>
+                       <string>Run Log</string>
+                       <key>ServiceClasses</key>
+                       <array>
+                               <string>PBXRunSessionModule</string>
+                       </array>
+                       <key>StatusbarIsVisible</key>
+                       <integer>1</integer>
+                       <key>TableOfContents</key>
+                       <array>
+                               <string>1C78EAAF065D492600B07095</string>
+                               <string>1C78EAB0065D492600B07095</string>
+                               <string>1CD0528B0623707200166675</string>
+                               <string>1C78EAB1065D492600B07095</string>
+                       </array>
+                       <key>ToolbarConfiguration</key>
+                       <string>xcode.toolbar.config.run</string>
+                       <key>WindowString</key>
+                       <string>741 130 456 234 0 0 1280 1002 </string>
+               </dict>
+               <dict>
+                       <key>Identifier</key>
+                       <string>windowTool.scm</string>
+                       <key>Layout</key>
+                       <array>
+                               <dict>
+                                       <key>Dock</key>
+                                       <array>
+                                               <dict>
+                                                       <key>ContentConfiguration</key>
+                                                       <dict>
+                                                               <key>PBXProjectModuleGUID</key>
+                                                               <string>1C78EAB2065D492600B07095</string>
+                                                               <key>PBXProjectModuleLabel</key>
+                                                               <string>&lt;No Editor&gt;</string>
+                                                               <key>PBXSplitModuleInNavigatorKey</key>
+                                                               <dict>
+                                                                       <key>Split0</key>
+                                                                       <dict>
+                                                                               <key>PBXProjectModuleGUID</key>
+                                                                               <string>1C78EAB3065D492600B07095</string>
+                                                                       </dict>
+                                                                       <key>SplitCount</key>
+                                                                       <string>1</string>
+                                                               </dict>
+                                                               <key>StatusBarVisibility</key>
+                                                               <integer>1</integer>
+                                                       </dict>
+                                                       <key>GeometryConfiguration</key>
+                                                       <dict>
+                                                               <key>Frame</key>
+                                                               <string>{{0, 0}, {452, 0}}</string>
+                                                               <key>RubberWindowFrame</key>
+                                                               <string>743 379 452 308 0 0 1280 1002 </string>
+                                                       </dict>
+                                                       <key>Module</key>
+                                                       <string>PBXNavigatorGroup</string>
+                                                       <key>Proportion</key>
+                                                       <string>0pt</string>
+                                               </dict>
+                                               <dict>
+                                                       <key>BecomeActive</key>
+                                                       <integer>1</integer>
+                                                       <key>ContentConfiguration</key>
+                                                       <dict>
+                                                               <key>PBXProjectModuleGUID</key>
+                                                               <string>1CD052920623707200166675</string>
+                                                               <key>PBXProjectModuleLabel</key>
+                                                               <string>SCM</string>
+                                                       </dict>
+                                                       <key>GeometryConfiguration</key>
+                                                       <dict>
+                                                               <key>ConsoleFrame</key>
+                                                               <string>{{0, 259}, {452, 0}}</string>
+                                                               <key>Frame</key>
+                                                               <string>{{0, 7}, {452, 259}}</string>
+                                                               <key>RubberWindowFrame</key>
+                                                               <string>743 379 452 308 0 0 1280 1002 </string>
+                                                               <key>TableConfiguration</key>
+                                                               <array>
+                                                                       <string>Status</string>
+                                                                       <real>30</real>
+                                                                       <string>FileName</string>
+                                                                       <real>199</real>
+                                                                       <string>Path</string>
+                                                                       <real>197.09500122070312</real>
+                                                               </array>
+                                                               <key>TableFrame</key>
+                                                               <string>{{0, 0}, {452, 250}}</string>
+                                                       </dict>
+                                                       <key>Module</key>
+                                                       <string>PBXCVSModule</string>
+                                                       <key>Proportion</key>
+                                                       <string>262pt</string>
+                                               </dict>
+                                       </array>
+                                       <key>Proportion</key>
+                                       <string>266pt</string>
+                               </dict>
+                       </array>
+                       <key>Name</key>
+                       <string>SCM</string>
+                       <key>ServiceClasses</key>
+                       <array>
+                               <string>PBXCVSModule</string>
+                       </array>
+                       <key>StatusbarIsVisible</key>
+                       <integer>1</integer>
+                       <key>TableOfContents</key>
+                       <array>
+                               <string>1C78EAB4065D492600B07095</string>
+                               <string>1C78EAB5065D492600B07095</string>
+                               <string>1C78EAB2065D492600B07095</string>
+                               <string>1CD052920623707200166675</string>
+                       </array>
+                       <key>ToolbarConfiguration</key>
+                       <string>xcode.toolbar.config.scm</string>
+                       <key>WindowString</key>
+                       <string>743 379 452 308 0 0 1280 1002 </string>
+               </dict>
+               <dict>
+                       <key>Identifier</key>
+                       <string>windowTool.breakpoints</string>
+                       <key>IsVertical</key>
+                       <integer>0</integer>
+                       <key>Layout</key>
+                       <array>
+                               <dict>
+                                       <key>Dock</key>
+                                       <array>
+                                               <dict>
+                                                       <key>BecomeActive</key>
+                                                       <integer>1</integer>
+                                                       <key>ContentConfiguration</key>
+                                                       <dict>
+                                                               <key>PBXBottomSmartGroupGIDs</key>
+                                                               <array>
+                                                                       <string>1C77FABC04509CD000000102</string>
+                                                               </array>
+                                                               <key>PBXProjectModuleGUID</key>
+                                                               <string>1CE0B1FE06471DED0097A5F4</string>
+                                                               <key>PBXProjectModuleLabel</key>
+                                                               <string>Files</string>
+                                                               <key>PBXProjectStructureProvided</key>
+                                                               <string>no</string>
+                                                               <key>PBXSmartGroupTreeModuleColumnData</key>
+                                                               <dict>
+                                                                       <key>PBXSmartGroupTreeModuleColumnWidthsKey</key>
+                                                                       <array>
+                                                                               <real>168</real>
+                                                                       </array>
+                                                                       <key>PBXSmartGroupTreeModuleColumnsKey_v4</key>
+                                                                       <array>
+                                                                               <string>MainColumn</string>
+                                                                       </array>
+                                                               </dict>
+                                                               <key>PBXSmartGroupTreeModuleOutlineStateKey_v7</key>
+                                                               <dict>
+                                                                       <key>PBXSmartGroupTreeModuleOutlineStateExpansionKey</key>
+                                                                       <array>
+                                                                               <string>1C77FABC04509CD000000102</string>
+                                                                       </array>
+                                                                       <key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
+                                                                       <array>
+                                                                               <array>
+                                                                                       <integer>0</integer>
+                                                                               </array>
+                                                                       </array>
+                                                                       <key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
+                                                                       <string>{{0, 0}, {168, 350}}</string>
+                                                               </dict>
+                                                               <key>PBXTopSmartGroupGIDs</key>
+                                                               <array/>
+                                                               <key>XCIncludePerspectivesSwitch</key>
+                                                               <integer>0</integer>
+                                                       </dict>
+                                                       <key>GeometryConfiguration</key>
+                                                       <dict>
+                                                               <key>Frame</key>
+                                                               <string>{{0, 0}, {185, 368}}</string>
+                                                               <key>GroupTreeTableConfiguration</key>
+                                                               <array>
+                                                                       <string>MainColumn</string>
+                                                                       <real>168</real>
+                                                               </array>
+                                                               <key>RubberWindowFrame</key>
+                                                               <string>315 424 744 409 0 0 1440 878 </string>
+                                                       </dict>
+                                                       <key>Module</key>
+                                                       <string>PBXSmartGroupTreeModule</string>
+                                                       <key>Proportion</key>
+                                                       <string>185pt</string>
+                                               </dict>
+                                               <dict>
+                                                       <key>ContentConfiguration</key>
+                                                       <dict>
+                                                               <key>PBXProjectModuleGUID</key>
+                                                               <string>1CA1AED706398EBD00589147</string>
+                                                               <key>PBXProjectModuleLabel</key>
+                                                               <string>Detail</string>
+                                                       </dict>
+                                                       <key>GeometryConfiguration</key>
+                                                       <dict>
+                                                               <key>Frame</key>
+                                                               <string>{{190, 0}, {554, 368}}</string>
+                                                               <key>RubberWindowFrame</key>
+                                                               <string>315 424 744 409 0 0 1440 878 </string>
+                                                       </dict>
+                                                       <key>Module</key>
+                                                       <string>XCDetailModule</string>
+                                                       <key>Proportion</key>
+                                                       <string>554pt</string>
+                                               </dict>
+                                       </array>
+                                       <key>Proportion</key>
+                                       <string>368pt</string>
+                               </dict>
+                       </array>
+                       <key>MajorVersion</key>
+                       <integer>2</integer>
+                       <key>MinorVersion</key>
+                       <integer>0</integer>
+                       <key>Name</key>
+                       <string>Breakpoints</string>
+                       <key>ServiceClasses</key>
+                       <array>
+                               <string>PBXSmartGroupTreeModule</string>
+                               <string>XCDetailModule</string>
+                       </array>
+                       <key>StatusbarIsVisible</key>
+                       <integer>1</integer>
+                       <key>TableOfContents</key>
+                       <array>
+                               <string>1CDDB66807F98D9800BB5817</string>
+                               <string>1CDDB66907F98D9800BB5817</string>
+                               <string>1CE0B1FE06471DED0097A5F4</string>
+                               <string>1CA1AED706398EBD00589147</string>
+                       </array>
+                       <key>ToolbarConfiguration</key>
+                       <string>xcode.toolbar.config.breakpoints</string>
+                       <key>WindowString</key>
+                       <string>315 424 744 409 0 0 1440 878 </string>
+                       <key>WindowToolGUID</key>
+                       <string>1CDDB66807F98D9800BB5817</string>
+                       <key>WindowToolIsVisible</key>
+                       <integer>1</integer>
+               </dict>
+               <dict>
+                       <key>Identifier</key>
+                       <string>windowTool.debugAnimator</string>
+                       <key>Layout</key>
+                       <array>
+                               <dict>
+                                       <key>Dock</key>
+                                       <array>
+                                               <dict>
+                                                       <key>Module</key>
+                                                       <string>PBXNavigatorGroup</string>
+                                                       <key>Proportion</key>
+                                                       <string>100%</string>
+                                               </dict>
+                                       </array>
+                                       <key>Proportion</key>
+                                       <string>100%</string>
+                               </dict>
+                       </array>
+                       <key>Name</key>
+                       <string>Debug Visualizer</string>
+                       <key>ServiceClasses</key>
+                       <array>
+                               <string>PBXNavigatorGroup</string>
+                       </array>
+                       <key>StatusbarIsVisible</key>
+                       <integer>1</integer>
+                       <key>ToolbarConfiguration</key>
+                       <string>xcode.toolbar.config.debugAnimator</string>
+                       <key>WindowString</key>
+                       <string>100 100 700 500 0 0 1280 1002 </string>
+               </dict>
+               <dict>
+                       <key>Identifier</key>
+                       <string>windowTool.bookmarks</string>
+                       <key>Layout</key>
+                       <array>
+                               <dict>
+                                       <key>Dock</key>
+                                       <array>
+                                               <dict>
+                                                       <key>Module</key>
+                                                       <string>PBXBookmarksModule</string>
+                                                       <key>Proportion</key>
+                                                       <string>166pt</string>
+                                               </dict>
+                                       </array>
+                                       <key>Proportion</key>
+                                       <string>166pt</string>
+                               </dict>
+                       </array>
+                       <key>Name</key>
+                       <string>Bookmarks</string>
+                       <key>ServiceClasses</key>
+                       <array>
+                               <string>PBXBookmarksModule</string>
+                       </array>
+                       <key>StatusbarIsVisible</key>
+                       <integer>0</integer>
+                       <key>WindowString</key>
+                       <string>538 42 401 187 0 0 1280 1002 </string>
+               </dict>
+               <dict>
+                       <key>Identifier</key>
+                       <string>windowTool.classBrowser</string>
+                       <key>Layout</key>
+                       <array>
+                               <dict>
+                                       <key>Dock</key>
+                                       <array>
+                                               <dict>
+                                                       <key>BecomeActive</key>
+                                                       <integer>1</integer>
+                                                       <key>ContentConfiguration</key>
+                                                       <dict>
+                                                               <key>OptionsSetName</key>
+                                                               <string>Hierarchy, all classes</string>
+                                                               <key>PBXProjectModuleGUID</key>
+                                                               <string>1CA6456E063B45B4001379D8</string>
+                                                               <key>PBXProjectModuleLabel</key>
+                                                               <string>Class Browser - NSObject</string>
+                                                       </dict>
+                                                       <key>GeometryConfiguration</key>
+                                                       <dict>
+                                                               <key>ClassesFrame</key>
+                                                               <string>{{0, 0}, {369, 96}}</string>
+                                                               <key>ClassesTreeTableConfiguration</key>
+                                                               <array>
+                                                                       <string>PBXClassNameColumnIdentifier</string>
+                                                                       <real>208</real>
+                                                                       <string>PBXClassBookColumnIdentifier</string>
+                                                                       <real>22</real>
+                                                               </array>
+                                                               <key>Frame</key>
+                                                               <string>{{0, 0}, {616, 353}}</string>
+                                                               <key>MembersFrame</key>
+                                                               <string>{{0, 105}, {369, 395}}</string>
+                                                               <key>MembersTreeTableConfiguration</key>
+                                                               <array>
+                                                                       <string>PBXMemberTypeIconColumnIdentifier</string>
+                                                                       <real>22</real>
+                                                                       <string>PBXMemberNameColumnIdentifier</string>
+                                                                       <real>216</real>
+                                                                       <string>PBXMemberTypeColumnIdentifier</string>
+                                                                       <real>94</real>
+                                                                       <string>PBXMemberBookColumnIdentifier</string>
+                                                                       <real>22</real>
+                                                               </array>
+                                                               <key>PBXModuleWindowStatusBarHidden2</key>
+                                                               <integer>1</integer>
+                                                               <key>RubberWindowFrame</key>
+                                                               <string>597 125 616 374 0 0 1280 1002 </string>
+                                                       </dict>
+                                                       <key>Module</key>
+                                                       <string>PBXClassBrowserModule</string>
+                                                       <key>Proportion</key>
+                                                       <string>354pt</string>
+                                               </dict>
+                                       </array>
+                                       <key>Proportion</key>
+                                       <string>354pt</string>
+                               </dict>
+                       </array>
+                       <key>Name</key>
+                       <string>Class Browser</string>
+                       <key>ServiceClasses</key>
+                       <array>
+                               <string>PBXClassBrowserModule</string>
+                       </array>
+                       <key>StatusbarIsVisible</key>
+                       <integer>0</integer>
+                       <key>TableOfContents</key>
+                       <array>
+                               <string>1C78EABA065D492600B07095</string>
+                               <string>1C78EABB065D492600B07095</string>
+                               <string>1CA6456E063B45B4001379D8</string>
+                       </array>
+                       <key>ToolbarConfiguration</key>
+                       <string>xcode.toolbar.config.classbrowser</string>
+                       <key>WindowString</key>
+                       <string>597 125 616 374 0 0 1280 1002 </string>
+               </dict>
+       </array>
+</dict>
+</plist>
diff --git a/src/lib/ccapi/mac/CCAPI.xcodeproj/project.pbxproj b/src/lib/ccapi/mac/CCAPI.xcodeproj/project.pbxproj
new file mode 100644 (file)
index 0000000..38a73b4
--- /dev/null
@@ -0,0 +1,599 @@
+// !$*UTF8*$!
+{
+       archiveVersion = 1;
+       classes = {
+       };
+       objectVersion = 42;
+       objects = {
+
+/* Begin PBXBuildFile section */
+               A1E70D480A38B5D5007BE3E3 /* cacheapi.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D000A38B5BB007BE3E3 /* cacheapi.c */; };
+               A1E70D490A38B5D5007BE3E3 /* ccache.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D010A38B5BB007BE3E3 /* ccache.c */; };
+               A1E70D4A0A38B5D5007BE3E3 /* ccache_iterator.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D030A38B5BB007BE3E3 /* ccache_iterator.c */; };
+               A1E70D4B0A38B5D5007BE3E3 /* ccapiv2.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D050A38B5BB007BE3E3 /* ccapiv2.c */; };
+               A1E70D4C0A38B5D5007BE3E3 /* ccstring.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D060A38B5BB007BE3E3 /* ccstring.c */; };
+               A1E70D4D0A38B5D5007BE3E3 /* context.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D080A38B5BB007BE3E3 /* context.c */; };
+               A1E70D4E0A38B5D5007BE3E3 /* credentials.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D0A0A38B5BB007BE3E3 /* credentials.c */; };
+               A1E70D4F0A38B5D5007BE3E3 /* credentials_iterator.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D0C0A38B5BB007BE3E3 /* credentials_iterator.c */; };
+               A1E70D510A38B60C007BE3E3 /* generic_lists.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D120A38B5BB007BE3E3 /* generic_lists.c */; };
+               A1E70D520A38B60C007BE3E3 /* marshall.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D130A38B5BB007BE3E3 /* marshall.c */; };
+               A1E70D530A38B60C007BE3E3 /* msg.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D140A38B5BB007BE3E3 /* msg.c */; };
+               A1E70D890A38BB47007BE3E3 /* ccs_ccache.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D280A38B5BB007BE3E3 /* ccs_ccache.c */; };
+               A1E70D8A0A38BB47007BE3E3 /* ccs_context.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D290A38B5BB007BE3E3 /* ccs_context.c */; };
+               A1E70D8B0A38BB47007BE3E3 /* ccs_lists.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D2A0A38B5BB007BE3E3 /* ccs_lists.c */; };
+               A1E70D8C0A38BB47007BE3E3 /* rpc_auth.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D2E0A38B5BB007BE3E3 /* rpc_auth.c */; };
+               A1E70D8D0A38BB47007BE3E3 /* serv_ops.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D2F0A38B5BB007BE3E3 /* serv_ops.c */; };
+               A1E70D8E0A38BB4F007BE3E3 /* generic_lists.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D120A38B5BB007BE3E3 /* generic_lists.c */; };
+               A1E70D8F0A38BB4F007BE3E3 /* marshall.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D130A38B5BB007BE3E3 /* marshall.c */; };
+               A1E70D900A38BB4F007BE3E3 /* msg.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D140A38B5BB007BE3E3 /* msg.c */; };
+               A1E70D9B0A38BBE2007BE3E3 /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D930A38BB67007BE3E3 /* main.c */; };
+               A1E70D9F0A38BCAD007BE3E3 /* mig.defs in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D9E0A38BCAD007BE3E3 /* mig.defs */; };
+               A1E70DA00A38BCAD007BE3E3 /* mig.defs in Sources */ = {isa = PBXBuildFile; fileRef = A1E70D9E0A38BCAD007BE3E3 /* mig.defs */; settings = {ATTRIBUTES = (Server, ); }; };
+               A1E70DEA0A38C710007BE3E3 /* kipc_client.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70DE40A38C6FD007BE3E3 /* kipc_client.c */; };
+               A1E70DEB0A38C710007BE3E3 /* kipc_common.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70DE50A38C6FD007BE3E3 /* kipc_common.c */; };
+               A1E70DEC0A38C710007BE3E3 /* kipc_session.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70DE70A38C6FD007BE3E3 /* kipc_session.c */; };
+               A1E70DED0A38C71D007BE3E3 /* kipc_common.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70DE50A38C6FD007BE3E3 /* kipc_common.c */; };
+               A1E70DEE0A38C71D007BE3E3 /* kipc_server.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70DE60A38C6FD007BE3E3 /* kipc_server.c */; };
+               A1E70DEF0A38C71D007BE3E3 /* kipc_session.c in Sources */ = {isa = PBXBuildFile; fileRef = A1E70DE70A38C6FD007BE3E3 /* kipc_session.c */; };
+               A1E70DF00A38C71D007BE3E3 /* notify.defs in Sources */ = {isa = PBXBuildFile; fileRef = A1E70DE80A38C6FD007BE3E3 /* notify.defs */; settings = {ATTRIBUTES = (Server, ); }; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+               A1E70D000A38B5BB007BE3E3 /* cacheapi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = cacheapi.c; sourceTree = "<group>"; };
+               A1E70D010A38B5BB007BE3E3 /* ccache.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ccache.c; sourceTree = "<group>"; };
+               A1E70D020A38B5BB007BE3E3 /* ccache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ccache.h; sourceTree = "<group>"; };
+               A1E70D030A38B5BB007BE3E3 /* ccache_iterator.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ccache_iterator.c; sourceTree = "<group>"; };
+               A1E70D040A38B5BB007BE3E3 /* ccache_iterator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ccache_iterator.h; sourceTree = "<group>"; };
+               A1E70D050A38B5BB007BE3E3 /* ccapiv2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ccapiv2.c; sourceTree = "<group>"; };
+               A1E70D060A38B5BB007BE3E3 /* ccstring.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ccstring.c; sourceTree = "<group>"; };
+               A1E70D070A38B5BB007BE3E3 /* ccstring.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ccstring.h; sourceTree = "<group>"; };
+               A1E70D080A38B5BB007BE3E3 /* context.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = context.c; sourceTree = "<group>"; };
+               A1E70D090A38B5BB007BE3E3 /* context.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = context.h; sourceTree = "<group>"; };
+               A1E70D0A0A38B5BB007BE3E3 /* credentials.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = credentials.c; sourceTree = "<group>"; };
+               A1E70D0B0A38B5BB007BE3E3 /* credentials.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = credentials.h; sourceTree = "<group>"; };
+               A1E70D0C0A38B5BB007BE3E3 /* credentials_iterator.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = credentials_iterator.c; sourceTree = "<group>"; };
+               A1E70D0D0A38B5BB007BE3E3 /* credentials_iterator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = credentials_iterator.h; sourceTree = "<group>"; };
+               A1E70D0F0A38B5BB007BE3E3 /* NTMakefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = NTMakefile; sourceTree = "<group>"; };
+               A1E70D120A38B5BB007BE3E3 /* generic_lists.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = generic_lists.c; sourceTree = "<group>"; };
+               A1E70D130A38B5BB007BE3E3 /* marshall.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = marshall.c; sourceTree = "<group>"; };
+               A1E70D140A38B5BB007BE3E3 /* msg.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = msg.c; sourceTree = "<group>"; };
+               A1E70D150A38B5BB007BE3E3 /* NTMakefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = NTMakefile; sourceTree = "<group>"; };
+               A1E70D170A38B5BB007BE3E3 /* implementation-notes.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "implementation-notes.txt"; sourceTree = "<group>"; };
+               A1E70D190A38B5BB007BE3E3 /* cc_rpc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cc_rpc.h; sourceTree = "<group>"; };
+               A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CredentialsCache.h; sourceTree = "<group>"; };
+               A1E70D1B0A38B5BB007BE3E3 /* CredentialsCache2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CredentialsCache2.h; sourceTree = "<group>"; };
+               A1E70D1C0A38B5BB007BE3E3 /* datastore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = datastore.h; sourceTree = "<group>"; };
+               A1E70D1D0A38B5BB007BE3E3 /* generic_lists.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = generic_lists.h; sourceTree = "<group>"; };
+               A1E70D1E0A38B5BB007BE3E3 /* marshall.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = marshall.h; sourceTree = "<group>"; };
+               A1E70D1F0A38B5BB007BE3E3 /* msg.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = msg.h; sourceTree = "<group>"; };
+               A1E70D200A38B5BB007BE3E3 /* msg_headers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = msg_headers.h; sourceTree = "<group>"; };
+               A1E70D210A38B5BB007BE3E3 /* rpc_auth.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rpc_auth.h; sourceTree = "<group>"; };
+               A1E70D260A38B5BB007BE3E3 /* NTMakefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = NTMakefile; path = ../NTMakefile; sourceTree = SOURCE_ROOT; };
+               A1E70D280A38B5BB007BE3E3 /* ccs_ccache.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ccs_ccache.c; sourceTree = "<group>"; };
+               A1E70D290A38B5BB007BE3E3 /* ccs_context.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ccs_context.c; sourceTree = "<group>"; };
+               A1E70D2A0A38B5BB007BE3E3 /* ccs_lists.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ccs_lists.c; sourceTree = "<group>"; };
+               A1E70D2C0A38B5BB007BE3E3 /* main.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = "<group>"; };
+               A1E70D2D0A38B5BB007BE3E3 /* NTMakefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = NTMakefile; sourceTree = "<group>"; };
+               A1E70D2E0A38B5BB007BE3E3 /* rpc_auth.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = rpc_auth.c; sourceTree = "<group>"; };
+               A1E70D2F0A38B5BB007BE3E3 /* serv_ops.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = serv_ops.c; sourceTree = "<group>"; };
+               A1E70D300A38B5BB007BE3E3 /* serv_ops.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = serv_ops.h; sourceTree = "<group>"; };
+               A1E70D330A38B5BB007BE3E3 /* NTMakefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = NTMakefile; sourceTree = "<group>"; };
+               A1E70D340A38B5BB007BE3E3 /* t_ccache.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = t_ccache.c; sourceTree = "<group>"; };
+               A1E70D350A38B5BB007BE3E3 /* t_context.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = t_context.c; sourceTree = "<group>"; };
+               A1E70D360A38B5BB007BE3E3 /* t_lists.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = t_lists.c; sourceTree = "<group>"; };
+               A1E70D370A38B5BB007BE3E3 /* t_msg.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = t_msg.c; sourceTree = "<group>"; };
+               A1E70D380A38B5BB007BE3E3 /* t_server.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = t_server.c; sourceTree = "<group>"; };
+               A1E70D3A0A38B5BB007BE3E3 /* cacheapi.def */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = cacheapi.def; sourceTree = "<group>"; };
+               A1E70D3B0A38B5BB007BE3E3 /* client.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = client.c; sourceTree = "<group>"; };
+               A1E70D3C0A38B5BB007BE3E3 /* dllmain.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dllmain.c; sourceTree = "<group>"; };
+               A1E70D3D0A38B5BC007BE3E3 /* ntccrpc.acf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = ntccrpc.acf; sourceTree = "<group>"; };
+               A1E70D3E0A38B5BC007BE3E3 /* ntccrpc.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = ntccrpc.idl; sourceTree = "<group>"; };
+               A1E70D3F0A38B5BC007BE3E3 /* NTMakefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = NTMakefile; sourceTree = "<group>"; };
+               A1E70D410A38B5BC007BE3E3 /* client.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = client.c; sourceTree = "<group>"; };
+               A1E70D420A38B5BC007BE3E3 /* cstest.acf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = cstest.acf; sourceTree = "<group>"; };
+               A1E70D430A38B5BC007BE3E3 /* cstest.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = cstest.idl; sourceTree = "<group>"; };
+               A1E70D440A38B5BC007BE3E3 /* NTMakefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = NTMakefile; sourceTree = "<group>"; };
+               A1E70D450A38B5BC007BE3E3 /* server.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = server.c; sourceTree = "<group>"; };
+               A1E70D460A38B5BC007BE3E3 /* server.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = server.c; sourceTree = "<group>"; };
+               A1E70D5D0A38B796007BE3E3 /* CCacheServer.app */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.application; path = CCacheServer.app; sourceTree = BUILT_PRODUCTS_DIR; };
+               A1E70D910A38BB67007BE3E3 /* CCacheServer.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = CCacheServer.plist; sourceTree = "<group>"; };
+               A1E70D920A38BB67007BE3E3 /* CCacheServerInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = CCacheServerInfo.plist; sourceTree = "<group>"; };
+               A1E70D930A38BB67007BE3E3 /* main.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = "<group>"; };
+               A1E70D9E0A38BCAD007BE3E3 /* mig.defs */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.mig; path = mig.defs; sourceTree = "<group>"; };
+               A1E70DB10A38C01E007BE3E3 /* mig_types.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mig_types.h; sourceTree = "<group>"; };
+               A1E70DE00A38C6FD007BE3E3 /* kipc_client.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = kipc_client.h; sourceTree = "<group>"; };
+               A1E70DE10A38C6FD007BE3E3 /* kipc_common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = kipc_common.h; sourceTree = "<group>"; };
+               A1E70DE20A38C6FD007BE3E3 /* kipc_server.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = kipc_server.h; sourceTree = "<group>"; };
+               A1E70DE30A38C6FD007BE3E3 /* kipc_session.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = kipc_session.h; sourceTree = "<group>"; };
+               A1E70DE40A38C6FD007BE3E3 /* kipc_client.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = kipc_client.c; sourceTree = "<group>"; };
+               A1E70DE50A38C6FD007BE3E3 /* kipc_common.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = kipc_common.c; sourceTree = "<group>"; };
+               A1E70DE60A38C6FD007BE3E3 /* kipc_server.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = kipc_server.c; sourceTree = "<group>"; };
+               A1E70DE70A38C6FD007BE3E3 /* kipc_session.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = kipc_session.c; sourceTree = "<group>"; };
+               A1E70DE80A38C6FD007BE3E3 /* notify.defs */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.mig; path = notify.defs; sourceTree = "<group>"; };
+               A1E70DE90A38C6FD007BE3E3 /* README */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = README; sourceTree = "<group>"; };
+               D2AAC046055464E500DB518D /* libCCAPI.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libCCAPI.a; sourceTree = BUILT_PRODUCTS_DIR; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+               A1E70D5B0A38B796007BE3E3 /* Frameworks */ = {
+                       isa = PBXFrameworksBuildPhase;
+                       buildActionMask = 2147483647;
+                       files = (
+                       );
+                       runOnlyForDeploymentPostprocessing = 0;
+               };
+               D289987405E68DCB004EDB86 /* Frameworks */ = {
+                       isa = PBXFrameworksBuildPhase;
+                       buildActionMask = 2147483647;
+                       files = (
+                       );
+                       runOnlyForDeploymentPostprocessing = 0;
+               };
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+               08FB7794FE84155DC02AAC07 /* CCAPI */ = {
+                       isa = PBXGroup;
+                       children = (
+                               A1E70CFF0A38B5BB007BE3E3 /* client */,
+                               A1E70D110A38B5BB007BE3E3 /* common */,
+                               A1E70D160A38B5BB007BE3E3 /* doc */,
+                               A1E70D180A38B5BB007BE3E3 /* include */,
+                               A1E70D260A38B5BB007BE3E3 /* NTMakefile */,
+                               A1E70D270A38B5BB007BE3E3 /* server */,
+                               A1E70D320A38B5BB007BE3E3 /* unit-test */,
+                               A1E70D390A38B5BB007BE3E3 /* windows */,
+                               1AB674ADFE9D54B511CA2CBB /* Products */,
+                       );
+                       name = CCAPI;
+                       sourceTree = "<group>";
+               };
+               1AB674ADFE9D54B511CA2CBB /* Products */ = {
+                       isa = PBXGroup;
+                       children = (
+                               D2AAC046055464E500DB518D /* libCCAPI.a */,
+                               A1E70D5D0A38B796007BE3E3 /* CCacheServer.app */,
+                       );
+                       name = Products;
+                       sourceTree = "<group>";
+               };
+               A1E70CFF0A38B5BB007BE3E3 /* client */ = {
+                       isa = PBXGroup;
+                       children = (
+                               A1E70D000A38B5BB007BE3E3 /* cacheapi.c */,
+                               A1E70D010A38B5BB007BE3E3 /* ccache.c */,
+                               A1E70D020A38B5BB007BE3E3 /* ccache.h */,
+                               A1E70D030A38B5BB007BE3E3 /* ccache_iterator.c */,
+                               A1E70D040A38B5BB007BE3E3 /* ccache_iterator.h */,
+                               A1E70D050A38B5BB007BE3E3 /* ccapiv2.c */,
+                               A1E70D060A38B5BB007BE3E3 /* ccstring.c */,
+                               A1E70D070A38B5BB007BE3E3 /* ccstring.h */,
+                               A1E70D080A38B5BB007BE3E3 /* context.c */,
+                               A1E70D090A38B5BB007BE3E3 /* context.h */,
+                               A1E70D0A0A38B5BB007BE3E3 /* credentials.c */,
+                               A1E70D0B0A38B5BB007BE3E3 /* credentials.h */,
+                               A1E70D0C0A38B5BB007BE3E3 /* credentials_iterator.c */,
+                               A1E70D0D0A38B5BB007BE3E3 /* credentials_iterator.h */,
+                               A1E70D0E0A38B5BB007BE3E3 /* mac */,
+                               A1E70D0F0A38B5BB007BE3E3 /* NTMakefile */,
+                               A1E70D100A38B5BB007BE3E3 /* windows */,
+                       );
+                       name = client;
+                       path = ../client;
+                       sourceTree = SOURCE_ROOT;
+               };
+               A1E70D0E0A38B5BB007BE3E3 /* mac */ = {
+                       isa = PBXGroup;
+                       children = (
+                       );
+                       path = mac;
+                       sourceTree = "<group>";
+               };
+               A1E70D100A38B5BB007BE3E3 /* windows */ = {
+                       isa = PBXGroup;
+                       children = (
+                       );
+                       path = windows;
+                       sourceTree = "<group>";
+               };
+               A1E70D110A38B5BB007BE3E3 /* common */ = {
+                       isa = PBXGroup;
+                       children = (
+                               A1E70D7E0A38BAC5007BE3E3 /* mac */,
+                               A1E70D120A38B5BB007BE3E3 /* generic_lists.c */,
+                               A1E70D130A38B5BB007BE3E3 /* marshall.c */,
+                               A1E70D140A38B5BB007BE3E3 /* msg.c */,
+                               A1E70D150A38B5BB007BE3E3 /* NTMakefile */,
+                       );
+                       name = common;
+                       path = ../common;
+                       sourceTree = SOURCE_ROOT;
+               };
+               A1E70D160A38B5BB007BE3E3 /* doc */ = {
+                       isa = PBXGroup;
+                       children = (
+                               A1E70D170A38B5BB007BE3E3 /* implementation-notes.txt */,
+                       );
+                       name = doc;
+                       path = ../doc;
+                       sourceTree = SOURCE_ROOT;
+               };
+               A1E70D180A38B5BB007BE3E3 /* include */ = {
+                       isa = PBXGroup;
+                       children = (
+                               A1E70D190A38B5BB007BE3E3 /* cc_rpc.h */,
+                               A1E70D1A0A38B5BB007BE3E3 /* CredentialsCache.h */,
+                               A1E70D1B0A38B5BB007BE3E3 /* CredentialsCache2.h */,
+                               A1E70D1C0A38B5BB007BE3E3 /* datastore.h */,
+                               A1E70D1D0A38B5BB007BE3E3 /* generic_lists.h */,
+                               A1E70D1E0A38B5BB007BE3E3 /* marshall.h */,
+                               A1E70D1F0A38B5BB007BE3E3 /* msg.h */,
+                               A1E70D200A38B5BB007BE3E3 /* msg_headers.h */,
+                               A1E70D210A38B5BB007BE3E3 /* rpc_auth.h */,
+                       );
+                       name = include;
+                       path = ../include;
+                       sourceTree = SOURCE_ROOT;
+               };
+               A1E70D270A38B5BB007BE3E3 /* server */ = {
+                       isa = PBXGroup;
+                       children = (
+                               A1E70D280A38B5BB007BE3E3 /* ccs_ccache.c */,
+                               A1E70D290A38B5BB007BE3E3 /* ccs_context.c */,
+                               A1E70D2A0A38B5BB007BE3E3 /* ccs_lists.c */,
+                               A1E70D2B0A38B5BB007BE3E3 /* mac */,
+                               A1E70D2C0A38B5BB007BE3E3 /* main.c */,
+                               A1E70D2D0A38B5BB007BE3E3 /* NTMakefile */,
+                               A1E70D2E0A38B5BB007BE3E3 /* rpc_auth.c */,
+                               A1E70D2F0A38B5BB007BE3E3 /* serv_ops.c */,
+                               A1E70D300A38B5BB007BE3E3 /* serv_ops.h */,
+                               A1E70D310A38B5BB007BE3E3 /* windows */,
+                       );
+                       name = server;
+                       path = ../server;
+                       sourceTree = SOURCE_ROOT;
+               };
+               A1E70D2B0A38B5BB007BE3E3 /* mac */ = {
+                       isa = PBXGroup;
+                       children = (
+                               A1E70D910A38BB67007BE3E3 /* CCacheServer.plist */,
+                               A1E70D920A38BB67007BE3E3 /* CCacheServerInfo.plist */,
+                               A1E70D930A38BB67007BE3E3 /* main.c */,
+                       );
+                       path = mac;
+                       sourceTree = "<group>";
+               };
+               A1E70D310A38B5BB007BE3E3 /* windows */ = {
+                       isa = PBXGroup;
+                       children = (
+                       );
+                       path = windows;
+                       sourceTree = "<group>";
+               };
+               A1E70D320A38B5BB007BE3E3 /* unit-test */ = {
+                       isa = PBXGroup;
+                       children = (
+                               A1E70D330A38B5BB007BE3E3 /* NTMakefile */,
+                               A1E70D340A38B5BB007BE3E3 /* t_ccache.c */,
+                               A1E70D350A38B5BB007BE3E3 /* t_context.c */,
+                               A1E70D360A38B5BB007BE3E3 /* t_lists.c */,
+                               A1E70D370A38B5BB007BE3E3 /* t_msg.c */,
+                               A1E70D380A38B5BB007BE3E3 /* t_server.c */,
+                       );
+                       name = "unit-test";
+                       path = "../unit-test";
+                       sourceTree = SOURCE_ROOT;
+               };
+               A1E70D390A38B5BB007BE3E3 /* windows */ = {
+                       isa = PBXGroup;
+                       children = (
+                               A1E70D3A0A38B5BB007BE3E3 /* cacheapi.def */,
+                               A1E70D3B0A38B5BB007BE3E3 /* client.c */,
+                               A1E70D3C0A38B5BB007BE3E3 /* dllmain.c */,
+                               A1E70D3D0A38B5BC007BE3E3 /* ntccrpc.acf */,
+                               A1E70D3E0A38B5BC007BE3E3 /* ntccrpc.idl */,
+                               A1E70D3F0A38B5BC007BE3E3 /* NTMakefile */,
+                               A1E70D400A38B5BC007BE3E3 /* rpcsstest */,
+                               A1E70D460A38B5BC007BE3E3 /* server.c */,
+                       );
+                       name = windows;
+                       path = ../windows;
+                       sourceTree = SOURCE_ROOT;
+               };
+               A1E70D400A38B5BC007BE3E3 /* rpcsstest */ = {
+                       isa = PBXGroup;
+                       children = (
+                               A1E70D410A38B5BC007BE3E3 /* client.c */,
+                               A1E70D420A38B5BC007BE3E3 /* cstest.acf */,
+                               A1E70D430A38B5BC007BE3E3 /* cstest.idl */,
+                               A1E70D440A38B5BC007BE3E3 /* NTMakefile */,
+                               A1E70D450A38B5BC007BE3E3 /* server.c */,
+                       );
+                       path = rpcsstest;
+                       sourceTree = "<group>";
+               };
+               A1E70D7E0A38BAC5007BE3E3 /* mac */ = {
+                       isa = PBXGroup;
+                       children = (
+                               A1E70DDE0A38C6FD007BE3E3 /* KerberosIPC */,
+                               A1E70D9E0A38BCAD007BE3E3 /* mig.defs */,
+                               A1E70DB10A38C01E007BE3E3 /* mig_types.h */,
+                       );
+                       path = mac;
+                       sourceTree = "<group>";
+               };
+               A1E70DDE0A38C6FD007BE3E3 /* KerberosIPC */ = {
+                       isa = PBXGroup;
+                       children = (
+                               A1E70DDF0A38C6FD007BE3E3 /* Kerberos */,
+                               A1E70DE40A38C6FD007BE3E3 /* kipc_client.c */,
+                               A1E70DE50A38C6FD007BE3E3 /* kipc_common.c */,
+                               A1E70DE60A38C6FD007BE3E3 /* kipc_server.c */,
+                               A1E70DE70A38C6FD007BE3E3 /* kipc_session.c */,
+                               A1E70DE80A38C6FD007BE3E3 /* notify.defs */,
+                               A1E70DE90A38C6FD007BE3E3 /* README */,
+                       );
+                       path = KerberosIPC;
+                       sourceTree = "<group>";
+               };
+               A1E70DDF0A38C6FD007BE3E3 /* Kerberos */ = {
+                       isa = PBXGroup;
+                       children = (
+                               A1E70DE00A38C6FD007BE3E3 /* kipc_client.h */,
+                               A1E70DE10A38C6FD007BE3E3 /* kipc_common.h */,
+                               A1E70DE20A38C6FD007BE3E3 /* kipc_server.h */,
+                               A1E70DE30A38C6FD007BE3E3 /* kipc_session.h */,
+                       );
+                       path = Kerberos;
+                       sourceTree = "<group>";
+               };
+/* End PBXGroup section */
+
+/* Begin PBXHeadersBuildPhase section */
+               D2AAC043055464E500DB518D /* Headers */ = {
+                       isa = PBXHeadersBuildPhase;
+                       buildActionMask = 2147483647;
+                       files = (
+                       );
+                       runOnlyForDeploymentPostprocessing = 0;
+               };
+/* End PBXHeadersBuildPhase section */
+
+/* Begin PBXNativeTarget section */
+               A1E70D5C0A38B796007BE3E3 /* CCacheServer */ = {
+                       isa = PBXNativeTarget;
+                       buildConfigurationList = A1E70D600A38B797007BE3E3 /* Build configuration list for PBXNativeTarget "CCacheServer" */;
+                       buildPhases = (
+                               A1E70D590A38B796007BE3E3 /* Resources */,
+                               A1E70D5A0A38B796007BE3E3 /* Sources */,
+                               A1E70D5B0A38B796007BE3E3 /* Frameworks */,
+                       );
+                       buildRules = (
+                       );
+                       dependencies = (
+                       );
+                       name = CCacheServer;
+                       productName = CCacheServer;
+                       productReference = A1E70D5D0A38B796007BE3E3 /* CCacheServer.app */;
+                       productType = "com.apple.product-type.application";
+               };
+               D2AAC045055464E500DB518D /* CCAPI */ = {
+                       isa = PBXNativeTarget;
+                       buildConfigurationList = 1DEB91EB08733DB70010E9CD /* Build configuration list for PBXNativeTarget "CCAPI" */;
+                       buildPhases = (
+                               D2AAC043055464E500DB518D /* Headers */,
+                               D2AAC044055464E500DB518D /* Sources */,
+                               D289987405E68DCB004EDB86 /* Frameworks */,
+                       );
+                       buildRules = (
+                       );
+                       dependencies = (
+                       );
+                       name = CCAPI;
+                       productName = CCAPI;
+                       productReference = D2AAC046055464E500DB518D /* libCCAPI.a */;
+                       productType = "com.apple.product-type.library.static";
+               };
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+               08FB7793FE84155DC02AAC07 /* Project object */ = {
+                       isa = PBXProject;
+                       buildConfigurationList = 1DEB91EF08733DB70010E9CD /* Build configuration list for PBXProject "CCAPI" */;
+                       hasScannedForEncodings = 1;
+                       mainGroup = 08FB7794FE84155DC02AAC07 /* CCAPI */;
+                       projectDirPath = "";
+                       targets = (
+                               D2AAC045055464E500DB518D /* CCAPI */,
+                               A1E70D5C0A38B796007BE3E3 /* CCacheServer */,
+                       );
+               };
+/* End PBXProject section */
+
+/* Begin PBXResourcesBuildPhase section */
+               A1E70D590A38B796007BE3E3 /* Resources */ = {
+                       isa = PBXResourcesBuildPhase;
+                       buildActionMask = 2147483647;
+                       files = (
+                       );
+                       runOnlyForDeploymentPostprocessing = 0;
+               };
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+               A1E70D5A0A38B796007BE3E3 /* Sources */ = {
+                       isa = PBXSourcesBuildPhase;
+                       buildActionMask = 2147483647;
+                       files = (
+                               A1E70DA00A38BCAD007BE3E3 /* mig.defs in Sources */,
+                               A1E70DF00A38C71D007BE3E3 /* notify.defs in Sources */,
+                               A1E70D9B0A38BBE2007BE3E3 /* main.c in Sources */,
+                               A1E70D890A38BB47007BE3E3 /* ccs_ccache.c in Sources */,
+                               A1E70D8A0A38BB47007BE3E3 /* ccs_context.c in Sources */,
+                               A1E70D8B0A38BB47007BE3E3 /* ccs_lists.c in Sources */,
+                               A1E70D8C0A38BB47007BE3E3 /* rpc_auth.c in Sources */,
+                               A1E70D8D0A38BB47007BE3E3 /* serv_ops.c in Sources */,
+                               A1E70D8E0A38BB4F007BE3E3 /* generic_lists.c in Sources */,
+                               A1E70D8F0A38BB4F007BE3E3 /* marshall.c in Sources */,
+                               A1E70D900A38BB4F007BE3E3 /* msg.c in Sources */,
+                               A1E70DED0A38C71D007BE3E3 /* kipc_common.c in Sources */,
+                               A1E70DEE0A38C71D007BE3E3 /* kipc_server.c in Sources */,
+                               A1E70DEF0A38C71D007BE3E3 /* kipc_session.c in Sources */,
+                       );
+                       runOnlyForDeploymentPostprocessing = 0;
+               };
+               D2AAC044055464E500DB518D /* Sources */ = {
+                       isa = PBXSourcesBuildPhase;
+                       buildActionMask = 2147483647;
+                       files = (
+                               A1E70D9F0A38BCAD007BE3E3 /* mig.defs in Sources */,
+                               A1E70D480A38B5D5007BE3E3 /* cacheapi.c in Sources */,
+                               A1E70D490A38B5D5007BE3E3 /* ccache.c in Sources */,
+                               A1E70D4A0A38B5D5007BE3E3 /* ccache_iterator.c in Sources */,
+                               A1E70D4B0A38B5D5007BE3E3 /* ccapiv2.c in Sources */,
+                               A1E70D4C0A38B5D5007BE3E3 /* ccstring.c in Sources */,
+                               A1E70D4D0A38B5D5007BE3E3 /* context.c in Sources */,
+                               A1E70D4E0A38B5D5007BE3E3 /* credentials.c in Sources */,
+                               A1E70D4F0A38B5D5007BE3E3 /* credentials_iterator.c in Sources */,
+                               A1E70D510A38B60C007BE3E3 /* generic_lists.c in Sources */,
+                               A1E70D520A38B60C007BE3E3 /* marshall.c in Sources */,
+                               A1E70D530A38B60C007BE3E3 /* msg.c in Sources */,
+                               A1E70DEA0A38C710007BE3E3 /* kipc_client.c in Sources */,
+                               A1E70DEB0A38C710007BE3E3 /* kipc_common.c in Sources */,
+                               A1E70DEC0A38C710007BE3E3 /* kipc_session.c in Sources */,
+                       );
+                       runOnlyForDeploymentPostprocessing = 0;
+               };
+/* End PBXSourcesBuildPhase section */
+
+/* Begin XCBuildConfiguration section */
+               1DEB91EC08733DB70010E9CD /* Debug */ = {
+                       isa = XCBuildConfiguration;
+                       buildSettings = {
+                               GCC_DYNAMIC_NO_PIC = NO;
+                               HEADER_SEARCH_PATHS = (
+                                       "$(inherited)",
+                                       ../client,
+                                       ../client/mac,
+                                       ../common,
+                                       ../common/mac,
+                                       ../common/mac/KerberosIPC,
+                               );
+                               PRODUCT_NAME = CCAPI;
+                       };
+                       name = Debug;
+               };
+               1DEB91ED08733DB70010E9CD /* Release */ = {
+                       isa = XCBuildConfiguration;
+                       buildSettings = {
+                               HEADER_SEARCH_PATHS = (
+                                       "$(inherited)",
+                                       ../client,
+                                       ../client/mac,
+                                       ../common,
+                                       ../common/mac,
+                                       ../common/mac/KerberosIPC,
+                               );
+                               PRODUCT_NAME = CCAPI;
+                       };
+                       name = Release;
+               };
+               1DEB91F008733DB70010E9CD /* Debug */ = {
+                       isa = XCBuildConfiguration;
+                       buildSettings = {
+                               ARCHS = (
+                                       i386,
+                                       ppc,
+                               );
+                               COPY_PHASE_STRIP = NO;
+                               GCC_ENABLE_FIX_AND_CONTINUE = YES;
+                               GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
+                               GCC_OPTIMIZATION_LEVEL = 0;
+                               PREBINDING = NO;
+                               ZERO_LINK = YES;
+                       };
+                       name = Debug;
+               };
+               1DEB91F108733DB70010E9CD /* Release */ = {
+                       isa = XCBuildConfiguration;
+                       buildSettings = {
+                               ARCHS = "$(NATIVE_ARCH)";
+                               COPY_PHASE_STRIP = YES;
+                               GCC_ENABLE_FIX_AND_CONTINUE = NO;
+                               GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
+                               GCC_OPTIMIZATION_LEVEL = 3;
+                               PREBINDING = NO;
+                               ZERO_LINK = NO;
+                       };
+                       name = Release;
+               };
+               A1E70D610A38B797007BE3E3 /* Debug */ = {
+                       isa = XCBuildConfiguration;
+                       buildSettings = {
+                               HEADER_SEARCH_PATHS = (
+                                       "$(inherited)",
+                                       ../server,
+                                       ../server/mac,
+                                       ../common,
+                                       ../common/mac,
+                                       ../common/mac/KerberosIPC,
+                               );
+                               INFOPLIST_FILE = ../server/mac/CCacheServerInfo.plist;
+                               INSTALL_PATH = /System/Library/CoreServices;
+                               PRODUCT_NAME = CCacheServer;
+                               WRAPPER_EXTENSION = app;
+                       };
+                       name = Debug;
+               };
+               A1E70D620A38B797007BE3E3 /* Release */ = {
+                       isa = XCBuildConfiguration;
+                       buildSettings = {
+                               HEADER_SEARCH_PATHS = (
+                                       "$(inherited)",
+                                       ../server,
+                                       ../server/mac,
+                                       ../common,
+                                       ../common/mac,
+                                       ../common/mac/KerberosIPC,
+                               );
+                               INFOPLIST_FILE = ../server/mac/CCacheServerInfo.plist;
+                               INSTALL_PATH = /System/Library/CoreServices;
+                               PRODUCT_NAME = CCacheServer;
+                               WRAPPER_EXTENSION = app;
+                       };
+                       name = Release;
+               };
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+               1DEB91EB08733DB70010E9CD /* Build configuration list for PBXNativeTarget "CCAPI" */ = {
+                       isa = XCConfigurationList;
+                       buildConfigurations = (
+                               1DEB91EC08733DB70010E9CD /* Debug */,
+                               1DEB91ED08733DB70010E9CD /* Release */,
+                       );
+                       defaultConfigurationIsVisible = 0;
+                       defaultConfigurationName = Release;
+               };
+               1DEB91EF08733DB70010E9CD /* Build configuration list for PBXProject "CCAPI" */ = {
+                       isa = XCConfigurationList;
+                       buildConfigurations = (
+                               1DEB91F008733DB70010E9CD /* Debug */,
+                               1DEB91F108733DB70010E9CD /* Release */,
+                       );
+                       defaultConfigurationIsVisible = 0;
+                       defaultConfigurationName = Release;
+               };
+               A1E70D600A38B797007BE3E3 /* Build configuration list for PBXNativeTarget "CCacheServer" */ = {
+                       isa = XCConfigurationList;
+                       buildConfigurations = (
+                               A1E70D610A38B797007BE3E3 /* Debug */,
+                               A1E70D620A38B797007BE3E3 /* Release */,
+                       );
+                       defaultConfigurationIsVisible = 0;
+                       defaultConfigurationName = Release;
+               };
+/* End XCConfigurationList section */
+       };
+       rootObject = 08FB7793FE84155DC02AAC07 /* Project object */;
+}
diff --git a/src/lib/ccapi/server/mac/CCacheServer.plist b/src/lib/ccapi/server/mac/CCacheServer.plist
new file mode 100644 (file)
index 0000000..987cf71
--- /dev/null
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+        <key>ServiceName</key>
+        <string>edu.mit.Kerberos.CCacheServer.ipcService</string>
+        <key>Command</key>
+        <string>/System/Library/CoreServices/CCacheServer.app/Contents/MacOS/CCacheServer</string>
+        <key>OnDemand</key>
+        <true/>
+</dict>
+</plist>
diff --git a/src/lib/ccapi/server/mac/CCacheServerInfo.plist b/src/lib/ccapi/server/mac/CCacheServerInfo.plist
new file mode 100644 (file)
index 0000000..e03d5f3
--- /dev/null
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+       <key>CFBundleDevelopmentRegion</key>
+       <string>English</string>
+       <key>CFBundleExecutable</key>
+       <string>CCacheServer</string>
+       <key>CFBundleGetInfoString</key>
+       <string>4.1</string>
+       <key>CFBundleIconFile</key>
+       <string></string>
+       <key>CFBundleIdentifier</key>
+       <string>edu.mit.Kerberos.CCacheServer</string>
+       <key>CFBundleInfoDictionaryVersion</key>
+       <string>6.0</string>
+       <key>CFBundleName</key>
+       <string>Kerberos Credentials Cache Server</string>
+       <key>CFBundlePackageType</key>
+       <string>APPL</string>
+       <key>CFBundleSignature</key>
+       <string>CCSa</string>
+       <key>CFBundleVersion</key>
+       <string>0.0.1d1</string>
+        <key>CFBundleShortVersionString</key>
+        <string>5.5</string>
+        <key>CFBundleGetInfoString</key>
+        <string>5.5 Copyright MIT</string>
+        <key>KfMDisplayVersion</key>
+        <string>5.5 Copyright MIT</string>
+        <key>KfMDisplayCopyright</key>
+        <string>Copyright MIT</string>
+        <key>NSHumanReadableCopyright</key>
+        <string>5.5 Copyright MIT</string>
+       <key>LSBackgroundOnly</key>
+       <string>1</string>
+</dict>
+</plist>
diff --git a/src/lib/ccapi/server/mac/main.c b/src/lib/ccapi/server/mac/main.c
new file mode 100644 (file)
index 0000000..a9da8da
--- /dev/null
@@ -0,0 +1,33 @@
+#include <stdarg.h>
+#include <stdio.h>
+#include <syslog.h>
+#include "CredentialsCache.h"
+#include "msg.h"
+#include "migServer.h"
+
+#include <Kerberos/kipc_server.h>
+
+int main (int argc, const char *argv[])
+{
+    cc_int32 code = 0;
+    int running = 1;
+
+    openlog (argv[0], LOG_CONS | LOG_PID, LOG_AUTH);
+    syslog (LOG_INFO, "Starting up.");   
+
+    if (!code) {
+        code = ccs_serv_initialize();
+    }
+    
+    if (!code) {
+        code = kipc_server_run_server (ccapi_server);
+    }
+    
+    /* cleanup ccs resources */
+    ccs_serv_cleanup();
+
+    syslog (LOG_NOTICE, "Exiting: %s (%d)", kipc_error_string (code), code);
+
+    /* exit */
+    return code ? 1 : 0;
+}