diff --git a/Makefile b/Makefile
index b018febea10a3ecf8fbcf7e0876e86604e2c2ec5..278824a59aafcb4e0fe9299c8ef7c5ed9bf7a58a 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
 # GRPC global makefile
 # This currently builds C and C++ code.
 
-# Copyright 2014, Google Inc.
+# Copyright 2015, Google Inc.
 # All rights reserved.
 #
 # Redistribution and use in source and binary forms, with or without
@@ -481,6 +481,7 @@ grpc_create_jwt: $(BINDIR)/$(CONFIG)/grpc_create_jwt
 grpc_credentials_test: $(BINDIR)/$(CONFIG)/grpc_credentials_test
 grpc_fetch_oauth2: $(BINDIR)/$(CONFIG)/grpc_fetch_oauth2
 grpc_json_token_test: $(BINDIR)/$(CONFIG)/grpc_json_token_test
+grpc_print_google_default_creds_token: $(BINDIR)/$(CONFIG)/grpc_print_google_default_creds_token
 grpc_stream_op_test: $(BINDIR)/$(CONFIG)/grpc_stream_op_test
 hpack_parser_test: $(BINDIR)/$(CONFIG)/hpack_parser_test
 hpack_table_test: $(BINDIR)/$(CONFIG)/hpack_table_test
@@ -1763,7 +1764,7 @@ test_cxx: buildtests_cxx
 	$(Q) $(BINDIR)/$(CONFIG)/thread_pool_test || ( echo test thread_pool_test failed ; exit 1 )
 
 
-tools: privatelibs $(BINDIR)/$(CONFIG)/gen_hpack_tables $(BINDIR)/$(CONFIG)/grpc_create_jwt $(BINDIR)/$(CONFIG)/grpc_fetch_oauth2
+tools: privatelibs $(BINDIR)/$(CONFIG)/gen_hpack_tables $(BINDIR)/$(CONFIG)/grpc_create_jwt $(BINDIR)/$(CONFIG)/grpc_fetch_oauth2 $(BINDIR)/$(CONFIG)/grpc_print_google_default_creds_token
 
 buildbenchmarks: privatelibs $(BINDIR)/$(CONFIG)/grpc_completion_queue_benchmark $(BINDIR)/$(CONFIG)/low_level_ping_pong_benchmark
 
@@ -2288,7 +2289,10 @@ LIBGRPC_SRC = \
     src/core/security/auth.c \
     src/core/security/base64.c \
     src/core/security/credentials.c \
+    src/core/security/credentials_posix.c \
+    src/core/security/credentials_win32.c \
     src/core/security/factories.c \
+    src/core/security/google_default_credentials.c \
     src/core/security/json_token.c \
     src/core/security/secure_endpoint.c \
     src/core/security/secure_transport_setup.c \
@@ -2429,7 +2433,10 @@ src/core/httpcli/parser.c: $(OPENSSL_DEP)
 src/core/security/auth.c: $(OPENSSL_DEP)
 src/core/security/base64.c: $(OPENSSL_DEP)
 src/core/security/credentials.c: $(OPENSSL_DEP)
+src/core/security/credentials_posix.c: $(OPENSSL_DEP)
+src/core/security/credentials_win32.c: $(OPENSSL_DEP)
 src/core/security/factories.c: $(OPENSSL_DEP)
+src/core/security/google_default_credentials.c: $(OPENSSL_DEP)
 src/core/security/json_token.c: $(OPENSSL_DEP)
 src/core/security/secure_endpoint.c: $(OPENSSL_DEP)
 src/core/security/secure_transport_setup.c: $(OPENSSL_DEP)
@@ -2587,7 +2594,10 @@ $(OBJDIR)/$(CONFIG)/src/core/httpcli/parser.o:
 $(OBJDIR)/$(CONFIG)/src/core/security/auth.o: 
 $(OBJDIR)/$(CONFIG)/src/core/security/base64.o: 
 $(OBJDIR)/$(CONFIG)/src/core/security/credentials.o: 
+$(OBJDIR)/$(CONFIG)/src/core/security/credentials_posix.o: 
+$(OBJDIR)/$(CONFIG)/src/core/security/credentials_win32.o: 
 $(OBJDIR)/$(CONFIG)/src/core/security/factories.o: 
+$(OBJDIR)/$(CONFIG)/src/core/security/google_default_credentials.o: 
 $(OBJDIR)/$(CONFIG)/src/core/security/json_token.o: 
 $(OBJDIR)/$(CONFIG)/src/core/security/secure_endpoint.o: 
 $(OBJDIR)/$(CONFIG)/src/core/security/secure_transport_setup.o: 
@@ -6551,6 +6561,37 @@ endif
 endif
 
 
+GRPC_PRINT_GOOGLE_DEFAULT_CREDS_TOKEN_SRC = \
+    test/core/security/print_google_default_creds_token.c \
+
+GRPC_PRINT_GOOGLE_DEFAULT_CREDS_TOKEN_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(GRPC_PRINT_GOOGLE_DEFAULT_CREDS_TOKEN_SRC))))
+
+ifeq ($(NO_SECURE),true)
+
+# You can't build secure targets if you don't have OpenSSL with ALPN.
+
+$(BINDIR)/$(CONFIG)/grpc_print_google_default_creds_token: openssl_dep_error
+
+else
+
+$(BINDIR)/$(CONFIG)/grpc_print_google_default_creds_token: $(GRPC_PRINT_GOOGLE_DEFAULT_CREDS_TOKEN_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+	$(E) "[LD]      Linking $@"
+	$(Q) mkdir -p `dirname $@`
+	$(Q) $(LD) $(LDFLAGS) $(GRPC_PRINT_GOOGLE_DEFAULT_CREDS_TOKEN_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/grpc_print_google_default_creds_token
+
+endif
+
+$(OBJDIR)/$(CONFIG)/test/core/security/print_google_default_creds_token.o:  $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+
+deps_grpc_print_google_default_creds_token: $(GRPC_PRINT_GOOGLE_DEFAULT_CREDS_TOKEN_OBJS:.o=.dep)
+
+ifneq ($(NO_SECURE),true)
+ifneq ($(NO_DEPS),true)
+-include $(GRPC_PRINT_GOOGLE_DEFAULT_CREDS_TOKEN_OBJS:.o=.dep)
+endif
+endif
+
+
 GRPC_STREAM_OP_TEST_SRC = \
     test/core/transport/stream_op_test.c \
 
diff --git a/build.json b/build.json
index f6ef33b25fc365c5fb794b24702eeb3663f6cb56..3e9d2a7584cbc2419cc8a82bd58cb448e51942e9 100644
--- a/build.json
+++ b/build.json
@@ -320,7 +320,10 @@
         "src/core/security/auth.c",
         "src/core/security/base64.c",
         "src/core/security/credentials.c",
+        "src/core/security/credentials_posix.c",
+        "src/core/security/credentials_win32.c",
         "src/core/security/factories.c",
+        "src/core/security/google_default_credentials.c",
         "src/core/security/json_token.c",
         "src/core/security/secure_endpoint.c",
         "src/core/security/secure_transport_setup.c",
@@ -1186,6 +1189,20 @@
         "gpr"
       ]
     },
+    {
+      "name": "grpc_print_google_default_creds_token",
+      "build": "tool",
+      "language": "c",
+      "src": [
+        "test/core/security/print_google_default_creds_token.c"
+      ],
+      "deps": [
+        "grpc_test_util",
+        "grpc",
+        "gpr_test_util",
+        "gpr"
+      ]
+    },
     {
       "name": "grpc_stream_op_test",
       "build": "test",
diff --git a/include/grpc++/credentials.h b/include/grpc++/credentials.h
index ac6f394847d06ab0eded9b97314cc3a02431f706..5cbcca3aa5e64c1d6e787e81550d7aa320f2c3de 100644
--- a/include/grpc++/credentials.h
+++ b/include/grpc++/credentials.h
@@ -86,17 +86,23 @@ struct SslCredentialsOptions {
 // fail on it.
 class CredentialsFactory {
  public:
-  // Builds credentials with reasonable defaults.
-  static std::unique_ptr<Credentials> DefaultCredentials();
+  // Builds google credentials with reasonable defaults.
+  // WARNING: Do NOT use this credentials to connect to a non-google service as
+  // this could result in an oauth2 token leak.
+  static std::unique_ptr<Credentials> GoogleDefaultCredentials();
 
   // Builds SSL Credentials given SSL specific options
   static std::unique_ptr<Credentials> SslCredentials(
       const SslCredentialsOptions& options);
 
   // Builds credentials for use when running in GCE
+  // WARNING: Do NOT use this credentials to connect to a non-google service as
+  // this could result in an oauth2 token leak.
   static std::unique_ptr<Credentials> ComputeEngineCredentials();
 
   // Builds service account credentials.
+  // WARNING: Do NOT use this credentials to connect to a non-google service as
+  // this could result in an oauth2 token leak.
   // json_key is the JSON key string containing the client's private key.
   // scope is a space-delimited list of the requested permissions.
   // token_lifetime is the lifetime of each token acquired through this service
@@ -106,13 +112,21 @@ class CredentialsFactory {
       const grpc::string& json_key, const grpc::string& scope,
       std::chrono::seconds token_lifetime);
 
+  // Builds JWT credentials.
+  // json_key is the JSON key string containing the client's private key.
+  // token_lifetime is the lifetime of each Json Web Token (JWT) created with
+  // this credentials.  It should not exceed grpc_max_auth_token_lifetime or
+  // will be cropped to this value.
+  static std::unique_ptr<Credentials> JWTCredentials(
+      const grpc::string& json_key, std::chrono::seconds token_lifetime);
+
   // Builds IAM credentials.
   static std::unique_ptr<Credentials> IAMCredentials(
       const grpc::string& authorization_token,
       const grpc::string& authority_selector);
 
   // Combines two credentials objects into a composite credentials
-  static std::unique_ptr<Credentials> ComposeCredentials(
+  static std::unique_ptr<Credentials> CompositeCredentials(
       const std::unique_ptr<Credentials>& creds1,
       const std::unique_ptr<Credentials>& creds2);
 };
diff --git a/include/grpc/grpc_security.h b/include/grpc/grpc_security.h
index 0eae444a9b7622c0a12d859e9b251f25695e9130..4ba4ffc1188d26165b091811ebda530c08e1eea0 100644
--- a/include/grpc/grpc_security.h
+++ b/include/grpc/grpc_security.h
@@ -51,8 +51,10 @@ typedef struct grpc_credentials grpc_credentials;
    The creator of the credentials object is responsible for its release. */
 void grpc_credentials_release(grpc_credentials *creds);
 
-/* Creates default credentials. */
-grpc_credentials *grpc_default_credentials_create(void);
+/* Creates default credentials to connect to a google gRPC service.
+   WARNING: Do NOT use this credentials to connect to a non-google service as
+   this could result in an oauth2 token leak. */
+grpc_credentials *grpc_google_default_credentials_create(void);
 
 /* Environment variable that points to the default SSL roots file. This file
    must be a PEM encoded file with all the roots such as the one that can be
@@ -88,13 +90,17 @@ grpc_credentials *grpc_ssl_credentials_create(
 grpc_credentials *grpc_composite_credentials_create(grpc_credentials *creds1,
                                                     grpc_credentials *creds2);
 
-/* Creates a compute engine credentials object. */
+/* Creates a compute engine credentials object.
+   WARNING: Do NOT use this credentials to connect to a non-google service as
+   this could result in an oauth2 token leak. */
 grpc_credentials *grpc_compute_engine_credentials_create(void);
 
 extern const gpr_timespec grpc_max_auth_token_lifetime;
 
 /* Creates a service account credentials object. May return NULL if the input is
    invalid.
+   WARNING: Do NOT use this credentials to connect to a non-google service as
+   this could result in an oauth2 token leak.
    - json_key is the JSON key string containing the client's private key.
    - scope is a space-delimited list of the requested permissions.
    - token_lifetime is the lifetime of each token acquired through this service
@@ -129,11 +135,6 @@ grpc_credentials *grpc_iam_credentials_create(const char *authorization_token,
    channel, it will just be ignored. */
 #define GRPC_SSL_TARGET_NAME_OVERRIDE_ARG "grpc.ssl_target_name_override"
 
-/* Creates a default secure channel using the default credentials object using
-   the environment. */
-grpc_channel *grpc_default_secure_channel_create(const char *target,
-                                                 const grpc_channel_args *args);
-
 /* Creates a secure channel using the passed-in credentials. */
 grpc_channel *grpc_secure_channel_create(grpc_credentials *creds,
                                          const char *target,
diff --git a/src/core/httpcli/httpcli.c b/src/core/httpcli/httpcli.c
index d372e694e966ac9863af6ab1e81df40720f040c0..d2cf09a8df4bfb2172f5f87bbe8133717239ec6f 100644
--- a/src/core/httpcli/httpcli.c
+++ b/src/core/httpcli/httpcli.c
@@ -216,6 +216,7 @@ static void on_resolved(void *arg, grpc_resolved_addresses *addresses) {
   gpr_log(GPR_DEBUG, "%s", __FUNCTION__);
   if (!addresses) {
     finish(req, 0);
+    return;
   }
   req->addresses = addresses;
   req->next_address = 0;
diff --git a/src/core/json/json.c b/src/core/json/json.c
index df7108a94de696b4ac6d0be54132f18ca673912a..96e11eebb1116ceacdae7c549882415d6047b19c 100644
--- a/src/core/json/json.c
+++ b/src/core/json/json.c
@@ -38,8 +38,8 @@
 #include "src/core/json/json.h"
 
 grpc_json *grpc_json_create(grpc_json_type type) {
-  grpc_json *json = gpr_malloc(sizeof(grpc_json));
-  memset(json, 0, sizeof(grpc_json));
+  grpc_json *json = gpr_malloc(sizeof(*json));
+  memset(json, 0, sizeof(*json));
   json->type = type;
 
   return json;
diff --git a/src/core/json/json_reader.c b/src/core/json/json_reader.c
index 774faa5f239bdfbaf42faadb1d3f475984ba7c6f..5ea4e9569c045a2d993b2316461e513283cdab24 100644
--- a/src/core/json/json_reader.c
+++ b/src/core/json/json_reader.c
@@ -93,7 +93,7 @@ static void json_reader_set_null(grpc_json_reader* reader) {
 /* Call this function to initialize the reader structure. */
 void grpc_json_reader_init(grpc_json_reader* reader,
                            grpc_json_reader_vtable* vtable, void* userdata) {
-  memset(reader, 0, sizeof(grpc_json_reader));
+  memset(reader, 0, sizeof(*reader));
   reader->vtable = vtable;
   reader->userdata = userdata;
   json_reader_string_clear(reader);
diff --git a/src/core/json/json_writer.c b/src/core/json/json_writer.c
index 4c0bf30780dcd102a1466953e2f9734deaf13be0..a40bf1733e68aa310743dce82361dde621cd3e31 100644
--- a/src/core/json/json_writer.c
+++ b/src/core/json/json_writer.c
@@ -51,7 +51,7 @@ static void json_writer_output_string_with_len(grpc_json_writer* writer, const c
 
 void grpc_json_writer_init(grpc_json_writer* writer, int indent,
                            grpc_json_writer_vtable* vtable, void* userdata) {
-  memset(writer, 0, sizeof(grpc_json_writer));
+  memset(writer, 0, sizeof(*writer));
   writer->container_empty = 1;
   writer->indent = indent;
   writer->vtable = vtable;
@@ -77,7 +77,7 @@ static void json_writer_output_indent(
 
   while (spaces >= (sizeof(spacesstr) - 1)) {
     json_writer_output_string_with_len(writer, spacesstr,
-                                            sizeof(spacesstr) - 1);
+                                       sizeof(spacesstr) - 1);
     spaces -= (sizeof(spacesstr) - 1);
   }
 
@@ -117,10 +117,10 @@ static void json_writer_escape_string(grpc_json_writer* writer,
     gpr_uint8 c = (gpr_uint8)*string++;
     if (c == 0) {
       break;
-    } else if ((c >= 32) && (c <= 127)) {
+    } else if ((c >= 32) && (c <= 126)) {
       if ((c == '\\') || (c == '"')) json_writer_output_char(writer, '\\');
       json_writer_output_char(writer, c);
-    } else if (c < 32) {
+    } else if ((c < 32) || (c == 127)) {
       switch (c) {
         case '\b':
           json_writer_output_string_with_len(writer, "\\b", 2);
@@ -161,6 +161,7 @@ static void json_writer_escape_string(grpc_json_writer* writer,
       for (i = 0; i < extra; i++) {
         utf32 <<= 6;
         c = *string++;
+        /* Breaks out and bail on any invalid UTF-8 sequence, including \0. */
         if ((c & 0xc0) != 0x80) {
           valid = 0;
           break;
diff --git a/src/core/security/auth.c b/src/core/security/auth.c
index 92878e3b7e3ce5c8a91954acf1d1b239eed1cd04..9b67d59cb8e6c282c31fb0a14d58a60d8b49077d 100644
--- a/src/core/security/auth.c
+++ b/src/core/security/auth.c
@@ -234,6 +234,9 @@ static void destroy_call_elem(grpc_call_element *elem) {
   if (calld->host != NULL) {
     grpc_mdstr_unref(calld->host);
   }
+  if (calld->method != NULL) {
+    grpc_mdstr_unref(calld->method);
+  }
 }
 
 /* Constructor for channel_data */
@@ -276,6 +279,9 @@ static void destroy_channel_elem(grpc_channel_element *elem) {
   if (channeld->error_msg_key != NULL) {
     grpc_mdstr_unref(channeld->error_msg_key);
   }
+  if (channeld->path_string != NULL) {
+    grpc_mdstr_unref(channeld->path_string);
+  }
 }
 
 const grpc_channel_filter grpc_client_auth_filter = {
diff --git a/src/core/security/credentials.c b/src/core/security/credentials.c
index 42d1a900fc52b69187a02b31033e18e4903e0898..7e72b238c80ed28747f53816aab8c3cf404bf1fd 100644
--- a/src/core/security/credentials.c
+++ b/src/core/security/credentials.c
@@ -1076,7 +1076,3 @@ grpc_credentials *grpc_iam_credentials_create(const char *token,
       c->md_ctx, GRPC_IAM_AUTHORITY_SELECTOR_METADATA_KEY, authority_selector);
   return &c->base;
 }
-
-/* -- Default credentials TODO(jboeuf). -- */
-
-grpc_credentials *grpc_default_credentials_create(void) { return NULL; }
diff --git a/src/core/security/credentials.h b/src/core/security/credentials.h
index 7b8929492b24d73731860f5c700afb6fbf100d98..0a0074c1d53d32d60cbb460f696dffc0ce71578c 100644
--- a/src/core/security/credentials.h
+++ b/src/core/security/credentials.h
@@ -60,8 +60,15 @@ typedef enum {
   "x-goog-iam-authorization-token"
 #define GRPC_IAM_AUTHORITY_SELECTOR_METADATA_KEY "x-goog-iam-authority-selector"
 
+#define GRPC_GOOGLE_CLOUD_SDK_CONFIG_DIRECTORY "gcloud"
+#define GRPC_GOOGLE_WELL_KNOWN_CREDENTIALS_FILE \
+  "application_default_credentials.json"
+
 /* --- grpc_credentials. --- */
 
+/* It is the caller's responsibility to gpr_free the result if not NULL. */
+char *grpc_get_well_known_google_credentials_file_path(void);
+
 typedef void (*grpc_credentials_metadata_cb)(void *user_data,
                                              grpc_mdelem **md_elems,
                                              size_t num_md,
diff --git a/src/core/security/credentials_posix.c b/src/core/security/credentials_posix.c
new file mode 100644
index 0000000000000000000000000000000000000000..79622cb024622d5aabd583ee68a07302e6b9c526
--- /dev/null
+++ b/src/core/security/credentials_posix.c
@@ -0,0 +1,60 @@
+/*
+ *
+ * Copyright 2015, Google Inc.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *     * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#include <grpc/support/port_platform.h>
+
+#ifdef GPR_POSIX_FILE
+
+#include "src/core/security/credentials.h"
+
+#include <grpc/support/alloc.h>
+#include <grpc/support/log.h>
+
+#include "src/core/support/env.h"
+#include "src/core/support/string.h"
+
+char *grpc_get_well_known_google_credentials_file_path(void) {
+  char *result = NULL;
+  char *home = gpr_getenv("HOME");
+  if (home == NULL) {
+    gpr_log(GPR_ERROR, "Could not get HOME environment variable.");
+    return NULL;
+  }
+  gpr_asprintf(&result, "%s/.config/%s/%s", home,
+               GRPC_GOOGLE_CLOUD_SDK_CONFIG_DIRECTORY,
+               GRPC_GOOGLE_WELL_KNOWN_CREDENTIALS_FILE);
+  gpr_free(home);
+  return result;
+}
+
+#endif /* GPR_POSIX_FILE */
diff --git a/src/core/security/credentials_win32.c b/src/core/security/credentials_win32.c
new file mode 100644
index 0000000000000000000000000000000000000000..ddb310468bbf6e1e0b3da97524bb0ada4e31b59b
--- /dev/null
+++ b/src/core/security/credentials_win32.c
@@ -0,0 +1,60 @@
+/*
+ *
+ * Copyright 2015, Google Inc.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *     * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#include <grpc/support/port_platform.h>
+
+#ifdef GPR_WIN32
+
+#include "src/core/security/credentials.h"
+
+#include <grpc/support/alloc.h>
+#include <grpc/support/log.h>
+
+#include "src/core/support/env.h"
+#include "src/core/support/string.h"
+
+char *grpc_get_well_known_google_credentials_file_path(void) {
+  char *result = NULL;
+  char *appdata_path = gpr_getenv("APPDATA");
+  if (appdata_path == NULL) {
+    gpr_log(GPR_ERROR, "Could not get APPDATA environment variable.");
+    return NULL;
+  }
+  gpr_asprintf(&result, "%s/%s/%s", appdata_path,
+               GRPC_GOOGLE_CLOUD_SDK_CONFIG_DIRECTORY,
+               GRPC_GOOGLE_WELL_KNOWN_CREDENTIALS_FILE);
+  gpr_free(appdata_path);
+  return result;
+}
+
+#endif /* GPR_WIN32 */
diff --git a/src/core/security/google_default_credentials.c b/src/core/security/google_default_credentials.c
new file mode 100644
index 0000000000000000000000000000000000000000..dc0e453b8781851f31b022f6873efb95ed460400
--- /dev/null
+++ b/src/core/security/google_default_credentials.c
@@ -0,0 +1,185 @@
+/*
+ *
+ * Copyright 2015, Google Inc.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *     * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#include "src/core/security/credentials.h"
+
+#include <string.h>
+
+#include <grpc/support/alloc.h>
+#include <grpc/support/log.h>
+#include <grpc/support/sync.h>
+
+#include "src/core/httpcli/httpcli.h"
+#include "src/core/support/env.h"
+#include "src/core/support/file.h"
+
+/* -- Constants. -- */
+
+#define GRPC_COMPUTE_ENGINE_DETECTION_HOST "metadata.google.internal"
+#define GRPC_GOOGLE_CREDENTIALS_ENV_VAR "GOOGLE_APPLICATION_CREDENTIALS"
+
+/* -- Default credentials. -- */
+
+static grpc_credentials *default_credentials = NULL;
+static int compute_engine_detection_done = 0;
+static gpr_mu g_mu;
+static gpr_once g_once = GPR_ONCE_INIT;
+
+static void init_default_credentials(void) {
+  gpr_mu_init(&g_mu);
+}
+
+typedef struct {
+  gpr_cv cv;
+  gpr_mu mu;
+  int is_done;
+  int success;
+} compute_engine_detector;
+
+static void on_compute_engine_detection_http_response(
+    void *user_data, const grpc_httpcli_response *response) {
+  compute_engine_detector *detector = (compute_engine_detector *)user_data;
+  if (response != NULL && response->status == 200 && response->hdr_count > 0) {
+    /* Internet providers can return a generic response to all requests, so
+       it is necessary to check that metadata header is present also. */
+    size_t i;
+    for (i = 0; i < response->hdr_count; i++) {
+      grpc_httpcli_header *header = &response->hdrs[i];
+      if (!strcmp(header->key, "Metadata-Flavor") &&
+          !strcmp(header->value, "Google")) {
+        detector->success = 1;
+        break;
+      }
+    }
+  }
+  gpr_mu_lock(&detector->mu);
+  detector->is_done = 1;
+  gpr_mu_unlock(&detector->mu);
+  gpr_cv_signal(&detector->cv);
+}
+
+static int is_stack_running_on_compute_engine(void) {
+  compute_engine_detector detector;
+  grpc_httpcli_request request;
+
+  /* The http call is local. If it takes more than one sec, it is for sure not
+     on compute engine. */
+  gpr_timespec max_detection_delay = {1, 0};
+
+  gpr_mu_init(&detector.mu);
+  gpr_cv_init(&detector.cv);
+  detector.is_done = 0;
+  detector.success = 0;
+
+  memset(&request, 0, sizeof(grpc_httpcli_request));
+  request.host = GRPC_COMPUTE_ENGINE_DETECTION_HOST;
+  request.path = "/";
+
+  grpc_httpcli_get(&request, gpr_time_add(gpr_now(), max_detection_delay),
+                   on_compute_engine_detection_http_response, &detector);
+
+  /* Block until we get the response. This is not ideal but this should only be
+     called once for the lifetime of the process by the default credentials. */
+  gpr_mu_lock(&detector.mu);
+  while (!detector.is_done) {
+    gpr_cv_wait(&detector.cv, &detector.mu, gpr_inf_future);
+  }
+  gpr_mu_unlock(&detector.mu);
+
+  gpr_mu_destroy(&detector.mu);
+  gpr_cv_destroy(&detector.cv);
+  return detector.success;
+}
+
+/* Takes ownership of creds_path if not NULL. */
+static grpc_credentials *create_jwt_creds_from_path(char *creds_path) {
+  grpc_credentials *result = NULL;
+  gpr_slice creds_data;
+  int file_ok = 0;
+  if (creds_path == NULL) return NULL;
+  creds_data = gpr_load_file(creds_path, &file_ok);
+  gpr_free(creds_path);
+  if (file_ok) {
+    result = grpc_jwt_credentials_create(
+        (const char *)GPR_SLICE_START_PTR(creds_data),
+        grpc_max_auth_token_lifetime);
+    gpr_slice_unref(creds_data);
+  }
+  return result;
+}
+
+grpc_credentials *grpc_google_default_credentials_create(void) {
+  grpc_credentials *result = NULL;
+  int serving_cached_credentials = 0;
+  gpr_once_init(&g_once, init_default_credentials);
+
+  gpr_mu_lock(&g_mu);
+
+  if (default_credentials != NULL) {
+    result = default_credentials;
+    serving_cached_credentials = 1;
+    goto end;
+  }
+
+  /* First, try the environment variable. */
+  result =
+      create_jwt_creds_from_path(gpr_getenv(GRPC_GOOGLE_CREDENTIALS_ENV_VAR));
+  if (result != NULL) goto end;
+
+  /* Then the well-known file. */
+  result = create_jwt_creds_from_path(
+      grpc_get_well_known_google_credentials_file_path());
+  if (result != NULL) goto end;
+
+  /* At last try to see if we're on compute engine (do the detection only once
+     since it requires a network test). */
+  if (!compute_engine_detection_done) {
+    int need_compute_engine_creds = is_stack_running_on_compute_engine();
+    compute_engine_detection_done = 1;
+    if (need_compute_engine_creds) {
+      result = grpc_compute_engine_credentials_create();
+    }
+  }
+
+end:
+  if (!serving_cached_credentials && result != NULL) {
+    /* Blend with default ssl credentials and add a global reference so that it
+       can be cached and re-served. */
+    result = grpc_composite_credentials_create(
+        grpc_ssl_credentials_create(NULL, NULL), result);
+    GPR_ASSERT(result != NULL);
+    default_credentials = grpc_credentials_ref(result);
+  }
+  gpr_mu_unlock(&g_mu);
+  return result;
+}
diff --git a/src/core/security/security_context.c b/src/core/security/security_context.c
index fd8baff539d4cf4b0e2a80bda4a2196f260b6cd1..9dce5af7400bf532267099546601f3981288cc9c 100644
--- a/src/core/security/security_context.c
+++ b/src/core/security/security_context.c
@@ -641,9 +641,3 @@ grpc_channel *grpc_secure_channel_create_with_factories(
           creds->type);
   return grpc_lame_client_channel_create();
 }
-
-grpc_channel *grpc_default_secure_channel_create(
-    const char *target, const grpc_channel_args *args) {
-  return grpc_secure_channel_create(grpc_default_credentials_create(), target,
-                                    args);
-}
diff --git a/src/cpp/client/credentials.cc b/src/cpp/client/credentials.cc
index 66571cad73dc0cc70b9e7e9fb46234fcf9efd231..a140f551e0dffc918223cf4deb3b8fd2ee9f9238 100644
--- a/src/cpp/client/credentials.cc
+++ b/src/cpp/client/credentials.cc
@@ -45,8 +45,8 @@ Credentials::Credentials(grpc_credentials *c_creds) : creds_(c_creds) {}
 Credentials::~Credentials() { grpc_credentials_release(creds_); }
 grpc_credentials *Credentials::GetRawCreds() { return creds_; }
 
-std::unique_ptr<Credentials> CredentialsFactory::DefaultCredentials() {
-  grpc_credentials *c_creds = grpc_default_credentials_create();
+std::unique_ptr<Credentials> CredentialsFactory::GoogleDefaultCredentials() {
+  grpc_credentials *c_creds = grpc_google_default_credentials_create();
   std::unique_ptr<Credentials> cpp_creds(new Credentials(c_creds));
   return cpp_creds;
 }
@@ -86,6 +86,18 @@ std::unique_ptr<Credentials> CredentialsFactory::ServiceAccountCredentials(
   return cpp_creds;
 }
 
+// Builds JWT credentials.
+std::unique_ptr<Credentials> CredentialsFactory::JWTCredentials(
+    const grpc::string &json_key, std::chrono::seconds token_lifetime) {
+  gpr_timespec lifetime = gpr_time_from_seconds(
+      token_lifetime.count() > 0 ? token_lifetime.count() : 0);
+  grpc_credentials *c_creds =
+      grpc_jwt_credentials_create(json_key.c_str(), lifetime);
+  std::unique_ptr<Credentials> cpp_creds(
+      c_creds == nullptr ? nullptr : new Credentials(c_creds));
+  return cpp_creds;
+}
+
 // Builds IAM credentials.
 std::unique_ptr<Credentials> CredentialsFactory::IAMCredentials(
     const grpc::string &authorization_token,
@@ -98,7 +110,7 @@ std::unique_ptr<Credentials> CredentialsFactory::IAMCredentials(
 }
 
 // Combines two credentials objects into a composite credentials.
-std::unique_ptr<Credentials> CredentialsFactory::ComposeCredentials(
+std::unique_ptr<Credentials> CredentialsFactory::CompositeCredentials(
     const std::unique_ptr<Credentials> &creds1,
     const std::unique_ptr<Credentials> &creds2) {
   // Note that we are not saving unique_ptrs to the two credentials
diff --git a/src/node/examples/pubsub/empty.proto b/src/node/examples/pubsub/empty.proto
new file mode 100644
index 0000000000000000000000000000000000000000..5d6eb1084119fbf2c9c87803a307b47f24fc2665
--- /dev/null
+++ b/src/node/examples/pubsub/empty.proto
@@ -0,0 +1,44 @@
+// This file will be moved to a new location.
+
+// Copyright 2015, Google Inc.
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+//     * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+//     * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+//     * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+syntax = "proto2";
+
+package proto2;
+
+// An empty message that you can re-use to avoid defining duplicated empty
+// messages in your project. A typical example is to use it as argument or the
+// return value of a service API. For instance:
+//
+//   service Foo {
+//     rpc Bar (proto2.Empty) returns (proto2.Empty) { };
+//   };
+//
+message Empty {}
diff --git a/src/node/examples/pubsub/label.proto b/src/node/examples/pubsub/label.proto
new file mode 100644
index 0000000000000000000000000000000000000000..0af15a25a610443eebbfbd6770ad3b5bf3534db6
--- /dev/null
+++ b/src/node/examples/pubsub/label.proto
@@ -0,0 +1,79 @@
+// This file will be moved to a new location.
+
+// Copyright 2015, Google Inc.
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+//     * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+//     * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+//     * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+// Labels provide a way to associate user-defined metadata with various
+// objects.  Labels may be used to organize objects into non-hierarchical
+// groups; think metadata tags attached to mp3s.
+
+syntax = "proto2";
+
+package tech.label;
+
+// A key-value pair applied to a given object.
+message Label {
+  // The key of a label is a syntactically valid URL (as per RFC 1738) with
+  // the "scheme" and initial slashes omitted and with the additional
+  // restrictions noted below.  Each key should be globally unique.  The
+  // "host" portion is called the "namespace" and is not necessarily
+  // resolvable to a network endpoint.  Instead, the namespace indicates what
+  // system or entity defines the semantics of the label.  Namespaces do not
+  // restrict the set of objects to which a label may be associated.
+  //
+  // Keys are defined by the following grammar:
+  //
+  //   key          = hostname "/" kpath
+  //   kpath        = ksegment *[ "/" ksegment ]
+  //   ksegment     = alphadigit | *[ alphadigit | "-" | "_" | "." ]
+  //
+  // where "hostname" and "alphadigit" are defined as in RFC 1738.
+  //
+  // Example key:
+  //   spanner.google.com/universe
+  required string key = 1;
+
+  // The value of the label.
+  oneof value {
+    // A string value.
+    string str_value = 2;
+    // An integer value.
+    int64 num_value = 3;
+  }
+}
+
+// A collection of labels, such as the set of all labels attached to an
+// object.  Each label in the set must have a different key.
+//
+// Users should prefer to embed "repeated Label" directly when possible.
+// This message should only be used in cases where that isn't possible (e.g.
+// with oneof).
+message Labels {
+  repeated Label label = 1;
+}
diff --git a/src/node/examples/pubsub/pubsub.proto b/src/node/examples/pubsub/pubsub.proto
new file mode 100644
index 0000000000000000000000000000000000000000..41a354773fb93dc9251ecc97267c3f9dababd424
--- /dev/null
+++ b/src/node/examples/pubsub/pubsub.proto
@@ -0,0 +1,734 @@
+// This file will be moved to a new location.
+
+// Copyright 2015, Google Inc.
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+//     * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+//     * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+//     * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+// Specification of the Pubsub API.
+
+syntax = "proto2";
+
+import "empty.proto";
+import "label.proto";
+
+package tech.pubsub;
+
+// -----------------------------------------------------------------------------
+// Overview of the Pubsub API
+// -----------------------------------------------------------------------------
+
+// This file describes an API for a Pubsub system.  This system provides a
+// reliable many-to-many communication mechanism between independently written
+// publishers and subscribers where the publisher publishes messages to "topics"
+// and each subscriber creates a "subscription" and consumes messages from it.
+//
+// (a) The pubsub system maintains bindings between topics and subscriptions.
+// (b) A publisher publishes messages into a topic.
+// (c) The pubsub system delivers messages from topics into relevant
+//     subscriptions.
+// (d) A subscriber receives pending messages from its subscription and
+//     acknowledges or nacks each one to the pubsub system.
+// (e) The pubsub system removes acknowledged messages from that subscription.
+
+// -----------------------------------------------------------------------------
+// Data Model
+// -----------------------------------------------------------------------------
+
+// The data model consists of the following:
+//
+// * Topic: A topic is a resource to which messages are published by publishers.
+//     Topics are named, and the name of the topic is unique within the pubsub
+//     system.
+//
+// * Subscription: A subscription records the subscriber's interest in a topic.
+//     It can optionally include a query to select a subset of interesting
+//     messages.  The pubsub system maintains a logical cursor tracking the
+//     matching messages which still need to be delivered and acked so that
+//     they can retried as needed.  The set of messages that have not been
+//     acknowledged is called the subscription backlog.
+//
+// * Message: A message is a unit of data that flows in the system.  It contains
+//     opaque data from the publisher along with its labels.
+//
+// * Message Labels (optional): A set of opaque key, value pairs assigned
+//     by the publisher which the subscriber can use for filtering out messages
+//     in the topic.  For example, a label with key "foo.com/device_type" and
+//     value "mobile" may be added for messages that are only relevant for a
+//     mobile subscriber; a subscriber on a phone may decide to create a
+//     subscription only for messages that have this label.
+
+// -----------------------------------------------------------------------------
+// Publisher Flow
+// -----------------------------------------------------------------------------
+
+// A publisher publishes messages to the topic using the Publish request:
+//
+//   PubsubMessage message;
+//   message.set_data("....");
+//   Label label;
+//   label.set_key("foo.com/key1");
+//   label.set_str_value("value1");
+//   message.add_label(label);
+//   PublishRequest request;
+//   request.set_topic("topicName");
+//   request.set_message(message);
+//   PublisherService.Publish(request);
+
+// -----------------------------------------------------------------------------
+// Subscriber Flow
+// -----------------------------------------------------------------------------
+
+// The subscriber part of the API is richer than the publisher part and has a
+// number of concepts w.r.t. subscription creation and monitoring:
+//
+// (1) A subscriber creates a subscription using the CreateSubscription call.
+//     It may specify an optional "query" to indicate that it wants to receive
+//     only messages with a certain set of labels using the label query syntax.
+//     It may also specify an optional truncation policy to indicate when old
+//     messages from the subcription can be removed.
+//
+// (2) A subscriber receives messages in one of two ways: via push or pull.
+//
+// (a) To receive messages via push, the PushConfig field must be specified in
+//     the Subscription parameter when creating a subscription.  The PushConfig
+//     specifies an endpoint at which the subscriber must expose the
+//     PushEndpointService.  Messages are received via the HandlePubsubEvent
+//     method.  The push subscriber responds to the HandlePubsubEvent method
+//     with a result code that indicates one of three things: Ack (the message
+//     has been successfully processed and the Pubsub system may delete it),
+//     Nack (the message has been rejected, the Pubsub system should resend it
+//     at a later time), or Push-Back (this is a Nack with the additional
+//     semantics that the subscriber is overloaded and the pubsub system should
+//     back off on the rate at which it is invoking HandlePubsubEvent).  The
+//     endpoint may be a load balancer for better scalability.
+//
+// (b) To receive messages via pull a subscriber calls the Pull method on the
+//     SubscriberService to get messages from the subscription.  For each
+//     individual message, the subscriber may use the ack_id received in the
+//     PullResponse to Ack the message, Nack the message, or modify the ack
+//     deadline with ModifyAckDeadline.  See the
+//     Subscription.ack_deadline_seconds field documentation for details on the
+//     ack deadline behavior.
+//
+//     Note: Messages may be consumed in parallel by multiple subscribers making
+//       Pull calls to the same subscription; this will result in the set of
+//       messages from the subscription being shared and each subscriber
+//       receiving a subset of the messages.
+//
+// (4) The subscriber can explicitly truncate the current subscription.
+//
+// (5) "Truncated" events are delivered when a subscription is
+//     truncated, whether due to the subscription's truncation policy
+//     or an explicit request from the subscriber.
+//
+// Subscription creation:
+//
+//   Subscription subscription;
+//   subscription.set_topic("topicName");
+//   subscription.set_name("subscriptionName");
+//   subscription.push_config().set_push_endpoint("machinename:8888");
+//   SubscriberService.CreateSubscription(subscription);
+//
+// Consuming messages via push:
+//
+//  TODO(eschapira): Add HTTP push example.
+//
+//  The port 'machinename:8888' must be bound to a stubby server that implements
+//  the PushEndpointService with the following method:
+//
+//   int HandlePubsubEvent(PubsubEvent event) {
+//     if (event.subscription().equals("subscriptionName")) {
+//       if (event.has_message()) {
+//         Process(event.message().data());
+//       } else if (event.truncated()) {
+//         ProcessTruncatedEvent();
+//       }
+//     }
+//     return OK;  // This return code implies an acknowledgment
+//   }
+//
+// Consuming messages via pull:
+//
+//  The subscription must be created without setting the push_config field.
+//
+//   PullRequest pull_request;
+//   pull_request.set_subscription("subscriptionName");
+//   pull_request.set_return_immediately(false);
+//   while (true) {
+//     PullResponse pull_response;
+//     if (SubscriberService.Pull(pull_request, pull_response) == OK) {
+//       PubsubEvent event = pull_response.pubsub_event();
+//       if (event.has_message()) {
+//         Process(event.message().data());
+//       } else if (event.truncated()) {
+//         ProcessTruncatedEvent();
+//       }
+//       AcknowledgeRequest ack_request;
+//       ackRequest.set_subscription("subscriptionName");
+//       ackRequest.set_ack_id(pull_response.ack_id());
+//       SubscriberService.Acknowledge(ack_request);
+//     }
+//   }
+
+// -----------------------------------------------------------------------------
+// Reliability Semantics
+// -----------------------------------------------------------------------------
+
+// When a subscriber successfully creates a subscription using
+// Subscriber.CreateSubscription, it establishes a "subscription point" with
+// respect to that subscription - the subscriber is guaranteed to receive any
+// message published after this subscription point that matches the
+// subscription's query.  Note that messages published before the Subscription
+// point may or may not be delivered.
+//
+// If the system truncates the subscription according to the specified
+// truncation policy, the system delivers a subscription status event with the
+// "truncated" field set to true.  We refer to such events as "truncation
+// events".  A truncation event:
+//
+// * Informs the subscriber that part of the subscription messages have been
+//   discarded.  The subscriber may want to recover from the message loss, e.g.,
+//   by resyncing its state with its backend.
+// * Establishes a new subscription point, i.e., the subscriber is guaranteed to
+//   receive all changes published after the trunction event is received (or
+//   until another truncation event is received).
+//
+// Note that messages are not delivered in any particular order by the pubsub
+// system.  Furthermore, the system guarantees at-least-once delivery
+// of each message or truncation events until acked.
+
+// -----------------------------------------------------------------------------
+// Deletion
+// -----------------------------------------------------------------------------
+
+// Both topics and subscriptions may be deleted.  Deletion of a topic implies
+// deletion of all attached subscriptions.
+//
+// When a subscription is deleted directly by calling DeleteSubscription, all
+// messages are immediately dropped.  If it is a pull subscriber, future pull
+// requests will return NOT_FOUND.
+//
+// When a topic is deleted all corresponding subscriptions are immediately
+// deleted, and subscribers experience the same behavior as directly deleting
+// the subscription.
+
+// -----------------------------------------------------------------------------
+// The Publisher service and its protos.
+// -----------------------------------------------------------------------------
+
+// The service that an application uses to manipulate topics, and to send
+// messages to a topic.
+service PublisherService {
+
+  // Creates the given topic with the given name.
+  rpc CreateTopic(Topic) returns (Topic) {
+  }
+
+  // Adds a message to the topic.  Returns NOT_FOUND if the topic does not
+  // exist.
+  // (-- For different error code values returned via Stubby, see
+  // util/task/codes.proto. --)
+  rpc Publish(PublishRequest) returns (proto2.Empty) {
+  }
+
+  // Adds one or more messages to the topic. Returns NOT_FOUND if the topic does
+  // not exist.
+  rpc PublishBatch(PublishBatchRequest) returns (PublishBatchResponse) {
+  }
+
+  // Gets the configuration of a topic. Since the topic only has the name
+  // attribute, this method is only useful to check the existence of a topic.
+  // If other attributes are added in the future, they will be returned here.
+  rpc GetTopic(GetTopicRequest) returns (Topic) {
+  }
+
+  // Lists matching topics.
+  rpc ListTopics(ListTopicsRequest) returns (ListTopicsResponse) {
+  }
+
+  // Deletes the topic with the given name.  All subscriptions to this topic
+  // are also deleted. Returns NOT_FOUND if the topic does not exist.
+  // After a topic is deleted, a new topic may be created with the same name.
+  rpc DeleteTopic(DeleteTopicRequest) returns (proto2.Empty)  {
+  }
+}
+
+// A topic resource.
+message Topic {
+  // Name of the topic.
+  optional string name = 1;
+}
+
+// A message data and its labels.
+message PubsubMessage {
+  // The message payload.
+  optional bytes data = 1;
+
+  // Optional list of labels for this message. Keys in this collection must
+  // be unique.
+  //(-- TODO(eschapira): Define how key namespace may be scoped to the topic.--)
+  repeated tech.label.Label label = 2;
+
+  // ID of this message assigned by the server at publication time. Guaranteed
+  // to be unique within the topic. This value may be read by a subscriber
+  // that receives a PubsubMessage via a Pull call or a push delivery. It must
+  // not be populated by a publisher in a Publish call.
+  optional string message_id = 3;
+}
+
+// Request for the GetTopic method.
+message GetTopicRequest {
+  // The name of the topic to get.
+  optional string topic = 1;
+}
+
+// Request for the Publish method.
+message PublishRequest {
+  // The message in the request will be published on this topic.
+  optional string topic = 1;
+
+  // The message to publish.
+  optional PubsubMessage message = 2;
+}
+
+// Request for the PublishBatch method.
+message PublishBatchRequest {
+  // The messages in the request will be published on this topic.
+  optional string topic = 1;
+
+  // The messages to publish.
+  repeated PubsubMessage messages = 2;
+}
+
+// Response for the PublishBatch method.
+message PublishBatchResponse {
+  // The server-assigned ID of each published message, in the same order as
+  // the messages in the request. IDs are guaranteed to be unique within
+  // the topic.
+  repeated string message_ids = 1;
+}
+
+// Request for the ListTopics method.
+message ListTopicsRequest {
+  // A valid label query expression.
+  //
+  optional string query = 1;
+
+  // Maximum number of topics to return.
+  // (-- If not specified or <= 0, the implementation will select a reasonable
+  // value. --)
+  optional int32 max_results = 2;
+
+  // The value obtained in the last <code>ListTopicsResponse</code>
+  // for continuation.
+  optional string page_token = 3;
+
+}
+
+// Response for the ListTopics method.
+message ListTopicsResponse {
+  // The resulting topics.
+  repeated Topic topic = 1;
+
+  // If not empty, indicates that there are more topics that match the request,
+  // and this value should be passed to the next <code>ListTopicsRequest</code>
+  // to continue.
+  optional string next_page_token = 2;
+}
+
+// Request for the Delete method.
+message DeleteTopicRequest {
+  // Name of the topic to delete.
+  optional string topic = 1;
+}
+
+// -----------------------------------------------------------------------------
+// The Subscriber service and its protos.
+// -----------------------------------------------------------------------------
+
+// The service that an application uses to manipulate subscriptions and to
+// consume messages from a subscription via the pull method.
+service SubscriberService {
+
+  // Creates a subscription on a given topic for a given subscriber.
+  // If the subscription already exists, returns ALREADY_EXISTS.
+  // If the corresponding topic doesn't exist, returns NOT_FOUND.
+  //
+  // If the name is not provided in the request, the server will assign a random
+  // name for this subscription on the same project as the topic.
+  rpc CreateSubscription(Subscription) returns (Subscription) {
+  }
+
+  // Gets the configuration details of a subscription.
+  rpc GetSubscription(GetSubscriptionRequest) returns (Subscription) {
+  }
+
+  // Lists matching subscriptions.
+  rpc ListSubscriptions(ListSubscriptionsRequest)
+      returns (ListSubscriptionsResponse) {
+  }
+
+  // Deletes an existing subscription. All pending messages in the subscription
+  // are immediately dropped. Calls to Pull after deletion will return
+  // NOT_FOUND.
+  rpc DeleteSubscription(DeleteSubscriptionRequest) returns (proto2.Empty) {
+  }
+
+  // Removes all the pending messages in the subscription and releases the
+  // storage associated with them. Results in a truncation event to be sent to
+  // the subscriber. Messages added after this call returns are stored in the
+  // subscription as before.
+  rpc TruncateSubscription(TruncateSubscriptionRequest) returns (proto2.Empty) {
+  }
+
+  //
+  // Push subscriber calls.
+  //
+
+  // Modifies the <code>PushConfig</code> for a specified subscription.
+  // This method can be used to suspend the flow of messages to an endpoint
+  // by clearing the <code>PushConfig</code> field in the request. Messages
+  // will be accumulated for delivery even if no push configuration is
+  // defined or while the configuration is modified.
+  rpc ModifyPushConfig(ModifyPushConfigRequest) returns (proto2.Empty) {
+  }
+
+  //
+  // Pull Subscriber calls
+  //
+
+  // Pulls a single message from the server.
+  // If return_immediately is true, and no messages are available in the
+  // subscription, this method returns FAILED_PRECONDITION. The system is free
+  // to return an UNAVAILABLE error if no messages are available in a
+  // reasonable amount of time (to reduce system load).
+  rpc Pull(PullRequest) returns (PullResponse) {
+  }
+
+  // Pulls messages from the server. Returns an empty list if there are no
+  // messages available in the backlog. The system is free to return UNAVAILABLE
+  // if there are too many pull requests outstanding for the given subscription.
+  rpc PullBatch(PullBatchRequest) returns (PullBatchResponse) {
+  }
+
+  // Modifies the Ack deadline for a message received from a pull request.
+  rpc ModifyAckDeadline(ModifyAckDeadlineRequest) returns (proto2.Empty) {
+  }
+
+  // Acknowledges a particular received message: the Pub/Sub system can remove
+  // the given message from the subscription. Acknowledging a message whose
+  // Ack deadline has expired may succeed, but the message could have been
+  // already redelivered. Acknowledging a message more than once will not
+  // result in an error. This is only used for messages received via pull.
+  rpc Acknowledge(AcknowledgeRequest) returns (proto2.Empty) {
+  }
+
+  // Refuses processing a particular received message. The system will
+  // redeliver this message to some consumer of the subscription at some
+  // future time. This is only used for messages received via pull.
+  rpc Nack(NackRequest) returns (proto2.Empty) {
+  }
+}
+
+// A subscription resource.
+message Subscription {
+  // Name of the subscription.
+  optional string name = 1;
+
+  // The name of the topic from which this subscription is receiving messages.
+  optional string topic = 2;
+
+  // If <code>query</code> is non-empty, only messages on the subscriber's
+  // topic whose labels match the query will be returned. Otherwise all
+  // messages on the topic will be returned.
+  //
+  optional string query = 3;
+
+  // The subscriber may specify requirements for truncating unacknowledged
+  // subscription entries. The system will honor the
+  // <code>CreateSubscription</code> request only if it can meet these
+  // requirements. If this field is not specified, messages are never truncated
+  // by the system.
+  optional TruncationPolicy truncation_policy = 4;
+
+  // Specifies which messages can be truncated by the system.
+  message TruncationPolicy {
+    oneof policy {
+      // If <code>max_bytes</code> is specified, the system is allowed to drop
+      // old messages to keep the combined size of stored messages under
+      // <code>max_bytes</code>. This is a hint; the system may keep more than
+      // this many bytes, but will make a best effort to keep the size from
+      // growing much beyond this parameter.
+      int64 max_bytes = 1;
+
+      // If <code>max_age_seconds</code> is specified, the system is allowed to
+      // drop messages that have been stored for at least this many seconds.
+      // This is a hint; the system may keep these messages, but will make a
+      // best effort to remove them when their maximum age is reached.
+      int64 max_age_seconds = 2;
+    }
+  }
+
+  // If push delivery is used with this subscription, this field is
+  // used to configure it.
+  optional PushConfig push_config = 5;
+
+  // For either push or pull delivery, the value is the maximum time after a
+  // subscriber receives a message before the subscriber should acknowledge or
+  // Nack the message. If the Ack deadline for a message passes without an
+  // Ack or a Nack, the Pub/Sub system will eventually redeliver the message.
+  // If a subscriber acknowledges after the deadline, the Pub/Sub system may
+  // accept the Ack, but it is possible that the message has been already
+  // delivered again. Multiple Acks to the message are allowed and will
+  // succeed.
+  //
+  // For push delivery, this value is used to set the request timeout for
+  // the call to the push endpoint.
+  //
+  // For pull delivery, this value is used as the initial value for the Ack
+  // deadline. It may be overridden for a specific pull request (message) with
+  // <code>ModifyAckDeadline</code>.
+  // While a message is outstanding (i.e. it has been delivered to a pull
+  // subscriber and the subscriber has not yet Acked or Nacked), the Pub/Sub
+  // system will not deliver that message to another pull subscriber
+  // (on a best-effort basis).
+  optional int32 ack_deadline_seconds = 6;
+
+  // If this parameter is set to n, the system is allowed to (but not required
+  // to) delete the subscription when at least n seconds have elapsed since the
+  // client presence was detected. (Presence is detected through any
+  // interaction using the subscription ID, including Pull(), Get(), or
+  // acknowledging a message.)
+  //
+  // If this parameter is not set, the subscription will stay live until
+  // explicitly deleted.
+  //
+  // Clients can detect such garbage collection when a Get call or a Pull call
+  // (for pull subscribers only) returns NOT_FOUND.
+  optional int64 garbage_collect_seconds = 7;
+}
+
+// Configuration for a push delivery endpoint.
+message PushConfig {
+  // A URL locating the endpoint to which messages should be pushed.
+  // For example, a Webhook endpoint might use "https://example.com/push".
+  // (-- An Android application might use "gcm:<REGID>", where <REGID> is a
+  // GCM registration id allocated for pushing messages to the application. --)
+  optional string push_endpoint = 1;
+}
+
+// An event indicating a received message or truncation event.
+message PubsubEvent {
+  // The subscription that received the event.
+  optional string subscription = 1;
+
+  oneof type {
+    // A received message.
+    PubsubMessage message = 2;
+
+    // Indicates that this subscription has been truncated.
+    bool truncated = 3;
+
+    // Indicates that this subscription has been deleted. (Note that pull
+    // subscribers will always receive NOT_FOUND in response in their pull
+    // request on the subscription, rather than seeing this boolean.)
+    bool deleted = 4;
+  }
+}
+
+// Request for the GetSubscription method.
+message GetSubscriptionRequest {
+  // The name of the subscription to get.
+  optional string subscription = 1;
+}
+
+// Request for the ListSubscriptions method.
+message ListSubscriptionsRequest {
+  // A valid label query expression.
+  // (-- Which labels are required or supported is implementation-specific.
+  // TODO(eschapira): This method must support to query by topic. We must
+  // define the key URI for the "topic" label. --)
+  optional string query = 1;
+
+  // Maximum number of subscriptions to return.
+  // (-- If not specified or <= 0, the implementation will select a reasonable
+  // value. --)
+  optional int32 max_results = 3;
+
+  // The value obtained in the last <code>ListSubscriptionsResponse</code>
+  // for continuation.
+  optional string page_token = 4;
+}
+
+// Response for the ListSubscriptions method.
+message ListSubscriptionsResponse {
+  // The subscriptions that match the request.
+  repeated Subscription subscription = 1;
+
+  // If not empty, indicates that there are more subscriptions that match the
+  // request and this value should be passed to the next
+  // <code>ListSubscriptionsRequest</code> to continue.
+  optional string next_page_token = 2;
+}
+
+// Request for the TruncateSubscription method.
+message TruncateSubscriptionRequest {
+  // The subscription that is being truncated.
+  optional string subscription = 1;
+}
+
+// Request for the DeleteSubscription method.
+message DeleteSubscriptionRequest {
+  // The subscription to delete.
+  optional string subscription = 1;
+}
+
+// Request for the ModifyPushConfig method.
+message ModifyPushConfigRequest {
+  // The name of the subscription.
+  optional string subscription = 1;
+
+  // An empty <code>push_config</code> indicates that the Pub/Sub system should
+  // pause pushing messages from the given subscription.
+  optional PushConfig push_config = 2;
+}
+
+// -----------------------------------------------------------------------------
+// The protos used by a pull subscriber.
+// -----------------------------------------------------------------------------
+
+// Request for the Pull method.
+message PullRequest {
+  // The subscription from which a message should be pulled.
+  optional string subscription = 1;
+
+  // If this is specified as true the system will respond immediately even if
+  // it is not able to return a message in the Pull response. Otherwise the
+  // system is allowed to wait until at least one message is available rather
+  // than returning FAILED_PRECONDITION. The client may cancel the request if
+  // it does not wish to wait any longer for the response.
+  optional bool return_immediately = 2;
+}
+
+// Either a <code>PubsubMessage</code> or a truncation event. One of these two
+// must be populated.
+message PullResponse {
+  // This ID must be used to acknowledge the received event or message.
+  optional string ack_id = 1;
+
+  // A pubsub message or truncation event.
+  optional PubsubEvent pubsub_event = 2;
+}
+
+// Request for the PullBatch method.
+message PullBatchRequest {
+  // The subscription from which messages should be pulled.
+  optional string subscription = 1;
+
+  // If this is specified as true the system will respond immediately even if
+  // it is not able to return a message in the Pull response. Otherwise the
+  // system is allowed to wait until at least one message is available rather
+  // than returning no messages. The client may cancel the request if it does
+  // not wish to wait any longer for the response.
+  optional bool return_immediately = 2;
+
+  // The maximum number of PubsubEvents returned for this request. The Pub/Sub
+  // system may return fewer than the number of events specified.
+  optional int32 max_events = 3;
+}
+
+// Response for the PullBatch method.
+message PullBatchResponse {
+
+  // Received Pub/Sub messages or status events. The Pub/Sub system will return
+  // zero messages if there are no more messages available in the backlog. The
+  // Pub/Sub system may return fewer than the max_events requested even if
+  // there are more messages available in the backlog.
+  repeated PullResponse pull_responses = 2;
+}
+
+// Request for the ModifyAckDeadline method.
+message ModifyAckDeadlineRequest {
+  // The name of the subscription from which messages are being pulled.
+  optional string subscription = 1;
+
+  // The acknowledgment ID.
+  optional string ack_id = 2;
+
+  // The new Ack deadline. Must be >= 0.
+  optional int32 ack_deadline_seconds = 3;
+}
+
+// Request for the Acknowledge method.
+message AcknowledgeRequest {
+  // The subscription whose message is being acknowledged.
+  optional string subscription = 1;
+
+  // The acknowledgment ID for the message being acknowledged. This was
+  // returned by the Pub/Sub system in the Pull response.
+  repeated string ack_id = 2;
+}
+
+// Request for the Nack method.
+message NackRequest {
+  // The subscription whose message is being Nacked.
+  optional string subscription = 1;
+
+  // The acknowledgment ID for the message being refused. This was returned by
+  // the Pub/Sub system in the Pull response.
+  repeated string ack_id = 2;
+}
+
+// -----------------------------------------------------------------------------
+// The service and protos used by a push subscriber.
+// -----------------------------------------------------------------------------
+
+// The service that a subscriber uses to handle messages sent via push
+// delivery.
+// This service is not currently exported for HTTP clients.
+// TODO(eschapira): Explain HTTP subscribers.
+service PushEndpointService {
+  // Sends a <code>PubsubMessage</code> or a subscription status event to a
+  // push endpoint.
+  // The push endpoint responds with an empty message and a code from
+  // util/task/codes.proto. The following codes have a particular meaning to the
+  // Pub/Sub system:
+  // OK          - This is interpreted by Pub/Sub as Ack.
+  // ABORTED     - This is intepreted by Pub/Sub as a Nack, without implying
+  //               pushback for congestion control.  The Pub/Sub system will
+  //               retry this message at a later time.
+  // UNAVAILABLE - This is intepreted by Pub/Sub as a Nack, with the additional
+  //               semantics of push-back.  The Pub/Sub system will use an AIMD
+  //               congestion control algorithm to backoff the rate of sending
+  //               messages from this subscription.
+  // Any other code, or a failure to respond, will be interpreted in the same
+  // way as ABORTED; i.e. the system will retry the message at a later time to
+  // ensure reliable delivery.
+  rpc HandlePubsubEvent(PubsubEvent) returns (proto2.Empty);
+}
diff --git a/src/node/examples/pubsub/pubsub_demo.js b/src/node/examples/pubsub/pubsub_demo.js
new file mode 100644
index 0000000000000000000000000000000000000000..a9b6acbd7e40414ac8376ba017d2c9bfa008b8a5
--- /dev/null
+++ b/src/node/examples/pubsub/pubsub_demo.js
@@ -0,0 +1,277 @@
+// Copyright 2015, Google Inc.
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+//     * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+//     * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+//     * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+var async = require('async');
+var fs = require('fs');
+var GoogleAuth = require('googleauth');
+var parseArgs = require('minimist');
+var strftime = require('strftime');
+var _ = require('underscore');
+var grpc = require('../..');
+var PROTO_PATH = __dirname + '/pubsub.proto';
+var pubsub = grpc.load(PROTO_PATH).tech.pubsub;
+
+function PubsubRunner(pub, sub, args) {
+  this.pub = pub;
+  this.sub = sub;
+  this.args = args;
+}
+
+PubsubRunner.prototype.getTestTopicName = function() {
+  var base_name = '/topics/' + this.args.project_id + '/';
+  if (this.args.topic_name) {
+    return base_name + this.args.topic_name;
+  }
+  var now_text = strftime('%Y%m%d%H%M%S%L');
+  return base_name + process.env.USER + '-' + now_text;
+};
+
+PubsubRunner.prototype.getTestSubName = function() {
+  var base_name = '/subscriptions/' + this.args.project_id + '/';
+  if (this.args.sub_name) {
+    return base_name + this.args.sub_name;
+  }
+  var now_text = strftime('%Y%m%d%H%M%S%L');
+  return base_name + process.env.USER + '-' + now_text;
+};
+
+PubsubRunner.prototype.listProjectTopics = function(callback) {
+  var q = ('cloud.googleapis.com/project in (/projects/' +
+      this.args.project_id + ')');
+  this.pub.listTopics({query: q}, callback);
+};
+
+PubsubRunner.prototype.topicExists = function(name, callback) {
+  this.listProjectTopics(function(err, response) {
+    if (err) {
+      callback(err);
+    } else {
+      callback(null, _.some(response.topic, function(t) {
+        return t.name === name;
+      }));
+    }
+  });
+};
+
+PubsubRunner.prototype.createTopicIfNeeded = function(name, callback) {
+  var self = this;
+  this.topicExists(name, function(err, exists) {
+    if (err) {
+      callback(err);
+    } else{
+      if (exists) {
+        callback(null);
+      } else {
+        self.pub.createTopic({name: name}, callback);
+      }
+    }
+  });
+};
+
+PubsubRunner.prototype.removeTopic = function(callback) {
+  var name = this.getTestTopicName();
+  console.log('... removing Topic', name);
+  this.pub.deleteTopic({topic: name}, function(err, value) {
+    if (err) {
+      console.log('Could not delete a topic: rpc failed with', err);
+      callback(err);
+    } else {
+      console.log('removed Topic', name, 'OK');
+      callback(null);
+    }
+  });
+};
+
+PubsubRunner.prototype.createTopic = function(callback) {
+  var name = this.getTestTopicName();
+  console.log('... creating Topic', name);
+  this.pub.createTopic({name: name}, function(err, value) {
+    if (err) {
+      console.log('Could not create a topic: rpc failed with', err);
+      callback(err);
+    } else {
+      console.log('created Topic', name, 'OK');
+      callback(null);
+    }
+  });
+};
+
+PubsubRunner.prototype.listSomeTopics = function(callback) {
+  console.log('Listing topics');
+  console.log('-------------_');
+  this.listProjectTopics(function(err, response) {
+    if (err) {
+      console.log('Could not list topic: rpc failed with', err);
+      callback(err);
+    } else {
+      _.each(response.topic, function(t) {
+        console.log(t.name);
+      });
+      callback(null);
+    }
+  });
+};
+
+PubsubRunner.prototype.checkExists = function(callback) {
+  var name = this.getTestTopicName();
+  console.log('... checking for topic', name);
+  this.topicExists(name, function(err, exists) {
+    if (err) {
+      console.log('Could not check for a topics: rpc failed with', err);
+      callback(err);
+    } else {
+      if (exists) {
+        console.log(name, 'is a topic');
+      } else {
+        console.log(name, 'is not a topic');
+      }
+      callback(null);
+    }
+  });
+};
+
+PubsubRunner.prototype.randomPubSub = function(callback) {
+  var self = this;
+  var topic_name = this.getTestTopicName();
+  var sub_name = this.getTestSubName();
+  var subscription = {name: sub_name, topic: topic_name};
+  async.waterfall([
+    _.bind(this.createTopicIfNeeded, this, topic_name),
+    _.bind(this.sub.createSubscription, this.sub, subscription),
+    function(resp, cb) {
+      var msg_count = _.random(10, 30);
+      // Set up msg_count messages to publish
+      var message_senders = _.times(msg_count, function(n) {
+        return _.bind(self.pub.publish, self.pub, {
+          topic: topic_name,
+          message: {data: new Buffer('message ' + n)}
+        });
+      });
+      async.parallel(message_senders, function(err, result) {
+        cb(err, result, msg_count);
+      });
+    },
+    function(result, msg_count, cb) {
+      console.log('Sent', msg_count, 'messages to', topic_name + ',',
+                  'checking for them now.');
+      var batch_request = {
+        subscription: sub_name,
+        max_events: msg_count
+      };
+      self.sub.pullBatch(batch_request, cb);
+    },
+    function(batch, cb) {
+      var ack_id = _.pluck(batch.pull_responses, 'ack_id');
+      console.log('Got', ack_id.length, 'messages, acknowledging them...');
+      var ack_request = {
+        subscription: sub_name,
+        ack_id: ack_id
+      };
+      self.sub.acknowledge(ack_request, cb);
+    },
+    function(result, cb) {
+      console.log(
+          'Test messages were acknowledged OK, deleting the subscription');
+      self.sub.deleteSubscription({subscription: sub_name}, cb);
+    }
+  ], function (err, result) {
+    if (err) {
+      console.log('Could not do random pub sub: rpc failed with', err);
+    }
+    callback(err, result);
+  });
+};
+
+function main(callback) {
+  var argv = parseArgs(process.argv, {
+    string: [
+      'host',
+      'oauth_scope',
+      'port',
+      'action',
+      'project_id',
+      'topic_name',
+      'sub_name'
+    ],
+    default: {
+      host: 'pubsub-staging.googleapis.com',
+      oauth_scope: 'https://www.googleapis.com/auth/pubsub',
+      port: 443,
+      action: 'listSomeTopics',
+      project_id: 'stoked-keyword-656'
+    }
+  });
+  var valid_actions = [
+    'createTopic',
+    'removeTopic',
+    'listSomeTopics',
+    'checkExists',
+    'randomPubSub'
+  ];
+  if (_.some(valid_actions, function(action) {
+    return action === argv.action;
+  })) {
+    callback(new Error('Action was not valid'));
+  }
+  var address = argv.host + ':' + argv.port;
+  (new GoogleAuth()).getApplicationDefault(function(err, credential) {
+    if (err) {
+      callback(err);
+      return;
+    }
+    if (credential.createScopedRequired()) {
+      credential = credential.createScoped(argv.oauth_scope);
+    }
+    var updateMetadata = grpc.getGoogleAuthDelegate(credential);
+    var ca_path = process.env.SSL_CERT_FILE;
+    fs.readFile(ca_path, function(err, ca_data) {
+      if (err) {
+        callback(err);
+        return;
+      }
+      var ssl_creds = grpc.Credentials.createSsl(ca_data);
+      var options = {
+        credentials: ssl_creds,
+        'grpc.ssl_target_name_override': argv.host
+      };
+      var pub = new pubsub.PublisherService(address, options, updateMetadata);
+      var sub = new pubsub.SubscriberService(address, options, updateMetadata);
+      var runner = new PubsubRunner(pub, sub, argv);
+      runner[argv.action](callback);
+    });
+  });
+}
+
+if (require.main === module) {
+  main(function(err) {
+    if (err) throw err;
+  });
+}
+
+module.exports = PubsubRunner;
diff --git a/src/node/package.json b/src/node/package.json
index 70327941eeb61c62726460f441df485305382d2b..e6ac55055452bd5d4e61d86cf4bde411d3af9ead 100644
--- a/src/node/package.json
+++ b/src/node/package.json
@@ -18,7 +18,8 @@
     "async": "^0.9.0",
     "googleauth": "google/google-auth-library-nodejs",
     "minimist": "^1.1.0",
-    "mocha": "~1.21.0"
+    "mocha": "~1.21.0",
+    "strftime": "^0.8.2"
   },
   "files": [
     "README.md",
diff --git a/src/objective-c/GRPCClient/GRPCClient.podspec b/src/objective-c/GRPCClient/GRPCClient.podspec
new file mode 100644
index 0000000000000000000000000000000000000000..a34c50b54eb4cb469c5c848c2edde9d732fc65c9
--- /dev/null
+++ b/src/objective-c/GRPCClient/GRPCClient.podspec
@@ -0,0 +1,14 @@
+Pod::Spec.new do |s|
+  s.name         = 'GRPCClient'
+  s.version      = '0.0.1'
+  s.summary      = 'Generic gRPC client library for iOS'
+  s.author = {
+    'Jorge Canizales' => 'jcanizales@google.com'
+  }
+  s.source_files = '*.{h,m}', 'private/*.{h,m}'
+  s.private_header_files = 'private/*.h'
+  s.platform = :ios
+  s.ios.deployment_target = '6.0'
+  s.requires_arc = true
+  s.dependency 'RxLibrary', '~> 0.0'
+end
diff --git a/src/objective-c/examples/Sample/Podfile b/src/objective-c/examples/Sample/Podfile
index fa9898791021de0bc07858561736d1ffa040a924..2b142a67d052bcd52dbceb9fbc580ca97ca62729 100644
--- a/src/objective-c/examples/Sample/Podfile
+++ b/src/objective-c/examples/Sample/Podfile
@@ -2,6 +2,7 @@ source 'https://github.com/CocoaPods/Specs.git'
 platform :ios, '8.0'
 
 pod 'RxLibrary', :path => "../../RxLibrary"
+pod 'GRPCClient', :path => "../../GRPCClient"
 
 target 'Sample' do
 
diff --git a/src/objective-c/examples/Sample/Podfile.lock b/src/objective-c/examples/Sample/Podfile.lock
index fee4b43bec3cbd23e1f43e4b107ecf0d3f0657f0..7fa4f5d547eecaaa5116275ccec61f4d56aa6ec7 100644
--- a/src/objective-c/examples/Sample/Podfile.lock
+++ b/src/objective-c/examples/Sample/Podfile.lock
@@ -1,14 +1,20 @@
 PODS:
+  - GRPCClient (0.0.1):
+    - RxLibrary (~> 0.0)
   - RxLibrary (0.0.1)
 
 DEPENDENCIES:
+  - GRPCClient (from `../../GRPCClient`)
   - RxLibrary (from `../../RxLibrary`)
 
 EXTERNAL SOURCES:
+  GRPCClient:
+    :path: ../../GRPCClient
   RxLibrary:
     :path: ../../RxLibrary
 
 SPEC CHECKSUMS:
+  GRPCClient: 05c58faab99661384178bb7c5f93b60c2bfc89f8
   RxLibrary: 70cfcf1573ec16a375b4fe61d976a3188aab9303
 
 COCOAPODS: 0.35.0
diff --git a/src/objective-c/examples/Sample/Pods/Headers/Public/GRPCClient/GRPCCall.h b/src/objective-c/examples/Sample/Pods/Headers/Public/GRPCClient/GRPCCall.h
new file mode 120000
index 0000000000000000000000000000000000000000..cacb26174f3a733c66e0f44ff1744bec85562e3e
--- /dev/null
+++ b/src/objective-c/examples/Sample/Pods/Headers/Public/GRPCClient/GRPCCall.h
@@ -0,0 +1 @@
+../../../../../../GRPCClient/GRPCCall.h
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Headers/Public/GRPCClient/GRPCMethodName.h b/src/objective-c/examples/Sample/Pods/Headers/Public/GRPCClient/GRPCMethodName.h
new file mode 120000
index 0000000000000000000000000000000000000000..4dddbd8955e0638cfe7c268f4ddf88fa2a453c97
--- /dev/null
+++ b/src/objective-c/examples/Sample/Pods/Headers/Public/GRPCClient/GRPCMethodName.h
@@ -0,0 +1 @@
+../../../../../../GRPCClient/GRPCMethodName.h
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Local Podspecs/GRPCClient.podspec b/src/objective-c/examples/Sample/Pods/Local Podspecs/GRPCClient.podspec
new file mode 100644
index 0000000000000000000000000000000000000000..a34c50b54eb4cb469c5c848c2edde9d732fc65c9
--- /dev/null
+++ b/src/objective-c/examples/Sample/Pods/Local Podspecs/GRPCClient.podspec	
@@ -0,0 +1,14 @@
+Pod::Spec.new do |s|
+  s.name         = 'GRPCClient'
+  s.version      = '0.0.1'
+  s.summary      = 'Generic gRPC client library for iOS'
+  s.author = {
+    'Jorge Canizales' => 'jcanizales@google.com'
+  }
+  s.source_files = '*.{h,m}', 'private/*.{h,m}'
+  s.private_header_files = 'private/*.h'
+  s.platform = :ios
+  s.ios.deployment_target = '6.0'
+  s.requires_arc = true
+  s.dependency 'RxLibrary', '~> 0.0'
+end
diff --git a/src/objective-c/examples/Sample/Pods/Manifest.lock b/src/objective-c/examples/Sample/Pods/Manifest.lock
index fee4b43bec3cbd23e1f43e4b107ecf0d3f0657f0..7fa4f5d547eecaaa5116275ccec61f4d56aa6ec7 100644
--- a/src/objective-c/examples/Sample/Pods/Manifest.lock
+++ b/src/objective-c/examples/Sample/Pods/Manifest.lock
@@ -1,14 +1,20 @@
 PODS:
+  - GRPCClient (0.0.1):
+    - RxLibrary (~> 0.0)
   - RxLibrary (0.0.1)
 
 DEPENDENCIES:
+  - GRPCClient (from `../../GRPCClient`)
   - RxLibrary (from `../../RxLibrary`)
 
 EXTERNAL SOURCES:
+  GRPCClient:
+    :path: ../../GRPCClient
   RxLibrary:
     :path: ../../RxLibrary
 
 SPEC CHECKSUMS:
+  GRPCClient: 05c58faab99661384178bb7c5f93b60c2bfc89f8
   RxLibrary: 70cfcf1573ec16a375b4fe61d976a3188aab9303
 
 COCOAPODS: 0.35.0
diff --git a/src/objective-c/examples/Sample/Pods/Pods.xcodeproj/project.pbxproj b/src/objective-c/examples/Sample/Pods/Pods.xcodeproj/project.pbxproj
index 68290dd5e8fc31be612638d07adf795f79962b94..b6f4c37b9354dc290c95c4c454b0d60e485a5154 100644
--- a/src/objective-c/examples/Sample/Pods/Pods.xcodeproj/project.pbxproj
+++ b/src/objective-c/examples/Sample/Pods/Pods.xcodeproj/project.pbxproj
@@ -10,54 +10,92 @@
 	<string>46</string>
 	<key>objects</key>
 	<dict>
-		<key>00949E44051CD97851DEFF3B</key>
+		<key>00303CC3049D1C9E8709A044</key>
 		<dict>
-			<key>fileRef</key>
-			<string>9CFAC09E370EA1C96C8D2880</string>
+			<key>explicitFileType</key>
+			<string>archive.ar</string>
+			<key>includeInIndex</key>
+			<string>0</string>
 			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>PBXFileReference</string>
+			<key>path</key>
+			<string>libPods-RxLibrary.a</string>
+			<key>sourceTree</key>
+			<string>BUILT_PRODUCTS_DIR</string>
 		</dict>
-		<key>01F5B724A99ADB3547023C72</key>
+		<key>003D718984A073D9C6C71422</key>
 		<dict>
-			<key>fileRef</key>
-			<string>1868370C0050315A6B835D42</string>
+			<key>includeInIndex</key>
+			<string>1</string>
 			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.h</string>
+			<key>name</key>
+			<string>GRPCDelegateWrapper.h</string>
+			<key>path</key>
+			<string>private/GRPCDelegateWrapper.h</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
 		</dict>
-		<key>0239F1B46D24E21A8042F47F</key>
+		<key>0041F7F38D0B99E977EC7A9B</key>
 		<dict>
-			<key>buildConfigurationList</key>
-			<string>8919AE774852DD128A7CB510</string>
-			<key>buildPhases</key>
-			<array>
-				<string>A71CC1B520D2DFF451839FE2</string>
-				<string>896F697BD1BEAF8A081337EB</string>
-			</array>
-			<key>buildRules</key>
-			<array/>
-			<key>dependencies</key>
-			<array>
-				<string>6EB14BC96525C955FBD5CC75</string>
-			</array>
+			<key>baseConfigurationReference</key>
+			<string>02396B6B22E0450EA29193E9</string>
+			<key>buildSettings</key>
+			<dict>
+				<key>ALWAYS_SEARCH_USER_PATHS</key>
+				<string>NO</string>
+				<key>COPY_PHASE_STRIP</key>
+				<string>YES</string>
+				<key>DSTROOT</key>
+				<string>/tmp/xcodeproj.dst</string>
+				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
+				<string>YES</string>
+				<key>GCC_PREFIX_HEADER</key>
+				<string>Target Support Files/Pods-RxLibrary/Pods-RxLibrary-prefix.pch</string>
+				<key>INSTALL_PATH</key>
+				<string>$(BUILT_PRODUCTS_DIR)</string>
+				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
+				<string>8.0</string>
+				<key>OTHER_CFLAGS</key>
+				<array>
+					<string>-DNS_BLOCK_ASSERTIONS=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>OTHER_CPLUSPLUSFLAGS</key>
+				<array>
+					<string>-DNS_BLOCK_ASSERTIONS=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>OTHER_LDFLAGS</key>
+				<string></string>
+				<key>OTHER_LIBTOOLFLAGS</key>
+				<string></string>
+				<key>PRODUCT_NAME</key>
+				<string>$(TARGET_NAME)</string>
+				<key>PUBLIC_HEADERS_FOLDER_PATH</key>
+				<string>$(TARGET_NAME)</string>
+				<key>SDKROOT</key>
+				<string>iphoneos</string>
+				<key>SKIP_INSTALL</key>
+				<string>YES</string>
+				<key>VALIDATE_PRODUCT</key>
+				<string>YES</string>
+			</dict>
 			<key>isa</key>
-			<string>PBXNativeTarget</string>
+			<string>XCBuildConfiguration</string>
 			<key>name</key>
-			<string>Pods-Sample</string>
-			<key>productName</key>
-			<string>Pods-Sample</string>
-			<key>productReference</key>
-			<string>DF94410F5DC0A0AB69336DF4</string>
-			<key>productType</key>
-			<string>com.apple.product-type.library.static</string>
+			<string>Release</string>
 		</dict>
-		<key>024F840533A6674922DB7899</key>
+		<key>00669D4383CB42C429D06591</key>
 		<dict>
 			<key>fileRef</key>
-			<string>46513F4AD14CBD2377C1E7A1</string>
+			<string>D0641C22EEADF13905743122</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>0260773D27B4AE159FB0B22D</key>
+		<key>0104C23B56A2F6D406AD513A</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
@@ -65,147 +103,93 @@
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
 			<string>sourcecode.c.h</string>
+			<key>name</key>
+			<string>Pods-Sample-GRPCClient-prefix.pch</string>
 			<key>path</key>
-			<string>GRXWriter+Immediate.h</string>
+			<string>../Pods-Sample-GRPCClient/Pods-Sample-GRPCClient-prefix.pch</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>026236C3432E9DBC10A40748</key>
+		<key>01E37BE5C7114E128C4664FB</key>
+		<dict>
+			<key>fileRef</key>
+			<string>9470FB5E010191C87542871D</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>02396B6B22E0450EA29193E9</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>sourcecode.c.objc</string>
+			<string>text.xcconfig</string>
 			<key>path</key>
-			<string>Pods-SampleTests-dummy.m</string>
+			<string>Pods-RxLibrary-Private.xcconfig</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>0385BCBCA0601E80FAD2A901</key>
+		<key>03289193476D7E6EE456FAA8</key>
 		<dict>
 			<key>fileRef</key>
-			<string>46513F4AD14CBD2377C1E7A1</string>
+			<string>16D5B426090D302B58B8FF40</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>0879DBE6FFA1852D106330B4</key>
+		<key>041582131ADE9EA5C2A319BB</key>
 		<dict>
-			<key>buildSettings</key>
-			<dict>
-				<key>ALWAYS_SEARCH_USER_PATHS</key>
-				<string>NO</string>
-				<key>CLANG_CXX_LANGUAGE_STANDARD</key>
-				<string>gnu++0x</string>
-				<key>CLANG_CXX_LIBRARY</key>
-				<string>libc++</string>
-				<key>CLANG_ENABLE_MODULES</key>
-				<string>YES</string>
-				<key>CLANG_ENABLE_OBJC_ARC</key>
-				<string>YES</string>
-				<key>CLANG_WARN_BOOL_CONVERSION</key>
-				<string>YES</string>
-				<key>CLANG_WARN_CONSTANT_CONVERSION</key>
-				<string>YES</string>
-				<key>CLANG_WARN_DIRECT_OBJC_ISA_USAGE</key>
-				<string>YES</string>
-				<key>CLANG_WARN_EMPTY_BODY</key>
-				<string>YES</string>
-				<key>CLANG_WARN_ENUM_CONVERSION</key>
-				<string>YES</string>
-				<key>CLANG_WARN_INT_CONVERSION</key>
-				<string>YES</string>
-				<key>CLANG_WARN_OBJC_ROOT_CLASS</key>
-				<string>YES</string>
-				<key>COPY_PHASE_STRIP</key>
-				<string>YES</string>
-				<key>GCC_C_LANGUAGE_STANDARD</key>
-				<string>gnu99</string>
-				<key>GCC_DYNAMIC_NO_PIC</key>
-				<string>NO</string>
-				<key>GCC_OPTIMIZATION_LEVEL</key>
-				<string>0</string>
-				<key>GCC_PREPROCESSOR_DEFINITIONS</key>
-				<array>
-					<string>DEBUG=1</string>
-					<string>$(inherited)</string>
-				</array>
-				<key>GCC_SYMBOLS_PRIVATE_EXTERN</key>
-				<string>NO</string>
-				<key>GCC_WARN_64_TO_32_BIT_CONVERSION</key>
-				<string>YES</string>
-				<key>GCC_WARN_ABOUT_RETURN_TYPE</key>
-				<string>YES</string>
-				<key>GCC_WARN_UNDECLARED_SELECTOR</key>
-				<string>YES</string>
-				<key>GCC_WARN_UNINITIALIZED_AUTOS</key>
-				<string>YES</string>
-				<key>GCC_WARN_UNUSED_FUNCTION</key>
-				<string>YES</string>
-				<key>GCC_WARN_UNUSED_VARIABLE</key>
-				<string>YES</string>
-				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
-				<string>8.0</string>
-				<key>ONLY_ACTIVE_ARCH</key>
-				<string>YES</string>
-				<key>STRIP_INSTALLED_PRODUCT</key>
-				<string>NO</string>
-			</dict>
 			<key>isa</key>
-			<string>XCBuildConfiguration</string>
+			<string>PBXTargetDependency</string>
 			<key>name</key>
-			<string>Debug</string>
+			<string>Pods-SampleTests-RxLibrary</string>
+			<key>target</key>
+			<string>474A50F85C06F74769FAD474</string>
+			<key>targetProxy</key>
+			<string>FBC9D2D66DA1B0B501961B55</string>
 		</dict>
-		<key>092D0456252ED3F90F66084D</key>
+		<key>048EFCCABBC3F25828644716</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>sourcecode.c.h</string>
+			<string>text.xcconfig</string>
 			<key>path</key>
-			<string>Pods-Sample-environment.h</string>
+			<string>Pods-SampleTests.debug.xcconfig</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>0BC8818D3A097831FDE0750B</key>
+		<key>077EB8C42818FBCCF960B6A2</key>
 		<dict>
 			<key>fileRef</key>
-			<string>BC50D76123DA4B85E6AD77B4</string>
+			<string>0B083D6614A831642ECCDB95</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>0C57EED724EBF58759F9F6DF</key>
+		<key>078103DC988BEF03083FEB98</key>
 		<dict>
 			<key>fileRef</key>
-			<string>4BB75B0FC7359E8EA8672954</string>
+			<string>D0641C22EEADF13905743122</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>0D09CEB9308FA5BACEB5F84C</key>
+		<key>07DA0CCF4F2346740326BD7D</key>
 		<dict>
-			<key>children</key>
-			<array>
-				<string>30063D2979A72CA1050BD4A6</string>
-				<string>DB3528F609E6177E1C5A691C</string>
-				<string>026236C3432E9DBC10A40748</string>
-				<string>EF8B807C5A2059D6C709450D</string>
-				<string>8B503889F903CED9A12E5C87</string>
-				<string>591702CE7D8AF91674F1640F</string>
-				<string>DB677464758307786D68CCE9</string>
-			</array>
+			<key>fileRef</key>
+			<string>9470FB5E010191C87542871D</string>
 			<key>isa</key>
-			<string>PBXGroup</string>
-			<key>name</key>
-			<string>Pods-SampleTests</string>
-			<key>path</key>
-			<string>Target Support Files/Pods-SampleTests</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>0843899658450810B81AC1DD</key>
+		<dict>
+			<key>fileRef</key>
+			<string>66A375345A9F319AE182BDBD</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>0D53085043D992DC00E29F0A</key>
+		<key>09759845E529CE5CD00BECA5</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
@@ -213,39 +197,44 @@
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
 			<string>sourcecode.c.h</string>
+			<key>name</key>
+			<string>Pods-SampleTests-RxLibrary-prefix.pch</string>
 			<key>path</key>
-			<string>GRXWriteable.h</string>
+			<string>../Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-prefix.pch</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>0F20828B67FDCB990B1818E9</key>
+		<key>098BE814C7B5F9F21878CDE6</key>
 		<dict>
 			<key>baseConfigurationReference</key>
-			<string>DB677464758307786D68CCE9</string>
+			<string>3369A2EF668725CAF3F75D1F</string>
 			<key>buildSettings</key>
 			<dict>
 				<key>ALWAYS_SEARCH_USER_PATHS</key>
 				<string>NO</string>
 				<key>COPY_PHASE_STRIP</key>
-				<string>YES</string>
+				<string>NO</string>
 				<key>DSTROOT</key>
 				<string>/tmp/xcodeproj.dst</string>
+				<key>GCC_DYNAMIC_NO_PIC</key>
+				<string>NO</string>
+				<key>GCC_OPTIMIZATION_LEVEL</key>
+				<string>0</string>
 				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
 				<string>YES</string>
+				<key>GCC_PREFIX_HEADER</key>
+				<string>Target Support Files/Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-prefix.pch</string>
+				<key>GCC_PREPROCESSOR_DEFINITIONS</key>
+				<array>
+					<string>DEBUG=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>GCC_SYMBOLS_PRIVATE_EXTERN</key>
+				<string>NO</string>
 				<key>INSTALL_PATH</key>
 				<string>$(BUILT_PRODUCTS_DIR)</string>
 				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
 				<string>8.0</string>
-				<key>OTHER_CFLAGS</key>
-				<array>
-					<string>-DNS_BLOCK_ASSERTIONS=1</string>
-					<string>$(inherited)</string>
-				</array>
-				<key>OTHER_CPLUSPLUSFLAGS</key>
-				<array>
-					<string>-DNS_BLOCK_ASSERTIONS=1</string>
-					<string>$(inherited)</string>
-				</array>
 				<key>OTHER_LDFLAGS</key>
 				<string></string>
 				<key>OTHER_LIBTOOLFLAGS</key>
@@ -258,98 +247,1625 @@
 				<string>iphoneos</string>
 				<key>SKIP_INSTALL</key>
 				<string>YES</string>
-				<key>VALIDATE_PRODUCT</key>
-				<string>YES</string>
 			</dict>
 			<key>isa</key>
 			<string>XCBuildConfiguration</string>
 			<key>name</key>
-			<string>Release</string>
-		</dict>
-		<key>11072993378724E9AF9CAF85</key>
-		<dict>
-			<key>explicitFileType</key>
-			<string>archive.ar</string>
-			<key>includeInIndex</key>
-			<string>0</string>
-			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>path</key>
-			<string>libPods-SampleTests-RxLibrary.a</string>
-			<key>sourceTree</key>
-			<string>BUILT_PRODUCTS_DIR</string>
+			<string>Debug</string>
 		</dict>
-		<key>1146D04C598DEBA045C96C2F</key>
+		<key>0A5311098107B761AEF843FF</key>
 		<dict>
 			<key>buildActionMask</key>
 			<string>2147483647</string>
 			<key>files</key>
 			<array>
-				<string>1F3162E71EE5AA2B65DEC06D</string>
+				<string>3DE1AA4AD4B460F4312B1359</string>
 			</array>
 			<key>isa</key>
 			<string>PBXFrameworksBuildPhase</string>
 			<key>runOnlyForDeploymentPostprocessing</key>
 			<string>0</string>
 		</dict>
-		<key>114F64D42E2AF2F3EBDE9BCB</key>
+		<key>0B083D6614A831642ECCDB95</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.h</string>
+			<key>name</key>
+			<string>GRXNSBlockEnumerator.h</string>
+			<key>path</key>
+			<string>private/GRXNSBlockEnumerator.h</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>0C52B5B243390BA62033C734</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.h</string>
+			<key>path</key>
+			<string>GRXWriteable.h</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>0CA3C7D4D3EF8429533AB7D5</key>
 		<dict>
 			<key>buildActionMask</key>
 			<string>2147483647</string>
 			<key>files</key>
 			<array>
-				<string>1D31B6F63B148D2EA5637823</string>
+				<string>D1C458EAFDCA48A4C90131E9</string>
 			</array>
 			<key>isa</key>
-			<string>PBXSourcesBuildPhase</string>
+			<string>PBXFrameworksBuildPhase</string>
 			<key>runOnlyForDeploymentPostprocessing</key>
 			<string>0</string>
 		</dict>
-		<key>124B93EFC16A2026269840B2</key>
+		<key>0CB824BF5CED7188A205D06F</key>
 		<dict>
-			<key>isa</key>
-			<string>PBXTargetDependency</string>
-			<key>name</key>
-			<string>Pods-RxLibrary</string>
+			<key>buildSettings</key>
+			<dict>
+				<key>ALWAYS_SEARCH_USER_PATHS</key>
+				<string>NO</string>
+				<key>CLANG_CXX_LANGUAGE_STANDARD</key>
+				<string>gnu++0x</string>
+				<key>CLANG_CXX_LIBRARY</key>
+				<string>libc++</string>
+				<key>CLANG_ENABLE_MODULES</key>
+				<string>YES</string>
+				<key>CLANG_ENABLE_OBJC_ARC</key>
+				<string>YES</string>
+				<key>CLANG_WARN_BOOL_CONVERSION</key>
+				<string>YES</string>
+				<key>CLANG_WARN_CONSTANT_CONVERSION</key>
+				<string>YES</string>
+				<key>CLANG_WARN_DIRECT_OBJC_ISA_USAGE</key>
+				<string>YES</string>
+				<key>CLANG_WARN_EMPTY_BODY</key>
+				<string>YES</string>
+				<key>CLANG_WARN_ENUM_CONVERSION</key>
+				<string>YES</string>
+				<key>CLANG_WARN_INT_CONVERSION</key>
+				<string>YES</string>
+				<key>CLANG_WARN_OBJC_ROOT_CLASS</key>
+				<string>YES</string>
+				<key>COPY_PHASE_STRIP</key>
+				<string>NO</string>
+				<key>ENABLE_NS_ASSERTIONS</key>
+				<string>NO</string>
+				<key>GCC_C_LANGUAGE_STANDARD</key>
+				<string>gnu99</string>
+				<key>GCC_PREPROCESSOR_DEFINITIONS</key>
+				<array>
+					<string>RELEASE=1</string>
+				</array>
+				<key>GCC_WARN_64_TO_32_BIT_CONVERSION</key>
+				<string>YES</string>
+				<key>GCC_WARN_ABOUT_RETURN_TYPE</key>
+				<string>YES</string>
+				<key>GCC_WARN_UNDECLARED_SELECTOR</key>
+				<string>YES</string>
+				<key>GCC_WARN_UNINITIALIZED_AUTOS</key>
+				<string>YES</string>
+				<key>GCC_WARN_UNUSED_FUNCTION</key>
+				<string>YES</string>
+				<key>GCC_WARN_UNUSED_VARIABLE</key>
+				<string>YES</string>
+				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
+				<string>8.0</string>
+				<key>STRIP_INSTALLED_PRODUCT</key>
+				<string>NO</string>
+				<key>VALIDATE_PRODUCT</key>
+				<string>YES</string>
+			</dict>
+			<key>isa</key>
+			<string>XCBuildConfiguration</string>
+			<key>name</key>
+			<string>Release</string>
+		</dict>
+		<key>0E66C9AA7C5988807A667377</key>
+		<dict>
+			<key>baseConfigurationReference</key>
+			<string>A0416D4A1F0C863C1856405A</string>
+			<key>buildSettings</key>
+			<dict>
+				<key>ALWAYS_SEARCH_USER_PATHS</key>
+				<string>NO</string>
+				<key>COPY_PHASE_STRIP</key>
+				<string>YES</string>
+				<key>DSTROOT</key>
+				<string>/tmp/xcodeproj.dst</string>
+				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
+				<string>YES</string>
+				<key>INSTALL_PATH</key>
+				<string>$(BUILT_PRODUCTS_DIR)</string>
+				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
+				<string>8.0</string>
+				<key>OTHER_CFLAGS</key>
+				<array>
+					<string>-DNS_BLOCK_ASSERTIONS=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>OTHER_CPLUSPLUSFLAGS</key>
+				<array>
+					<string>-DNS_BLOCK_ASSERTIONS=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>OTHER_LDFLAGS</key>
+				<string></string>
+				<key>OTHER_LIBTOOLFLAGS</key>
+				<string></string>
+				<key>PRODUCT_NAME</key>
+				<string>$(TARGET_NAME)</string>
+				<key>PUBLIC_HEADERS_FOLDER_PATH</key>
+				<string>$(TARGET_NAME)</string>
+				<key>SDKROOT</key>
+				<string>iphoneos</string>
+				<key>SKIP_INSTALL</key>
+				<string>YES</string>
+				<key>VALIDATE_PRODUCT</key>
+				<string>YES</string>
+			</dict>
+			<key>isa</key>
+			<string>XCBuildConfiguration</string>
+			<key>name</key>
+			<string>Release</string>
+		</dict>
+		<key>0F24DA6964D128ACB940F0A6</key>
+		<dict>
+			<key>fileRef</key>
+			<string>B5E4A18F0B2376BE20D1C8A5</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>0F5AF35D0B405F8C010B9E02</key>
+		<dict>
+			<key>buildActionMask</key>
+			<string>2147483647</string>
+			<key>files</key>
+			<array>
+				<string>A0B86020532CA90CD846B0C8</string>
+			</array>
+			<key>isa</key>
+			<string>PBXSourcesBuildPhase</string>
+			<key>runOnlyForDeploymentPostprocessing</key>
+			<string>0</string>
+		</dict>
+		<key>1284152D2F99A63F97EE1E41</key>
+		<dict>
+			<key>fileRef</key>
+			<string>439AF2B977736E012C79B2FE</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>14C9839270FF7F89876551CF</key>
+		<dict>
+			<key>fileRef</key>
+			<string>6394EA7A57663B87FD034792</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>152BFB6270DCF24A85D66444</key>
+		<dict>
+			<key>fileRef</key>
+			<string>D0641C22EEADF13905743122</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>16054FFCB52E34B7784B3D2C</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>text.xcconfig</string>
+			<key>path</key>
+			<string>Pods-RxLibrary.xcconfig</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>164DD73ED2C34BC6B3156AE5</key>
+		<dict>
+			<key>fileRef</key>
+			<string>A7CE4BCE7B6959BCDC54B854</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>16D5B426090D302B58B8FF40</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.objc</string>
+			<key>path</key>
+			<string>Pods-Sample-dummy.m</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>1769B37B91BE6D2B4C498D2C</key>
+		<dict>
+			<key>isa</key>
+			<string>PBXTargetDependency</string>
+			<key>name</key>
+			<string>Pods-Sample-RxLibrary</string>
 			<key>target</key>
-			<string>6BFD156F312F6CAA1E5B00CA</string>
+			<string>4E2021A981DA9A189922E0C6</string>
 			<key>targetProxy</key>
-			<string>DB007D27F74F8F72C72A1079</string>
+			<string>17CC3137FB05C14750ECA482</string>
+		</dict>
+		<key>17CC3137FB05C14750ECA482</key>
+		<dict>
+			<key>containerPortal</key>
+			<string>E61F9CBEB0CA9A172C4AA56B</string>
+			<key>isa</key>
+			<string>PBXContainerItemProxy</string>
+			<key>proxyType</key>
+			<string>1</string>
+			<key>remoteGlobalIDString</key>
+			<string>4E2021A981DA9A189922E0C6</string>
+			<key>remoteInfo</key>
+			<string>Pods-Sample-RxLibrary</string>
+		</dict>
+		<key>18738628EC8A28187A30D51F</key>
+		<dict>
+			<key>containerPortal</key>
+			<string>E61F9CBEB0CA9A172C4AA56B</string>
+			<key>isa</key>
+			<string>PBXContainerItemProxy</string>
+			<key>proxyType</key>
+			<string>1</string>
+			<key>remoteGlobalIDString</key>
+			<string>A10CFA4D4ED9B20894905742</string>
+			<key>remoteInfo</key>
+			<string>Pods-SampleTests-GRPCClient</string>
+		</dict>
+		<key>1939E5289BFF2A898AB652F4</key>
+		<dict>
+			<key>fileRef</key>
+			<string>0B083D6614A831642ECCDB95</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>19A733EC94B0F847F901D308</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.objc</string>
+			<key>name</key>
+			<string>GRXNSFastEnumerator.m</string>
+			<key>path</key>
+			<string>private/GRXNSFastEnumerator.m</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>1A2D9424BA1BE0E3B2598D06</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.h</string>
+			<key>name</key>
+			<string>GRXNSFastEnumerator.h</string>
+			<key>path</key>
+			<string>private/GRXNSFastEnumerator.h</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>1C191978ED182A611393A626</key>
+		<dict>
+			<key>fileRef</key>
+			<string>0B083D6614A831642ECCDB95</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>1D1E67A62BDD0A04136468E9</key>
+		<dict>
+			<key>baseConfigurationReference</key>
+			<string>CDA9A715DCFCE07755974888</string>
+			<key>buildSettings</key>
+			<dict>
+				<key>ALWAYS_SEARCH_USER_PATHS</key>
+				<string>NO</string>
+				<key>COPY_PHASE_STRIP</key>
+				<string>YES</string>
+				<key>DSTROOT</key>
+				<string>/tmp/xcodeproj.dst</string>
+				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
+				<string>YES</string>
+				<key>GCC_PREFIX_HEADER</key>
+				<string>Target Support Files/Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient-prefix.pch</string>
+				<key>INSTALL_PATH</key>
+				<string>$(BUILT_PRODUCTS_DIR)</string>
+				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
+				<string>8.0</string>
+				<key>OTHER_CFLAGS</key>
+				<array>
+					<string>-DNS_BLOCK_ASSERTIONS=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>OTHER_CPLUSPLUSFLAGS</key>
+				<array>
+					<string>-DNS_BLOCK_ASSERTIONS=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>OTHER_LDFLAGS</key>
+				<string></string>
+				<key>OTHER_LIBTOOLFLAGS</key>
+				<string></string>
+				<key>PRODUCT_NAME</key>
+				<string>$(TARGET_NAME)</string>
+				<key>PUBLIC_HEADERS_FOLDER_PATH</key>
+				<string>$(TARGET_NAME)</string>
+				<key>SDKROOT</key>
+				<string>iphoneos</string>
+				<key>SKIP_INSTALL</key>
+				<string>YES</string>
+				<key>VALIDATE_PRODUCT</key>
+				<string>YES</string>
+			</dict>
+			<key>isa</key>
+			<string>XCBuildConfiguration</string>
+			<key>name</key>
+			<string>Release</string>
+		</dict>
+		<key>1D35328CE231F0F9CD0AD192</key>
+		<dict>
+			<key>fileRef</key>
+			<string>BC51F603F893AA6A748EB8EC</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>1D7BCFDFE2B63B8DF9A95779</key>
+		<dict>
+			<key>buildConfigurations</key>
+			<array>
+				<string>667F52E3CC55312354C2DA1C</string>
+				<string>741B3AB48094A74BA06E4B41</string>
+			</array>
+			<key>defaultConfigurationIsVisible</key>
+			<string>0</string>
+			<key>defaultConfigurationName</key>
+			<string>Release</string>
+			<key>isa</key>
+			<string>XCConfigurationList</string>
+		</dict>
+		<key>1EFB19037775E7D8E9F6FC6B</key>
+		<dict>
+			<key>buildActionMask</key>
+			<string>2147483647</string>
+			<key>files</key>
+			<array>
+				<string>CAB17FE3D2357BFAF9B8598F</string>
+				<string>F156B1B8573809A342E0AE1F</string>
+				<string>DFF269EBCC2A9D30DC7E264F</string>
+				<string>6C5ACDD3AAB1F431A03610FF</string>
+				<string>276C69BC7FCAF06166AC8561</string>
+				<string>688A44CE404A30F009CEAD70</string>
+				<string>39148152D8AC33FCD691ABF9</string>
+				<string>1284152D2F99A63F97EE1E41</string>
+				<string>CD18BC77ECA79D031662CC51</string>
+				<string>B367BCF63161EE64CC1B1DE0</string>
+				<string>2E60F7CE1E262CF0A0579F77</string>
+			</array>
+			<key>isa</key>
+			<string>PBXSourcesBuildPhase</string>
+			<key>runOnlyForDeploymentPostprocessing</key>
+			<string>0</string>
+		</dict>
+		<key>1F1DE3733C2AC2A97CA8885A</key>
+		<dict>
+			<key>buildConfigurationList</key>
+			<string>AC12B8262555F9F61255BBC0</string>
+			<key>buildPhases</key>
+			<array>
+				<string>F058968A71750BBCF4F4FB1C</string>
+				<string>E066A01F3A992087F10B31CF</string>
+			</array>
+			<key>buildRules</key>
+			<array/>
+			<key>dependencies</key>
+			<array>
+				<string>69D3EA284F3612F9F534DEBB</string>
+				<string>1769B37B91BE6D2B4C498D2C</string>
+			</array>
+			<key>isa</key>
+			<string>PBXNativeTarget</string>
+			<key>name</key>
+			<string>Pods-Sample</string>
+			<key>productName</key>
+			<string>Pods-Sample</string>
+			<key>productReference</key>
+			<string>E4F23FE4AEB216E7D1E2B7EE</string>
+			<key>productType</key>
+			<string>com.apple.product-type.library.static</string>
+		</dict>
+		<key>1F8BB7EDC9650BA44338F8C8</key>
+		<dict>
+			<key>fileRef</key>
+			<string>A7CE4BCE7B6959BCDC54B854</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>21E0A8B187DFAE6BD32D1302</key>
+		<dict>
+			<key>fileRef</key>
+			<string>35A079DEB6141A6FDFF69D63</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>23C7B3ADDC7C78F4EEEB5FCE</key>
+		<dict>
+			<key>baseConfigurationReference</key>
+			<string>363608E39D7F7AA17945644A</string>
+			<key>buildSettings</key>
+			<dict>
+				<key>ALWAYS_SEARCH_USER_PATHS</key>
+				<string>NO</string>
+				<key>COPY_PHASE_STRIP</key>
+				<string>NO</string>
+				<key>DSTROOT</key>
+				<string>/tmp/xcodeproj.dst</string>
+				<key>GCC_DYNAMIC_NO_PIC</key>
+				<string>NO</string>
+				<key>GCC_OPTIMIZATION_LEVEL</key>
+				<string>0</string>
+				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
+				<string>YES</string>
+				<key>GCC_PREPROCESSOR_DEFINITIONS</key>
+				<array>
+					<string>DEBUG=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>GCC_SYMBOLS_PRIVATE_EXTERN</key>
+				<string>NO</string>
+				<key>INSTALL_PATH</key>
+				<string>$(BUILT_PRODUCTS_DIR)</string>
+				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
+				<string>8.0</string>
+				<key>OTHER_LDFLAGS</key>
+				<string></string>
+				<key>OTHER_LIBTOOLFLAGS</key>
+				<string></string>
+				<key>PRODUCT_NAME</key>
+				<string>$(TARGET_NAME)</string>
+				<key>PUBLIC_HEADERS_FOLDER_PATH</key>
+				<string>$(TARGET_NAME)</string>
+				<key>SDKROOT</key>
+				<string>iphoneos</string>
+				<key>SKIP_INSTALL</key>
+				<string>YES</string>
+			</dict>
+			<key>isa</key>
+			<string>XCBuildConfiguration</string>
+			<key>name</key>
+			<string>Debug</string>
+		</dict>
+		<key>24F79AE5DB5FB86FCB2E2C39</key>
+		<dict>
+			<key>fileRef</key>
+			<string>423B94F0660BA470EAD9DA5E</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>2504847B854AC340A0712235</key>
+		<dict>
+			<key>isa</key>
+			<string>PBXTargetDependency</string>
+			<key>name</key>
+			<string>Pods-SampleTests-GRPCClient</string>
+			<key>target</key>
+			<string>A10CFA4D4ED9B20894905742</string>
+			<key>targetProxy</key>
+			<string>18738628EC8A28187A30D51F</string>
+		</dict>
+		<key>255EE0013C9A672760CB1F29</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>text.script.sh</string>
+			<key>path</key>
+			<string>Pods-SampleTests-resources.sh</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>2598A10FC8B9442686B70419</key>
+		<dict>
+			<key>baseConfigurationReference</key>
+			<string>A2F53747970EB33A4D75EAB4</string>
+			<key>buildSettings</key>
+			<dict>
+				<key>ALWAYS_SEARCH_USER_PATHS</key>
+				<string>NO</string>
+				<key>COPY_PHASE_STRIP</key>
+				<string>YES</string>
+				<key>DSTROOT</key>
+				<string>/tmp/xcodeproj.dst</string>
+				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
+				<string>YES</string>
+				<key>GCC_PREFIX_HEADER</key>
+				<string>Target Support Files/Pods-Sample-GRPCClient/Pods-Sample-GRPCClient-prefix.pch</string>
+				<key>INSTALL_PATH</key>
+				<string>$(BUILT_PRODUCTS_DIR)</string>
+				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
+				<string>8.0</string>
+				<key>OTHER_CFLAGS</key>
+				<array>
+					<string>-DNS_BLOCK_ASSERTIONS=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>OTHER_CPLUSPLUSFLAGS</key>
+				<array>
+					<string>-DNS_BLOCK_ASSERTIONS=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>OTHER_LDFLAGS</key>
+				<string></string>
+				<key>OTHER_LIBTOOLFLAGS</key>
+				<string></string>
+				<key>PRODUCT_NAME</key>
+				<string>$(TARGET_NAME)</string>
+				<key>PUBLIC_HEADERS_FOLDER_PATH</key>
+				<string>$(TARGET_NAME)</string>
+				<key>SDKROOT</key>
+				<string>iphoneos</string>
+				<key>SKIP_INSTALL</key>
+				<string>YES</string>
+				<key>VALIDATE_PRODUCT</key>
+				<string>YES</string>
+			</dict>
+			<key>isa</key>
+			<string>XCBuildConfiguration</string>
+			<key>name</key>
+			<string>Release</string>
+		</dict>
+		<key>25992CA77847232BA741CA19</key>
+		<dict>
+			<key>fileRef</key>
+			<string>D444D13D4D0829CF4142949A</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>26A838790310501CB08753A6</key>
+		<dict>
+			<key>fileRef</key>
+			<string>FB880554D85130C733402058</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>2705BF8D166EFF8A2D44B2BA</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.h</string>
+			<key>path</key>
+			<string>NSEnumerator+GRXUtil.h</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>2747C9BA8D7E0E6EFDFE5D3E</key>
+		<dict>
+			<key>buildActionMask</key>
+			<string>2147483647</string>
+			<key>files</key>
+			<array>
+				<string>D153B061942AF56AA4E13412</string>
+				<string>14C9839270FF7F89876551CF</string>
+				<string>D250768ADF5442C9C8880A18</string>
+				<string>40E563CF0E6B25CBB6DB08E8</string>
+				<string>40F62119098548A9D94FC1CD</string>
+				<string>69179090F5D6919F11110907</string>
+				<string>8D8D6FB22E4E5302E899F3C7</string>
+				<string>8944DC99856C99235675D65C</string>
+				<string>B7FD4EDD742EE7C18D733B84</string>
+			</array>
+			<key>isa</key>
+			<string>PBXHeadersBuildPhase</string>
+			<key>runOnlyForDeploymentPostprocessing</key>
+			<string>0</string>
+		</dict>
+		<key>276C69BC7FCAF06166AC8561</key>
+		<dict>
+			<key>fileRef</key>
+			<string>2DA7CCAA52B82F817FA61F5A</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>28C6D48989DA211E0BACAFC2</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>text.xcconfig</string>
+			<key>path</key>
+			<string>Pods-Sample.debug.xcconfig</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>2C4B95CD783F7C0739F77B66</key>
+		<dict>
+			<key>fileRef</key>
+			<string>0C52B5B243390BA62033C734</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>2C949CFC10D3564D45005639</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.h</string>
+			<key>path</key>
+			<string>Pods-Sample-environment.h</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>2CF8BB8D6A668D6213E18915</key>
+		<dict>
+			<key>fileRef</key>
+			<string>3E850442224A3D7C7540C6C5</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>2D505FE685E88A2746CB2C30</key>
+		<dict>
+			<key>fileRef</key>
+			<string>D45F5D73E3D255043B7E349A</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>2D97FDE1D611758F0CC8EAC3</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.objc</string>
+			<key>name</key>
+			<string>Pods-Sample-RxLibrary-dummy.m</string>
+			<key>path</key>
+			<string>../Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-dummy.m</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>2DA7CCAA52B82F817FA61F5A</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.objc</string>
+			<key>name</key>
+			<string>GRXNSScalarEnumerator.m</string>
+			<key>path</key>
+			<string>private/GRXNSScalarEnumerator.m</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>2E60F7CE1E262CF0A0579F77</key>
+		<dict>
+			<key>fileRef</key>
+			<string>93CEF17866E8E476701B3AEB</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>2EBE2A8DBCF9EED6B632AE6F</key>
+		<dict>
+			<key>buildConfigurations</key>
+			<array>
+				<string>23C7B3ADDC7C78F4EEEB5FCE</string>
+				<string>B32DC879307F72182ED4B8EF</string>
+			</array>
+			<key>defaultConfigurationIsVisible</key>
+			<string>0</string>
+			<key>defaultConfigurationName</key>
+			<string>Release</string>
+			<key>isa</key>
+			<string>XCConfigurationList</string>
+		</dict>
+		<key>306408CC38FAB0410E0D90E7</key>
+		<dict>
+			<key>fileRef</key>
+			<string>003D718984A073D9C6C71422</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>31B56E69FEFEC33075859CFE</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.h</string>
+			<key>name</key>
+			<string>Pods-Sample-RxLibrary-prefix.pch</string>
+			<key>path</key>
+			<string>../Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-prefix.pch</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>327414DEAB5056533318E26E</key>
+		<dict>
+			<key>children</key>
+			<array>
+				<string>AD88FBBAFBF1F13467342BD1</string>
+				<string>EB86FC57EE5F50944BA86EE3</string>
+				<string>7E3BE2E23E465D87ECF0E962</string>
+				<string>EE156F6201B39BDD5F905822</string>
+				<string>AAD40140819824C5EF180664</string>
+				<string>A2F53747970EB33A4D75EAB4</string>
+				<string>732C03DC74F2738AE9E86ECA</string>
+				<string>0104C23B56A2F6D406AD513A</string>
+				<string>45F8559BE23F19F91747A28B</string>
+				<string>CDA9A715DCFCE07755974888</string>
+				<string>D0E4885FFC11D4A532FAB517</string>
+				<string>4B2A75095DECE2C0424CBCFC</string>
+			</array>
+			<key>isa</key>
+			<string>PBXGroup</string>
+			<key>name</key>
+			<string>Support Files</string>
+			<key>path</key>
+			<string>../examples/Sample/Pods/Target Support Files/Pods-GRPCClient</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>3369A2EF668725CAF3F75D1F</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>text.xcconfig</string>
+			<key>name</key>
+			<string>Pods-SampleTests-RxLibrary-Private.xcconfig</string>
+			<key>path</key>
+			<string>../Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-Private.xcconfig</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>339F0D64DF0A7BD0AA48186E</key>
+		<dict>
+			<key>fileRef</key>
+			<string>0C52B5B243390BA62033C734</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>34373F1941450D17C3F85B57</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.objc</string>
+			<key>name</key>
+			<string>GRXNSBlockEnumerator.m</string>
+			<key>path</key>
+			<string>private/GRXNSBlockEnumerator.m</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>34D39E370FE6AF621D048E13</key>
+		<dict>
+			<key>fileRef</key>
+			<string>A7CE4BCE7B6959BCDC54B854</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>357862381E5517983B1A7AA9</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.objc</string>
+			<key>name</key>
+			<string>Pods-SampleTests-RxLibrary-dummy.m</string>
+			<key>path</key>
+			<string>../Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-dummy.m</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>35A079DEB6141A6FDFF69D63</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.h</string>
+			<key>name</key>
+			<string>GRXMappingWriter.h</string>
+			<key>path</key>
+			<string>transformations/GRXMappingWriter.h</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>363608E39D7F7AA17945644A</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>text.xcconfig</string>
+			<key>path</key>
+			<string>Pods.debug.xcconfig</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>36CC8128F585662CE7EF2114</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.objc</string>
+			<key>name</key>
+			<string>NSData+GRPC.m</string>
+			<key>path</key>
+			<string>private/NSData+GRPC.m</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>39148152D8AC33FCD691ABF9</key>
+		<dict>
+			<key>fileRef</key>
+			<string>EA915E5B33F07CD0B9F8ACE9</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>39B5F5991112189C12D87D40</key>
+		<dict>
+			<key>children</key>
+			<array>
+				<string>EC4BA4B1D02C3BA6DBB450E7</string>
+				<string>A0064CCC8EC60B3CD0E4F72F</string>
+				<string>7484EC496D674B8D63C9B14A</string>
+				<string>4D580403A4A30D76B96E9775</string>
+				<string>E2EA100B27BDAB6CA32F3814</string>
+			</array>
+			<key>isa</key>
+			<string>PBXGroup</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>3B52D357FFBB1F7AA20D702F</key>
+		<dict>
+			<key>fileRef</key>
+			<string>78C38086F90849CD909A9847</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>3C7D98B6D2E351C032BE20A6</key>
+		<dict>
+			<key>fileRef</key>
+			<string>6394EA7A57663B87FD034792</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>3CBFCE5C8506BD28C4AA47EC</key>
+		<dict>
+			<key>isa</key>
+			<string>PBXTargetDependency</string>
+			<key>name</key>
+			<string>Pods-Sample-RxLibrary</string>
+			<key>target</key>
+			<string>4E2021A981DA9A189922E0C6</string>
+			<key>targetProxy</key>
+			<string>9F21B0DA9C171E66AC1CB1E2</string>
+		</dict>
+		<key>3D7B59A31C0CF6B937B6B56F</key>
+		<dict>
+			<key>fileRef</key>
+			<string>439AF2B977736E012C79B2FE</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>3DE1AA4AD4B460F4312B1359</key>
+		<dict>
+			<key>fileRef</key>
+			<string>A7CE4BCE7B6959BCDC54B854</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>3E850442224A3D7C7540C6C5</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.h</string>
+			<key>name</key>
+			<string>NSError+GRPC.h</string>
+			<key>path</key>
+			<string>private/NSError+GRPC.h</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>3FFB0F49732540C0F34BEA5D</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>text.plist.xml</string>
+			<key>path</key>
+			<string>Pods-Sample-acknowledgements.plist</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>40E563CF0E6B25CBB6DB08E8</key>
+		<dict>
+			<key>fileRef</key>
+			<string>003D718984A073D9C6C71422</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>40F1A996749176D9DB148901</key>
+		<dict>
+			<key>buildActionMask</key>
+			<string>2147483647</string>
+			<key>files</key>
+			<array>
+				<string>C59D49EFF10934AFF82CA873</string>
+			</array>
+			<key>isa</key>
+			<string>PBXSourcesBuildPhase</string>
+			<key>runOnlyForDeploymentPostprocessing</key>
+			<string>0</string>
+		</dict>
+		<key>40F62119098548A9D94FC1CD</key>
+		<dict>
+			<key>fileRef</key>
+			<string>EE695A82B047142EA781152E</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>41FD4DEF364AC343F07212C1</key>
+		<dict>
+			<key>fileRef</key>
+			<string>FB880554D85130C733402058</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>423B94F0660BA470EAD9DA5E</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.h</string>
+			<key>path</key>
+			<string>GRPCMethodName.h</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>42669F81E3800361030A567A</key>
+		<dict>
+			<key>fileRef</key>
+			<string>517E28171A4524F9C518EAAC</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>430E7D130A089632FA407274</key>
+		<dict>
+			<key>children</key>
+			<array>
+				<string>BC51F603F893AA6A748EB8EC</string>
+				<string>53A5EA857F02C1DEEC269122</string>
+				<string>6394EA7A57663B87FD034792</string>
+				<string>FB880554D85130C733402058</string>
+				<string>6A4F426FF21092B2A4B44022</string>
+				<string>D0641C22EEADF13905743122</string>
+				<string>003D718984A073D9C6C71422</string>
+				<string>F541961867C9493F07D54B8E</string>
+				<string>423B94F0660BA470EAD9DA5E</string>
+				<string>E0CF2237012441B69E760029</string>
+				<string>EE695A82B047142EA781152E</string>
+				<string>78C38086F90849CD909A9847</string>
+				<string>D45F5D73E3D255043B7E349A</string>
+				<string>36CC8128F585662CE7EF2114</string>
+				<string>517E28171A4524F9C518EAAC</string>
+				<string>66A375345A9F319AE182BDBD</string>
+				<string>3E850442224A3D7C7540C6C5</string>
+				<string>6BBDA0AD2955451BBF881052</string>
+				<string>327414DEAB5056533318E26E</string>
+			</array>
+			<key>isa</key>
+			<string>PBXGroup</string>
+			<key>name</key>
+			<string>GRPCClient</string>
+			<key>path</key>
+			<string>../../../GRPCClient</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>433B6972ED95680C5FB6FAE3</key>
+		<dict>
+			<key>fileRef</key>
+			<string>1A2D9424BA1BE0E3B2598D06</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>439AF2B977736E012C79B2FE</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.objc</string>
+			<key>path</key>
+			<string>GRXWriter+Transformations.m</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>44C27BC8E89A85C90BC42638</key>
+		<dict>
+			<key>buildActionMask</key>
+			<string>2147483647</string>
+			<key>files</key>
+			<array>
+				<string>1D35328CE231F0F9CD0AD192</string>
+				<string>9C6B481EF2F6601D5D6F4B6D</string>
+				<string>C31B151DCFB1F263B8E344BF</string>
+				<string>EC47C9C8660A81111C71C967</string>
+				<string>8C3E05D9178D147F7D7EA7D0</string>
+				<string>24F79AE5DB5FB86FCB2E2C39</string>
+				<string>2D505FE685E88A2746CB2C30</string>
+				<string>AB2C87B84886AB4CF107C5A1</string>
+				<string>F911880EC1D908050569F8AF</string>
+			</array>
+			<key>isa</key>
+			<string>PBXHeadersBuildPhase</string>
+			<key>runOnlyForDeploymentPostprocessing</key>
+			<string>0</string>
+		</dict>
+		<key>45F8559BE23F19F91747A28B</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>text.xcconfig</string>
+			<key>name</key>
+			<string>Pods-SampleTests-GRPCClient.xcconfig</string>
+			<key>path</key>
+			<string>../Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient.xcconfig</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>474A50F85C06F74769FAD474</key>
+		<dict>
+			<key>buildConfigurationList</key>
+			<string>C75867D6DF922C6894ACCC88</string>
+			<key>buildPhases</key>
+			<array>
+				<string>7C51A49564BFF0A55C886597</string>
+				<string>D520F3474212A72655D2F0ED</string>
+				<string>5AE8B8582CBA2762187AB9CB</string>
+			</array>
+			<key>buildRules</key>
+			<array/>
+			<key>dependencies</key>
+			<array/>
+			<key>isa</key>
+			<string>PBXNativeTarget</string>
+			<key>name</key>
+			<string>Pods-SampleTests-RxLibrary</string>
+			<key>productName</key>
+			<string>Pods-SampleTests-RxLibrary</string>
+			<key>productReference</key>
+			<string>C438A6F7EF173F2ED50AF192</string>
+			<key>productType</key>
+			<string>com.apple.product-type.library.static</string>
+		</dict>
+		<key>48E3F41513DAE1D12CBF544D</key>
+		<dict>
+			<key>fileRef</key>
+			<string>7F5DF8C37493F93C2636BAD6</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>49D70C2F1EBB0B8BC452D632</key>
+		<dict>
+			<key>fileRef</key>
+			<string>35A079DEB6141A6FDFF69D63</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>4B0816A85B8DA041883CEDBE</key>
+		<dict>
+			<key>fileRef</key>
+			<string>36CC8128F585662CE7EF2114</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>4B2A75095DECE2C0424CBCFC</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.h</string>
+			<key>name</key>
+			<string>Pods-SampleTests-GRPCClient-prefix.pch</string>
+			<key>path</key>
+			<string>../Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient-prefix.pch</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>4B765AEAB08FDC86E8082F7A</key>
+		<dict>
+			<key>children</key>
+			<array>
+				<string>AF8AB55F74FABAD365BDACF0</string>
+				<string>FFC668E9994CC6407B338F9D</string>
+				<string>7E5BC0233C371682047C39BD</string>
+				<string>CC354BAF9312E63AB7D4404A</string>
+				<string>8565F9710EFA641EF9EAE78E</string>
+				<string>363608E39D7F7AA17945644A</string>
+				<string>9B871E85E76E178A206CC642</string>
+			</array>
+			<key>isa</key>
+			<string>PBXGroup</string>
+			<key>name</key>
+			<string>Pods</string>
+			<key>path</key>
+			<string>Target Support Files/Pods</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>4D580403A4A30D76B96E9775</key>
+		<dict>
+			<key>children</key>
+			<array>
+				<string>AD11CEF56188F659CB36CB34</string>
+				<string>932CFA5D0C5C2C8DA3C328AF</string>
+				<string>00303CC3049D1C9E8709A044</string>
+				<string>E4F23FE4AEB216E7D1E2B7EE</string>
+				<string>CBB34B55930DEFBDE44A62E0</string>
+				<string>EA41D57C3938E8D766E0224F</string>
+				<string>675E56BADC0C4C93E3B6B263</string>
+				<string>8DD3112B6E527E20F688C5A0</string>
+				<string>C438A6F7EF173F2ED50AF192</string>
+			</array>
+			<key>isa</key>
+			<string>PBXGroup</string>
+			<key>name</key>
+			<string>Products</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>4E2021A981DA9A189922E0C6</key>
+		<dict>
+			<key>buildConfigurationList</key>
+			<string>1D7BCFDFE2B63B8DF9A95779</string>
+			<key>buildPhases</key>
+			<array>
+				<string>5011677F9A4B34B7CC28BC27</string>
+				<string>9CFF85471050427EE3796F6F</string>
+				<string>C818D7947CCCEA0324CD9E79</string>
+			</array>
+			<key>buildRules</key>
+			<array/>
+			<key>dependencies</key>
+			<array/>
+			<key>isa</key>
+			<string>PBXNativeTarget</string>
+			<key>name</key>
+			<string>Pods-Sample-RxLibrary</string>
+			<key>productName</key>
+			<string>Pods-Sample-RxLibrary</string>
+			<key>productReference</key>
+			<string>EA41D57C3938E8D766E0224F</string>
+			<key>productType</key>
+			<string>com.apple.product-type.library.static</string>
+		</dict>
+		<key>4F529EACF630FA5A638408A4</key>
+		<dict>
+			<key>fileRef</key>
+			<string>78C38086F90849CD909A9847</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>5011677F9A4B34B7CC28BC27</key>
+		<dict>
+			<key>buildActionMask</key>
+			<string>2147483647</string>
+			<key>files</key>
+			<array>
+				<string>25992CA77847232BA741CA19</string>
+				<string>7EE012957E76C86620A8B82D</string>
+				<string>F636FFBF62AFF197BE3CB427</string>
+				<string>8F24508F2BC37AE7B2282E42</string>
+				<string>CA8337B362EA0132CA470DB0</string>
+				<string>7B72787324EC9346B7243E79</string>
+				<string>61D40C951CD9463DBAC928AE</string>
+				<string>3D7B59A31C0CF6B937B6B56F</string>
+				<string>B37BACFCD1765840986F8AC5</string>
+				<string>9CC98083B837EFAE1058E03E</string>
+				<string>A0C815D67EA636E8E6A5E655</string>
+			</array>
+			<key>isa</key>
+			<string>PBXSourcesBuildPhase</string>
+			<key>runOnlyForDeploymentPostprocessing</key>
+			<string>0</string>
+		</dict>
+		<key>517E28171A4524F9C518EAAC</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.h</string>
+			<key>name</key>
+			<string>NSDictionary+GRPC.h</string>
+			<key>path</key>
+			<string>private/NSDictionary+GRPC.h</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>51DBA8F3C7D4E67BDD768066</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>text.xcconfig</string>
+			<key>path</key>
+			<string>Pods-SampleTests.release.xcconfig</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>53A5EA857F02C1DEEC269122</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.objc</string>
+			<key>path</key>
+			<string>GRPCCall.m</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>53E7256294CEEC3844B70A31</key>
+		<dict>
+			<key>baseConfigurationReference</key>
+			<string>EB86FC57EE5F50944BA86EE3</string>
+			<key>buildSettings</key>
+			<dict>
+				<key>ALWAYS_SEARCH_USER_PATHS</key>
+				<string>NO</string>
+				<key>COPY_PHASE_STRIP</key>
+				<string>YES</string>
+				<key>DSTROOT</key>
+				<string>/tmp/xcodeproj.dst</string>
+				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
+				<string>YES</string>
+				<key>GCC_PREFIX_HEADER</key>
+				<string>Target Support Files/Pods-GRPCClient/Pods-GRPCClient-prefix.pch</string>
+				<key>INSTALL_PATH</key>
+				<string>$(BUILT_PRODUCTS_DIR)</string>
+				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
+				<string>8.0</string>
+				<key>OTHER_CFLAGS</key>
+				<array>
+					<string>-DNS_BLOCK_ASSERTIONS=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>OTHER_CPLUSPLUSFLAGS</key>
+				<array>
+					<string>-DNS_BLOCK_ASSERTIONS=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>OTHER_LDFLAGS</key>
+				<string></string>
+				<key>OTHER_LIBTOOLFLAGS</key>
+				<string></string>
+				<key>PRODUCT_NAME</key>
+				<string>$(TARGET_NAME)</string>
+				<key>PUBLIC_HEADERS_FOLDER_PATH</key>
+				<string>$(TARGET_NAME)</string>
+				<key>SDKROOT</key>
+				<string>iphoneos</string>
+				<key>SKIP_INSTALL</key>
+				<string>YES</string>
+				<key>VALIDATE_PRODUCT</key>
+				<string>YES</string>
+			</dict>
+			<key>isa</key>
+			<string>XCBuildConfiguration</string>
+			<key>name</key>
+			<string>Release</string>
+		</dict>
+		<key>55A1C5AA37880BD7D2D575C1</key>
+		<dict>
+			<key>buildActionMask</key>
+			<string>2147483647</string>
+			<key>files</key>
+			<array>
+				<string>1F8BB7EDC9650BA44338F8C8</string>
+			</array>
+			<key>isa</key>
+			<string>PBXFrameworksBuildPhase</string>
+			<key>runOnlyForDeploymentPostprocessing</key>
+			<string>0</string>
+		</dict>
+		<key>5654D46158ECA8C27895A755</key>
+		<dict>
+			<key>fileRef</key>
+			<string>53A5EA857F02C1DEEC269122</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>583EF09FCBF65B9A4E5C22A7</key>
+		<dict>
+			<key>buildConfigurations</key>
+			<array>
+				<string>7D6F600B59E9C29030A96526</string>
+				<string>2598A10FC8B9442686B70419</string>
+			</array>
+			<key>defaultConfigurationIsVisible</key>
+			<string>0</string>
+			<key>defaultConfigurationName</key>
+			<string>Release</string>
+			<key>isa</key>
+			<string>XCConfigurationList</string>
+		</dict>
+		<key>5AE8B8582CBA2762187AB9CB</key>
+		<dict>
+			<key>buildActionMask</key>
+			<string>2147483647</string>
+			<key>files</key>
+			<array>
+				<string>07DA0CCF4F2346740326BD7D</string>
+				<string>8D0A2E1D25EEA3A096E08B1A</string>
+				<string>1939E5289BFF2A898AB652F4</string>
+				<string>433B6972ED95680C5FB6FAE3</string>
+				<string>C90E8B6A34A6456422C8086E</string>
+				<string>7769061BD3B0C3FA2591F01E</string>
+				<string>48E3F41513DAE1D12CBF544D</string>
+				<string>9F3C74AA5715E325880AE886</string>
+				<string>0F24DA6964D128ACB940F0A6</string>
+				<string>7C036237AA7E88A084C751E0</string>
+			</array>
+			<key>isa</key>
+			<string>PBXHeadersBuildPhase</string>
+			<key>runOnlyForDeploymentPostprocessing</key>
+			<string>0</string>
+		</dict>
+		<key>5BDD559FB35594584D1BE09E</key>
+		<dict>
+			<key>fileRef</key>
+			<string>66A375345A9F319AE182BDBD</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>617AA57F150724B1881EC92E</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.h</string>
+			<key>name</key>
+			<string>GRXNSScalarEnumerator.h</string>
+			<key>path</key>
+			<string>private/GRXNSScalarEnumerator.h</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>61D40C951CD9463DBAC928AE</key>
+		<dict>
+			<key>fileRef</key>
+			<string>EA915E5B33F07CD0B9F8ACE9</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>6354A9E233C358103A8D02C2</key>
+		<dict>
+			<key>fileRef</key>
+			<string>D6D8919597D4E28EBF5D166B</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>6394EA7A57663B87FD034792</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.h</string>
+			<key>name</key>
+			<string>GRPCChannel.h</string>
+			<key>path</key>
+			<string>private/GRPCChannel.h</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>644143496CECB668F61BCD16</key>
+		<dict>
+			<key>children</key>
+			<array>
+				<string>98695E4E6F8168938F9CC49E</string>
+				<string>3FFB0F49732540C0F34BEA5D</string>
+				<string>16D5B426090D302B58B8FF40</string>
+				<string>2C949CFC10D3564D45005639</string>
+				<string>BEEA6A0D27020465FC6CD0AA</string>
+				<string>28C6D48989DA211E0BACAFC2</string>
+				<string>A0416D4A1F0C863C1856405A</string>
+			</array>
+			<key>isa</key>
+			<string>PBXGroup</string>
+			<key>name</key>
+			<string>Pods-Sample</string>
+			<key>path</key>
+			<string>Target Support Files/Pods-Sample</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>66448F9949C234988DD11E4E</key>
+		<dict>
+			<key>fileRef</key>
+			<string>68A0ACB0AFAA7186EB2ABE09</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>667F52E3CC55312354C2DA1C</key>
+		<dict>
+			<key>baseConfigurationReference</key>
+			<string>6C1CC360881CEA3DD2D1FE14</string>
+			<key>buildSettings</key>
+			<dict>
+				<key>ALWAYS_SEARCH_USER_PATHS</key>
+				<string>NO</string>
+				<key>COPY_PHASE_STRIP</key>
+				<string>NO</string>
+				<key>DSTROOT</key>
+				<string>/tmp/xcodeproj.dst</string>
+				<key>GCC_DYNAMIC_NO_PIC</key>
+				<string>NO</string>
+				<key>GCC_OPTIMIZATION_LEVEL</key>
+				<string>0</string>
+				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
+				<string>YES</string>
+				<key>GCC_PREFIX_HEADER</key>
+				<string>Target Support Files/Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-prefix.pch</string>
+				<key>GCC_PREPROCESSOR_DEFINITIONS</key>
+				<array>
+					<string>DEBUG=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>GCC_SYMBOLS_PRIVATE_EXTERN</key>
+				<string>NO</string>
+				<key>INSTALL_PATH</key>
+				<string>$(BUILT_PRODUCTS_DIR)</string>
+				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
+				<string>8.0</string>
+				<key>OTHER_LDFLAGS</key>
+				<string></string>
+				<key>OTHER_LIBTOOLFLAGS</key>
+				<string></string>
+				<key>PRODUCT_NAME</key>
+				<string>$(TARGET_NAME)</string>
+				<key>PUBLIC_HEADERS_FOLDER_PATH</key>
+				<string>$(TARGET_NAME)</string>
+				<key>SDKROOT</key>
+				<string>iphoneos</string>
+				<key>SKIP_INSTALL</key>
+				<string>YES</string>
+			</dict>
+			<key>isa</key>
+			<string>XCBuildConfiguration</string>
+			<key>name</key>
+			<string>Debug</string>
+		</dict>
+		<key>66A375345A9F319AE182BDBD</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.objc</string>
+			<key>name</key>
+			<string>NSDictionary+GRPC.m</string>
+			<key>path</key>
+			<string>private/NSDictionary+GRPC.m</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
 		</dict>
-		<key>14D92BB2ED12213381BD2EB9</key>
+		<key>66E177AC7F3B02B51D36A226</key>
 		<dict>
 			<key>buildConfigurationList</key>
-			<string>C4342DDEEF3C3290956C21DF</string>
+			<string>583EF09FCBF65B9A4E5C22A7</string>
 			<key>buildPhases</key>
 			<array>
-				<string>432AE81157886BE484236751</string>
-				<string>87700F015FA41F53D88CA4BC</string>
+				<string>A5EDB7E25EA71C67EF1B3F82</string>
+				<string>55A1C5AA37880BD7D2D575C1</string>
+				<string>2747C9BA8D7E0E6EFDFE5D3E</string>
 			</array>
 			<key>buildRules</key>
 			<array/>
 			<key>dependencies</key>
 			<array>
-				<string>F8B4778EF3030EEC2E9927CE</string>
+				<string>3CBFCE5C8506BD28C4AA47EC</string>
 			</array>
 			<key>isa</key>
 			<string>PBXNativeTarget</string>
 			<key>name</key>
-			<string>Pods-SampleTests</string>
+			<string>Pods-Sample-GRPCClient</string>
 			<key>productName</key>
-			<string>Pods-SampleTests</string>
+			<string>Pods-Sample-GRPCClient</string>
 			<key>productReference</key>
-			<string>42A375125393D0613249D046</string>
+			<string>CBB34B55930DEFBDE44A62E0</string>
 			<key>productType</key>
 			<string>com.apple.product-type.library.static</string>
 		</dict>
-		<key>15DC9A153BC412DB41B7F154</key>
+		<key>675E56BADC0C4C93E3B6B263</key>
+		<dict>
+			<key>explicitFileType</key>
+			<string>archive.ar</string>
+			<key>includeInIndex</key>
+			<string>0</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>path</key>
+			<string>libPods-SampleTests.a</string>
+			<key>sourceTree</key>
+			<string>BUILT_PRODUCTS_DIR</string>
+		</dict>
+		<key>688A44CE404A30F009CEAD70</key>
 		<dict>
 			<key>fileRef</key>
-			<string>5AEFA85A5F1AD206D68B0576</string>
+			<string>D6D8919597D4E28EBF5D166B</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>15F64D3D7D10DB47599A72EB</key>
+		<key>68A0ACB0AFAA7186EB2ABE09</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
@@ -357,35 +1873,30 @@
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
 			<string>sourcecode.c.objc</string>
-			<key>name</key>
-			<string>GRXMappingWriter.m</string>
 			<key>path</key>
-			<string>transformations/GRXMappingWriter.m</string>
+			<string>NSEnumerator+GRXUtil.m</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>16E6BBD46D9745611EF313FB</key>
+		<key>69179090F5D6919F11110907</key>
 		<dict>
 			<key>fileRef</key>
-			<string>BECFE3DCB323841851972996</string>
+			<string>423B94F0660BA470EAD9DA5E</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>17F4C2F25813E7A4588FF233</key>
+		<key>69D3EA284F3612F9F534DEBB</key>
 		<dict>
-			<key>buildConfigurations</key>
-			<array>
-				<string>B153046F0CBA526564A9673C</string>
-				<string>B960FF1BE77D3F4459EEB1E0</string>
-			</array>
-			<key>defaultConfigurationIsVisible</key>
-			<string>0</string>
-			<key>defaultConfigurationName</key>
-			<string>Release</string>
 			<key>isa</key>
-			<string>XCConfigurationList</string>
+			<string>PBXTargetDependency</string>
+			<key>name</key>
+			<string>Pods-Sample-GRPCClient</string>
+			<key>target</key>
+			<string>66E177AC7F3B02B51D36A226</string>
+			<key>targetProxy</key>
+			<string>72246839A1947E6558591655</string>
 		</dict>
-		<key>1868370C0050315A6B835D42</key>
+		<key>6A4F426FF21092B2A4B44022</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
@@ -394,74 +1905,164 @@
 			<key>lastKnownFileType</key>
 			<string>sourcecode.c.h</string>
 			<key>name</key>
-			<string>GRXNSScalarEnumerator.h</string>
+			<string>GRPCCompletionQueue.h</string>
 			<key>path</key>
-			<string>private/GRXNSScalarEnumerator.h</string>
+			<string>private/GRPCCompletionQueue.h</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>19001096C873023095C4F032</key>
+		<key>6AA10AF7AE19131F66FB8586</key>
+		<dict>
+			<key>baseConfigurationReference</key>
+			<string>3369A2EF668725CAF3F75D1F</string>
+			<key>buildSettings</key>
+			<dict>
+				<key>ALWAYS_SEARCH_USER_PATHS</key>
+				<string>NO</string>
+				<key>COPY_PHASE_STRIP</key>
+				<string>YES</string>
+				<key>DSTROOT</key>
+				<string>/tmp/xcodeproj.dst</string>
+				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
+				<string>YES</string>
+				<key>GCC_PREFIX_HEADER</key>
+				<string>Target Support Files/Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-prefix.pch</string>
+				<key>INSTALL_PATH</key>
+				<string>$(BUILT_PRODUCTS_DIR)</string>
+				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
+				<string>8.0</string>
+				<key>OTHER_CFLAGS</key>
+				<array>
+					<string>-DNS_BLOCK_ASSERTIONS=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>OTHER_CPLUSPLUSFLAGS</key>
+				<array>
+					<string>-DNS_BLOCK_ASSERTIONS=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>OTHER_LDFLAGS</key>
+				<string></string>
+				<key>OTHER_LIBTOOLFLAGS</key>
+				<string></string>
+				<key>PRODUCT_NAME</key>
+				<string>$(TARGET_NAME)</string>
+				<key>PUBLIC_HEADERS_FOLDER_PATH</key>
+				<string>$(TARGET_NAME)</string>
+				<key>SDKROOT</key>
+				<string>iphoneos</string>
+				<key>SKIP_INSTALL</key>
+				<string>YES</string>
+				<key>VALIDATE_PRODUCT</key>
+				<string>YES</string>
+			</dict>
+			<key>isa</key>
+			<string>XCBuildConfiguration</string>
+			<key>name</key>
+			<string>Release</string>
+		</dict>
+		<key>6B6C68F7F3769BB8EBEB7EE5</key>
 		<dict>
 			<key>fileRef</key>
-			<string>EB29FAB1F81F0D17BDAD72D0</string>
+			<string>EA915E5B33F07CD0B9F8ACE9</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>1B8264EEFEF4AD585182D256</key>
+		<key>6BBDA0AD2955451BBF881052</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>text.xcconfig</string>
+			<string>sourcecode.c.objc</string>
+			<key>name</key>
+			<string>NSError+GRPC.m</string>
 			<key>path</key>
-			<string>Pods-Sample.debug.xcconfig</string>
+			<string>private/NSError+GRPC.m</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>6BC5E8D01392B97FF237C655</key>
+		<dict>
+			<key>children</key>
+			<array>
+				<string>16054FFCB52E34B7784B3D2C</string>
+				<string>02396B6B22E0450EA29193E9</string>
+				<string>93CEF17866E8E476701B3AEB</string>
+				<string>E256AF33BE1D5C30780D4E96</string>
+				<string>F6B6558E339AD89F764A6D88</string>
+				<string>6C1CC360881CEA3DD2D1FE14</string>
+				<string>2D97FDE1D611758F0CC8EAC3</string>
+				<string>31B56E69FEFEC33075859CFE</string>
+				<string>DD9A2AC14E9E04D4337DB76E</string>
+				<string>3369A2EF668725CAF3F75D1F</string>
+				<string>357862381E5517983B1A7AA9</string>
+				<string>09759845E529CE5CD00BECA5</string>
+			</array>
+			<key>isa</key>
+			<string>PBXGroup</string>
+			<key>name</key>
+			<string>Support Files</string>
+			<key>path</key>
+			<string>../examples/Sample/Pods/Target Support Files/Pods-RxLibrary</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>1C8DFDF9C457D910DC1FD227</key>
+		<key>6C1CC360881CEA3DD2D1FE14</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>sourcecode.c.h</string>
+			<string>text.xcconfig</string>
+			<key>name</key>
+			<string>Pods-Sample-RxLibrary-Private.xcconfig</string>
 			<key>path</key>
-			<string>Pods-environment.h</string>
+			<string>../Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-Private.xcconfig</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>1D31B6F63B148D2EA5637823</key>
+		<key>6C5ACDD3AAB1F431A03610FF</key>
 		<dict>
 			<key>fileRef</key>
-			<string>22DB20D833E7D26AEA6513D6</string>
+			<string>19A733EC94B0F847F901D308</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>1E5420835E4862DBA55002A9</key>
+		<key>6EDAC415AC0B16B221E0397F</key>
 		<dict>
-			<key>fileRef</key>
-			<string>BECFE3DCB323841851972996</string>
 			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>PBXTargetDependency</string>
+			<key>name</key>
+			<string>Pods-RxLibrary</string>
+			<key>target</key>
+			<string>AEECE9DFCC8F060F1E30A421</string>
+			<key>targetProxy</key>
+			<string>BCB580E2193B3624D1C471DB</string>
 		</dict>
-		<key>1F3162E71EE5AA2B65DEC06D</key>
+		<key>72246839A1947E6558591655</key>
 		<dict>
-			<key>fileRef</key>
-			<string>56CE61A20C6F88CC0CE888C8</string>
+			<key>containerPortal</key>
+			<string>E61F9CBEB0CA9A172C4AA56B</string>
 			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>PBXContainerItemProxy</string>
+			<key>proxyType</key>
+			<string>1</string>
+			<key>remoteGlobalIDString</key>
+			<string>66E177AC7F3B02B51D36A226</string>
+			<key>remoteInfo</key>
+			<string>Pods-Sample-GRPCClient</string>
 		</dict>
-		<key>22531AF83592134D3879C3E1</key>
+		<key>73107A4E8F55EFE854586192</key>
 		<dict>
 			<key>fileRef</key>
-			<string>15F64D3D7D10DB47599A72EB</string>
+			<string>732C03DC74F2738AE9E86ECA</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>22DB20D833E7D26AEA6513D6</key>
+		<key>732C03DC74F2738AE9E86ECA</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
@@ -469,26 +2070,84 @@
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
 			<string>sourcecode.c.objc</string>
+			<key>name</key>
+			<string>Pods-Sample-GRPCClient-dummy.m</string>
 			<key>path</key>
-			<string>Pods-dummy.m</string>
+			<string>../Pods-Sample-GRPCClient/Pods-Sample-GRPCClient-dummy.m</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>245F9E9690E6E08D291FC94C</key>
+		<key>741B3AB48094A74BA06E4B41</key>
 		<dict>
-			<key>fileRef</key>
-			<string>BC52B0661F25B25CE382296C</string>
+			<key>baseConfigurationReference</key>
+			<string>6C1CC360881CEA3DD2D1FE14</string>
+			<key>buildSettings</key>
+			<dict>
+				<key>ALWAYS_SEARCH_USER_PATHS</key>
+				<string>NO</string>
+				<key>COPY_PHASE_STRIP</key>
+				<string>YES</string>
+				<key>DSTROOT</key>
+				<string>/tmp/xcodeproj.dst</string>
+				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
+				<string>YES</string>
+				<key>GCC_PREFIX_HEADER</key>
+				<string>Target Support Files/Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-prefix.pch</string>
+				<key>INSTALL_PATH</key>
+				<string>$(BUILT_PRODUCTS_DIR)</string>
+				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
+				<string>8.0</string>
+				<key>OTHER_CFLAGS</key>
+				<array>
+					<string>-DNS_BLOCK_ASSERTIONS=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>OTHER_CPLUSPLUSFLAGS</key>
+				<array>
+					<string>-DNS_BLOCK_ASSERTIONS=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>OTHER_LDFLAGS</key>
+				<string></string>
+				<key>OTHER_LIBTOOLFLAGS</key>
+				<string></string>
+				<key>PRODUCT_NAME</key>
+				<string>$(TARGET_NAME)</string>
+				<key>PUBLIC_HEADERS_FOLDER_PATH</key>
+				<string>$(TARGET_NAME)</string>
+				<key>SDKROOT</key>
+				<string>iphoneos</string>
+				<key>SKIP_INSTALL</key>
+				<string>YES</string>
+				<key>VALIDATE_PRODUCT</key>
+				<string>YES</string>
+			</dict>
 			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>XCBuildConfiguration</string>
+			<key>name</key>
+			<string>Release</string>
+		</dict>
+		<key>7484EC496D674B8D63C9B14A</key>
+		<dict>
+			<key>children</key>
+			<array>
+				<string>808CD0E97EA8B9B2423DFBB4</string>
+			</array>
+			<key>isa</key>
+			<string>PBXGroup</string>
+			<key>name</key>
+			<string>Frameworks</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
 		</dict>
-		<key>266008D38F1E72755C711699</key>
+		<key>7769061BD3B0C3FA2591F01E</key>
 		<dict>
 			<key>fileRef</key>
-			<string>026236C3432E9DBC10A40748</string>
+			<string>0C52B5B243390BA62033C734</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>2663F4401A9075DAC0B24171</key>
+		<key>78C38086F90849CD909A9847</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
@@ -496,61 +2155,159 @@
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
 			<string>sourcecode.c.objc</string>
+			<key>name</key>
+			<string>GRPCMethodName+HTTP2Encoding.m</string>
 			<key>path</key>
-			<string>Pods-RxLibrary-dummy.m</string>
+			<string>private/GRPCMethodName+HTTP2Encoding.m</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>26E6ACBF137DBC325B4E7DA7</key>
+		<key>79254B326EAE190FCCF68500</key>
+		<dict>
+			<key>fileRef</key>
+			<string>D444D13D4D0829CF4142949A</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>7962371F2502CBAEBF859730</key>
 		<dict>
 			<key>buildConfigurationList</key>
-			<string>B05A2B15C8A03AABA163D7D7</string>
+			<string>2EBE2A8DBCF9EED6B632AE6F</string>
 			<key>buildPhases</key>
 			<array>
-				<string>114F64D42E2AF2F3EBDE9BCB</string>
-				<string>DCAB71BD665AF17533987B69</string>
+				<string>0F5AF35D0B405F8C010B9E02</string>
+				<string>0A5311098107B761AEF843FF</string>
 			</array>
 			<key>buildRules</key>
 			<array/>
 			<key>dependencies</key>
 			<array>
-				<string>124B93EFC16A2026269840B2</string>
+				<string>9420C1F89C211902C0D87225</string>
+				<string>7EAAEBF540915967146B03A6</string>
+			</array>
+			<key>isa</key>
+			<string>PBXNativeTarget</string>
+			<key>name</key>
+			<string>Pods</string>
+			<key>productName</key>
+			<string>Pods</string>
+			<key>productReference</key>
+			<string>AD11CEF56188F659CB36CB34</string>
+			<key>productType</key>
+			<string>com.apple.product-type.library.static</string>
+		</dict>
+		<key>7A1AC6EA0DE9920EE46DD7C6</key>
+		<dict>
+			<key>buildActionMask</key>
+			<string>2147483647</string>
+			<key>files</key>
+			<array>
+				<string>D965694635120F86B2E5E101</string>
+				<string>49D70C2F1EBB0B8BC452D632</string>
+				<string>077EB8C42818FBCCF960B6A2</string>
+				<string>8563E3DF7CFBE5A416F679DD</string>
+				<string>B42B413709D355A8828EEC76</string>
+				<string>339F0D64DF0A7BD0AA48186E</string>
+				<string>832D68435FCFF5497A72F1D3</string>
+				<string>BD38F7B336495294670A28A4</string>
+				<string>D54769D14A73816406636B14</string>
+				<string>9D4AD7A95C9F70261CF7E09E</string>
 			</array>
 			<key>isa</key>
-			<string>PBXNativeTarget</string>
+			<string>PBXHeadersBuildPhase</string>
+			<key>runOnlyForDeploymentPostprocessing</key>
+			<string>0</string>
+		</dict>
+		<key>7B72787324EC9346B7243E79</key>
+		<dict>
+			<key>fileRef</key>
+			<string>D6D8919597D4E28EBF5D166B</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>7BA366CBC6DBCDC7984BCC50</key>
+		<dict>
+			<key>baseConfigurationReference</key>
+			<string>CDA9A715DCFCE07755974888</string>
+			<key>buildSettings</key>
+			<dict>
+				<key>ALWAYS_SEARCH_USER_PATHS</key>
+				<string>NO</string>
+				<key>COPY_PHASE_STRIP</key>
+				<string>NO</string>
+				<key>DSTROOT</key>
+				<string>/tmp/xcodeproj.dst</string>
+				<key>GCC_DYNAMIC_NO_PIC</key>
+				<string>NO</string>
+				<key>GCC_OPTIMIZATION_LEVEL</key>
+				<string>0</string>
+				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
+				<string>YES</string>
+				<key>GCC_PREFIX_HEADER</key>
+				<string>Target Support Files/Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient-prefix.pch</string>
+				<key>GCC_PREPROCESSOR_DEFINITIONS</key>
+				<array>
+					<string>DEBUG=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>GCC_SYMBOLS_PRIVATE_EXTERN</key>
+				<string>NO</string>
+				<key>INSTALL_PATH</key>
+				<string>$(BUILT_PRODUCTS_DIR)</string>
+				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
+				<string>8.0</string>
+				<key>OTHER_LDFLAGS</key>
+				<string></string>
+				<key>OTHER_LIBTOOLFLAGS</key>
+				<string></string>
+				<key>PRODUCT_NAME</key>
+				<string>$(TARGET_NAME)</string>
+				<key>PUBLIC_HEADERS_FOLDER_PATH</key>
+				<string>$(TARGET_NAME)</string>
+				<key>SDKROOT</key>
+				<string>iphoneos</string>
+				<key>SKIP_INSTALL</key>
+				<string>YES</string>
+			</dict>
+			<key>isa</key>
+			<string>XCBuildConfiguration</string>
 			<key>name</key>
-			<string>Pods</string>
-			<key>productName</key>
-			<string>Pods</string>
-			<key>productReference</key>
-			<string>5C30ABB95D604B483422D72A</string>
-			<key>productType</key>
-			<string>com.apple.product-type.library.static</string>
+			<string>Debug</string>
 		</dict>
-		<key>27E123435067CC11FE103999</key>
+		<key>7C036237AA7E88A084C751E0</key>
 		<dict>
-			<key>includeInIndex</key>
-			<string>1</string>
+			<key>fileRef</key>
+			<string>2705BF8D166EFF8A2D44B2BA</string>
 			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>lastKnownFileType</key>
-			<string>text.xcconfig</string>
-			<key>path</key>
-			<string>Pods-Sample.release.xcconfig</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>288A25371032891C824CF4AA</key>
+		<key>7C51A49564BFF0A55C886597</key>
 		<dict>
-			<key>fileRef</key>
-			<string>838341407CEBBFB19D25C45A</string>
+			<key>buildActionMask</key>
+			<string>2147483647</string>
+			<key>files</key>
+			<array>
+				<string>79254B326EAE190FCCF68500</string>
+				<string>E23D43F03E7C19D671C93F81</string>
+				<string>E328084D7C583851D3BE25CF</string>
+				<string>8304D6194CF27F78FD63D3E0</string>
+				<string>7E0A094939C76D9C1097CE47</string>
+				<string>6354A9E233C358103A8D02C2</string>
+				<string>6B6C68F7F3769BB8EBEB7EE5</string>
+				<string>9520D95CEA199664DEA83898</string>
+				<string>A8C31E8535FB26B38A1831C0</string>
+				<string>66448F9949C234988DD11E4E</string>
+				<string>95ABB7ADC6AA8ABDA7E32C0B</string>
+			</array>
 			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>PBXSourcesBuildPhase</string>
+			<key>runOnlyForDeploymentPostprocessing</key>
+			<string>0</string>
 		</dict>
-		<key>29B274FDF882AB8B39814FE6</key>
+		<key>7D6F600B59E9C29030A96526</key>
 		<dict>
 			<key>baseConfigurationReference</key>
-			<string>687D79F4C2484F58E9796051</string>
+			<string>A2F53747970EB33A4D75EAB4</string>
 			<key>buildSettings</key>
 			<dict>
 				<key>ALWAYS_SEARCH_USER_PATHS</key>
@@ -566,7 +2323,7 @@
 				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
 				<string>YES</string>
 				<key>GCC_PREFIX_HEADER</key>
-				<string>Target Support Files/Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-prefix.pch</string>
+				<string>Target Support Files/Pods-Sample-GRPCClient/Pods-Sample-GRPCClient-prefix.pch</string>
 				<key>GCC_PREPROCESSOR_DEFINITIONS</key>
 				<array>
 					<string>DEBUG=1</string>
@@ -596,471 +2353,611 @@
 			<key>name</key>
 			<string>Debug</string>
 		</dict>
-		<key>2AADA4C52A284ED5D41C7CF5</key>
+		<key>7E0A094939C76D9C1097CE47</key>
 		<dict>
 			<key>fileRef</key>
-			<string>0D53085043D992DC00E29F0A</string>
+			<string>2DA7CCAA52B82F817FA61F5A</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>2B05A4C21D00E8CF0DE88447</key>
+		<key>7E3BE2E23E465D87ECF0E962</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>sourcecode.c.h</string>
-			<key>name</key>
-			<string>Pods-SampleTests-RxLibrary-prefix.pch</string>
+			<string>sourcecode.c.objc</string>
 			<key>path</key>
-			<string>../Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-prefix.pch</string>
+			<string>Pods-GRPCClient-dummy.m</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>2B341576464148A01DCFB28B</key>
+		<key>7E5BC0233C371682047C39BD</key>
 		<dict>
-			<key>fileRef</key>
-			<string>3AD75C69A61408EF8BE0F247</string>
+			<key>includeInIndex</key>
+			<string>1</string>
 			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.objc</string>
+			<key>path</key>
+			<string>Pods-dummy.m</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>7EAAEBF540915967146B03A6</key>
+		<dict>
+			<key>isa</key>
+			<string>PBXTargetDependency</string>
+			<key>name</key>
+			<string>Pods-RxLibrary</string>
+			<key>target</key>
+			<string>AEECE9DFCC8F060F1E30A421</string>
+			<key>targetProxy</key>
+			<string>DF829332517E7136AED2EC79</string>
 		</dict>
-		<key>2B49DCA723ECBC0F2777B960</key>
+		<key>7EE012957E76C86620A8B82D</key>
 		<dict>
 			<key>fileRef</key>
-			<string>BC52B0661F25B25CE382296C</string>
+			<string>CEA794A7056AFAB8256CC44D</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>2D6833D4D544AC13450405B1</key>
+		<key>7F5DF8C37493F93C2636BAD6</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.h</string>
+			<key>path</key>
+			<string>GRXWriter+Immediate.h</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>808CD0E97EA8B9B2423DFBB4</key>
+		<dict>
+			<key>children</key>
+			<array>
+				<string>A7CE4BCE7B6959BCDC54B854</string>
+			</array>
+			<key>isa</key>
+			<string>PBXGroup</string>
+			<key>name</key>
+			<string>iOS</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>80CC1C2E2C60B0F9CADA36AF</key>
+		<dict>
+			<key>buildActionMask</key>
+			<string>2147483647</string>
+			<key>files</key>
+			<array>
+				<string>164DD73ED2C34BC6B3156AE5</string>
+			</array>
+			<key>isa</key>
+			<string>PBXFrameworksBuildPhase</string>
+			<key>runOnlyForDeploymentPostprocessing</key>
+			<string>0</string>
+		</dict>
+		<key>822AA7CD03CFBA9265225E74</key>
 		<dict>
 			<key>fileRef</key>
-			<string>2663F4401A9075DAC0B24171</string>
+			<string>36CC8128F585662CE7EF2114</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>2D7732FBE1A5A7FC42D4DC4B</key>
+		<key>8304D6194CF27F78FD63D3E0</key>
 		<dict>
 			<key>fileRef</key>
-			<string>56CE61A20C6F88CC0CE888C8</string>
+			<string>19A733EC94B0F847F901D308</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>2DA405F6E578008991B3F9EA</key>
+		<key>832D68435FCFF5497A72F1D3</key>
 		<dict>
 			<key>fileRef</key>
-			<string>BECFE3DCB323841851972996</string>
+			<string>7F5DF8C37493F93C2636BAD6</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>2F91A2AD622F87D98C9B0E1E</key>
+		<key>8563E3DF7CFBE5A416F679DD</key>
 		<dict>
 			<key>fileRef</key>
-			<string>0D53085043D992DC00E29F0A</string>
+			<string>1A2D9424BA1BE0E3B2598D06</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>2FE1D288B8389F925AA3CE0C</key>
+		<key>8565F9710EFA641EF9EAE78E</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>text.xcconfig</string>
+			<string>text.script.sh</string>
 			<key>path</key>
-			<string>Pods-RxLibrary-Private.xcconfig</string>
+			<string>Pods-resources.sh</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>30063D2979A72CA1050BD4A6</key>
+		<key>87F549870DB778A5F152B608</key>
 		<dict>
-			<key>includeInIndex</key>
-			<string>1</string>
+			<key>fileRef</key>
+			<string>A7CE4BCE7B6959BCDC54B854</string>
 			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>lastKnownFileType</key>
-			<string>text</string>
-			<key>path</key>
-			<string>Pods-SampleTests-acknowledgements.markdown</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>8944DC99856C99235675D65C</key>
+		<dict>
+			<key>fileRef</key>
+			<string>517E28171A4524F9C518EAAC</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>3133D1CCCF4F1FE3E893509C</key>
+		<key>8A203557337361CF44D2D664</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>text.xcconfig</string>
+			<string>sourcecode.c.objc</string>
 			<key>path</key>
-			<string>Pods-RxLibrary.xcconfig</string>
+			<string>GRXWriter.m</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>352B4C7135E3BBBFEBAB7F55</key>
+		<key>8ACE4DE290D8847EA219A1B8</key>
 		<dict>
 			<key>fileRef</key>
-			<string>BA9F62DDE37FF0D601A4D5EA</string>
+			<string>2705BF8D166EFF8A2D44B2BA</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>355670384FC160AB6C32765E</key>
+		<key>8C3E05D9178D147F7D7EA7D0</key>
 		<dict>
-			<key>children</key>
-			<array>
-				<string>56CE61A20C6F88CC0CE888C8</string>
-			</array>
+			<key>fileRef</key>
+			<string>EE695A82B047142EA781152E</string>
 			<key>isa</key>
-			<string>PBXGroup</string>
-			<key>name</key>
-			<string>iOS</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>8D0A2E1D25EEA3A096E08B1A</key>
+		<dict>
+			<key>fileRef</key>
+			<string>35A079DEB6141A6FDFF69D63</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>8D8D6FB22E4E5302E899F3C7</key>
+		<dict>
+			<key>fileRef</key>
+			<string>D45F5D73E3D255043B7E349A</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>36C139FD3DEDB8CA2A1D3295</key>
+		<key>8DD3112B6E527E20F688C5A0</key>
 		<dict>
+			<key>explicitFileType</key>
+			<string>archive.ar</string>
 			<key>includeInIndex</key>
-			<string>1</string>
+			<string>0</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
-			<key>lastKnownFileType</key>
-			<string>text</string>
 			<key>path</key>
-			<string>Pods-acknowledgements.markdown</string>
+			<string>libPods-SampleTests-GRPCClient.a</string>
 			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>BUILT_PRODUCTS_DIR</string>
 		</dict>
-		<key>36FF37EAC7E918C4CD867776</key>
+		<key>8F24508F2BC37AE7B2282E42</key>
 		<dict>
 			<key>fileRef</key>
-			<string>EB29FAB1F81F0D17BDAD72D0</string>
+			<string>19A733EC94B0F847F901D308</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>3749A34D3DFA6E2F3539E546</key>
+		<key>8FC9893C41EDC73475EA96B8</key>
 		<dict>
-			<key>buildConfigurations</key>
-			<array>
-				<string>0879DBE6FFA1852D106330B4</string>
-				<string>6B88B9AB87714A903970EAED</string>
-			</array>
-			<key>defaultConfigurationIsVisible</key>
-			<string>0</string>
-			<key>defaultConfigurationName</key>
-			<string>Release</string>
+			<key>buildSettings</key>
+			<dict>
+				<key>ALWAYS_SEARCH_USER_PATHS</key>
+				<string>NO</string>
+				<key>CLANG_CXX_LANGUAGE_STANDARD</key>
+				<string>gnu++0x</string>
+				<key>CLANG_CXX_LIBRARY</key>
+				<string>libc++</string>
+				<key>CLANG_ENABLE_MODULES</key>
+				<string>YES</string>
+				<key>CLANG_ENABLE_OBJC_ARC</key>
+				<string>YES</string>
+				<key>CLANG_WARN_BOOL_CONVERSION</key>
+				<string>YES</string>
+				<key>CLANG_WARN_CONSTANT_CONVERSION</key>
+				<string>YES</string>
+				<key>CLANG_WARN_DIRECT_OBJC_ISA_USAGE</key>
+				<string>YES</string>
+				<key>CLANG_WARN_EMPTY_BODY</key>
+				<string>YES</string>
+				<key>CLANG_WARN_ENUM_CONVERSION</key>
+				<string>YES</string>
+				<key>CLANG_WARN_INT_CONVERSION</key>
+				<string>YES</string>
+				<key>CLANG_WARN_OBJC_ROOT_CLASS</key>
+				<string>YES</string>
+				<key>COPY_PHASE_STRIP</key>
+				<string>YES</string>
+				<key>GCC_C_LANGUAGE_STANDARD</key>
+				<string>gnu99</string>
+				<key>GCC_DYNAMIC_NO_PIC</key>
+				<string>NO</string>
+				<key>GCC_OPTIMIZATION_LEVEL</key>
+				<string>0</string>
+				<key>GCC_PREPROCESSOR_DEFINITIONS</key>
+				<array>
+					<string>DEBUG=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>GCC_SYMBOLS_PRIVATE_EXTERN</key>
+				<string>NO</string>
+				<key>GCC_WARN_64_TO_32_BIT_CONVERSION</key>
+				<string>YES</string>
+				<key>GCC_WARN_ABOUT_RETURN_TYPE</key>
+				<string>YES</string>
+				<key>GCC_WARN_UNDECLARED_SELECTOR</key>
+				<string>YES</string>
+				<key>GCC_WARN_UNINITIALIZED_AUTOS</key>
+				<string>YES</string>
+				<key>GCC_WARN_UNUSED_FUNCTION</key>
+				<string>YES</string>
+				<key>GCC_WARN_UNUSED_VARIABLE</key>
+				<string>YES</string>
+				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
+				<string>8.0</string>
+				<key>ONLY_ACTIVE_ARCH</key>
+				<string>YES</string>
+				<key>STRIP_INSTALLED_PRODUCT</key>
+				<string>NO</string>
+			</dict>
 			<key>isa</key>
-			<string>XCConfigurationList</string>
+			<string>XCBuildConfiguration</string>
+			<key>name</key>
+			<string>Debug</string>
 		</dict>
-		<key>3800855A656C8D0813062074</key>
+		<key>91B3D53E73C867A8F1B3B392</key>
 		<dict>
-			<key>buildConfigurationList</key>
-			<string>9508723D4C0D4321A5188108</string>
-			<key>buildPhases</key>
-			<array>
-				<string>F779618174957BE31FCCDE56</string>
-				<string>45FC41033EB61B16BC8151B9</string>
-				<string>8AB7020D9B71B1B4F34249BE</string>
-			</array>
-			<key>buildRules</key>
-			<array/>
-			<key>dependencies</key>
-			<array/>
+			<key>fileRef</key>
+			<string>BC51F603F893AA6A748EB8EC</string>
 			<key>isa</key>
-			<string>PBXNativeTarget</string>
-			<key>name</key>
-			<string>Pods-SampleTests-RxLibrary</string>
-			<key>productName</key>
-			<string>Pods-SampleTests-RxLibrary</string>
-			<key>productReference</key>
-			<string>11072993378724E9AF9CAF85</string>
-			<key>productType</key>
-			<string>com.apple.product-type.library.static</string>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>91D5786D0585930DEFAB636E</key>
+		<dict>
+			<key>fileRef</key>
+			<string>F541961867C9493F07D54B8E</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>932CFA5D0C5C2C8DA3C328AF</key>
+		<dict>
+			<key>explicitFileType</key>
+			<string>archive.ar</string>
+			<key>includeInIndex</key>
+			<string>0</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>path</key>
+			<string>libPods-GRPCClient.a</string>
+			<key>sourceTree</key>
+			<string>BUILT_PRODUCTS_DIR</string>
 		</dict>
-		<key>397A12919FB4BDD608FE207C</key>
+		<key>93CEF17866E8E476701B3AEB</key>
 		<dict>
-			<key>children</key>
-			<array>
-				<string>B4FB10339A6A2E1AAF255802</string>
-				<string>5840BDD08ED67C12ADB1DF08</string>
-				<string>817F8B2E38A51910E8F8EC7D</string>
-				<string>8B05D39455D5B23720961FA4</string>
-				<string>F2BB78774BCEFD5DDDF38239</string>
-			</array>
+			<key>includeInIndex</key>
+			<string>1</string>
 			<key>isa</key>
-			<string>PBXGroup</string>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.objc</string>
+			<key>path</key>
+			<string>Pods-RxLibrary-dummy.m</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>3A4DE73D0D0274E782C1A564</key>
+		<key>9420C1F89C211902C0D87225</key>
 		<dict>
-			<key>fileRef</key>
-			<string>56CE61A20C6F88CC0CE888C8</string>
 			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>PBXTargetDependency</string>
+			<key>name</key>
+			<string>Pods-GRPCClient</string>
+			<key>target</key>
+			<string>AB3F9F2CFA29030A599E9231</string>
+			<key>targetProxy</key>
+			<string>D6715088D2AB1CBAA49F8651</string>
 		</dict>
-		<key>3AD75C69A61408EF8BE0F247</key>
+		<key>9470FB5E010191C87542871D</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>sourcecode.c.objc</string>
+			<string>sourcecode.c.h</string>
 			<key>path</key>
-			<string>GRXWriteable.m</string>
+			<string>GRXImmediateWriter.h</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>3C3F1A188E25219C230FFD4F</key>
+		<key>94DDD64BC43C045541FB9BEC</key>
 		<dict>
 			<key>fileRef</key>
-			<string>9DADE0CF857B717294F7F74F</string>
+			<string>EE695A82B047142EA781152E</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>404D4F98249F3383235463A4</key>
+		<key>9520D95CEA199664DEA83898</key>
 		<dict>
 			<key>fileRef</key>
-			<string>56CE61A20C6F88CC0CE888C8</string>
+			<string>439AF2B977736E012C79B2FE</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>407E794549893DD91A2ED84E</key>
+		<key>95ABB7ADC6AA8ABDA7E32C0B</key>
 		<dict>
 			<key>fileRef</key>
-			<string>DB0257E62EC33F3F316EF017</string>
+			<string>357862381E5517983B1A7AA9</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>42A375125393D0613249D046</key>
+		<key>96CD01ACF90F6977972AA5C7</key>
+		<dict>
+			<key>fileRef</key>
+			<string>53A5EA857F02C1DEEC269122</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>98695E4E6F8168938F9CC49E</key>
 		<dict>
-			<key>explicitFileType</key>
-			<string>archive.ar</string>
 			<key>includeInIndex</key>
-			<string>0</string>
+			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>text</string>
 			<key>path</key>
-			<string>libPods-SampleTests.a</string>
+			<string>Pods-Sample-acknowledgements.markdown</string>
 			<key>sourceTree</key>
-			<string>BUILT_PRODUCTS_DIR</string>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>9A637A6516AB11F29615FC18</key>
+		<dict>
+			<key>buildConfigurations</key>
+			<array>
+				<string>7BA366CBC6DBCDC7984BCC50</string>
+				<string>1D1E67A62BDD0A04136468E9</string>
+			</array>
+			<key>defaultConfigurationIsVisible</key>
+			<string>0</string>
+			<key>defaultConfigurationName</key>
+			<string>Release</string>
+			<key>isa</key>
+			<string>XCConfigurationList</string>
 		</dict>
-		<key>42B461F095E85911637DFD60</key>
+		<key>9B871E85E76E178A206CC642</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>sourcecode.c.objc</string>
-			<key>name</key>
-			<string>Pods-SampleTests-RxLibrary-dummy.m</string>
+			<string>text.xcconfig</string>
 			<key>path</key>
-			<string>../Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-dummy.m</string>
+			<string>Pods.release.xcconfig</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>432AE81157886BE484236751</key>
+		<key>9C6B481EF2F6601D5D6F4B6D</key>
+		<dict>
+			<key>fileRef</key>
+			<string>6394EA7A57663B87FD034792</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>9CC98083B837EFAE1058E03E</key>
+		<dict>
+			<key>fileRef</key>
+			<string>68A0ACB0AFAA7186EB2ABE09</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>9CFF85471050427EE3796F6F</key>
 		<dict>
 			<key>buildActionMask</key>
 			<string>2147483647</string>
 			<key>files</key>
 			<array>
-				<string>266008D38F1E72755C711699</string>
+				<string>D548663391776A14DCAC50B8</string>
 			</array>
 			<key>isa</key>
-			<string>PBXSourcesBuildPhase</string>
+			<string>PBXFrameworksBuildPhase</string>
 			<key>runOnlyForDeploymentPostprocessing</key>
 			<string>0</string>
 		</dict>
-		<key>43CC797FB2A733DF5B7A9F05</key>
+		<key>9D4AD7A95C9F70261CF7E09E</key>
 		<dict>
 			<key>fileRef</key>
-			<string>15F64D3D7D10DB47599A72EB</string>
+			<string>2705BF8D166EFF8A2D44B2BA</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>458FF1EEF4EB9646C699F3DD</key>
+		<key>9F21B0DA9C171E66AC1CB1E2</key>
 		<dict>
-			<key>fileRef</key>
-			<string>57AC9BF19B9635D7476CA5FA</string>
+			<key>containerPortal</key>
+			<string>E61F9CBEB0CA9A172C4AA56B</string>
 			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>PBXContainerItemProxy</string>
+			<key>proxyType</key>
+			<string>1</string>
+			<key>remoteGlobalIDString</key>
+			<string>4E2021A981DA9A189922E0C6</string>
+			<key>remoteInfo</key>
+			<string>Pods-Sample-RxLibrary</string>
 		</dict>
-		<key>45A1913C8F48686C1FC82520</key>
+		<key>9F3C74AA5715E325880AE886</key>
 		<dict>
 			<key>fileRef</key>
-			<string>9DADE0CF857B717294F7F74F</string>
+			<string>F776B445ABD393C908B02302</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>45FC41033EB61B16BC8151B9</key>
+		<key>A0064CCC8EC60B3CD0E4F72F</key>
 		<dict>
-			<key>buildActionMask</key>
-			<string>2147483647</string>
-			<key>files</key>
+			<key>children</key>
 			<array>
-				<string>2D7732FBE1A5A7FC42D4DC4B</string>
+				<string>430E7D130A089632FA407274</string>
+				<string>D7BA8B8D4FFF3674A537221D</string>
 			</array>
 			<key>isa</key>
-			<string>PBXFrameworksBuildPhase</string>
-			<key>runOnlyForDeploymentPostprocessing</key>
-			<string>0</string>
+			<string>PBXGroup</string>
+			<key>name</key>
+			<string>Development Pods</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
 		</dict>
-		<key>46513F4AD14CBD2377C1E7A1</key>
+		<key>A0416D4A1F0C863C1856405A</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>sourcecode.c.h</string>
-			<key>name</key>
-			<string>GRXNSFastEnumerator.h</string>
+			<string>text.xcconfig</string>
 			<key>path</key>
-			<string>private/GRXNSFastEnumerator.h</string>
+			<string>Pods-Sample.release.xcconfig</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>46A8EFCC59CF17E048EC34ED</key>
+		<key>A0B86020532CA90CD846B0C8</key>
 		<dict>
 			<key>fileRef</key>
-			<string>5AEFA85A5F1AD206D68B0576</string>
+			<string>7E5BC0233C371682047C39BD</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>46FAFA88CA3E774263422EB9</key>
+		<key>A0C815D67EA636E8E6A5E655</key>
 		<dict>
 			<key>fileRef</key>
-			<string>3AD75C69A61408EF8BE0F247</string>
+			<string>2D97FDE1D611758F0CC8EAC3</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>4946B2D315E9BF5CBACD7D52</key>
+		<key>A0C9AE64F2D6C0E3A4F26302</key>
 		<dict>
-			<key>includeInIndex</key>
-			<string>1</string>
+			<key>fileRef</key>
+			<string>6BBDA0AD2955451BBF881052</string>
 			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>lastKnownFileType</key>
-			<string>text.plist.xml</string>
-			<key>path</key>
-			<string>Pods-acknowledgements.plist</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>4954E8CE730737CD2991E502</key>
+		<key>A10CFA4D4ED9B20894905742</key>
 		<dict>
-			<key>children</key>
+			<key>buildConfigurationList</key>
+			<string>9A637A6516AB11F29615FC18</string>
+			<key>buildPhases</key>
 			<array>
-				<string>BECFE3DCB323841851972996</string>
-				<string>BC52B0661F25B25CE382296C</string>
-				<string>9CFAC09E370EA1C96C8D2880</string>
-				<string>15F64D3D7D10DB47599A72EB</string>
-				<string>5AEFA85A5F1AD206D68B0576</string>
-				<string>4BB75B0FC7359E8EA8672954</string>
-				<string>46513F4AD14CBD2377C1E7A1</string>
-				<string>636AC1003F2C71FFD74542CD</string>
-				<string>1868370C0050315A6B835D42</string>
-				<string>57AC9BF19B9635D7476CA5FA</string>
-				<string>0D53085043D992DC00E29F0A</string>
-				<string>3AD75C69A61408EF8BE0F247</string>
-				<string>DB0257E62EC33F3F316EF017</string>
-				<string>BDA58E5E1AE450540A2B0227</string>
-				<string>0260773D27B4AE159FB0B22D</string>
-				<string>EB29FAB1F81F0D17BDAD72D0</string>
-				<string>838341407CEBBFB19D25C45A</string>
-				<string>F763F3DF1B47888E75D0ED9C</string>
-				<string>9DADE0CF857B717294F7F74F</string>
-				<string>BA9F62DDE37FF0D601A4D5EA</string>
-				<string>D49849E96C0C5FFB93C810CD</string>
+				<string>B31604CF386150298F4572B7</string>
+				<string>80CC1C2E2C60B0F9CADA36AF</string>
+				<string>A7DF070735AAA7A85C474BBD</string>
+			</array>
+			<key>buildRules</key>
+			<array/>
+			<key>dependencies</key>
+			<array>
+				<string>EF97D57CA44A79151103F06B</string>
 			</array>
 			<key>isa</key>
-			<string>PBXGroup</string>
-			<key>name</key>
-			<string>RxLibrary</string>
-			<key>path</key>
-			<string>../../../RxLibrary</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
-		</dict>
-		<key>4972C151CE9A8A15BC1AE2C8</key>
-		<dict>
-			<key>includeInIndex</key>
-			<string>1</string>
-			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>lastKnownFileType</key>
-			<string>sourcecode.c.h</string>
+			<string>PBXNativeTarget</string>
 			<key>name</key>
-			<string>Pods-Sample-RxLibrary-prefix.pch</string>
-			<key>path</key>
-			<string>../Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-prefix.pch</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>Pods-SampleTests-GRPCClient</string>
+			<key>productName</key>
+			<string>Pods-SampleTests-GRPCClient</string>
+			<key>productReference</key>
+			<string>8DD3112B6E527E20F688C5A0</string>
+			<key>productType</key>
+			<string>com.apple.product-type.library.static</string>
 		</dict>
-		<key>4BB47C74830C63C90981278E</key>
+		<key>A152A54E946159BB41FF6E04</key>
 		<dict>
 			<key>buildActionMask</key>
 			<string>2147483647</string>
 			<key>files</key>
 			<array>
-				<string>245F9E9690E6E08D291FC94C</string>
-				<string>A96854FB48432263FE68C313</string>
-				<string>AA52EF1CD8A3683472BD86FE</string>
-				<string>BB88043BB37FC0261BA90A30</string>
-				<string>54A02FC8DA14CEC49EA8C8D5</string>
-				<string>B7902691B66134F3764663D9</string>
-				<string>19001096C873023095C4F032</string>
-				<string>E86A17CE1D79ECDCEBF91109</string>
-				<string>8BB6B6B3653FC309CB8EB3A0</string>
-				<string>7BBF3F432525D33FCB074BD5</string>
-				<string>2D6833D4D544AC13450405B1</string>
+				<string>F4586BA420EA562FECC43A3A</string>
 			</array>
 			<key>isa</key>
-			<string>PBXSourcesBuildPhase</string>
+			<string>PBXFrameworksBuildPhase</string>
 			<key>runOnlyForDeploymentPostprocessing</key>
 			<string>0</string>
 		</dict>
-		<key>4BB75B0FC7359E8EA8672954</key>
+		<key>A2F53747970EB33A4D75EAB4</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>sourcecode.c.objc</string>
+			<string>text.xcconfig</string>
 			<key>name</key>
-			<string>GRXNSBlockEnumerator.m</string>
+			<string>Pods-Sample-GRPCClient-Private.xcconfig</string>
 			<key>path</key>
-			<string>private/GRXNSBlockEnumerator.m</string>
+			<string>../Pods-Sample-GRPCClient/Pods-Sample-GRPCClient-Private.xcconfig</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>50FF607D5DA961C6BEF4ABAC</key>
+		<key>A32A838D0E36519FB68C73DF</key>
 		<dict>
-			<key>fileRef</key>
-			<string>838341407CEBBFB19D25C45A</string>
+			<key>includeInIndex</key>
+			<string>1</string>
 			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>text.plist.xml</string>
+			<key>path</key>
+			<string>Pods-SampleTests-acknowledgements.plist</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
 		</dict>
-		<key>5280A583CA6C6C66698AE67C</key>
+		<key>A5A038CAD7AF2C628752EF63</key>
 		<dict>
 			<key>fileRef</key>
-			<string>DB0257E62EC33F3F316EF017</string>
+			<string>D0E4885FFC11D4A532FAB517</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>54A02FC8DA14CEC49EA8C8D5</key>
+		<key>A5EDB7E25EA71C67EF1B3F82</key>
 		<dict>
-			<key>fileRef</key>
-			<string>57AC9BF19B9635D7476CA5FA</string>
+			<key>buildActionMask</key>
+			<string>2147483647</string>
+			<key>files</key>
+			<array>
+				<string>96CD01ACF90F6977972AA5C7</string>
+				<string>41FD4DEF364AC343F07212C1</string>
+				<string>152BFB6270DCF24A85D66444</string>
+				<string>FD9953A9B079B03396B2FEA3</string>
+				<string>4F529EACF630FA5A638408A4</string>
+				<string>CDB4449E284965A752BD1786</string>
+				<string>A8CBA848BF8F6538176F3424</string>
+				<string>5BDD559FB35594584D1BE09E</string>
+				<string>A0C9AE64F2D6C0E3A4F26302</string>
+				<string>73107A4E8F55EFE854586192</string>
+			</array>
 			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>PBXSourcesBuildPhase</string>
+			<key>runOnlyForDeploymentPostprocessing</key>
+			<string>0</string>
 		</dict>
-		<key>56CE61A20C6F88CC0CE888C8</key>
+		<key>A7CE4BCE7B6959BCDC54B854</key>
 		<dict>
 			<key>isa</key>
 			<string>PBXFileReference</string>
@@ -1073,125 +2970,132 @@
 			<key>sourceTree</key>
 			<string>DEVELOPER_DIR</string>
 		</dict>
-		<key>57AC9BF19B9635D7476CA5FA</key>
+		<key>A7DF070735AAA7A85C474BBD</key>
 		<dict>
-			<key>includeInIndex</key>
-			<string>1</string>
+			<key>buildActionMask</key>
+			<string>2147483647</string>
+			<key>files</key>
+			<array>
+				<string>91B3D53E73C867A8F1B3B392</string>
+				<string>3C7D98B6D2E351C032BE20A6</string>
+				<string>AC6CF5430FB75930354FD7B3</string>
+				<string>306408CC38FAB0410E0D90E7</string>
+				<string>94DDD64BC43C045541FB9BEC</string>
+				<string>D0B7F6736070533C215E7DE3</string>
+				<string>E05C4D27465DD5F292E2A8EE</string>
+				<string>42669F81E3800361030A567A</string>
+				<string>2CF8BB8D6A668D6213E18915</string>
+			</array>
 			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>lastKnownFileType</key>
-			<string>sourcecode.c.objc</string>
-			<key>name</key>
-			<string>GRXNSScalarEnumerator.m</string>
-			<key>path</key>
-			<string>private/GRXNSScalarEnumerator.m</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>PBXHeadersBuildPhase</string>
+			<key>runOnlyForDeploymentPostprocessing</key>
+			<string>0</string>
 		</dict>
-		<key>5840BDD08ED67C12ADB1DF08</key>
+		<key>A8C31E8535FB26B38A1831C0</key>
 		<dict>
-			<key>children</key>
-			<array>
-				<string>4954E8CE730737CD2991E502</string>
-			</array>
+			<key>fileRef</key>
+			<string>8A203557337361CF44D2D664</string>
 			<key>isa</key>
-			<string>PBXGroup</string>
-			<key>name</key>
-			<string>Development Pods</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>591702CE7D8AF91674F1640F</key>
+		<key>A8CBA848BF8F6538176F3424</key>
 		<dict>
-			<key>includeInIndex</key>
-			<string>1</string>
+			<key>fileRef</key>
+			<string>36CC8128F585662CE7EF2114</string>
 			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>lastKnownFileType</key>
-			<string>text.xcconfig</string>
-			<key>path</key>
-			<string>Pods-SampleTests.debug.xcconfig</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>594F98D43B96AB5C11E61C10</key>
+		<key>AAAEE7AE6F373AA2C0D1969F</key>
 		<dict>
 			<key>fileRef</key>
-			<string>F763F3DF1B47888E75D0ED9C</string>
+			<string>78C38086F90849CD909A9847</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>5AEFA85A5F1AD206D68B0576</key>
+		<key>AAD40140819824C5EF180664</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>sourcecode.c.h</string>
+			<string>text.xcconfig</string>
 			<key>name</key>
-			<string>GRXNSBlockEnumerator.h</string>
+			<string>Pods-Sample-GRPCClient.xcconfig</string>
 			<key>path</key>
-			<string>private/GRXNSBlockEnumerator.h</string>
+			<string>../Pods-Sample-GRPCClient/Pods-Sample-GRPCClient.xcconfig</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>5B8A3BFE016346EF080D52C6</key>
+		<key>AB2C87B84886AB4CF107C5A1</key>
 		<dict>
-			<key>buildActionMask</key>
-			<string>2147483647</string>
-			<key>files</key>
-			<array>
-				<string>3A4DE73D0D0274E782C1A564</string>
-			</array>
+			<key>fileRef</key>
+			<string>517E28171A4524F9C518EAAC</string>
 			<key>isa</key>
-			<string>PBXFrameworksBuildPhase</string>
-			<key>runOnlyForDeploymentPostprocessing</key>
-			<string>0</string>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>5C30ABB95D604B483422D72A</key>
+		<key>AB3F9F2CFA29030A599E9231</key>
 		<dict>
-			<key>explicitFileType</key>
-			<string>archive.ar</string>
-			<key>includeInIndex</key>
-			<string>0</string>
+			<key>buildConfigurationList</key>
+			<string>ADEFC2A6E68AD0102A5683BB</string>
+			<key>buildPhases</key>
+			<array>
+				<string>D5B158492CFF90F975B03B8D</string>
+				<string>0CA3C7D4D3EF8429533AB7D5</string>
+				<string>44C27BC8E89A85C90BC42638</string>
+			</array>
+			<key>buildRules</key>
+			<array/>
+			<key>dependencies</key>
+			<array>
+				<string>6EDAC415AC0B16B221E0397F</string>
+			</array>
 			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>path</key>
-			<string>libPods.a</string>
-			<key>sourceTree</key>
-			<string>BUILT_PRODUCTS_DIR</string>
+			<string>PBXNativeTarget</string>
+			<key>name</key>
+			<string>Pods-GRPCClient</string>
+			<key>productName</key>
+			<string>Pods-GRPCClient</string>
+			<key>productReference</key>
+			<string>932CFA5D0C5C2C8DA3C328AF</string>
+			<key>productType</key>
+			<string>com.apple.product-type.library.static</string>
 		</dict>
-		<key>5DE93D7B39D2D1AD7336C4AC</key>
+		<key>AC12B8262555F9F61255BBC0</key>
 		<dict>
-			<key>fileRef</key>
-			<string>838341407CEBBFB19D25C45A</string>
+			<key>buildConfigurations</key>
+			<array>
+				<string>BE19113B79057D8A53A04303</string>
+				<string>0E66C9AA7C5988807A667377</string>
+			</array>
+			<key>defaultConfigurationIsVisible</key>
+			<string>0</string>
+			<key>defaultConfigurationName</key>
+			<string>Release</string>
 			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>XCConfigurationList</string>
 		</dict>
-		<key>621587D6C7759FBE7096D185</key>
+		<key>AC6CF5430FB75930354FD7B3</key>
 		<dict>
 			<key>fileRef</key>
-			<string>46513F4AD14CBD2377C1E7A1</string>
+			<string>6A4F426FF21092B2A4B44022</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>636AC1003F2C71FFD74542CD</key>
+		<key>AD11CEF56188F659CB36CB34</key>
 		<dict>
+			<key>explicitFileType</key>
+			<string>archive.ar</string>
 			<key>includeInIndex</key>
-			<string>1</string>
+			<string>0</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
-			<key>lastKnownFileType</key>
-			<string>sourcecode.c.objc</string>
-			<key>name</key>
-			<string>GRXNSFastEnumerator.m</string>
 			<key>path</key>
-			<string>private/GRXNSFastEnumerator.m</string>
+			<string>libPods.a</string>
 			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>BUILT_PRODUCTS_DIR</string>
 		</dict>
-		<key>687D79F4C2484F58E9796051</key>
+		<key>AD88FBBAFBF1F13467342BD1</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
@@ -1199,51 +3103,103 @@
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
 			<string>text.xcconfig</string>
-			<key>name</key>
-			<string>Pods-SampleTests-RxLibrary-Private.xcconfig</string>
 			<key>path</key>
-			<string>../Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-Private.xcconfig</string>
+			<string>Pods-GRPCClient.xcconfig</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>69E8FF71552D08D72B9068F1</key>
+		<key>ADEFC2A6E68AD0102A5683BB</key>
 		<dict>
-			<key>children</key>
+			<key>buildConfigurations</key>
 			<array>
-				<string>36C139FD3DEDB8CA2A1D3295</string>
-				<string>4946B2D315E9BF5CBACD7D52</string>
-				<string>22DB20D833E7D26AEA6513D6</string>
-				<string>1C8DFDF9C457D910DC1FD227</string>
-				<string>E14CB6F332A9E58BB5F76C07</string>
-				<string>6AC13D00A5A61BDA0DE5FAAF</string>
-				<string>A577CB571492B4F951064FCF</string>
+				<string>CA294BA3C4F9A1948B2AE213</string>
+				<string>53E7256294CEEC3844B70A31</string>
 			</array>
+			<key>defaultConfigurationIsVisible</key>
+			<string>0</string>
+			<key>defaultConfigurationName</key>
+			<string>Release</string>
 			<key>isa</key>
-			<string>PBXGroup</string>
+			<string>XCConfigurationList</string>
+		</dict>
+		<key>AEECE9DFCC8F060F1E30A421</key>
+		<dict>
+			<key>buildConfigurationList</key>
+			<string>FF34F6701990B0955422EC9C</string>
+			<key>buildPhases</key>
+			<array>
+				<string>1EFB19037775E7D8E9F6FC6B</string>
+				<string>D0C130BBB6DBFE22F6B649E8</string>
+				<string>7A1AC6EA0DE9920EE46DD7C6</string>
+			</array>
+			<key>buildRules</key>
+			<array/>
+			<key>dependencies</key>
+			<array/>
+			<key>isa</key>
+			<string>PBXNativeTarget</string>
 			<key>name</key>
-			<string>Pods</string>
-			<key>path</key>
-			<string>Target Support Files/Pods</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>Pods-RxLibrary</string>
+			<key>productName</key>
+			<string>Pods-RxLibrary</string>
+			<key>productReference</key>
+			<string>00303CC3049D1C9E8709A044</string>
+			<key>productType</key>
+			<string>com.apple.product-type.library.static</string>
 		</dict>
-		<key>6AC13D00A5A61BDA0DE5FAAF</key>
+		<key>AF8AB55F74FABAD365BDACF0</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>text.xcconfig</string>
+			<string>text</string>
 			<key>path</key>
-			<string>Pods.debug.xcconfig</string>
+			<string>Pods-acknowledgements.markdown</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>6B5B56ED61BE76782DF02817</key>
+		<key>B22A719DB3DFD2337E996D6A</key>
+		<dict>
+			<key>buildConfigurations</key>
+			<array>
+				<string>8FC9893C41EDC73475EA96B8</string>
+				<string>0CB824BF5CED7188A205D06F</string>
+			</array>
+			<key>defaultConfigurationIsVisible</key>
+			<string>0</string>
+			<key>defaultConfigurationName</key>
+			<string>Release</string>
+			<key>isa</key>
+			<string>XCConfigurationList</string>
+		</dict>
+		<key>B31604CF386150298F4572B7</key>
+		<dict>
+			<key>buildActionMask</key>
+			<string>2147483647</string>
+			<key>files</key>
+			<array>
+				<string>5654D46158ECA8C27895A755</string>
+				<string>FA5E9BC13067F1E32D6311E6</string>
+				<string>078103DC988BEF03083FEB98</string>
+				<string>D80E545131A1D2922F88C5D7</string>
+				<string>3B52D357FFBB1F7AA20D702F</string>
+				<string>F2B5B896D8C7E13B5E8ADA28</string>
+				<string>4B0816A85B8DA041883CEDBE</string>
+				<string>B6D29DCA02F3DFEEB77A8567</string>
+				<string>C55E900FEB92A7F9134BA484</string>
+				<string>A5A038CAD7AF2C628752EF63</string>
+			</array>
+			<key>isa</key>
+			<string>PBXSourcesBuildPhase</string>
+			<key>runOnlyForDeploymentPostprocessing</key>
+			<string>0</string>
+		</dict>
+		<key>B32DC879307F72182ED4B8EF</key>
 		<dict>
 			<key>baseConfigurationReference</key>
-			<string>687D79F4C2484F58E9796051</string>
+			<string>9B871E85E76E178A206CC642</string>
 			<key>buildSettings</key>
 			<dict>
 				<key>ALWAYS_SEARCH_USER_PATHS</key>
@@ -1254,8 +3210,6 @@
 				<string>/tmp/xcodeproj.dst</string>
 				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
 				<string>YES</string>
-				<key>GCC_PREFIX_HEADER</key>
-				<string>Target Support Files/Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-prefix.pch</string>
 				<key>INSTALL_PATH</key>
 				<string>$(BUILT_PRODUCTS_DIR)</string>
 				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
@@ -1290,104 +3244,118 @@
 			<key>name</key>
 			<string>Release</string>
 		</dict>
-		<key>6B88B9AB87714A903970EAED</key>
+		<key>B367BCF63161EE64CC1B1DE0</key>
 		<dict>
-			<key>buildSettings</key>
-			<dict>
-				<key>ALWAYS_SEARCH_USER_PATHS</key>
-				<string>NO</string>
-				<key>CLANG_CXX_LANGUAGE_STANDARD</key>
-				<string>gnu++0x</string>
-				<key>CLANG_CXX_LIBRARY</key>
-				<string>libc++</string>
-				<key>CLANG_ENABLE_MODULES</key>
-				<string>YES</string>
-				<key>CLANG_ENABLE_OBJC_ARC</key>
-				<string>YES</string>
-				<key>CLANG_WARN_BOOL_CONVERSION</key>
-				<string>YES</string>
-				<key>CLANG_WARN_CONSTANT_CONVERSION</key>
-				<string>YES</string>
-				<key>CLANG_WARN_DIRECT_OBJC_ISA_USAGE</key>
-				<string>YES</string>
-				<key>CLANG_WARN_EMPTY_BODY</key>
-				<string>YES</string>
-				<key>CLANG_WARN_ENUM_CONVERSION</key>
-				<string>YES</string>
-				<key>CLANG_WARN_INT_CONVERSION</key>
-				<string>YES</string>
-				<key>CLANG_WARN_OBJC_ROOT_CLASS</key>
-				<string>YES</string>
-				<key>COPY_PHASE_STRIP</key>
-				<string>NO</string>
-				<key>ENABLE_NS_ASSERTIONS</key>
-				<string>NO</string>
-				<key>GCC_C_LANGUAGE_STANDARD</key>
-				<string>gnu99</string>
-				<key>GCC_PREPROCESSOR_DEFINITIONS</key>
-				<array>
-					<string>RELEASE=1</string>
-				</array>
-				<key>GCC_WARN_64_TO_32_BIT_CONVERSION</key>
-				<string>YES</string>
-				<key>GCC_WARN_ABOUT_RETURN_TYPE</key>
-				<string>YES</string>
-				<key>GCC_WARN_UNDECLARED_SELECTOR</key>
-				<string>YES</string>
-				<key>GCC_WARN_UNINITIALIZED_AUTOS</key>
-				<string>YES</string>
-				<key>GCC_WARN_UNUSED_FUNCTION</key>
-				<string>YES</string>
-				<key>GCC_WARN_UNUSED_VARIABLE</key>
-				<string>YES</string>
-				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
-				<string>8.0</string>
-				<key>STRIP_INSTALLED_PRODUCT</key>
-				<string>NO</string>
-				<key>VALIDATE_PRODUCT</key>
-				<string>YES</string>
-			</dict>
+			<key>fileRef</key>
+			<string>68A0ACB0AFAA7186EB2ABE09</string>
 			<key>isa</key>
-			<string>XCBuildConfiguration</string>
-			<key>name</key>
-			<string>Release</string>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>6BFD156F312F6CAA1E5B00CA</key>
+		<key>B37278C2CEC4C1C433BEF120</key>
 		<dict>
 			<key>buildConfigurationList</key>
-			<string>962FF5FAC21292530C615D05</string>
+			<string>F6A0AD6C190915DD52886BE2</string>
 			<key>buildPhases</key>
 			<array>
-				<string>4BB47C74830C63C90981278E</string>
-				<string>5B8A3BFE016346EF080D52C6</string>
-				<string>A4C1C82F355864E7D3E200DD</string>
+				<string>40F1A996749176D9DB148901</string>
+				<string>A152A54E946159BB41FF6E04</string>
 			</array>
 			<key>buildRules</key>
 			<array/>
 			<key>dependencies</key>
-			<array/>
+			<array>
+				<string>2504847B854AC340A0712235</string>
+				<string>041582131ADE9EA5C2A319BB</string>
+			</array>
 			<key>isa</key>
 			<string>PBXNativeTarget</string>
 			<key>name</key>
-			<string>Pods-RxLibrary</string>
+			<string>Pods-SampleTests</string>
 			<key>productName</key>
-			<string>Pods-RxLibrary</string>
+			<string>Pods-SampleTests</string>
 			<key>productReference</key>
-			<string>A579EC5BE7E68C55CA5FECDE</string>
+			<string>675E56BADC0C4C93E3B6B263</string>
 			<key>productType</key>
 			<string>com.apple.product-type.library.static</string>
 		</dict>
-		<key>6D1D41BAE4E325572FAC7B17</key>
+		<key>B37BACFCD1765840986F8AC5</key>
+		<dict>
+			<key>fileRef</key>
+			<string>8A203557337361CF44D2D664</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>B42B413709D355A8828EEC76</key>
+		<dict>
+			<key>fileRef</key>
+			<string>617AA57F150724B1881EC92E</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>B5E4A18F0B2376BE20D1C8A5</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.h</string>
+			<key>path</key>
+			<string>GRXWriter.h</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>B6D29DCA02F3DFEEB77A8567</key>
+		<dict>
+			<key>fileRef</key>
+			<string>66A375345A9F319AE182BDBD</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>B7FD4EDD742EE7C18D733B84</key>
+		<dict>
+			<key>fileRef</key>
+			<string>3E850442224A3D7C7540C6C5</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>BC51F603F893AA6A748EB8EC</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.h</string>
+			<key>path</key>
+			<string>GRPCCall.h</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>BCB580E2193B3624D1C471DB</key>
+		<dict>
+			<key>containerPortal</key>
+			<string>E61F9CBEB0CA9A172C4AA56B</string>
+			<key>isa</key>
+			<string>PBXContainerItemProxy</string>
+			<key>proxyType</key>
+			<string>1</string>
+			<key>remoteGlobalIDString</key>
+			<string>AEECE9DFCC8F060F1E30A421</string>
+			<key>remoteInfo</key>
+			<string>Pods-RxLibrary</string>
+		</dict>
+		<key>BD38F7B336495294670A28A4</key>
 		<dict>
 			<key>fileRef</key>
-			<string>9DADE0CF857B717294F7F74F</string>
+			<string>F776B445ABD393C908B02302</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>6E00FD6D197F0D1332D11199</key>
+		<key>BE19113B79057D8A53A04303</key>
 		<dict>
 			<key>baseConfigurationReference</key>
-			<string>1B8264EEFEF4AD585182D256</string>
+			<string>28C6D48989DA211E0BACAFC2</string>
 			<key>buildSettings</key>
 			<dict>
 				<key>ALWAYS_SEARCH_USER_PATHS</key>
@@ -1427,32 +3395,124 @@
 				<string>YES</string>
 			</dict>
 			<key>isa</key>
-			<string>XCBuildConfiguration</string>
-			<key>name</key>
-			<string>Debug</string>
+			<string>XCBuildConfiguration</string>
+			<key>name</key>
+			<string>Debug</string>
+		</dict>
+		<key>BEEA6A0D27020465FC6CD0AA</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>text.script.sh</string>
+			<key>path</key>
+			<string>Pods-Sample-resources.sh</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>C31B151DCFB1F263B8E344BF</key>
+		<dict>
+			<key>fileRef</key>
+			<string>6A4F426FF21092B2A4B44022</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>C3E4DEFB7877BA48A9458947</key>
+		<dict>
+			<key>fileRef</key>
+			<string>1A2D9424BA1BE0E3B2598D06</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>C438A6F7EF173F2ED50AF192</key>
+		<dict>
+			<key>explicitFileType</key>
+			<string>archive.ar</string>
+			<key>includeInIndex</key>
+			<string>0</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>path</key>
+			<string>libPods-SampleTests-RxLibrary.a</string>
+			<key>sourceTree</key>
+			<string>BUILT_PRODUCTS_DIR</string>
+		</dict>
+		<key>C55E900FEB92A7F9134BA484</key>
+		<dict>
+			<key>fileRef</key>
+			<string>6BBDA0AD2955451BBF881052</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>C59D49EFF10934AFF82CA873</key>
+		<dict>
+			<key>fileRef</key>
+			<string>C5A09DD572522E9567EC6CD1</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>C5A09DD572522E9567EC6CD1</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.objc</string>
+			<key>path</key>
+			<string>Pods-SampleTests-dummy.m</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>C75867D6DF922C6894ACCC88</key>
+		<dict>
+			<key>buildConfigurations</key>
+			<array>
+				<string>098BE814C7B5F9F21878CDE6</string>
+				<string>6AA10AF7AE19131F66FB8586</string>
+			</array>
+			<key>defaultConfigurationIsVisible</key>
+			<string>0</string>
+			<key>defaultConfigurationName</key>
+			<string>Release</string>
+			<key>isa</key>
+			<string>XCConfigurationList</string>
 		</dict>
-		<key>6E0669CB3E76E19FC854BA74</key>
+		<key>C818D7947CCCEA0324CD9E79</key>
 		<dict>
-			<key>fileRef</key>
-			<string>4BB75B0FC7359E8EA8672954</string>
+			<key>buildActionMask</key>
+			<string>2147483647</string>
+			<key>files</key>
+			<array>
+				<string>01E37BE5C7114E128C4664FB</string>
+				<string>21E0A8B187DFAE6BD32D1302</string>
+				<string>1C191978ED182A611393A626</string>
+				<string>C3E4DEFB7877BA48A9458947</string>
+				<string>FF378D56A81AE6EFC739CDE6</string>
+				<string>2C4B95CD783F7C0739F77B66</string>
+				<string>CC00C5E75E69BE36B9D2816E</string>
+				<string>EA8F6101AB32D6B0A3FC0163</string>
+				<string>D2BE15266514D3FE8B3E8820</string>
+				<string>8ACE4DE290D8847EA219A1B8</string>
+			</array>
 			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>PBXHeadersBuildPhase</string>
+			<key>runOnlyForDeploymentPostprocessing</key>
+			<string>0</string>
 		</dict>
-		<key>6EB14BC96525C955FBD5CC75</key>
+		<key>C90E8B6A34A6456422C8086E</key>
 		<dict>
+			<key>fileRef</key>
+			<string>617AA57F150724B1881EC92E</string>
 			<key>isa</key>
-			<string>PBXTargetDependency</string>
-			<key>name</key>
-			<string>Pods-Sample-RxLibrary</string>
-			<key>target</key>
-			<string>F6C59E5B4CFE053E9F98000E</string>
-			<key>targetProxy</key>
-			<string>A0215878A7EC41E833B5F1D2</string>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>74F28D2155D125C3068F96BE</key>
+		<key>CA294BA3C4F9A1948B2AE213</key>
 		<dict>
 			<key>baseConfigurationReference</key>
-			<string>6AC13D00A5A61BDA0DE5FAAF</string>
+			<string>EB86FC57EE5F50944BA86EE3</string>
 			<key>buildSettings</key>
 			<dict>
 				<key>ALWAYS_SEARCH_USER_PATHS</key>
@@ -1467,6 +3527,8 @@
 				<string>0</string>
 				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
 				<string>YES</string>
+				<key>GCC_PREFIX_HEADER</key>
+				<string>Target Support Files/Pods-GRPCClient/Pods-GRPCClient-prefix.pch</string>
 				<key>GCC_PREPROCESSOR_DEFINITIONS</key>
 				<array>
 					<string>DEBUG=1</string>
@@ -1496,358 +3558,356 @@
 			<key>name</key>
 			<string>Debug</string>
 		</dict>
-		<key>7A8627E1649F66DEE014EB46</key>
+		<key>CA8337B362EA0132CA470DB0</key>
 		<dict>
-			<key>children</key>
-			<array>
-				<string>D53A8F2B11E6C2C187AFFF1D</string>
-				<string>B50ECED4CEC7554ED6077619</string>
-				<string>BC50D76123DA4B85E6AD77B4</string>
-				<string>092D0456252ED3F90F66084D</string>
-				<string>AA99564782B655791B053E58</string>
-				<string>1B8264EEFEF4AD585182D256</string>
-				<string>27E123435067CC11FE103999</string>
-			</array>
+			<key>fileRef</key>
+			<string>2DA7CCAA52B82F817FA61F5A</string>
 			<key>isa</key>
-			<string>PBXGroup</string>
-			<key>name</key>
-			<string>Pods-Sample</string>
-			<key>path</key>
-			<string>Target Support Files/Pods-Sample</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>7AC4B3F3D7BB132642153A38</key>
+		<key>CAB17FE3D2357BFAF9B8598F</key>
 		<dict>
 			<key>fileRef</key>
-			<string>0260773D27B4AE159FB0B22D</string>
+			<string>D444D13D4D0829CF4142949A</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>7BBF3F432525D33FCB074BD5</key>
+		<key>CB5B0489448E9051E9F9E423</key>
 		<dict>
 			<key>fileRef</key>
-			<string>BA9F62DDE37FF0D601A4D5EA</string>
+			<string>A7CE4BCE7B6959BCDC54B854</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>7DA2A517A18D85B390FB122A</key>
+		<key>CBB34B55930DEFBDE44A62E0</key>
 		<dict>
-			<key>containerPortal</key>
-			<string>FBF79DDF04ADEAED54BA2286</string>
+			<key>explicitFileType</key>
+			<string>archive.ar</string>
+			<key>includeInIndex</key>
+			<string>0</string>
 			<key>isa</key>
-			<string>PBXContainerItemProxy</string>
-			<key>proxyType</key>
-			<string>1</string>
-			<key>remoteGlobalIDString</key>
-			<string>3800855A656C8D0813062074</string>
-			<key>remoteInfo</key>
-			<string>Pods-SampleTests-RxLibrary</string>
+			<string>PBXFileReference</string>
+			<key>path</key>
+			<string>libPods-Sample-GRPCClient.a</string>
+			<key>sourceTree</key>
+			<string>BUILT_PRODUCTS_DIR</string>
 		</dict>
-		<key>7E9B63EFA2466C4456A0695A</key>
+		<key>CC00C5E75E69BE36B9D2816E</key>
 		<dict>
-			<key>baseConfigurationReference</key>
-			<string>2FE1D288B8389F925AA3CE0C</string>
-			<key>buildSettings</key>
-			<dict>
-				<key>ALWAYS_SEARCH_USER_PATHS</key>
-				<string>NO</string>
-				<key>COPY_PHASE_STRIP</key>
-				<string>YES</string>
-				<key>DSTROOT</key>
-				<string>/tmp/xcodeproj.dst</string>
-				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
-				<string>YES</string>
-				<key>GCC_PREFIX_HEADER</key>
-				<string>Target Support Files/Pods-RxLibrary/Pods-RxLibrary-prefix.pch</string>
-				<key>INSTALL_PATH</key>
-				<string>$(BUILT_PRODUCTS_DIR)</string>
-				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
-				<string>8.0</string>
-				<key>OTHER_CFLAGS</key>
-				<array>
-					<string>-DNS_BLOCK_ASSERTIONS=1</string>
-					<string>$(inherited)</string>
-				</array>
-				<key>OTHER_CPLUSPLUSFLAGS</key>
-				<array>
-					<string>-DNS_BLOCK_ASSERTIONS=1</string>
-					<string>$(inherited)</string>
-				</array>
-				<key>OTHER_LDFLAGS</key>
-				<string></string>
-				<key>OTHER_LIBTOOLFLAGS</key>
-				<string></string>
-				<key>PRODUCT_NAME</key>
-				<string>$(TARGET_NAME)</string>
-				<key>PUBLIC_HEADERS_FOLDER_PATH</key>
-				<string>$(TARGET_NAME)</string>
-				<key>SDKROOT</key>
-				<string>iphoneos</string>
-				<key>SKIP_INSTALL</key>
-				<string>YES</string>
-				<key>VALIDATE_PRODUCT</key>
-				<string>YES</string>
-			</dict>
+			<key>fileRef</key>
+			<string>7F5DF8C37493F93C2636BAD6</string>
 			<key>isa</key>
-			<string>XCBuildConfiguration</string>
-			<key>name</key>
-			<string>Release</string>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>7FACBF2C8AF0403DD1C11015</key>
+		<key>CC354BAF9312E63AB7D4404A</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>text.xcconfig</string>
-			<key>name</key>
-			<string>Pods-Sample-RxLibrary-Private.xcconfig</string>
+			<string>sourcecode.c.h</string>
 			<key>path</key>
-			<string>../Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-Private.xcconfig</string>
+			<string>Pods-environment.h</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>801BBA7A538CFAE6746966A7</key>
+		<key>CD18BC77ECA79D031662CC51</key>
 		<dict>
 			<key>fileRef</key>
-			<string>42B461F095E85911637DFD60</string>
+			<string>8A203557337361CF44D2D664</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>817F8B2E38A51910E8F8EC7D</key>
+		<key>CDA9A715DCFCE07755974888</key>
 		<dict>
-			<key>children</key>
-			<array>
-				<string>355670384FC160AB6C32765E</string>
-			</array>
+			<key>includeInIndex</key>
+			<string>1</string>
 			<key>isa</key>
-			<string>PBXGroup</string>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>text.xcconfig</string>
 			<key>name</key>
-			<string>Frameworks</string>
+			<string>Pods-SampleTests-GRPCClient-Private.xcconfig</string>
+			<key>path</key>
+			<string>../Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient-Private.xcconfig</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>838341407CEBBFB19D25C45A</key>
+		<key>CDB4449E284965A752BD1786</key>
+		<dict>
+			<key>fileRef</key>
+			<string>E0CF2237012441B69E760029</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>CEA794A7056AFAB8256CC44D</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>sourcecode.c.h</string>
+			<string>sourcecode.c.objc</string>
+			<key>name</key>
+			<string>GRXMappingWriter.m</string>
 			<key>path</key>
-			<string>GRXWriter+Transformations.h</string>
+			<string>transformations/GRXMappingWriter.m</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>85D5565EC08D14A6A60F1DDA</key>
-		<dict>
-			<key>fileRef</key>
-			<string>56CE61A20C6F88CC0CE888C8</string>
-			<key>isa</key>
-			<string>PBXBuildFile</string>
-		</dict>
-		<key>86586E0B51D3DC6A97D0A7F3</key>
+		<key>D0641C22EEADF13905743122</key>
 		<dict>
-			<key>fileRef</key>
-			<string>56CE61A20C6F88CC0CE888C8</string>
+			<key>includeInIndex</key>
+			<string>1</string>
 			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.objc</string>
+			<key>name</key>
+			<string>GRPCCompletionQueue.m</string>
+			<key>path</key>
+			<string>private/GRPCCompletionQueue.m</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
 		</dict>
-		<key>86D03B997B81819E2F39E48B</key>
+		<key>D0B7F6736070533C215E7DE3</key>
 		<dict>
 			<key>fileRef</key>
-			<string>BC52B0661F25B25CE382296C</string>
+			<string>423B94F0660BA470EAD9DA5E</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>87700F015FA41F53D88CA4BC</key>
+		<key>D0C130BBB6DBFE22F6B649E8</key>
 		<dict>
 			<key>buildActionMask</key>
 			<string>2147483647</string>
 			<key>files</key>
 			<array>
-				<string>404D4F98249F3383235463A4</string>
+				<string>34D39E370FE6AF621D048E13</string>
 			</array>
 			<key>isa</key>
 			<string>PBXFrameworksBuildPhase</string>
 			<key>runOnlyForDeploymentPostprocessing</key>
 			<string>0</string>
 		</dict>
-		<key>8915073BE8158EF53FE11B95</key>
+		<key>D0E4885FFC11D4A532FAB517</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.objc</string>
+			<key>name</key>
+			<string>Pods-SampleTests-GRPCClient-dummy.m</string>
+			<key>path</key>
+			<string>../Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient-dummy.m</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>D153B061942AF56AA4E13412</key>
 		<dict>
 			<key>fileRef</key>
-			<string>EB29FAB1F81F0D17BDAD72D0</string>
+			<string>BC51F603F893AA6A748EB8EC</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>8919AE774852DD128A7CB510</key>
+		<key>D1C458EAFDCA48A4C90131E9</key>
 		<dict>
-			<key>buildConfigurations</key>
-			<array>
-				<string>6E00FD6D197F0D1332D11199</string>
-				<string>B602CFEF970BEA98E40A056C</string>
-			</array>
-			<key>defaultConfigurationIsVisible</key>
-			<string>0</string>
-			<key>defaultConfigurationName</key>
-			<string>Release</string>
+			<key>fileRef</key>
+			<string>A7CE4BCE7B6959BCDC54B854</string>
 			<key>isa</key>
-			<string>XCConfigurationList</string>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>896F697BD1BEAF8A081337EB</key>
+		<key>D250768ADF5442C9C8880A18</key>
 		<dict>
-			<key>buildActionMask</key>
-			<string>2147483647</string>
-			<key>files</key>
-			<array>
-				<string>86586E0B51D3DC6A97D0A7F3</string>
-			</array>
+			<key>fileRef</key>
+			<string>6A4F426FF21092B2A4B44022</string>
 			<key>isa</key>
-			<string>PBXFrameworksBuildPhase</string>
-			<key>runOnlyForDeploymentPostprocessing</key>
-			<string>0</string>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>D2BE15266514D3FE8B3E8820</key>
+		<dict>
+			<key>fileRef</key>
+			<string>B5E4A18F0B2376BE20D1C8A5</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>8A7375A2F98889F35C15E2D7</key>
+		<key>D444D13D4D0829CF4142949A</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>text.xcconfig</string>
+			<string>sourcecode.c.objc</string>
+			<key>path</key>
+			<string>GRXImmediateWriter.m</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>D45F5D73E3D255043B7E349A</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.h</string>
 			<key>name</key>
-			<string>Pods-SampleTests-RxLibrary.xcconfig</string>
+			<string>NSData+GRPC.h</string>
 			<key>path</key>
-			<string>../Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary.xcconfig</string>
+			<string>private/NSData+GRPC.h</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>8AB7020D9B71B1B4F34249BE</key>
+		<key>D520F3474212A72655D2F0ED</key>
 		<dict>
 			<key>buildActionMask</key>
 			<string>2147483647</string>
 			<key>files</key>
 			<array>
-				<string>1E5420835E4862DBA55002A9</string>
-				<string>00949E44051CD97851DEFF3B</string>
-				<string>15DC9A153BC412DB41B7F154</string>
-				<string>0385BCBCA0601E80FAD2A901</string>
-				<string>01F5B724A99ADB3547023C72</string>
-				<string>F2C6AACFE46FFA8DC383DE43</string>
-				<string>7AC4B3F3D7BB132642153A38</string>
-				<string>5DE93D7B39D2D1AD7336C4AC</string>
-				<string>407E794549893DD91A2ED84E</string>
-				<string>3C3F1A188E25219C230FFD4F</string>
+				<string>CB5B0489448E9051E9F9E423</string>
 			</array>
 			<key>isa</key>
-			<string>PBXHeadersBuildPhase</string>
+			<string>PBXFrameworksBuildPhase</string>
 			<key>runOnlyForDeploymentPostprocessing</key>
 			<string>0</string>
 		</dict>
-		<key>8B05D39455D5B23720961FA4</key>
+		<key>D54769D14A73816406636B14</key>
 		<dict>
-			<key>children</key>
-			<array>
-				<string>5C30ABB95D604B483422D72A</string>
-				<string>A579EC5BE7E68C55CA5FECDE</string>
-				<string>DF94410F5DC0A0AB69336DF4</string>
-				<string>EF2EE4BC906FF9909348DAB5</string>
-				<string>42A375125393D0613249D046</string>
-				<string>11072993378724E9AF9CAF85</string>
-			</array>
+			<key>fileRef</key>
+			<string>B5E4A18F0B2376BE20D1C8A5</string>
 			<key>isa</key>
-			<string>PBXGroup</string>
-			<key>name</key>
-			<string>Products</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>8B503889F903CED9A12E5C87</key>
+		<key>D548663391776A14DCAC50B8</key>
 		<dict>
-			<key>includeInIndex</key>
-			<string>1</string>
+			<key>fileRef</key>
+			<string>A7CE4BCE7B6959BCDC54B854</string>
 			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>lastKnownFileType</key>
-			<string>text.script.sh</string>
-			<key>path</key>
-			<string>Pods-SampleTests-resources.sh</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>8BB6B6B3653FC309CB8EB3A0</key>
+		<key>D5B158492CFF90F975B03B8D</key>
 		<dict>
-			<key>fileRef</key>
-			<string>BDA58E5E1AE450540A2B0227</string>
+			<key>buildActionMask</key>
+			<string>2147483647</string>
+			<key>files</key>
+			<array>
+				<string>E0CA82F272732A2A5F024AD6</string>
+				<string>26A838790310501CB08753A6</string>
+				<string>00669D4383CB42C429D06591</string>
+				<string>91D5786D0585930DEFAB636E</string>
+				<string>AAAEE7AE6F373AA2C0D1969F</string>
+				<string>F84427B4C72738E045D44E6C</string>
+				<string>822AA7CD03CFBA9265225E74</string>
+				<string>0843899658450810B81AC1DD</string>
+				<string>F37E3DFDFA20082CBC4E2257</string>
+				<string>DDC9480509EAE89DED87393D</string>
+			</array>
 			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>PBXSourcesBuildPhase</string>
+			<key>runOnlyForDeploymentPostprocessing</key>
+			<string>0</string>
 		</dict>
-		<key>8CD061F02F905957F4C1D188</key>
+		<key>D6715088D2AB1CBAA49F8651</key>
 		<dict>
-			<key>fileRef</key>
-			<string>636AC1003F2C71FFD74542CD</string>
+			<key>containerPortal</key>
+			<string>E61F9CBEB0CA9A172C4AA56B</string>
 			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>PBXContainerItemProxy</string>
+			<key>proxyType</key>
+			<string>1</string>
+			<key>remoteGlobalIDString</key>
+			<string>AB3F9F2CFA29030A599E9231</string>
+			<key>remoteInfo</key>
+			<string>Pods-GRPCClient</string>
 		</dict>
-		<key>911BEE248BE640294A081862</key>
+		<key>D6D8919597D4E28EBF5D166B</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>sourcecode.c.h</string>
+			<string>sourcecode.c.objc</string>
 			<key>path</key>
-			<string>Pods-RxLibrary-prefix.pch</string>
+			<string>GRXWriteable.m</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>9508723D4C0D4321A5188108</key>
+		<key>D756E08287486CC7A7034803</key>
 		<dict>
-			<key>buildConfigurations</key>
+			<key>children</key>
 			<array>
-				<string>29B274FDF882AB8B39814FE6</string>
-				<string>6B5B56ED61BE76782DF02817</string>
+				<string>EB0497400F84ADD968F6AB42</string>
+				<string>A32A838D0E36519FB68C73DF</string>
+				<string>C5A09DD572522E9567EC6CD1</string>
+				<string>D985414BAA4686F0ED38ACF8</string>
+				<string>255EE0013C9A672760CB1F29</string>
+				<string>048EFCCABBC3F25828644716</string>
+				<string>51DBA8F3C7D4E67BDD768066</string>
 			</array>
-			<key>defaultConfigurationIsVisible</key>
-			<string>0</string>
-			<key>defaultConfigurationName</key>
-			<string>Release</string>
 			<key>isa</key>
-			<string>XCConfigurationList</string>
+			<string>PBXGroup</string>
+			<key>name</key>
+			<string>Pods-SampleTests</string>
+			<key>path</key>
+			<string>Target Support Files/Pods-SampleTests</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
 		</dict>
-		<key>962FF5FAC21292530C615D05</key>
+		<key>D7BA8B8D4FFF3674A537221D</key>
 		<dict>
-			<key>buildConfigurations</key>
+			<key>children</key>
 			<array>
-				<string>A150782D73BBE95DE629B03C</string>
-				<string>7E9B63EFA2466C4456A0695A</string>
+				<string>9470FB5E010191C87542871D</string>
+				<string>D444D13D4D0829CF4142949A</string>
+				<string>35A079DEB6141A6FDFF69D63</string>
+				<string>CEA794A7056AFAB8256CC44D</string>
+				<string>0B083D6614A831642ECCDB95</string>
+				<string>34373F1941450D17C3F85B57</string>
+				<string>1A2D9424BA1BE0E3B2598D06</string>
+				<string>19A733EC94B0F847F901D308</string>
+				<string>617AA57F150724B1881EC92E</string>
+				<string>2DA7CCAA52B82F817FA61F5A</string>
+				<string>0C52B5B243390BA62033C734</string>
+				<string>D6D8919597D4E28EBF5D166B</string>
+				<string>B5E4A18F0B2376BE20D1C8A5</string>
+				<string>8A203557337361CF44D2D664</string>
+				<string>7F5DF8C37493F93C2636BAD6</string>
+				<string>EA915E5B33F07CD0B9F8ACE9</string>
+				<string>F776B445ABD393C908B02302</string>
+				<string>439AF2B977736E012C79B2FE</string>
+				<string>2705BF8D166EFF8A2D44B2BA</string>
+				<string>68A0ACB0AFAA7186EB2ABE09</string>
+				<string>6BC5E8D01392B97FF237C655</string>
 			</array>
-			<key>defaultConfigurationIsVisible</key>
-			<string>0</string>
-			<key>defaultConfigurationName</key>
-			<string>Release</string>
 			<key>isa</key>
-			<string>XCConfigurationList</string>
+			<string>PBXGroup</string>
+			<key>name</key>
+			<string>RxLibrary</string>
+			<key>path</key>
+			<string>../../../RxLibrary</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
 		</dict>
-		<key>9BD773E928AD698D23B20123</key>
+		<key>D80E545131A1D2922F88C5D7</key>
 		<dict>
 			<key>fileRef</key>
-			<string>1868370C0050315A6B835D42</string>
+			<string>F541961867C9493F07D54B8E</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>9CCBE9A628C305B3B089B8DD</key>
+		<key>D965694635120F86B2E5E101</key>
 		<dict>
 			<key>fileRef</key>
-			<string>BA9F62DDE37FF0D601A4D5EA</string>
+			<string>9470FB5E010191C87542871D</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>9CFAC09E370EA1C96C8D2880</key>
+		<key>D985414BAA4686F0ED38ACF8</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
@@ -1855,333 +3915,255 @@
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
 			<string>sourcecode.c.h</string>
-			<key>name</key>
-			<string>GRXMappingWriter.h</string>
 			<key>path</key>
-			<string>transformations/GRXMappingWriter.h</string>
+			<string>Pods-SampleTests-environment.h</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>9DADE0CF857B717294F7F74F</key>
+		<key>DD9A2AC14E9E04D4337DB76E</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>sourcecode.c.h</string>
+			<string>text.xcconfig</string>
+			<key>name</key>
+			<string>Pods-SampleTests-RxLibrary.xcconfig</string>
 			<key>path</key>
-			<string>NSEnumerator+GRXUtil.h</string>
+			<string>../Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary.xcconfig</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>9E8DC61269B141639DA7F859</key>
-		<dict>
-			<key>buildActionMask</key>
-			<string>2147483647</string>
-			<key>files</key>
-			<array>
-				<string>16E6BBD46D9745611EF313FB</string>
-				<string>CC0A03D531EF0FF199671820</string>
-				<string>C382F416EFA39BE2CF216044</string>
-				<string>621587D6C7759FBE7096D185</string>
-				<string>C0AC333A6FE8F07600C96890</string>
-				<string>2F91A2AD622F87D98C9B0E1E</string>
-				<string>FDC6B84EAC9989F0827EA4F3</string>
-				<string>50FF607D5DA961C6BEF4ABAC</string>
-				<string>5280A583CA6C6C66698AE67C</string>
-				<string>6D1D41BAE4E325572FAC7B17</string>
-			</array>
-			<key>isa</key>
-			<string>PBXHeadersBuildPhase</string>
-			<key>runOnlyForDeploymentPostprocessing</key>
-			<string>0</string>
-		</dict>
-		<key>A00077019C113466960E9DAF</key>
+		<key>DDC9480509EAE89DED87393D</key>
 		<dict>
 			<key>fileRef</key>
-			<string>9CFAC09E370EA1C96C8D2880</string>
+			<string>7E3BE2E23E465D87ECF0E962</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>A0215878A7EC41E833B5F1D2</key>
+		<key>DF829332517E7136AED2EC79</key>
 		<dict>
 			<key>containerPortal</key>
-			<string>FBF79DDF04ADEAED54BA2286</string>
+			<string>E61F9CBEB0CA9A172C4AA56B</string>
 			<key>isa</key>
 			<string>PBXContainerItemProxy</string>
 			<key>proxyType</key>
 			<string>1</string>
 			<key>remoteGlobalIDString</key>
-			<string>F6C59E5B4CFE053E9F98000E</string>
+			<string>AEECE9DFCC8F060F1E30A421</string>
 			<key>remoteInfo</key>
-			<string>Pods-Sample-RxLibrary</string>
+			<string>Pods-RxLibrary</string>
 		</dict>
-		<key>A150782D73BBE95DE629B03C</key>
+		<key>DFF269EBCC2A9D30DC7E264F</key>
 		<dict>
-			<key>baseConfigurationReference</key>
-			<string>2FE1D288B8389F925AA3CE0C</string>
-			<key>buildSettings</key>
-			<dict>
-				<key>ALWAYS_SEARCH_USER_PATHS</key>
-				<string>NO</string>
-				<key>COPY_PHASE_STRIP</key>
-				<string>NO</string>
-				<key>DSTROOT</key>
-				<string>/tmp/xcodeproj.dst</string>
-				<key>GCC_DYNAMIC_NO_PIC</key>
-				<string>NO</string>
-				<key>GCC_OPTIMIZATION_LEVEL</key>
-				<string>0</string>
-				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
-				<string>YES</string>
-				<key>GCC_PREFIX_HEADER</key>
-				<string>Target Support Files/Pods-RxLibrary/Pods-RxLibrary-prefix.pch</string>
-				<key>GCC_PREPROCESSOR_DEFINITIONS</key>
-				<array>
-					<string>DEBUG=1</string>
-					<string>$(inherited)</string>
-				</array>
-				<key>GCC_SYMBOLS_PRIVATE_EXTERN</key>
-				<string>NO</string>
-				<key>INSTALL_PATH</key>
-				<string>$(BUILT_PRODUCTS_DIR)</string>
-				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
-				<string>8.0</string>
-				<key>OTHER_LDFLAGS</key>
-				<string></string>
-				<key>OTHER_LIBTOOLFLAGS</key>
-				<string></string>
-				<key>PRODUCT_NAME</key>
-				<string>$(TARGET_NAME)</string>
-				<key>PUBLIC_HEADERS_FOLDER_PATH</key>
-				<string>$(TARGET_NAME)</string>
-				<key>SDKROOT</key>
-				<string>iphoneos</string>
-				<key>SKIP_INSTALL</key>
-				<string>YES</string>
-			</dict>
+			<key>fileRef</key>
+			<string>34373F1941450D17C3F85B57</string>
 			<key>isa</key>
-			<string>XCBuildConfiguration</string>
-			<key>name</key>
-			<string>Debug</string>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>E05C4D27465DD5F292E2A8EE</key>
+		<dict>
+			<key>fileRef</key>
+			<string>D45F5D73E3D255043B7E349A</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>A4C1C82F355864E7D3E200DD</key>
+		<key>E066A01F3A992087F10B31CF</key>
 		<dict>
 			<key>buildActionMask</key>
 			<string>2147483647</string>
 			<key>files</key>
 			<array>
-				<string>2DA405F6E578008991B3F9EA</string>
-				<string>A00077019C113466960E9DAF</string>
-				<string>46A8EFCC59CF17E048EC34ED</string>
-				<string>024F840533A6674922DB7899</string>
-				<string>9BD773E928AD698D23B20123</string>
-				<string>2AADA4C52A284ED5D41C7CF5</string>
-				<string>CC358E38AE146C095C401760</string>
-				<string>288A25371032891C824CF4AA</string>
-				<string>FDC939796E70DC7D141E29FC</string>
-				<string>45A1913C8F48686C1FC82520</string>
+				<string>87F549870DB778A5F152B608</string>
 			</array>
 			<key>isa</key>
-			<string>PBXHeadersBuildPhase</string>
+			<string>PBXFrameworksBuildPhase</string>
 			<key>runOnlyForDeploymentPostprocessing</key>
 			<string>0</string>
 		</dict>
-		<key>A577CB571492B4F951064FCF</key>
+		<key>E0CA82F272732A2A5F024AD6</key>
+		<dict>
+			<key>fileRef</key>
+			<string>53A5EA857F02C1DEEC269122</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>E0CF2237012441B69E760029</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>text.xcconfig</string>
+			<string>sourcecode.c.objc</string>
 			<key>path</key>
-			<string>Pods.release.xcconfig</string>
+			<string>GRPCMethodName.m</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>A579EC5BE7E68C55CA5FECDE</key>
+		<key>E23D43F03E7C19D671C93F81</key>
+		<dict>
+			<key>fileRef</key>
+			<string>CEA794A7056AFAB8256CC44D</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>E256AF33BE1D5C30780D4E96</key>
 		<dict>
-			<key>explicitFileType</key>
-			<string>archive.ar</string>
 			<key>includeInIndex</key>
-			<string>0</string>
+			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>sourcecode.c.h</string>
 			<key>path</key>
-			<string>libPods-RxLibrary.a</string>
+			<string>Pods-RxLibrary-prefix.pch</string>
 			<key>sourceTree</key>
-			<string>BUILT_PRODUCTS_DIR</string>
+			<string>&lt;group&gt;</string>
 		</dict>
-		<key>A71CC1B520D2DFF451839FE2</key>
+		<key>E2EA100B27BDAB6CA32F3814</key>
 		<dict>
-			<key>buildActionMask</key>
-			<string>2147483647</string>
-			<key>files</key>
+			<key>children</key>
 			<array>
-				<string>0BC8818D3A097831FDE0750B</string>
+				<string>4B765AEAB08FDC86E8082F7A</string>
+				<string>644143496CECB668F61BCD16</string>
+				<string>D756E08287486CC7A7034803</string>
 			</array>
 			<key>isa</key>
-			<string>PBXSourcesBuildPhase</string>
-			<key>runOnlyForDeploymentPostprocessing</key>
-			<string>0</string>
-		</dict>
-		<key>A8AFEFDF4700447BBCDF9E10</key>
-		<dict>
-			<key>baseConfigurationReference</key>
-			<string>591702CE7D8AF91674F1640F</string>
-			<key>buildSettings</key>
-			<dict>
-				<key>ALWAYS_SEARCH_USER_PATHS</key>
-				<string>NO</string>
-				<key>COPY_PHASE_STRIP</key>
-				<string>NO</string>
-				<key>DSTROOT</key>
-				<string>/tmp/xcodeproj.dst</string>
-				<key>GCC_DYNAMIC_NO_PIC</key>
-				<string>NO</string>
-				<key>GCC_OPTIMIZATION_LEVEL</key>
-				<string>0</string>
-				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
-				<string>YES</string>
-				<key>GCC_PREPROCESSOR_DEFINITIONS</key>
-				<array>
-					<string>DEBUG=1</string>
-					<string>$(inherited)</string>
-				</array>
-				<key>GCC_SYMBOLS_PRIVATE_EXTERN</key>
-				<string>NO</string>
-				<key>INSTALL_PATH</key>
-				<string>$(BUILT_PRODUCTS_DIR)</string>
-				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
-				<string>8.0</string>
-				<key>OTHER_LDFLAGS</key>
-				<string></string>
-				<key>OTHER_LIBTOOLFLAGS</key>
-				<string></string>
-				<key>PRODUCT_NAME</key>
-				<string>$(TARGET_NAME)</string>
-				<key>PUBLIC_HEADERS_FOLDER_PATH</key>
-				<string>$(TARGET_NAME)</string>
-				<key>SDKROOT</key>
-				<string>iphoneos</string>
-				<key>SKIP_INSTALL</key>
-				<string>YES</string>
-			</dict>
-			<key>isa</key>
-			<string>XCBuildConfiguration</string>
+			<string>PBXGroup</string>
 			<key>name</key>
-			<string>Debug</string>
-		</dict>
-		<key>A96854FB48432263FE68C313</key>
-		<dict>
-			<key>fileRef</key>
-			<string>15F64D3D7D10DB47599A72EB</string>
-			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>Targets Support Files</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
 		</dict>
-		<key>AA52EF1CD8A3683472BD86FE</key>
+		<key>E328084D7C583851D3BE25CF</key>
 		<dict>
 			<key>fileRef</key>
-			<string>4BB75B0FC7359E8EA8672954</string>
+			<string>34373F1941450D17C3F85B57</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>AA99564782B655791B053E58</key>
+		<key>E4F23FE4AEB216E7D1E2B7EE</key>
 		<dict>
+			<key>explicitFileType</key>
+			<string>archive.ar</string>
 			<key>includeInIndex</key>
-			<string>1</string>
+			<string>0</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
-			<key>lastKnownFileType</key>
-			<string>text.script.sh</string>
 			<key>path</key>
-			<string>Pods-Sample-resources.sh</string>
+			<string>libPods-Sample.a</string>
 			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>BUILT_PRODUCTS_DIR</string>
 		</dict>
-		<key>AF9F0D991C2913F55496D06E</key>
+		<key>E61F9CBEB0CA9A172C4AA56B</key>
 		<dict>
-			<key>baseConfigurationReference</key>
-			<string>A577CB571492B4F951064FCF</string>
-			<key>buildSettings</key>
+			<key>attributes</key>
 			<dict>
-				<key>ALWAYS_SEARCH_USER_PATHS</key>
-				<string>NO</string>
-				<key>COPY_PHASE_STRIP</key>
-				<string>YES</string>
-				<key>DSTROOT</key>
-				<string>/tmp/xcodeproj.dst</string>
-				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
-				<string>YES</string>
-				<key>INSTALL_PATH</key>
-				<string>$(BUILT_PRODUCTS_DIR)</string>
-				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
-				<string>8.0</string>
-				<key>OTHER_CFLAGS</key>
-				<array>
-					<string>-DNS_BLOCK_ASSERTIONS=1</string>
-					<string>$(inherited)</string>
-				</array>
-				<key>OTHER_CPLUSPLUSFLAGS</key>
-				<array>
-					<string>-DNS_BLOCK_ASSERTIONS=1</string>
-					<string>$(inherited)</string>
-				</array>
-				<key>OTHER_LDFLAGS</key>
-				<string></string>
-				<key>OTHER_LIBTOOLFLAGS</key>
-				<string></string>
-				<key>PRODUCT_NAME</key>
-				<string>$(TARGET_NAME)</string>
-				<key>PUBLIC_HEADERS_FOLDER_PATH</key>
-				<string>$(TARGET_NAME)</string>
-				<key>SDKROOT</key>
-				<string>iphoneos</string>
-				<key>SKIP_INSTALL</key>
-				<string>YES</string>
-				<key>VALIDATE_PRODUCT</key>
-				<string>YES</string>
+				<key>LastUpgradeCheck</key>
+				<string>0510</string>
 			</dict>
+			<key>buildConfigurationList</key>
+			<string>B22A719DB3DFD2337E996D6A</string>
+			<key>compatibilityVersion</key>
+			<string>Xcode 3.2</string>
+			<key>developmentRegion</key>
+			<string>English</string>
+			<key>hasScannedForEncodings</key>
+			<string>0</string>
+			<key>isa</key>
+			<string>PBXProject</string>
+			<key>knownRegions</key>
+			<array>
+				<string>en</string>
+			</array>
+			<key>mainGroup</key>
+			<string>39B5F5991112189C12D87D40</string>
+			<key>productRefGroup</key>
+			<string>4D580403A4A30D76B96E9775</string>
+			<key>projectDirPath</key>
+			<string></string>
+			<key>projectReferences</key>
+			<array/>
+			<key>projectRoot</key>
+			<string></string>
+			<key>targets</key>
+			<array>
+				<string>7962371F2502CBAEBF859730</string>
+				<string>AB3F9F2CFA29030A599E9231</string>
+				<string>AEECE9DFCC8F060F1E30A421</string>
+				<string>1F1DE3733C2AC2A97CA8885A</string>
+				<string>66E177AC7F3B02B51D36A226</string>
+				<string>4E2021A981DA9A189922E0C6</string>
+				<string>B37278C2CEC4C1C433BEF120</string>
+				<string>A10CFA4D4ED9B20894905742</string>
+				<string>474A50F85C06F74769FAD474</string>
+			</array>
+		</dict>
+		<key>EA41D57C3938E8D766E0224F</key>
+		<dict>
+			<key>explicitFileType</key>
+			<string>archive.ar</string>
+			<key>includeInIndex</key>
+			<string>0</string>
 			<key>isa</key>
-			<string>XCBuildConfiguration</string>
-			<key>name</key>
-			<string>Release</string>
+			<string>PBXFileReference</string>
+			<key>path</key>
+			<string>libPods-Sample-RxLibrary.a</string>
+			<key>sourceTree</key>
+			<string>BUILT_PRODUCTS_DIR</string>
+		</dict>
+		<key>EA8F6101AB32D6B0A3FC0163</key>
+		<dict>
+			<key>fileRef</key>
+			<string>F776B445ABD393C908B02302</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>B034EE43C1EF96D1CBD1328A</key>
+		<key>EA915E5B33F07CD0B9F8ACE9</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>text.xcconfig</string>
-			<key>name</key>
-			<string>Pods-Sample-RxLibrary.xcconfig</string>
+			<string>sourcecode.c.objc</string>
 			<key>path</key>
-			<string>../Pods-Sample-RxLibrary/Pods-Sample-RxLibrary.xcconfig</string>
+			<string>GRXWriter+Immediate.m</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>B05A2B15C8A03AABA163D7D7</key>
+		<key>EB0497400F84ADD968F6AB42</key>
 		<dict>
-			<key>buildConfigurations</key>
-			<array>
-				<string>74F28D2155D125C3068F96BE</string>
-				<string>AF9F0D991C2913F55496D06E</string>
-			</array>
-			<key>defaultConfigurationIsVisible</key>
-			<string>0</string>
-			<key>defaultConfigurationName</key>
-			<string>Release</string>
+			<key>includeInIndex</key>
+			<string>1</string>
 			<key>isa</key>
-			<string>XCConfigurationList</string>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>text</string>
+			<key>path</key>
+			<string>Pods-SampleTests-acknowledgements.markdown</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
+		</dict>
+		<key>EB86FC57EE5F50944BA86EE3</key>
+		<dict>
+			<key>includeInIndex</key>
+			<string>1</string>
+			<key>isa</key>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>text.xcconfig</string>
+			<key>path</key>
+			<string>Pods-GRPCClient-Private.xcconfig</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
 		</dict>
-		<key>B153046F0CBA526564A9673C</key>
+		<key>EBB8787CD50E6221A0ABA3AE</key>
 		<dict>
 			<key>baseConfigurationReference</key>
-			<string>7FACBF2C8AF0403DD1C11015</string>
+			<string>02396B6B22E0450EA29193E9</string>
 			<key>buildSettings</key>
 			<dict>
 				<key>ALWAYS_SEARCH_USER_PATHS</key>
@@ -2197,7 +4179,7 @@
 				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
 				<string>YES</string>
 				<key>GCC_PREFIX_HEADER</key>
-				<string>Target Support Files/Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-prefix.pch</string>
+				<string>Target Support Files/Pods-RxLibrary/Pods-RxLibrary-prefix.pch</string>
 				<key>GCC_PREPROCESSOR_DEFINITIONS</key>
 				<array>
 					<string>DEBUG=1</string>
@@ -2227,7 +4209,14 @@
 			<key>name</key>
 			<string>Debug</string>
 		</dict>
-		<key>B4FB10339A6A2E1AAF255802</key>
+		<key>EC47C9C8660A81111C71C967</key>
+		<dict>
+			<key>fileRef</key>
+			<string>003D718984A073D9C6C71422</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>EC4BA4B1D02C3BA6DBB450E7</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
@@ -2244,92 +4233,10 @@
 			<key>xcLanguageSpecificationIdentifier</key>
 			<string>xcode.lang.ruby</string>
 		</dict>
-		<key>B50ECED4CEC7554ED6077619</key>
-		<dict>
-			<key>includeInIndex</key>
-			<string>1</string>
-			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>lastKnownFileType</key>
-			<string>text.plist.xml</string>
-			<key>path</key>
-			<string>Pods-Sample-acknowledgements.plist</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
-		</dict>
-		<key>B602CFEF970BEA98E40A056C</key>
-		<dict>
-			<key>baseConfigurationReference</key>
-			<string>27E123435067CC11FE103999</string>
-			<key>buildSettings</key>
-			<dict>
-				<key>ALWAYS_SEARCH_USER_PATHS</key>
-				<string>NO</string>
-				<key>COPY_PHASE_STRIP</key>
-				<string>YES</string>
-				<key>DSTROOT</key>
-				<string>/tmp/xcodeproj.dst</string>
-				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
-				<string>YES</string>
-				<key>INSTALL_PATH</key>
-				<string>$(BUILT_PRODUCTS_DIR)</string>
-				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
-				<string>8.0</string>
-				<key>OTHER_CFLAGS</key>
-				<array>
-					<string>-DNS_BLOCK_ASSERTIONS=1</string>
-					<string>$(inherited)</string>
-				</array>
-				<key>OTHER_CPLUSPLUSFLAGS</key>
-				<array>
-					<string>-DNS_BLOCK_ASSERTIONS=1</string>
-					<string>$(inherited)</string>
-				</array>
-				<key>OTHER_LDFLAGS</key>
-				<string></string>
-				<key>OTHER_LIBTOOLFLAGS</key>
-				<string></string>
-				<key>PRODUCT_NAME</key>
-				<string>$(TARGET_NAME)</string>
-				<key>PUBLIC_HEADERS_FOLDER_PATH</key>
-				<string>$(TARGET_NAME)</string>
-				<key>SDKROOT</key>
-				<string>iphoneos</string>
-				<key>SKIP_INSTALL</key>
-				<string>YES</string>
-				<key>VALIDATE_PRODUCT</key>
-				<string>YES</string>
-			</dict>
-			<key>isa</key>
-			<string>XCBuildConfiguration</string>
-			<key>name</key>
-			<string>Release</string>
-		</dict>
-		<key>B78477CA74AEFC96C25B49B4</key>
-		<dict>
-			<key>fileRef</key>
-			<string>BDA58E5E1AE450540A2B0227</string>
-			<key>isa</key>
-			<string>PBXBuildFile</string>
-		</dict>
-		<key>B7902691B66134F3764663D9</key>
-		<dict>
-			<key>fileRef</key>
-			<string>3AD75C69A61408EF8BE0F247</string>
-			<key>isa</key>
-			<string>PBXBuildFile</string>
-		</dict>
-		<key>B90592E4E39AFD1E769F9A95</key>
-		<dict>
-			<key>fileRef</key>
-			<string>F763F3DF1B47888E75D0ED9C</string>
-			<key>isa</key>
-			<string>PBXBuildFile</string>
-		</dict>
-		<key>B960FF1BE77D3F4459EEB1E0</key>
+		<key>ED9460BEAAB47A2752887CE9</key>
 		<dict>
 			<key>baseConfigurationReference</key>
-			<string>7FACBF2C8AF0403DD1C11015</string>
+			<string>51DBA8F3C7D4E67BDD768066</string>
 			<key>buildSettings</key>
 			<dict>
 				<key>ALWAYS_SEARCH_USER_PATHS</key>
@@ -2340,8 +4247,6 @@
 				<string>/tmp/xcodeproj.dst</string>
 				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
 				<string>YES</string>
-				<key>GCC_PREFIX_HEADER</key>
-				<string>Target Support Files/Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-prefix.pch</string>
 				<key>INSTALL_PATH</key>
 				<string>$(BUILT_PRODUCTS_DIR)</string>
 				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
@@ -2374,205 +4279,22 @@
 			<key>isa</key>
 			<string>XCBuildConfiguration</string>
 			<key>name</key>
-			<string>Release</string>
-		</dict>
-		<key>BA9F62DDE37FF0D601A4D5EA</key>
-		<dict>
-			<key>includeInIndex</key>
-			<string>1</string>
-			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>lastKnownFileType</key>
-			<string>sourcecode.c.objc</string>
-			<key>path</key>
-			<string>NSEnumerator+GRXUtil.m</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
-		</dict>
-		<key>BB88043BB37FC0261BA90A30</key>
-		<dict>
-			<key>fileRef</key>
-			<string>636AC1003F2C71FFD74542CD</string>
-			<key>isa</key>
-			<string>PBXBuildFile</string>
-		</dict>
-		<key>BC50D76123DA4B85E6AD77B4</key>
-		<dict>
-			<key>includeInIndex</key>
-			<string>1</string>
-			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>lastKnownFileType</key>
-			<string>sourcecode.c.objc</string>
-			<key>path</key>
-			<string>Pods-Sample-dummy.m</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
-		</dict>
-		<key>BC52B0661F25B25CE382296C</key>
-		<dict>
-			<key>includeInIndex</key>
-			<string>1</string>
-			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>lastKnownFileType</key>
-			<string>sourcecode.c.objc</string>
-			<key>path</key>
-			<string>GRXImmediateWriter.m</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
-		</dict>
-		<key>BDA58E5E1AE450540A2B0227</key>
-		<dict>
-			<key>includeInIndex</key>
-			<string>1</string>
-			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>lastKnownFileType</key>
-			<string>sourcecode.c.objc</string>
-			<key>path</key>
-			<string>GRXWriter.m</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
-		</dict>
-		<key>BECFE3DCB323841851972996</key>
-		<dict>
-			<key>includeInIndex</key>
-			<string>1</string>
-			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>lastKnownFileType</key>
-			<string>sourcecode.c.h</string>
-			<key>path</key>
-			<string>GRXImmediateWriter.h</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
-		</dict>
-		<key>BFE770FF3C0847AB995A82CA</key>
-		<dict>
-			<key>buildActionMask</key>
-			<string>2147483647</string>
-			<key>files</key>
-			<array>
-				<string>86D03B997B81819E2F39E48B</string>
-				<string>43CC797FB2A733DF5B7A9F05</string>
-				<string>6E0669CB3E76E19FC854BA74</string>
-				<string>CBA4FEEF7E642535FB39D878</string>
-				<string>FC1BEDED07CA4D91AFEB56BD</string>
-				<string>46FAFA88CA3E774263422EB9</string>
-				<string>8915073BE8158EF53FE11B95</string>
-				<string>B90592E4E39AFD1E769F9A95</string>
-				<string>F6383D21195A5BEFC51F6618</string>
-				<string>352B4C7135E3BBBFEBAB7F55</string>
-				<string>E8F0B998CE49FF732F312133</string>
-			</array>
-			<key>isa</key>
-			<string>PBXSourcesBuildPhase</string>
-			<key>runOnlyForDeploymentPostprocessing</key>
-			<string>0</string>
-		</dict>
-		<key>C0AC333A6FE8F07600C96890</key>
-		<dict>
-			<key>fileRef</key>
-			<string>1868370C0050315A6B835D42</string>
-			<key>isa</key>
-			<string>PBXBuildFile</string>
-		</dict>
-		<key>C382F416EFA39BE2CF216044</key>
-		<dict>
-			<key>fileRef</key>
-			<string>5AEFA85A5F1AD206D68B0576</string>
-			<key>isa</key>
-			<string>PBXBuildFile</string>
-		</dict>
-		<key>C4342DDEEF3C3290956C21DF</key>
-		<dict>
-			<key>buildConfigurations</key>
-			<array>
-				<string>A8AFEFDF4700447BBCDF9E10</string>
-				<string>0F20828B67FDCB990B1818E9</string>
-			</array>
-			<key>defaultConfigurationIsVisible</key>
-			<string>0</string>
-			<key>defaultConfigurationName</key>
-			<string>Release</string>
-			<key>isa</key>
-			<string>XCConfigurationList</string>
-		</dict>
-		<key>CBA4FEEF7E642535FB39D878</key>
-		<dict>
-			<key>fileRef</key>
-			<string>636AC1003F2C71FFD74542CD</string>
-			<key>isa</key>
-			<string>PBXBuildFile</string>
-		</dict>
-		<key>CC0A03D531EF0FF199671820</key>
-		<dict>
-			<key>fileRef</key>
-			<string>9CFAC09E370EA1C96C8D2880</string>
-			<key>isa</key>
-			<string>PBXBuildFile</string>
-		</dict>
-		<key>CC358E38AE146C095C401760</key>
-		<dict>
-			<key>fileRef</key>
-			<string>0260773D27B4AE159FB0B22D</string>
-			<key>isa</key>
-			<string>PBXBuildFile</string>
-		</dict>
-		<key>D49849E96C0C5FFB93C810CD</key>
-		<dict>
-			<key>children</key>
-			<array>
-				<string>3133D1CCCF4F1FE3E893509C</string>
-				<string>2FE1D288B8389F925AA3CE0C</string>
-				<string>2663F4401A9075DAC0B24171</string>
-				<string>911BEE248BE640294A081862</string>
-				<string>B034EE43C1EF96D1CBD1328A</string>
-				<string>7FACBF2C8AF0403DD1C11015</string>
-				<string>E232BDE68610C0AC98C0D29F</string>
-				<string>4972C151CE9A8A15BC1AE2C8</string>
-				<string>8A7375A2F98889F35C15E2D7</string>
-				<string>687D79F4C2484F58E9796051</string>
-				<string>42B461F095E85911637DFD60</string>
-				<string>2B05A4C21D00E8CF0DE88447</string>
-			</array>
-			<key>isa</key>
-			<string>PBXGroup</string>
-			<key>name</key>
-			<string>Support Files</string>
-			<key>path</key>
-			<string>../examples/Sample/Pods/Target Support Files/Pods-RxLibrary</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>Release</string>
 		</dict>
-		<key>D53A8F2B11E6C2C187AFFF1D</key>
+		<key>EE156F6201B39BDD5F905822</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>text</string>
+			<string>sourcecode.c.h</string>
 			<key>path</key>
-			<string>Pods-Sample-acknowledgements.markdown</string>
+			<string>Pods-GRPCClient-prefix.pch</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>DB007D27F74F8F72C72A1079</key>
-		<dict>
-			<key>containerPortal</key>
-			<string>FBF79DDF04ADEAED54BA2286</string>
-			<key>isa</key>
-			<string>PBXContainerItemProxy</string>
-			<key>proxyType</key>
-			<string>1</string>
-			<key>remoteGlobalIDString</key>
-			<string>6BFD156F312F6CAA1E5B00CA</string>
-			<key>remoteInfo</key>
-			<string>Pods-RxLibrary</string>
-		</dict>
-		<key>DB0257E62EC33F3F316EF017</key>
+		<key>EE695A82B047142EA781152E</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
@@ -2580,77 +4302,113 @@
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
 			<string>sourcecode.c.h</string>
+			<key>name</key>
+			<string>GRPCMethodName+HTTP2Encoding.h</string>
 			<key>path</key>
-			<string>GRXWriter.h</string>
+			<string>private/GRPCMethodName+HTTP2Encoding.h</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>DB3528F609E6177E1C5A691C</key>
+		<key>EE85C49640E6202C2A33CDF6</key>
 		<dict>
-			<key>includeInIndex</key>
-			<string>1</string>
+			<key>baseConfigurationReference</key>
+			<string>048EFCCABBC3F25828644716</string>
+			<key>buildSettings</key>
+			<dict>
+				<key>ALWAYS_SEARCH_USER_PATHS</key>
+				<string>NO</string>
+				<key>COPY_PHASE_STRIP</key>
+				<string>NO</string>
+				<key>DSTROOT</key>
+				<string>/tmp/xcodeproj.dst</string>
+				<key>GCC_DYNAMIC_NO_PIC</key>
+				<string>NO</string>
+				<key>GCC_OPTIMIZATION_LEVEL</key>
+				<string>0</string>
+				<key>GCC_PRECOMPILE_PREFIX_HEADER</key>
+				<string>YES</string>
+				<key>GCC_PREPROCESSOR_DEFINITIONS</key>
+				<array>
+					<string>DEBUG=1</string>
+					<string>$(inherited)</string>
+				</array>
+				<key>GCC_SYMBOLS_PRIVATE_EXTERN</key>
+				<string>NO</string>
+				<key>INSTALL_PATH</key>
+				<string>$(BUILT_PRODUCTS_DIR)</string>
+				<key>IPHONEOS_DEPLOYMENT_TARGET</key>
+				<string>8.0</string>
+				<key>OTHER_LDFLAGS</key>
+				<string></string>
+				<key>OTHER_LIBTOOLFLAGS</key>
+				<string></string>
+				<key>PRODUCT_NAME</key>
+				<string>$(TARGET_NAME)</string>
+				<key>PUBLIC_HEADERS_FOLDER_PATH</key>
+				<string>$(TARGET_NAME)</string>
+				<key>SDKROOT</key>
+				<string>iphoneos</string>
+				<key>SKIP_INSTALL</key>
+				<string>YES</string>
+			</dict>
 			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>lastKnownFileType</key>
-			<string>text.plist.xml</string>
-			<key>path</key>
-			<string>Pods-SampleTests-acknowledgements.plist</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>XCBuildConfiguration</string>
+			<key>name</key>
+			<string>Debug</string>
 		</dict>
-		<key>DB677464758307786D68CCE9</key>
+		<key>EF97D57CA44A79151103F06B</key>
 		<dict>
-			<key>includeInIndex</key>
-			<string>1</string>
 			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>lastKnownFileType</key>
-			<string>text.xcconfig</string>
-			<key>path</key>
-			<string>Pods-SampleTests.release.xcconfig</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>PBXTargetDependency</string>
+			<key>name</key>
+			<string>Pods-SampleTests-RxLibrary</string>
+			<key>target</key>
+			<string>474A50F85C06F74769FAD474</string>
+			<key>targetProxy</key>
+			<string>FE333C59E3BD0F9986105E29</string>
 		</dict>
-		<key>DCAB71BD665AF17533987B69</key>
+		<key>F058968A71750BBCF4F4FB1C</key>
 		<dict>
 			<key>buildActionMask</key>
 			<string>2147483647</string>
 			<key>files</key>
 			<array>
-				<string>85D5565EC08D14A6A60F1DDA</string>
+				<string>03289193476D7E6EE456FAA8</string>
 			</array>
 			<key>isa</key>
-			<string>PBXFrameworksBuildPhase</string>
+			<string>PBXSourcesBuildPhase</string>
 			<key>runOnlyForDeploymentPostprocessing</key>
 			<string>0</string>
 		</dict>
-		<key>DF94410F5DC0A0AB69336DF4</key>
+		<key>F156B1B8573809A342E0AE1F</key>
 		<dict>
-			<key>explicitFileType</key>
-			<string>archive.ar</string>
-			<key>includeInIndex</key>
-			<string>0</string>
+			<key>fileRef</key>
+			<string>CEA794A7056AFAB8256CC44D</string>
 			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>path</key>
-			<string>libPods-Sample.a</string>
-			<key>sourceTree</key>
-			<string>BUILT_PRODUCTS_DIR</string>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>E14CB6F332A9E58BB5F76C07</key>
+		<key>F2B5B896D8C7E13B5E8ADA28</key>
 		<dict>
-			<key>includeInIndex</key>
-			<string>1</string>
+			<key>fileRef</key>
+			<string>E0CF2237012441B69E760029</string>
 			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>lastKnownFileType</key>
-			<string>text.script.sh</string>
-			<key>path</key>
-			<string>Pods-resources.sh</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>F37E3DFDFA20082CBC4E2257</key>
+		<dict>
+			<key>fileRef</key>
+			<string>6BBDA0AD2955451BBF881052</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
+		</dict>
+		<key>F4586BA420EA562FECC43A3A</key>
+		<dict>
+			<key>fileRef</key>
+			<string>A7CE4BCE7B6959BCDC54B854</string>
+			<key>isa</key>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>E232BDE68610C0AC98C0D29F</key>
+		<key>F541961867C9493F07D54B8E</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
@@ -2659,53 +4417,49 @@
 			<key>lastKnownFileType</key>
 			<string>sourcecode.c.objc</string>
 			<key>name</key>
-			<string>Pods-Sample-RxLibrary-dummy.m</string>
+			<string>GRPCDelegateWrapper.m</string>
 			<key>path</key>
-			<string>../Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-dummy.m</string>
+			<string>private/GRPCDelegateWrapper.m</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>E86A17CE1D79ECDCEBF91109</key>
+		<key>F636FFBF62AFF197BE3CB427</key>
 		<dict>
 			<key>fileRef</key>
-			<string>F763F3DF1B47888E75D0ED9C</string>
+			<string>34373F1941450D17C3F85B57</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>E8F0B998CE49FF732F312133</key>
+		<key>F6A0AD6C190915DD52886BE2</key>
 		<dict>
-			<key>fileRef</key>
-			<string>E232BDE68610C0AC98C0D29F</string>
+			<key>buildConfigurations</key>
+			<array>
+				<string>EE85C49640E6202C2A33CDF6</string>
+				<string>ED9460BEAAB47A2752887CE9</string>
+			</array>
+			<key>defaultConfigurationIsVisible</key>
+			<string>0</string>
+			<key>defaultConfigurationName</key>
+			<string>Release</string>
 			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>XCConfigurationList</string>
 		</dict>
-		<key>EB29FAB1F81F0D17BDAD72D0</key>
+		<key>F6B6558E339AD89F764A6D88</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
 			<key>isa</key>
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
-			<string>sourcecode.c.objc</string>
+			<string>text.xcconfig</string>
+			<key>name</key>
+			<string>Pods-Sample-RxLibrary.xcconfig</string>
 			<key>path</key>
-			<string>GRXWriter+Immediate.m</string>
+			<string>../Pods-Sample-RxLibrary/Pods-Sample-RxLibrary.xcconfig</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>EF2EE4BC906FF9909348DAB5</key>
-		<dict>
-			<key>explicitFileType</key>
-			<string>archive.ar</string>
-			<key>includeInIndex</key>
-			<string>0</string>
-			<key>isa</key>
-			<string>PBXFileReference</string>
-			<key>path</key>
-			<string>libPods-Sample-RxLibrary.a</string>
-			<key>sourceTree</key>
-			<string>BUILT_PRODUCTS_DIR</string>
-		</dict>
-		<key>EF8B807C5A2059D6C709450D</key>
+		<key>F776B445ABD393C908B02302</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
@@ -2714,65 +4468,32 @@
 			<key>lastKnownFileType</key>
 			<string>sourcecode.c.h</string>
 			<key>path</key>
-			<string>Pods-SampleTests-environment.h</string>
-			<key>sourceTree</key>
-			<string>&lt;group&gt;</string>
-		</dict>
-		<key>F2BB78774BCEFD5DDDF38239</key>
-		<dict>
-			<key>children</key>
-			<array>
-				<string>69E8FF71552D08D72B9068F1</string>
-				<string>7A8627E1649F66DEE014EB46</string>
-				<string>0D09CEB9308FA5BACEB5F84C</string>
-			</array>
-			<key>isa</key>
-			<string>PBXGroup</string>
-			<key>name</key>
-			<string>Targets Support Files</string>
+			<string>GRXWriter+Transformations.h</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>F2C6AACFE46FFA8DC383DE43</key>
+		<key>F84427B4C72738E045D44E6C</key>
 		<dict>
 			<key>fileRef</key>
-			<string>0D53085043D992DC00E29F0A</string>
+			<string>E0CF2237012441B69E760029</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>F6383D21195A5BEFC51F6618</key>
+		<key>F911880EC1D908050569F8AF</key>
 		<dict>
 			<key>fileRef</key>
-			<string>BDA58E5E1AE450540A2B0227</string>
+			<string>3E850442224A3D7C7540C6C5</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>F6C59E5B4CFE053E9F98000E</key>
+		<key>FA5E9BC13067F1E32D6311E6</key>
 		<dict>
-			<key>buildConfigurationList</key>
-			<string>17F4C2F25813E7A4588FF233</string>
-			<key>buildPhases</key>
-			<array>
-				<string>BFE770FF3C0847AB995A82CA</string>
-				<string>1146D04C598DEBA045C96C2F</string>
-				<string>9E8DC61269B141639DA7F859</string>
-			</array>
-			<key>buildRules</key>
-			<array/>
-			<key>dependencies</key>
-			<array/>
+			<key>fileRef</key>
+			<string>FB880554D85130C733402058</string>
 			<key>isa</key>
-			<string>PBXNativeTarget</string>
-			<key>name</key>
-			<string>Pods-Sample-RxLibrary</string>
-			<key>productName</key>
-			<string>Pods-Sample-RxLibrary</string>
-			<key>productReference</key>
-			<string>EF2EE4BC906FF9909348DAB5</string>
-			<key>productType</key>
-			<string>com.apple.product-type.library.static</string>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>F763F3DF1B47888E75D0ED9C</key>
+		<key>FB880554D85130C733402058</key>
 		<dict>
 			<key>includeInIndex</key>
 			<string>1</string>
@@ -2780,109 +4501,82 @@
 			<string>PBXFileReference</string>
 			<key>lastKnownFileType</key>
 			<string>sourcecode.c.objc</string>
+			<key>name</key>
+			<string>GRPCChannel.m</string>
 			<key>path</key>
-			<string>GRXWriter+Transformations.m</string>
+			<string>private/GRPCChannel.m</string>
 			<key>sourceTree</key>
 			<string>&lt;group&gt;</string>
 		</dict>
-		<key>F779618174957BE31FCCDE56</key>
+		<key>FBC9D2D66DA1B0B501961B55</key>
 		<dict>
-			<key>buildActionMask</key>
-			<string>2147483647</string>
-			<key>files</key>
-			<array>
-				<string>2B49DCA723ECBC0F2777B960</string>
-				<string>22531AF83592134D3879C3E1</string>
-				<string>0C57EED724EBF58759F9F6DF</string>
-				<string>8CD061F02F905957F4C1D188</string>
-				<string>458FF1EEF4EB9646C699F3DD</string>
-				<string>2B341576464148A01DCFB28B</string>
-				<string>36FF37EAC7E918C4CD867776</string>
-				<string>594F98D43B96AB5C11E61C10</string>
-				<string>B78477CA74AEFC96C25B49B4</string>
-				<string>9CCBE9A628C305B3B089B8DD</string>
-				<string>801BBA7A538CFAE6746966A7</string>
-			</array>
+			<key>containerPortal</key>
+			<string>E61F9CBEB0CA9A172C4AA56B</string>
 			<key>isa</key>
-			<string>PBXSourcesBuildPhase</string>
-			<key>runOnlyForDeploymentPostprocessing</key>
-			<string>0</string>
+			<string>PBXContainerItemProxy</string>
+			<key>proxyType</key>
+			<string>1</string>
+			<key>remoteGlobalIDString</key>
+			<string>474A50F85C06F74769FAD474</string>
+			<key>remoteInfo</key>
+			<string>Pods-SampleTests-RxLibrary</string>
 		</dict>
-		<key>F8B4778EF3030EEC2E9927CE</key>
+		<key>FD9953A9B079B03396B2FEA3</key>
 		<dict>
+			<key>fileRef</key>
+			<string>F541961867C9493F07D54B8E</string>
 			<key>isa</key>
-			<string>PBXTargetDependency</string>
-			<key>name</key>
-			<string>Pods-SampleTests-RxLibrary</string>
-			<key>target</key>
-			<string>3800855A656C8D0813062074</string>
-			<key>targetProxy</key>
-			<string>7DA2A517A18D85B390FB122A</string>
+			<string>PBXBuildFile</string>
 		</dict>
-		<key>FBF79DDF04ADEAED54BA2286</key>
+		<key>FE333C59E3BD0F9986105E29</key>
 		<dict>
-			<key>attributes</key>
-			<dict>
-				<key>LastUpgradeCheck</key>
-				<string>0510</string>
-			</dict>
-			<key>buildConfigurationList</key>
-			<string>3749A34D3DFA6E2F3539E546</string>
-			<key>compatibilityVersion</key>
-			<string>Xcode 3.2</string>
-			<key>developmentRegion</key>
-			<string>English</string>
-			<key>hasScannedForEncodings</key>
-			<string>0</string>
+			<key>containerPortal</key>
+			<string>E61F9CBEB0CA9A172C4AA56B</string>
 			<key>isa</key>
-			<string>PBXProject</string>
-			<key>knownRegions</key>
-			<array>
-				<string>en</string>
-			</array>
-			<key>mainGroup</key>
-			<string>397A12919FB4BDD608FE207C</string>
-			<key>productRefGroup</key>
-			<string>8B05D39455D5B23720961FA4</string>
-			<key>projectDirPath</key>
-			<string></string>
-			<key>projectReferences</key>
-			<array/>
-			<key>projectRoot</key>
-			<string></string>
-			<key>targets</key>
-			<array>
-				<string>26E6ACBF137DBC325B4E7DA7</string>
-				<string>6BFD156F312F6CAA1E5B00CA</string>
-				<string>0239F1B46D24E21A8042F47F</string>
-				<string>F6C59E5B4CFE053E9F98000E</string>
-				<string>14D92BB2ED12213381BD2EB9</string>
-				<string>3800855A656C8D0813062074</string>
-			</array>
+			<string>PBXContainerItemProxy</string>
+			<key>proxyType</key>
+			<string>1</string>
+			<key>remoteGlobalIDString</key>
+			<string>474A50F85C06F74769FAD474</string>
+			<key>remoteInfo</key>
+			<string>Pods-SampleTests-RxLibrary</string>
 		</dict>
-		<key>FC1BEDED07CA4D91AFEB56BD</key>
+		<key>FF34F6701990B0955422EC9C</key>
 		<dict>
-			<key>fileRef</key>
-			<string>57AC9BF19B9635D7476CA5FA</string>
+			<key>buildConfigurations</key>
+			<array>
+				<string>EBB8787CD50E6221A0ABA3AE</string>
+				<string>0041F7F38D0B99E977EC7A9B</string>
+			</array>
+			<key>defaultConfigurationIsVisible</key>
+			<string>0</string>
+			<key>defaultConfigurationName</key>
+			<string>Release</string>
 			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>XCConfigurationList</string>
 		</dict>
-		<key>FDC6B84EAC9989F0827EA4F3</key>
+		<key>FF378D56A81AE6EFC739CDE6</key>
 		<dict>
 			<key>fileRef</key>
-			<string>0260773D27B4AE159FB0B22D</string>
+			<string>617AA57F150724B1881EC92E</string>
 			<key>isa</key>
 			<string>PBXBuildFile</string>
 		</dict>
-		<key>FDC939796E70DC7D141E29FC</key>
+		<key>FFC668E9994CC6407B338F9D</key>
 		<dict>
-			<key>fileRef</key>
-			<string>DB0257E62EC33F3F316EF017</string>
+			<key>includeInIndex</key>
+			<string>1</string>
 			<key>isa</key>
-			<string>PBXBuildFile</string>
+			<string>PBXFileReference</string>
+			<key>lastKnownFileType</key>
+			<string>text.plist.xml</string>
+			<key>path</key>
+			<string>Pods-acknowledgements.plist</string>
+			<key>sourceTree</key>
+			<string>&lt;group&gt;</string>
 		</dict>
 	</dict>
 	<key>rootObject</key>
-	<string>FBF79DDF04ADEAED54BA2286</string>
+	<string>E61F9CBEB0CA9A172C4AA56B</string>
 </dict>
 </plist>
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-GRPCClient/Pods-GRPCClient-Private.xcconfig b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-GRPCClient/Pods-GRPCClient-Private.xcconfig
new file mode 100644
index 0000000000000000000000000000000000000000..27df35431539321f9511515440e56c9a2c33516f
--- /dev/null
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-GRPCClient/Pods-GRPCClient-Private.xcconfig	
@@ -0,0 +1,5 @@
+#include "Pods-GRPCClient.xcconfig"
+GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
+HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Build" "${PODS_ROOT}/Headers/Build/GRPCClient" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/GRPCClient" "${PODS_ROOT}/Headers/Public/RxLibrary"
+OTHER_LDFLAGS = -ObjC
+PODS_ROOT = ${SRCROOT}
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-GRPCClient/Pods-GRPCClient-dummy.m b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-GRPCClient/Pods-GRPCClient-dummy.m
new file mode 100644
index 0000000000000000000000000000000000000000..8cac89bb84292b12a3ad7a10d6d17ab4709684b6
--- /dev/null
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-GRPCClient/Pods-GRPCClient-dummy.m	
@@ -0,0 +1,5 @@
+#import <Foundation/Foundation.h>
+@interface PodsDummy_Pods_GRPCClient : NSObject
+@end
+@implementation PodsDummy_Pods_GRPCClient
+@end
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-GRPCClient/Pods-GRPCClient-prefix.pch b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-GRPCClient/Pods-GRPCClient-prefix.pch
new file mode 100644
index 0000000000000000000000000000000000000000..95cf11d9fb04da88b7d82d6e26fb881b62c28b75
--- /dev/null
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-GRPCClient/Pods-GRPCClient-prefix.pch	
@@ -0,0 +1,5 @@
+#ifdef __OBJC__
+#import <UIKit/UIKit.h>
+#endif
+
+#import "Pods-environment.h"
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-GRPCClient/Pods-GRPCClient.xcconfig b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-GRPCClient/Pods-GRPCClient.xcconfig
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-RxLibrary/Pods-RxLibrary-Private.xcconfig b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-RxLibrary/Pods-RxLibrary-Private.xcconfig
index 5c1a7097bed70be3db68efd76c2f503ac5079658..a1c3897b81a8c9f0b6d142aa79abae91ca394b6a 100644
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-RxLibrary/Pods-RxLibrary-Private.xcconfig	
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-RxLibrary/Pods-RxLibrary-Private.xcconfig	
@@ -1,5 +1,5 @@
 #include "Pods-RxLibrary.xcconfig"
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Build" "${PODS_ROOT}/Headers/Build/RxLibrary" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/RxLibrary"
+HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Build" "${PODS_ROOT}/Headers/Build/RxLibrary" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/GRPCClient" "${PODS_ROOT}/Headers/Public/RxLibrary"
 OTHER_LDFLAGS = -ObjC
 PODS_ROOT = ${SRCROOT}
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-GRPCClient/Pods-Sample-GRPCClient-Private.xcconfig b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-GRPCClient/Pods-Sample-GRPCClient-Private.xcconfig
new file mode 100644
index 0000000000000000000000000000000000000000..e23f7be66f1f8de0468994ab4bc8d104be0f5a90
--- /dev/null
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-GRPCClient/Pods-Sample-GRPCClient-Private.xcconfig	
@@ -0,0 +1,5 @@
+#include "Pods-Sample-GRPCClient.xcconfig"
+GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
+HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Build" "${PODS_ROOT}/Headers/Build/GRPCClient" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/GRPCClient" "${PODS_ROOT}/Headers/Public/RxLibrary"
+OTHER_LDFLAGS = -ObjC
+PODS_ROOT = ${SRCROOT}
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-GRPCClient/Pods-Sample-GRPCClient-dummy.m b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-GRPCClient/Pods-Sample-GRPCClient-dummy.m
new file mode 100644
index 0000000000000000000000000000000000000000..2bf2682a7258c2ac240dcf7a75ce9a82e5acf91c
--- /dev/null
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-GRPCClient/Pods-Sample-GRPCClient-dummy.m	
@@ -0,0 +1,5 @@
+#import <Foundation/Foundation.h>
+@interface PodsDummy_Pods_Sample_GRPCClient : NSObject
+@end
+@implementation PodsDummy_Pods_Sample_GRPCClient
+@end
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-GRPCClient/Pods-Sample-GRPCClient-prefix.pch b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-GRPCClient/Pods-Sample-GRPCClient-prefix.pch
new file mode 100644
index 0000000000000000000000000000000000000000..0e807f67a35ac9dccfea77be0cd6a5bf175e7be3
--- /dev/null
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-GRPCClient/Pods-Sample-GRPCClient-prefix.pch	
@@ -0,0 +1,5 @@
+#ifdef __OBJC__
+#import <UIKit/UIKit.h>
+#endif
+
+#import "Pods-Sample-environment.h"
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-GRPCClient/Pods-Sample-GRPCClient.xcconfig b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-GRPCClient/Pods-Sample-GRPCClient.xcconfig
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-Private.xcconfig b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-Private.xcconfig
index 2cc81f729dc4953b4ae67038df7cb116410619dd..023a22eb14aa0c116bc3934c9283c9f635e45917 100644
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-Private.xcconfig	
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-Private.xcconfig	
@@ -1,5 +1,5 @@
 #include "Pods-Sample-RxLibrary.xcconfig"
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Build" "${PODS_ROOT}/Headers/Build/RxLibrary" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/RxLibrary"
+HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Build" "${PODS_ROOT}/Headers/Build/RxLibrary" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/GRPCClient" "${PODS_ROOT}/Headers/Public/RxLibrary"
 OTHER_LDFLAGS = -ObjC
 PODS_ROOT = ${SRCROOT}
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample-environment.h b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample-environment.h
index b4fd16b369bbc3b0b1242cedea20fc676550971e..d0acfc70ecaa3f4cdd884f7b1e18f6b043dbded1 100644
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample-environment.h	
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample-environment.h	
@@ -6,6 +6,12 @@
 // project.
 
 
+// GRPCClient
+#define COCOAPODS_POD_AVAILABLE_GRPCClient
+#define COCOAPODS_VERSION_MAJOR_GRPCClient 0
+#define COCOAPODS_VERSION_MINOR_GRPCClient 0
+#define COCOAPODS_VERSION_PATCH_GRPCClient 1
+
 // RxLibrary
 #define COCOAPODS_POD_AVAILABLE_RxLibrary
 #define COCOAPODS_VERSION_MAJOR_RxLibrary 0
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample.debug.xcconfig b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample.debug.xcconfig
index 776727154c16c18e418891e04460318aad6f30e5..06aa64cfac5a8da651db2e17454403edf2b55de3 100644
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample.debug.xcconfig	
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample.debug.xcconfig	
@@ -1,6 +1,6 @@
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/RxLibrary"
-OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/RxLibrary"
-OTHER_LDFLAGS = -ObjC -l"Pods-Sample-RxLibrary"
+HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/GRPCClient" "${PODS_ROOT}/Headers/Public/RxLibrary"
+OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/GRPCClient" -isystem "${PODS_ROOT}/Headers/Public/RxLibrary"
+OTHER_LDFLAGS = -ObjC -l"Pods-Sample-GRPCClient" -l"Pods-Sample-RxLibrary"
 OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS)
 PODS_ROOT = ${SRCROOT}/Pods
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample.release.xcconfig b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample.release.xcconfig
index 776727154c16c18e418891e04460318aad6f30e5..06aa64cfac5a8da651db2e17454403edf2b55de3 100644
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample.release.xcconfig	
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample.release.xcconfig	
@@ -1,6 +1,6 @@
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/RxLibrary"
-OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/RxLibrary"
-OTHER_LDFLAGS = -ObjC -l"Pods-Sample-RxLibrary"
+HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/GRPCClient" "${PODS_ROOT}/Headers/Public/RxLibrary"
+OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/GRPCClient" -isystem "${PODS_ROOT}/Headers/Public/RxLibrary"
+OTHER_LDFLAGS = -ObjC -l"Pods-Sample-GRPCClient" -l"Pods-Sample-RxLibrary"
 OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS)
 PODS_ROOT = ${SRCROOT}/Pods
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient-Private.xcconfig b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient-Private.xcconfig
new file mode 100644
index 0000000000000000000000000000000000000000..01e25c4a88c0e0f6fcce3b51ca193b2b6d25c388
--- /dev/null
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient-Private.xcconfig	
@@ -0,0 +1,5 @@
+#include "Pods-SampleTests-GRPCClient.xcconfig"
+GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
+HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Build" "${PODS_ROOT}/Headers/Build/GRPCClient" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/GRPCClient" "${PODS_ROOT}/Headers/Public/RxLibrary"
+OTHER_LDFLAGS = -ObjC
+PODS_ROOT = ${SRCROOT}
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient-dummy.m b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient-dummy.m
new file mode 100644
index 0000000000000000000000000000000000000000..7ecd57a34b742b8c26c7e4e8c18454a76aafa78d
--- /dev/null
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient-dummy.m	
@@ -0,0 +1,5 @@
+#import <Foundation/Foundation.h>
+@interface PodsDummy_Pods_SampleTests_GRPCClient : NSObject
+@end
+@implementation PodsDummy_Pods_SampleTests_GRPCClient
+@end
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient-prefix.pch b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient-prefix.pch
new file mode 100644
index 0000000000000000000000000000000000000000..abd56515872177cd1fbfd31cb70501fb4e7e2563
--- /dev/null
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient-prefix.pch	
@@ -0,0 +1,5 @@
+#ifdef __OBJC__
+#import <UIKit/UIKit.h>
+#endif
+
+#import "Pods-SampleTests-environment.h"
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient.xcconfig b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient.xcconfig
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-Private.xcconfig b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-Private.xcconfig
index a3cd79243452f38e766239b04fb312230a53e383..67069bae5da5f543896c0455630e1f7ba47deb16 100644
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-Private.xcconfig	
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-Private.xcconfig	
@@ -1,5 +1,5 @@
 #include "Pods-SampleTests-RxLibrary.xcconfig"
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Build" "${PODS_ROOT}/Headers/Build/RxLibrary" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/RxLibrary"
+HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Build" "${PODS_ROOT}/Headers/Build/RxLibrary" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/GRPCClient" "${PODS_ROOT}/Headers/Public/RxLibrary"
 OTHER_LDFLAGS = -ObjC
 PODS_ROOT = ${SRCROOT}
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests-environment.h b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests-environment.h
index b4fd16b369bbc3b0b1242cedea20fc676550971e..d0acfc70ecaa3f4cdd884f7b1e18f6b043dbded1 100644
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests-environment.h	
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests-environment.h	
@@ -6,6 +6,12 @@
 // project.
 
 
+// GRPCClient
+#define COCOAPODS_POD_AVAILABLE_GRPCClient
+#define COCOAPODS_VERSION_MAJOR_GRPCClient 0
+#define COCOAPODS_VERSION_MINOR_GRPCClient 0
+#define COCOAPODS_VERSION_PATCH_GRPCClient 1
+
 // RxLibrary
 #define COCOAPODS_POD_AVAILABLE_RxLibrary
 #define COCOAPODS_VERSION_MAJOR_RxLibrary 0
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests.debug.xcconfig b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests.debug.xcconfig
index 92a3b7d2bd5c576daedb9a81221282766b524238..892541c53e7f4a927050f1a324c8866d279720e2 100644
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests.debug.xcconfig	
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests.debug.xcconfig	
@@ -1,6 +1,6 @@
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/RxLibrary"
-OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/RxLibrary"
-OTHER_LDFLAGS = -ObjC -l"Pods-SampleTests-RxLibrary"
+HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/GRPCClient" "${PODS_ROOT}/Headers/Public/RxLibrary"
+OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/GRPCClient" -isystem "${PODS_ROOT}/Headers/Public/RxLibrary"
+OTHER_LDFLAGS = -ObjC -l"Pods-SampleTests-GRPCClient" -l"Pods-SampleTests-RxLibrary"
 OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS)
 PODS_ROOT = ${SRCROOT}/Pods
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests.release.xcconfig b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests.release.xcconfig
index 92a3b7d2bd5c576daedb9a81221282766b524238..892541c53e7f4a927050f1a324c8866d279720e2 100644
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests.release.xcconfig	
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests.release.xcconfig	
@@ -1,6 +1,6 @@
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/RxLibrary"
-OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/RxLibrary"
-OTHER_LDFLAGS = -ObjC -l"Pods-SampleTests-RxLibrary"
+HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/GRPCClient" "${PODS_ROOT}/Headers/Public/RxLibrary"
+OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/GRPCClient" -isystem "${PODS_ROOT}/Headers/Public/RxLibrary"
+OTHER_LDFLAGS = -ObjC -l"Pods-SampleTests-GRPCClient" -l"Pods-SampleTests-RxLibrary"
 OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS)
 PODS_ROOT = ${SRCROOT}/Pods
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods-environment.h b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods-environment.h
index b4fd16b369bbc3b0b1242cedea20fc676550971e..d0acfc70ecaa3f4cdd884f7b1e18f6b043dbded1 100644
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods-environment.h	
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods-environment.h	
@@ -6,6 +6,12 @@
 // project.
 
 
+// GRPCClient
+#define COCOAPODS_POD_AVAILABLE_GRPCClient
+#define COCOAPODS_VERSION_MAJOR_GRPCClient 0
+#define COCOAPODS_VERSION_MINOR_GRPCClient 0
+#define COCOAPODS_VERSION_PATCH_GRPCClient 1
+
 // RxLibrary
 #define COCOAPODS_POD_AVAILABLE_RxLibrary
 #define COCOAPODS_VERSION_MAJOR_RxLibrary 0
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods.debug.xcconfig b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods.debug.xcconfig
index 3c7fe4aa0074815fba3e495100de1e39f17df6f6..e9fafccb0769575537cf9fe2777363bde97ffc0d 100644
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods.debug.xcconfig	
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods.debug.xcconfig	
@@ -1,6 +1,6 @@
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/RxLibrary"
-OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/RxLibrary"
-OTHER_LDFLAGS = -ObjC -l"Pods-RxLibrary"
+HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/GRPCClient" "${PODS_ROOT}/Headers/Public/RxLibrary"
+OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/GRPCClient" -isystem "${PODS_ROOT}/Headers/Public/RxLibrary"
+OTHER_LDFLAGS = -ObjC -l"Pods-GRPCClient" -l"Pods-RxLibrary"
 OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS)
 PODS_ROOT = ${SRCROOT}/Pods
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods.release.xcconfig b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods.release.xcconfig
index 3c7fe4aa0074815fba3e495100de1e39f17df6f6..e9fafccb0769575537cf9fe2777363bde97ffc0d 100644
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods.release.xcconfig	
+++ b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods.release.xcconfig	
@@ -1,6 +1,6 @@
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/RxLibrary"
-OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/RxLibrary"
-OTHER_LDFLAGS = -ObjC -l"Pods-RxLibrary"
+HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/GRPCClient" "${PODS_ROOT}/Headers/Public/RxLibrary"
+OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/GRPCClient" -isystem "${PODS_ROOT}/Headers/Public/RxLibrary"
+OTHER_LDFLAGS = -ObjC -l"Pods-GRPCClient" -l"Pods-RxLibrary"
 OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS)
 PODS_ROOT = ${SRCROOT}/Pods
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Sample/ViewController.m b/src/objective-c/examples/Sample/Sample/ViewController.m
index 70b5d45811051fdf1c89141debbc8f6e0b2b1392..f24d81888b4f7586305ba89f19d66f388e946733 100644
--- a/src/objective-c/examples/Sample/Sample/ViewController.m
+++ b/src/objective-c/examples/Sample/Sample/ViewController.m
@@ -32,6 +32,10 @@
  */
 
 #import "ViewController.h"
+#import <GRPCClient/GRPCCall.h>
+#import <GRPCClient/GRPCMethodName.h>
+#import <RxLibrary/GRXWriter+Immediate.h>
+#import <RxLibrary/GRXWriteable.h>
 
 @interface ViewController ()
 
@@ -42,6 +46,20 @@
 - (void)viewDidLoad {
   [super viewDidLoad];
   // Do any additional setup after loading the view, typically from a nib.
+
+  GRPCMethodName *method = [[GRPCMethodName alloc] initWithPackage:@"grpc.testing"
+                                                         interface:@"TestService"
+                                                            method:@"EmptyCall"];
+
+  GRPCCall *call = [[GRPCCall alloc] initWithHost:@"localhost"
+                                           method:method
+                                   requestsWriter:[GRXWriter writerWithValue:[NSData data]]];
+
+  [call startWithWriteable:[[GRXWriteable alloc] initWithValueHandler:^(NSData *value) {
+    NSLog(@"Received response: %@", value);
+  } completionHandler:^(NSError *errorOrNil) {
+    NSLog(@"Finished with error: %@", errorOrNil);
+  }]];
 }
 
 - (void)didReceiveMemoryWarning {
diff --git a/templates/Makefile.template b/templates/Makefile.template
index 22b382cdab4db85232b8c75eaa2df1ff4fea324b..cd7eb238454d140642fd65b12e9a5d44fe535505 100644
--- a/templates/Makefile.template
+++ b/templates/Makefile.template
@@ -1,7 +1,7 @@
 # GRPC global makefile
 # This currently builds C and C++ code.
 
-# Copyright 2014, Google Inc.
+# Copyright 2015, Google Inc.
 # All rights reserved.
 #
 # Redistribution and use in source and binary forms, with or without
diff --git a/templates/vsprojects/vs2013/Grpc.mak.template b/templates/vsprojects/vs2013/Grpc.mak.template
index bae069c0825b8bce8453ca608d1ec53d03621720..8e1b33bba76c33790861d538a1f34d0ff19bedf9 100644
--- a/templates/vsprojects/vs2013/Grpc.mak.template
+++ b/templates/vsprojects/vs2013/Grpc.mak.template
@@ -1,3 +1,31 @@
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+#     * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+#     * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 <%!
   import re
 %>\
@@ -76,4 +104,4 @@ ${target.name}: ${target.name}.exe
 	echo Running ${target.name}
 	$(OUT_DIR)\${target.name}.exe
 
-% endfor
\ No newline at end of file
+% endfor
diff --git a/test/core/json/json_test.c b/test/core/json/json_test.c
index 0e315e51eeef0ef6858a15031bebe8847a6eadb6..bc3c7a3da84c5a425599b9776527d7ccc797dc2a 100644
--- a/test/core/json/json_test.c
+++ b/test/core/json/json_test.c
@@ -65,7 +65,7 @@ static testing_pair testing_pairs[] = {
   /* Testing nested empty containers. */
   { " [ [ ] , { } , [ ] ] ", "[[],{},[]]", },
   /* Testing escapes and control chars in key strings. */
-  { " { \"\\n\\\\a , b\": 1, \"\": 0 } ", "{\"\\n\\\\a , b\":1,\"\":0}" },
+  { " { \"\x7f\\n\\\\a , b\": 1, \"\": 0 } ", "{\"\\u007f\\n\\\\a , b\":1,\"\":0}" },
   /* Testing the writer's ability to cut off invalid UTF-8 sequences. */
   { "\"abc\xf0\x9d\x24\"", "\"abc\"" },
   { "\"\xff\"", "\"\"" },
diff --git a/test/core/security/print_google_default_creds_token.c b/test/core/security/print_google_default_creds_token.c
new file mode 100644
index 0000000000000000000000000000000000000000..cfd62cf6ccb7eaa06811df9c70449e8f1a3a879d
--- /dev/null
+++ b/test/core/security/print_google_default_creds_token.c
@@ -0,0 +1,107 @@
+/*
+ *
+ * Copyright 2015, Google Inc.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *     * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#include <stdio.h>
+#include <string.h>
+
+#include "src/core/security/credentials.h"
+#include <grpc/grpc.h>
+#include <grpc/grpc_security.h>
+#include <grpc/support/alloc.h>
+#include <grpc/support/cmdline.h>
+#include <grpc/support/log.h>
+#include <grpc/support/slice.h>
+#include <grpc/support/sync.h>
+
+typedef struct {
+  gpr_cv cv;
+  gpr_mu mu;
+  int is_done;
+} synchronizer;
+
+static void on_metadata_response(void *user_data, grpc_mdelem **md_elems,
+                                 size_t num_md,
+                                 grpc_credentials_status status) {
+  synchronizer *sync = user_data;
+  if (status == GRPC_CREDENTIALS_ERROR) {
+    fprintf(stderr, "Fetching token failed.\n");
+  } else {
+    GPR_ASSERT(num_md == 1);
+    printf("\nGot token: %s\n\n",
+           (const char *)GPR_SLICE_START_PTR(md_elems[0]->value->slice));
+  }
+  gpr_mu_lock(&sync->mu);
+  sync->is_done = 1;
+  gpr_mu_unlock(&sync->mu);
+  gpr_cv_signal(&sync->cv);
+}
+
+int main(int argc, char **argv) {
+  int result = 0;
+  synchronizer sync;
+  grpc_credentials *creds = NULL;
+  char *service_url = "https://test.foo.google.com/Foo";
+  gpr_cmdline *cl = gpr_cmdline_create("print_google_default_creds_token");
+  gpr_cmdline_add_string(cl, "service_url",
+                         "Service URL for the token request.",
+                         &service_url);
+  gpr_cmdline_parse(cl, argc, argv);
+
+  grpc_init();
+
+  creds = grpc_google_default_credentials_create();
+  if (creds == NULL) {
+    fprintf(stderr, "\nCould not find default credentials.\n\n");
+    result = 1;
+    goto end;
+  }
+
+  gpr_mu_init(&sync.mu);
+  gpr_cv_init(&sync.cv);
+  sync.is_done = 0;
+
+  grpc_credentials_get_request_metadata(creds, "", on_metadata_response, &sync);
+
+  gpr_mu_lock(&sync.mu);
+  while (!sync.is_done) gpr_cv_wait(&sync.cv, &sync.mu, gpr_inf_future);
+  gpr_mu_unlock(&sync.mu);
+
+  gpr_mu_destroy(&sync.mu);
+  gpr_cv_destroy(&sync.cv);
+  grpc_credentials_release(creds);
+
+end:
+  gpr_cmdline_destroy(cl);
+  grpc_shutdown();
+  return result;
+}
diff --git a/test/cpp/util/create_test_channel.cc b/test/cpp/util/create_test_channel.cc
index b0472d32a99e9b452b24ef7b38fd3f2488bfcffe..66a9a7b7c40286acf26ff6d5afa51a78028fd0b3 100644
--- a/test/cpp/util/create_test_channel.cc
+++ b/test/cpp/util/create_test_channel.cc
@@ -75,7 +75,7 @@ std::shared_ptr<ChannelInterface> CreateTestChannel(
         server.empty() ? override_hostname : server;
     if (creds.get()) {
       channel_creds =
-          CredentialsFactory::ComposeCredentials(creds, channel_creds);
+          CredentialsFactory::CompositeCredentials(creds, channel_creds);
     }
     return CreateChannel(connect_to, channel_creds, channel_args);
   } else {
diff --git a/tools/distrib/check_copyright.py b/tools/distrib/check_copyright.py
index ce66dcc22e542f729eee992d24b5c0607ac6c553..1d09ed42a572d553e8a0d2e198949dc44a48d1d9 100755
--- a/tools/distrib/check_copyright.py
+++ b/tools/distrib/check_copyright.py
@@ -78,6 +78,9 @@ LICENSE_FMT = {
   '.proto': '// %s',
   '.js': ' * %s',
   '.cs': '// %s',
+  '.mak': '# %s',
+  'Makefile': '# %s',
+  'Dockerfile': '# %s',
 }
 
 # pregenerate the actual text that we should have
@@ -99,11 +102,16 @@ def log(cond, why, filename):
 for filename in subprocess.check_output('git ls-tree -r --name-only -r HEAD',
                                         shell=True).splitlines():
   ext = os.path.splitext(filename)[1]
-  if ext not in LICENSE_TEXT:
+  base = os.path.basename(filename)
+  if ext in LICENSE_TEXT: 
+    license = LICENSE_TEXT[ext]
+    old_license = OLD_LICENSE_TEXT[ext]
+  elif base in LICENSE_TEXT:
+    license = LICENSE_TEXT[base]
+    old_license = OLD_LICENSE_TEXT[base]
+  else:
     log(args.skips, 'skip', filename)
     continue
-  license = LICENSE_TEXT[ext]
-  old_license = OLD_LICENSE_TEXT[ext]
   with open(filename) as f:
     text = '\n'.join(line.rstrip() for line in f.read().splitlines())
   if license in text:
diff --git a/tools/dockerfile/grpc_base/Dockerfile b/tools/dockerfile/grpc_base/Dockerfile
index be1b69b0dc552153d5b164eb65ec0611786597c3..d2b5569036d6bbebf071ecfdd4d449ca49e8fad4 100644
--- a/tools/dockerfile/grpc_base/Dockerfile
+++ b/tools/dockerfile/grpc_base/Dockerfile
@@ -1,3 +1,32 @@
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+#     * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+#     * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
 # Base Dockerfile for gRPC dev images
 FROM debian:latest
 
diff --git a/tools/dockerfile/grpc_clang/Dockerfile b/tools/dockerfile/grpc_clang/Dockerfile
index 0928121755fc6942691c68fb24cbb74a3a57d46d..bb107cd6f8c118e7c480be8ff84f7d43716864a1 100644
--- a/tools/dockerfile/grpc_clang/Dockerfile
+++ b/tools/dockerfile/grpc_clang/Dockerfile
@@ -1,3 +1,32 @@
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+#     * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+#     * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
 FROM ubuntu:latest
 
 RUN apt-get update && apt-get install -y \
diff --git a/tools/dockerfile/grpc_cxx/Dockerfile b/tools/dockerfile/grpc_cxx/Dockerfile
index e1ddfcb2da4a435d3681fce7b1de80e72e4bcc22..18c67324964dafb95ad7b00e4936cc80fcd3c6d0 100644
--- a/tools/dockerfile/grpc_cxx/Dockerfile
+++ b/tools/dockerfile/grpc_cxx/Dockerfile
@@ -1,3 +1,32 @@
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+#     * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+#     * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
 # Dockerfile for gRPC C++
 FROM grpc/base
 
diff --git a/tools/dockerfile/grpc_go/Dockerfile b/tools/dockerfile/grpc_go/Dockerfile
index 42620ff3cfbecdab9359d6df23a377cd0add96bd..94d962b4482a1964217e0bf86f7d64c9fbf4cf2d 100644
--- a/tools/dockerfile/grpc_go/Dockerfile
+++ b/tools/dockerfile/grpc_go/Dockerfile
@@ -1,3 +1,32 @@
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+#     * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+#     * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
 # Dockerfile for gRPC Go
 FROM golang:1.4
 
diff --git a/tools/dockerfile/grpc_java/Dockerfile b/tools/dockerfile/grpc_java/Dockerfile
index 17682c63f0d01c0401dfec496990e088440a56df..affbec9b20f59f2592b390c6e2488024656480f0 100644
--- a/tools/dockerfile/grpc_java/Dockerfile
+++ b/tools/dockerfile/grpc_java/Dockerfile
@@ -1,3 +1,32 @@
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+#     * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+#     * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
 # Dockerfile for the gRPC Java dev image
 FROM grpc/java_base
 
diff --git a/tools/dockerfile/grpc_java_base/Dockerfile b/tools/dockerfile/grpc_java_base/Dockerfile
index 6031be484a2697ca4389cfd3addcbb7a47ef69cd..feac5e745e3b7dff029d89165ccce20c0f5c5cfe 100644
--- a/tools/dockerfile/grpc_java_base/Dockerfile
+++ b/tools/dockerfile/grpc_java_base/Dockerfile
@@ -1,3 +1,32 @@
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+#     * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+#     * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
 # Base Dockerfile for the gRPC Java dev image
 FROM grpc/base
 
diff --git a/tools/dockerfile/grpc_node/Dockerfile b/tools/dockerfile/grpc_node/Dockerfile
index 08d060a8dea57966a01a18d77cffa48f79d86a24..dcd9197845993425e15a85f21db7b95ea5d723d4 100644
--- a/tools/dockerfile/grpc_node/Dockerfile
+++ b/tools/dockerfile/grpc_node/Dockerfile
@@ -1,3 +1,32 @@
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+#     * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+#     * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
 # Dockerfile for gRPC Node
 FROM grpc/node_base
 
@@ -21,4 +50,4 @@ ADD cacerts cacerts
 # Add a service_account directory containing the auth creds file
 ADD service_account service_account
 
-CMD ["/usr/bin/nodejs", "/var/local/git/grpc/src/node/interop/interop_server.js", "--use_tls=true", "--port=8040"]
\ No newline at end of file
+CMD ["/usr/bin/nodejs", "/var/local/git/grpc/src/node/interop/interop_server.js", "--use_tls=true", "--port=8040"]
diff --git a/tools/dockerfile/grpc_node_base/Dockerfile b/tools/dockerfile/grpc_node_base/Dockerfile
index e14e03143f72a721d400f39d614f67fed6354f27..55ae608020108544b9573afcda5b2b499f9c1122 100644
--- a/tools/dockerfile/grpc_node_base/Dockerfile
+++ b/tools/dockerfile/grpc_node_base/Dockerfile
@@ -1,3 +1,32 @@
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+#     * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+#     * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
 # Base Dockerfile for gRPC Node.
 #
 # Includes Node installation dependencies
diff --git a/tools/dockerfile/grpc_php/Dockerfile b/tools/dockerfile/grpc_php/Dockerfile
index 6719208ce711b3b8beffae5796bc40ad9e91971c..100d7b3bdb33b6559829202e6509c63614ae6c0c 100644
--- a/tools/dockerfile/grpc_php/Dockerfile
+++ b/tools/dockerfile/grpc_php/Dockerfile
@@ -1,3 +1,32 @@
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+#     * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+#     * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
 # Dockerfile for gRPC PHP
 FROM grpc/php_base
 
diff --git a/tools/dockerfile/grpc_php_base/Dockerfile b/tools/dockerfile/grpc_php_base/Dockerfile
index 3d995e7a89b346bfd94fa43d828a1c2470e8a32f..49f5da846d763182584dcd611e6e881210d28d91 100644
--- a/tools/dockerfile/grpc_php_base/Dockerfile
+++ b/tools/dockerfile/grpc_php_base/Dockerfile
@@ -1,3 +1,32 @@
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+#     * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+#     * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
 # Base Dockerfile for gRPC PHP.
 #
 # Includes PHP installation dependencies, things that are unlikely to vary.
diff --git a/tools/dockerfile/grpc_python/Dockerfile b/tools/dockerfile/grpc_python/Dockerfile
index 901375c6bfdee9d0b206d4980196b1b7e784e0cc..2e72752cdd78e7769c9f903acbe350f3e53041bd 100644
--- a/tools/dockerfile/grpc_python/Dockerfile
+++ b/tools/dockerfile/grpc_python/Dockerfile
@@ -1,3 +1,32 @@
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+#     * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+#     * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
 # Dockerfile for GRPC Python
 FROM grpc/python_base
 
diff --git a/tools/dockerfile/grpc_python_base/Dockerfile b/tools/dockerfile/grpc_python_base/Dockerfile
index df5db07821f50d9f5a6cdcc5a30a31af27cbf679..18dd40a05a3fbbc08f6bcfb7e9047ded0ad94c4d 100644
--- a/tools/dockerfile/grpc_python_base/Dockerfile
+++ b/tools/dockerfile/grpc_python_base/Dockerfile
@@ -1,3 +1,32 @@
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+#     * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+#     * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
 # Base Dockerfile for GRPC Python.
 #
 # Includes Python environment and installation dependencies.
diff --git a/tools/dockerfile/grpc_ruby/Dockerfile b/tools/dockerfile/grpc_ruby/Dockerfile
index fda55719d977af9903a8f0834eef07112e870db6..89656d17433dbddce432ffb19705c4cc0a0ba82b 100644
--- a/tools/dockerfile/grpc_ruby/Dockerfile
+++ b/tools/dockerfile/grpc_ruby/Dockerfile
@@ -1,3 +1,32 @@
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+#     * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+#     * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
 # Dockerfile for gRPC Ruby
 FROM grpc/ruby_base
 
diff --git a/tools/dockerfile/grpc_ruby_base/Dockerfile b/tools/dockerfile/grpc_ruby_base/Dockerfile
index 0d872069d70ed6e7ccf4363fe0c9147ca12fc177..f3c7289943d5285e59cd69be81b1f1bfb683e888 100644
--- a/tools/dockerfile/grpc_ruby_base/Dockerfile
+++ b/tools/dockerfile/grpc_ruby_base/Dockerfile
@@ -1,3 +1,32 @@
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+#     * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+#     * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
 # Base Dockerfile for gRPC Ruby.
 #
 # Includes Ruby installation dependencies, things that are unlikely to vary.
diff --git a/vsprojects/vs2013/Grpc.mak b/vsprojects/vs2013/Grpc.mak
index 4dc342d77e884fb4538af6c25319c31a8f12829b..9272d07cb93b9bd65c1b3d2e2ab45e0eef3364fe 100644
--- a/vsprojects/vs2013/Grpc.mak
+++ b/vsprojects/vs2013/Grpc.mak
@@ -1,3 +1,31 @@
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+#     * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+#     * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 # NMake file to build secondary gRPC targets on Windows.
 # Use grpc.sln to solution to build the gRPC libraries.
 
@@ -450,6 +478,14 @@ grpc_json_token_test: grpc_json_token_test.exe
 	echo Running grpc_json_token_test
 	$(OUT_DIR)\grpc_json_token_test.exe
 
+grpc_print_google_default_creds_token.exe: grpc_test_util
+	echo Building grpc_print_google_default_creds_token
+	$(CC) $(CFLAGS) /Fo:$(OUT_DIR)\ ..\..\test\core\security\print_google_default_creds_token.c 
+	$(LINK) $(LFLAGS) /OUT:"$(OUT_DIR)\grpc_print_google_default_creds_token.exe" Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib $(LIBS) $(OUT_DIR)\print_google_default_creds_token.obj 
+grpc_print_google_default_creds_token: grpc_print_google_default_creds_token.exe
+	echo Running grpc_print_google_default_creds_token
+	$(OUT_DIR)\grpc_print_google_default_creds_token.exe
+
 grpc_stream_op_test.exe: grpc_test_util
 	echo Building grpc_stream_op_test
 	$(CC) $(CFLAGS) /Fo:$(OUT_DIR)\ ..\..\test\core\transport\stream_op_test.c 
diff --git a/vsprojects/vs2013/grpc.vcxproj b/vsprojects/vs2013/grpc.vcxproj
index 89c0de333c9ecc526b79dada47cd96acd1545032..48f975f99bbaf9e3e49045a84013361dee51e079 100644
--- a/vsprojects/vs2013/grpc.vcxproj
+++ b/vsprojects/vs2013/grpc.vcxproj
@@ -201,8 +201,14 @@
     </ClCompile>
     <ClCompile Include="..\..\src\core\security\credentials.c">
     </ClCompile>
+    <ClCompile Include="..\..\src\core\security\credentials_posix.c">
+    </ClCompile>
+    <ClCompile Include="..\..\src\core\security\credentials_win32.c">
+    </ClCompile>
     <ClCompile Include="..\..\src\core\security\factories.c">
     </ClCompile>
+    <ClCompile Include="..\..\src\core\security\google_default_credentials.c">
+    </ClCompile>
     <ClCompile Include="..\..\src\core\security\json_token.c">
     </ClCompile>
     <ClCompile Include="..\..\src\core\security\secure_endpoint.c">
diff --git a/vsprojects/vs2013/grpc.vcxproj.filters b/vsprojects/vs2013/grpc.vcxproj.filters
index a2d9f30eda750a0a65c5f083167c705dfe6f92d5..867e54516c5b89ba83eb9d57b0c12756971ef6a4 100644
--- a/vsprojects/vs2013/grpc.vcxproj.filters
+++ b/vsprojects/vs2013/grpc.vcxproj.filters
@@ -22,9 +22,18 @@
     <ClCompile Include="..\..\src\core\security\credentials.c">
       <Filter>src\core\security</Filter>
     </ClCompile>
+    <ClCompile Include="..\..\src\core\security\credentials_posix.c">
+      <Filter>src\core\security</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\src\core\security\credentials_win32.c">
+      <Filter>src\core\security</Filter>
+    </ClCompile>
     <ClCompile Include="..\..\src\core\security\factories.c">
       <Filter>src\core\security</Filter>
     </ClCompile>
+    <ClCompile Include="..\..\src\core\security\google_default_credentials.c">
+      <Filter>src\core\security</Filter>
+    </ClCompile>
     <ClCompile Include="..\..\src\core\security\json_token.c">
       <Filter>src\core\security</Filter>
     </ClCompile>
diff --git a/vsprojects/vs2013/grpc_shared.vcxproj b/vsprojects/vs2013/grpc_shared.vcxproj
index 81a280d912a2c274bdae07f29b58c0ce362252a0..4b2f1e725e2bdbc8058d5caa0b0e055f7782d244 100644
--- a/vsprojects/vs2013/grpc_shared.vcxproj
+++ b/vsprojects/vs2013/grpc_shared.vcxproj
@@ -205,8 +205,14 @@
     </ClCompile>
     <ClCompile Include="..\..\src\core\security\credentials.c">
     </ClCompile>
+    <ClCompile Include="..\..\src\core\security\credentials_posix.c">
+    </ClCompile>
+    <ClCompile Include="..\..\src\core\security\credentials_win32.c">
+    </ClCompile>
     <ClCompile Include="..\..\src\core\security\factories.c">
     </ClCompile>
+    <ClCompile Include="..\..\src\core\security\google_default_credentials.c">
+    </ClCompile>
     <ClCompile Include="..\..\src\core\security\json_token.c">
     </ClCompile>
     <ClCompile Include="..\..\src\core\security\secure_endpoint.c">
diff --git a/vsprojects/vs2013/grpc_shared.vcxproj.filters b/vsprojects/vs2013/grpc_shared.vcxproj.filters
index a2d9f30eda750a0a65c5f083167c705dfe6f92d5..867e54516c5b89ba83eb9d57b0c12756971ef6a4 100644
--- a/vsprojects/vs2013/grpc_shared.vcxproj.filters
+++ b/vsprojects/vs2013/grpc_shared.vcxproj.filters
@@ -22,9 +22,18 @@
     <ClCompile Include="..\..\src\core\security\credentials.c">
       <Filter>src\core\security</Filter>
     </ClCompile>
+    <ClCompile Include="..\..\src\core\security\credentials_posix.c">
+      <Filter>src\core\security</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\src\core\security\credentials_win32.c">
+      <Filter>src\core\security</Filter>
+    </ClCompile>
     <ClCompile Include="..\..\src\core\security\factories.c">
       <Filter>src\core\security</Filter>
     </ClCompile>
+    <ClCompile Include="..\..\src\core\security\google_default_credentials.c">
+      <Filter>src\core\security</Filter>
+    </ClCompile>
     <ClCompile Include="..\..\src\core\security\json_token.c">
       <Filter>src\core\security</Filter>
     </ClCompile>