diff --git a/.travis.yml b/.travis.yml
index 7d8634506c344d23c8c64a6a3e0e7f4dcc64477d..f1839ac174ae552179a3bf3cc20f992de56c1c1f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -2,13 +2,19 @@ language: cpp
 before_install:
   - sudo add-apt-repository ppa:yjwong/gflags -y
   - sudo add-apt-repository ppa:h-rayflood/llvm -y
+  - sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
+  - echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list
+  - echo "deb http://download.mono-project.com/repo/debian wheezy-libtiff-compat main" | sudo tee -a /etc/apt/sources.list.d/mono-xamarin.list
   - sudo apt-get update -qq
   - sudo apt-get install -qq libgtest-dev libgflags-dev python-virtualenv clang-3.5
   - sudo pip install cpp-coveralls mako simplejson
+  - sudo apt-get install -qq mono-devel nunit
+  - wget www.nuget.org/NuGet.exe -O nuget.exe
 env:
   global:
     - RUBY_VERSION=2.1
     - COVERALLS_PARALLEL=true
+    - NUGET="mono nuget.exe"
   matrix:
     - CONFIG=opt TEST=sanity
     - CONFIG=dbg TEST=c
@@ -18,6 +24,7 @@ env:
     - CONFIG=opt TEST=node
     - CONFIG=opt TEST=ruby
     - CONFIG=opt TEST=python
+    - CONFIG=opt TEST=csharp
     - CONFIG=gcov TEST=c
     - CONFIG=gcov TEST=c++
     - USE_GCC=4.4 CONFIG=opt TEST=build
diff --git a/BUILD b/BUILD
index 6018c1eeef1ebd1703a7babdff5c45b38c613a3f..e862898eaa95c61f31e234c675f2a9ede09979f6 100644
--- a/BUILD
+++ b/BUILD
@@ -149,7 +149,6 @@ cc_library(
     "src/core/channel/http_client_filter.h",
     "src/core/channel/http_filter.h",
     "src/core/channel/http_server_filter.h",
-    "src/core/channel/metadata_buffer.h",
     "src/core/channel/noop_filter.h",
     "src/core/compression/algorithm.h",
     "src/core/compression/message_compress.h",
@@ -259,7 +258,6 @@ cc_library(
     "src/core/channel/http_client_filter.c",
     "src/core/channel/http_filter.c",
     "src/core/channel/http_server_filter.c",
-    "src/core/channel/metadata_buffer.c",
     "src/core/channel/noop_filter.c",
     "src/core/compression/algorithm.c",
     "src/core/compression/message_compress.c",
@@ -379,7 +377,6 @@ cc_library(
     "src/core/channel/http_client_filter.h",
     "src/core/channel/http_filter.h",
     "src/core/channel/http_server_filter.h",
-    "src/core/channel/metadata_buffer.h",
     "src/core/channel/noop_filter.h",
     "src/core/compression/algorithm.h",
     "src/core/compression/message_compress.h",
@@ -470,7 +467,6 @@ cc_library(
     "src/core/channel/http_client_filter.c",
     "src/core/channel/http_filter.c",
     "src/core/channel/http_server_filter.c",
-    "src/core/channel/metadata_buffer.c",
     "src/core/channel/noop_filter.c",
     "src/core/compression/algorithm.c",
     "src/core/compression/message_compress.c",
@@ -583,7 +579,6 @@ cc_library(
     "src/cpp/client/channel.h",
     "src/cpp/proto/proto_utils.h",
     "src/cpp/server/thread_pool.h",
-    "src/cpp/util/time.h",
     "src/cpp/client/secure_credentials.cc",
     "src/cpp/server/secure_server_credentials.cc",
     "src/cpp/client/channel.cc",
@@ -625,6 +620,7 @@ cc_library(
     "include/grpc++/generic_stub.h",
     "include/grpc++/impl/call.h",
     "include/grpc++/impl/client_unary_call.h",
+    "include/grpc++/impl/grpc_library.h",
     "include/grpc++/impl/internal_stub.h",
     "include/grpc++/impl/rpc_method.h",
     "include/grpc++/impl/rpc_service_method.h",
@@ -644,6 +640,7 @@ cc_library(
     "include/grpc++/status_code_enum.h",
     "include/grpc++/stream.h",
     "include/grpc++/thread_pool_interface.h",
+    "include/grpc++/time.h",
   ],
   includes = [
     "include",
@@ -663,7 +660,6 @@ cc_library(
     "src/cpp/client/channel.h",
     "src/cpp/proto/proto_utils.h",
     "src/cpp/server/thread_pool.h",
-    "src/cpp/util/time.h",
     "src/cpp/client/channel.cc",
     "src/cpp/client/channel_arguments.cc",
     "src/cpp/client/client_context.cc",
@@ -703,6 +699,7 @@ cc_library(
     "include/grpc++/generic_stub.h",
     "include/grpc++/impl/call.h",
     "include/grpc++/impl/client_unary_call.h",
+    "include/grpc++/impl/grpc_library.h",
     "include/grpc++/impl/internal_stub.h",
     "include/grpc++/impl/rpc_method.h",
     "include/grpc++/impl/rpc_service_method.h",
@@ -722,6 +719,7 @@ cc_library(
     "include/grpc++/status_code_enum.h",
     "include/grpc++/stream.h",
     "include/grpc++/thread_pool_interface.h",
+    "include/grpc++/time.h",
   ],
   includes = [
     "include",
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index b58c3568fcd660ab6b28c029467003e17918fdf0..9423c46547a876bd4df47710d515bb6f9bb89528 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -51,3 +51,4 @@ re-generate the project files using the following command:
 
 `./tools/buildgen/generate_projects.sh`
 
+You'll find more information about this in the [templates](templates) folder.
diff --git a/Makefile b/Makefile
index 675f9c10f601c4249806b322ac2e373e36626748..2def6e2413be6194259904ab671b1602aed5bada 100644
--- a/Makefile
+++ b/Makefile
@@ -141,9 +141,9 @@ CC_asan = clang
 CXX_asan = clang++
 LD_asan = clang
 LDXX_asan = clang++
-CPPFLAGS_asan = -O1 -fsanitize=address -fno-omit-frame-pointer
+CPPFLAGS_asan = -O0 -fsanitize=address -fno-omit-frame-pointer
 LDFLAGS_asan = -fsanitize=address
-DEFINES_asan = NDEBUG GRPC_TEST_SLOWDOWN_BUILD_FACTOR=5
+DEFINES_asan = GRPC_TEST_SLOWDOWN_BUILD_FACTOR=5
 
 VALID_CONFIG_msan = 1
 REQUIRE_CUSTOM_LIBRARIES_msan = 1
@@ -151,7 +151,7 @@ CC_msan = clang
 CXX_msan = clang++-libc++
 LD_msan = clang
 LDXX_msan = clang++-libc++
-CPPFLAGS_msan = -O1 -fsanitize=memory -fsanitize-memory-track-origins -fno-omit-frame-pointer -DGTEST_HAS_TR1_TUPLE=0 -DGTEST_USE_OWN_TR1_TUPLE=1
+CPPFLAGS_msan = -O0 -fsanitize=memory -fsanitize-memory-track-origins -fno-omit-frame-pointer -DGTEST_HAS_TR1_TUPLE=0 -DGTEST_USE_OWN_TR1_TUPLE=1
 OPENSSL_CFLAGS_msan = -DPURIFY
 LDFLAGS_msan = -fsanitize=memory -DGTEST_HAS_TR1_TUPLE=0 -DGTEST_USE_OWN_TR1_TUPLE=1
 DEFINES_msan = NDEBUG GRPC_TEST_SLOWDOWN_BUILD_FACTOR=20
@@ -348,8 +348,8 @@ OPENSSL_ALPN_CHECK_CMD = $(CC) $(CFLAGS) $(CPPFLAGS) -o $(TMPOUT) test/build/ope
 ZLIB_CHECK_CMD = $(CC) $(CFLAGS) $(CPPFLAGS) -o $(TMPOUT) test/build/zlib.c -lz $(LDFLAGS)
 PERFTOOLS_CHECK_CMD = $(CC) $(CFLAGS) $(CPPFLAGS) -o $(TMPOUT) test/build/perftools.c -lprofiler $(LDFLAGS)
 PROTOBUF_CHECK_CMD = $(CXX) $(CXXFLAGS) $(CPPFLAGS) -o $(TMPOUT) test/build/protobuf.cc -lprotobuf $(LDFLAGS)
-PROTOC_CMD = which protoc > /dev/null
-PROTOC_CHECK_CMD = protoc --version | grep -q libprotoc.3
+PROTOC_CHECK_CMD = which protoc > /dev/null
+PROTOC_CHECK_VERSION_CMD = protoc --version | grep -q libprotoc.3
 
 ifeq ($(OPENSSL_REQUIRES_DL),true)
 OPENSSL_ALPN_CHECK_CMD += -ldl
@@ -375,9 +375,9 @@ HAS_SYSTEM_ZLIB = false
 HAS_SYSTEM_PROTOBUF = false
 endif
 
-HAS_PROTOC = $(shell $(PROTOC_CMD) 2> /dev/null && echo true || echo false)
+HAS_PROTOC = $(shell $(PROTOC_CHECK_CMD) 2> /dev/null && echo true || echo false)
 ifeq ($(HAS_PROTOC),true)
-HAS_VALID_PROTOC = $(shell $(PROTOC_CHECK_CMD) 2> /dev/null && echo true || echo false)
+HAS_VALID_PROTOC = $(shell $(PROTOC_CHECK_VERSION_CMD) 2> /dev/null && echo true || echo false)
 else
 HAS_VALID_PROTOC = false
 endif
@@ -570,7 +570,6 @@ census_window_stats_test: $(BINDIR)/$(CONFIG)/census_window_stats_test
 chttp2_status_conversion_test: $(BINDIR)/$(CONFIG)/chttp2_status_conversion_test
 chttp2_stream_encoder_test: $(BINDIR)/$(CONFIG)/chttp2_stream_encoder_test
 chttp2_stream_map_test: $(BINDIR)/$(CONFIG)/chttp2_stream_map_test
-chttp2_transport_end2end_test: $(BINDIR)/$(CONFIG)/chttp2_transport_end2end_test
 dualstack_socket_test: $(BINDIR)/$(CONFIG)/dualstack_socket_test
 echo_client: $(BINDIR)/$(CONFIG)/echo_client
 echo_server: $(BINDIR)/$(CONFIG)/echo_server
@@ -618,7 +617,6 @@ json_test: $(BINDIR)/$(CONFIG)/json_test
 lame_client_test: $(BINDIR)/$(CONFIG)/lame_client_test
 low_level_ping_pong_benchmark: $(BINDIR)/$(CONFIG)/low_level_ping_pong_benchmark
 message_compress_test: $(BINDIR)/$(CONFIG)/message_compress_test
-metadata_buffer_test: $(BINDIR)/$(CONFIG)/metadata_buffer_test
 multi_init_test: $(BINDIR)/$(CONFIG)/multi_init_test
 murmur_hash_test: $(BINDIR)/$(CONFIG)/murmur_hash_test
 no_server_test: $(BINDIR)/$(CONFIG)/no_server_test
@@ -1214,7 +1212,7 @@ run_dep_checks:
 	$(ZLIB_CHECK_CMD) || true
 	$(PERFTOOLS_CHECK_CMD) || true
 	$(PROTOBUF_CHECK_CMD) || true
-	$(PROTOC_CHECK_CMD) || true
+	$(PROTOC_CHECK_VERSION_CMD) || true
 
 $(LIBDIR)/$(CONFIG)/zlib/libz.a:
 	$(E) "[MAKE]    Building zlib"
@@ -1294,13 +1292,13 @@ plugins: $(PROTOC_PLUGINS)
 
 privatelibs: privatelibs_c privatelibs_cxx
 
-privatelibs_c:  $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fake_security.a $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_simple_ssl_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_simple_ssl_with_oauth2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_bad_hostname.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_empty_batch.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_registered_call.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_trailing_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_certs.a
+privatelibs_c:  $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fake_security.a $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_simple_ssl_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_simple_ssl_with_oauth2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_bad_hostname.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_empty_batch.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_registered_call.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_trailing_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read_legacy.a $(LIBDIR)/$(CONFIG)/libend2end_certs.a
 
 privatelibs_cxx:  $(LIBDIR)/$(CONFIG)/libgrpc++_test_config.a $(LIBDIR)/$(CONFIG)/libgrpc++_test_util.a $(LIBDIR)/$(CONFIG)/libinterop_client_helper.a $(LIBDIR)/$(CONFIG)/libinterop_client_main.a $(LIBDIR)/$(CONFIG)/libinterop_server_helper.a $(LIBDIR)/$(CONFIG)/libinterop_server_main.a $(LIBDIR)/$(CONFIG)/libqps.a
 
 buildtests: buildtests_c buildtests_cxx
 
-buildtests_c: privatelibs_c $(BINDIR)/$(CONFIG)/alarm_heap_test $(BINDIR)/$(CONFIG)/alarm_list_test $(BINDIR)/$(CONFIG)/alarm_test $(BINDIR)/$(CONFIG)/alpn_test $(BINDIR)/$(CONFIG)/bin_encoder_test $(BINDIR)/$(CONFIG)/census_hash_table_test $(BINDIR)/$(CONFIG)/census_statistics_multiple_writers_circular_buffer_test $(BINDIR)/$(CONFIG)/census_statistics_multiple_writers_test $(BINDIR)/$(CONFIG)/census_statistics_performance_test $(BINDIR)/$(CONFIG)/census_statistics_quick_test $(BINDIR)/$(CONFIG)/census_statistics_small_log_test $(BINDIR)/$(CONFIG)/census_stub_test $(BINDIR)/$(CONFIG)/census_window_stats_test $(BINDIR)/$(CONFIG)/chttp2_status_conversion_test $(BINDIR)/$(CONFIG)/chttp2_stream_encoder_test $(BINDIR)/$(CONFIG)/chttp2_stream_map_test $(BINDIR)/$(CONFIG)/chttp2_transport_end2end_test $(BINDIR)/$(CONFIG)/dualstack_socket_test $(BINDIR)/$(CONFIG)/echo_client $(BINDIR)/$(CONFIG)/echo_server $(BINDIR)/$(CONFIG)/echo_test $(BINDIR)/$(CONFIG)/fd_posix_test $(BINDIR)/$(CONFIG)/fling_client $(BINDIR)/$(CONFIG)/fling_server $(BINDIR)/$(CONFIG)/fling_stream_test $(BINDIR)/$(CONFIG)/fling_test $(BINDIR)/$(CONFIG)/gpr_cancellable_test $(BINDIR)/$(CONFIG)/gpr_cmdline_test $(BINDIR)/$(CONFIG)/gpr_env_test $(BINDIR)/$(CONFIG)/gpr_file_test $(BINDIR)/$(CONFIG)/gpr_histogram_test $(BINDIR)/$(CONFIG)/gpr_host_port_test $(BINDIR)/$(CONFIG)/gpr_log_test $(BINDIR)/$(CONFIG)/gpr_slice_buffer_test $(BINDIR)/$(CONFIG)/gpr_slice_test $(BINDIR)/$(CONFIG)/gpr_string_test $(BINDIR)/$(CONFIG)/gpr_sync_test $(BINDIR)/$(CONFIG)/gpr_thd_test $(BINDIR)/$(CONFIG)/gpr_time_test $(BINDIR)/$(CONFIG)/gpr_tls_test $(BINDIR)/$(CONFIG)/gpr_useful_test $(BINDIR)/$(CONFIG)/grpc_base64_test $(BINDIR)/$(CONFIG)/grpc_byte_buffer_reader_test $(BINDIR)/$(CONFIG)/grpc_channel_stack_test $(BINDIR)/$(CONFIG)/grpc_completion_queue_test $(BINDIR)/$(CONFIG)/grpc_credentials_test $(BINDIR)/$(CONFIG)/grpc_json_token_test $(BINDIR)/$(CONFIG)/grpc_stream_op_test $(BINDIR)/$(CONFIG)/hpack_parser_test $(BINDIR)/$(CONFIG)/hpack_table_test $(BINDIR)/$(CONFIG)/httpcli_format_request_test $(BINDIR)/$(CONFIG)/httpcli_parser_test $(BINDIR)/$(CONFIG)/httpcli_test $(BINDIR)/$(CONFIG)/json_rewrite $(BINDIR)/$(CONFIG)/json_rewrite_test $(BINDIR)/$(CONFIG)/json_test $(BINDIR)/$(CONFIG)/lame_client_test $(BINDIR)/$(CONFIG)/message_compress_test $(BINDIR)/$(CONFIG)/metadata_buffer_test $(BINDIR)/$(CONFIG)/multi_init_test $(BINDIR)/$(CONFIG)/murmur_hash_test $(BINDIR)/$(CONFIG)/no_server_test $(BINDIR)/$(CONFIG)/poll_kick_posix_test $(BINDIR)/$(CONFIG)/resolve_address_test $(BINDIR)/$(CONFIG)/secure_endpoint_test $(BINDIR)/$(CONFIG)/sockaddr_utils_test $(BINDIR)/$(CONFIG)/tcp_client_posix_test $(BINDIR)/$(CONFIG)/tcp_posix_test $(BINDIR)/$(CONFIG)/tcp_server_posix_test $(BINDIR)/$(CONFIG)/time_averaged_stats_test $(BINDIR)/$(CONFIG)/time_test $(BINDIR)/$(CONFIG)/timeout_encoding_test $(BINDIR)/$(CONFIG)/timers_test $(BINDIR)/$(CONFIG)/transport_metadata_test $(BINDIR)/$(CONFIG)/transport_security_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_bad_hostname_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_after_accept_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_after_accept_and_writes_closed_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_after_accept_and_writes_closed_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_after_accept_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_after_invoke_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_after_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_before_invoke_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_before_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_in_a_vacuum_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_in_a_vacuum_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_census_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_census_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_disappearing_server_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_disappearing_server_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_early_server_shutdown_finishes_inflight_calls_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_early_server_shutdown_finishes_inflight_calls_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_early_server_shutdown_finishes_tags_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_early_server_shutdown_finishes_tags_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_empty_batch_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_graceful_server_shutdown_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_graceful_server_shutdown_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_invoke_large_request_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_invoke_large_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_max_concurrent_streams_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_max_concurrent_streams_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_no_op_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_no_op_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_ping_pong_streaming_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_ping_pong_streaming_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_registered_call_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_response_with_binary_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_response_with_binary_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_response_with_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_response_with_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_response_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_response_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_response_with_trailing_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_with_large_metadata_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_with_large_metadata_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_simple_delayed_request_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_simple_delayed_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_thread_stress_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_thread_stress_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_writes_done_hangs_with_pending_read_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_writes_done_hangs_with_pending_read_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_bad_hostname_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_and_writes_closed_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_and_writes_closed_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_invoke_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_before_invoke_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_before_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_in_a_vacuum_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_in_a_vacuum_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_census_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_census_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_disappearing_server_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_disappearing_server_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_tags_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_tags_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_empty_batch_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_graceful_server_shutdown_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_graceful_server_shutdown_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_invoke_large_request_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_invoke_large_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_max_concurrent_streams_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_max_concurrent_streams_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_no_op_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_no_op_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_ping_pong_streaming_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_ping_pong_streaming_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_registered_call_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_binary_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_binary_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_trailing_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_large_metadata_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_large_metadata_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_delayed_request_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_delayed_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_thread_stress_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_thread_stress_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_writes_done_hangs_with_pending_read_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_writes_done_hangs_with_pending_read_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_bad_hostname_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_invoke_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_before_invoke_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_before_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_in_a_vacuum_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_in_a_vacuum_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_census_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_census_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_disappearing_server_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_disappearing_server_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_tags_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_tags_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_empty_batch_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_graceful_server_shutdown_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_graceful_server_shutdown_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_invoke_large_request_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_invoke_large_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_max_concurrent_streams_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_max_concurrent_streams_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_no_op_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_no_op_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_ping_pong_streaming_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_ping_pong_streaming_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_registered_call_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_trailing_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_large_metadata_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_large_metadata_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_delayed_request_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_delayed_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_thread_stress_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_thread_stress_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_writes_done_hangs_with_pending_read_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_writes_done_hangs_with_pending_read_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_bad_hostname_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_after_accept_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_after_accept_and_writes_closed_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_after_accept_and_writes_closed_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_after_accept_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_after_invoke_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_after_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_before_invoke_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_before_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_in_a_vacuum_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_in_a_vacuum_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_census_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_census_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_disappearing_server_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_disappearing_server_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_early_server_shutdown_finishes_inflight_calls_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_early_server_shutdown_finishes_inflight_calls_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_early_server_shutdown_finishes_tags_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_early_server_shutdown_finishes_tags_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_empty_batch_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_graceful_server_shutdown_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_graceful_server_shutdown_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_invoke_large_request_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_invoke_large_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_max_concurrent_streams_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_max_concurrent_streams_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_no_op_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_no_op_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_ping_pong_streaming_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_ping_pong_streaming_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_registered_call_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_response_with_binary_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_response_with_binary_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_response_with_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_response_with_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_response_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_response_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_response_with_trailing_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_with_large_metadata_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_with_large_metadata_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_simple_delayed_request_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_simple_delayed_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_thread_stress_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_thread_stress_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_writes_done_hangs_with_pending_read_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_writes_done_hangs_with_pending_read_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_bad_hostname_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_after_accept_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_after_accept_and_writes_closed_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_after_accept_and_writes_closed_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_after_accept_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_after_invoke_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_after_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_before_invoke_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_before_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_in_a_vacuum_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_in_a_vacuum_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_census_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_census_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_disappearing_server_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_disappearing_server_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_early_server_shutdown_finishes_inflight_calls_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_early_server_shutdown_finishes_inflight_calls_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_early_server_shutdown_finishes_tags_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_early_server_shutdown_finishes_tags_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_empty_batch_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_graceful_server_shutdown_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_graceful_server_shutdown_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_invoke_large_request_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_invoke_large_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_max_concurrent_streams_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_max_concurrent_streams_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_no_op_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_no_op_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_ping_pong_streaming_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_ping_pong_streaming_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_registered_call_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_response_with_binary_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_response_with_binary_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_response_with_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_response_with_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_response_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_response_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_response_with_trailing_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_with_large_metadata_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_with_large_metadata_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_simple_delayed_request_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_simple_delayed_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_thread_stress_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_thread_stress_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_writes_done_hangs_with_pending_read_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_writes_done_hangs_with_pending_read_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_bad_hostname_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_and_writes_closed_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_and_writes_closed_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_invoke_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_before_invoke_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_before_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_in_a_vacuum_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_in_a_vacuum_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_census_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_census_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_disappearing_server_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_disappearing_server_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_tags_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_tags_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_empty_batch_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_graceful_server_shutdown_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_graceful_server_shutdown_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_invoke_large_request_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_invoke_large_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_max_concurrent_streams_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_max_concurrent_streams_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_no_op_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_no_op_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_ping_pong_streaming_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_ping_pong_streaming_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_registered_call_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_binary_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_binary_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_trailing_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_large_metadata_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_large_metadata_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_delayed_request_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_delayed_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_thread_stress_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_thread_stress_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_writes_done_hangs_with_pending_read_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_writes_done_hangs_with_pending_read_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_bad_hostname_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_census_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_census_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_disappearing_server_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_disappearing_server_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_empty_batch_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_no_op_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_no_op_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_registered_call_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_trailing_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_thread_stress_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_thread_stress_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_bad_hostname_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_and_writes_closed_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_and_writes_closed_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_invoke_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_invoke_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_before_invoke_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_before_invoke_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_in_a_vacuum_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_in_a_vacuum_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_census_simple_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_census_simple_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_disappearing_server_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_disappearing_server_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_tags_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_tags_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_empty_batch_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_graceful_server_shutdown_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_graceful_server_shutdown_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_invoke_large_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_invoke_large_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_max_concurrent_streams_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_max_concurrent_streams_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_no_op_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_no_op_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_ping_pong_streaming_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_ping_pong_streaming_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_registered_call_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_binary_metadata_and_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_binary_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_metadata_and_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_large_metadata_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_large_metadata_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_delayed_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_delayed_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_thread_stress_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_thread_stress_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_writes_done_hangs_with_pending_read_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_writes_done_hangs_with_pending_read_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_bad_hostname_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_invoke_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_invoke_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_before_invoke_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_before_invoke_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_in_a_vacuum_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_in_a_vacuum_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_census_simple_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_census_simple_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_disappearing_server_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_disappearing_server_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_tags_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_tags_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_empty_batch_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_graceful_server_shutdown_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_graceful_server_shutdown_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_invoke_large_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_invoke_large_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_max_concurrent_streams_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_max_concurrent_streams_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_no_op_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_no_op_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_ping_pong_streaming_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_ping_pong_streaming_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_registered_call_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_metadata_and_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_large_metadata_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_large_metadata_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_delayed_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_delayed_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_thread_stress_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_thread_stress_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_writes_done_hangs_with_pending_read_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_writes_done_hangs_with_pending_read_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_bad_hostname_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_and_writes_closed_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_and_writes_closed_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_invoke_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_invoke_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_before_invoke_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_before_invoke_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_in_a_vacuum_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_in_a_vacuum_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_census_simple_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_census_simple_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_disappearing_server_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_disappearing_server_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_tags_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_tags_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_empty_batch_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_graceful_server_shutdown_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_graceful_server_shutdown_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_invoke_large_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_invoke_large_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_max_concurrent_streams_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_max_concurrent_streams_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_no_op_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_no_op_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_ping_pong_streaming_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_ping_pong_streaming_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_registered_call_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_binary_metadata_and_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_binary_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_metadata_and_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_large_metadata_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_large_metadata_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_delayed_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_delayed_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_thread_stress_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_thread_stress_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_writes_done_hangs_with_pending_read_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_writes_done_hangs_with_pending_read_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_bad_hostname_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_census_simple_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_census_simple_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_disappearing_server_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_disappearing_server_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_empty_batch_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_no_op_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_no_op_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_registered_call_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_thread_stress_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_thread_stress_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_legacy_unsecure_test
+buildtests_c: privatelibs_c $(BINDIR)/$(CONFIG)/alarm_heap_test $(BINDIR)/$(CONFIG)/alarm_list_test $(BINDIR)/$(CONFIG)/alarm_test $(BINDIR)/$(CONFIG)/alpn_test $(BINDIR)/$(CONFIG)/bin_encoder_test $(BINDIR)/$(CONFIG)/census_hash_table_test $(BINDIR)/$(CONFIG)/census_statistics_multiple_writers_circular_buffer_test $(BINDIR)/$(CONFIG)/census_statistics_multiple_writers_test $(BINDIR)/$(CONFIG)/census_statistics_performance_test $(BINDIR)/$(CONFIG)/census_statistics_quick_test $(BINDIR)/$(CONFIG)/census_statistics_small_log_test $(BINDIR)/$(CONFIG)/census_stub_test $(BINDIR)/$(CONFIG)/census_window_stats_test $(BINDIR)/$(CONFIG)/chttp2_status_conversion_test $(BINDIR)/$(CONFIG)/chttp2_stream_encoder_test $(BINDIR)/$(CONFIG)/chttp2_stream_map_test $(BINDIR)/$(CONFIG)/dualstack_socket_test $(BINDIR)/$(CONFIG)/echo_client $(BINDIR)/$(CONFIG)/echo_server $(BINDIR)/$(CONFIG)/echo_test $(BINDIR)/$(CONFIG)/fd_posix_test $(BINDIR)/$(CONFIG)/fling_client $(BINDIR)/$(CONFIG)/fling_server $(BINDIR)/$(CONFIG)/fling_stream_test $(BINDIR)/$(CONFIG)/fling_test $(BINDIR)/$(CONFIG)/gpr_cancellable_test $(BINDIR)/$(CONFIG)/gpr_cmdline_test $(BINDIR)/$(CONFIG)/gpr_env_test $(BINDIR)/$(CONFIG)/gpr_file_test $(BINDIR)/$(CONFIG)/gpr_histogram_test $(BINDIR)/$(CONFIG)/gpr_host_port_test $(BINDIR)/$(CONFIG)/gpr_log_test $(BINDIR)/$(CONFIG)/gpr_slice_buffer_test $(BINDIR)/$(CONFIG)/gpr_slice_test $(BINDIR)/$(CONFIG)/gpr_string_test $(BINDIR)/$(CONFIG)/gpr_sync_test $(BINDIR)/$(CONFIG)/gpr_thd_test $(BINDIR)/$(CONFIG)/gpr_time_test $(BINDIR)/$(CONFIG)/gpr_tls_test $(BINDIR)/$(CONFIG)/gpr_useful_test $(BINDIR)/$(CONFIG)/grpc_base64_test $(BINDIR)/$(CONFIG)/grpc_byte_buffer_reader_test $(BINDIR)/$(CONFIG)/grpc_channel_stack_test $(BINDIR)/$(CONFIG)/grpc_completion_queue_test $(BINDIR)/$(CONFIG)/grpc_credentials_test $(BINDIR)/$(CONFIG)/grpc_json_token_test $(BINDIR)/$(CONFIG)/grpc_stream_op_test $(BINDIR)/$(CONFIG)/hpack_parser_test $(BINDIR)/$(CONFIG)/hpack_table_test $(BINDIR)/$(CONFIG)/httpcli_format_request_test $(BINDIR)/$(CONFIG)/httpcli_parser_test $(BINDIR)/$(CONFIG)/httpcli_test $(BINDIR)/$(CONFIG)/json_rewrite $(BINDIR)/$(CONFIG)/json_rewrite_test $(BINDIR)/$(CONFIG)/json_test $(BINDIR)/$(CONFIG)/lame_client_test $(BINDIR)/$(CONFIG)/message_compress_test $(BINDIR)/$(CONFIG)/multi_init_test $(BINDIR)/$(CONFIG)/murmur_hash_test $(BINDIR)/$(CONFIG)/no_server_test $(BINDIR)/$(CONFIG)/poll_kick_posix_test $(BINDIR)/$(CONFIG)/resolve_address_test $(BINDIR)/$(CONFIG)/secure_endpoint_test $(BINDIR)/$(CONFIG)/sockaddr_utils_test $(BINDIR)/$(CONFIG)/tcp_client_posix_test $(BINDIR)/$(CONFIG)/tcp_posix_test $(BINDIR)/$(CONFIG)/tcp_server_posix_test $(BINDIR)/$(CONFIG)/time_averaged_stats_test $(BINDIR)/$(CONFIG)/time_test $(BINDIR)/$(CONFIG)/timeout_encoding_test $(BINDIR)/$(CONFIG)/timers_test $(BINDIR)/$(CONFIG)/transport_metadata_test $(BINDIR)/$(CONFIG)/transport_security_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_bad_hostname_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_after_accept_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_after_accept_and_writes_closed_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_after_accept_and_writes_closed_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_after_accept_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_after_invoke_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_after_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_before_invoke_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_before_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_in_a_vacuum_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_cancel_in_a_vacuum_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_census_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_census_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_disappearing_server_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_disappearing_server_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_early_server_shutdown_finishes_inflight_calls_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_early_server_shutdown_finishes_inflight_calls_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_early_server_shutdown_finishes_tags_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_early_server_shutdown_finishes_tags_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_empty_batch_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_graceful_server_shutdown_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_graceful_server_shutdown_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_invoke_large_request_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_invoke_large_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_max_concurrent_streams_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_max_concurrent_streams_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_no_op_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_no_op_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_ping_pong_streaming_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_ping_pong_streaming_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_registered_call_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_response_with_binary_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_response_with_binary_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_response_with_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_response_with_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_response_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_response_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_response_with_trailing_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_with_large_metadata_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_with_large_metadata_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_request_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_simple_delayed_request_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_simple_delayed_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_thread_stress_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_thread_stress_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_writes_done_hangs_with_pending_read_test $(BINDIR)/$(CONFIG)/chttp2_fake_security_writes_done_hangs_with_pending_read_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_bad_hostname_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_and_writes_closed_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_and_writes_closed_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_invoke_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_before_invoke_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_before_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_in_a_vacuum_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_in_a_vacuum_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_census_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_census_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_disappearing_server_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_disappearing_server_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_tags_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_tags_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_empty_batch_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_graceful_server_shutdown_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_graceful_server_shutdown_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_invoke_large_request_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_invoke_large_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_max_concurrent_streams_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_max_concurrent_streams_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_no_op_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_no_op_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_ping_pong_streaming_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_ping_pong_streaming_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_registered_call_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_binary_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_binary_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_trailing_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_large_metadata_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_large_metadata_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_delayed_request_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_delayed_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_thread_stress_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_thread_stress_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_writes_done_hangs_with_pending_read_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_writes_done_hangs_with_pending_read_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_bad_hostname_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_invoke_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_before_invoke_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_before_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_in_a_vacuum_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_in_a_vacuum_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_census_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_census_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_disappearing_server_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_disappearing_server_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_tags_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_tags_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_empty_batch_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_graceful_server_shutdown_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_graceful_server_shutdown_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_invoke_large_request_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_invoke_large_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_max_concurrent_streams_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_max_concurrent_streams_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_no_op_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_no_op_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_ping_pong_streaming_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_ping_pong_streaming_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_registered_call_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_trailing_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_large_metadata_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_large_metadata_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_delayed_request_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_delayed_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_thread_stress_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_thread_stress_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_writes_done_hangs_with_pending_read_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_writes_done_hangs_with_pending_read_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_bad_hostname_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_after_accept_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_after_accept_and_writes_closed_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_after_accept_and_writes_closed_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_after_accept_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_after_invoke_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_after_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_before_invoke_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_before_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_in_a_vacuum_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_cancel_in_a_vacuum_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_census_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_census_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_disappearing_server_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_disappearing_server_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_early_server_shutdown_finishes_inflight_calls_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_early_server_shutdown_finishes_inflight_calls_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_early_server_shutdown_finishes_tags_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_early_server_shutdown_finishes_tags_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_empty_batch_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_graceful_server_shutdown_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_graceful_server_shutdown_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_invoke_large_request_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_invoke_large_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_max_concurrent_streams_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_max_concurrent_streams_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_no_op_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_no_op_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_ping_pong_streaming_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_ping_pong_streaming_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_registered_call_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_response_with_binary_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_response_with_binary_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_response_with_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_response_with_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_response_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_response_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_response_with_trailing_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_with_large_metadata_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_with_large_metadata_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_request_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_simple_delayed_request_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_simple_delayed_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_thread_stress_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_thread_stress_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_writes_done_hangs_with_pending_read_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_fullstack_writes_done_hangs_with_pending_read_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_bad_hostname_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_after_accept_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_after_accept_and_writes_closed_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_after_accept_and_writes_closed_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_after_accept_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_after_invoke_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_after_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_before_invoke_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_before_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_in_a_vacuum_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_cancel_in_a_vacuum_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_census_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_census_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_disappearing_server_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_disappearing_server_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_early_server_shutdown_finishes_inflight_calls_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_early_server_shutdown_finishes_inflight_calls_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_early_server_shutdown_finishes_tags_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_early_server_shutdown_finishes_tags_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_empty_batch_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_graceful_server_shutdown_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_graceful_server_shutdown_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_invoke_large_request_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_invoke_large_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_max_concurrent_streams_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_max_concurrent_streams_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_no_op_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_no_op_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_ping_pong_streaming_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_ping_pong_streaming_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_registered_call_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_response_with_binary_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_response_with_binary_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_response_with_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_response_with_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_response_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_response_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_response_with_trailing_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_with_large_metadata_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_with_large_metadata_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_request_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_simple_delayed_request_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_simple_delayed_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_thread_stress_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_thread_stress_legacy_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_writes_done_hangs_with_pending_read_test $(BINDIR)/$(CONFIG)/chttp2_simple_ssl_with_oauth2_fullstack_writes_done_hangs_with_pending_read_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_bad_hostname_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_and_writes_closed_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_and_writes_closed_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_invoke_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_before_invoke_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_before_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_in_a_vacuum_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_in_a_vacuum_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_census_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_census_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_disappearing_server_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_disappearing_server_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_tags_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_tags_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_empty_batch_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_graceful_server_shutdown_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_graceful_server_shutdown_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_invoke_large_request_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_invoke_large_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_max_concurrent_streams_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_max_concurrent_streams_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_no_op_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_no_op_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_ping_pong_streaming_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_ping_pong_streaming_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_registered_call_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_binary_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_binary_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_trailing_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_large_metadata_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_large_metadata_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_delayed_request_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_delayed_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_thread_stress_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_thread_stress_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_writes_done_hangs_with_pending_read_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_writes_done_hangs_with_pending_read_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_bad_hostname_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_census_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_census_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_disappearing_server_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_disappearing_server_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_empty_batch_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_no_op_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_no_op_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_registered_call_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_trailing_metadata_and_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_payload_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_payload_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_request_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_request_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_thread_stress_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_thread_stress_legacy_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_legacy_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_bad_hostname_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_and_writes_closed_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_and_writes_closed_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_invoke_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_invoke_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_before_invoke_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_before_invoke_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_in_a_vacuum_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_in_a_vacuum_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_census_simple_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_census_simple_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_disappearing_server_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_disappearing_server_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_tags_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_tags_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_empty_batch_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_graceful_server_shutdown_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_graceful_server_shutdown_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_invoke_large_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_invoke_large_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_max_concurrent_streams_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_max_concurrent_streams_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_no_op_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_no_op_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_ping_pong_streaming_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_ping_pong_streaming_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_registered_call_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_binary_metadata_and_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_binary_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_metadata_and_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_large_metadata_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_large_metadata_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_delayed_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_delayed_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_thread_stress_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_thread_stress_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_writes_done_hangs_with_pending_read_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_writes_done_hangs_with_pending_read_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_bad_hostname_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_invoke_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_invoke_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_before_invoke_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_before_invoke_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_in_a_vacuum_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_in_a_vacuum_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_census_simple_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_census_simple_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_disappearing_server_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_disappearing_server_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_tags_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_tags_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_empty_batch_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_graceful_server_shutdown_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_graceful_server_shutdown_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_invoke_large_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_invoke_large_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_max_concurrent_streams_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_max_concurrent_streams_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_no_op_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_no_op_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_ping_pong_streaming_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_ping_pong_streaming_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_registered_call_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_metadata_and_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_large_metadata_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_large_metadata_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_delayed_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_delayed_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_thread_stress_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_thread_stress_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_writes_done_hangs_with_pending_read_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_writes_done_hangs_with_pending_read_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_bad_hostname_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_and_writes_closed_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_and_writes_closed_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_invoke_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_invoke_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_before_invoke_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_before_invoke_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_in_a_vacuum_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_in_a_vacuum_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_census_simple_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_census_simple_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_disappearing_server_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_disappearing_server_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_tags_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_tags_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_empty_batch_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_graceful_server_shutdown_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_graceful_server_shutdown_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_invoke_large_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_invoke_large_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_max_concurrent_streams_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_max_concurrent_streams_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_no_op_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_no_op_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_ping_pong_streaming_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_ping_pong_streaming_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_registered_call_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_binary_metadata_and_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_binary_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_metadata_and_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_large_metadata_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_large_metadata_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_delayed_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_delayed_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_thread_stress_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_thread_stress_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_writes_done_hangs_with_pending_read_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_writes_done_hangs_with_pending_read_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_bad_hostname_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_census_simple_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_census_simple_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_disappearing_server_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_disappearing_server_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_empty_batch_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_no_op_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_no_op_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_registered_call_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_payload_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_payload_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_request_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_request_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_thread_stress_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_thread_stress_legacy_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_unsecure_test $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_legacy_unsecure_test
 
 buildtests_cxx: privatelibs_cxx $(BINDIR)/$(CONFIG)/async_end2end_test $(BINDIR)/$(CONFIG)/channel_arguments_test $(BINDIR)/$(CONFIG)/cli_call_test $(BINDIR)/$(CONFIG)/credentials_test $(BINDIR)/$(CONFIG)/cxx_time_test $(BINDIR)/$(CONFIG)/end2end_test $(BINDIR)/$(CONFIG)/generic_end2end_test $(BINDIR)/$(CONFIG)/grpc_cli $(BINDIR)/$(CONFIG)/interop_client $(BINDIR)/$(CONFIG)/interop_server $(BINDIR)/$(CONFIG)/interop_test $(BINDIR)/$(CONFIG)/qps_driver $(BINDIR)/$(CONFIG)/qps_smoke_test $(BINDIR)/$(CONFIG)/qps_worker $(BINDIR)/$(CONFIG)/status_test $(BINDIR)/$(CONFIG)/thread_pool_test
 
@@ -1339,8 +1337,6 @@ test_c: buildtests_c
 	$(Q) $(BINDIR)/$(CONFIG)/chttp2_stream_encoder_test || ( echo test chttp2_stream_encoder_test failed ; exit 1 )
 	$(E) "[RUN]     Testing chttp2_stream_map_test"
 	$(Q) $(BINDIR)/$(CONFIG)/chttp2_stream_map_test || ( echo test chttp2_stream_map_test failed ; exit 1 )
-	$(E) "[RUN]     Testing chttp2_transport_end2end_test"
-	$(Q) $(BINDIR)/$(CONFIG)/chttp2_transport_end2end_test || ( echo test chttp2_transport_end2end_test failed ; exit 1 )
 	$(E) "[RUN]     Testing dualstack_socket_test"
 	$(Q) $(BINDIR)/$(CONFIG)/dualstack_socket_test || ( echo test dualstack_socket_test failed ; exit 1 )
 	$(E) "[RUN]     Testing echo_test"
@@ -1411,8 +1407,6 @@ test_c: buildtests_c
 	$(Q) $(BINDIR)/$(CONFIG)/lame_client_test || ( echo test lame_client_test failed ; exit 1 )
 	$(E) "[RUN]     Testing message_compress_test"
 	$(Q) $(BINDIR)/$(CONFIG)/message_compress_test || ( echo test message_compress_test failed ; exit 1 )
-	$(E) "[RUN]     Testing metadata_buffer_test"
-	$(Q) $(BINDIR)/$(CONFIG)/metadata_buffer_test || ( echo test metadata_buffer_test failed ; exit 1 )
 	$(E) "[RUN]     Testing multi_init_test"
 	$(Q) $(BINDIR)/$(CONFIG)/multi_init_test || ( echo test multi_init_test failed ; exit 1 )
 	$(E) "[RUN]     Testing murmur_hash_test"
@@ -3107,42 +3101,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBGPR_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/src/core/support/alloc.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/cancellable.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/cmdline.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/cpu_iphone.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/cpu_linux.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/cpu_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/cpu_windows.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/env_linux.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/env_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/env_win32.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/file.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/file_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/file_win32.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/histogram.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/host_port.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/log.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/log_android.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/log_linux.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/log_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/log_win32.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/murmur_hash.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/slice.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/slice_buffer.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/string.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/string_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/string_win32.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/sync.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/sync_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/sync_win32.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/thd.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/thd_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/thd_win32.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/time.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/time_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/support/time_win32.o: 
-
 
 LIBGPR_TEST_UTIL_SRC = \
     test/core/util/test_config.c \
@@ -3150,24 +3108,7 @@ LIBGPR_TEST_UTIL_SRC = \
 
 LIBGPR_TEST_UTIL_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(LIBGPR_TEST_UTIL_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure libraries if you don't have OpenSSL with ALPN.
-
-$(LIBDIR)/$(CONFIG)/libgpr_test_util.a: openssl_dep_error
-
-
-else
-
-
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-test/core/util/test_config.c: $(OPENSSL_DEP)
-endif
-
-$(LIBDIR)/$(CONFIG)/libgpr_test_util.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(LIBGPR_TEST_UTIL_OBJS)
+$(LIBDIR)/$(CONFIG)/libgpr_test_util.a: $(ZLIB_DEP) $(LIBGPR_TEST_UTIL_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
 	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libgpr_test_util.a
@@ -3179,15 +3120,9 @@ endif
 
 
 
-endif
-
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(LIBGPR_TEST_UTIL_OBJS:.o=.dep)
 endif
-endif
-
-$(OBJDIR)/$(CONFIG)/test/core/util/test_config.o: 
 
 
 LIBGRPC_SRC = \
@@ -3222,7 +3157,6 @@ LIBGRPC_SRC = \
     src/core/channel/http_client_filter.c \
     src/core/channel/http_filter.c \
     src/core/channel/http_server_filter.c \
-    src/core/channel/metadata_buffer.c \
     src/core/channel/noop_filter.c \
     src/core/compression/algorithm.c \
     src/core/compression/message_compress.c \
@@ -3335,130 +3269,6 @@ endif
 else
 
 
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-src/core/httpcli/format_request.c: $(OPENSSL_DEP)
-src/core/httpcli/httpcli.c: $(OPENSSL_DEP)
-src/core/httpcli/httpcli_security_connector.c: $(OPENSSL_DEP)
-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/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)
-src/core/security/security_connector.c: $(OPENSSL_DEP)
-src/core/security/server_secure_chttp2.c: $(OPENSSL_DEP)
-src/core/surface/init_secure.c: $(OPENSSL_DEP)
-src/core/surface/secure_channel_create.c: $(OPENSSL_DEP)
-src/core/tsi/fake_transport_security.c: $(OPENSSL_DEP)
-src/core/tsi/ssl_transport_security.c: $(OPENSSL_DEP)
-src/core/tsi/transport_security.c: $(OPENSSL_DEP)
-src/core/channel/call_op_string.c: $(OPENSSL_DEP)
-src/core/channel/census_filter.c: $(OPENSSL_DEP)
-src/core/channel/channel_args.c: $(OPENSSL_DEP)
-src/core/channel/channel_stack.c: $(OPENSSL_DEP)
-src/core/channel/child_channel.c: $(OPENSSL_DEP)
-src/core/channel/client_channel.c: $(OPENSSL_DEP)
-src/core/channel/client_setup.c: $(OPENSSL_DEP)
-src/core/channel/connected_channel.c: $(OPENSSL_DEP)
-src/core/channel/http_client_filter.c: $(OPENSSL_DEP)
-src/core/channel/http_filter.c: $(OPENSSL_DEP)
-src/core/channel/http_server_filter.c: $(OPENSSL_DEP)
-src/core/channel/metadata_buffer.c: $(OPENSSL_DEP)
-src/core/channel/noop_filter.c: $(OPENSSL_DEP)
-src/core/compression/algorithm.c: $(OPENSSL_DEP)
-src/core/compression/message_compress.c: $(OPENSSL_DEP)
-src/core/debug/trace.c: $(OPENSSL_DEP)
-src/core/iomgr/alarm.c: $(OPENSSL_DEP)
-src/core/iomgr/alarm_heap.c: $(OPENSSL_DEP)
-src/core/iomgr/endpoint.c: $(OPENSSL_DEP)
-src/core/iomgr/endpoint_pair_posix.c: $(OPENSSL_DEP)
-src/core/iomgr/endpoint_pair_windows.c: $(OPENSSL_DEP)
-src/core/iomgr/fd_posix.c: $(OPENSSL_DEP)
-src/core/iomgr/iocp_windows.c: $(OPENSSL_DEP)
-src/core/iomgr/iomgr.c: $(OPENSSL_DEP)
-src/core/iomgr/iomgr_posix.c: $(OPENSSL_DEP)
-src/core/iomgr/iomgr_windows.c: $(OPENSSL_DEP)
-src/core/iomgr/pollset_kick.c: $(OPENSSL_DEP)
-src/core/iomgr/pollset_multipoller_with_epoll.c: $(OPENSSL_DEP)
-src/core/iomgr/pollset_multipoller_with_poll_posix.c: $(OPENSSL_DEP)
-src/core/iomgr/pollset_posix.c: $(OPENSSL_DEP)
-src/core/iomgr/pollset_windows.c: $(OPENSSL_DEP)
-src/core/iomgr/resolve_address_posix.c: $(OPENSSL_DEP)
-src/core/iomgr/resolve_address_windows.c: $(OPENSSL_DEP)
-src/core/iomgr/sockaddr_utils.c: $(OPENSSL_DEP)
-src/core/iomgr/socket_utils_common_posix.c: $(OPENSSL_DEP)
-src/core/iomgr/socket_utils_linux.c: $(OPENSSL_DEP)
-src/core/iomgr/socket_utils_posix.c: $(OPENSSL_DEP)
-src/core/iomgr/socket_windows.c: $(OPENSSL_DEP)
-src/core/iomgr/tcp_client_posix.c: $(OPENSSL_DEP)
-src/core/iomgr/tcp_client_windows.c: $(OPENSSL_DEP)
-src/core/iomgr/tcp_posix.c: $(OPENSSL_DEP)
-src/core/iomgr/tcp_server_posix.c: $(OPENSSL_DEP)
-src/core/iomgr/tcp_server_windows.c: $(OPENSSL_DEP)
-src/core/iomgr/tcp_windows.c: $(OPENSSL_DEP)
-src/core/iomgr/time_averaged_stats.c: $(OPENSSL_DEP)
-src/core/iomgr/wakeup_fd_eventfd.c: $(OPENSSL_DEP)
-src/core/iomgr/wakeup_fd_nospecial.c: $(OPENSSL_DEP)
-src/core/iomgr/wakeup_fd_pipe.c: $(OPENSSL_DEP)
-src/core/iomgr/wakeup_fd_posix.c: $(OPENSSL_DEP)
-src/core/json/json.c: $(OPENSSL_DEP)
-src/core/json/json_reader.c: $(OPENSSL_DEP)
-src/core/json/json_string.c: $(OPENSSL_DEP)
-src/core/json/json_writer.c: $(OPENSSL_DEP)
-src/core/profiling/timers.c: $(OPENSSL_DEP)
-src/core/statistics/census_init.c: $(OPENSSL_DEP)
-src/core/statistics/census_log.c: $(OPENSSL_DEP)
-src/core/statistics/census_rpc_stats.c: $(OPENSSL_DEP)
-src/core/statistics/census_tracing.c: $(OPENSSL_DEP)
-src/core/statistics/hash_table.c: $(OPENSSL_DEP)
-src/core/statistics/window_stats.c: $(OPENSSL_DEP)
-src/core/surface/byte_buffer.c: $(OPENSSL_DEP)
-src/core/surface/byte_buffer_queue.c: $(OPENSSL_DEP)
-src/core/surface/byte_buffer_reader.c: $(OPENSSL_DEP)
-src/core/surface/call.c: $(OPENSSL_DEP)
-src/core/surface/call_details.c: $(OPENSSL_DEP)
-src/core/surface/call_log_batch.c: $(OPENSSL_DEP)
-src/core/surface/channel.c: $(OPENSSL_DEP)
-src/core/surface/channel_create.c: $(OPENSSL_DEP)
-src/core/surface/client.c: $(OPENSSL_DEP)
-src/core/surface/completion_queue.c: $(OPENSSL_DEP)
-src/core/surface/event_string.c: $(OPENSSL_DEP)
-src/core/surface/init.c: $(OPENSSL_DEP)
-src/core/surface/lame_client.c: $(OPENSSL_DEP)
-src/core/surface/metadata_array.c: $(OPENSSL_DEP)
-src/core/surface/server.c: $(OPENSSL_DEP)
-src/core/surface/server_chttp2.c: $(OPENSSL_DEP)
-src/core/surface/server_create.c: $(OPENSSL_DEP)
-src/core/surface/surface_trace.c: $(OPENSSL_DEP)
-src/core/transport/chttp2/alpn.c: $(OPENSSL_DEP)
-src/core/transport/chttp2/bin_encoder.c: $(OPENSSL_DEP)
-src/core/transport/chttp2/frame_data.c: $(OPENSSL_DEP)
-src/core/transport/chttp2/frame_goaway.c: $(OPENSSL_DEP)
-src/core/transport/chttp2/frame_ping.c: $(OPENSSL_DEP)
-src/core/transport/chttp2/frame_rst_stream.c: $(OPENSSL_DEP)
-src/core/transport/chttp2/frame_settings.c: $(OPENSSL_DEP)
-src/core/transport/chttp2/frame_window_update.c: $(OPENSSL_DEP)
-src/core/transport/chttp2/hpack_parser.c: $(OPENSSL_DEP)
-src/core/transport/chttp2/hpack_table.c: $(OPENSSL_DEP)
-src/core/transport/chttp2/huffsyms.c: $(OPENSSL_DEP)
-src/core/transport/chttp2/status_conversion.c: $(OPENSSL_DEP)
-src/core/transport/chttp2/stream_encoder.c: $(OPENSSL_DEP)
-src/core/transport/chttp2/stream_map.c: $(OPENSSL_DEP)
-src/core/transport/chttp2/timeout_encoding.c: $(OPENSSL_DEP)
-src/core/transport/chttp2/varint.c: $(OPENSSL_DEP)
-src/core/transport/chttp2_transport.c: $(OPENSSL_DEP)
-src/core/transport/metadata.c: $(OPENSSL_DEP)
-src/core/transport/stream_op.c: $(OPENSSL_DEP)
-src/core/transport/transport.c: $(OPENSSL_DEP)
-endif
-
 $(LIBDIR)/$(CONFIG)/libgrpc.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(LIBGRPC_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
@@ -3503,140 +3313,21 @@ ifneq ($(NO_DEPS),true)
 endif
 endif
 
-$(OBJDIR)/$(CONFIG)/src/core/httpcli/format_request.o: 
-$(OBJDIR)/$(CONFIG)/src/core/httpcli/httpcli.o: 
-$(OBJDIR)/$(CONFIG)/src/core/httpcli/httpcli_security_connector.o: 
-$(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/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: 
-$(OBJDIR)/$(CONFIG)/src/core/security/security_connector.o: 
-$(OBJDIR)/$(CONFIG)/src/core/security/server_secure_chttp2.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/init_secure.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/secure_channel_create.o: 
-$(OBJDIR)/$(CONFIG)/src/core/tsi/fake_transport_security.o: 
-$(OBJDIR)/$(CONFIG)/src/core/tsi/ssl_transport_security.o: 
-$(OBJDIR)/$(CONFIG)/src/core/tsi/transport_security.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/call_op_string.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/census_filter.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/channel_args.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/channel_stack.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/child_channel.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/client_channel.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/client_setup.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/connected_channel.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/http_client_filter.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/http_filter.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/http_server_filter.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/metadata_buffer.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/noop_filter.o: 
-$(OBJDIR)/$(CONFIG)/src/core/compression/algorithm.o: 
-$(OBJDIR)/$(CONFIG)/src/core/compression/message_compress.o: 
-$(OBJDIR)/$(CONFIG)/src/core/debug/trace.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/alarm.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/alarm_heap.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/endpoint.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/endpoint_pair_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/endpoint_pair_windows.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/fd_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/iocp_windows.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/iomgr.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/iomgr_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/iomgr_windows.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_kick.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_multipoller_with_epoll.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_multipoller_with_poll_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_windows.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/resolve_address_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/resolve_address_windows.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/sockaddr_utils.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/socket_utils_common_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/socket_utils_linux.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/socket_utils_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/socket_windows.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_client_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_client_windows.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_server_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_server_windows.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_windows.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/time_averaged_stats.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/wakeup_fd_eventfd.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/wakeup_fd_nospecial.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/wakeup_fd_pipe.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/wakeup_fd_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/json/json.o: 
-$(OBJDIR)/$(CONFIG)/src/core/json/json_reader.o: 
-$(OBJDIR)/$(CONFIG)/src/core/json/json_string.o: 
-$(OBJDIR)/$(CONFIG)/src/core/json/json_writer.o: 
-$(OBJDIR)/$(CONFIG)/src/core/profiling/timers.o: 
-$(OBJDIR)/$(CONFIG)/src/core/statistics/census_init.o: 
-$(OBJDIR)/$(CONFIG)/src/core/statistics/census_log.o: 
-$(OBJDIR)/$(CONFIG)/src/core/statistics/census_rpc_stats.o: 
-$(OBJDIR)/$(CONFIG)/src/core/statistics/census_tracing.o: 
-$(OBJDIR)/$(CONFIG)/src/core/statistics/hash_table.o: 
-$(OBJDIR)/$(CONFIG)/src/core/statistics/window_stats.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/byte_buffer.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/byte_buffer_queue.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/byte_buffer_reader.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/call.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/call_details.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/call_log_batch.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/channel.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/channel_create.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/client.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/completion_queue.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/event_string.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/init.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/lame_client.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/metadata_array.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/server.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/server_chttp2.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/server_create.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/surface_trace.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/alpn.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/bin_encoder.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_data.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_goaway.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_ping.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_rst_stream.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_settings.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_window_update.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/hpack_parser.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/hpack_table.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/huffsyms.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/status_conversion.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/stream_encoder.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/stream_map.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/timeout_encoding.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/varint.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2_transport.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/metadata.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/stream_op.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/transport.o: 
-
 
 LIBGRPC_TEST_UTIL_SRC = \
-    test/core/end2end/cq_verifier.c \
     test/core/end2end/data/server1_cert.c \
     test/core/end2end/data/server1_key.c \
     test/core/end2end/data/test_root_cert.c \
+    test/core/end2end/cq_verifier.c \
     test/core/iomgr/endpoint_tests.c \
     test/core/statistics/census_log_tests.c \
-    test/core/transport/transport_end2end_tests.c \
     test/core/util/grpc_profiler.c \
     test/core/util/parse_hexstring.c \
     test/core/util/port_posix.c \
     test/core/util/port_windows.c \
     test/core/util/slice_splitter.c \
 
+PUBLIC_HEADERS_C += \
 
 LIBGRPC_TEST_UTIL_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(LIBGRPC_TEST_UTIL_SRC))))
 
@@ -3650,24 +3341,6 @@ $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a: openssl_dep_error
 else
 
 
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-test/core/end2end/cq_verifier.c: $(OPENSSL_DEP)
-test/core/end2end/data/server1_cert.c: $(OPENSSL_DEP)
-test/core/end2end/data/server1_key.c: $(OPENSSL_DEP)
-test/core/end2end/data/test_root_cert.c: $(OPENSSL_DEP)
-test/core/iomgr/endpoint_tests.c: $(OPENSSL_DEP)
-test/core/statistics/census_log_tests.c: $(OPENSSL_DEP)
-test/core/transport/transport_end2end_tests.c: $(OPENSSL_DEP)
-test/core/util/grpc_profiler.c: $(OPENSSL_DEP)
-test/core/util/parse_hexstring.c: $(OPENSSL_DEP)
-test/core/util/port_posix.c: $(OPENSSL_DEP)
-test/core/util/port_windows.c: $(OPENSSL_DEP)
-test/core/util/slice_splitter.c: $(OPENSSL_DEP)
-endif
-
 $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(LIBGRPC_TEST_UTIL_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
@@ -3688,18 +3361,36 @@ ifneq ($(NO_DEPS),true)
 endif
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/cq_verifier.o: 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/data/server1_cert.o: 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/data/server1_key.o: 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/data/test_root_cert.o: 
-$(OBJDIR)/$(CONFIG)/test/core/iomgr/endpoint_tests.o: 
-$(OBJDIR)/$(CONFIG)/test/core/statistics/census_log_tests.o: 
-$(OBJDIR)/$(CONFIG)/test/core/transport/transport_end2end_tests.o: 
-$(OBJDIR)/$(CONFIG)/test/core/util/grpc_profiler.o: 
-$(OBJDIR)/$(CONFIG)/test/core/util/parse_hexstring.o: 
-$(OBJDIR)/$(CONFIG)/test/core/util/port_posix.o: 
-$(OBJDIR)/$(CONFIG)/test/core/util/port_windows.o: 
-$(OBJDIR)/$(CONFIG)/test/core/util/slice_splitter.o: 
+
+LIBGRPC_TEST_UTIL_UNSECURE_SRC = \
+    test/core/end2end/cq_verifier.c \
+    test/core/iomgr/endpoint_tests.c \
+    test/core/statistics/census_log_tests.c \
+    test/core/util/grpc_profiler.c \
+    test/core/util/parse_hexstring.c \
+    test/core/util/port_posix.c \
+    test/core/util/port_windows.c \
+    test/core/util/slice_splitter.c \
+
+PUBLIC_HEADERS_C += \
+
+LIBGRPC_TEST_UTIL_UNSECURE_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(LIBGRPC_TEST_UTIL_UNSECURE_SRC))))
+
+$(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a: $(ZLIB_DEP) $(LIBGRPC_TEST_UTIL_UNSECURE_OBJS)
+	$(E) "[AR]      Creating $@"
+	$(Q) mkdir -p `dirname $@`
+	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a
+	$(Q) $(AR) rcs $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBGRPC_TEST_UTIL_UNSECURE_OBJS)
+ifeq ($(SYSTEM),Darwin)
+	$(Q) ranlib $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a
+endif
+
+
+
+
+ifneq ($(NO_DEPS),true)
+-include $(LIBGRPC_TEST_UTIL_UNSECURE_OBJS:.o=.dep)
+endif
 
 
 LIBGRPC_UNSECURE_SRC = \
@@ -3715,7 +3406,6 @@ LIBGRPC_UNSECURE_SRC = \
     src/core/channel/http_client_filter.c \
     src/core/channel/http_filter.c \
     src/core/channel/http_server_filter.c \
-    src/core/channel/metadata_buffer.c \
     src/core/channel/noop_filter.c \
     src/core/compression/algorithm.c \
     src/core/compression/message_compress.c \
@@ -3845,106 +3535,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBGRPC_UNSECURE_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/src/core/surface/init_unsecure.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/call_op_string.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/census_filter.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/channel_args.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/channel_stack.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/child_channel.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/client_channel.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/client_setup.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/connected_channel.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/http_client_filter.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/http_filter.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/http_server_filter.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/metadata_buffer.o: 
-$(OBJDIR)/$(CONFIG)/src/core/channel/noop_filter.o: 
-$(OBJDIR)/$(CONFIG)/src/core/compression/algorithm.o: 
-$(OBJDIR)/$(CONFIG)/src/core/compression/message_compress.o: 
-$(OBJDIR)/$(CONFIG)/src/core/debug/trace.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/alarm.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/alarm_heap.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/endpoint.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/endpoint_pair_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/endpoint_pair_windows.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/fd_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/iocp_windows.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/iomgr.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/iomgr_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/iomgr_windows.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_kick.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_multipoller_with_epoll.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_multipoller_with_poll_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/pollset_windows.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/resolve_address_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/resolve_address_windows.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/sockaddr_utils.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/socket_utils_common_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/socket_utils_linux.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/socket_utils_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/socket_windows.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_client_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_client_windows.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_server_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_server_windows.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/tcp_windows.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/time_averaged_stats.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/wakeup_fd_eventfd.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/wakeup_fd_nospecial.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/wakeup_fd_pipe.o: 
-$(OBJDIR)/$(CONFIG)/src/core/iomgr/wakeup_fd_posix.o: 
-$(OBJDIR)/$(CONFIG)/src/core/json/json.o: 
-$(OBJDIR)/$(CONFIG)/src/core/json/json_reader.o: 
-$(OBJDIR)/$(CONFIG)/src/core/json/json_string.o: 
-$(OBJDIR)/$(CONFIG)/src/core/json/json_writer.o: 
-$(OBJDIR)/$(CONFIG)/src/core/profiling/timers.o: 
-$(OBJDIR)/$(CONFIG)/src/core/statistics/census_init.o: 
-$(OBJDIR)/$(CONFIG)/src/core/statistics/census_log.o: 
-$(OBJDIR)/$(CONFIG)/src/core/statistics/census_rpc_stats.o: 
-$(OBJDIR)/$(CONFIG)/src/core/statistics/census_tracing.o: 
-$(OBJDIR)/$(CONFIG)/src/core/statistics/hash_table.o: 
-$(OBJDIR)/$(CONFIG)/src/core/statistics/window_stats.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/byte_buffer.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/byte_buffer_queue.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/byte_buffer_reader.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/call.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/call_details.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/call_log_batch.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/channel.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/channel_create.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/client.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/completion_queue.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/event_string.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/init.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/lame_client.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/metadata_array.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/server.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/server_chttp2.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/server_create.o: 
-$(OBJDIR)/$(CONFIG)/src/core/surface/surface_trace.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/alpn.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/bin_encoder.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_data.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_goaway.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_ping.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_rst_stream.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_settings.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/frame_window_update.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/hpack_parser.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/hpack_table.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/huffsyms.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/status_conversion.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/stream_encoder.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/stream_map.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/timeout_encoding.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2/varint.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/chttp2_transport.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/metadata.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/stream_op.o: 
-$(OBJDIR)/$(CONFIG)/src/core/transport/transport.o: 
-
 
 LIBGRPC++_SRC = \
     src/cpp/client/secure_credentials.cc \
@@ -3988,6 +3578,7 @@ PUBLIC_HEADERS_CXX += \
     include/grpc++/generic_stub.h \
     include/grpc++/impl/call.h \
     include/grpc++/impl/client_unary_call.h \
+    include/grpc++/impl/grpc_library.h \
     include/grpc++/impl/internal_stub.h \
     include/grpc++/impl/rpc_method.h \
     include/grpc++/impl/rpc_service_method.h \
@@ -4007,6 +3598,7 @@ PUBLIC_HEADERS_CXX += \
     include/grpc++/status_code_enum.h \
     include/grpc++/stream.h \
     include/grpc++/thread_pool_interface.h \
+    include/grpc++/time.h \
 
 LIBGRPC++_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(LIBGRPC++_SRC))))
 
@@ -4038,38 +3630,6 @@ endif
 
 else
 
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-src/cpp/client/secure_credentials.cc: $(OPENSSL_DEP)
-src/cpp/server/secure_server_credentials.cc: $(OPENSSL_DEP)
-src/cpp/client/channel.cc: $(OPENSSL_DEP)
-src/cpp/client/channel_arguments.cc: $(OPENSSL_DEP)
-src/cpp/client/client_context.cc: $(OPENSSL_DEP)
-src/cpp/client/client_unary_call.cc: $(OPENSSL_DEP)
-src/cpp/client/create_channel.cc: $(OPENSSL_DEP)
-src/cpp/client/credentials.cc: $(OPENSSL_DEP)
-src/cpp/client/generic_stub.cc: $(OPENSSL_DEP)
-src/cpp/client/insecure_credentials.cc: $(OPENSSL_DEP)
-src/cpp/client/internal_stub.cc: $(OPENSSL_DEP)
-src/cpp/common/call.cc: $(OPENSSL_DEP)
-src/cpp/common/completion_queue.cc: $(OPENSSL_DEP)
-src/cpp/common/rpc_method.cc: $(OPENSSL_DEP)
-src/cpp/proto/proto_utils.cc: $(OPENSSL_DEP)
-src/cpp/server/async_generic_service.cc: $(OPENSSL_DEP)
-src/cpp/server/insecure_server_credentials.cc: $(OPENSSL_DEP)
-src/cpp/server/server.cc: $(OPENSSL_DEP)
-src/cpp/server/server_builder.cc: $(OPENSSL_DEP)
-src/cpp/server/server_context.cc: $(OPENSSL_DEP)
-src/cpp/server/server_credentials.cc: $(OPENSSL_DEP)
-src/cpp/server/thread_pool.cc: $(OPENSSL_DEP)
-src/cpp/util/byte_buffer.cc: $(OPENSSL_DEP)
-src/cpp/util/slice.cc: $(OPENSSL_DEP)
-src/cpp/util/status.cc: $(OPENSSL_DEP)
-src/cpp/util/time.cc: $(OPENSSL_DEP)
-endif
-
 $(LIBDIR)/$(CONFIG)/libgrpc++.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(PROTOBUF_DEP) $(LIBGRPC++_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
@@ -4109,33 +3669,6 @@ ifneq ($(NO_DEPS),true)
 endif
 endif
 
-$(OBJDIR)/$(CONFIG)/src/cpp/client/secure_credentials.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/server/secure_server_credentials.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/client/channel.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/client/channel_arguments.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/client/client_context.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/client/client_unary_call.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/client/create_channel.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/client/credentials.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/client/generic_stub.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/client/insecure_credentials.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/client/internal_stub.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/common/call.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/common/completion_queue.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/common/rpc_method.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/proto/proto_utils.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/server/async_generic_service.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/server/insecure_server_credentials.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/server/server.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/server/server_builder.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/server/server_context.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/server/server_credentials.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/server/thread_pool.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/util/byte_buffer.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/util/slice.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/util/status.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/util/time.o: 
-
 
 LIBGRPC++_TEST_CONFIG_SRC = \
     test/cpp/util/test_config.cc \
@@ -4161,13 +3694,6 @@ $(LIBDIR)/$(CONFIG)/libgrpc++_test_config.a: protobuf_dep_error
 
 else
 
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-test/cpp/util/test_config.cc: $(OPENSSL_DEP)
-endif
-
 $(LIBDIR)/$(CONFIG)/libgrpc++_test_config.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(PROTOBUF_DEP) $(LIBGRPC++_TEST_CONFIG_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
@@ -4190,8 +3716,6 @@ ifneq ($(NO_DEPS),true)
 endif
 endif
 
-$(OBJDIR)/$(CONFIG)/test/cpp/util/test_config.o: 
-
 
 LIBGRPC++_TEST_UTIL_SRC = \
     $(GENDIR)/test/cpp/util/messages.pb.cc $(GENDIR)/test/cpp/util/messages.grpc.pb.cc \
@@ -4221,17 +3745,6 @@ $(LIBDIR)/$(CONFIG)/libgrpc++_test_util.a: protobuf_dep_error
 
 else
 
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-test/cpp/util/messages.proto: $(OPENSSL_DEP)
-test/cpp/util/echo.proto: $(OPENSSL_DEP)
-test/cpp/util/echo_duplicate.proto: $(OPENSSL_DEP)
-test/cpp/util/cli_call.cc: $(OPENSSL_DEP)
-test/cpp/util/create_test_channel.cc: $(OPENSSL_DEP)
-endif
-
 $(LIBDIR)/$(CONFIG)/libgrpc++_test_util.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(PROTOBUF_DEP) $(LIBGRPC++_TEST_UTIL_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
@@ -4253,12 +3766,8 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBGRPC++_TEST_UTIL_OBJS:.o=.dep)
 endif
 endif
-
-
-
-
-$(OBJDIR)/$(CONFIG)/test/cpp/util/cli_call.o:     $(GENDIR)/test/cpp/util/messages.pb.cc $(GENDIR)/test/cpp/util/messages.grpc.pb.cc    $(GENDIR)/test/cpp/util/echo.pb.cc $(GENDIR)/test/cpp/util/echo.grpc.pb.cc    $(GENDIR)/test/cpp/util/echo_duplicate.pb.cc $(GENDIR)/test/cpp/util/echo_duplicate.grpc.pb.cc
-$(OBJDIR)/$(CONFIG)/test/cpp/util/create_test_channel.o:     $(GENDIR)/test/cpp/util/messages.pb.cc $(GENDIR)/test/cpp/util/messages.grpc.pb.cc    $(GENDIR)/test/cpp/util/echo.pb.cc $(GENDIR)/test/cpp/util/echo.grpc.pb.cc    $(GENDIR)/test/cpp/util/echo_duplicate.pb.cc $(GENDIR)/test/cpp/util/echo_duplicate.grpc.pb.cc
+$(OBJDIR)/$(CONFIG)/test/cpp/util/cli_call.o: $(GENDIR)/test/cpp/util/messages.pb.cc $(GENDIR)/test/cpp/util/messages.grpc.pb.cc $(GENDIR)/test/cpp/util/echo.pb.cc $(GENDIR)/test/cpp/util/echo.grpc.pb.cc $(GENDIR)/test/cpp/util/echo_duplicate.pb.cc $(GENDIR)/test/cpp/util/echo_duplicate.grpc.pb.cc
+$(OBJDIR)/$(CONFIG)/test/cpp/util/create_test_channel.o: $(GENDIR)/test/cpp/util/messages.pb.cc $(GENDIR)/test/cpp/util/messages.grpc.pb.cc $(GENDIR)/test/cpp/util/echo.pb.cc $(GENDIR)/test/cpp/util/echo.grpc.pb.cc $(GENDIR)/test/cpp/util/echo_duplicate.pb.cc $(GENDIR)/test/cpp/util/echo_duplicate.grpc.pb.cc
 
 
 LIBGRPC++_UNSECURE_SRC = \
@@ -4301,6 +3810,7 @@ PUBLIC_HEADERS_CXX += \
     include/grpc++/generic_stub.h \
     include/grpc++/impl/call.h \
     include/grpc++/impl/client_unary_call.h \
+    include/grpc++/impl/grpc_library.h \
     include/grpc++/impl/internal_stub.h \
     include/grpc++/impl/rpc_method.h \
     include/grpc++/impl/rpc_service_method.h \
@@ -4320,6 +3830,7 @@ PUBLIC_HEADERS_CXX += \
     include/grpc++/status_code_enum.h \
     include/grpc++/stream.h \
     include/grpc++/thread_pool_interface.h \
+    include/grpc++/time.h \
 
 LIBGRPC++_UNSECURE_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(LIBGRPC++_UNSECURE_SRC))))
 
@@ -4372,31 +3883,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBGRPC++_UNSECURE_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/src/cpp/client/channel.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/client/channel_arguments.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/client/client_context.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/client/client_unary_call.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/client/create_channel.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/client/credentials.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/client/generic_stub.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/client/insecure_credentials.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/client/internal_stub.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/common/call.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/common/completion_queue.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/common/rpc_method.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/proto/proto_utils.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/server/async_generic_service.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/server/insecure_server_credentials.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/server/server.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/server/server_builder.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/server/server_context.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/server/server_credentials.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/server/thread_pool.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/util/byte_buffer.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/util/slice.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/util/status.o: 
-$(OBJDIR)/$(CONFIG)/src/cpp/util/time.o: 
-
 
 LIBGRPC_PLUGIN_SUPPORT_SRC = \
     src/compiler/cpp_generator.cc \
@@ -4434,11 +3920,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBGRPC_PLUGIN_SUPPORT_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/src/compiler/cpp_generator.o: 
-$(OBJDIR)/$(CONFIG)/src/compiler/objective_c_generator.o: 
-$(OBJDIR)/$(CONFIG)/src/compiler/python_generator.o: 
-$(OBJDIR)/$(CONFIG)/src/compiler/ruby_generator.o: 
-
 
 LIBINTEROP_CLIENT_HELPER_SRC = \
     test/cpp/interop/client_helper.cc \
@@ -4464,13 +3945,6 @@ $(LIBDIR)/$(CONFIG)/libinterop_client_helper.a: protobuf_dep_error
 
 else
 
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-test/cpp/interop/client_helper.cc: $(OPENSSL_DEP)
-endif
-
 $(LIBDIR)/$(CONFIG)/libinterop_client_helper.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(PROTOBUF_DEP) $(LIBINTEROP_CLIENT_HELPER_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
@@ -4493,8 +3967,6 @@ ifneq ($(NO_DEPS),true)
 endif
 endif
 
-$(OBJDIR)/$(CONFIG)/test/cpp/interop/client_helper.o: 
-
 
 LIBINTEROP_CLIENT_MAIN_SRC = \
     $(GENDIR)/test/proto/empty.pb.cc $(GENDIR)/test/proto/empty.grpc.pb.cc \
@@ -4524,17 +3996,6 @@ $(LIBDIR)/$(CONFIG)/libinterop_client_main.a: protobuf_dep_error
 
 else
 
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-test/proto/empty.proto: $(OPENSSL_DEP)
-test/proto/messages.proto: $(OPENSSL_DEP)
-test/proto/test.proto: $(OPENSSL_DEP)
-test/cpp/interop/client.cc: $(OPENSSL_DEP)
-test/cpp/interop/interop_client.cc: $(OPENSSL_DEP)
-endif
-
 $(LIBDIR)/$(CONFIG)/libinterop_client_main.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(PROTOBUF_DEP) $(LIBINTEROP_CLIENT_MAIN_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
@@ -4556,12 +4017,8 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBINTEROP_CLIENT_MAIN_OBJS:.o=.dep)
 endif
 endif
-
-
-
-
-$(OBJDIR)/$(CONFIG)/test/cpp/interop/client.o:     $(GENDIR)/test/proto/empty.pb.cc $(GENDIR)/test/proto/empty.grpc.pb.cc    $(GENDIR)/test/proto/messages.pb.cc $(GENDIR)/test/proto/messages.grpc.pb.cc    $(GENDIR)/test/proto/test.pb.cc $(GENDIR)/test/proto/test.grpc.pb.cc
-$(OBJDIR)/$(CONFIG)/test/cpp/interop/interop_client.o:     $(GENDIR)/test/proto/empty.pb.cc $(GENDIR)/test/proto/empty.grpc.pb.cc    $(GENDIR)/test/proto/messages.pb.cc $(GENDIR)/test/proto/messages.grpc.pb.cc    $(GENDIR)/test/proto/test.pb.cc $(GENDIR)/test/proto/test.grpc.pb.cc
+$(OBJDIR)/$(CONFIG)/test/cpp/interop/client.o: $(GENDIR)/test/proto/empty.pb.cc $(GENDIR)/test/proto/empty.grpc.pb.cc $(GENDIR)/test/proto/messages.pb.cc $(GENDIR)/test/proto/messages.grpc.pb.cc $(GENDIR)/test/proto/test.pb.cc $(GENDIR)/test/proto/test.grpc.pb.cc
+$(OBJDIR)/$(CONFIG)/test/cpp/interop/interop_client.o: $(GENDIR)/test/proto/empty.pb.cc $(GENDIR)/test/proto/empty.grpc.pb.cc $(GENDIR)/test/proto/messages.pb.cc $(GENDIR)/test/proto/messages.grpc.pb.cc $(GENDIR)/test/proto/test.pb.cc $(GENDIR)/test/proto/test.grpc.pb.cc
 
 
 LIBINTEROP_SERVER_HELPER_SRC = \
@@ -4588,13 +4045,6 @@ $(LIBDIR)/$(CONFIG)/libinterop_server_helper.a: protobuf_dep_error
 
 else
 
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-test/cpp/interop/server_helper.cc: $(OPENSSL_DEP)
-endif
-
 $(LIBDIR)/$(CONFIG)/libinterop_server_helper.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(PROTOBUF_DEP) $(LIBINTEROP_SERVER_HELPER_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
@@ -4617,8 +4067,6 @@ ifneq ($(NO_DEPS),true)
 endif
 endif
 
-$(OBJDIR)/$(CONFIG)/test/cpp/interop/server_helper.o: 
-
 
 LIBINTEROP_SERVER_MAIN_SRC = \
     $(GENDIR)/test/proto/empty.pb.cc $(GENDIR)/test/proto/empty.grpc.pb.cc \
@@ -4647,16 +4095,6 @@ $(LIBDIR)/$(CONFIG)/libinterop_server_main.a: protobuf_dep_error
 
 else
 
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-test/proto/empty.proto: $(OPENSSL_DEP)
-test/proto/messages.proto: $(OPENSSL_DEP)
-test/proto/test.proto: $(OPENSSL_DEP)
-test/cpp/interop/server.cc: $(OPENSSL_DEP)
-endif
-
 $(LIBDIR)/$(CONFIG)/libinterop_server_main.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(PROTOBUF_DEP) $(LIBINTEROP_SERVER_MAIN_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
@@ -4678,11 +4116,7 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBINTEROP_SERVER_MAIN_OBJS:.o=.dep)
 endif
 endif
-
-
-
-
-$(OBJDIR)/$(CONFIG)/test/cpp/interop/server.o:     $(GENDIR)/test/proto/empty.pb.cc $(GENDIR)/test/proto/empty.grpc.pb.cc    $(GENDIR)/test/proto/messages.pb.cc $(GENDIR)/test/proto/messages.grpc.pb.cc    $(GENDIR)/test/proto/test.pb.cc $(GENDIR)/test/proto/test.grpc.pb.cc
+$(OBJDIR)/$(CONFIG)/test/cpp/interop/server.o: $(GENDIR)/test/proto/empty.pb.cc $(GENDIR)/test/proto/empty.grpc.pb.cc $(GENDIR)/test/proto/messages.pb.cc $(GENDIR)/test/proto/messages.grpc.pb.cc $(GENDIR)/test/proto/test.pb.cc $(GENDIR)/test/proto/test.grpc.pb.cc
 
 
 LIBPUBSUB_CLIENT_LIB_SRC = \
@@ -4713,17 +4147,6 @@ $(LIBDIR)/$(CONFIG)/libpubsub_client_lib.a: protobuf_dep_error
 
 else
 
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-examples/pubsub/label.proto: $(OPENSSL_DEP)
-examples/pubsub/empty.proto: $(OPENSSL_DEP)
-examples/pubsub/pubsub.proto: $(OPENSSL_DEP)
-examples/pubsub/publisher.cc: $(OPENSSL_DEP)
-examples/pubsub/subscriber.cc: $(OPENSSL_DEP)
-endif
-
 $(LIBDIR)/$(CONFIG)/libpubsub_client_lib.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(PROTOBUF_DEP) $(LIBPUBSUB_CLIENT_LIB_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
@@ -4745,12 +4168,8 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBPUBSUB_CLIENT_LIB_OBJS:.o=.dep)
 endif
 endif
-
-
-
-
-$(OBJDIR)/$(CONFIG)/examples/pubsub/publisher.o:     $(GENDIR)/examples/pubsub/label.pb.cc $(GENDIR)/examples/pubsub/label.grpc.pb.cc    $(GENDIR)/examples/pubsub/empty.pb.cc $(GENDIR)/examples/pubsub/empty.grpc.pb.cc    $(GENDIR)/examples/pubsub/pubsub.pb.cc $(GENDIR)/examples/pubsub/pubsub.grpc.pb.cc
-$(OBJDIR)/$(CONFIG)/examples/pubsub/subscriber.o:     $(GENDIR)/examples/pubsub/label.pb.cc $(GENDIR)/examples/pubsub/label.grpc.pb.cc    $(GENDIR)/examples/pubsub/empty.pb.cc $(GENDIR)/examples/pubsub/empty.grpc.pb.cc    $(GENDIR)/examples/pubsub/pubsub.pb.cc $(GENDIR)/examples/pubsub/pubsub.grpc.pb.cc
+$(OBJDIR)/$(CONFIG)/examples/pubsub/publisher.o: $(GENDIR)/examples/pubsub/label.pb.cc $(GENDIR)/examples/pubsub/label.grpc.pb.cc $(GENDIR)/examples/pubsub/empty.pb.cc $(GENDIR)/examples/pubsub/empty.grpc.pb.cc $(GENDIR)/examples/pubsub/pubsub.pb.cc $(GENDIR)/examples/pubsub/pubsub.grpc.pb.cc
+$(OBJDIR)/$(CONFIG)/examples/pubsub/subscriber.o: $(GENDIR)/examples/pubsub/label.pb.cc $(GENDIR)/examples/pubsub/label.grpc.pb.cc $(GENDIR)/examples/pubsub/empty.pb.cc $(GENDIR)/examples/pubsub/empty.grpc.pb.cc $(GENDIR)/examples/pubsub/pubsub.pb.cc $(GENDIR)/examples/pubsub/pubsub.grpc.pb.cc
 
 
 LIBQPS_SRC = \
@@ -4785,21 +4204,6 @@ $(LIBDIR)/$(CONFIG)/libqps.a: protobuf_dep_error
 
 else
 
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-test/cpp/qps/qpstest.proto: $(OPENSSL_DEP)
-test/cpp/qps/client_async.cc: $(OPENSSL_DEP)
-test/cpp/qps/client_sync.cc: $(OPENSSL_DEP)
-test/cpp/qps/driver.cc: $(OPENSSL_DEP)
-test/cpp/qps/qps_worker.cc: $(OPENSSL_DEP)
-test/cpp/qps/report.cc: $(OPENSSL_DEP)
-test/cpp/qps/server_async.cc: $(OPENSSL_DEP)
-test/cpp/qps/server_sync.cc: $(OPENSSL_DEP)
-test/cpp/qps/timer.cc: $(OPENSSL_DEP)
-endif
-
 $(LIBDIR)/$(CONFIG)/libqps.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(PROTOBUF_DEP) $(LIBQPS_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
@@ -4821,16 +4225,14 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBQPS_OBJS:.o=.dep)
 endif
 endif
-
-
-$(OBJDIR)/$(CONFIG)/test/cpp/qps/client_async.o:     $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc
-$(OBJDIR)/$(CONFIG)/test/cpp/qps/client_sync.o:     $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc
-$(OBJDIR)/$(CONFIG)/test/cpp/qps/driver.o:     $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc
-$(OBJDIR)/$(CONFIG)/test/cpp/qps/qps_worker.o:     $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc
-$(OBJDIR)/$(CONFIG)/test/cpp/qps/report.o:     $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc
-$(OBJDIR)/$(CONFIG)/test/cpp/qps/server_async.o:     $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc
-$(OBJDIR)/$(CONFIG)/test/cpp/qps/server_sync.o:     $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc
-$(OBJDIR)/$(CONFIG)/test/cpp/qps/timer.o:     $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc
+$(OBJDIR)/$(CONFIG)/test/cpp/qps/client_async.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc
+$(OBJDIR)/$(CONFIG)/test/cpp/qps/client_sync.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc
+$(OBJDIR)/$(CONFIG)/test/cpp/qps/driver.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc
+$(OBJDIR)/$(CONFIG)/test/cpp/qps/qps_worker.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc
+$(OBJDIR)/$(CONFIG)/test/cpp/qps/report.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc
+$(OBJDIR)/$(CONFIG)/test/cpp/qps/server_async.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc
+$(OBJDIR)/$(CONFIG)/test/cpp/qps/server_sync.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc
+$(OBJDIR)/$(CONFIG)/test/cpp/qps/timer.o: $(GENDIR)/test/cpp/qps/qpstest.pb.cc $(GENDIR)/test/cpp/qps/qpstest.grpc.pb.cc
 
 
 LIBGRPC_CSHARP_EXT_SRC = \
@@ -4854,13 +4256,6 @@ endif
 else
 
 
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-src/csharp/ext/grpc_csharp_ext.c: $(OPENSSL_DEP)
-endif
-
 $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(LIBGRPC_CSHARP_EXT_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
@@ -4898,8 +4293,6 @@ ifneq ($(NO_DEPS),true)
 endif
 endif
 
-$(OBJDIR)/$(CONFIG)/src/csharp/ext/grpc_csharp_ext.o: 
-
 
 LIBEND2END_FIXTURE_CHTTP2_FAKE_SECURITY_SRC = \
     test/core/end2end/fixtures/chttp2_fake_security.c \
@@ -4917,13 +4310,6 @@ $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fake_security.a: openssl_dep_error
 else
 
 
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-test/core/end2end/fixtures/chttp2_fake_security.c: $(OPENSSL_DEP)
-endif
-
 $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fake_security.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(LIBEND2END_FIXTURE_CHTTP2_FAKE_SECURITY_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
@@ -4944,8 +4330,6 @@ ifneq ($(NO_DEPS),true)
 endif
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/fixtures/chttp2_fake_security.o: 
-
 
 LIBEND2END_FIXTURE_CHTTP2_FULLSTACK_SRC = \
     test/core/end2end/fixtures/chttp2_fullstack.c \
@@ -4953,24 +4337,7 @@ LIBEND2END_FIXTURE_CHTTP2_FULLSTACK_SRC = \
 
 LIBEND2END_FIXTURE_CHTTP2_FULLSTACK_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(LIBEND2END_FIXTURE_CHTTP2_FULLSTACK_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure libraries if you don't have OpenSSL with ALPN.
-
-$(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a: openssl_dep_error
-
-
-else
-
-
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-test/core/end2end/fixtures/chttp2_fullstack.c: $(OPENSSL_DEP)
-endif
-
-$(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(LIBEND2END_FIXTURE_CHTTP2_FULLSTACK_OBJS)
+$(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a: $(ZLIB_DEP) $(LIBEND2END_FIXTURE_CHTTP2_FULLSTACK_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
 	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a
@@ -4982,15 +4349,9 @@ endif
 
 
 
-endif
-
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_FIXTURE_CHTTP2_FULLSTACK_OBJS:.o=.dep)
 endif
-endif
-
-$(OBJDIR)/$(CONFIG)/test/core/end2end/fixtures/chttp2_fullstack.o: 
 
 
 LIBEND2END_FIXTURE_CHTTP2_FULLSTACK_UDS_SRC = \
@@ -4999,24 +4360,7 @@ LIBEND2END_FIXTURE_CHTTP2_FULLSTACK_UDS_SRC = \
 
 LIBEND2END_FIXTURE_CHTTP2_FULLSTACK_UDS_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(LIBEND2END_FIXTURE_CHTTP2_FULLSTACK_UDS_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure libraries if you don't have OpenSSL with ALPN.
-
-$(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a: openssl_dep_error
-
-
-else
-
-
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-test/core/end2end/fixtures/chttp2_fullstack_uds.c: $(OPENSSL_DEP)
-endif
-
-$(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(LIBEND2END_FIXTURE_CHTTP2_FULLSTACK_UDS_OBJS)
+$(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a: $(ZLIB_DEP) $(LIBEND2END_FIXTURE_CHTTP2_FULLSTACK_UDS_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
 	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a
@@ -5028,15 +4372,9 @@ endif
 
 
 
-endif
-
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_FIXTURE_CHTTP2_FULLSTACK_UDS_OBJS:.o=.dep)
 endif
-endif
-
-$(OBJDIR)/$(CONFIG)/test/core/end2end/fixtures/chttp2_fullstack_uds.o: 
 
 
 LIBEND2END_FIXTURE_CHTTP2_SIMPLE_SSL_FULLSTACK_SRC = \
@@ -5055,13 +4393,6 @@ $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_simple_ssl_fullstack.a: openssl_de
 else
 
 
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-test/core/end2end/fixtures/chttp2_simple_ssl_fullstack.c: $(OPENSSL_DEP)
-endif
-
 $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_simple_ssl_fullstack.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(LIBEND2END_FIXTURE_CHTTP2_SIMPLE_SSL_FULLSTACK_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
@@ -5082,8 +4413,6 @@ ifneq ($(NO_DEPS),true)
 endif
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/fixtures/chttp2_simple_ssl_fullstack.o: 
-
 
 LIBEND2END_FIXTURE_CHTTP2_SIMPLE_SSL_WITH_OAUTH2_FULLSTACK_SRC = \
     test/core/end2end/fixtures/chttp2_simple_ssl_with_oauth2_fullstack.c \
@@ -5101,13 +4430,6 @@ $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_simple_ssl_with_oauth2_fullstack.a
 else
 
 
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-test/core/end2end/fixtures/chttp2_simple_ssl_with_oauth2_fullstack.c: $(OPENSSL_DEP)
-endif
-
 $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_simple_ssl_with_oauth2_fullstack.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(LIBEND2END_FIXTURE_CHTTP2_SIMPLE_SSL_WITH_OAUTH2_FULLSTACK_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
@@ -5128,8 +4450,6 @@ ifneq ($(NO_DEPS),true)
 endif
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/fixtures/chttp2_simple_ssl_with_oauth2_fullstack.o: 
-
 
 LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_SRC = \
     test/core/end2end/fixtures/chttp2_socket_pair.c \
@@ -5137,24 +4457,7 @@ LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_SRC = \
 
 LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure libraries if you don't have OpenSSL with ALPN.
-
-$(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a: openssl_dep_error
-
-
-else
-
-
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-test/core/end2end/fixtures/chttp2_socket_pair.c: $(OPENSSL_DEP)
-endif
-
-$(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_OBJS)
+$(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a: $(ZLIB_DEP) $(LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
 	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a
@@ -5166,15 +4469,9 @@ endif
 
 
 
-endif
-
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_OBJS:.o=.dep)
 endif
-endif
-
-$(OBJDIR)/$(CONFIG)/test/core/end2end/fixtures/chttp2_socket_pair.o: 
 
 
 LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SRC = \
@@ -5183,44 +4480,21 @@ LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SRC = \
 
 LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SRC))))
 
-ifeq ($(NO_SECURE),true)
+$(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a: $(ZLIB_DEP) $(LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_OBJS)
+	$(E) "[AR]      Creating $@"
+	$(Q) mkdir -p `dirname $@`
+	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a
+	$(Q) $(AR) rcs $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_OBJS)
+ifeq ($(SYSTEM),Darwin)
+	$(Q) ranlib $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a
+endif
 
-# You can't build secure libraries if you don't have OpenSSL with ALPN.
 
-$(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a: openssl_dep_error
 
 
-else
-
-
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-test/core/end2end/fixtures/chttp2_socket_pair_one_byte_at_a_time.c: $(OPENSSL_DEP)
-endif
-
-$(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_OBJS)
-	$(E) "[AR]      Creating $@"
-	$(Q) mkdir -p `dirname $@`
-	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a
-	$(Q) $(AR) rcs $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_OBJS)
-ifeq ($(SYSTEM),Darwin)
-	$(Q) ranlib $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a
-endif
-
-
-
-
-endif
-
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_FIXTURE_CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_OBJS:.o=.dep)
 endif
-endif
-
-$(OBJDIR)/$(CONFIG)/test/core/end2end/fixtures/chttp2_socket_pair_one_byte_at_a_time.o: 
 
 
 LIBEND2END_TEST_BAD_HOSTNAME_SRC = \
@@ -5245,8 +4519,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_BAD_HOSTNAME_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/bad_hostname.o: 
-
 
 LIBEND2END_TEST_CANCEL_AFTER_ACCEPT_SRC = \
     test/core/end2end/tests/cancel_after_accept.c \
@@ -5270,8 +4542,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_CANCEL_AFTER_ACCEPT_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_after_accept.o: 
-
 
 LIBEND2END_TEST_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_SRC = \
     test/core/end2end/tests/cancel_after_accept_and_writes_closed.c \
@@ -5295,8 +4565,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_after_accept_and_writes_closed.o: 
-
 
 LIBEND2END_TEST_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_SRC = \
     test/core/end2end/tests/cancel_after_accept_and_writes_closed_legacy.c \
@@ -5320,8 +4588,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_after_accept_and_writes_closed_legacy.o: 
-
 
 LIBEND2END_TEST_CANCEL_AFTER_ACCEPT_LEGACY_SRC = \
     test/core/end2end/tests/cancel_after_accept_legacy.c \
@@ -5345,8 +4611,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_CANCEL_AFTER_ACCEPT_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_after_accept_legacy.o: 
-
 
 LIBEND2END_TEST_CANCEL_AFTER_INVOKE_SRC = \
     test/core/end2end/tests/cancel_after_invoke.c \
@@ -5370,8 +4634,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_CANCEL_AFTER_INVOKE_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_after_invoke.o: 
-
 
 LIBEND2END_TEST_CANCEL_AFTER_INVOKE_LEGACY_SRC = \
     test/core/end2end/tests/cancel_after_invoke_legacy.c \
@@ -5395,8 +4657,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_CANCEL_AFTER_INVOKE_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_after_invoke_legacy.o: 
-
 
 LIBEND2END_TEST_CANCEL_BEFORE_INVOKE_SRC = \
     test/core/end2end/tests/cancel_before_invoke.c \
@@ -5420,8 +4680,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_CANCEL_BEFORE_INVOKE_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_before_invoke.o: 
-
 
 LIBEND2END_TEST_CANCEL_BEFORE_INVOKE_LEGACY_SRC = \
     test/core/end2end/tests/cancel_before_invoke_legacy.c \
@@ -5445,8 +4703,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_CANCEL_BEFORE_INVOKE_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_before_invoke_legacy.o: 
-
 
 LIBEND2END_TEST_CANCEL_IN_A_VACUUM_SRC = \
     test/core/end2end/tests/cancel_in_a_vacuum.c \
@@ -5470,8 +4726,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_CANCEL_IN_A_VACUUM_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_in_a_vacuum.o: 
-
 
 LIBEND2END_TEST_CANCEL_IN_A_VACUUM_LEGACY_SRC = \
     test/core/end2end/tests/cancel_in_a_vacuum_legacy.c \
@@ -5495,8 +4749,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_CANCEL_IN_A_VACUUM_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/cancel_in_a_vacuum_legacy.o: 
-
 
 LIBEND2END_TEST_CENSUS_SIMPLE_REQUEST_SRC = \
     test/core/end2end/tests/census_simple_request.c \
@@ -5520,8 +4772,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_CENSUS_SIMPLE_REQUEST_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/census_simple_request.o: 
-
 
 LIBEND2END_TEST_CENSUS_SIMPLE_REQUEST_LEGACY_SRC = \
     test/core/end2end/tests/census_simple_request_legacy.c \
@@ -5545,8 +4795,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_CENSUS_SIMPLE_REQUEST_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/census_simple_request_legacy.o: 
-
 
 LIBEND2END_TEST_DISAPPEARING_SERVER_SRC = \
     test/core/end2end/tests/disappearing_server.c \
@@ -5570,8 +4818,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_DISAPPEARING_SERVER_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/disappearing_server.o: 
-
 
 LIBEND2END_TEST_DISAPPEARING_SERVER_LEGACY_SRC = \
     test/core/end2end/tests/disappearing_server_legacy.c \
@@ -5595,8 +4841,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_DISAPPEARING_SERVER_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/disappearing_server_legacy.o: 
-
 
 LIBEND2END_TEST_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_SRC = \
     test/core/end2end/tests/early_server_shutdown_finishes_inflight_calls.c \
@@ -5620,8 +4864,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/early_server_shutdown_finishes_inflight_calls.o: 
-
 
 LIBEND2END_TEST_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_SRC = \
     test/core/end2end/tests/early_server_shutdown_finishes_inflight_calls_legacy.c \
@@ -5645,8 +4887,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/early_server_shutdown_finishes_inflight_calls_legacy.o: 
-
 
 LIBEND2END_TEST_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_SRC = \
     test/core/end2end/tests/early_server_shutdown_finishes_tags.c \
@@ -5670,8 +4910,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/early_server_shutdown_finishes_tags.o: 
-
 
 LIBEND2END_TEST_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_SRC = \
     test/core/end2end/tests/early_server_shutdown_finishes_tags_legacy.c \
@@ -5695,8 +4933,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/early_server_shutdown_finishes_tags_legacy.o: 
-
 
 LIBEND2END_TEST_EMPTY_BATCH_SRC = \
     test/core/end2end/tests/empty_batch.c \
@@ -5720,8 +4956,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_EMPTY_BATCH_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/empty_batch.o: 
-
 
 LIBEND2END_TEST_GRACEFUL_SERVER_SHUTDOWN_SRC = \
     test/core/end2end/tests/graceful_server_shutdown.c \
@@ -5745,8 +4979,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_GRACEFUL_SERVER_SHUTDOWN_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/graceful_server_shutdown.o: 
-
 
 LIBEND2END_TEST_GRACEFUL_SERVER_SHUTDOWN_LEGACY_SRC = \
     test/core/end2end/tests/graceful_server_shutdown_legacy.c \
@@ -5770,8 +5002,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_GRACEFUL_SERVER_SHUTDOWN_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/graceful_server_shutdown_legacy.o: 
-
 
 LIBEND2END_TEST_INVOKE_LARGE_REQUEST_SRC = \
     test/core/end2end/tests/invoke_large_request.c \
@@ -5795,8 +5025,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_INVOKE_LARGE_REQUEST_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/invoke_large_request.o: 
-
 
 LIBEND2END_TEST_INVOKE_LARGE_REQUEST_LEGACY_SRC = \
     test/core/end2end/tests/invoke_large_request_legacy.c \
@@ -5820,8 +5048,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_INVOKE_LARGE_REQUEST_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/invoke_large_request_legacy.o: 
-
 
 LIBEND2END_TEST_MAX_CONCURRENT_STREAMS_SRC = \
     test/core/end2end/tests/max_concurrent_streams.c \
@@ -5845,8 +5071,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_MAX_CONCURRENT_STREAMS_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/max_concurrent_streams.o: 
-
 
 LIBEND2END_TEST_MAX_CONCURRENT_STREAMS_LEGACY_SRC = \
     test/core/end2end/tests/max_concurrent_streams_legacy.c \
@@ -5870,8 +5094,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_MAX_CONCURRENT_STREAMS_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/max_concurrent_streams_legacy.o: 
-
 
 LIBEND2END_TEST_NO_OP_SRC = \
     test/core/end2end/tests/no_op.c \
@@ -5895,8 +5117,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_NO_OP_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/no_op.o: 
-
 
 LIBEND2END_TEST_NO_OP_LEGACY_SRC = \
     test/core/end2end/tests/no_op_legacy.c \
@@ -5920,8 +5140,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_NO_OP_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/no_op_legacy.o: 
-
 
 LIBEND2END_TEST_PING_PONG_STREAMING_SRC = \
     test/core/end2end/tests/ping_pong_streaming.c \
@@ -5945,8 +5163,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_PING_PONG_STREAMING_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/ping_pong_streaming.o: 
-
 
 LIBEND2END_TEST_PING_PONG_STREAMING_LEGACY_SRC = \
     test/core/end2end/tests/ping_pong_streaming_legacy.c \
@@ -5970,8 +5186,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_PING_PONG_STREAMING_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/ping_pong_streaming_legacy.o: 
-
 
 LIBEND2END_TEST_REGISTERED_CALL_SRC = \
     test/core/end2end/tests/registered_call.c \
@@ -5995,8 +5209,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_REGISTERED_CALL_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/registered_call.o: 
-
 
 LIBEND2END_TEST_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_SRC = \
     test/core/end2end/tests/request_response_with_binary_metadata_and_payload.c \
@@ -6020,8 +5232,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_response_with_binary_metadata_and_payload.o: 
-
 
 LIBEND2END_TEST_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_SRC = \
     test/core/end2end/tests/request_response_with_binary_metadata_and_payload_legacy.c \
@@ -6045,8 +5255,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_response_with_binary_metadata_and_payload_legacy.o: 
-
 
 LIBEND2END_TEST_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_SRC = \
     test/core/end2end/tests/request_response_with_metadata_and_payload.c \
@@ -6070,8 +5278,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_response_with_metadata_and_payload.o: 
-
 
 LIBEND2END_TEST_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_SRC = \
     test/core/end2end/tests/request_response_with_metadata_and_payload_legacy.c \
@@ -6095,8 +5301,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_response_with_metadata_and_payload_legacy.o: 
-
 
 LIBEND2END_TEST_REQUEST_RESPONSE_WITH_PAYLOAD_SRC = \
     test/core/end2end/tests/request_response_with_payload.c \
@@ -6120,8 +5324,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_REQUEST_RESPONSE_WITH_PAYLOAD_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_response_with_payload.o: 
-
 
 LIBEND2END_TEST_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_SRC = \
     test/core/end2end/tests/request_response_with_payload_legacy.c \
@@ -6145,8 +5347,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_response_with_payload_legacy.o: 
-
 
 LIBEND2END_TEST_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_SRC = \
     test/core/end2end/tests/request_response_with_trailing_metadata_and_payload_legacy.c \
@@ -6170,8 +5370,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_response_with_trailing_metadata_and_payload_legacy.o: 
-
 
 LIBEND2END_TEST_REQUEST_WITH_LARGE_METADATA_SRC = \
     test/core/end2end/tests/request_with_large_metadata.c \
@@ -6195,8 +5393,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_REQUEST_WITH_LARGE_METADATA_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_with_large_metadata.o: 
-
 
 LIBEND2END_TEST_REQUEST_WITH_LARGE_METADATA_LEGACY_SRC = \
     test/core/end2end/tests/request_with_large_metadata_legacy.c \
@@ -6220,8 +5416,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_REQUEST_WITH_LARGE_METADATA_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_with_large_metadata_legacy.o: 
-
 
 LIBEND2END_TEST_REQUEST_WITH_PAYLOAD_SRC = \
     test/core/end2end/tests/request_with_payload.c \
@@ -6245,8 +5439,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_REQUEST_WITH_PAYLOAD_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_with_payload.o: 
-
 
 LIBEND2END_TEST_REQUEST_WITH_PAYLOAD_LEGACY_SRC = \
     test/core/end2end/tests/request_with_payload_legacy.c \
@@ -6270,8 +5462,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_REQUEST_WITH_PAYLOAD_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/request_with_payload_legacy.o: 
-
 
 LIBEND2END_TEST_SIMPLE_DELAYED_REQUEST_SRC = \
     test/core/end2end/tests/simple_delayed_request.c \
@@ -6295,8 +5485,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_SIMPLE_DELAYED_REQUEST_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/simple_delayed_request.o: 
-
 
 LIBEND2END_TEST_SIMPLE_DELAYED_REQUEST_LEGACY_SRC = \
     test/core/end2end/tests/simple_delayed_request_legacy.c \
@@ -6320,8 +5508,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_SIMPLE_DELAYED_REQUEST_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/simple_delayed_request_legacy.o: 
-
 
 LIBEND2END_TEST_SIMPLE_REQUEST_SRC = \
     test/core/end2end/tests/simple_request.c \
@@ -6345,8 +5531,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_SIMPLE_REQUEST_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/simple_request.o: 
-
 
 LIBEND2END_TEST_SIMPLE_REQUEST_LEGACY_SRC = \
     test/core/end2end/tests/simple_request_legacy.c \
@@ -6370,8 +5554,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_SIMPLE_REQUEST_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/simple_request_legacy.o: 
-
 
 LIBEND2END_TEST_THREAD_STRESS_SRC = \
     test/core/end2end/tests/thread_stress.c \
@@ -6395,8 +5577,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_THREAD_STRESS_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/thread_stress.o: 
-
 
 LIBEND2END_TEST_THREAD_STRESS_LEGACY_SRC = \
     test/core/end2end/tests/thread_stress_legacy.c \
@@ -6420,8 +5600,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_THREAD_STRESS_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/thread_stress_legacy.o: 
-
 
 LIBEND2END_TEST_WRITES_DONE_HANGS_WITH_PENDING_READ_SRC = \
     test/core/end2end/tests/writes_done_hangs_with_pending_read.c \
@@ -6445,8 +5623,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_WRITES_DONE_HANGS_WITH_PENDING_READ_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/writes_done_hangs_with_pending_read.o: 
-
 
 LIBEND2END_TEST_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_SRC = \
     test/core/end2end/tests/writes_done_hangs_with_pending_read_legacy.c \
@@ -6470,8 +5646,6 @@ ifneq ($(NO_DEPS),true)
 -include $(LIBEND2END_TEST_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_OBJS:.o=.dep)
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/tests/writes_done_hangs_with_pending_read_legacy.o: 
-
 
 LIBEND2END_CERTS_SRC = \
     test/core/end2end/data/test_root_cert.c \
@@ -6491,15 +5665,6 @@ $(LIBDIR)/$(CONFIG)/libend2end_certs.a: openssl_dep_error
 else
 
 
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-test/core/end2end/data/test_root_cert.c: $(OPENSSL_DEP)
-test/core/end2end/data/server1_cert.c: $(OPENSSL_DEP)
-test/core/end2end/data/server1_key.c: $(OPENSSL_DEP)
-endif
-
 $(LIBDIR)/$(CONFIG)/libend2end_certs.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(LIBEND2END_CERTS_OBJS)
 	$(E) "[AR]      Creating $@"
 	$(Q) mkdir -p `dirname $@`
@@ -6520,10 +5685,6 @@ ifneq ($(NO_DEPS),true)
 endif
 endif
 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/data/test_root_cert.o: 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/data/server1_cert.o: 
-$(OBJDIR)/$(CONFIG)/test/core/end2end/data/server1_key.o: 
-
 
 
 # All of the test targets, and protoc plugins
@@ -7087,37 +6248,6 @@ endif
 endif
 
 
-CHTTP2_TRANSPORT_END2END_TEST_SRC = \
-    test/core/transport/chttp2_transport_end2end_test.c \
-
-CHTTP2_TRANSPORT_END2END_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_TRANSPORT_END2END_TEST_SRC))))
-
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_transport_end2end_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_transport_end2end_test: $(CHTTP2_TRANSPORT_END2END_TEST_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) $(CHTTP2_TRANSPORT_END2END_TEST_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)/chttp2_transport_end2end_test
-
-endif
-
-$(OBJDIR)/$(CONFIG)/test/core/transport/chttp2_transport_end2end_test.o:  $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
-
-deps_chttp2_transport_end2end_test: $(CHTTP2_TRANSPORT_END2END_TEST_OBJS:.o=.dep)
-
-ifneq ($(NO_SECURE),true)
-ifneq ($(NO_DEPS),true)
--include $(CHTTP2_TRANSPORT_END2END_TEST_OBJS:.o=.dep)
-endif
-endif
-
-
 DUALSTACK_SOCKET_TEST_SRC = \
     test/core/end2end/dualstack_socket_test.c \
 
@@ -8575,37 +7705,6 @@ endif
 endif
 
 
-METADATA_BUFFER_TEST_SRC = \
-    test/core/channel/metadata_buffer_test.c \
-
-METADATA_BUFFER_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(METADATA_BUFFER_TEST_SRC))))
-
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/metadata_buffer_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/metadata_buffer_test: $(METADATA_BUFFER_TEST_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) $(METADATA_BUFFER_TEST_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)/metadata_buffer_test
-
-endif
-
-$(OBJDIR)/$(CONFIG)/test/core/channel/metadata_buffer_test.o:  $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
-
-deps_metadata_buffer_test: $(METADATA_BUFFER_TEST_OBJS:.o=.dep)
-
-ifneq ($(NO_SECURE),true)
-ifneq ($(NO_DEPS),true)
--include $(METADATA_BUFFER_TEST_OBJS:.o=.dep)
-endif
-endif
-
-
 MULTI_INIT_TEST_SRC = \
     test/core/surface/multi_init_test.c \
 
@@ -20170,5804 +19269,3430 @@ CHTTP2_FULLSTACK_BAD_HOSTNAME_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_BAD_HOSTNAME_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_BAD_HOSTNAME_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_bad_hostname_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_bad_hostname_unsecure_test: $(CHTTP2_FULLSTACK_BAD_HOSTNAME_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_bad_hostname.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_bad_hostname_unsecure_test: $(CHTTP2_FULLSTACK_BAD_HOSTNAME_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_bad_hostname.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_BAD_HOSTNAME_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_bad_hostname.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_bad_hostname_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_BAD_HOSTNAME_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_bad_hostname.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_bad_hostname_unsecure_test
 
 
 deps_chttp2_fullstack_bad_hostname_unsecure_test: $(CHTTP2_FULLSTACK_BAD_HOSTNAME_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_BAD_HOSTNAME_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_unsecure_test
 
 
 deps_chttp2_fullstack_cancel_after_accept_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_and_writes_closed_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_and_writes_closed_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_and_writes_closed_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_and_writes_closed_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_and_writes_closed_unsecure_test
 
 
 deps_chttp2_fullstack_cancel_after_accept_and_writes_closed_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_and_writes_closed_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_and_writes_closed_legacy_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_and_writes_closed_legacy_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_and_writes_closed_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_and_writes_closed_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_cancel_after_accept_and_writes_closed_legacy_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_legacy_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_legacy_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_accept_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_cancel_after_accept_legacy_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_CANCEL_AFTER_INVOKE_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_CANCEL_AFTER_INVOKE_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_invoke_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_invoke_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_invoke_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_invoke_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_invoke_unsecure_test
 
 
 deps_chttp2_fullstack_cancel_after_invoke_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_invoke_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_invoke_legacy_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_invoke_legacy_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_invoke_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_after_invoke_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_cancel_after_invoke_legacy_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_before_invoke_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_before_invoke_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_before_invoke_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_before_invoke_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_before_invoke_unsecure_test
 
 
 deps_chttp2_fullstack_cancel_before_invoke_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_before_invoke_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_before_invoke_legacy_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_before_invoke_legacy_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_before_invoke_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_before_invoke_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_cancel_before_invoke_legacy_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_CANCEL_IN_A_VACUUM_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_CANCEL_IN_A_VACUUM_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_in_a_vacuum_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_in_a_vacuum_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_in_a_vacuum_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_in_a_vacuum_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_in_a_vacuum_unsecure_test
 
 
 deps_chttp2_fullstack_cancel_in_a_vacuum_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_in_a_vacuum_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_in_a_vacuum_legacy_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_in_a_vacuum_legacy_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_in_a_vacuum_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_cancel_in_a_vacuum_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_cancel_in_a_vacuum_legacy_unsecure_test: $(CHTTP2_FULLSTACK_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_census_simple_request_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_census_simple_request_unsecure_test: $(CHTTP2_FULLSTACK_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_census_simple_request_unsecure_test: $(CHTTP2_FULLSTACK_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_census_simple_request_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_census_simple_request_unsecure_test
 
 
 deps_chttp2_fullstack_census_simple_request_unsecure_test: $(CHTTP2_FULLSTACK_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_census_simple_request_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_census_simple_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_census_simple_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_census_simple_request_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_census_simple_request_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_census_simple_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_DISAPPEARING_SERVER_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_DISAPPEARING_SERVER_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_disappearing_server_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_disappearing_server_unsecure_test: $(CHTTP2_FULLSTACK_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_disappearing_server_unsecure_test: $(CHTTP2_FULLSTACK_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_disappearing_server_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_disappearing_server_unsecure_test
 
 
 deps_chttp2_fullstack_disappearing_server_unsecure_test: $(CHTTP2_FULLSTACK_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_disappearing_server_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_disappearing_server_legacy_unsecure_test: $(CHTTP2_FULLSTACK_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_disappearing_server_legacy_unsecure_test: $(CHTTP2_FULLSTACK_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_disappearing_server_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_disappearing_server_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_disappearing_server_legacy_unsecure_test: $(CHTTP2_FULLSTACK_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_unsecure_test: $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_unsecure_test: $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_unsecure_test
 
 
 deps_chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_unsecure_test: $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test: $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test: $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test: $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_tags_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_tags_unsecure_test: $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_tags_unsecure_test: $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_tags_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_tags_unsecure_test
 
 
 deps_chttp2_fullstack_early_server_shutdown_finishes_tags_unsecure_test: $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_tags_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_tags_legacy_unsecure_test: $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_tags_legacy_unsecure_test: $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_tags_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_early_server_shutdown_finishes_tags_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_early_server_shutdown_finishes_tags_legacy_unsecure_test: $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_EMPTY_BATCH_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_EMPTY_BATCH_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_EMPTY_BATCH_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_empty_batch_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_empty_batch_unsecure_test: $(CHTTP2_FULLSTACK_EMPTY_BATCH_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_empty_batch.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_empty_batch_unsecure_test: $(CHTTP2_FULLSTACK_EMPTY_BATCH_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_empty_batch.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_EMPTY_BATCH_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_empty_batch.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_empty_batch_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_EMPTY_BATCH_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_empty_batch.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_empty_batch_unsecure_test
 
 
 deps_chttp2_fullstack_empty_batch_unsecure_test: $(CHTTP2_FULLSTACK_EMPTY_BATCH_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_EMPTY_BATCH_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_graceful_server_shutdown_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_graceful_server_shutdown_unsecure_test: $(CHTTP2_FULLSTACK_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_graceful_server_shutdown_unsecure_test: $(CHTTP2_FULLSTACK_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_graceful_server_shutdown_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_graceful_server_shutdown_unsecure_test
 
 
 deps_chttp2_fullstack_graceful_server_shutdown_unsecure_test: $(CHTTP2_FULLSTACK_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_graceful_server_shutdown_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_graceful_server_shutdown_legacy_unsecure_test: $(CHTTP2_FULLSTACK_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_graceful_server_shutdown_legacy_unsecure_test: $(CHTTP2_FULLSTACK_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_graceful_server_shutdown_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_graceful_server_shutdown_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_graceful_server_shutdown_legacy_unsecure_test: $(CHTTP2_FULLSTACK_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_INVOKE_LARGE_REQUEST_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_INVOKE_LARGE_REQUEST_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_invoke_large_request_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_invoke_large_request_unsecure_test: $(CHTTP2_FULLSTACK_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_invoke_large_request_unsecure_test: $(CHTTP2_FULLSTACK_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_invoke_large_request_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_invoke_large_request_unsecure_test
 
 
 deps_chttp2_fullstack_invoke_large_request_unsecure_test: $(CHTTP2_FULLSTACK_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_invoke_large_request_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_invoke_large_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_invoke_large_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_invoke_large_request_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_invoke_large_request_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_invoke_large_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_max_concurrent_streams_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_max_concurrent_streams_unsecure_test: $(CHTTP2_FULLSTACK_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_max_concurrent_streams_unsecure_test: $(CHTTP2_FULLSTACK_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_max_concurrent_streams_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_max_concurrent_streams_unsecure_test
 
 
 deps_chttp2_fullstack_max_concurrent_streams_unsecure_test: $(CHTTP2_FULLSTACK_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_max_concurrent_streams_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_max_concurrent_streams_legacy_unsecure_test: $(CHTTP2_FULLSTACK_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_max_concurrent_streams_legacy_unsecure_test: $(CHTTP2_FULLSTACK_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_max_concurrent_streams_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_max_concurrent_streams_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_max_concurrent_streams_legacy_unsecure_test: $(CHTTP2_FULLSTACK_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_NO_OP_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_NO_OP_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_NO_OP_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_no_op_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_no_op_unsecure_test: $(CHTTP2_FULLSTACK_NO_OP_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_no_op_unsecure_test: $(CHTTP2_FULLSTACK_NO_OP_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_NO_OP_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_no_op_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_NO_OP_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_no_op_unsecure_test
 
 
 deps_chttp2_fullstack_no_op_unsecure_test: $(CHTTP2_FULLSTACK_NO_OP_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_NO_OP_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_NO_OP_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_NO_OP_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_NO_OP_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_no_op_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_no_op_legacy_unsecure_test: $(CHTTP2_FULLSTACK_NO_OP_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_no_op_legacy_unsecure_test: $(CHTTP2_FULLSTACK_NO_OP_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_NO_OP_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_no_op_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_NO_OP_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_no_op_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_no_op_legacy_unsecure_test: $(CHTTP2_FULLSTACK_NO_OP_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_NO_OP_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_PING_PONG_STREAMING_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_PING_PONG_STREAMING_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_PING_PONG_STREAMING_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_ping_pong_streaming_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_ping_pong_streaming_unsecure_test: $(CHTTP2_FULLSTACK_PING_PONG_STREAMING_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_ping_pong_streaming_unsecure_test: $(CHTTP2_FULLSTACK_PING_PONG_STREAMING_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_PING_PONG_STREAMING_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_ping_pong_streaming_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_PING_PONG_STREAMING_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_ping_pong_streaming_unsecure_test
 
 
 deps_chttp2_fullstack_ping_pong_streaming_unsecure_test: $(CHTTP2_FULLSTACK_PING_PONG_STREAMING_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_PING_PONG_STREAMING_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_ping_pong_streaming_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_ping_pong_streaming_legacy_unsecure_test: $(CHTTP2_FULLSTACK_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_ping_pong_streaming_legacy_unsecure_test: $(CHTTP2_FULLSTACK_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_ping_pong_streaming_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_ping_pong_streaming_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_ping_pong_streaming_legacy_unsecure_test: $(CHTTP2_FULLSTACK_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_REGISTERED_CALL_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_REGISTERED_CALL_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_REGISTERED_CALL_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_registered_call_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_registered_call_unsecure_test: $(CHTTP2_FULLSTACK_REGISTERED_CALL_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_registered_call.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_registered_call_unsecure_test: $(CHTTP2_FULLSTACK_REGISTERED_CALL_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_registered_call.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REGISTERED_CALL_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_registered_call.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_registered_call_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REGISTERED_CALL_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_registered_call.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_registered_call_unsecure_test
 
 
 deps_chttp2_fullstack_registered_call_unsecure_test: $(CHTTP2_FULLSTACK_REGISTERED_CALL_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_REGISTERED_CALL_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_binary_metadata_and_payload_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_binary_metadata_and_payload_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_binary_metadata_and_payload_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_binary_metadata_and_payload_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_binary_metadata_and_payload_unsecure_test
 
 
 deps_chttp2_fullstack_request_response_with_binary_metadata_and_payload_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_binary_metadata_and_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_binary_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_binary_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_binary_metadata_and_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_binary_metadata_and_payload_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_request_response_with_binary_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_metadata_and_payload_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_metadata_and_payload_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_metadata_and_payload_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_metadata_and_payload_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_metadata_and_payload_unsecure_test
 
 
 deps_chttp2_fullstack_request_response_with_metadata_and_payload_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_metadata_and_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_metadata_and_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_metadata_and_payload_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_request_response_with_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_payload_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_payload_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_payload_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_payload_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_payload_unsecure_test
 
 
 deps_chttp2_fullstack_request_response_with_payload_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_payload_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_request_response_with_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_trailing_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_trailing_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_trailing_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_trailing_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_large_metadata_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_large_metadata_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_large_metadata_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_large_metadata_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_large_metadata_unsecure_test
 
 
 deps_chttp2_fullstack_request_with_large_metadata_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_large_metadata_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_large_metadata_legacy_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_large_metadata_legacy_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_large_metadata_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_large_metadata_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_request_with_large_metadata_legacy_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_payload_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_payload_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_payload_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_payload_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_payload_unsecure_test
 
 
 deps_chttp2_fullstack_request_with_payload_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_request_with_payload_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_request_with_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_delayed_request_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_delayed_request_unsecure_test: $(CHTTP2_FULLSTACK_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_delayed_request_unsecure_test: $(CHTTP2_FULLSTACK_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_delayed_request_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_delayed_request_unsecure_test
 
 
 deps_chttp2_fullstack_simple_delayed_request_unsecure_test: $(CHTTP2_FULLSTACK_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_delayed_request_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_delayed_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_delayed_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_delayed_request_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_delayed_request_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_simple_delayed_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_SIMPLE_REQUEST_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_SIMPLE_REQUEST_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_SIMPLE_REQUEST_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_request_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_request_unsecure_test: $(CHTTP2_FULLSTACK_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_request_unsecure_test: $(CHTTP2_FULLSTACK_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_request_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_request_unsecure_test
 
 
 deps_chttp2_fullstack_simple_request_unsecure_test: $(CHTTP2_FULLSTACK_SIMPLE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_SIMPLE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_request_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_request_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_simple_request_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_simple_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_THREAD_STRESS_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_THREAD_STRESS_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_THREAD_STRESS_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_thread_stress_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_thread_stress_unsecure_test: $(CHTTP2_FULLSTACK_THREAD_STRESS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_thread_stress_unsecure_test: $(CHTTP2_FULLSTACK_THREAD_STRESS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_THREAD_STRESS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_thread_stress_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_THREAD_STRESS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_thread_stress_unsecure_test
 
 
 deps_chttp2_fullstack_thread_stress_unsecure_test: $(CHTTP2_FULLSTACK_THREAD_STRESS_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_THREAD_STRESS_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_THREAD_STRESS_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_THREAD_STRESS_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_thread_stress_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_thread_stress_legacy_unsecure_test: $(CHTTP2_FULLSTACK_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_thread_stress_legacy_unsecure_test: $(CHTTP2_FULLSTACK_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_thread_stress_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_thread_stress_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_thread_stress_legacy_unsecure_test: $(CHTTP2_FULLSTACK_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_writes_done_hangs_with_pending_read_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_writes_done_hangs_with_pending_read_unsecure_test: $(CHTTP2_FULLSTACK_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_writes_done_hangs_with_pending_read_unsecure_test: $(CHTTP2_FULLSTACK_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_writes_done_hangs_with_pending_read_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_writes_done_hangs_with_pending_read_unsecure_test
 
 
 deps_chttp2_fullstack_writes_done_hangs_with_pending_read_unsecure_test: $(CHTTP2_FULLSTACK_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_writes_done_hangs_with_pending_read_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_writes_done_hangs_with_pending_read_legacy_unsecure_test: $(CHTTP2_FULLSTACK_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_writes_done_hangs_with_pending_read_legacy_unsecure_test: $(CHTTP2_FULLSTACK_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_writes_done_hangs_with_pending_read_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_writes_done_hangs_with_pending_read_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_writes_done_hangs_with_pending_read_legacy_unsecure_test: $(CHTTP2_FULLSTACK_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_BAD_HOSTNAME_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_BAD_HOSTNAME_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_BAD_HOSTNAME_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_bad_hostname_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_bad_hostname_unsecure_test: $(CHTTP2_FULLSTACK_UDS_BAD_HOSTNAME_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_bad_hostname.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_bad_hostname_unsecure_test: $(CHTTP2_FULLSTACK_UDS_BAD_HOSTNAME_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_bad_hostname.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_BAD_HOSTNAME_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_bad_hostname.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_bad_hostname_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_BAD_HOSTNAME_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_bad_hostname.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_bad_hostname_unsecure_test
 
 
 deps_chttp2_fullstack_uds_bad_hostname_unsecure_test: $(CHTTP2_FULLSTACK_UDS_BAD_HOSTNAME_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_BAD_HOSTNAME_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_unsecure_test
 
 
 deps_chttp2_fullstack_uds_cancel_after_accept_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_unsecure_test
 
 
 deps_chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_cancel_after_accept_and_writes_closed_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_accept_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_cancel_after_accept_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_INVOKE_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_INVOKE_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_invoke_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_invoke_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_invoke_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_invoke_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_invoke_unsecure_test
 
 
 deps_chttp2_fullstack_uds_cancel_after_invoke_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_invoke_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_invoke_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_invoke_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_invoke_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_after_invoke_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_cancel_after_invoke_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_before_invoke_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_before_invoke_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_before_invoke_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_before_invoke_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_before_invoke_unsecure_test
 
 
 deps_chttp2_fullstack_uds_cancel_before_invoke_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_before_invoke_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_before_invoke_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
-	$(E) "[LD]      Linking $@"
-	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_before_invoke_legacy_unsecure_test
-
-endif
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_before_invoke_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+	$(E) "[LD]      Linking $@"
+	$(Q) mkdir -p `dirname $@`
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_before_invoke_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_cancel_before_invoke_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_CANCEL_IN_A_VACUUM_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_CANCEL_IN_A_VACUUM_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_in_a_vacuum_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_in_a_vacuum_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_in_a_vacuum_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_in_a_vacuum_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_in_a_vacuum_unsecure_test
 
 
 deps_chttp2_fullstack_uds_cancel_in_a_vacuum_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_in_a_vacuum_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_in_a_vacuum_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_in_a_vacuum_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_in_a_vacuum_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_cancel_in_a_vacuum_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_cancel_in_a_vacuum_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_census_simple_request_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_census_simple_request_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_census_simple_request_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_census_simple_request_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_census_simple_request_unsecure_test
 
 
 deps_chttp2_fullstack_uds_census_simple_request_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_census_simple_request_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_census_simple_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_census_simple_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_census_simple_request_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_census_simple_request_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_census_simple_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_DISAPPEARING_SERVER_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_DISAPPEARING_SERVER_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_disappearing_server_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_disappearing_server_unsecure_test: $(CHTTP2_FULLSTACK_UDS_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_disappearing_server_unsecure_test: $(CHTTP2_FULLSTACK_UDS_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_disappearing_server_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_disappearing_server_unsecure_test
 
 
 deps_chttp2_fullstack_uds_disappearing_server_unsecure_test: $(CHTTP2_FULLSTACK_UDS_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_disappearing_server_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_disappearing_server_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_disappearing_server_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_disappearing_server_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_disappearing_server_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_disappearing_server_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_unsecure_test: $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_unsecure_test: $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_unsecure_test
 
 
 deps_chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_unsecure_test: $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_tags_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_tags_unsecure_test: $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_tags_unsecure_test: $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_tags_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_tags_unsecure_test
 
 
 deps_chttp2_fullstack_uds_early_server_shutdown_finishes_tags_unsecure_test: $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_tags_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_tags_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_tags_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_tags_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_early_server_shutdown_finishes_tags_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_early_server_shutdown_finishes_tags_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_EMPTY_BATCH_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_EMPTY_BATCH_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_EMPTY_BATCH_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_empty_batch_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_empty_batch_unsecure_test: $(CHTTP2_FULLSTACK_UDS_EMPTY_BATCH_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_empty_batch.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_empty_batch_unsecure_test: $(CHTTP2_FULLSTACK_UDS_EMPTY_BATCH_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_empty_batch.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_EMPTY_BATCH_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_empty_batch.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_empty_batch_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_EMPTY_BATCH_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_empty_batch.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_empty_batch_unsecure_test
 
 
 deps_chttp2_fullstack_uds_empty_batch_unsecure_test: $(CHTTP2_FULLSTACK_UDS_EMPTY_BATCH_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_EMPTY_BATCH_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_graceful_server_shutdown_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_graceful_server_shutdown_unsecure_test: $(CHTTP2_FULLSTACK_UDS_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_graceful_server_shutdown_unsecure_test: $(CHTTP2_FULLSTACK_UDS_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_graceful_server_shutdown_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_graceful_server_shutdown_unsecure_test
 
 
 deps_chttp2_fullstack_uds_graceful_server_shutdown_unsecure_test: $(CHTTP2_FULLSTACK_UDS_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_graceful_server_shutdown_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_graceful_server_shutdown_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_graceful_server_shutdown_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_graceful_server_shutdown_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_graceful_server_shutdown_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_graceful_server_shutdown_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_INVOKE_LARGE_REQUEST_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_INVOKE_LARGE_REQUEST_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_invoke_large_request_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_invoke_large_request_unsecure_test: $(CHTTP2_FULLSTACK_UDS_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_invoke_large_request_unsecure_test: $(CHTTP2_FULLSTACK_UDS_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_invoke_large_request_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_invoke_large_request_unsecure_test
 
 
 deps_chttp2_fullstack_uds_invoke_large_request_unsecure_test: $(CHTTP2_FULLSTACK_UDS_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_invoke_large_request_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_invoke_large_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_invoke_large_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_invoke_large_request_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_invoke_large_request_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_invoke_large_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_max_concurrent_streams_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_max_concurrent_streams_unsecure_test: $(CHTTP2_FULLSTACK_UDS_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_max_concurrent_streams_unsecure_test: $(CHTTP2_FULLSTACK_UDS_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_max_concurrent_streams_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_max_concurrent_streams_unsecure_test
 
 
 deps_chttp2_fullstack_uds_max_concurrent_streams_unsecure_test: $(CHTTP2_FULLSTACK_UDS_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_max_concurrent_streams_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_max_concurrent_streams_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_max_concurrent_streams_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_max_concurrent_streams_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_max_concurrent_streams_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_max_concurrent_streams_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_NO_OP_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_NO_OP_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_NO_OP_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_no_op_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_no_op_unsecure_test: $(CHTTP2_FULLSTACK_UDS_NO_OP_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_no_op_unsecure_test: $(CHTTP2_FULLSTACK_UDS_NO_OP_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_NO_OP_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_no_op_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_NO_OP_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_no_op_unsecure_test
 
 
 deps_chttp2_fullstack_uds_no_op_unsecure_test: $(CHTTP2_FULLSTACK_UDS_NO_OP_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_NO_OP_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_NO_OP_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_NO_OP_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_NO_OP_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_no_op_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_no_op_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_NO_OP_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_no_op_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_NO_OP_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_NO_OP_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_no_op_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_NO_OP_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_no_op_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_no_op_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_NO_OP_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_NO_OP_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_PING_PONG_STREAMING_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_PING_PONG_STREAMING_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_PING_PONG_STREAMING_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_ping_pong_streaming_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_ping_pong_streaming_unsecure_test: $(CHTTP2_FULLSTACK_UDS_PING_PONG_STREAMING_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_ping_pong_streaming_unsecure_test: $(CHTTP2_FULLSTACK_UDS_PING_PONG_STREAMING_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_PING_PONG_STREAMING_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_ping_pong_streaming_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_PING_PONG_STREAMING_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_ping_pong_streaming_unsecure_test
 
 
 deps_chttp2_fullstack_uds_ping_pong_streaming_unsecure_test: $(CHTTP2_FULLSTACK_UDS_PING_PONG_STREAMING_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_PING_PONG_STREAMING_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_ping_pong_streaming_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_ping_pong_streaming_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_ping_pong_streaming_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_ping_pong_streaming_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_ping_pong_streaming_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_ping_pong_streaming_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_REGISTERED_CALL_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_REGISTERED_CALL_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_REGISTERED_CALL_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_registered_call_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_registered_call_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REGISTERED_CALL_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_registered_call.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_registered_call_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REGISTERED_CALL_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_registered_call.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REGISTERED_CALL_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_registered_call.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_registered_call_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REGISTERED_CALL_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_registered_call.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_registered_call_unsecure_test
 
 
 deps_chttp2_fullstack_uds_registered_call_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REGISTERED_CALL_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_REGISTERED_CALL_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
-	$(E) "[LD]      Linking $@"
-	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_unsecure_test
-
-endif
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+	$(E) "[LD]      Linking $@"
+	$(Q) mkdir -p `dirname $@`
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_unsecure_test
 
 
 deps_chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_request_response_with_binary_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_metadata_and_payload_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_metadata_and_payload_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_metadata_and_payload_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_metadata_and_payload_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_metadata_and_payload_unsecure_test
 
 
 deps_chttp2_fullstack_uds_request_response_with_metadata_and_payload_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_metadata_and_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_metadata_and_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_metadata_and_payload_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_request_response_with_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_payload_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_payload_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_payload_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_payload_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_payload_unsecure_test
 
 
 deps_chttp2_fullstack_uds_request_response_with_payload_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_payload_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_request_response_with_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_trailing_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_trailing_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_trailing_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_trailing_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_large_metadata_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_large_metadata_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_large_metadata_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_large_metadata_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_large_metadata_unsecure_test
 
 
 deps_chttp2_fullstack_uds_request_with_large_metadata_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_large_metadata_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_large_metadata_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_large_metadata_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_large_metadata_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_large_metadata_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_request_with_large_metadata_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_payload_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_payload_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_payload_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_payload_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_payload_unsecure_test
 
 
 deps_chttp2_fullstack_uds_request_with_payload_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_request_with_payload_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_request_with_payload_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_delayed_request_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_delayed_request_unsecure_test: $(CHTTP2_FULLSTACK_UDS_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_delayed_request_unsecure_test: $(CHTTP2_FULLSTACK_UDS_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_delayed_request_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_delayed_request_unsecure_test
 
 
 deps_chttp2_fullstack_uds_simple_delayed_request_unsecure_test: $(CHTTP2_FULLSTACK_UDS_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_delayed_request_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_delayed_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_delayed_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_delayed_request_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_delayed_request_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_simple_delayed_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_SIMPLE_REQUEST_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_SIMPLE_REQUEST_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_request_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_request_unsecure_test: $(CHTTP2_FULLSTACK_UDS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_request_unsecure_test: $(CHTTP2_FULLSTACK_UDS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_request_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_request_unsecure_test
 
 
 deps_chttp2_fullstack_uds_simple_request_unsecure_test: $(CHTTP2_FULLSTACK_UDS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_request_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_request_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_simple_request_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_simple_request_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_THREAD_STRESS_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_THREAD_STRESS_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_THREAD_STRESS_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_thread_stress_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_thread_stress_unsecure_test: $(CHTTP2_FULLSTACK_UDS_THREAD_STRESS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_thread_stress_unsecure_test: $(CHTTP2_FULLSTACK_UDS_THREAD_STRESS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_THREAD_STRESS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_thread_stress_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_THREAD_STRESS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_thread_stress_unsecure_test
 
 
 deps_chttp2_fullstack_uds_thread_stress_unsecure_test: $(CHTTP2_FULLSTACK_UDS_THREAD_STRESS_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_THREAD_STRESS_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_THREAD_STRESS_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_THREAD_STRESS_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_thread_stress_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_thread_stress_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_thread_stress_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_thread_stress_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_thread_stress_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_thread_stress_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_writes_done_hangs_with_pending_read_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_writes_done_hangs_with_pending_read_unsecure_test: $(CHTTP2_FULLSTACK_UDS_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_writes_done_hangs_with_pending_read_unsecure_test: $(CHTTP2_FULLSTACK_UDS_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_writes_done_hangs_with_pending_read_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_writes_done_hangs_with_pending_read_unsecure_test
 
 
 deps_chttp2_fullstack_uds_writes_done_hangs_with_pending_read_unsecure_test: $(CHTTP2_FULLSTACK_UDS_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_FULLSTACK_UDS_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_FULLSTACK_UDS_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_FULLSTACK_UDS_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_writes_done_hangs_with_pending_read_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_writes_done_hangs_with_pending_read_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_writes_done_hangs_with_pending_read_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_writes_done_hangs_with_pending_read_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_FULLSTACK_UDS_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_fullstack_uds.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_fullstack_uds_writes_done_hangs_with_pending_read_legacy_unsecure_test
 
 
 deps_chttp2_fullstack_uds_writes_done_hangs_with_pending_read_legacy_unsecure_test: $(CHTTP2_FULLSTACK_UDS_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_FULLSTACK_UDS_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_BAD_HOSTNAME_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_BAD_HOSTNAME_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_BAD_HOSTNAME_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_bad_hostname_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_bad_hostname_unsecure_test: $(CHTTP2_SOCKET_PAIR_BAD_HOSTNAME_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_bad_hostname.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_bad_hostname_unsecure_test: $(CHTTP2_SOCKET_PAIR_BAD_HOSTNAME_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_bad_hostname.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_BAD_HOSTNAME_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_bad_hostname.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_bad_hostname_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_BAD_HOSTNAME_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_bad_hostname.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_bad_hostname_unsecure_test
 
 
 deps_chttp2_socket_pair_bad_hostname_unsecure_test: $(CHTTP2_SOCKET_PAIR_BAD_HOSTNAME_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_BAD_HOSTNAME_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_unsecure_test
 
 
 deps_chttp2_socket_pair_cancel_after_accept_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_and_writes_closed_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_and_writes_closed_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_and_writes_closed_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_and_writes_closed_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_and_writes_closed_unsecure_test
 
 
 deps_chttp2_socket_pair_cancel_after_accept_and_writes_closed_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_and_writes_closed_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_and_writes_closed_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_and_writes_closed_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_and_writes_closed_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_and_writes_closed_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_cancel_after_accept_and_writes_closed_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_accept_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_cancel_after_accept_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_CANCEL_AFTER_INVOKE_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_INVOKE_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_invoke_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_invoke_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_invoke_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_invoke_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_invoke_unsecure_test
 
 
 deps_chttp2_socket_pair_cancel_after_invoke_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_invoke_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_invoke_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_invoke_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_invoke_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_after_invoke_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_cancel_after_invoke_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_before_invoke_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_before_invoke_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_before_invoke_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_before_invoke_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_before_invoke_unsecure_test
 
 
 deps_chttp2_socket_pair_cancel_before_invoke_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_before_invoke_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_before_invoke_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_before_invoke_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_before_invoke_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_before_invoke_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_cancel_before_invoke_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_CANCEL_IN_A_VACUUM_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_CANCEL_IN_A_VACUUM_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_in_a_vacuum_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_in_a_vacuum_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_in_a_vacuum_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_in_a_vacuum_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_in_a_vacuum_unsecure_test
 
 
 deps_chttp2_socket_pair_cancel_in_a_vacuum_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_in_a_vacuum_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_in_a_vacuum_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_in_a_vacuum_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_in_a_vacuum_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_cancel_in_a_vacuum_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_cancel_in_a_vacuum_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_census_simple_request_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_census_simple_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_census_simple_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_census_simple_request_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_census_simple_request_unsecure_test
 
 
 deps_chttp2_socket_pair_census_simple_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_census_simple_request_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_census_simple_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_census_simple_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_census_simple_request_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_census_simple_request_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_census_simple_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_DISAPPEARING_SERVER_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_DISAPPEARING_SERVER_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_disappearing_server_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_disappearing_server_unsecure_test: $(CHTTP2_SOCKET_PAIR_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_disappearing_server_unsecure_test: $(CHTTP2_SOCKET_PAIR_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_disappearing_server_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_disappearing_server_unsecure_test
 
 
 deps_chttp2_socket_pair_disappearing_server_unsecure_test: $(CHTTP2_SOCKET_PAIR_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_disappearing_server_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_disappearing_server_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_disappearing_server_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_disappearing_server_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_disappearing_server_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_disappearing_server_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_unsecure_test: $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_unsecure_test: $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_unsecure_test
 
 
 deps_chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_unsecure_test: $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_tags_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_tags_unsecure_test: $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_tags_unsecure_test: $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_tags_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_tags_unsecure_test
 
 
 deps_chttp2_socket_pair_early_server_shutdown_finishes_tags_unsecure_test: $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_tags_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_tags_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_tags_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_tags_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_early_server_shutdown_finishes_tags_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_early_server_shutdown_finishes_tags_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_EMPTY_BATCH_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_EMPTY_BATCH_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_EMPTY_BATCH_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_empty_batch_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_empty_batch_unsecure_test: $(CHTTP2_SOCKET_PAIR_EMPTY_BATCH_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_empty_batch.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_empty_batch_unsecure_test: $(CHTTP2_SOCKET_PAIR_EMPTY_BATCH_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_empty_batch.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_EMPTY_BATCH_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_empty_batch.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_empty_batch_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_EMPTY_BATCH_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_empty_batch.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_empty_batch_unsecure_test
 
 
 deps_chttp2_socket_pair_empty_batch_unsecure_test: $(CHTTP2_SOCKET_PAIR_EMPTY_BATCH_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_EMPTY_BATCH_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_graceful_server_shutdown_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_graceful_server_shutdown_unsecure_test: $(CHTTP2_SOCKET_PAIR_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_graceful_server_shutdown_unsecure_test: $(CHTTP2_SOCKET_PAIR_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_graceful_server_shutdown_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_graceful_server_shutdown_unsecure_test
 
 
 deps_chttp2_socket_pair_graceful_server_shutdown_unsecure_test: $(CHTTP2_SOCKET_PAIR_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_graceful_server_shutdown_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_graceful_server_shutdown_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_graceful_server_shutdown_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_graceful_server_shutdown_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_graceful_server_shutdown_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_graceful_server_shutdown_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_INVOKE_LARGE_REQUEST_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_INVOKE_LARGE_REQUEST_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_invoke_large_request_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_invoke_large_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_invoke_large_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_invoke_large_request_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_invoke_large_request_unsecure_test
 
 
 deps_chttp2_socket_pair_invoke_large_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_invoke_large_request_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_invoke_large_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_invoke_large_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_invoke_large_request_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_invoke_large_request_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_invoke_large_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_max_concurrent_streams_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_max_concurrent_streams_unsecure_test: $(CHTTP2_SOCKET_PAIR_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_max_concurrent_streams_unsecure_test: $(CHTTP2_SOCKET_PAIR_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_max_concurrent_streams_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_max_concurrent_streams_unsecure_test
 
 
 deps_chttp2_socket_pair_max_concurrent_streams_unsecure_test: $(CHTTP2_SOCKET_PAIR_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_max_concurrent_streams_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_max_concurrent_streams_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_max_concurrent_streams_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_max_concurrent_streams_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_max_concurrent_streams_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_max_concurrent_streams_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_NO_OP_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_NO_OP_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_NO_OP_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_no_op_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_no_op_unsecure_test: $(CHTTP2_SOCKET_PAIR_NO_OP_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_no_op_unsecure_test: $(CHTTP2_SOCKET_PAIR_NO_OP_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_NO_OP_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_no_op_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_NO_OP_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_no_op_unsecure_test
 
 
 deps_chttp2_socket_pair_no_op_unsecure_test: $(CHTTP2_SOCKET_PAIR_NO_OP_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_NO_OP_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_NO_OP_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_NO_OP_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_NO_OP_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_no_op_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_NO_OP_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+	$(E) "[LD]      Linking $@"
+	$(Q) mkdir -p `dirname $@`
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_NO_OP_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_no_op_legacy_unsecure_test
 
-# You can't build secure targets if you don't have OpenSSL with ALPN.
 
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_no_op_legacy_unsecure_test: openssl_dep_error
+deps_chttp2_socket_pair_no_op_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_NO_OP_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_no_op_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_NO_OP_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
-	$(E) "[LD]      Linking $@"
-	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_NO_OP_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_no_op_legacy_unsecure_test
-
-endif
-
-
-deps_chttp2_socket_pair_no_op_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_NO_OP_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
-
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_NO_OP_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_PING_PONG_STREAMING_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_PING_PONG_STREAMING_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_PING_PONG_STREAMING_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_ping_pong_streaming_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_ping_pong_streaming_unsecure_test: $(CHTTP2_SOCKET_PAIR_PING_PONG_STREAMING_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_ping_pong_streaming_unsecure_test: $(CHTTP2_SOCKET_PAIR_PING_PONG_STREAMING_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_PING_PONG_STREAMING_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_ping_pong_streaming_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_PING_PONG_STREAMING_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_ping_pong_streaming_unsecure_test
 
 
 deps_chttp2_socket_pair_ping_pong_streaming_unsecure_test: $(CHTTP2_SOCKET_PAIR_PING_PONG_STREAMING_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_PING_PONG_STREAMING_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_ping_pong_streaming_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_ping_pong_streaming_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_ping_pong_streaming_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_ping_pong_streaming_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_ping_pong_streaming_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_ping_pong_streaming_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_REGISTERED_CALL_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_REGISTERED_CALL_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_REGISTERED_CALL_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_registered_call_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_registered_call_unsecure_test: $(CHTTP2_SOCKET_PAIR_REGISTERED_CALL_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_registered_call.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_registered_call_unsecure_test: $(CHTTP2_SOCKET_PAIR_REGISTERED_CALL_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_registered_call.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REGISTERED_CALL_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_registered_call.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_registered_call_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REGISTERED_CALL_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_registered_call.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_registered_call_unsecure_test
 
 
 deps_chttp2_socket_pair_registered_call_unsecure_test: $(CHTTP2_SOCKET_PAIR_REGISTERED_CALL_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_REGISTERED_CALL_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_binary_metadata_and_payload_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_binary_metadata_and_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_binary_metadata_and_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_binary_metadata_and_payload_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_binary_metadata_and_payload_unsecure_test
 
 
 deps_chttp2_socket_pair_request_response_with_binary_metadata_and_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_binary_metadata_and_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_binary_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_binary_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_binary_metadata_and_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_binary_metadata_and_payload_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_request_response_with_binary_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_metadata_and_payload_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_metadata_and_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_metadata_and_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_metadata_and_payload_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_metadata_and_payload_unsecure_test
 
 
 deps_chttp2_socket_pair_request_response_with_metadata_and_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_metadata_and_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_metadata_and_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_metadata_and_payload_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_request_response_with_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_payload_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_payload_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_payload_unsecure_test
 
 
 deps_chttp2_socket_pair_request_response_with_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_payload_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_request_response_with_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_trailing_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_trailing_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_trailing_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_trailing_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_large_metadata_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_large_metadata_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_large_metadata_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_large_metadata_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_large_metadata_unsecure_test
 
 
 deps_chttp2_socket_pair_request_with_large_metadata_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_large_metadata_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_large_metadata_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_large_metadata_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_large_metadata_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_large_metadata_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_request_with_large_metadata_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_payload_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_payload_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_payload_unsecure_test
 
 
 deps_chttp2_socket_pair_request_with_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_request_with_payload_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_request_with_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_delayed_request_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_delayed_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_delayed_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_delayed_request_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_delayed_request_unsecure_test
 
 
 deps_chttp2_socket_pair_simple_delayed_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_delayed_request_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_delayed_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_delayed_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_delayed_request_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_delayed_request_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_simple_delayed_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_SIMPLE_REQUEST_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_SIMPLE_REQUEST_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_SIMPLE_REQUEST_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_request_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_request_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_request_unsecure_test
 
 
 deps_chttp2_socket_pair_simple_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_SIMPLE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_SIMPLE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_request_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_request_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_simple_request_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_simple_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_THREAD_STRESS_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_THREAD_STRESS_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_THREAD_STRESS_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_thread_stress_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_thread_stress_unsecure_test: $(CHTTP2_SOCKET_PAIR_THREAD_STRESS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_thread_stress_unsecure_test: $(CHTTP2_SOCKET_PAIR_THREAD_STRESS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_THREAD_STRESS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_thread_stress_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_THREAD_STRESS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_thread_stress_unsecure_test
 
 
 deps_chttp2_socket_pair_thread_stress_unsecure_test: $(CHTTP2_SOCKET_PAIR_THREAD_STRESS_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_THREAD_STRESS_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_THREAD_STRESS_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_THREAD_STRESS_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_thread_stress_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_thread_stress_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_thread_stress_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_thread_stress_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_thread_stress_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_thread_stress_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_writes_done_hangs_with_pending_read_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_writes_done_hangs_with_pending_read_unsecure_test: $(CHTTP2_SOCKET_PAIR_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_writes_done_hangs_with_pending_read_unsecure_test: $(CHTTP2_SOCKET_PAIR_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_writes_done_hangs_with_pending_read_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_writes_done_hangs_with_pending_read_unsecure_test
 
 
 deps_chttp2_socket_pair_writes_done_hangs_with_pending_read_unsecure_test: $(CHTTP2_SOCKET_PAIR_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_writes_done_hangs_with_pending_read_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_writes_done_hangs_with_pending_read_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_writes_done_hangs_with_pending_read_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_writes_done_hangs_with_pending_read_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_writes_done_hangs_with_pending_read_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_writes_done_hangs_with_pending_read_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_BAD_HOSTNAME_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_BAD_HOSTNAME_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_BAD_HOSTNAME_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_bad_hostname_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_bad_hostname_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_BAD_HOSTNAME_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_bad_hostname.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_bad_hostname_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_BAD_HOSTNAME_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_bad_hostname.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_BAD_HOSTNAME_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_bad_hostname.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_bad_hostname_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_BAD_HOSTNAME_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_bad_hostname.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_bad_hostname_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_bad_hostname_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_BAD_HOSTNAME_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_BAD_HOSTNAME_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_and_writes_closed_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_and_writes_closed_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_AND_WRITES_CLOSED_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_accept_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_ACCEPT_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_INVOKE_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_INVOKE_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_INVOKE_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_after_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_cancel_after_invoke_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_AFTER_INVOKE_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_BEFORE_INVOKE_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_before_invoke_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_cancel_before_invoke_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_BEFORE_INVOKE_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_IN_A_VACUUM_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_IN_A_VACUUM_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_IN_A_VACUUM_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_cancel_in_a_vacuum_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_cancel_in_a_vacuum_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CANCEL_IN_A_VACUUM_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_census_simple_request_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_census_simple_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_census_simple_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_census_simple_request_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_census_simple_request_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_census_simple_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CENSUS_SIMPLE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_census_simple_request_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_census_simple_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_census_simple_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_census_simple_request_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_census_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_census_simple_request_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_census_simple_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_CENSUS_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_DISAPPEARING_SERVER_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_DISAPPEARING_SERVER_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_disappearing_server_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_disappearing_server_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_disappearing_server_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_disappearing_server_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_disappearing_server_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_disappearing_server_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_DISAPPEARING_SERVER_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_disappearing_server_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_disappearing_server_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_disappearing_server_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_disappearing_server_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_disappearing_server_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_disappearing_server_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_disappearing_server_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_DISAPPEARING_SERVER_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_inflight_calls_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_inflight_calls_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_INFLIGHT_CALLS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_early_server_shutdown_finishes_tags_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_early_server_shutdown_finishes_tags_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EARLY_SERVER_SHUTDOWN_FINISHES_TAGS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EMPTY_BATCH_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EMPTY_BATCH_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EMPTY_BATCH_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_empty_batch_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_empty_batch_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EMPTY_BATCH_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_empty_batch.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_empty_batch_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EMPTY_BATCH_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_empty_batch.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EMPTY_BATCH_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_empty_batch.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_empty_batch_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EMPTY_BATCH_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_empty_batch.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_empty_batch_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_empty_batch_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EMPTY_BATCH_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_EMPTY_BATCH_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_GRACEFUL_SERVER_SHUTDOWN_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_graceful_server_shutdown_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_graceful_server_shutdown_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_GRACEFUL_SERVER_SHUTDOWN_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_INVOKE_LARGE_REQUEST_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_INVOKE_LARGE_REQUEST_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_INVOKE_LARGE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+	$(E) "[LD]      Linking $@"
+	$(Q) mkdir -p `dirname $@`
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_legacy_unsecure_test
 
-# You can't build secure targets if you don't have OpenSSL with ALPN.
 
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_legacy_unsecure_test: openssl_dep_error
+deps_chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
-	$(E) "[LD]      Linking $@"
-	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_invoke_large_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_legacy_unsecure_test
-
-endif
-
-
-deps_chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
-
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_INVOKE_LARGE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_MAX_CONCURRENT_STREAMS_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_max_concurrent_streams_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_max_concurrent_streams_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_MAX_CONCURRENT_STREAMS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_NO_OP_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_NO_OP_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_NO_OP_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_no_op_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_no_op_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_NO_OP_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_no_op_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_NO_OP_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_NO_OP_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_no_op_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_NO_OP_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_no_op_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_no_op_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_NO_OP_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_NO_OP_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_NO_OP_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_NO_OP_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_NO_OP_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_no_op_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_no_op_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_NO_OP_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_no_op_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_NO_OP_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_NO_OP_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_no_op_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_NO_OP_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_no_op_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_no_op_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_no_op_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_NO_OP_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_NO_OP_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_PING_PONG_STREAMING_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_PING_PONG_STREAMING_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_PING_PONG_STREAMING_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_PING_PONG_STREAMING_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_PING_PONG_STREAMING_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_PING_PONG_STREAMING_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_PING_PONG_STREAMING_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_PING_PONG_STREAMING_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_PING_PONG_STREAMING_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_ping_pong_streaming_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_ping_pong_streaming_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_PING_PONG_STREAMING_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REGISTERED_CALL_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REGISTERED_CALL_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REGISTERED_CALL_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_registered_call_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_registered_call_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REGISTERED_CALL_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_registered_call.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_registered_call_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REGISTERED_CALL_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_registered_call.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REGISTERED_CALL_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_registered_call.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_registered_call_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REGISTERED_CALL_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_registered_call.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_registered_call_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_registered_call_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REGISTERED_CALL_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REGISTERED_CALL_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_binary_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_request_response_with_binary_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_BINARY_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_request_response_with_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_request_response_with_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_trailing_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_trailing_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_trailing_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_response_with_trailing_metadata_and_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_request_response_with_trailing_metadata_and_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_RESPONSE_WITH_TRAILING_METADATA_AND_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_LARGE_METADATA_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_large_metadata_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_request_with_large_metadata_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_LARGE_METADATA_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_payload_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_payload_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_payload_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_request_with_payload_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_PAYLOAD_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_payload_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_payload_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_request_with_payload_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_request_with_payload_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_request_with_payload_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_REQUEST_WITH_PAYLOAD_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_DELAYED_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_delayed_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_simple_delayed_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_DELAYED_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_REQUEST_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_REQUEST_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_REQUEST_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_request_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_request_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_REQUEST_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_request_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_simple_request_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_REQUEST_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_request_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_request_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_simple_request_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_simple_request_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_simple_request_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_SIMPLE_REQUEST_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_THREAD_STRESS_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_THREAD_STRESS_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_THREAD_STRESS_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_thread_stress_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_thread_stress_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_THREAD_STRESS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_thread_stress_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_THREAD_STRESS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_THREAD_STRESS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_thread_stress_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_THREAD_STRESS_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_thread_stress_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_thread_stress_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_THREAD_STRESS_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_THREAD_STRESS_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_THREAD_STRESS_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_THREAD_STRESS_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_thread_stress_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_thread_stress_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_thread_stress_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_thread_stress_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_thread_stress_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_thread_stress_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_thread_stress_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_THREAD_STRESS_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_WRITES_DONE_HANGS_WITH_PENDING_READ_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_SRC = \
 
 CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_SRC))))
 
-ifeq ($(NO_SECURE),true)
-
-# You can't build secure targets if you don't have OpenSSL with ALPN.
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_legacy_unsecure_test: openssl_dep_error
-
-else
-
-$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
+$(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a
 	$(E) "[LD]      Linking $@"
 	$(Q) mkdir -p `dirname $@`
-	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) $(LDLIBS_SECURE) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_legacy_unsecure_test
-
-endif
+	$(Q) $(LD) $(LDFLAGS) $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libend2end_fixture_chttp2_socket_pair_one_byte_at_a_time.a $(LIBDIR)/$(CONFIG)/libend2end_test_writes_done_hangs_with_pending_read_legacy.a $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBDIR)/$(CONFIG)/libgpr_test_util.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBS) -o $(BINDIR)/$(CONFIG)/chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_legacy_unsecure_test
 
 
 deps_chttp2_socket_pair_one_byte_at_a_time_writes_done_hangs_with_pending_read_legacy_unsecure_test: $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 
-ifneq ($(NO_SECURE),true)
 ifneq ($(NO_DEPS),true)
 -include $(CHTTP2_SOCKET_PAIR_ONE_BYTE_AT_A_TIME_WRITES_DONE_HANGS_WITH_PENDING_READ_LEGACY_UNSECURE_TEST_OBJS:.o=.dep)
 endif
-endif
 
 
 
 
 
 
+ifneq ($(OPENSSL_DEP),)
+# This is to ensure the embedded OpenSSL is built beforehand, properly
+# installing headers to their final destination on the drive. We need this
+# otherwise parallel compilation will fail if a source is compiled first.
+src/core/httpcli/format_request.c: $(OPENSSL_DEP)
+src/core/httpcli/httpcli.c: $(OPENSSL_DEP)
+src/core/httpcli/httpcli_security_connector.c: $(OPENSSL_DEP)
+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/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)
+src/core/security/security_connector.c: $(OPENSSL_DEP)
+src/core/security/server_secure_chttp2.c: $(OPENSSL_DEP)
+src/core/surface/init_secure.c: $(OPENSSL_DEP)
+src/core/surface/secure_channel_create.c: $(OPENSSL_DEP)
+src/core/tsi/fake_transport_security.c: $(OPENSSL_DEP)
+src/core/tsi/ssl_transport_security.c: $(OPENSSL_DEP)
+src/core/tsi/transport_security.c: $(OPENSSL_DEP)
+endif
+
 .PHONY: all strip tools dep_error openssl_dep_error openssl_dep_message git_update stop buildtests buildtests_c buildtests_cxx test test_c test_cxx install install_c install_cxx install-headers install-headers_c install-headers_cxx install-shared install-shared_c install-shared_cxx install-static install-static_c install-static_cxx strip strip-shared strip-static strip_c strip-shared_c strip-static_c strip_cxx strip-shared_cxx strip-static_cxx dep_c dep_cxx bins_dep_c bins_dep_cxx clean
diff --git a/build.json b/build.json
index 3f00c6d5552f79c7b0011eeb94ea8a30771c9a74..e072ed67c3c790c3a75c5809038d128003a663f8 100644
--- a/build.json
+++ b/build.json
@@ -1,4 +1,7 @@
 {
+  "#1": "This file describes the list of targets and dependencies.",
+  "#2": "It is used among other things to generate all of our project files.",
+  "#3": "Please refer to the templates directory for more information.",
   "settings": {
     "#": "The public version number of the library.",
     "version": {
@@ -25,6 +28,7 @@
         "include/grpc++/generic_stub.h",
         "include/grpc++/impl/call.h",
         "include/grpc++/impl/client_unary_call.h",
+        "include/grpc++/impl/grpc_library.h",
         "include/grpc++/impl/internal_stub.h",
         "include/grpc++/impl/rpc_method.h",
         "include/grpc++/impl/rpc_service_method.h",
@@ -43,13 +47,13 @@
         "include/grpc++/status.h",
         "include/grpc++/status_code_enum.h",
         "include/grpc++/stream.h",
-        "include/grpc++/thread_pool_interface.h"
+        "include/grpc++/thread_pool_interface.h",
+        "include/grpc++/time.h"
       ],
       "headers": [
         "src/cpp/client/channel.h",
         "src/cpp/proto/proto_utils.h",
-        "src/cpp/server/thread_pool.h",
-        "src/cpp/util/time.h"
+        "src/cpp/server/thread_pool.h"
       ],
       "src": [
         "src/cpp/client/channel.cc",
@@ -98,7 +102,6 @@
         "src/core/channel/http_client_filter.h",
         "src/core/channel/http_filter.h",
         "src/core/channel/http_server_filter.h",
-        "src/core/channel/metadata_buffer.h",
         "src/core/channel/noop_filter.h",
         "src/core/compression/algorithm.h",
         "src/core/compression/message_compress.h",
@@ -190,7 +193,6 @@
         "src/core/channel/http_client_filter.c",
         "src/core/channel/http_filter.c",
         "src/core/channel/http_server_filter.c",
-        "src/core/channel/metadata_buffer.c",
         "src/core/channel/noop_filter.c",
         "src/core/compression/algorithm.c",
         "src/core/compression/message_compress.c",
@@ -278,6 +280,19 @@
         "src/core/transport/stream_op.c",
         "src/core/transport/transport.c"
       ]
+    },
+    {
+      "name": "grpc_test_util_base",
+      "src": [
+        "test/core/end2end/cq_verifier.c",
+        "test/core/iomgr/endpoint_tests.c",
+        "test/core/statistics/census_log_tests.c",
+        "test/core/util/grpc_profiler.c",
+        "test/core/util/parse_hexstring.c",
+        "test/core/util/port_posix.c",
+        "test/core/util/port_windows.c",
+        "test/core/util/slice_splitter.c"
+      ]
     }
   ],
   "libs": [
@@ -374,6 +389,7 @@
       "deps": [
         "gpr"
       ],
+      "secure": "no",
       "vs_project_guid": "{EAB0A629-17A9-44DB-B5FF-E91A721FE037}"
     },
     {
@@ -437,26 +453,35 @@
       "build": "private",
       "language": "c",
       "src": [
-        "test/core/end2end/cq_verifier.c",
         "test/core/end2end/data/server1_cert.c",
         "test/core/end2end/data/server1_key.c",
-        "test/core/end2end/data/test_root_cert.c",
-        "test/core/iomgr/endpoint_tests.c",
-        "test/core/statistics/census_log_tests.c",
-        "test/core/transport/transport_end2end_tests.c",
-        "test/core/util/grpc_profiler.c",
-        "test/core/util/parse_hexstring.c",
-        "test/core/util/port_posix.c",
-        "test/core/util/port_windows.c",
-        "test/core/util/slice_splitter.c"
+        "test/core/end2end/data/test_root_cert.c"
       ],
       "deps": [
         "gpr",
         "gpr_test_util",
         "grpc"
       ],
+      "filegroups": [
+        "grpc_test_util_base"
+      ],
       "vs_project_guid": "{17BCAFC0-5FDC-4C94-AEB9-95F3E220614B}"
     },
+    {
+      "name": "grpc_test_util_unsecure",
+      "build": "private",
+      "language": "c",
+      "deps": [
+        "gpr",
+        "gpr_test_util",
+        "grpc"
+      ],
+      "filegroups": [
+        "grpc_test_util_base"
+      ],
+      "secure": "no",
+      "vs_project_guid": "{0A7E7F92-FDEA-40F1-A9EC-3BA484F98BBF}"
+    },
     {
       "name": "grpc_unsecure",
       "build": "all",
@@ -786,6 +811,7 @@
     },
     {
       "name": "census_statistics_multiple_writers_test",
+      "flaky": true,
       "build": "test",
       "language": "c",
       "src": [
@@ -800,6 +826,7 @@
     },
     {
       "name": "census_statistics_performance_test",
+      "flaky": true,
       "build": "test",
       "language": "c",
       "src": [
@@ -814,6 +841,7 @@
     },
     {
       "name": "census_statistics_quick_test",
+      "flaky": true,
       "build": "test",
       "language": "c",
       "src": [
@@ -939,20 +967,6 @@
         "gpr"
       ]
     },
-    {
-      "name": "chttp2_transport_end2end_test",
-      "build": "test",
-      "language": "c",
-      "src": [
-        "test/core/transport/chttp2_transport_end2end_test.c"
-      ],
-      "deps": [
-        "grpc_test_util",
-        "grpc",
-        "gpr_test_util",
-        "gpr"
-      ]
-    },
     {
       "name": "dualstack_socket_test",
       "build": "test",
@@ -1587,20 +1601,6 @@
         "gpr"
       ]
     },
-    {
-      "name": "metadata_buffer_test",
-      "build": "test",
-      "language": "c",
-      "src": [
-        "test/core/channel/metadata_buffer_test.c"
-      ],
-      "deps": [
-        "grpc_test_util",
-        "grpc",
-        "gpr_test_util",
-        "gpr"
-      ]
-    },
     {
       "name": "multi_init_test",
       "build": "test",
diff --git a/examples/pubsub/main.cc b/examples/pubsub/main.cc
index 8f8eefa9efb66b93f767cbe8fa1c9aac3c9123bd..68620e64c5c280f63632fa68c6f5bdd56b439a49 100644
--- a/examples/pubsub/main.cc
+++ b/examples/pubsub/main.cc
@@ -31,7 +31,6 @@
  *
  */
 
-#include <chrono>
 #include <fstream>
 #include <memory>
 #include <sstream>
@@ -65,7 +64,6 @@ const char kMessageData[] = "Test Data";
 }  // namespace
 
 int main(int argc, char** argv) {
-  grpc_init();
   grpc::testing::InitTest(&argc, &argv, true);
   gpr_log(GPR_INFO, "Start PUBSUB client");
 
@@ -146,7 +144,5 @@ int main(int argc, char** argv) {
 
   subscriber.Shutdown();
   publisher.Shutdown();
-  channel.reset();
-  grpc_shutdown();
   return 0;
 }
diff --git a/examples/pubsub/publisher_test.cc b/examples/pubsub/publisher_test.cc
index ac4921283f4bdfd20fc412ab90a7099d65f5823b..6b9dcacc499a8ee228cc8cae7019a2804c796535 100644
--- a/examples/pubsub/publisher_test.cc
+++ b/examples/pubsub/publisher_test.cc
@@ -148,10 +148,8 @@ TEST_F(PublisherTest, TestPublisher) {
 
 int main(int argc, char** argv) {
   grpc_test_init(argc, argv);
-  grpc_init();
   ::testing::InitGoogleTest(&argc, argv);
   gpr_log(GPR_INFO, "Start test ...");
   int result = RUN_ALL_TESTS();
-  grpc_shutdown();
   return result;
 }
diff --git a/examples/pubsub/subscriber_test.cc b/examples/pubsub/subscriber_test.cc
index 9ab60ed6a760eabf34c946da8cafb74f623b0f71..b0e7fc034b8e46d8a3db5e821c9ec0cc9519a632 100644
--- a/examples/pubsub/subscriber_test.cc
+++ b/examples/pubsub/subscriber_test.cc
@@ -147,10 +147,8 @@ TEST_F(SubscriberTest, TestSubscriber) {
 
 int main(int argc, char** argv) {
   grpc_test_init(argc, argv);
-  grpc_init();
   ::testing::InitGoogleTest(&argc, argv);
   gpr_log(GPR_INFO, "Start test ...");
   int result = RUN_ALL_TESTS();
-  grpc_shutdown();
   return result;
 }
diff --git a/gRPC.podspec b/gRPC.podspec
index 562b797eaffac71fcef50a4cb905f6beec130caf..e93eae27ec1f6e3e32a4cff1a0726f67337b310b 100644
--- a/gRPC.podspec
+++ b/gRPC.podspec
@@ -7,23 +7,23 @@ Pod::Spec.new do |s|
   s.authors  = { 'Jorge Canizales' => 'jcanizales@google.com' }
 
   # s.source = { :git => 'https://github.com/grpc/grpc.git',  :tag => 'release-0_5_0' }
-  s.source_files = 'src/objective-c/GRPCClient/*.{h,m}', 'src/objective-c/GRPCClient/private/*.{h,m}'
-  s.private_header_files = 'src/objective-c/GRPCClient/private/*.h'
 
   s.platform = :ios
   s.ios.deployment_target = '6.0'
   s.requires_arc = true
 
   s.subspec 'RxLibrary' do |rs|
-    rs.summary  = 'Reactive Extensions library for iOS'
+    rs.summary  = 'Reactive Extensions library for iOS.'
     rs.authors  = { 'Jorge Canizales' => 'jcanizales@google.com' }
 
-    rs.source_files = 'src/objective-c/RxLibrary/*.{h,m}', 'src/objective-c/RxLibrary/transformations/*.{h,m}', 'src/objective-c/RxLibrary/private/*.{h,m}'
+    rs.source_files = 'src/objective-c/RxLibrary/*.{h,m}',
+                      'src/objective-c/RxLibrary/transformations/*.{h,m}',
+                      'src/objective-c/RxLibrary/private/*.{h,m}'
     rs.private_header_files = 'src/objective-c/RxLibrary/private/*.h'
   end
 
   s.subspec 'C-Core' do |cs|
-    cs.summary  = 'Core gRPC library, written in C'
+    cs.summary  = 'Core cross-platform gRPC library, written in C.'
     cs.authors = { 'Craig Tiller'   => 'ctiller@google.com',
                    'David Klempner' => 'klempner@google.com',
                    'Nicolas Noble'  => 'nnoble@google.com',
@@ -42,6 +42,8 @@ Pod::Spec.new do |s|
 
   # This is a workaround for Cocoapods Issue #1437.
   # It renames time.h and string.h to grpc_time.h and grpc_string.h.
+  # It needs to be here (top-level) instead of in the C-Core subspec because Cocoapods doesn't run
+  # prepare_command's of subspecs.
   s.prepare_command = <<-CMD
     DIR_TIME="grpc/support"
     BAD_TIME="$DIR_TIME/time.h"
@@ -62,8 +64,30 @@ Pod::Spec.new do |s|
     fi
   CMD
 
-  s.xcconfig = { 'HEADER_SEARCH_PATHS' => '"$(PODS_ROOT)/Headers/Public/gRPC/include"' }
+  s.subspec 'GRPCClient' do |gs|
+    gs.summary = 'Objective-C wrapper around the core gRPC library.'
+    gs.authors  = { 'Jorge Canizales' => 'jcanizales@google.com' }
 
-  # Certificates, to be able to establish TLS connections:
-  s.resource_bundles = { 'gRPC' => ['etc/roots.pem'] }
+    gs.source_files = 'src/objective-c/GRPCClient/*.{h,m}',
+                      'src/objective-c/GRPCClient/private/*.{h,m}'
+    gs.private_header_files = 'src/objective-c/GRPCClient/private/*.h'
+
+    gs.dependency 'gRPC/C-Core'
+    # Is this needed in all dependents?
+    gs.xcconfig = { 'HEADER_SEARCH_PATHS' => '"$(PODS_ROOT)/Headers/Public/gRPC/include"' }
+    gs.dependency 'gRPC/RxLibrary'
+
+    # Certificates, to be able to establish TLS connections:
+    gs.resource_bundles = { 'gRPC' => ['etc/roots.pem'] }
+  end
+
+  s.subspec 'ProtoRPC' do |ps|
+    ps.summary  = 'RPC library for ProtocolBuffers, based on gRPC'
+    ps.authors  = { 'Jorge Canizales' => 'jcanizales@google.com' }
+
+    ps.source_files = 'src/objective-c/ProtoRPC/*.{h,m}'
+
+    ps.dependency 'gRPC/GRPCClient'
+    ps.dependency 'gRPC/RxLibrary'
+  end
 end
diff --git a/include/grpc++/client_context.h b/include/grpc++/client_context.h
index 4e7f5a7be0e5d34d1cc1004f2e2149c2727a8904..a58e9872e6097ad1886afc0adeda28e095d4a8f9 100644
--- a/include/grpc++/client_context.h
+++ b/include/grpc++/client_context.h
@@ -34,15 +34,14 @@
 #ifndef GRPCXX_CLIENT_CONTEXT_H
 #define GRPCXX_CLIENT_CONTEXT_H
 
-#include <chrono>
 #include <map>
+#include <memory>
 #include <string>
 
 #include <grpc/support/log.h>
 #include <grpc/support/time.h>
 #include <grpc++/config.h>
-
-using std::chrono::system_clock;
+#include <grpc++/time.h>
 
 struct grpc_call;
 struct grpc_completion_queue;
@@ -87,8 +86,19 @@ class ClientContext {
     return trailing_metadata_;
   }
 
-  void set_absolute_deadline(const system_clock::time_point& deadline);
-  system_clock::time_point absolute_deadline();
+  template <typename T>
+  void set_deadline(const T& deadline) {
+    TimePoint<T> deadline_tp(deadline);
+    deadline_ = deadline_tp.raw_time();
+  }
+
+#ifndef GRPC_CXX0X_NO_CHRONO
+  std::chrono::system_clock::time_point deadline() {
+    return Timespec2Timepoint(deadline_);
+  }
+#endif  // !GRPC_CXX0X_NO_CHRONO
+
+  gpr_timespec raw_deadline() { return deadline_; }
 
   void set_authority(const grpc::string& authority) { authority_ = authority; }
 
@@ -117,22 +127,22 @@ class ClientContext {
   friend class ::grpc::ClientAsyncResponseReader;
 
   grpc_call* call() { return call_; }
-  void set_call(grpc_call* call) {
+  void set_call(grpc_call* call, const std::shared_ptr<ChannelInterface>& channel) {
     GPR_ASSERT(call_ == nullptr);
     call_ = call;
+    channel_ = channel;
   }
 
   grpc_completion_queue* cq() { return cq_; }
   void set_cq(grpc_completion_queue* cq) { cq_ = cq; }
 
-  gpr_timespec RawDeadline() { return absolute_deadline_; }
-
   grpc::string authority() { return authority_; }
 
   bool initial_metadata_received_;
+  std::shared_ptr<ChannelInterface> channel_;
   grpc_call* call_;
   grpc_completion_queue* cq_;
-  gpr_timespec absolute_deadline_;
+  gpr_timespec deadline_;
   grpc::string authority_;
   std::multimap<grpc::string, grpc::string> send_initial_metadata_;
   std::multimap<grpc::string, grpc::string> recv_initial_metadata_;
diff --git a/include/grpc++/completion_queue.h b/include/grpc++/completion_queue.h
index e6a8c6fe552b2db54d19ad833dbdaf539a188174..5c2b1cce93d1557f9c139598be6d930834d268df 100644
--- a/include/grpc++/completion_queue.h
+++ b/include/grpc++/completion_queue.h
@@ -34,9 +34,10 @@
 #ifndef GRPCXX_COMPLETION_QUEUE_H
 #define GRPCXX_COMPLETION_QUEUE_H
 
-#include <chrono>
-#include <grpc++/impl/client_unary_call.h>
 #include <grpc/support/time.h>
+#include <grpc++/impl/client_unary_call.h>
+#include <grpc++/impl/grpc_library.h>
+#include <grpc++/time.h>
 
 struct grpc_completion_queue;
 
@@ -71,21 +72,24 @@ class CompletionQueueTag {
 };
 
 // grpc_completion_queue wrapper class
-class CompletionQueue {
+class CompletionQueue : public GrpcLibrary {
  public:
   CompletionQueue();
   explicit CompletionQueue(grpc_completion_queue* take);
-  ~CompletionQueue();
+  ~CompletionQueue() GRPC_OVERRIDE;
 
   // Tri-state return for AsyncNext: SHUTDOWN, GOT_EVENT, TIMEOUT
   enum NextStatus { SHUTDOWN, GOT_EVENT, TIMEOUT };
 
   // Nonblocking (until deadline) read from queue.
   // Cannot rely on result of tag or ok if return is TIMEOUT
-  NextStatus AsyncNext(void** tag, bool* ok,
-                       std::chrono::system_clock::time_point deadline);
+  template<typename T>
+  NextStatus AsyncNext(void** tag, bool* ok, const T& deadline) {
+    TimePoint<T> deadline_tp(deadline);
+    return AsyncNextInternal(tag, ok, deadline_tp.raw_time());
+  }
 
-  // Blocking (until deadline) read from queue.
+  // Blocking read from queue.
   // Returns false if the queue is ready for destruction, true if event
 
   bool Next(void** tag, bool* ok) {
diff --git a/include/grpc++/credentials.h b/include/grpc++/credentials.h
index 2ac3eec95cd33018f341afeef28541cc06f6c0f6..61c40946910301cd35f205c58d17addfd69d1775 100644
--- a/include/grpc++/credentials.h
+++ b/include/grpc++/credentials.h
@@ -34,19 +34,19 @@
 #ifndef GRPCXX_CREDENTIALS_H
 #define GRPCXX_CREDENTIALS_H
 
-#include <chrono>
 #include <memory>
 
 #include <grpc++/config.h>
+#include <grpc++/impl/grpc_library.h>
 
 namespace grpc {
 class ChannelArguments;
 class ChannelInterface;
 class SecureCredentials;
 
-class Credentials {
+class Credentials : public GrpcLibrary {
  public:
-  virtual ~Credentials();
+  ~Credentials() GRPC_OVERRIDE;
 
  protected:
   friend std::unique_ptr<Credentials> CompositeCredentials(
@@ -98,20 +98,20 @@ std::unique_ptr<Credentials> ComputeEngineCredentials();
 // Builds service account credentials.
 // 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
-// account credentials. It should be positive and should not exceed
-// grpc_max_auth_token_lifetime or will be cropped to this value.
+// token_lifetime_seconds is the lifetime in seconds of each token acquired
+// through this service account credentials. It should be positive and should
+// not exceed grpc_max_auth_token_lifetime or will be cropped to this value.
 std::unique_ptr<Credentials> ServiceAccountCredentials(
     const grpc::string& json_key, const grpc::string& scope,
-    std::chrono::seconds token_lifetime);
+    long token_lifetime_seconds);
 
 // 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.
+// token_lifetime_seconds is the lifetime in seconds 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.
 std::unique_ptr<Credentials> JWTCredentials(
-    const grpc::string& json_key, std::chrono::seconds token_lifetime);
+    const grpc::string& json_key, long token_lifetime_seconds);
 
 // Builds refresh token credentials.
 // json_refresh_token is the JSON string containing the refresh token along
diff --git a/src/cpp/util/time.h b/include/grpc++/impl/grpc_library.h
similarity index 80%
rename from src/cpp/util/time.h
rename to include/grpc++/impl/grpc_library.h
index 8b7fcf55f78ea564f77df3ccbf799498e27723f2..f9fa677901b799cca3f39bce162e9d18625f646b 100644
--- a/src/cpp/util/time.h
+++ b/include/grpc++/impl/grpc_library.h
@@ -31,21 +31,20 @@
  *
  */
 
-#ifndef GRPC_INTERNAL_CPP_UTIL_TIME_H
-#define GRPC_INTERNAL_CPP_UTIL_TIME_H
+#ifndef GRPCXX_IMPL_GRPC_LIBRARY_H
+#define GRPCXX_IMPL_GRPC_LIBRARY_H
 
-#include <chrono>
-
-#include <grpc/support/time.h>
+#include <grpc/grpc.h>
 
 namespace grpc {
 
-// from and to should be absolute time.
-void Timepoint2Timespec(const std::chrono::system_clock::time_point& from,
-                        gpr_timespec* to);
-
-std::chrono::system_clock::time_point Timespec2Timepoint(gpr_timespec t);
+class GrpcLibrary {
+ public:
+  GrpcLibrary() { grpc_init(); }
+  virtual ~GrpcLibrary() { grpc_shutdown(); }
+};
 
 }  // namespace grpc
 
-#endif  // GRPC_INTERNAL_CPP_UTIL_TIME_H
+
+#endif  // GRPCXX_IMPL_GRPC_LIBRARY_H
diff --git a/include/grpc++/server.h b/include/grpc++/server.h
index eb5061157357f9dfffaac0e77fab68ee41226f29..c68647470235663109ff01549853ab06f5bdc245 100644
--- a/include/grpc++/server.h
+++ b/include/grpc++/server.h
@@ -40,6 +40,7 @@
 #include <grpc++/completion_queue.h>
 #include <grpc++/config.h>
 #include <grpc++/impl/call.h>
+#include <grpc++/impl/grpc_library.h>
 #include <grpc++/impl/service_type.h>
 #include <grpc++/impl/sync.h>
 #include <grpc++/status.h>
@@ -56,7 +57,8 @@ class ServerCredentials;
 class ThreadPoolInterface;
 
 // Currently it only supports handling rpcs in a single thread.
-class Server GRPC_FINAL : private CallHook,
+class Server GRPC_FINAL : public GrpcLibrary,
+                          private CallHook,
                           private AsynchronousService::DispatchImpl {
  public:
   ~Server();
@@ -78,7 +80,6 @@ class Server GRPC_FINAL : private CallHook,
 
   // ServerBuilder use only
   Server(ThreadPoolInterface* thread_pool, bool thread_pool_owned);
-  Server() = delete;
   // Register a service. This call does not take ownership of the service.
   // The service must exist for the lifetime of the Server instance.
   bool RegisterService(RpcService* service);
@@ -116,7 +117,7 @@ class Server GRPC_FINAL : private CallHook,
   int num_running_cb_;
   grpc::condition_variable callback_cv_;
 
-  std::list<SyncRequest> sync_methods_;
+  std::list<SyncRequest>* sync_methods_;
 
   // Pointer to the c grpc server.
   grpc_server* const server_;
@@ -124,6 +125,8 @@ class Server GRPC_FINAL : private CallHook,
   ThreadPoolInterface* thread_pool_;
   // Whether the thread pool is created and owned by the server.
   bool thread_pool_owned_;
+ private:
+  Server() : server_(NULL) { abort(); }
 };
 
 }  // namespace grpc
diff --git a/include/grpc++/server_context.h b/include/grpc++/server_context.h
index 9e3b80c6411d4d810a84742ac4c60ab16b242aac..a62babd93163535b3382670c38e81dd13c685e6f 100644
--- a/include/grpc++/server_context.h
+++ b/include/grpc++/server_context.h
@@ -34,10 +34,11 @@
 #ifndef GRPCXX_SERVER_CONTEXT_H
 #define GRPCXX_SERVER_CONTEXT_H
 
-#include <chrono>
 #include <map>
 
+#include <grpc/support/time.h>
 #include <grpc++/config.h>
+#include <grpc++/time.h>
 
 struct gpr_timespec;
 struct grpc_metadata;
@@ -71,9 +72,13 @@ class ServerContext {
   ServerContext();  // for async calls
   ~ServerContext();
 
-  std::chrono::system_clock::time_point absolute_deadline() {
-    return deadline_;
+#ifndef GRPC_CXX0X_NO_CHRONO
+  std::chrono::system_clock::time_point deadline() {
+    return Timespec2Timepoint(deadline_);
   }
+#endif  // !GRPC_CXX0X_NO_CHRONO
+
+  gpr_timespec raw_deadline() { return deadline_; }
 
   void AddInitialMetadata(const grpc::string& key, const grpc::string& value);
   void AddTrailingMetadata(const grpc::string& key, const grpc::string& value);
@@ -110,7 +115,7 @@ class ServerContext {
 
   CompletionOp* completion_op_;
 
-  std::chrono::system_clock::time_point deadline_;
+  gpr_timespec deadline_;
   grpc_call* call_;
   CompletionQueue* cq_;
   bool sent_initial_metadata_;
diff --git a/include/grpc++/stream.h b/include/grpc++/stream.h
index 7625bcc38d314896e4eaaf4cd729bf7ec2259f07..6647e345c0c314334fd58b9853f5b71c7cf76621 100644
--- a/include/grpc++/stream.h
+++ b/include/grpc++/stream.h
@@ -173,7 +173,7 @@ class ClientWriter GRPC_FINAL : public ClientStreamingInterface,
     buf.AddRecvMessage(response_);
     buf.AddClientRecvStatus(context_, &status);
     call_.PerformOps(&buf);
-    GPR_ASSERT(cq_.Pluck(&buf) && buf.got_message);
+    GPR_ASSERT(cq_.Pluck(&buf));
     return status;
   }
 
diff --git a/include/grpc++/time.h b/include/grpc++/time.h
new file mode 100644
index 0000000000000000000000000000000000000000..f9b2ce5cab1f4f90f77b78ca679312f8bc4bf0dd
--- /dev/null
+++ b/include/grpc++/time.h
@@ -0,0 +1,106 @@
+/*
+ *
+ * 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.
+ *
+ */
+
+#ifndef GRPCXX_TIME_H
+#define GRPCXX_TIME_H
+
+#include <grpc++/config.h>
+
+namespace grpc {
+
+/* If you are trying to use CompletionQueue::AsyncNext with a time class that
+   isn't either gpr_timespec or std::chrono::system_clock::time_point, you
+   will most likely be looking at this comment as your compiler will have
+   fired an error below. In order to fix this issue, you have two potential
+   solutions:
+
+     1. Use gpr_timespec or std::chrono::system_clock::time_point instead
+     2. Specialize the TimePoint class with whichever time class that you
+        want to use here. See below for two examples of how to do this.
+ */
+
+template <typename T>
+class TimePoint {
+ public:
+  TimePoint(const T& time) {
+    you_need_a_specialization_of_TimePoint();
+  }
+  gpr_timespec raw_time() {
+    gpr_timespec t;
+    return t;
+  }
+ private:
+  void you_need_a_specialization_of_TimePoint();
+};
+
+template<>
+class TimePoint<gpr_timespec> {
+ public:
+  TimePoint(const gpr_timespec& time) : time_(time) { }
+  gpr_timespec raw_time() { return time_; }
+ private:
+  gpr_timespec time_;
+};
+
+}  // namespace grpc
+
+#ifndef GRPC_CXX0X_NO_CHRONO
+
+#include <chrono>
+
+#include <grpc/support/time.h>
+
+namespace grpc {
+
+// from and to should be absolute time.
+void Timepoint2Timespec(const std::chrono::system_clock::time_point& from,
+                        gpr_timespec* to);
+
+std::chrono::system_clock::time_point Timespec2Timepoint(gpr_timespec t);
+
+template <>
+class TimePoint<std::chrono::system_clock::time_point> {
+ public:
+  TimePoint(const std::chrono::system_clock::time_point& time) {
+	Timepoint2Timespec(time, &time_);
+  }
+  gpr_timespec raw_time() const { return time_; }
+ private:
+  gpr_timespec time_;
+};
+
+}  // namespace grpc
+
+#endif  // !GRPC_CXX0X_NO_CHRONO
+
+#endif  // GRPCXX_TIME_H
diff --git a/include/grpc/grpc.h b/include/grpc/grpc.h
index ffab65ff59135d7921295c0ff295fafa363a09de..b7d14a521eb9a305e2bce2c2a0b870a243e5deca 100644
--- a/include/grpc/grpc.h
+++ b/include/grpc/grpc.h
@@ -186,6 +186,13 @@ typedef struct grpc_metadata {
   const char *key;
   const char *value;
   size_t value_length;
+
+  /* The following fields are reserved for grpc internal use.
+     There is no need to initialize them, and they will be set to garbage during
+     calls to grpc. */
+  struct {
+    void *obfuscated[3];
+  } internal_data;
 } grpc_metadata;
 
 typedef enum grpc_completion_type {
@@ -295,7 +302,7 @@ typedef struct grpc_op {
   union {
     struct {
       size_t count;
-      const grpc_metadata *metadata;
+      grpc_metadata *metadata;
     } send_initial_metadata;
     grpc_byte_buffer *send_message;
     struct {
diff --git a/include/grpc/support/tls.h b/include/grpc/support/tls.h
index 1077fdec295f70003ebe27bbf80e8ef9eb42240b..8dffd5225597de511ba7a082d49b661793faa4a4 100644
--- a/include/grpc/support/tls.h
+++ b/include/grpc/support/tls.h
@@ -44,7 +44,7 @@
    Thread locals have type gpr_intptr.
 
    Declaring a thread local variable 'foo':
-     GPR_TLS_DECL(foo, initial_value);
+     GPR_TLS_DECL(foo);
    Thread locals always have static scope.
 
    Initializing a thread local (must be done at library initialization 
diff --git a/src/core/channel/call_op_string.c b/src/core/channel/call_op_string.c
index 08f2e95deb643f57e466411b50cf3ebcdba3dad7..5f7e1be26823140c054c8185534c269902e2ec9d 100644
--- a/src/core/channel/call_op_string.c
+++ b/src/core/channel/call_op_string.c
@@ -43,12 +43,27 @@
 
 static void put_metadata(gpr_strvec *b, grpc_mdelem *md) {
   gpr_strvec_add(b, gpr_strdup(" key="));
-  gpr_strvec_add(b, gpr_hexdump((char *)GPR_SLICE_START_PTR(md->key->slice),
-                    GPR_SLICE_LENGTH(md->key->slice), GPR_HEXDUMP_PLAINTEXT));
+  gpr_strvec_add(
+      b, gpr_hexdump((char *)GPR_SLICE_START_PTR(md->key->slice),
+                     GPR_SLICE_LENGTH(md->key->slice), GPR_HEXDUMP_PLAINTEXT));
 
   gpr_strvec_add(b, gpr_strdup(" value="));
   gpr_strvec_add(b, gpr_hexdump((char *)GPR_SLICE_START_PTR(md->value->slice),
-                    GPR_SLICE_LENGTH(md->value->slice), GPR_HEXDUMP_PLAINTEXT));
+                                GPR_SLICE_LENGTH(md->value->slice),
+                                GPR_HEXDUMP_PLAINTEXT));
+}
+
+static void put_metadata_list(gpr_strvec *b, grpc_metadata_batch md) {
+  grpc_linked_mdelem *m;
+  for (m = md.list.head; m != NULL; m = m->next) {
+    put_metadata(b, m->md);
+  }
+  if (gpr_time_cmp(md.deadline, gpr_inf_future) != 0) {
+    char *tmp;
+    gpr_asprintf(&tmp, " deadline=%d.%09d", md.deadline.tv_sec,
+                 md.deadline.tv_nsec);
+    gpr_strvec_add(b, tmp);
+  }
 }
 
 char *grpc_call_op_string(grpc_call_op *op) {
@@ -69,16 +84,7 @@ char *grpc_call_op_string(grpc_call_op *op) {
   switch (op->type) {
     case GRPC_SEND_METADATA:
       gpr_strvec_add(&b, gpr_strdup("SEND_METADATA"));
-      put_metadata(&b, op->data.metadata);
-      break;
-    case GRPC_SEND_DEADLINE:
-      gpr_asprintf(&tmp, "SEND_DEADLINE %d.%09d", op->data.deadline.tv_sec,
-              op->data.deadline.tv_nsec);
-      gpr_strvec_add(&b, tmp);
-      break;
-    case GRPC_SEND_START:
-      gpr_asprintf(&tmp, "SEND_START pollset=%p", op->data.start.pollset);
-      gpr_strvec_add(&b, tmp);
+      put_metadata_list(&b, op->data.metadata);
       break;
     case GRPC_SEND_MESSAGE:
       gpr_strvec_add(&b, gpr_strdup("SEND_MESSAGE"));
@@ -94,15 +100,7 @@ char *grpc_call_op_string(grpc_call_op *op) {
       break;
     case GRPC_RECV_METADATA:
       gpr_strvec_add(&b, gpr_strdup("RECV_METADATA"));
-      put_metadata(&b, op->data.metadata);
-      break;
-    case GRPC_RECV_DEADLINE:
-      gpr_asprintf(&tmp, "RECV_DEADLINE %d.%09d", op->data.deadline.tv_sec,
-              op->data.deadline.tv_nsec);
-      gpr_strvec_add(&b, tmp);
-      break;
-    case GRPC_RECV_END_OF_INITIAL_METADATA:
-      gpr_strvec_add(&b, gpr_strdup("RECV_END_OF_INITIAL_METADATA"));
+      put_metadata_list(&b, op->data.metadata);
       break;
     case GRPC_RECV_MESSAGE:
       gpr_strvec_add(&b, gpr_strdup("RECV_MESSAGE"));
@@ -113,12 +111,21 @@ char *grpc_call_op_string(grpc_call_op *op) {
     case GRPC_RECV_FINISH:
       gpr_strvec_add(&b, gpr_strdup("RECV_FINISH"));
       break;
+    case GRPC_RECV_SYNTHETIC_STATUS:
+      gpr_asprintf(&tmp, "RECV_SYNTHETIC_STATUS status=%d message='%s'",
+                   op->data.synthetic_status.status,
+                   op->data.synthetic_status.message);
+      gpr_strvec_add(&b, tmp);
+      break;
     case GRPC_CANCEL_OP:
       gpr_strvec_add(&b, gpr_strdup("CANCEL_OP"));
       break;
   }
   gpr_asprintf(&tmp, " flags=0x%08x", op->flags);
   gpr_strvec_add(&b, tmp);
+  if (op->bind_pollset) {
+    gpr_strvec_add(&b, gpr_strdup("bind_pollset"));
+  }
 
   out = gpr_strvec_flatten(&b, NULL);
   gpr_strvec_destroy(&b);
diff --git a/src/core/channel/census_filter.c b/src/core/channel/census_filter.c
index ba7b7ba59caa6293138ce42aa95ba004492bfb55..9c0c20af2217dc78111256eabea94752cc97ad28 100644
--- a/src/core/channel/census_filter.c
+++ b/src/core/channel/census_filter.c
@@ -62,11 +62,13 @@ static void init_rpc_stats(census_rpc_stats* stats) {
 
 static void extract_and_annotate_method_tag(grpc_call_op* op, call_data* calld,
                                             channel_data* chand) {
-  if (op->data.metadata->key == chand->path_str) {
-    gpr_log(GPR_DEBUG,
-            (const char*)GPR_SLICE_START_PTR(op->data.metadata->value->slice));
-    census_add_method_tag(calld->op_id, (const char*)GPR_SLICE_START_PTR(
-                                            op->data.metadata->value->slice));
+  grpc_linked_mdelem* m;
+  for (m = op->data.metadata.list.head; m != NULL; m = m->next) {
+    if (m->md->key == chand->path_str) {
+      gpr_log(GPR_DEBUG, "%s", (const char*)GPR_SLICE_START_PTR(m->md->value->slice));
+      census_add_method_tag(
+          calld->op_id, (const char*)GPR_SLICE_START_PTR(m->md->value->slice));
+    }
   }
 }
 
@@ -178,11 +180,11 @@ static void destroy_channel_elem(grpc_channel_element* elem) {
 }
 
 const grpc_channel_filter grpc_client_census_filter = {
-    client_call_op,        channel_op,               sizeof(call_data),
-    client_init_call_elem, client_destroy_call_elem, sizeof(channel_data),
-    init_channel_elem,     destroy_channel_elem,     "census-client"};
+    client_call_op, channel_op, sizeof(call_data), client_init_call_elem,
+    client_destroy_call_elem, sizeof(channel_data), init_channel_elem,
+    destroy_channel_elem, "census-client"};
 
 const grpc_channel_filter grpc_server_census_filter = {
-    server_call_op,        channel_op,               sizeof(call_data),
-    server_init_call_elem, server_destroy_call_elem, sizeof(channel_data),
-    init_channel_elem,     destroy_channel_elem,     "census-server"};
+    server_call_op, channel_op, sizeof(call_data), server_init_call_elem,
+    server_destroy_call_elem, sizeof(channel_data), init_channel_elem,
+    destroy_channel_elem, "census-server"};
diff --git a/src/core/channel/channel_stack.c b/src/core/channel/channel_stack.c
index 21df9771cea8032098e065886fcf68bb00ad0f5d..3a3a3a75b706d2bebf79aeb1b96494b5c5b47345 100644
--- a/src/core/channel/channel_stack.c
+++ b/src/core/channel/channel_stack.c
@@ -77,9 +77,9 @@ size_t grpc_channel_stack_size(const grpc_channel_filter **filters,
   return size;
 }
 
-#define CHANNEL_ELEMS_FROM_STACK(stk) \
-  ((grpc_channel_element *)(          \
-      (char *)(stk) + ROUND_UP_TO_ALIGNMENT_SIZE(sizeof(grpc_channel_stack))))
+#define CHANNEL_ELEMS_FROM_STACK(stk)                                   \
+  ((grpc_channel_element *)((char *)(stk) + ROUND_UP_TO_ALIGNMENT_SIZE( \
+                                                sizeof(grpc_channel_stack))))
 
 #define CALL_ELEMS_FROM_STACK(stk)       \
   ((grpc_call_element *)((char *)(stk) + \
@@ -183,6 +183,9 @@ void grpc_call_stack_destroy(grpc_call_stack *stack) {
 
 void grpc_call_next_op(grpc_call_element *elem, grpc_call_op *op) {
   grpc_call_element *next_elem = elem + op->dir;
+  if (op->type == GRPC_SEND_METADATA || op->type == GRPC_RECV_METADATA) {
+    grpc_metadata_batch_assert_ok(&op->data.metadata);
+  }
   next_elem->filter->call_op(next_elem, elem, op);
 }
 
@@ -193,42 +196,17 @@ void grpc_channel_next_op(grpc_channel_element *elem, grpc_channel_op *op) {
 
 grpc_channel_stack *grpc_channel_stack_from_top_element(
     grpc_channel_element *elem) {
-  return (grpc_channel_stack *)((char *)(elem) -
-                                ROUND_UP_TO_ALIGNMENT_SIZE(
-                                    sizeof(grpc_channel_stack)));
+  return (grpc_channel_stack *)((char *)(elem)-ROUND_UP_TO_ALIGNMENT_SIZE(
+      sizeof(grpc_channel_stack)));
 }
 
 grpc_call_stack *grpc_call_stack_from_top_element(grpc_call_element *elem) {
-  return (grpc_call_stack *)((char *)(elem) - ROUND_UP_TO_ALIGNMENT_SIZE(
-                                                  sizeof(grpc_call_stack)));
+  return (grpc_call_stack *)((char *)(elem)-ROUND_UP_TO_ALIGNMENT_SIZE(
+      sizeof(grpc_call_stack)));
 }
 
 static void do_nothing(void *user_data, grpc_op_error error) {}
 
-void grpc_call_element_recv_metadata(grpc_call_element *cur_elem,
-    grpc_mdelem *mdelem) {
-  grpc_call_op metadata_op;
-  metadata_op.type = GRPC_RECV_METADATA;
-  metadata_op.dir = GRPC_CALL_UP;
-  metadata_op.done_cb = do_nothing;
-  metadata_op.user_data = NULL;
-  metadata_op.flags = 0;
-  metadata_op.data.metadata = mdelem;
-  grpc_call_next_op(cur_elem, &metadata_op);
-}
-
-void grpc_call_element_send_metadata(grpc_call_element *cur_elem,
-                                     grpc_mdelem *mdelem) {
-  grpc_call_op metadata_op;
-  metadata_op.type = GRPC_SEND_METADATA;
-  metadata_op.dir = GRPC_CALL_DOWN;
-  metadata_op.done_cb = do_nothing;
-  metadata_op.user_data = NULL;
-  metadata_op.flags = 0;
-  metadata_op.data.metadata = mdelem;
-  grpc_call_next_op(cur_elem, &metadata_op);
-}
-
 void grpc_call_element_send_cancel(grpc_call_element *cur_elem) {
   grpc_call_op cancel_op;
   cancel_op.type = GRPC_CANCEL_OP;
@@ -236,6 +214,7 @@ void grpc_call_element_send_cancel(grpc_call_element *cur_elem) {
   cancel_op.done_cb = do_nothing;
   cancel_op.user_data = NULL;
   cancel_op.flags = 0;
+  cancel_op.bind_pollset = NULL;
   grpc_call_next_op(cur_elem, &cancel_op);
 }
 
@@ -246,5 +225,19 @@ void grpc_call_element_send_finish(grpc_call_element *cur_elem) {
   finish_op.done_cb = do_nothing;
   finish_op.user_data = NULL;
   finish_op.flags = 0;
+  finish_op.bind_pollset = NULL;
   grpc_call_next_op(cur_elem, &finish_op);
 }
+
+void grpc_call_element_recv_status(grpc_call_element *cur_elem,
+                                   grpc_status_code status,
+                                   const char *message) {
+  grpc_call_op op;
+  op.type = GRPC_RECV_SYNTHETIC_STATUS;
+  op.dir = GRPC_CALL_UP;
+  op.done_cb = do_nothing;
+  op.user_data = NULL;
+  op.data.synthetic_status.status = status;
+  op.data.synthetic_status.message = message;
+  grpc_call_next_op(cur_elem, &op);
+}
diff --git a/src/core/channel/channel_stack.h b/src/core/channel/channel_stack.h
index ef1da7b33b29d4088b9adcba6181c4abb3f59290..addc92b272751e0fa7b5707dc2aa1584abbdfea3 100644
--- a/src/core/channel/channel_stack.h
+++ b/src/core/channel/channel_stack.h
@@ -62,10 +62,6 @@ typedef struct grpc_call_element grpc_call_element;
 typedef enum {
   /* send metadata to the channels peer */
   GRPC_SEND_METADATA,
-  /* send a deadline */
-  GRPC_SEND_DEADLINE,
-  /* start a connection (corresponds to start_invoke/accept) */
-  GRPC_SEND_START,
   /* send a message to the channels peer */
   GRPC_SEND_MESSAGE,
   /* send a pre-formatted message to the channels peer */
@@ -76,16 +72,14 @@ typedef enum {
   GRPC_REQUEST_DATA,
   /* metadata was received from the channels peer */
   GRPC_RECV_METADATA,
-  /* receive a deadline */
-  GRPC_RECV_DEADLINE,
-  /* the end of the first batch of metadata was received */
-  GRPC_RECV_END_OF_INITIAL_METADATA,
   /* a message was received from the channels peer */
   GRPC_RECV_MESSAGE,
   /* half-close was received from the channels peer */
   GRPC_RECV_HALF_CLOSE,
   /* full close was received from the channels peer */
   GRPC_RECV_FINISH,
+  /* a status has been sythesized locally */
+  GRPC_RECV_SYNTHETIC_STATUS,
   /* the call has been abnormally terminated */
   GRPC_CANCEL_OP
 } grpc_call_op_type;
@@ -109,14 +103,16 @@ typedef struct {
 
   /* Argument data, matching up with grpc_call_op_type names */
   union {
-    struct {
-      grpc_pollset *pollset;
-    } start;
     grpc_byte_buffer *message;
-    grpc_mdelem *metadata;
-    gpr_timespec deadline;
+    grpc_metadata_batch metadata;
+    struct {
+      grpc_status_code status;
+      const char *message;
+    } synthetic_status;
   } data;
 
+  grpc_pollset *bind_pollset;
+
   /* Must be called when processing of this call-op is complete.
      Signature chosen to match transport flow control callbacks */
   void (*done_cb)(void *user_data, grpc_op_error error);
@@ -291,16 +287,15 @@ grpc_call_stack *grpc_call_stack_from_top_element(grpc_call_element *elem);
 void grpc_call_log_op(char *file, int line, gpr_log_severity severity,
                       grpc_call_element *elem, grpc_call_op *op);
 
-void grpc_call_element_send_metadata(grpc_call_element *cur_elem,
-                                     grpc_mdelem *elem);
-void grpc_call_element_recv_metadata(grpc_call_element *cur_elem,
-                                     grpc_mdelem *elem);
 void grpc_call_element_send_cancel(grpc_call_element *cur_elem);
 void grpc_call_element_send_finish(grpc_call_element *cur_elem);
+void grpc_call_element_recv_status(grpc_call_element *cur_elem,
+                                   grpc_status_code status,
+                                   const char *message);
 
 extern int grpc_trace_channel;
 
 #define GRPC_CALL_LOG_OP(sev, elem, op) \
   if (grpc_trace_channel) grpc_call_log_op(sev, elem, op)
 
-#endif  /* GRPC_INTERNAL_CORE_CHANNEL_CHANNEL_STACK_H */
+#endif /* GRPC_INTERNAL_CORE_CHANNEL_CHANNEL_STACK_H */
diff --git a/src/core/channel/client_channel.c b/src/core/channel/client_channel.c
index 9791f98be88de31f17a345d0a6695711ff64b9c6..bc481e59ca50a521198c25edf9b8eb5f0d9342ed 100644
--- a/src/core/channel/client_channel.c
+++ b/src/core/channel/client_channel.c
@@ -38,7 +38,6 @@
 #include "src/core/channel/channel_args.h"
 #include "src/core/channel/child_channel.h"
 #include "src/core/channel/connected_channel.h"
-#include "src/core/channel/metadata_buffer.h"
 #include "src/core/iomgr/iomgr.h"
 #include "src/core/support/string.h"
 #include <grpc/support/alloc.h>
@@ -70,9 +69,6 @@ typedef struct {
   int transport_setup_initiated;
 
   grpc_channel_args *args;
-
-  /* metadata cache */
-  grpc_mdelem *cancel_status;
 } channel_data;
 
 typedef enum {
@@ -86,20 +82,16 @@ struct call_data {
   /* owning element */
   grpc_call_element *elem;
 
+  gpr_uint8 got_first_send;
+
   call_state state;
-  grpc_metadata_buffer pending_metadata;
   gpr_timespec deadline;
   union {
     struct {
       /* our child call stack */
       grpc_child_call *child_call;
     } active;
-    struct {
-      void (*on_complete)(void *user_data, grpc_op_error error);
-      void *on_complete_user_data;
-      gpr_uint32 start_flags;
-      grpc_pollset *pollset;
-    } waiting;
+    grpc_call_op waiting_op;
   } s;
 };
 
@@ -127,20 +119,6 @@ static void complete_activate(grpc_call_element *elem, grpc_call_op *op) {
 
   GPR_ASSERT(calld->state == CALL_ACTIVE);
 
-  /* sending buffered metadata down the stack before the start call */
-  grpc_metadata_buffer_flush(&calld->pending_metadata, child_elem);
-
-  if (gpr_time_cmp(calld->deadline, gpr_inf_future) != 0) {
-    grpc_call_op dop;
-    dop.type = GRPC_SEND_DEADLINE;
-    dop.dir = GRPC_CALL_DOWN;
-    dop.flags = 0;
-    dop.data.deadline = calld->deadline;
-    dop.done_cb = do_nothing;
-    dop.user_data = NULL;
-    child_elem->filter->call_op(child_elem, elem, &dop);
-  }
-
   /* continue the start call down the stack, this nees to happen after metadata
      are flushed*/
   child_elem->filter->call_op(child_elem, elem, op);
@@ -152,6 +130,7 @@ static void start_rpc(grpc_call_element *elem, grpc_call_op *op) {
   gpr_mu_lock(&chand->mu);
   if (calld->state == CALL_CANCELLED) {
     gpr_mu_unlock(&chand->mu);
+    grpc_metadata_batch_destroy(&op->data.metadata);
     op->done_cb(op->user_data, GRPC_OP_ERROR);
     return;
   }
@@ -184,10 +163,7 @@ static void start_rpc(grpc_call_element *elem, grpc_call_op *op) {
           gpr_realloc(chand->waiting_children,
                       chand->waiting_child_capacity * sizeof(call_data *));
     }
-    calld->s.waiting.on_complete = op->done_cb;
-    calld->s.waiting.on_complete_user_data = op->user_data;
-    calld->s.waiting.start_flags = op->flags;
-    calld->s.waiting.pollset = op->data.start.pollset;
+    calld->s.waiting_op = *op;
     chand->waiting_children[chand->waiting_child_count++] = calld;
     gpr_mu_unlock(&chand->mu);
 
@@ -212,15 +188,8 @@ static void remove_waiting_child(channel_data *chand, call_data *calld) {
 
 static void send_up_cancelled_ops(grpc_call_element *elem) {
   grpc_call_op finish_op;
-  channel_data *chand = elem->channel_data;
   /* send up a synthesized status */
-  finish_op.type = GRPC_RECV_METADATA;
-  finish_op.dir = GRPC_CALL_UP;
-  finish_op.flags = 0;
-  finish_op.data.metadata = grpc_mdelem_ref(chand->cancel_status);
-  finish_op.done_cb = do_nothing;
-  finish_op.user_data = NULL;
-  grpc_call_next_op(elem, &finish_op);
+  grpc_call_element_recv_status(elem, GRPC_STATUS_CANCELLED, "Cancelled");
   /* send up a finish */
   finish_op.type = GRPC_RECV_FINISH;
   finish_op.dir = GRPC_CALL_UP;
@@ -243,12 +212,12 @@ static void cancel_rpc(grpc_call_element *elem, grpc_call_op *op) {
       child_elem->filter->call_op(child_elem, elem, op);
       return; /* early out */
     case CALL_WAITING:
+      grpc_metadata_batch_destroy(&calld->s.waiting_op.data.metadata);
       remove_waiting_child(chand, calld);
       calld->state = CALL_CANCELLED;
       gpr_mu_unlock(&chand->mu);
       send_up_cancelled_ops(elem);
-      calld->s.waiting.on_complete(calld->s.waiting.on_complete_user_data,
-                                   GRPC_OP_ERROR);
+      calld->s.waiting_op.done_cb(calld->s.waiting_op.user_data, GRPC_OP_ERROR);
       return; /* early out */
     case CALL_CREATED:
       calld->state = CALL_CANCELLED;
@@ -271,15 +240,13 @@ static void call_op(grpc_call_element *elem, grpc_call_element *from_elem,
 
   switch (op->type) {
     case GRPC_SEND_METADATA:
-      grpc_metadata_buffer_queue(&calld->pending_metadata, op);
-      break;
-    case GRPC_SEND_DEADLINE:
-      calld->deadline = op->data.deadline;
-      op->done_cb(op->user_data, GRPC_OP_OK);
-      break;
-    case GRPC_SEND_START:
-      /* filter out the start event to find which child to send on */
-      start_rpc(elem, op);
+      if (!calld->got_first_send) {
+        /* filter out the start event to find which child to send on */
+        calld->got_first_send = 1;
+        start_rpc(elem, op);
+      } else {
+        grpc_call_next_op(elem, op);
+      }
       break;
     case GRPC_CANCEL_OP:
       cancel_rpc(elem, op);
@@ -382,12 +349,6 @@ static void channel_op(grpc_channel_element *elem,
   }
 }
 
-static void error_bad_on_complete(void *arg, grpc_op_error error) {
-  gpr_log(GPR_ERROR,
-          "Waiting finished but not started? Bad on_complete callback");
-  abort();
-}
-
 /* Constructor for call_data */
 static void init_call_elem(grpc_call_element *elem,
                            const void *server_transport_data) {
@@ -398,23 +359,22 @@ static void init_call_elem(grpc_call_element *elem,
   calld->elem = elem;
   calld->state = CALL_CREATED;
   calld->deadline = gpr_inf_future;
-  calld->s.waiting.on_complete = error_bad_on_complete;
-  calld->s.waiting.on_complete_user_data = NULL;
-  grpc_metadata_buffer_init(&calld->pending_metadata);
+  calld->got_first_send = 0;
 }
 
 /* Destructor for call_data */
 static void destroy_call_elem(grpc_call_element *elem) {
   call_data *calld = elem->call_data;
 
-  /* if the metadata buffer is not flushed, destroy it here. */
-  grpc_metadata_buffer_destroy(&calld->pending_metadata, GRPC_OP_OK);
   /* if the call got activated, we need to destroy the child stack also, and
      remove it from the in-flight requests tracked by the child_entry we
      picked */
   if (calld->state == CALL_ACTIVE) {
     grpc_child_call_destroy(calld->s.active.child_call);
   }
+  if (calld->state == CALL_WAITING) {
+    grpc_metadata_batch_destroy(&calld->s.waiting_op.data.metadata);
+  }
 }
 
 /* Constructor for channel_data */
@@ -423,7 +383,6 @@ static void init_channel_elem(grpc_channel_element *elem,
                               grpc_mdctx *metadata_context, int is_first,
                               int is_last) {
   channel_data *chand = elem->channel_data;
-  char temp[GPR_LTOA_MIN_BUFSIZE];
 
   GPR_ASSERT(!is_first);
   GPR_ASSERT(is_last);
@@ -437,10 +396,6 @@ static void init_channel_elem(grpc_channel_element *elem,
   chand->transport_setup = NULL;
   chand->transport_setup_initiated = 0;
   chand->args = grpc_channel_args_copy(args);
-
-  gpr_ltoa(GRPC_STATUS_CANCELLED, temp);
-  chand->cancel_status =
-      grpc_mdelem_from_strings(metadata_context, "grpc-status", temp);
 }
 
 /* Destructor for channel_data */
@@ -455,7 +410,6 @@ static void destroy_channel_elem(grpc_channel_element *elem) {
   }
 
   grpc_channel_args_destroy(chand->args);
-  grpc_mdelem_unref(chand->cancel_status);
 
   gpr_mu_destroy(&chand->mu);
   GPR_ASSERT(chand->waiting_child_count == 0);
@@ -463,9 +417,10 @@ static void destroy_channel_elem(grpc_channel_element *elem) {
 }
 
 const grpc_channel_filter grpc_client_channel_filter = {
-    call_op,           channel_op,           sizeof(call_data),
-    init_call_elem,    destroy_call_elem,    sizeof(channel_data),
-    init_channel_elem, destroy_channel_elem, "client-channel", };
+    call_op, channel_op, sizeof(call_data), init_call_elem, destroy_call_elem,
+    sizeof(channel_data), init_channel_elem, destroy_channel_elem,
+    "client-channel",
+};
 
 grpc_transport_setup_result grpc_client_channel_transport_setup_complete(
     grpc_channel_stack *channel_stack, grpc_transport *transport,
@@ -520,13 +475,7 @@ grpc_transport_setup_result grpc_client_channel_transport_setup_complete(
   call_ops = gpr_malloc(sizeof(grpc_call_op) * waiting_child_count);
 
   for (i = 0; i < waiting_child_count; i++) {
-    call_ops[i].type = GRPC_SEND_START;
-    call_ops[i].dir = GRPC_CALL_DOWN;
-    call_ops[i].flags = waiting_children[i]->s.waiting.start_flags;
-    call_ops[i].done_cb = waiting_children[i]->s.waiting.on_complete;
-    call_ops[i].user_data =
-        waiting_children[i]->s.waiting.on_complete_user_data;
-    call_ops[i].data.start.pollset = waiting_children[i]->s.waiting.pollset;
+    call_ops[i] = waiting_children[i]->s.waiting_op;
     if (!prepare_activate(waiting_children[i]->elem, chand->active_child)) {
       waiting_children[i] = NULL;
       call_ops[i].done_cb(call_ops[i].user_data, GRPC_OP_ERROR);
diff --git a/src/core/channel/connected_channel.c b/src/core/channel/connected_channel.c
index 62611e08f318f733162bcb7714cc40607bdef816..711274bfe1bd5f393f937a21090580f013ed83b5 100644
--- a/src/core/channel/connected_channel.c
+++ b/src/core/channel/connected_channel.c
@@ -60,7 +60,6 @@ typedef struct connected_channel_call_data {
   gpr_uint32 max_message_length;
   gpr_uint32 incoming_message_length;
   gpr_uint8 reading_message;
-  gpr_uint8 got_metadata_boundary;
   gpr_uint8 got_read_close;
   gpr_slice_buffer incoming_message;
   gpr_uint32 outgoing_buffer_length_estimate;
@@ -120,27 +119,20 @@ static void call_op(grpc_call_element *elem, grpc_call_element *from_elem,
   GPR_ASSERT(elem->filter == &grpc_connected_channel_filter);
   GRPC_CALL_LOG_OP(GPR_INFO, elem, op);
 
+  if (op->bind_pollset) {
+    grpc_transport_add_to_pollset(chand->transport, op->bind_pollset);
+  }
+
   switch (op->type) {
     case GRPC_SEND_METADATA:
       grpc_sopb_add_metadata(&calld->outgoing_sopb, op->data.metadata);
-      grpc_sopb_add_flow_ctl_cb(&calld->outgoing_sopb, op->done_cb,
-                                op->user_data);
-      break;
-    case GRPC_SEND_DEADLINE:
-      grpc_sopb_add_deadline(&calld->outgoing_sopb, op->data.deadline);
-      grpc_sopb_add_flow_ctl_cb(&calld->outgoing_sopb, op->done_cb,
-                                op->user_data);
-      break;
-    case GRPC_SEND_START:
-      grpc_transport_add_to_pollset(chand->transport, op->data.start.pollset);
-      grpc_sopb_add_metadata_boundary(&calld->outgoing_sopb);
       end_bufferable_op(op, chand, calld, 0);
       break;
     case GRPC_SEND_MESSAGE:
       grpc_sopb_add_begin_message(&calld->outgoing_sopb,
                                   grpc_byte_buffer_length(op->data.message),
                                   op->flags);
-      /* fall-through */
+    /* fall-through */
     case GRPC_SEND_PREFORMATTED_MESSAGE:
       copy_byte_buffer_to_stream_ops(op->data.message, &calld->outgoing_sopb);
       calld->outgoing_buffer_length_estimate +=
@@ -200,7 +192,6 @@ static void init_call_elem(grpc_call_element *elem,
   grpc_sopb_init(&calld->outgoing_sopb);
 
   calld->reading_message = 0;
-  calld->got_metadata_boundary = 0;
   calld->got_read_close = 0;
   calld->outgoing_buffer_length_estimate = 0;
   calld->max_message_length = chand->max_message_length;
@@ -259,9 +250,9 @@ static void destroy_channel_elem(grpc_channel_element *elem) {
 }
 
 const grpc_channel_filter grpc_connected_channel_filter = {
-    call_op,           channel_op,           sizeof(call_data),
-    init_call_elem,    destroy_call_elem,    sizeof(channel_data),
-    init_channel_elem, destroy_channel_elem, "connected", };
+    call_op, channel_op, sizeof(call_data), init_call_elem, destroy_call_elem,
+    sizeof(channel_data), init_channel_elem, destroy_channel_elem, "connected",
+};
 
 static gpr_slice alloc_recv_buffer(void *user_data, grpc_transport *transport,
                                    grpc_stream *stream, size_t size_hint) {
@@ -307,8 +298,8 @@ static void finish_message(channel_data *chand, call_data *calld) {
   call_op.type = GRPC_RECV_MESSAGE;
   call_op.done_cb = do_nothing;
   /* TODO(ctiller): this could be a lot faster if coded directly */
-  call_op.data.message = grpc_byte_buffer_create(
-      calld->incoming_message.slices, calld->incoming_message.count);
+  call_op.data.message = grpc_byte_buffer_create(calld->incoming_message.slices,
+                                                 calld->incoming_message.count);
   gpr_slice_buffer_reset_and_unref(&calld->incoming_message);
 
   /* disable window updates until we get a request more from above */
@@ -320,6 +311,19 @@ static void finish_message(channel_data *chand, call_data *calld) {
   grpc_call_next_op(elem, &call_op);
 }
 
+static void got_metadata(grpc_call_element *elem,
+                         grpc_metadata_batch metadata) {
+  grpc_call_op op;
+  op.type = GRPC_RECV_METADATA;
+  op.dir = GRPC_CALL_UP;
+  op.flags = 0;
+  op.data.metadata = metadata;
+  op.done_cb = do_nothing;
+  op.user_data = NULL;
+
+  grpc_call_next_op(elem, &op);
+}
+
 /* Handle incoming stream ops from the transport, translating them into
    call_ops to pass up the call stack */
 static void recv_batch(void *user_data, grpc_transport *transport,
@@ -339,40 +343,12 @@ static void recv_batch(void *user_data, grpc_transport *transport,
     stream_op = ops + i;
     switch (stream_op->type) {
       case GRPC_OP_FLOW_CTL_CB:
-        gpr_log(GPR_ERROR,
-                "should not receive flow control ops from transport");
-        abort();
+        stream_op->data.flow_ctl_cb.cb(stream_op->data.flow_ctl_cb.arg, 1);
         break;
       case GRPC_NO_OP:
         break;
       case GRPC_OP_METADATA:
-        call_op.type = GRPC_RECV_METADATA;
-        call_op.dir = GRPC_CALL_UP;
-        call_op.flags = 0;
-        call_op.data.metadata = stream_op->data.metadata;
-        call_op.done_cb = do_nothing;
-        call_op.user_data = NULL;
-        grpc_call_next_op(elem, &call_op);
-        break;
-      case GRPC_OP_DEADLINE:
-        call_op.type = GRPC_RECV_DEADLINE;
-        call_op.dir = GRPC_CALL_UP;
-        call_op.flags = 0;
-        call_op.data.deadline = stream_op->data.deadline;
-        call_op.done_cb = do_nothing;
-        call_op.user_data = NULL;
-        grpc_call_next_op(elem, &call_op);
-        break;
-      case GRPC_OP_METADATA_BOUNDARY:
-        if (!calld->got_metadata_boundary) {
-          calld->got_metadata_boundary = 1;
-          call_op.type = GRPC_RECV_END_OF_INITIAL_METADATA;
-          call_op.dir = GRPC_CALL_UP;
-          call_op.flags = 0;
-          call_op.done_cb = do_nothing;
-          call_op.user_data = NULL;
-          grpc_call_next_op(elem, &call_op);
-        }
+        got_metadata(elem, stream_op->data.metadata);
         break;
       case GRPC_OP_BEGIN_MESSAGE:
         /* can't begin a message when we're still reading a message */
@@ -495,7 +471,8 @@ static void transport_closed(void *user_data, grpc_transport *transport) {
 
 const grpc_transport_callbacks connected_channel_transport_callbacks = {
     alloc_recv_buffer, accept_stream,    recv_batch,
-    transport_goaway,  transport_closed, };
+    transport_goaway,  transport_closed,
+};
 
 grpc_transport_setup_result grpc_connected_channel_bind_transport(
     grpc_channel_stack *channel_stack, grpc_transport *transport) {
diff --git a/src/core/channel/http_client_filter.c b/src/core/channel/http_client_filter.c
index 3ccc39b717fa4ef836e20a438c4b64aee4c8beac..56e12342d7e9a1a1b91847cbf8460bafbd2c9a8d 100644
--- a/src/core/channel/http_client_filter.c
+++ b/src/core/channel/http_client_filter.c
@@ -35,7 +35,10 @@
 #include <grpc/support/log.h>
 
 typedef struct call_data {
-  int sent_headers;
+  grpc_linked_mdelem method;
+  grpc_linked_mdelem scheme;
+  grpc_linked_mdelem te_trailers;
+  grpc_linked_mdelem content_type;
 } call_data;
 
 typedef struct channel_data {
@@ -49,6 +52,18 @@ typedef struct channel_data {
 /* used to silence 'variable not used' warnings */
 static void ignore_unused(void *ignored) {}
 
+static grpc_mdelem *client_filter(void *user_data, grpc_mdelem *md) {
+  grpc_call_element *elem = user_data;
+  channel_data *channeld = elem->channel_data;
+  if (md == channeld->status) {
+    return NULL;
+  } else if (md->key == channeld->status->key) {
+    grpc_call_element_send_cancel(elem);
+    return NULL;
+  }
+  return md;
+}
+
 /* Called either:
      - in response to an API call (or similar) from above, to send something
      - a network event (or similar) from below, to receive something
@@ -61,42 +76,23 @@ static void call_op(grpc_call_element *elem, grpc_call_element *from_elem,
   channel_data *channeld = elem->channel_data;
   GRPC_CALL_LOG_OP(GPR_INFO, elem, op);
 
-  ignore_unused(calld);
-
   switch (op->type) {
     case GRPC_SEND_METADATA:
-      if (!calld->sent_headers) {
-        /* Send : prefixed headers, which have to be before any application
-         * layer headers. */
-        calld->sent_headers = 1;
-        grpc_call_element_send_metadata(elem, grpc_mdelem_ref(channeld->method));
-        grpc_call_element_send_metadata(elem, grpc_mdelem_ref(channeld->scheme));
-      }
-      grpc_call_next_op(elem, op);
-      break;
-    case GRPC_SEND_START:
-      if (!calld->sent_headers) {
-        /* Send : prefixed headers, if we haven't already */
-        calld->sent_headers = 1;
-        grpc_call_element_send_metadata(elem, grpc_mdelem_ref(channeld->method));
-        grpc_call_element_send_metadata(elem, grpc_mdelem_ref(channeld->scheme));
-      }
-      /* Send non : prefixed headers */
-      grpc_call_element_send_metadata(elem, grpc_mdelem_ref(channeld->te_trailers));
-      grpc_call_element_send_metadata(elem, grpc_mdelem_ref(channeld->content_type));
+      /* Send : prefixed headers, which have to be before any application
+       * layer headers. */
+      grpc_metadata_batch_add_head(&op->data.metadata, &calld->method,
+                                   grpc_mdelem_ref(channeld->method));
+      grpc_metadata_batch_add_head(&op->data.metadata, &calld->scheme,
+                                   grpc_mdelem_ref(channeld->scheme));
+      grpc_metadata_batch_add_tail(&op->data.metadata, &calld->te_trailers,
+                                   grpc_mdelem_ref(channeld->te_trailers));
+      grpc_metadata_batch_add_tail(&op->data.metadata, &calld->content_type,
+                                   grpc_mdelem_ref(channeld->content_type));
       grpc_call_next_op(elem, op);
       break;
     case GRPC_RECV_METADATA:
-      if (op->data.metadata == channeld->status) {
-        grpc_mdelem_unref(op->data.metadata);
-        op->done_cb(op->user_data, GRPC_OP_OK);
-      } else if (op->data.metadata->key == channeld->status->key) {
-        grpc_mdelem_unref(op->data.metadata);
-        op->done_cb(op->user_data, GRPC_OP_OK);
-        grpc_call_element_send_cancel(elem);
-      } else {
-        grpc_call_next_op(elem, op);
-      }
+      grpc_metadata_batch_filter(&op->data.metadata, client_filter, elem);
+      grpc_call_next_op(elem, op);
       break;
     default:
       /* pass control up or down the stack depending on op->dir */
@@ -124,16 +120,7 @@ static void channel_op(grpc_channel_element *elem,
 
 /* Constructor for call_data */
 static void init_call_elem(grpc_call_element *elem,
-                           const void *server_transport_data) {
-  /* grab pointers to our data from the call element */
-  call_data *calld = elem->call_data;
-  channel_data *channeld = elem->channel_data;
-
-  ignore_unused(channeld);
-
-  /* initialize members */
-  calld->sent_headers = 0;
-}
+                           const void *server_transport_data) {}
 
 /* Destructor for call_data */
 static void destroy_call_elem(grpc_call_element *elem) {
@@ -194,6 +181,6 @@ static void destroy_channel_elem(grpc_channel_element *elem) {
 }
 
 const grpc_channel_filter grpc_http_client_filter = {
-    call_op,           channel_op,           sizeof(call_data),
-    init_call_elem,    destroy_call_elem,    sizeof(channel_data),
-    init_channel_elem, destroy_channel_elem, "http-client"};
+    call_op, channel_op, sizeof(call_data), init_call_elem, destroy_call_elem,
+    sizeof(channel_data), init_channel_elem, destroy_channel_elem,
+    "http-client"};
diff --git a/src/core/channel/http_server_filter.c b/src/core/channel/http_server_filter.c
index 9da8b333ca0b642029419864420e7b6bfefbc806..0bfe2f2e306ca0850fcb1d66249a3a4492d5bc9b 100644
--- a/src/core/channel/http_server_filter.c
+++ b/src/core/channel/http_server_filter.c
@@ -38,8 +38,6 @@
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
 
-typedef enum { NOT_RECEIVED, POST, GET } known_method_type;
-
 typedef struct {
   grpc_mdelem *path;
   grpc_mdelem *content_type;
@@ -47,16 +45,17 @@ typedef struct {
 } gettable;
 
 typedef struct call_data {
-  known_method_type seen_method;
+  gpr_uint8 got_initial_metadata;
+  gpr_uint8 seen_path;
+  gpr_uint8 seen_post;
   gpr_uint8 sent_status;
   gpr_uint8 seen_scheme;
   gpr_uint8 seen_te_trailers;
-  grpc_mdelem *path;
+  grpc_linked_mdelem status;
 } call_data;
 
 typedef struct channel_data {
   grpc_mdelem *te_trailers;
-  grpc_mdelem *method_get;
   grpc_mdelem *method_post;
   grpc_mdelem *http_scheme;
   grpc_mdelem *https_scheme;
@@ -78,38 +77,70 @@ typedef struct channel_data {
 /* used to silence 'variable not used' warnings */
 static void ignore_unused(void *ignored) {}
 
-/* Handle 'GET': not technically grpc, so probably a web browser hitting
-   us */
-static void payload_done(void *elem, grpc_op_error error) {
-  if (error == GRPC_OP_OK) {
-    grpc_call_element_send_finish(elem);
-  }
-}
-
-static void handle_get(grpc_call_element *elem) {
+static grpc_mdelem *server_filter(void *user_data, grpc_mdelem *md) {
+  grpc_call_element *elem = user_data;
   channel_data *channeld = elem->channel_data;
   call_data *calld = elem->call_data;
-  grpc_call_op op;
-  size_t i;
 
-  for (i = 0; i < channeld->gettable_count; i++) {
-    if (channeld->gettables[i].path == calld->path) {
-      grpc_call_element_send_metadata(elem,
-                                      grpc_mdelem_ref(channeld->status_ok));
-      grpc_call_element_send_metadata(
-          elem, grpc_mdelem_ref(channeld->gettables[i].content_type));
-      op.type = GRPC_SEND_PREFORMATTED_MESSAGE;
-      op.dir = GRPC_CALL_DOWN;
-      op.flags = 0;
-      op.data.message = channeld->gettables[i].content;
-      op.done_cb = payload_done;
-      op.user_data = elem;
-      grpc_call_next_op(elem, &op);
+  /* Check if it is one of the headers we care about. */
+  if (md == channeld->te_trailers || md == channeld->method_post ||
+      md == channeld->http_scheme || md == channeld->https_scheme ||
+      md == channeld->grpc_scheme || md == channeld->content_type) {
+    /* swallow it */
+    if (md == channeld->method_post) {
+      calld->seen_post = 1;
+    } else if (md->key == channeld->http_scheme->key) {
+      calld->seen_scheme = 1;
+    } else if (md == channeld->te_trailers) {
+      calld->seen_te_trailers = 1;
     }
+    /* TODO(klempner): Track that we've seen all the headers we should
+       require */
+    return NULL;
+  } else if (md->key == channeld->content_type->key) {
+    if (strncmp(grpc_mdstr_as_c_string(md->value), "application/grpc+", 17) ==
+        0) {
+      /* Although the C implementation doesn't (currently) generate them,
+         any custom +-suffix is explicitly valid. */
+      /* TODO(klempner): We should consider preallocating common values such
+         as +proto or +json, or at least stashing them if we see them. */
+      /* TODO(klempner): Should we be surfacing this to application code? */
+    } else {
+      /* TODO(klempner): We're currently allowing this, but we shouldn't
+         see it without a proxy so log for now. */
+      gpr_log(GPR_INFO, "Unexpected content-type %s",
+              channeld->content_type->key);
+    }
+    return NULL;
+  } else if (md->key == channeld->te_trailers->key ||
+             md->key == channeld->method_post->key ||
+             md->key == channeld->http_scheme->key ||
+             md->key == channeld->content_type->key) {
+    gpr_log(GPR_ERROR, "Invalid %s: header: '%s'",
+            grpc_mdstr_as_c_string(md->key), grpc_mdstr_as_c_string(md->value));
+    /* swallow it and error everything out. */
+    /* TODO(klempner): We ought to generate more descriptive error messages
+       on the wire here. */
+    grpc_call_element_send_cancel(elem);
+    return NULL;
+  } else if (md->key == channeld->path_key) {
+    if (calld->seen_path) {
+      gpr_log(GPR_ERROR, "Received :path twice");
+      return NULL;
+    }
+    calld->seen_path = 1;
+    return md;
+  } else if (md->key == channeld->host_key) {
+    /* translate host to :authority since :authority may be
+       omitted */
+    grpc_mdelem *authority = grpc_mdelem_from_metadata_strings(
+        channeld->mdctx, grpc_mdstr_ref(channeld->authority_key),
+        grpc_mdstr_ref(md->value));
+    grpc_mdelem_unref(md);
+    return authority;
+  } else {
+    return md;
   }
-  grpc_call_element_send_metadata(elem,
-                                  grpc_mdelem_ref(channeld->status_not_found));
-  grpc_call_element_send_finish(elem);
 }
 
 /* Called either:
@@ -126,115 +157,44 @@ static void call_op(grpc_call_element *elem, grpc_call_element *from_elem,
 
   switch (op->type) {
     case GRPC_RECV_METADATA:
-      /* Check if it is one of the headers we care about. */
-      if (op->data.metadata == channeld->te_trailers ||
-          op->data.metadata == channeld->method_get ||
-          op->data.metadata == channeld->method_post ||
-          op->data.metadata == channeld->http_scheme ||
-          op->data.metadata == channeld->https_scheme ||
-          op->data.metadata == channeld->grpc_scheme ||
-          op->data.metadata == channeld->content_type) {
-        /* swallow it */
-        if (op->data.metadata == channeld->method_get) {
-          calld->seen_method = GET;
-        } else if (op->data.metadata == channeld->method_post) {
-          calld->seen_method = POST;
-        } else if (op->data.metadata->key == channeld->http_scheme->key) {
-          calld->seen_scheme = 1;
-        } else if (op->data.metadata == channeld->te_trailers) {
-          calld->seen_te_trailers = 1;
-        }
-        /* TODO(klempner): Track that we've seen all the headers we should
-           require */
-        grpc_mdelem_unref(op->data.metadata);
-        op->done_cb(op->user_data, GRPC_OP_OK);
-      } else if (op->data.metadata->key == channeld->content_type->key) {
-        if (strncmp(grpc_mdstr_as_c_string(op->data.metadata->value),
-                    "application/grpc+", 17) == 0) {
-          /* Although the C implementation doesn't (currently) generate them,
-             any
-             custom +-suffix is explicitly valid. */
-          /* TODO(klempner): We should consider preallocating common values such
-             as +proto or +json, or at least stashing them if we see them. */
-          /* TODO(klempner): Should we be surfacing this to application code? */
+      grpc_metadata_batch_filter(&op->data.metadata, server_filter, elem);
+      if (!calld->got_initial_metadata) {
+        calld->got_initial_metadata = 1;
+        /* Have we seen the required http2 transport headers?
+           (:method, :scheme, content-type, with :path and :authority covered
+           at the channel level right now) */
+        if (calld->seen_post && calld->seen_scheme && calld->seen_te_trailers &&
+            calld->seen_path) {
+          grpc_call_next_op(elem, op);
         } else {
-          /* TODO(klempner): We're currently allowing this, but we shouldn't
-             see it without a proxy so log for now. */
-          gpr_log(GPR_INFO, "Unexpected content-type %s",
-                  channeld->content_type->key);
-        }
-        grpc_mdelem_unref(op->data.metadata);
-        op->done_cb(op->user_data, GRPC_OP_OK);
-      } else if (op->data.metadata->key == channeld->te_trailers->key ||
-                 op->data.metadata->key == channeld->method_post->key ||
-                 op->data.metadata->key == channeld->http_scheme->key ||
-                 op->data.metadata->key == channeld->content_type->key) {
-        gpr_log(GPR_ERROR, "Invalid %s: header: '%s'",
-                grpc_mdstr_as_c_string(op->data.metadata->key),
-                grpc_mdstr_as_c_string(op->data.metadata->value));
-        /* swallow it and error everything out. */
-        /* TODO(klempner): We ought to generate more descriptive error messages
-           on the wire here. */
-        grpc_mdelem_unref(op->data.metadata);
-        op->done_cb(op->user_data, GRPC_OP_OK);
-        grpc_call_element_send_cancel(elem);
-      } else if (op->data.metadata->key == channeld->path_key) {
-        if (calld->path != NULL) {
-          gpr_log(GPR_ERROR, "Received :path twice");
-          grpc_mdelem_unref(calld->path);
+          if (!calld->seen_path) {
+            gpr_log(GPR_ERROR, "Missing :path header");
+          }
+          if (!calld->seen_post) {
+            gpr_log(GPR_ERROR, "Missing :method header");
+          }
+          if (!calld->seen_scheme) {
+            gpr_log(GPR_ERROR, "Missing :scheme header");
+          }
+          if (!calld->seen_te_trailers) {
+            gpr_log(GPR_ERROR, "Missing te trailers header");
+          }
+          /* Error this call out */
+          grpc_metadata_batch_destroy(&op->data.metadata);
+          op->done_cb(op->user_data, GRPC_OP_OK);
+          grpc_call_element_send_cancel(elem);
         }
-        calld->path = op->data.metadata;
-        op->done_cb(op->user_data, GRPC_OP_OK);
-      } else if (op->data.metadata->key == channeld->host_key) {
-        /* translate host to :authority since :authority may be
-           omitted */
-        grpc_mdelem *authority = grpc_mdelem_from_metadata_strings(
-            channeld->mdctx, grpc_mdstr_ref(channeld->authority_key),
-            grpc_mdstr_ref(op->data.metadata->value));
-        grpc_mdelem_unref(op->data.metadata);
-        op->data.metadata = authority;
-        /* pass the event up */
-        grpc_call_next_op(elem, op);
       } else {
-        /* pass the event up */
         grpc_call_next_op(elem, op);
       }
       break;
-    case GRPC_RECV_END_OF_INITIAL_METADATA:
-      /* Have we seen the required http2 transport headers?
-         (:method, :scheme, content-type, with :path and :authority covered
-         at the channel level right now) */
-      if (calld->seen_method == POST && calld->seen_scheme &&
-          calld->seen_te_trailers && calld->path) {
-        grpc_call_element_recv_metadata(elem, calld->path);
-        calld->path = NULL;
-        grpc_call_next_op(elem, op);
-      } else if (calld->seen_method == GET) {
-        handle_get(elem);
-      } else {
-        if (calld->seen_method == NOT_RECEIVED) {
-          gpr_log(GPR_ERROR, "Missing :method header");
-        }
-        if (!calld->seen_scheme) {
-          gpr_log(GPR_ERROR, "Missing :scheme header");
-        }
-        if (!calld->seen_te_trailers) {
-          gpr_log(GPR_ERROR, "Missing te trailers header");
-        }
-        /* Error this call out */
-        op->done_cb(op->user_data, GRPC_OP_OK);
-        grpc_call_element_send_cancel(elem);
-      }
-      break;
-    case GRPC_SEND_START:
     case GRPC_SEND_METADATA:
       /* If we haven't sent status 200 yet, we need to so so because it needs to
          come before any non : prefixed metadata. */
       if (!calld->sent_status) {
         calld->sent_status = 1;
-        /* status is reffed by grpc_call_element_send_metadata */
-        grpc_call_element_send_metadata(elem,
-                                        grpc_mdelem_ref(channeld->status_ok));
+        grpc_metadata_batch_add_head(&op->data.metadata, &calld->status,
+                                     grpc_mdelem_ref(channeld->status_ok));
       }
       grpc_call_next_op(elem, op);
       break;
@@ -272,25 +232,11 @@ static void init_call_elem(grpc_call_element *elem,
   ignore_unused(channeld);
 
   /* initialize members */
-  calld->path = NULL;
-  calld->sent_status = 0;
-  calld->seen_scheme = 0;
-  calld->seen_method = NOT_RECEIVED;
-  calld->seen_te_trailers = 0;
+  memset(calld, 0, sizeof(*calld));
 }
 
 /* Destructor for call_data */
-static void destroy_call_elem(grpc_call_element *elem) {
-  /* grab pointers to our data from the call element */
-  call_data *calld = elem->call_data;
-  channel_data *channeld = elem->channel_data;
-
-  ignore_unused(channeld);
-
-  if (calld->path) {
-    grpc_mdelem_unref(calld->path);
-  }
-}
+static void destroy_call_elem(grpc_call_element *elem) {}
 
 /* Constructor for channel_data */
 static void init_channel_elem(grpc_channel_element *elem,
@@ -314,7 +260,6 @@ static void init_channel_elem(grpc_channel_element *elem,
   channeld->status_not_found =
       grpc_mdelem_from_strings(mdctx, ":status", "404");
   channeld->method_post = grpc_mdelem_from_strings(mdctx, ":method", "POST");
-  channeld->method_get = grpc_mdelem_from_strings(mdctx, ":method", "GET");
   channeld->http_scheme = grpc_mdelem_from_strings(mdctx, ":scheme", "http");
   channeld->https_scheme = grpc_mdelem_from_strings(mdctx, ":scheme", "https");
   channeld->grpc_scheme = grpc_mdelem_from_strings(mdctx, ":scheme", "grpc");
@@ -369,7 +314,6 @@ static void destroy_channel_elem(grpc_channel_element *elem) {
   grpc_mdelem_unref(channeld->status_ok);
   grpc_mdelem_unref(channeld->status_not_found);
   grpc_mdelem_unref(channeld->method_post);
-  grpc_mdelem_unref(channeld->method_get);
   grpc_mdelem_unref(channeld->http_scheme);
   grpc_mdelem_unref(channeld->https_scheme);
   grpc_mdelem_unref(channeld->grpc_scheme);
diff --git a/src/core/channel/metadata_buffer.c b/src/core/channel/metadata_buffer.c
deleted file mode 100644
index eac852e4a4ab1234fe2ae3ae47c0f74fa94d13c9..0000000000000000000000000000000000000000
--- a/src/core/channel/metadata_buffer.c
+++ /dev/null
@@ -1,149 +0,0 @@
-/*
- *
- * 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/channel/metadata_buffer.h"
-#include <grpc/support/alloc.h>
-#include <grpc/support/log.h>
-#include <grpc/support/useful.h>
-
-#include <string.h>
-
-#define INITIAL_ELEM_CAP 8
-
-/* One queued call; we track offsets to string data in a shared buffer to
-   reduce allocations. See grpc_metadata_buffer_impl for the memory use
-   strategy */
-typedef struct {
-  grpc_mdelem *md;
-  void (*cb)(void *user_data, grpc_op_error error);
-  void *user_data;
-  gpr_uint32 flags;
-} qelem;
-
-/* Memory layout:
-
-  grpc_metadata_buffer_impl
-  followed by an array of qelem  */
-struct grpc_metadata_buffer_impl {
-  /* number of elements in q */
-  size_t elems;
-  /* capacity of q */
-  size_t elem_cap;
-};
-
-#define ELEMS(buffer) ((qelem *)((buffer) + 1))
-
-void grpc_metadata_buffer_init(grpc_metadata_buffer *buffer) {
-  /* start buffer as NULL, indicating no elements */
-  *buffer = NULL;
-}
-
-void grpc_metadata_buffer_destroy(grpc_metadata_buffer *buffer,
-                                  grpc_op_error error) {
-  size_t i;
-  qelem *qe;
-  if (*buffer) {
-    for (i = 0; i < (*buffer)->elems; i++) {
-      qe = &ELEMS(*buffer)[i];
-      grpc_mdelem_unref(qe->md);
-      qe->cb(qe->user_data, error);
-    }
-    gpr_free(*buffer);
-  }
-}
-
-void grpc_metadata_buffer_queue(grpc_metadata_buffer *buffer,
-                                grpc_call_op *op) {
-  grpc_metadata_buffer_impl *impl = *buffer;
-  qelem *qe;
-  size_t bytes;
-
-  GPR_ASSERT(op->type == GRPC_SEND_METADATA || op->type == GRPC_RECV_METADATA);
-
-  if (!impl) {
-    /* this is the first element: allocate enough space to hold the
-       header object and the initial element capacity of qelems */
-    bytes =
-        sizeof(grpc_metadata_buffer_impl) + INITIAL_ELEM_CAP * sizeof(qelem);
-    impl = gpr_malloc(bytes);
-    /* initialize the header object */
-    impl->elems = 0;
-    impl->elem_cap = INITIAL_ELEM_CAP;
-  } else if (impl->elems == impl->elem_cap) {
-    /* more qelems than what we can deal with: grow by doubling size */
-    impl->elem_cap *= 2;
-    bytes = sizeof(grpc_metadata_buffer_impl) + impl->elem_cap * sizeof(qelem);
-    impl = gpr_realloc(impl, bytes);
-  }
-
-  /* append an element to the queue */
-  qe = &ELEMS(impl)[impl->elems];
-  impl->elems++;
-
-  qe->md = op->data.metadata;
-  qe->cb = op->done_cb;
-  qe->user_data = op->user_data;
-  qe->flags = op->flags;
-
-  /* header object may have changed location: store it back */
-  *buffer = impl;
-}
-
-void grpc_metadata_buffer_flush(grpc_metadata_buffer *buffer,
-                                grpc_call_element *elem) {
-  grpc_metadata_buffer_impl *impl = *buffer;
-  grpc_call_op op;
-  qelem *qe;
-  size_t i;
-
-  if (!impl) {
-    /* nothing to send */
-    return;
-  }
-
-  /* construct call_op's, and push them down the stack */
-  op.type = GRPC_SEND_METADATA;
-  op.dir = GRPC_CALL_DOWN;
-  for (i = 0; i < impl->elems; i++) {
-    qe = &ELEMS(impl)[i];
-    op.done_cb = qe->cb;
-    op.user_data = qe->user_data;
-    op.flags = qe->flags;
-    op.data.metadata = qe->md;
-    grpc_call_next_op(elem, &op);
-  }
-
-  /* free data structures and reset to NULL: we can only flush once */
-  gpr_free(impl);
-  *buffer = NULL;
-}
diff --git a/src/core/channel/metadata_buffer.h b/src/core/channel/metadata_buffer.h
deleted file mode 100644
index b7cc5170d13ea5ae62ad87ca31238cf1a04dcbae..0000000000000000000000000000000000000000
--- a/src/core/channel/metadata_buffer.h
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- *
- * 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.
- *
- */
-
-#ifndef GRPC_INTERNAL_CORE_CHANNEL_METADATA_BUFFER_H
-#define GRPC_INTERNAL_CORE_CHANNEL_METADATA_BUFFER_H
-
-#include "src/core/channel/channel_stack.h"
-
-/* Utility code to buffer GRPC_SEND_METADATA calls and pass them down the stack
-   all at once at some otherwise-determined time. Useful for implementing
-   filters that want to queue metadata until a START event chooses some
-   underlying filter stack to send an rpc on. */
-
-/* Clients should declare a member of grpc_metadata_buffer. This may at some
-   point become a typedef for a struct, but for now a pointer suffices */
-typedef struct grpc_metadata_buffer_impl grpc_metadata_buffer_impl;
-typedef grpc_metadata_buffer_impl *grpc_metadata_buffer;
-
-/* Initializes the metadata buffer. Allocates no memory. */
-void grpc_metadata_buffer_init(grpc_metadata_buffer *buffer);
-/* Destroy the metadata buffer. */
-void grpc_metadata_buffer_destroy(grpc_metadata_buffer *buffer,
-                                  grpc_op_error error);
-/* Append a call to the end of a metadata buffer: may allocate memory */
-void grpc_metadata_buffer_queue(grpc_metadata_buffer *buffer, grpc_call_op *op);
-/* Flush all queued operations from the metadata buffer to the element below
-   self */
-void grpc_metadata_buffer_flush(grpc_metadata_buffer *buffer,
-                                grpc_call_element *self);
-/* Count the number of queued elements in the buffer. */
-size_t grpc_metadata_buffer_count(const grpc_metadata_buffer *buffer);
-/* Extract elements as a grpc_metadata*, for presentation to applications.
-   The returned buffer must be freed with
-   grpc_metadata_buffer_cleanup_elements.
-   Clears the metadata buffer (this is a one-shot operation) */
-grpc_metadata *grpc_metadata_buffer_extract_elements(
-    grpc_metadata_buffer *buffer);
-void grpc_metadata_buffer_cleanup_elements(void *elements, grpc_op_error error);
-
-#endif  /* GRPC_INTERNAL_CORE_CHANNEL_METADATA_BUFFER_H */
diff --git a/src/core/iomgr/pollset_multipoller_with_poll_posix.c b/src/core/iomgr/pollset_multipoller_with_poll_posix.c
index bcef7c35b5da8dd04bf83e40be8e9ad671203f0b..25b7cfda1a16d5cf5e5d609167eb0ffa5ca90b19 100644
--- a/src/core/iomgr/pollset_multipoller_with_poll_posix.c
+++ b/src/core/iomgr/pollset_multipoller_with_poll_posix.c
@@ -203,7 +203,7 @@ static int multipoll_with_poll_pollset_maybe_work(
 }
 
 static void multipoll_with_poll_pollset_kick(grpc_pollset *p) {
-  grpc_pollset_kick_kick(&p->kick_state);
+  grpc_pollset_force_kick(p);
 }
 
 static void multipoll_with_poll_pollset_destroy(grpc_pollset *pollset) {
diff --git a/src/core/iomgr/pollset_posix.c b/src/core/iomgr/pollset_posix.c
index 03fd94f136424c0091b2ee19d7063b168825b524..60d0dad6d87bc7f34c234e6b9e89f7bdee6cd350 100644
--- a/src/core/iomgr/pollset_posix.c
+++ b/src/core/iomgr/pollset_posix.c
@@ -47,9 +47,11 @@
 #include "src/core/iomgr/fd_posix.h"
 #include "src/core/iomgr/iomgr_internal.h"
 #include "src/core/iomgr/socket_utils_posix.h"
+#include "src/core/profiling/timers.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
 #include <grpc/support/thd.h>
+#include <grpc/support/tls.h>
 #include <grpc/support/useful.h>
 
 static grpc_pollset g_backup_pollset;
@@ -57,6 +59,8 @@ static int g_shutdown_backup_poller;
 static gpr_event g_backup_poller_done;
 static gpr_event g_backup_pollset_shutdown_done;
 
+GPR_TLS_DECL(g_current_thread_poller);
+
 static void backup_poller(void *p) {
   gpr_timespec delta = gpr_time_from_millis(100);
   gpr_timespec last_poll = gpr_now();
@@ -76,17 +80,21 @@ static void backup_poller(void *p) {
 }
 
 void grpc_pollset_kick(grpc_pollset *p) {
-  if (p->counter) {
+  if (gpr_tls_get(&g_current_thread_poller) != (gpr_intptr)p && p->counter) {
     p->vtable->kick(p);
   }
 }
 
 void grpc_pollset_force_kick(grpc_pollset *p) {
-  grpc_pollset_kick_kick(&p->kick_state);
+  if (gpr_tls_get(&g_current_thread_poller) != (gpr_intptr)p) {
+    grpc_pollset_kick_kick(&p->kick_state);
+  }
 }
 
 static void kick_using_pollset_kick(grpc_pollset *p) {
-  grpc_pollset_kick_kick(&p->kick_state);
+  if (gpr_tls_get(&g_current_thread_poller) != (gpr_intptr)p) {
+    grpc_pollset_kick_kick(&p->kick_state);
+  }
 }
 
 /* global state management */
@@ -96,6 +104,8 @@ grpc_pollset *grpc_backup_pollset(void) { return &g_backup_pollset; }
 void grpc_pollset_global_init(void) {
   gpr_thd_id id;
 
+  gpr_tls_init(&g_current_thread_poller);
+
   /* Initialize kick fd state */
   grpc_pollset_kick_global_init();
 
@@ -129,6 +139,8 @@ void grpc_pollset_global_shutdown(void) {
 
   /* destroy the kick pipes */
   grpc_pollset_kick_global_destroy();
+
+  gpr_tls_destroy(&g_current_thread_poller);
 }
 
 /* main interface */
@@ -161,8 +173,8 @@ void grpc_pollset_del_fd(grpc_pollset *pollset, grpc_fd *fd) {
 
 int grpc_pollset_work(grpc_pollset *pollset, gpr_timespec deadline) {
   /* pollset->mu already held */
-  gpr_timespec now;
-  now = gpr_now();
+  gpr_timespec now = gpr_now();
+  int r;
   if (gpr_time_cmp(now, deadline) > 0) {
     return 0;
   }
@@ -172,7 +184,10 @@ int grpc_pollset_work(grpc_pollset *pollset, gpr_timespec deadline) {
   if (grpc_alarm_check(&pollset->mu, now, &deadline)) {
     return 1;
   }
-  return pollset->vtable->maybe_work(pollset, deadline, now, 1);
+  gpr_tls_set(&g_current_thread_poller, (gpr_intptr)pollset);
+  r = pollset->vtable->maybe_work(pollset, deadline, now, 1);
+  gpr_tls_set(&g_current_thread_poller, 0);
+  return r;
 }
 
 void grpc_pollset_shutdown(grpc_pollset *pollset,
@@ -396,6 +411,7 @@ static int unary_poll_pollset_maybe_work(grpc_pollset *pollset,
   pfd[1].events = grpc_fd_begin_poll(fd, pollset, POLLIN, POLLOUT, &fd_watcher);
 
   r = poll(pfd, GPR_ARRAY_SIZE(pfd), timeout);
+  GRPC_TIMER_MARK(POLL_FINISHED, r);
 
   grpc_fd_end_poll(&fd_watcher);
 
diff --git a/src/core/iomgr/resolve_address_windows.c b/src/core/iomgr/resolve_address_windows.c
index ac31dadd9d78faae8fca27433b6f4b4c512d007d..9b416dfe8aa54febf41ebe4fa0964d08db3f5691 100644
--- a/src/core/iomgr/resolve_address_windows.c
+++ b/src/core/iomgr/resolve_address_windows.c
@@ -65,7 +65,6 @@ grpc_resolved_addresses *grpc_blocking_resolve_address(
   int s;
   size_t i;
   grpc_resolved_addresses *addrs = NULL;
-  const gpr_timespec start_time = gpr_now();
 
   /* parse name, splitting it into host and port parts */
   gpr_split_host_port(name, &host, &port);
@@ -108,9 +107,6 @@ grpc_resolved_addresses *grpc_blocking_resolve_address(
   }
 
   {
-    const gpr_timespec delay = gpr_time_sub(gpr_now(), start_time);
-    const int delay_ms =
-        delay.tv_sec * GPR_MS_PER_SEC + delay.tv_nsec / GPR_NS_PER_MS;
     for (i = 0; i < addrs->naddrs; i++) {
       char *buf;
       grpc_sockaddr_to_string(&buf, (struct sockaddr *)&addrs->addrs[i].addr,
diff --git a/src/core/iomgr/tcp_server_windows.c b/src/core/iomgr/tcp_server_windows.c
index 6e10da97ccb5cf4656952a18b0932275dc599965..fe92846a71622739523f151b4fd27b5c350d9157 100644
--- a/src/core/iomgr/tcp_server_windows.c
+++ b/src/core/iomgr/tcp_server_windows.c
@@ -192,7 +192,7 @@ static void start_accept(server_port *port) {
   }
 
   /* TODO(jtattermusch): probably a race here, we regularly get use-after-free on server shutdown */
-  GPR_ASSERT(port->socket != 0xfeeefeee);
+  GPR_ASSERT(port->socket != (grpc_winsocket*)0xfeeefeee);
   success = port->AcceptEx(port->socket->socket, sock, port->addresses, 0,
                            addrlen, addrlen, &bytes_received,
                            &port->socket->read_info.overlapped);
diff --git a/src/core/security/auth.c b/src/core/security/auth.c
index 130698c11bca1853d42596c8b1f761de75ed0630..4af2c67d83ce28567e1f39a53a9dfe54a692402d 100644
--- a/src/core/security/auth.c
+++ b/src/core/security/auth.c
@@ -44,12 +44,15 @@
 #include "src/core/security/credentials.h"
 #include "src/core/surface/call.h"
 
+#define MAX_CREDENTIALS_METADATA_COUNT 4
+
 /* We can have a per-call credentials. */
 typedef struct {
   grpc_credentials *creds;
   grpc_mdstr *host;
   grpc_mdstr *method;
   grpc_call_op op;
+  grpc_linked_mdelem md_links[MAX_CREDENTIALS_METADATA_COUNT];
 } call_data;
 
 /* We can have a per-channel credentials. */
@@ -62,30 +65,8 @@ typedef struct {
   grpc_mdstr *status_key;
 } channel_data;
 
-static void do_nothing(void *ignored, grpc_op_error error) {}
-
 static void bubbleup_error(grpc_call_element *elem, const char *error_msg) {
-  grpc_call_op finish_op;
-  channel_data *channeld = elem->channel_data;
-  char status[GPR_LTOA_MIN_BUFSIZE];
-
-  gpr_log(GPR_ERROR, "%s", error_msg);
-  finish_op.type = GRPC_RECV_METADATA;
-  finish_op.dir = GRPC_CALL_UP;
-  finish_op.flags = 0;
-  finish_op.data.metadata = grpc_mdelem_from_metadata_strings(
-      channeld->md_ctx, grpc_mdstr_ref(channeld->error_msg_key),
-      grpc_mdstr_from_string(channeld->md_ctx, error_msg));
-  finish_op.done_cb = do_nothing;
-  finish_op.user_data = NULL;
-  grpc_call_next_op(elem, &finish_op);
-
-  gpr_ltoa(GRPC_STATUS_UNAUTHENTICATED, status);
-  finish_op.data.metadata = grpc_mdelem_from_metadata_strings(
-      channeld->md_ctx, grpc_mdstr_ref(channeld->status_key),
-      grpc_mdstr_from_string(channeld->md_ctx, status));
-  grpc_call_next_op(elem, &finish_op);
-
+  grpc_call_element_recv_status(elem, GRPC_STATUS_UNAUTHENTICATED, error_msg);
   grpc_call_element_send_cancel(elem);
 }
 
@@ -93,11 +74,15 @@ static void on_credentials_metadata(void *user_data, grpc_mdelem **md_elems,
                                     size_t num_md,
                                     grpc_credentials_status status) {
   grpc_call_element *elem = (grpc_call_element *)user_data;
+  call_data *calld = elem->call_data;
+  grpc_call_op op = calld->op;
   size_t i;
+  GPR_ASSERT(num_md <= MAX_CREDENTIALS_METADATA_COUNT);
   for (i = 0; i < num_md; i++) {
-    grpc_call_element_send_metadata(elem, grpc_mdelem_ref(md_elems[i]));
+    grpc_metadata_batch_add_tail(&op.data.metadata, &calld->md_links[i],
+                                 grpc_mdelem_ref(md_elems[i]));
   }
-  grpc_call_next_op(elem, &((call_data *)elem->call_data)->op);
+  grpc_call_next_op(elem, &op);
 }
 
 static char *build_service_url(const char *url_scheme, call_data *calld) {
@@ -159,6 +144,7 @@ static void on_host_checked(void *user_data, grpc_security_status status) {
     gpr_asprintf(&error_msg, "Invalid host %s set in :authority metadata.",
                  grpc_mdstr_as_c_string(calld->host));
     bubbleup_error(elem, error_msg);
+    grpc_metadata_batch_destroy(&calld->op.data.metadata);
     gpr_free(error_msg);
     calld->op.done_cb(calld->op.user_data, GRPC_OP_ERROR);
   }
@@ -174,21 +160,22 @@ static void call_op(grpc_call_element *elem, grpc_call_element *from_elem,
   /* grab pointers to our data from the call element */
   call_data *calld = elem->call_data;
   channel_data *channeld = elem->channel_data;
+  grpc_linked_mdelem *l;
 
   switch (op->type) {
     case GRPC_SEND_METADATA:
-      /* Pointer comparison is OK for md_elems created from the same context. */
-      if (op->data.metadata->key == channeld->authority_string) {
-        if (calld->host != NULL) grpc_mdstr_unref(calld->host);
-        calld->host = grpc_mdstr_ref(op->data.metadata->value);
-      } else if (op->data.metadata->key == channeld->path_string) {
-        if (calld->method != NULL) grpc_mdstr_unref(calld->method);
-        calld->method = grpc_mdstr_ref(op->data.metadata->value);
+      for (l = op->data.metadata.list.head; l != NULL; l = l->next) {
+        grpc_mdelem *md = l->md;
+        /* Pointer comparison is OK for md_elems created from the same context.
+         */
+        if (md->key == channeld->authority_string) {
+          if (calld->host != NULL) grpc_mdstr_unref(calld->host);
+          calld->host = grpc_mdstr_ref(md->value);
+        } else if (md->key == channeld->path_string) {
+          if (calld->method != NULL) grpc_mdstr_unref(calld->method);
+          calld->method = grpc_mdstr_ref(md->value);
+        }
       }
-      grpc_call_next_op(elem, op);
-      break;
-
-    case GRPC_SEND_START:
       if (calld->host != NULL) {
         grpc_security_status status;
         const char *call_host = grpc_mdstr_as_c_string(calld->host);
@@ -202,6 +189,7 @@ static void call_op(grpc_call_element *elem, grpc_call_element *from_elem,
                          "Invalid host %s set in :authority metadata.",
                          call_host);
             bubbleup_error(elem, error_msg);
+            grpc_metadata_batch_destroy(&calld->op.data.metadata);
             gpr_free(error_msg);
             op->done_cb(op->user_data, GRPC_OP_ERROR);
           }
@@ -210,7 +198,6 @@ static void call_op(grpc_call_element *elem, grpc_call_element *from_elem,
       }
       send_security_metadata(elem, op);
       break;
-
     default:
       /* pass control up or down the stack depending on op->dir */
       grpc_call_next_op(elem, op);
diff --git a/src/core/support/histogram.c b/src/core/support/histogram.c
index ed344b43e8d0f9fc4a6c0eb9d98e2df5042f4e3b..673affde7136481442d9fbbaaa1699b69af742be 100644
--- a/src/core/support/histogram.c
+++ b/src/core/support/histogram.c
@@ -76,7 +76,7 @@ static size_t bucket_for_unchecked(gpr_histogram *h, double x) {
 
 /* bounds checked version of the above */
 static size_t bucket_for(gpr_histogram *h, double x) {
-  size_t bucket = bucket_for_unchecked(h, GPR_CLAMP(x, 0, h->max_possible));
+  size_t bucket = bucket_for_unchecked(h, GPR_CLAMP(x, 1.0, h->max_possible));
   GPR_ASSERT(bucket < h->num_buckets);
   return bucket;
 }
diff --git a/src/core/surface/call.c b/src/core/surface/call.c
index dba63058b837b80de6a1d83fa502e308fecf23a4..29498056220162d9a6ee98f55fff83093e146e44 100644
--- a/src/core/surface/call.c
+++ b/src/core/surface/call.c
@@ -33,7 +33,6 @@
 
 #include "src/core/surface/call.h"
 #include "src/core/channel/channel_stack.h"
-#include "src/core/channel/metadata_buffer.h"
 #include "src/core/iomgr/alarm.h"
 #include "src/core/support/string.h"
 #include "src/core/surface/byte_buffer_queue.h"
@@ -41,6 +40,7 @@
 #include "src/core/surface/completion_queue.h"
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
+#include <assert.h>
 
 #include <stdio.h>
 #include <stdlib.h>
@@ -68,8 +68,10 @@ typedef struct {
 } completed_request;
 
 /* See request_set in grpc_call below for a description */
-#define REQSET_EMPTY 255
-#define REQSET_DONE 254
+#define REQSET_EMPTY 'X'
+#define REQSET_DONE 'Y'
+
+#define MAX_SEND_INITIAL_METADATA_COUNT 3
 
 typedef struct {
   /* Overall status of the operation: starts OK, may degrade to
@@ -92,6 +94,8 @@ typedef enum {
   /* Status came from the application layer overriding whatever
      the wire says */
   STATUS_FROM_API_OVERRIDE = 0,
+  /* Status was created by some internal channel stack operation */
+  STATUS_FROM_CORE,
   /* Status came from 'the wire' - or somewhere below the surface
      layer */
   STATUS_FROM_WIRE,
@@ -204,12 +208,18 @@ struct grpc_call {
   /* Call refcount - to keep the call alive during asynchronous operations */
   gpr_refcount internal_refcount;
 
+  grpc_linked_mdelem send_initial_metadata[MAX_SEND_INITIAL_METADATA_COUNT];
+  grpc_linked_mdelem status_link;
+  grpc_linked_mdelem details_link;
+  size_t send_initial_metadata_count;
+  gpr_timespec send_deadline;
+
   /* Data that the legacy api needs to track. To be deleted at some point
      soon */
   legacy_state *legacy_state;
 };
 
-#define CALL_STACK_FROM_CALL(call) ((grpc_call_stack *)((call)+1))
+#define CALL_STACK_FROM_CALL(call) ((grpc_call_stack *)((call) + 1))
 #define CALL_FROM_CALL_STACK(call_stack) (((grpc_call *)(call_stack)) - 1)
 #define CALL_ELEM_FROM_CALL(call, idx) \
   grpc_call_stack_element(CALL_STACK_FROM_CALL(call), idx)
@@ -226,9 +236,13 @@ struct grpc_call {
 static void do_nothing(void *ignored, grpc_op_error also_ignored) {}
 static send_action choose_send_action(grpc_call *call);
 static void enact_send_action(grpc_call *call, send_action sa);
+static void set_deadline_alarm(grpc_call *call, gpr_timespec deadline);
 
 grpc_call *grpc_call_create(grpc_channel *channel, grpc_completion_queue *cq,
-                            const void *server_transport_data) {
+                            const void *server_transport_data,
+                            grpc_mdelem **add_initial_metadata,
+                            size_t add_initial_metadata_count,
+                            gpr_timespec send_deadline) {
   size_t i;
   grpc_channel_stack *channel_stack = grpc_channel_get_channel_stack(channel);
   grpc_call *call =
@@ -245,6 +259,12 @@ grpc_call *grpc_call_create(grpc_channel *channel, grpc_completion_queue *cq,
     call->request_set[GRPC_IOREQ_SEND_TRAILING_METADATA] = REQSET_DONE;
     call->request_set[GRPC_IOREQ_SEND_STATUS] = REQSET_DONE;
   }
+  GPR_ASSERT(add_initial_metadata_count < MAX_SEND_INITIAL_METADATA_COUNT);
+  for (i = 0; i < add_initial_metadata_count; i++) {
+    call->send_initial_metadata[i].md = add_initial_metadata[i];
+  }
+  call->send_initial_metadata_count = add_initial_metadata_count;
+  call->send_deadline = send_deadline;
   grpc_channel_internal_ref(channel);
   call->metadata_context = grpc_channel_get_metadata_context(channel);
   /* one ref is dropped in response to destroy, the other in
@@ -252,6 +272,9 @@ grpc_call *grpc_call_create(grpc_channel *channel, grpc_completion_queue *cq,
   gpr_ref_init(&call->internal_refcount, 2);
   grpc_call_stack_init(channel_stack, server_transport_data,
                        CALL_STACK_FROM_CALL(call));
+  if (gpr_time_cmp(send_deadline, gpr_inf_future) != 0) {
+    set_deadline_alarm(call, send_deadline);
+  }
   return call;
 }
 
@@ -284,6 +307,9 @@ static void destroy_call(void *call, int ignored_success) {
   for (i = 0; i < GPR_ARRAY_SIZE(c->buffered_metadata); i++) {
     gpr_free(c->buffered_metadata[i].metadata);
   }
+  for (i = 0; i < c->send_initial_metadata_count; i++) {
+    grpc_mdelem_unref(c->send_initial_metadata[i].md);
+  }
   if (c->legacy_state) {
     destroy_legacy_state(c->legacy_state);
   }
@@ -342,6 +368,7 @@ static void request_more_data(grpc_call *call) {
   op.flags = 0;
   op.done_cb = do_nothing;
   op.user_data = NULL;
+  op.bind_pollset = NULL;
 
   grpc_call_execute_op(call, &op);
 }
@@ -587,15 +614,29 @@ static send_action choose_send_action(grpc_call *call) {
   return SEND_NOTHING;
 }
 
-static void send_metadata(grpc_call *call, grpc_mdelem *elem) {
-  grpc_call_op op;
-  op.type = GRPC_SEND_METADATA;
-  op.dir = GRPC_CALL_DOWN;
-  op.flags = GRPC_WRITE_BUFFER_HINT;
-  op.data.metadata = elem;
-  op.done_cb = do_nothing;
-  op.user_data = NULL;
-  grpc_call_execute_op(call, &op);
+static grpc_mdelem_list chain_metadata_from_app(grpc_call *call, size_t count,
+                                                grpc_metadata *metadata) {
+  size_t i;
+  grpc_mdelem_list out;
+  if (count == 0) {
+    out.head = out.tail = NULL;
+    return out;
+  }
+  for (i = 0; i < count; i++) {
+    grpc_metadata *md = &metadata[i];
+    grpc_metadata *next_md = (i == count - 1) ? NULL : &metadata[i + 1];
+    grpc_metadata *prev_md = (i == 0) ? NULL : &metadata[i - 1];
+    grpc_linked_mdelem *l = (grpc_linked_mdelem *)&md->internal_data;
+    GPR_ASSERT(sizeof(grpc_linked_mdelem) == sizeof(md->internal_data));
+    l->md = grpc_mdelem_from_string_and_buffer(call->metadata_context, md->key,
+                                               (const gpr_uint8 *)md->value,
+                                               md->value_length);
+    l->next = next_md ? (grpc_linked_mdelem *)&next_md->internal_data : NULL;
+    l->prev = prev_md ? (grpc_linked_mdelem *)&prev_md->internal_data : NULL;
+  }
+  out.head = (grpc_linked_mdelem *)&(metadata[0].internal_data);
+  out.tail = (grpc_linked_mdelem *)&(metadata[count - 1].internal_data);
+  return out;
 }
 
 static void enact_send_action(grpc_call *call, send_action sa) {
@@ -614,19 +655,21 @@ static void enact_send_action(grpc_call *call, send_action sa) {
     /* fallthrough */
     case SEND_INITIAL_METADATA:
       data = call->request_data[GRPC_IOREQ_SEND_INITIAL_METADATA];
-      for (i = 0; i < data.send_metadata.count; i++) {
-        const grpc_metadata *md = &data.send_metadata.metadata[i];
-        send_metadata(call,
-                      grpc_mdelem_from_string_and_buffer(
-                          call->metadata_context, md->key,
-                          (const gpr_uint8 *)md->value, md->value_length));
-      }
-      op.type = GRPC_SEND_START;
+      op.type = GRPC_SEND_METADATA;
       op.dir = GRPC_CALL_DOWN;
       op.flags = flags;
-      op.data.start.pollset = grpc_cq_pollset(call->cq);
+      op.data.metadata.list = chain_metadata_from_app(
+          call, data.send_metadata.count, data.send_metadata.metadata);
+      op.data.metadata.garbage.head = op.data.metadata.garbage.tail = NULL;
+      op.data.metadata.deadline = call->send_deadline;
+      for (i = 0; i < call->send_initial_metadata_count; i++) {
+        grpc_metadata_batch_link_head(&op.data.metadata,
+                                      &call->send_initial_metadata[i]);
+      }
+      call->send_initial_metadata_count = 0;
       op.done_cb = finish_start_step;
       op.user_data = call;
+      op.bind_pollset = grpc_cq_pollset(call->cq);
       grpc_call_execute_op(call, &op);
       break;
     case SEND_BUFFERED_MESSAGE:
@@ -640,37 +683,42 @@ static void enact_send_action(grpc_call *call, send_action sa) {
       op.data.message = data.send_message;
       op.done_cb = finish_write_step;
       op.user_data = call;
+      op.bind_pollset = NULL;
       grpc_call_execute_op(call, &op);
       break;
     case SEND_TRAILING_METADATA_AND_FINISH:
       /* send trailing metadata */
       data = call->request_data[GRPC_IOREQ_SEND_TRAILING_METADATA];
-      for (i = 0; i < data.send_metadata.count; i++) {
-        const grpc_metadata *md = &data.send_metadata.metadata[i];
-        send_metadata(call,
-                      grpc_mdelem_from_string_and_buffer(
-                          call->metadata_context, md->key,
-                          (const gpr_uint8 *)md->value, md->value_length));
-      }
+      op.type = GRPC_SEND_METADATA;
+      op.dir = GRPC_CALL_DOWN;
+      op.flags = flags;
+      op.data.metadata.list = chain_metadata_from_app(
+          call, data.send_metadata.count, data.send_metadata.metadata);
+      op.data.metadata.garbage.head = op.data.metadata.garbage.tail = NULL;
+      op.data.metadata.deadline = call->send_deadline;
+      op.bind_pollset = NULL;
       /* send status */
       /* TODO(ctiller): cache common status values */
       data = call->request_data[GRPC_IOREQ_SEND_STATUS];
       gpr_ltoa(data.send_status.code, status_str);
-      send_metadata(
-          call,
+      grpc_metadata_batch_add_tail(
+          &op.data.metadata, &call->status_link,
           grpc_mdelem_from_metadata_strings(
               call->metadata_context,
               grpc_mdstr_ref(grpc_channel_get_status_string(call->channel)),
               grpc_mdstr_from_string(call->metadata_context, status_str)));
       if (data.send_status.details) {
-        send_metadata(
-            call,
+        grpc_metadata_batch_add_tail(
+            &op.data.metadata, &call->details_link,
             grpc_mdelem_from_metadata_strings(
                 call->metadata_context,
                 grpc_mdstr_ref(grpc_channel_get_message_string(call->channel)),
                 grpc_mdstr_from_string(call->metadata_context,
                                        data.send_status.details)));
       }
+      op.done_cb = do_nothing;
+      op.user_data = NULL;
+      grpc_call_execute_op(call, &op);
     /* fallthrough: see choose_send_action for details */
     case SEND_FINISH:
       op.type = GRPC_SEND_FINISH;
@@ -678,6 +726,7 @@ static void enact_send_action(grpc_call *call, send_action sa) {
       op.flags = 0;
       op.done_cb = finish_finish_step;
       op.user_data = call;
+      op.bind_pollset = NULL;
       grpc_call_execute_op(call, &op);
       break;
   }
@@ -831,6 +880,7 @@ grpc_call_error grpc_call_cancel(grpc_call *c) {
   op.flags = 0;
   op.done_cb = do_nothing;
   op.user_data = NULL;
+  op.bind_pollset = NULL;
 
   elem = CALL_ELEM_FROM_CALL(c, 0);
   elem->filter->call_op(elem, NULL, &op);
@@ -875,9 +925,7 @@ static void call_alarm(void *arg, int success) {
   grpc_call_internal_unref(call, 1);
 }
 
-void grpc_call_set_deadline(grpc_call_element *elem, gpr_timespec deadline) {
-  grpc_call *call = CALL_FROM_TOP_ELEM(elem);
-
+static void set_deadline_alarm(grpc_call *call, gpr_timespec deadline) {
   if (call->have_alarm) {
     gpr_log(GPR_ERROR, "Attempt to set deadline alarm twice");
   }
@@ -886,11 +934,15 @@ void grpc_call_set_deadline(grpc_call_element *elem, gpr_timespec deadline) {
   grpc_alarm_init(&call->alarm, deadline, call_alarm, call, gpr_now());
 }
 
-static void set_read_state(grpc_call *call, read_state state) {
-  lock(call);
+static void set_read_state_locked(grpc_call *call, read_state state) {
   GPR_ASSERT(call->read_state < state);
   call->read_state = state;
   finish_read_ops(call);
+}
+
+static void set_read_state(grpc_call *call, read_state state) {
+  lock(call);
+  set_read_state_locked(call, state);
   unlock(call);
 }
 
@@ -914,7 +966,7 @@ static gpr_uint32 decode_status(grpc_mdelem *md) {
   gpr_uint32 status;
   void *user_data = grpc_mdelem_get_user_data(md, destroy_status);
   if (user_data) {
-    status = ((gpr_uint32)(gpr_intptr) user_data) - STATUS_OFFSET;
+    status = ((gpr_uint32)(gpr_intptr)user_data) - STATUS_OFFSET;
   } else {
     if (!gpr_parse_bytes_to_uint32(grpc_mdstr_as_c_string(md->value),
                                    GPR_SLICE_LENGTH(md->value->slice),
@@ -936,52 +988,81 @@ void grpc_call_recv_message(grpc_call_element *elem,
   unlock(call);
 }
 
-void grpc_call_recv_metadata(grpc_call_element *elem, grpc_mdelem *md) {
+void grpc_call_recv_synthetic_status(grpc_call_element *elem,
+                                     grpc_status_code status,
+                                     const char *message) {
   grpc_call *call = CALL_FROM_TOP_ELEM(elem);
-  grpc_mdstr *key = md->key;
+  lock(call);
+  set_status_code(call, STATUS_FROM_CORE, status);
+  set_status_details(call, STATUS_FROM_CORE,
+                     grpc_mdstr_from_string(call->metadata_context, message));
+  unlock(call);
+}
+
+int grpc_call_recv_metadata(grpc_call_element *elem, grpc_metadata_batch *md) {
+  grpc_call *call = CALL_FROM_TOP_ELEM(elem);
+  grpc_linked_mdelem *l;
   grpc_metadata_array *dest;
   grpc_metadata *mdusr;
+  int is_trailing;
+  grpc_mdctx *mdctx = call->metadata_context;
 
   lock(call);
-  if (key == grpc_channel_get_status_string(call->channel)) {
-    set_status_code(call, STATUS_FROM_WIRE, decode_status(md));
-    grpc_mdelem_unref(md);
-  } else if (key == grpc_channel_get_message_string(call->channel)) {
-    set_status_details(call, STATUS_FROM_WIRE, grpc_mdstr_ref(md->value));
-    grpc_mdelem_unref(md);
-  } else {
-    dest = &call->buffered_metadata[call->read_state >=
-                                    READ_STATE_GOT_INITIAL_METADATA];
-    if (dest->count == dest->capacity) {
-      dest->capacity = GPR_MAX(dest->capacity + 8, dest->capacity * 2);
-      dest->metadata =
-          gpr_realloc(dest->metadata, sizeof(grpc_metadata) * dest->capacity);
-    }
-    mdusr = &dest->metadata[dest->count++];
-    mdusr->key = grpc_mdstr_as_c_string(md->key);
-    mdusr->value = grpc_mdstr_as_c_string(md->value);
-    mdusr->value_length = GPR_SLICE_LENGTH(md->value->slice);
-    if (call->owned_metadata_count == call->owned_metadata_capacity) {
-      call->owned_metadata_capacity = GPR_MAX(
-          call->owned_metadata_capacity + 8, call->owned_metadata_capacity * 2);
-      call->owned_metadata =
-          gpr_realloc(call->owned_metadata,
-                      sizeof(grpc_mdelem *) * call->owned_metadata_capacity);
+  is_trailing = call->read_state >= READ_STATE_GOT_INITIAL_METADATA;
+  for (l = md->list.head; l != NULL; l = l->next) {
+    grpc_mdelem *md = l->md;
+    grpc_mdstr *key = md->key;
+    if (key == grpc_channel_get_status_string(call->channel)) {
+      set_status_code(call, STATUS_FROM_WIRE, decode_status(md));
+    } else if (key == grpc_channel_get_message_string(call->channel)) {
+      set_status_details(call, STATUS_FROM_WIRE, grpc_mdstr_ref(md->value));
+    } else {
+      dest = &call->buffered_metadata[is_trailing];
+      if (dest->count == dest->capacity) {
+        dest->capacity = GPR_MAX(dest->capacity + 8, dest->capacity * 2);
+        dest->metadata =
+            gpr_realloc(dest->metadata, sizeof(grpc_metadata) * dest->capacity);
+      }
+      mdusr = &dest->metadata[dest->count++];
+      mdusr->key = grpc_mdstr_as_c_string(md->key);
+      mdusr->value = grpc_mdstr_as_c_string(md->value);
+      mdusr->value_length = GPR_SLICE_LENGTH(md->value->slice);
+      if (call->owned_metadata_count == call->owned_metadata_capacity) {
+        call->owned_metadata_capacity =
+            GPR_MAX(call->owned_metadata_capacity + 8,
+                    call->owned_metadata_capacity * 2);
+        call->owned_metadata =
+            gpr_realloc(call->owned_metadata,
+                        sizeof(grpc_mdelem *) * call->owned_metadata_capacity);
+      }
+      call->owned_metadata[call->owned_metadata_count++] = md;
+      l->md = 0;
     }
-    call->owned_metadata[call->owned_metadata_count++] = md;
+  }
+  if (gpr_time_cmp(md->deadline, gpr_inf_future) != 0) {
+    set_deadline_alarm(call, md->deadline);
+  }
+  if (!is_trailing) {
+    set_read_state_locked(call, READ_STATE_GOT_INITIAL_METADATA);
   }
   unlock(call);
+
+  grpc_mdctx_lock(mdctx);
+  for (l = md->list.head; l; l = l->next) {
+    if (l->md) grpc_mdctx_locked_mdelem_unref(mdctx, l->md);
+  }
+  for (l = md->garbage.head; l; l = l->next) {
+    grpc_mdctx_locked_mdelem_unref(mdctx, l->md);
+  }
+  grpc_mdctx_unlock(mdctx);
+
+  return !is_trailing;
 }
 
 grpc_call_stack *grpc_call_get_call_stack(grpc_call *call) {
   return CALL_STACK_FROM_CALL(call);
 }
 
-void grpc_call_initial_metadata_complete(grpc_call_element *surface_element) {
-  grpc_call *call = grpc_call_from_top_element(surface_element);
-  set_read_state(call, READ_STATE_GOT_INITIAL_METADATA);
-}
-
 /*
  * BATCH API IMPLEMENTATION
  */
diff --git a/src/core/surface/call.h b/src/core/surface/call.h
index 06434f87ac8c09751b3c49ccc98c099449640d7a..f8d0915349ee9774dd316f1e0afcbf6d48e08797 100644
--- a/src/core/surface/call.h
+++ b/src/core/surface/call.h
@@ -35,7 +35,6 @@
 #define GRPC_INTERNAL_CORE_SURFACE_CALL_H
 
 #include "src/core/channel/channel_stack.h"
-#include "src/core/channel/metadata_buffer.h"
 #include <grpc/grpc.h>
 
 /* Primitive operation types - grpc_op's get rewritten into these */
@@ -67,7 +66,7 @@ typedef union {
   } recv_status_details;
   struct {
     size_t count;
-    const grpc_metadata *metadata;
+    grpc_metadata *metadata;
   } send_metadata;
   grpc_byte_buffer *send_message;
   struct {
@@ -86,7 +85,10 @@ typedef void (*grpc_ioreq_completion_func)(grpc_call *call,
                                            void *user_data);
 
 grpc_call *grpc_call_create(grpc_channel *channel, grpc_completion_queue *cq,
-                            const void *server_transport_data);
+                            const void *server_transport_data,
+                            grpc_mdelem **add_initial_metadata,
+                            size_t add_initial_metadata_count,
+                            gpr_timespec send_deadline);
 
 void grpc_call_set_completion_queue(grpc_call *call, grpc_completion_queue *cq);
 grpc_completion_queue *grpc_call_get_completion_queue(grpc_call *call);
@@ -96,8 +98,9 @@ void grpc_call_internal_unref(grpc_call *call, int allow_immediate_deletion);
 
 /* Helpers for grpc_client, grpc_server filters to publish received data to
    the completion queue/surface layer */
-void grpc_call_recv_metadata(grpc_call_element *surface_element,
-                             grpc_mdelem *md);
+/* receive metadata - returns 1 if this was initial metadata */
+int grpc_call_recv_metadata(grpc_call_element *surface_element,
+                            grpc_metadata_batch *md);
 void grpc_call_recv_message(grpc_call_element *surface_element,
                             grpc_byte_buffer *message);
 void grpc_call_read_closed(grpc_call_element *surface_element);
@@ -108,14 +111,12 @@ grpc_call_error grpc_call_start_ioreq_and_call_back(
     grpc_call *call, const grpc_ioreq *reqs, size_t nreqs,
     grpc_ioreq_completion_func on_complete, void *user_data);
 
-/* Called when it's known that the initial batch of metadata is complete */
-void grpc_call_initial_metadata_complete(grpc_call_element *surface_element);
-
-void grpc_call_set_deadline(grpc_call_element *surface_element,
-                            gpr_timespec deadline);
-
 grpc_call_stack *grpc_call_get_call_stack(grpc_call *call);
 
+void grpc_call_recv_synthetic_status(grpc_call_element *elem,
+                                     grpc_status_code status,
+                                     const char *message);
+
 /* Given the top call_element, get the call object. */
 grpc_call *grpc_call_from_top_element(grpc_call_element *surface_element);
 
@@ -128,4 +129,4 @@ void grpc_call_log_batch(char *file, int line, gpr_log_severity severity,
 #define GRPC_CALL_LOG_BATCH(sev, call, ops, nops, tag) \
   if (grpc_trace_batch) grpc_call_log_batch(sev, call, ops, nops, tag)
 
-#endif  /* GRPC_INTERNAL_CORE_SURFACE_CALL_H */
+#endif /* GRPC_INTERNAL_CORE_SURFACE_CALL_H */
diff --git a/src/core/surface/channel.c b/src/core/surface/channel.c
index d3962a00c415d33445833c36113d34f66a095add..29b042e7c1a491ee46913f8a99ee7de1edbbfe09 100644
--- a/src/core/surface/channel.c
+++ b/src/core/surface/channel.c
@@ -62,7 +62,7 @@ struct grpc_channel {
   registered_call *registered_calls;
 };
 
-#define CHANNEL_STACK_FROM_CHANNEL(c) ((grpc_channel_stack *)((c)+1))
+#define CHANNEL_STACK_FROM_CHANNEL(c) ((grpc_channel_stack *)((c) + 1))
 #define CHANNEL_FROM_CHANNEL_STACK(channel_stack) \
   (((grpc_channel *)(channel_stack)) - 1)
 #define CHANNEL_FROM_TOP_ELEM(top_elem) \
@@ -91,44 +91,25 @@ grpc_channel *grpc_channel_create_from_filters(
   return channel;
 }
 
-static void do_nothing(void *ignored, grpc_op_error error) {}
-
 static grpc_call *grpc_channel_create_call_internal(
     grpc_channel *channel, grpc_completion_queue *cq, grpc_mdelem *path_mdelem,
     grpc_mdelem *authority_mdelem, gpr_timespec deadline) {
-  grpc_call *call;
-  grpc_call_op op;
+  grpc_mdelem *send_metadata[2];
 
-  if (!channel->is_client) {
-    gpr_log(GPR_ERROR, "Cannot create a call on the server.");
-    return NULL;
-  }
+  GPR_ASSERT(channel->is_client);
 
-  call = grpc_call_create(channel, cq, NULL);
+  send_metadata[0] = path_mdelem;
+  send_metadata[1] = authority_mdelem;
 
-  /* Add :path and :authority headers. */
-  op.type = GRPC_SEND_METADATA;
-  op.dir = GRPC_CALL_DOWN;
-  op.flags = 0;
-  op.data.metadata = path_mdelem;
-  op.done_cb = do_nothing;
-  op.user_data = NULL;
-  grpc_call_execute_op(call, &op);
-
-  op.data.metadata = authority_mdelem;
-  grpc_call_execute_op(call, &op);
-
-  if (0 != gpr_time_cmp(deadline, gpr_inf_future)) {
-    op.type = GRPC_SEND_DEADLINE;
-    op.dir = GRPC_CALL_DOWN;
-    op.flags = 0;
-    op.data.deadline = deadline;
-    op.done_cb = do_nothing;
-    op.user_data = NULL;
-    grpc_call_execute_op(call, &op);
-  }
+  return grpc_call_create(channel, cq, NULL, send_metadata,
+                          GPR_ARRAY_SIZE(send_metadata), deadline);
+}
 
-  return call;
+grpc_call *grpc_channel_create_call_old(grpc_channel *channel,
+                                        const char *method, const char *host,
+                                        gpr_timespec absolute_deadline) {
+  return grpc_channel_create_call(channel, NULL, method, host,
+                                  absolute_deadline);
 }
 
 grpc_call *grpc_channel_create_call(grpc_channel *channel,
@@ -146,13 +127,6 @@ grpc_call *grpc_channel_create_call(grpc_channel *channel,
       deadline);
 }
 
-grpc_call *grpc_channel_create_call_old(grpc_channel *channel,
-                                        const char *method, const char *host,
-                                        gpr_timespec absolute_deadline) {
-  return grpc_channel_create_call(channel, NULL, method, host,
-                                  absolute_deadline);
-}
-
 void *grpc_channel_register_call(grpc_channel *channel, const char *method,
                                  const char *host) {
   registered_call *rc = gpr_malloc(sizeof(registered_call));
diff --git a/src/core/surface/client.c b/src/core/surface/client.c
index 4d54865d1671b3ddcf5e2704b6d553de6788286a..2f898ff7d7a61b9b8830056048031ee7a4485b7f 100644
--- a/src/core/surface/client.c
+++ b/src/core/surface/client.c
@@ -39,28 +39,17 @@
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
 
-typedef struct {
-  void *unused;
-} call_data;
+typedef struct { void *unused; } call_data;
 
-typedef struct {
-  void *unused;
-} channel_data;
+typedef struct { void *unused; } channel_data;
 
 static void call_op(grpc_call_element *elem, grpc_call_element *from_elem,
                     grpc_call_op *op) {
   GRPC_CALL_LOG_OP(GPR_INFO, elem, op);
 
   switch (op->type) {
-    case GRPC_SEND_DEADLINE:
-      grpc_call_set_deadline(elem, op->data.deadline);
-      grpc_call_next_op(elem, op);
-      break;
     case GRPC_RECV_METADATA:
-      grpc_call_recv_metadata(elem, op->data.metadata);
-      break;
-    case GRPC_RECV_DEADLINE:
-      gpr_log(GPR_ERROR, "Deadline received by client (ignored)");
+      grpc_call_recv_metadata(elem, &op->data.metadata);
       break;
     case GRPC_RECV_MESSAGE:
       grpc_call_recv_message(elem, op->data.message);
@@ -72,8 +61,9 @@ static void call_op(grpc_call_element *elem, grpc_call_element *from_elem,
     case GRPC_RECV_FINISH:
       grpc_call_stream_closed(elem);
       break;
-    case GRPC_RECV_END_OF_INITIAL_METADATA:
-      grpc_call_initial_metadata_complete(elem);
+    case GRPC_RECV_SYNTHETIC_STATUS:
+      grpc_call_recv_synthetic_status(elem, op->data.synthetic_status.status,
+                                      op->data.synthetic_status.message);
       break;
     default:
       GPR_ASSERT(op->dir == GRPC_CALL_DOWN);
@@ -114,6 +104,6 @@ static void init_channel_elem(grpc_channel_element *elem,
 static void destroy_channel_elem(grpc_channel_element *elem) {}
 
 const grpc_channel_filter grpc_client_surface_filter = {
-    call_op,           channel_op,           sizeof(call_data),
-    init_call_elem,    destroy_call_elem,    sizeof(channel_data),
-    init_channel_elem, destroy_channel_elem, "client", };
+    call_op, channel_op, sizeof(call_data), init_call_elem, destroy_call_elem,
+    sizeof(channel_data), init_channel_elem, destroy_channel_elem, "client",
+};
diff --git a/src/core/surface/completion_queue.c b/src/core/surface/completion_queue.c
index 24f4a05071a1fc18cb7b86c00741db460c1349ec..e0135d9fb952396f7ad0a71ef9ae748847347c18 100644
--- a/src/core/surface/completion_queue.c
+++ b/src/core/surface/completion_queue.c
@@ -67,6 +67,8 @@ struct grpc_completion_queue {
   /* When refs drops to zero, we are in shutdown mode, and will be destroyable
      once all queued events are drained */
   gpr_refcount refs;
+  /* Once owning_refs drops to zero, we will destroy the cq */
+  gpr_refcount owning_refs;
   /* the set of low level i/o things that concern this cq */
   grpc_pollset pollset;
   /* 0 initially, 1 once we've begun shutting down */
@@ -91,11 +93,29 @@ grpc_completion_queue *grpc_completion_queue_create(void) {
   memset(cc, 0, sizeof(*cc));
   /* Initial ref is dropped by grpc_completion_queue_shutdown */
   gpr_ref_init(&cc->refs, 1);
+  gpr_ref_init(&cc->owning_refs, 1);
   grpc_pollset_init(&cc->pollset);
   cc->allow_polling = 1;
   return cc;
 }
 
+void grpc_cq_internal_ref(grpc_completion_queue *cc) {
+  gpr_ref(&cc->owning_refs);
+}
+
+static void on_pollset_destroy_done(void *arg) {
+  grpc_completion_queue *cc = arg;
+  grpc_pollset_destroy(&cc->pollset);
+  gpr_free(cc);
+}
+
+void grpc_cq_internal_unref(grpc_completion_queue *cc) {
+  if (gpr_unref(&cc->owning_refs)) {
+    GPR_ASSERT(cc->queue == NULL);
+    grpc_pollset_shutdown(&cc->pollset, on_pollset_destroy_done, cc);
+  }
+}
+
 void grpc_completion_queue_dont_poll_test_only(grpc_completion_queue *cc) {
   cc->allow_polling = 0;
 }
@@ -394,15 +414,8 @@ void grpc_completion_queue_shutdown(grpc_completion_queue *cc) {
   }
 }
 
-static void on_pollset_destroy_done(void *arg) {
-  grpc_completion_queue *cc = arg;
-  grpc_pollset_destroy(&cc->pollset);
-  gpr_free(cc);
-}
-
 void grpc_completion_queue_destroy(grpc_completion_queue *cc) {
-  GPR_ASSERT(cc->queue == NULL);
-  grpc_pollset_shutdown(&cc->pollset, on_pollset_destroy_done, cc);
+  grpc_cq_internal_unref(cc);
 }
 
 void grpc_event_finish(grpc_event *base) {
diff --git a/src/core/surface/completion_queue.h b/src/core/surface/completion_queue.h
index 3a7cc99dda9c1f15a7fbfbc010a566133c574c35..41024cda14eef9454bc7654fe291965c8a409386 100644
--- a/src/core/surface/completion_queue.h
+++ b/src/core/surface/completion_queue.h
@@ -43,6 +43,9 @@
    grpc_event_finish */
 typedef void (*grpc_event_finish_func)(void *user_data, grpc_op_error error);
 
+void grpc_cq_internal_ref(grpc_completion_queue *cc);
+void grpc_cq_internal_unref(grpc_completion_queue *cc);
+
 /* Flag that an operation is beginning: the completion channel will not finish
    shutdown until a corrensponding grpc_cq_end_* call is made */
 void grpc_cq_begin_op(grpc_completion_queue *cc, grpc_call *call,
diff --git a/src/core/surface/lame_client.c b/src/core/surface/lame_client.c
index b40c48381f4296da467ce53df4cd9ac9b8420258..78170806f17356de62880031b4df45ca28ea5cf8 100644
--- a/src/core/surface/lame_client.c
+++ b/src/core/surface/lame_client.c
@@ -42,28 +42,20 @@
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
 
-typedef struct {
-  void *unused;
-} call_data;
+typedef struct { void *unused; } call_data;
 
-typedef struct {
-  grpc_mdelem *status;
-  grpc_mdelem *message;
-} channel_data;
+typedef struct { void *unused; } channel_data;
 
 static void call_op(grpc_call_element *elem, grpc_call_element *from_elem,
                     grpc_call_op *op) {
-  channel_data *channeld = elem->channel_data;
   GRPC_CALL_LOG_OP(GPR_INFO, elem, op);
 
   switch (op->type) {
-    case GRPC_SEND_START:
-      grpc_call_recv_metadata(elem, grpc_mdelem_ref(channeld->status));
-      grpc_call_recv_metadata(elem, grpc_mdelem_ref(channeld->message));
-      grpc_call_stream_closed(elem);
-      break;
     case GRPC_SEND_METADATA:
-      grpc_mdelem_unref(op->data.metadata);
+      grpc_metadata_batch_destroy(&op->data.metadata);
+      grpc_call_recv_synthetic_status(elem, GRPC_STATUS_UNKNOWN,
+                                      "Rpc sent on a lame channel.");
+      grpc_call_stream_closed(elem);
       break;
     default:
       break;
@@ -94,29 +86,17 @@ static void destroy_call_elem(grpc_call_element *elem) {}
 static void init_channel_elem(grpc_channel_element *elem,
                               const grpc_channel_args *args, grpc_mdctx *mdctx,
                               int is_first, int is_last) {
-  channel_data *channeld = elem->channel_data;
-  char status[12];
-
   GPR_ASSERT(is_first);
   GPR_ASSERT(is_last);
-
-  channeld->message = grpc_mdelem_from_strings(mdctx, "grpc-message",
-                                               "Rpc sent on a lame channel.");
-  gpr_ltoa(GRPC_STATUS_UNKNOWN, status);
-  channeld->status = grpc_mdelem_from_strings(mdctx, "grpc-status", status);
 }
 
-static void destroy_channel_elem(grpc_channel_element *elem) {
-  channel_data *channeld = elem->channel_data;
-
-  grpc_mdelem_unref(channeld->message);
-  grpc_mdelem_unref(channeld->status);
-}
+static void destroy_channel_elem(grpc_channel_element *elem) {}
 
 static const grpc_channel_filter lame_filter = {
-    call_op,           channel_op,           sizeof(call_data),
-    init_call_elem,    destroy_call_elem,    sizeof(channel_data),
-    init_channel_elem, destroy_channel_elem, "lame-client", };
+    call_op, channel_op, sizeof(call_data), init_call_elem, destroy_call_elem,
+    sizeof(channel_data), init_channel_elem, destroy_channel_elem,
+    "lame-client",
+};
 
 grpc_channel *grpc_lame_client_channel_create(void) {
   static const grpc_channel_filter *filters[] = {&lame_filter};
diff --git a/src/core/surface/server.c b/src/core/surface/server.c
index 17cba9a505b8db0f586c3b5933ddcceafcd62896..a2e94d5598832a472cbd5dc64d2d9f5e30932e2b 100644
--- a/src/core/surface/server.c
+++ b/src/core/surface/server.c
@@ -262,6 +262,7 @@ static void server_ref(grpc_server *server) {
 
 static void server_unref(grpc_server *server) {
   registered_method *rm;
+  size_t i;
   if (gpr_unref(&server->internal_refcount)) {
     grpc_channel_args_destroy(server->channel_args);
     gpr_mu_destroy(&server->mu);
@@ -275,6 +276,9 @@ static void server_unref(grpc_server *server) {
       requested_call_array_destroy(&rm->requested);
       gpr_free(rm);
     }
+    for (i = 0; i < server->cq_count; i++) {
+      grpc_cq_internal_unref(server->cqs[i]);
+    }
     gpr_free(server->cqs);
     gpr_free(server->pollsets);
     gpr_free(server->shutdown_tags);
@@ -411,29 +415,32 @@ static void read_closed(grpc_call_element *elem) {
   gpr_mu_unlock(&chand->server->mu);
 }
 
+static grpc_mdelem *server_filter(void *user_data, grpc_mdelem *md) {
+  grpc_call_element *elem = user_data;
+  channel_data *chand = elem->channel_data;
+  call_data *calld = elem->call_data;
+  if (md->key == chand->path_key) {
+    calld->path = grpc_mdstr_ref(md->value);
+    return NULL;
+  } else if (md->key == chand->authority_key) {
+    calld->host = grpc_mdstr_ref(md->value);
+    return NULL;
+  }
+  return md;
+}
+
 static void call_op(grpc_call_element *elem, grpc_call_element *from_elemn,
                     grpc_call_op *op) {
-  channel_data *chand = elem->channel_data;
   call_data *calld = elem->call_data;
-  grpc_mdelem *md;
   GRPC_CALL_LOG_OP(GPR_INFO, elem, op);
   switch (op->type) {
     case GRPC_RECV_METADATA:
-      md = op->data.metadata;
-      if (md->key == chand->path_key) {
-        calld->path = grpc_mdstr_ref(md->value);
-        grpc_mdelem_unref(md);
-      } else if (md->key == chand->authority_key) {
-        calld->host = grpc_mdstr_ref(md->value);
-        grpc_mdelem_unref(md);
-      } else {
-        grpc_call_recv_metadata(elem, md);
+      grpc_metadata_batch_filter(&op->data.metadata, server_filter, elem);
+      if (grpc_call_recv_metadata(elem, &op->data.metadata)) {
+        calld->deadline = op->data.metadata.deadline;
+        start_new_rpc(elem);
       }
       break;
-    case GRPC_RECV_END_OF_INITIAL_METADATA:
-      start_new_rpc(elem);
-      grpc_call_initial_metadata_complete(elem);
-      break;
     case GRPC_RECV_MESSAGE:
       grpc_call_recv_message(elem, op->data.message);
       op->done_cb(op->user_data, GRPC_OP_OK);
@@ -444,10 +451,6 @@ static void call_op(grpc_call_element *elem, grpc_call_element *from_elemn,
     case GRPC_RECV_FINISH:
       stream_closed(elem);
       break;
-    case GRPC_RECV_DEADLINE:
-      grpc_call_set_deadline(elem, op->data.deadline);
-      ((call_data *)elem->call_data)->deadline = op->data.deadline;
-      break;
     default:
       GPR_ASSERT(op->dir == GRPC_CALL_DOWN);
       grpc_call_next_op(elem, op);
@@ -464,7 +467,8 @@ static void channel_op(grpc_channel_element *elem,
     case GRPC_ACCEPT_CALL:
       /* create a call */
       grpc_call_create(chand->channel, NULL,
-                       op->data.accept_call.transport_server_data);
+                       op->data.accept_call.transport_server_data, NULL, 0,
+                       gpr_inf_future);
       break;
     case GRPC_TRANSPORT_CLOSED:
       /* if the transport is closed for a server channel, we destroy the
@@ -601,6 +605,7 @@ static void addcq(grpc_server *server, grpc_completion_queue *cq) {
   for (i = 0; i < server->cq_count; i++) {
     if (server->cqs[i] == cq) return;
   }
+  grpc_cq_internal_ref(cq);
   n = server->cq_count++;
   server->cqs = gpr_realloc(server->cqs,
                             server->cq_count * sizeof(grpc_completion_queue *));
@@ -1083,6 +1088,7 @@ static void begin_call(grpc_server *server, call_data *calld,
             &rc->data.batch.details->host_capacity, calld->host);
       cpstr(&rc->data.batch.details->method,
             &rc->data.batch.details->method_capacity, calld->path);
+      rc->data.batch.details->deadline = calld->deadline;
       grpc_call_set_completion_queue(calld->call, rc->data.batch.cq_bind);
       *rc->data.batch.call = calld->call;
       r->op = GRPC_IOREQ_RECV_INITIAL_METADATA;
diff --git a/src/core/transport/chttp2/stream_encoder.c b/src/core/transport/chttp2/stream_encoder.c
index 708bb06c7f32963c7e5559b04afaf68a32e771e7..5ca31d6bc728d1eb20faaa765e6b7baef3c9b36d 100644
--- a/src/core/transport/chttp2/stream_encoder.c
+++ b/src/core/transport/chttp2/stream_encoder.c
@@ -43,7 +43,7 @@
 #include "src/core/transport/chttp2/timeout_encoding.h"
 #include "src/core/transport/chttp2/varint.h"
 
-#define HASH_FRAGMENT_1(x) ((x) & 255)
+#define HASH_FRAGMENT_1(x) ((x)&255)
 #define HASH_FRAGMENT_2(x) ((x >> 8) & 255)
 #define HASH_FRAGMENT_3(x) ((x >> 16) & 255)
 #define HASH_FRAGMENT_4(x) ((x >> 24) & 255)
@@ -479,10 +479,9 @@ gpr_uint32 grpc_chttp2_preencode(grpc_stream_op *inops, size_t *inops_count,
         /* skip */
         curop++;
         break;
-      case GRPC_OP_FLOW_CTL_CB:
-      case GRPC_OP_DEADLINE:
       case GRPC_OP_METADATA:
-      case GRPC_OP_METADATA_BOUNDARY:
+        grpc_metadata_batch_assert_ok(&op->data.metadata);
+      case GRPC_OP_FLOW_CTL_CB:
         /* these just get copied as they don't impact the number of flow
            controlled bytes */
         grpc_sopb_append(outops, op, 1);
@@ -529,6 +528,12 @@ exit_loop:
   *inops_count -= curop;
   memmove(inops, inops + curop, *inops_count * sizeof(grpc_stream_op));
 
+  for (curop = 0; curop < *inops_count; curop++) {
+    if (inops[curop].type == GRPC_OP_METADATA) {
+      grpc_metadata_batch_assert_ok(&inops[curop].data.metadata);
+    }
+  }
+
   return flow_controlled_bytes_taken;
 }
 
@@ -543,6 +548,7 @@ void grpc_chttp2_encode(grpc_stream_op *ops, size_t ops_count, int eof,
   gpr_uint32 curop = 0;
   gpr_uint32 unref_op;
   grpc_mdctx *mdctx = compressor->mdctx;
+  grpc_linked_mdelem *l;
   int need_unref = 0;
 
   GPR_ASSERT(stream_id != 0);
@@ -566,19 +572,19 @@ void grpc_chttp2_encode(grpc_stream_op *ops, size_t ops_count, int eof,
         curop++;
         break;
       case GRPC_OP_METADATA:
-        /* Encode a metadata element; store the returned value, representing
+        /* Encode a metadata batch; store the returned values, representing
            a metadata element that needs to be unreffed back into the metadata
            slot. THIS MAY NOT BE THE SAME ELEMENT (if a decoder table slot got
            updated). After this loop, we'll do a batch unref of elements. */
-        op->data.metadata = hpack_enc(compressor, op->data.metadata, &st);
-        need_unref |= op->data.metadata != NULL;
-        curop++;
-        break;
-      case GRPC_OP_DEADLINE:
-        deadline_enc(compressor, op->data.deadline, &st);
-        curop++;
-        break;
-      case GRPC_OP_METADATA_BOUNDARY:
+        need_unref |= op->data.metadata.garbage.head != NULL;
+        grpc_metadata_batch_assert_ok(&op->data.metadata);
+        for (l = op->data.metadata.list.head; l; l = l->next) {
+          l->md = hpack_enc(compressor, l->md, &st);
+          need_unref |= l->md != NULL;
+        }
+        if (gpr_time_cmp(op->data.metadata.deadline, gpr_inf_future) != 0) {
+          deadline_enc(compressor, op->data.metadata.deadline, &st);
+        }
         ensure_frame_type(&st, HEADER, 0);
         finish_frame(&st, 1, 0);
         st.last_was_header = 0; /* force a new header frame */
@@ -614,8 +620,12 @@ void grpc_chttp2_encode(grpc_stream_op *ops, size_t ops_count, int eof,
     for (unref_op = 0; unref_op < curop; unref_op++) {
       op = &ops[unref_op];
       if (op->type != GRPC_OP_METADATA) continue;
-      if (!op->data.metadata) continue;
-      grpc_mdctx_locked_mdelem_unref(mdctx, op->data.metadata);
+      for (l = op->data.metadata.list.head; l; l = l->next) {
+        if (l->md) grpc_mdctx_locked_mdelem_unref(mdctx, l->md);
+      }
+      for (l = op->data.metadata.garbage.head; l; l = l->next) {
+        grpc_mdctx_locked_mdelem_unref(mdctx, l->md);
+      }
     }
     grpc_mdctx_unlock(mdctx);
   }
diff --git a/src/core/transport/chttp2_transport.c b/src/core/transport/chttp2_transport.c
index 995d64015a24276aa55fd0d4882b7dc8ecbf48cd..e32ee284e093f886577aa97d3301de00d70f1776 100644
--- a/src/core/transport/chttp2_transport.c
+++ b/src/core/transport/chttp2_transport.c
@@ -68,10 +68,10 @@ int grpc_http_trace = 0;
 typedef struct transport transport;
 typedef struct stream stream;
 
-#define IF_TRACING(stmt)                    \
-  if (!(grpc_http_trace))                   \
-    ;                                       \
-  else                                      \
+#define IF_TRACING(stmt)  \
+  if (!(grpc_http_trace)) \
+    ;                     \
+  else                    \
   stmt
 
 /* streams are kept in various linked lists depending on what things need to
@@ -292,6 +292,12 @@ struct stream {
   stream_link links[STREAM_LIST_COUNT];
   gpr_uint8 included[STREAM_LIST_COUNT];
 
+  /* incoming metadata */
+  grpc_linked_mdelem *incoming_metadata;
+  size_t incoming_metadata_count;
+  size_t incoming_metadata_capacity;
+  gpr_timespec incoming_deadline;
+
   /* sops from application */
   grpc_stream_op_buffer outgoing_sopb;
   /* sops that have passed flow control to be written */
@@ -577,7 +583,7 @@ static int init_stream(grpc_transport *gt, grpc_stream *gs,
     lock(t);
     s->id = 0;
   } else {
-    s->id = (gpr_uint32)(gpr_uintptr) server_data;
+    s->id = (gpr_uint32)(gpr_uintptr)server_data;
     t->incoming_stream = s;
     grpc_chttp2_stream_map_add(&t->stream_map, s->id, s);
   }
@@ -593,6 +599,10 @@ static int init_stream(grpc_transport *gt, grpc_stream *gs,
   s->cancelled = 0;
   s->allow_window_updates = 0;
   s->published_close = 0;
+  s->incoming_metadata_count = 0;
+  s->incoming_metadata_capacity = 0;
+  s->incoming_metadata = NULL;
+  s->incoming_deadline = gpr_inf_future;
   memset(&s->links, 0, sizeof(s->links));
   memset(&s->included, 0, sizeof(s->included));
   grpc_sopb_init(&s->outgoing_sopb);
@@ -698,7 +708,8 @@ static void stream_list_add_tail(transport *t, stream *s, stream_list_id id) {
 }
 
 static void stream_list_join(transport *t, stream *s, stream_list_id id) {
-  if (id == PENDING_CALLBACKS) GPR_ASSERT(t->cb != NULL || t->error_state == ERROR_STATE_NONE);
+  if (id == PENDING_CALLBACKS)
+    GPR_ASSERT(t->cb != NULL || t->error_state == ERROR_STATE_NONE);
   if (s->included[id]) {
     return;
   }
@@ -760,7 +771,7 @@ static void unlock(transport *t) {
     if (t->error_state == ERROR_STATE_SEEN && !t->writing) {
       call_closed = 1;
       t->calling_back = 1;
-      t->cb = NULL;  /* no more callbacks */
+      t->cb = NULL; /* no more callbacks */
       t->error_state = ERROR_STATE_NOTIFIED;
     }
     if (t->num_pending_goaways) {
@@ -782,8 +793,7 @@ static void unlock(transport *t) {
 
   /* perform some callbacks if necessary */
   for (i = 0; i < num_goaways; i++) {
-    cb->goaway(t->cb_user_data, &t->base, goaways[i].status,
-               goaways[i].debug);
+    cb->goaway(t->cb_user_data, &t->base, goaways[i].status, goaways[i].debug);
   }
 
   if (perform_callbacks) {
@@ -1058,6 +1068,17 @@ static void finalize_cancellations(transport *t) {
   }
 }
 
+static void add_incoming_metadata(transport *t, stream *s, grpc_mdelem *elem) {
+  if (s->incoming_metadata_capacity == s->incoming_metadata_count) {
+    s->incoming_metadata_capacity =
+        GPR_MAX(8, 2 * s->incoming_metadata_capacity);
+    s->incoming_metadata =
+        gpr_realloc(s->incoming_metadata, sizeof(*s->incoming_metadata) *
+                                              s->incoming_metadata_capacity);
+  }
+  s->incoming_metadata[s->incoming_metadata_count++].md = elem;
+}
+
 static void cancel_stream_inner(transport *t, stream *s, gpr_uint32 id,
                                 grpc_status_code local_status,
                                 grpc_chttp2_error_code error_code,
@@ -1077,9 +1098,18 @@ static void cancel_stream_inner(transport *t, stream *s, gpr_uint32 id,
       stream_list_join(t, s, CANCELLED);
 
       gpr_ltoa(local_status, buffer);
-      grpc_sopb_add_metadata(
-          &s->parser.incoming_sopb,
+      add_incoming_metadata(
+          t, s,
           grpc_mdelem_from_strings(t->metadata_context, "grpc-status", buffer));
+      switch (local_status) {
+        case GRPC_STATUS_CANCELLED:
+          add_incoming_metadata(
+              t, s, grpc_mdelem_from_strings(t->metadata_context,
+                                             "grpc-message", "Cancelled"));
+          break;
+        default:
+          break;
+      }
 
       stream_list_join(t, s, PENDING_CALLBACKS);
     }
@@ -1255,11 +1285,10 @@ static void on_header(void *tp, grpc_mdelem *md) {
       }
       grpc_mdelem_set_user_data(md, free_timeout, cached_timeout);
     }
-    grpc_sopb_add_deadline(&s->parser.incoming_sopb,
-                           gpr_time_add(gpr_now(), *cached_timeout));
+    s->incoming_deadline = gpr_time_add(gpr_now(), *cached_timeout);
     grpc_mdelem_unref(md);
   } else {
-    grpc_sopb_add_metadata(&s->parser.incoming_sopb, md);
+    add_incoming_metadata(t, s, md);
   }
 }
 
@@ -1304,7 +1333,7 @@ static int init_header_frame_parser(transport *t, int is_continuation) {
     t->incoming_stream = NULL;
     /* if stream is accepted, we set incoming_stream in init_stream */
     t->cb->accept_stream(t->cb_user_data, &t->base,
-                         (void *)(gpr_uintptr) t->incoming_stream_id);
+                         (void *)(gpr_uintptr)t->incoming_stream_id);
     s = t->incoming_stream;
     if (!s) {
       gpr_log(GPR_ERROR, "stream not accepted");
@@ -1435,6 +1464,35 @@ static int is_window_update_legal(gpr_int64 window_update, gpr_int64 window) {
   return window + window_update < MAX_WINDOW;
 }
 
+static void free_md(void *p, grpc_op_error result) { gpr_free(p); }
+
+static void add_metadata_batch(transport *t, stream *s) {
+  grpc_metadata_batch b;
+  size_t i;
+
+  b.list.head = &s->incoming_metadata[0];
+  b.list.tail = &s->incoming_metadata[s->incoming_metadata_count - 1];
+  b.garbage.head = b.garbage.tail = NULL;
+  b.deadline = s->incoming_deadline;
+
+  for (i = 1; i < s->incoming_metadata_count; i++) {
+    s->incoming_metadata[i].prev = &s->incoming_metadata[i - 1];
+    s->incoming_metadata[i - 1].next = &s->incoming_metadata[i];
+  }
+  s->incoming_metadata[0].prev = NULL;
+  s->incoming_metadata[s->incoming_metadata_count - 1].next = NULL;
+
+  grpc_sopb_add_metadata(&s->parser.incoming_sopb, b);
+  grpc_sopb_add_flow_ctl_cb(&s->parser.incoming_sopb, free_md,
+                            s->incoming_metadata);
+
+  /* reset */
+  s->incoming_deadline = gpr_inf_future;
+  s->incoming_metadata = NULL;
+  s->incoming_metadata_count = 0;
+  s->incoming_metadata_capacity = 0;
+}
+
 static int parse_frame_slice(transport *t, gpr_slice slice, int is_last) {
   grpc_chttp2_parse_state st;
   size_t i;
@@ -1449,8 +1507,7 @@ static int parse_frame_slice(transport *t, gpr_slice slice, int is_last) {
         stream_list_join(t, t->incoming_stream, PENDING_CALLBACKS);
       }
       if (st.metadata_boundary) {
-        grpc_sopb_add_metadata_boundary(
-            &t->incoming_stream->parser.incoming_sopb);
+        add_metadata_batch(t, t->incoming_stream);
         stream_list_join(t, t->incoming_stream, PENDING_CALLBACKS);
       }
       if (st.ack_settings) {
@@ -1580,8 +1637,8 @@ static int process_read(transport *t, gpr_slice slice) {
                   "Connect string mismatch: expected '%c' (%d) got '%c' (%d) "
                   "at byte %d",
                   CLIENT_CONNECT_STRING[t->deframe_state],
-                  (int)(gpr_uint8) CLIENT_CONNECT_STRING[t->deframe_state],
-                  *cur, (int)*cur, t->deframe_state);
+                  (int)(gpr_uint8)CLIENT_CONNECT_STRING[t->deframe_state], *cur,
+                  (int)*cur, t->deframe_state);
           drop_connection(t);
           return 0;
         }
@@ -1778,17 +1835,20 @@ static int prepare_callbacks(transport *t) {
   int n = 0;
   while ((s = stream_list_remove_head(t, PENDING_CALLBACKS))) {
     int execute = 1;
-    grpc_sopb_swap(&s->parser.incoming_sopb, &s->callback_sopb);
 
     s->callback_state = compute_state(s->sent_write_closed, s->read_closed);
     if (s->callback_state == GRPC_STREAM_CLOSED) {
       remove_from_stream_map(t, s);
       if (s->published_close) {
         execute = 0;
+      } else if (s->incoming_metadata_count) {
+        add_metadata_batch(t, s);
       }
       s->published_close = 1;
     }
 
+    grpc_sopb_swap(&s->parser.incoming_sopb, &s->callback_sopb);
+
     if (execute) {
       stream_list_add_tail(t, s, EXECUTING_CALLBACKS);
       n = 1;
@@ -1825,9 +1885,9 @@ static void add_to_pollset(grpc_transport *gt, grpc_pollset *pollset) {
  */
 
 static const grpc_transport_vtable vtable = {
-    sizeof(stream),  init_stream,    send_batch,       set_allow_window_updates,
-    add_to_pollset,  destroy_stream, abort_stream,     goaway,
-    close_transport, send_ping,      destroy_transport};
+    sizeof(stream), init_stream, send_batch, set_allow_window_updates,
+    add_to_pollset, destroy_stream, abort_stream, goaway, close_transport,
+    send_ping, destroy_transport};
 
 void grpc_create_chttp2_transport(grpc_transport_setup_callback setup,
                                   void *arg,
diff --git a/src/core/transport/metadata.c b/src/core/transport/metadata.c
index 44f6591c9551bc5de5323b2cdc96f7cf5649a559..74e94b2c248cb404b62ba5c0d6b73d08a85ca4cf 100644
--- a/src/core/transport/metadata.c
+++ b/src/core/transport/metadata.c
@@ -120,7 +120,7 @@ static void unlock(grpc_mdctx *ctx) {
   if (ctx->refs == 0) {
     /* uncomment if you're having trouble diagnosing an mdelem leak to make
        things clearer (slows down destruction a lot, however) */
-    /* gc_mdtab(ctx); */
+    gc_mdtab(ctx);
     if (ctx->mdtab_count && ctx->mdtab_count == ctx->mdtab_free) {
       discard_metadata(ctx);
     }
diff --git a/src/core/transport/stream_op.c b/src/core/transport/stream_op.c
index c30e3a27f1d5ff435602ff766d5d14a3fd2d2319..882c078d51237901a6f15b1a8a42d579fec9d95c 100644
--- a/src/core/transport/stream_op.c
+++ b/src/core/transport/stream_op.c
@@ -33,11 +33,11 @@
 
 #include "src/core/transport/stream_op.h"
 
+#include <string.h>
+
 #include <grpc/support/alloc.h>
 #include <grpc/support/log.h>
 
-#include <string.h>
-
 /* Exponential growth function: Given x, return a larger x.
    Currently we grow by 1.5 times upon reallocation. */
 #define GROW(x) (3 * (x) / 2)
@@ -79,33 +79,46 @@ void grpc_stream_ops_unref_owned_objects(grpc_stream_op *ops, size_t nops) {
         gpr_slice_unref(ops[i].data.slice);
         break;
       case GRPC_OP_METADATA:
-        grpc_mdelem_unref(ops[i].data.metadata);
+        grpc_metadata_batch_destroy(&ops[i].data.metadata);
         break;
       case GRPC_OP_FLOW_CTL_CB:
         ops[i].data.flow_ctl_cb.cb(ops[i].data.flow_ctl_cb.arg, GRPC_OP_ERROR);
         break;
       case GRPC_NO_OP:
-      case GRPC_OP_DEADLINE:
-      case GRPC_OP_METADATA_BOUNDARY:
       case GRPC_OP_BEGIN_MESSAGE:
         break;
     }
   }
 }
 
+static void assert_contained_metadata_ok(grpc_stream_op *ops, size_t nops) {
+#ifndef NDEBUG
+  size_t i;
+  for (i = 0; i < nops; i++) {
+    if (ops[i].type == GRPC_OP_METADATA) {
+      grpc_metadata_batch_assert_ok(&ops[i].data.metadata);
+    }
+  }
+#endif /* NDEBUG */
+}
+
 static void expandto(grpc_stream_op_buffer *sopb, size_t new_capacity) {
   sopb->capacity = new_capacity;
+  assert_contained_metadata_ok(sopb->ops, sopb->nops);
   if (sopb->ops == sopb->inlined_ops) {
     sopb->ops = gpr_malloc(sizeof(grpc_stream_op) * new_capacity);
     memcpy(sopb->ops, sopb->inlined_ops, sopb->nops * sizeof(grpc_stream_op));
   } else {
     sopb->ops = gpr_realloc(sopb->ops, sizeof(grpc_stream_op) * new_capacity);
   }
+  assert_contained_metadata_ok(sopb->ops, sopb->nops);
 }
 
 static grpc_stream_op *add(grpc_stream_op_buffer *sopb) {
   grpc_stream_op *out;
 
+  assert_contained_metadata_ok(sopb->ops, sopb->nops);
+
   if (sopb->nops == sopb->capacity) {
     expandto(sopb, GROW(sopb->capacity));
   }
@@ -116,6 +129,7 @@ static grpc_stream_op *add(grpc_stream_op_buffer *sopb) {
 
 void grpc_sopb_add_no_op(grpc_stream_op_buffer *sopb) {
   add(sopb)->type = GRPC_NO_OP;
+  assert_contained_metadata_ok(sopb->ops, sopb->nops);
 }
 
 void grpc_sopb_add_begin_message(grpc_stream_op_buffer *sopb, gpr_uint32 length,
@@ -124,30 +138,24 @@ void grpc_sopb_add_begin_message(grpc_stream_op_buffer *sopb, gpr_uint32 length,
   op->type = GRPC_OP_BEGIN_MESSAGE;
   op->data.begin_message.length = length;
   op->data.begin_message.flags = flags;
+  assert_contained_metadata_ok(sopb->ops, sopb->nops);
 }
 
-void grpc_sopb_add_metadata_boundary(grpc_stream_op_buffer *sopb) {
-  grpc_stream_op *op = add(sopb);
-  op->type = GRPC_OP_METADATA_BOUNDARY;
-}
-
-void grpc_sopb_add_metadata(grpc_stream_op_buffer *sopb, grpc_mdelem *md) {
+void grpc_sopb_add_metadata(grpc_stream_op_buffer *sopb,
+                            grpc_metadata_batch b) {
   grpc_stream_op *op = add(sopb);
+  grpc_metadata_batch_assert_ok(&b);
   op->type = GRPC_OP_METADATA;
-  op->data.metadata = md;
-}
-
-void grpc_sopb_add_deadline(grpc_stream_op_buffer *sopb,
-                            gpr_timespec deadline) {
-  grpc_stream_op *op = add(sopb);
-  op->type = GRPC_OP_DEADLINE;
-  op->data.deadline = deadline;
+  op->data.metadata = b;
+  grpc_metadata_batch_assert_ok(&op->data.metadata);
+  assert_contained_metadata_ok(sopb->ops, sopb->nops);
 }
 
 void grpc_sopb_add_slice(grpc_stream_op_buffer *sopb, gpr_slice slice) {
   grpc_stream_op *op = add(sopb);
   op->type = GRPC_OP_SLICE;
   op->data.slice = slice;
+  assert_contained_metadata_ok(sopb->ops, sopb->nops);
 }
 
 void grpc_sopb_add_flow_ctl_cb(grpc_stream_op_buffer *sopb,
@@ -157,6 +165,7 @@ void grpc_sopb_add_flow_ctl_cb(grpc_stream_op_buffer *sopb,
   op->type = GRPC_OP_FLOW_CTL_CB;
   op->data.flow_ctl_cb.cb = cb;
   op->data.flow_ctl_cb.arg = arg;
+  assert_contained_metadata_ok(sopb->ops, sopb->nops);
 }
 
 void grpc_sopb_append(grpc_stream_op_buffer *sopb, grpc_stream_op *ops,
@@ -164,10 +173,161 @@ void grpc_sopb_append(grpc_stream_op_buffer *sopb, grpc_stream_op *ops,
   size_t orig_nops = sopb->nops;
   size_t new_nops = orig_nops + nops;
 
+  assert_contained_metadata_ok(ops, nops);
+  assert_contained_metadata_ok(sopb->ops, sopb->nops);
   if (new_nops > sopb->capacity) {
     expandto(sopb, GPR_MAX(GROW(sopb->capacity), new_nops));
   }
 
   memcpy(sopb->ops + orig_nops, ops, sizeof(grpc_stream_op) * nops);
   sopb->nops = new_nops;
+  assert_contained_metadata_ok(sopb->ops, sopb->nops);
+}
+
+static void assert_valid_list(grpc_mdelem_list *list) {
+#ifndef NDEBUG
+  grpc_linked_mdelem *l;
+
+  GPR_ASSERT((list->head == NULL) == (list->tail == NULL));
+  if (!list->head) return;
+  GPR_ASSERT(list->head->prev == NULL);
+  GPR_ASSERT(list->tail->next == NULL);
+  GPR_ASSERT((list->head == list->tail) == (list->head->next == NULL));
+
+  for (l = list->head; l; l = l->next) {
+    GPR_ASSERT(l->md);
+    GPR_ASSERT((l->prev == NULL) == (l == list->head));
+    GPR_ASSERT((l->next == NULL) == (l == list->tail));
+    if (l->next) GPR_ASSERT(l->next->prev == l);
+    if (l->prev) GPR_ASSERT(l->prev->next == l);
+  }
+#endif /* NDEBUG */
+}
+
+#ifndef NDEBUG
+void grpc_metadata_batch_assert_ok(grpc_metadata_batch *comd) {
+  assert_valid_list(&comd->list);
+  assert_valid_list(&comd->garbage);
+}
+#endif /* NDEBUG */
+
+void grpc_metadata_batch_init(grpc_metadata_batch *comd) {
+  comd->list.head = comd->list.tail = comd->garbage.head = comd->garbage.tail =
+      NULL;
+  comd->deadline = gpr_inf_future;
+}
+
+void grpc_metadata_batch_destroy(grpc_metadata_batch *comd) {
+  grpc_linked_mdelem *l;
+  for (l = comd->list.head; l; l = l->next) {
+    grpc_mdelem_unref(l->md);
+  }
+  for (l = comd->garbage.head; l; l = l->next) {
+    grpc_mdelem_unref(l->md);
+  }
+}
+
+void grpc_metadata_batch_add_head(grpc_metadata_batch *comd,
+                                  grpc_linked_mdelem *storage,
+                                  grpc_mdelem *elem_to_add) {
+  GPR_ASSERT(elem_to_add);
+  storage->md = elem_to_add;
+  grpc_metadata_batch_link_head(comd, storage);
+}
+
+static void link_head(grpc_mdelem_list *list, grpc_linked_mdelem *storage) {
+  assert_valid_list(list);
+  GPR_ASSERT(storage->md);
+  storage->prev = NULL;
+  storage->next = list->head;
+  if (list->head != NULL) {
+    list->head->prev = storage;
+  } else {
+    list->tail = storage;
+  }
+  list->head = storage;
+  assert_valid_list(list);
+}
+
+void grpc_metadata_batch_link_head(grpc_metadata_batch *comd,
+                                   grpc_linked_mdelem *storage) {
+  link_head(&comd->list, storage);
+}
+
+void grpc_metadata_batch_add_tail(grpc_metadata_batch *comd,
+                                  grpc_linked_mdelem *storage,
+                                  grpc_mdelem *elem_to_add) {
+  GPR_ASSERT(elem_to_add);
+  storage->md = elem_to_add;
+  grpc_metadata_batch_link_tail(comd, storage);
+}
+
+static void link_tail(grpc_mdelem_list *list, grpc_linked_mdelem *storage) {
+  assert_valid_list(list);
+  GPR_ASSERT(storage->md);
+  storage->prev = list->tail;
+  storage->next = NULL;
+  if (list->tail != NULL) {
+    list->tail->next = storage;
+  } else {
+    list->head = storage;
+  }
+  list->tail = storage;
+  assert_valid_list(list);
+}
+
+void grpc_metadata_batch_link_tail(grpc_metadata_batch *comd,
+                                   grpc_linked_mdelem *storage) {
+  link_tail(&comd->list, storage);
+}
+
+void grpc_metadata_batch_merge(grpc_metadata_batch *target,
+                               grpc_metadata_batch *add) {
+  grpc_linked_mdelem *l;
+  grpc_linked_mdelem *next;
+  for (l = add->list.head; l; l = next) {
+    next = l->next;
+    link_tail(&target->list, l);
+  }
+  for (l = add->garbage.head; l; l = next) {
+    next = l->next;
+    link_tail(&target->garbage, l);
+  }
+}
+
+void grpc_metadata_batch_filter(grpc_metadata_batch *comd,
+                                grpc_mdelem *(*filter)(void *user_data,
+                                                       grpc_mdelem *elem),
+                                void *user_data) {
+  grpc_linked_mdelem *l;
+  grpc_linked_mdelem *next;
+
+  assert_valid_list(&comd->list);
+  assert_valid_list(&comd->garbage);
+  for (l = comd->list.head; l; l = next) {
+    grpc_mdelem *orig = l->md;
+    grpc_mdelem *filt = filter(user_data, orig);
+    next = l->next;
+    if (filt == NULL) {
+      if (l->prev) {
+        l->prev->next = l->next;
+      }
+      if (l->next) {
+        l->next->prev = l->prev;
+      }
+      if (comd->list.head == l) {
+        comd->list.head = l->next;
+      }
+      if (comd->list.tail == l) {
+        comd->list.tail = l->prev;
+      }
+      assert_valid_list(&comd->list);
+      link_head(&comd->garbage, l);
+    } else if (filt != orig) {
+      grpc_mdelem_unref(orig);
+      l->md = filt;
+    }
+  }
+  assert_valid_list(&comd->list);
+  assert_valid_list(&comd->garbage);
 }
diff --git a/src/core/transport/stream_op.h b/src/core/transport/stream_op.h
index 2ffbcce87b309290ebac713d40cc230d3dd938da..20146b9af212a277d8243c38ba3ee011fe631d98 100644
--- a/src/core/transport/stream_op.h
+++ b/src/core/transport/stream_op.h
@@ -50,8 +50,6 @@ typedef enum grpc_stream_op_code {
      Must be ignored by receivers */
   GRPC_NO_OP,
   GRPC_OP_METADATA,
-  GRPC_OP_DEADLINE,
-  GRPC_OP_METADATA_BOUNDARY,
   /* Begin a message/metadata element/status - as defined by
      grpc_message_type. */
   GRPC_OP_BEGIN_MESSAGE,
@@ -76,6 +74,51 @@ typedef struct grpc_flow_ctl_cb {
   void *arg;
 } grpc_flow_ctl_cb;
 
+typedef struct grpc_linked_mdelem {
+  grpc_mdelem *md;
+  struct grpc_linked_mdelem *next;
+  struct grpc_linked_mdelem *prev;
+} grpc_linked_mdelem;
+
+typedef struct grpc_mdelem_list {
+  grpc_linked_mdelem *head;
+  grpc_linked_mdelem *tail;
+} grpc_mdelem_list;
+
+typedef struct grpc_metadata_batch {
+  grpc_mdelem_list list;
+  grpc_mdelem_list garbage;
+  gpr_timespec deadline;
+} grpc_metadata_batch;
+
+void grpc_metadata_batch_init(grpc_metadata_batch *comd);
+void grpc_metadata_batch_destroy(grpc_metadata_batch *comd);
+void grpc_metadata_batch_merge(grpc_metadata_batch *target,
+                                 grpc_metadata_batch *add);
+
+void grpc_metadata_batch_link_head(grpc_metadata_batch *comd,
+                                     grpc_linked_mdelem *storage);
+void grpc_metadata_batch_link_tail(grpc_metadata_batch *comd,
+                                     grpc_linked_mdelem *storage);
+
+void grpc_metadata_batch_add_head(grpc_metadata_batch *comd,
+                                    grpc_linked_mdelem *storage,
+                                    grpc_mdelem *elem_to_add);
+void grpc_metadata_batch_add_tail(grpc_metadata_batch *comd,
+                                    grpc_linked_mdelem *storage,
+                                    grpc_mdelem *elem_to_add);
+
+void grpc_metadata_batch_filter(grpc_metadata_batch *comd,
+                                  grpc_mdelem *(*filter)(void *user_data,
+                                                         grpc_mdelem *elem),
+                                  void *user_data);
+
+#ifndef NDEBUG
+void grpc_metadata_batch_assert_ok(grpc_metadata_batch *comd);
+#else
+#define grpc_metadata_batch_assert_ok(comd) do {} while (0)
+#endif
+
 /* Represents a single operation performed on a stream/transport */
 typedef struct grpc_stream_op {
   /* the operation to be applied */
@@ -84,8 +127,7 @@ typedef struct grpc_stream_op {
      associated op-code */
   union {
     grpc_begin_message begin_message;
-    grpc_mdelem *metadata;
-    gpr_timespec deadline;
+    grpc_metadata_batch metadata;
     gpr_slice slice;
     grpc_flow_ctl_cb flow_ctl_cb;
   } data;
@@ -118,9 +160,7 @@ void grpc_sopb_add_no_op(grpc_stream_op_buffer *sopb);
 /* Append a GRPC_OP_BEGIN to a buffer */
 void grpc_sopb_add_begin_message(grpc_stream_op_buffer *sopb, gpr_uint32 length,
                                  gpr_uint32 flags);
-void grpc_sopb_add_metadata(grpc_stream_op_buffer *sopb, grpc_mdelem *metadata);
-void grpc_sopb_add_deadline(grpc_stream_op_buffer *sopb, gpr_timespec deadline);
-void grpc_sopb_add_metadata_boundary(grpc_stream_op_buffer *sopb);
+void grpc_sopb_add_metadata(grpc_stream_op_buffer *sopb, grpc_metadata_batch metadata);
 /* Append a GRPC_SLICE to a buffer - does not ref/unref the slice */
 void grpc_sopb_add_slice(grpc_stream_op_buffer *sopb, gpr_slice slice);
 /* Append a GRPC_OP_FLOW_CTL_CB to a buffer */
diff --git a/src/core/tsi/ssl_transport_security.c b/src/core/tsi/ssl_transport_security.c
index 018ddc4456399fc79bf502ae9621bfffa733051b..b7c2859a1c9f09140f1ae31a85fc0099837943a3 100644
--- a/src/core/tsi/ssl_transport_security.c
+++ b/src/core/tsi/ssl_transport_security.c
@@ -34,6 +34,7 @@
 #include "src/core/tsi/ssl_transport_security.h"
 
 #include <limits.h>
+#include <string.h>
 
 #include <grpc/support/log.h>
 #include <grpc/support/sync.h>
diff --git a/src/cpp/client/channel.cc b/src/cpp/client/channel.cc
index 478f223322b88ecc5b6ef252bf554bd616930075..c541ddfb487ac43f0cb60d95167e2f732326aa7a 100644
--- a/src/cpp/client/channel.cc
+++ b/src/cpp/client/channel.cc
@@ -33,7 +33,6 @@
 
 #include "src/cpp/client/channel.h"
 
-#include <chrono>
 #include <memory>
 
 #include <grpc/grpc.h>
@@ -65,14 +64,14 @@ Call Channel::CreateCall(const RpcMethod& method, ClientContext* context,
       method.channel_tag()
           ? grpc_channel_create_registered_call(c_channel_, cq->cq(),
                                                 method.channel_tag(),
-                                                context->RawDeadline())
+                                                context->raw_deadline())
           : grpc_channel_create_call(c_channel_, cq->cq(), method.name(),
                                      context->authority().empty()
                                          ? target_.c_str()
                                          : context->authority().c_str(),
-                                     context->RawDeadline());
+                                     context->raw_deadline());
   GRPC_TIMER_MARK(CALL_CREATED, c_call);
-  context->set_call(c_call);
+  context->set_call(c_call, shared_from_this());
   return Call(c_call, this, cq);
 }
 
diff --git a/src/cpp/client/channel.h b/src/cpp/client/channel.h
index aaf4dbe10dcb1ff3490a9d48d01cac4a3c5b8f24..46009d20bad7692f3af5a0a74b6c3c0f354da80c 100644
--- a/src/cpp/client/channel.h
+++ b/src/cpp/client/channel.h
@@ -38,6 +38,7 @@
 
 #include <grpc++/channel_interface.h>
 #include <grpc++/config.h>
+#include <grpc++/impl/grpc_library.h>
 
 struct grpc_channel;
 
@@ -49,7 +50,9 @@ class CompletionQueue;
 class Credentials;
 class StreamContextInterface;
 
-class Channel GRPC_FINAL : public ChannelInterface {
+class Channel GRPC_FINAL : public GrpcLibrary,
+                           public std::enable_shared_from_this<Channel>,
+                           public ChannelInterface {
  public:
   Channel(const grpc::string& target, grpc_channel* c_channel);
   ~Channel() GRPC_OVERRIDE;
diff --git a/src/cpp/client/client_context.cc b/src/cpp/client/client_context.cc
index de9f8c7201da6e770f4f12086d1a9cb0ee2b21ae..70c9cb4c3b4edd8d151391fb2b5e53a27a1afc77 100644
--- a/src/cpp/client/client_context.cc
+++ b/src/cpp/client/client_context.cc
@@ -34,9 +34,7 @@
 #include <grpc++/client_context.h>
 
 #include <grpc/grpc.h>
-#include "src/cpp/util/time.h"
-
-using std::chrono::system_clock;
+#include <grpc++/time.h>
 
 namespace grpc {
 
@@ -44,7 +42,7 @@ ClientContext::ClientContext()
     : initial_metadata_received_(false),
       call_(nullptr),
       cq_(nullptr),
-      absolute_deadline_(gpr_inf_future) {}
+      deadline_(gpr_inf_future) {}
 
 ClientContext::~ClientContext() {
   if (call_) {
@@ -64,15 +62,6 @@ ClientContext::~ClientContext() {
   }
 }
 
-void ClientContext::set_absolute_deadline(
-    const system_clock::time_point& deadline) {
-  Timepoint2Timespec(deadline, &absolute_deadline_);
-}
-
-system_clock::time_point ClientContext::absolute_deadline() {
-  return Timespec2Timepoint(absolute_deadline_);
-}
-
 void ClientContext::AddMetadata(const grpc::string& meta_key,
                                 const grpc::string& meta_value) {
   send_initial_metadata_.insert(std::make_pair(meta_key, meta_value));
diff --git a/src/cpp/client/secure_credentials.cc b/src/cpp/client/secure_credentials.cc
index 0a73b2c0f676b9154239d784ac156a28f466a941..48bf7430b27bf924a1f689e86b75dfad975a1268 100644
--- a/src/cpp/client/secure_credentials.cc
+++ b/src/cpp/client/secure_credentials.cc
@@ -81,27 +81,27 @@ std::unique_ptr<Credentials> ComputeEngineCredentials() {
 // Builds service account credentials.
 std::unique_ptr<Credentials> ServiceAccountCredentials(
     const grpc::string& json_key, const grpc::string& scope,
-    std::chrono::seconds token_lifetime) {
-  if (token_lifetime.count() <= 0) {
+    long token_lifetime_seconds) {
+  if (token_lifetime_seconds <= 0) {
     gpr_log(GPR_ERROR,
             "Trying to create ServiceAccountCredentials "
             "with non-positive lifetime");
     return WrapCredentials(nullptr);
   }
-  gpr_timespec lifetime = gpr_time_from_seconds(token_lifetime.count());
+  gpr_timespec lifetime = gpr_time_from_seconds(token_lifetime_seconds);
   return WrapCredentials(grpc_service_account_credentials_create(
       json_key.c_str(), scope.c_str(), lifetime));
 }
 
 // Builds JWT credentials.
 std::unique_ptr<Credentials> JWTCredentials(
-    const grpc::string& json_key, std::chrono::seconds token_lifetime) {
-  if (token_lifetime.count() <= 0) {
+    const grpc::string& json_key, long token_lifetime_seconds) {
+  if (token_lifetime_seconds <= 0) {
     gpr_log(GPR_ERROR,
             "Trying to create JWTCredentials with non-positive lifetime");
     return WrapCredentials(nullptr);
   }
-  gpr_timespec lifetime = gpr_time_from_seconds(token_lifetime.count());
+  gpr_timespec lifetime = gpr_time_from_seconds(token_lifetime_seconds);
   return WrapCredentials(
       grpc_jwt_credentials_create(json_key.c_str(), lifetime));
 }
diff --git a/src/cpp/common/completion_queue.cc b/src/cpp/common/completion_queue.cc
index cea2d24831cfdc8d751806b93af183552ff82986..07122db4a58c1fec9f65849556f43e559d61648f 100644
--- a/src/cpp/common/completion_queue.cc
+++ b/src/cpp/common/completion_queue.cc
@@ -36,7 +36,7 @@
 
 #include <grpc/grpc.h>
 #include <grpc/support/log.h>
-#include "src/cpp/util/time.h"
+#include <grpc++/time.h>
 
 namespace grpc {
 
@@ -77,13 +77,6 @@ CompletionQueue::NextStatus CompletionQueue::AsyncNextInternal(
   }
 }
 
-CompletionQueue::NextStatus CompletionQueue::AsyncNext(
-    void** tag, bool* ok, std::chrono::system_clock::time_point deadline) {
-  gpr_timespec gpr_deadline;
-  Timepoint2Timespec(deadline, &gpr_deadline);
-  return AsyncNextInternal(tag, ok, gpr_deadline);
-}
-
 bool CompletionQueue::Pluck(CompletionQueueTag* tag) {
   std::unique_ptr<grpc_event, EventDeleter> ev;
 
@@ -92,7 +85,8 @@ bool CompletionQueue::Pluck(CompletionQueueTag* tag) {
   void* ignored = tag;
   GPR_ASSERT(tag->FinalizeResult(&ignored, &ok));
   GPR_ASSERT(ignored == tag);
-  return ok;
+  // Ignore mutations by FinalizeResult: Pluck returns the C API status
+  return ev->data.op_complete == GRPC_OP_OK;
 }
 
 void CompletionQueue::TryPluck(CompletionQueueTag* tag) {
diff --git a/src/cpp/server/server.cc b/src/cpp/server/server.cc
index b3cd1fdd74bb8c6ce34aec1ed4d2bbf810424d13..4694a3a7ff53e5e7b7a569f56e09f8699007925f 100644
--- a/src/cpp/server/server.cc
+++ b/src/cpp/server/server.cc
@@ -45,10 +45,10 @@
 #include <grpc++/server_context.h>
 #include <grpc++/server_credentials.h>
 #include <grpc++/thread_pool_interface.h>
+#include <grpc++/time.h>
 
 #include "src/core/profiling/timers.h"
 #include "src/cpp/proto/proto_utils.h"
-#include "src/cpp/util/time.h"
 
 namespace grpc {
 
@@ -180,6 +180,7 @@ Server::Server(ThreadPoolInterface* thread_pool, bool thread_pool_owned)
     : started_(false),
       shutdown_(false),
       num_running_cb_(0),
+      sync_methods_(new std::list<SyncRequest>),
       server_(grpc_server_create(cq_.cq(), nullptr)),
       thread_pool_(thread_pool),
       thread_pool_owned_(thread_pool_owned) {}
@@ -196,6 +197,7 @@ Server::~Server() {
   if (thread_pool_owned_) {
     delete thread_pool_;
   }
+  delete sync_methods_;
 }
 
 bool Server::RegisterService(RpcService* service) {
@@ -208,7 +210,8 @@ bool Server::RegisterService(RpcService* service) {
               method->name());
       return false;
     }
-    sync_methods_.emplace_back(method, tag);
+    SyncRequest request(method, tag);
+    sync_methods_->emplace_back(request);
   }
   return true;
 }
@@ -250,8 +253,8 @@ bool Server::Start() {
   grpc_server_start(server_);
 
   // Start processing rpcs.
-  if (!sync_methods_.empty()) {
-    for (auto m = sync_methods_.begin(); m != sync_methods_.end(); m++) {
+  if (!sync_methods_->empty()) {
+    for (auto m = sync_methods_->begin(); m != sync_methods_->end(); m++) {
       m->Request(server_);
     }
 
@@ -353,7 +356,7 @@ class Server::AsyncRequest GRPC_FINAL : public CompletionQueueTag {
     ServerContext* ctx = ctx_ ? ctx_ : generic_ctx_;
     GPR_ASSERT(ctx);
     if (*status) {
-      ctx->deadline_ = Timespec2Timepoint(call_details_.deadline);
+      ctx->deadline_ = call_details_.deadline;
       for (size_t i = 0; i < array_.count; i++) {
         ctx->client_metadata_.insert(std::make_pair(
             grpc::string(array_.metadata[i].key),
diff --git a/src/cpp/server/server_builder.cc b/src/cpp/server/server_builder.cc
index c5e115f3967de72fafe8a50060019de3f6f2cc1f..81cb0e6724ba0be7853aaa13afbd1903bda71f2d 100644
--- a/src/cpp/server/server_builder.cc
+++ b/src/cpp/server/server_builder.cc
@@ -66,7 +66,8 @@ void ServerBuilder::RegisterAsyncGenericService(AsyncGenericService* service) {
 void ServerBuilder::AddListeningPort(const grpc::string& addr,
                                      std::shared_ptr<ServerCredentials> creds,
                                      int* selected_port) {
-  ports_.push_back(Port{addr, creds, selected_port});
+  Port port = {addr, creds, selected_port};
+  ports_.push_back(port);
 }
 
 void ServerBuilder::SetThreadPool(ThreadPoolInterface* thread_pool) {
diff --git a/src/cpp/server/server_context.cc b/src/cpp/server/server_context.cc
index ffd6d30d5d41ccd86a115dd725f7d3cbae1d5539..6b5e41d0a821e3788353ca55dbaf5b96357bd9c9 100644
--- a/src/cpp/server/server_context.cc
+++ b/src/cpp/server/server_context.cc
@@ -33,11 +33,11 @@
 
 #include <grpc++/server_context.h>
 
-#include <grpc++/impl/call.h>
-#include <grpc++/impl/sync.h>
 #include <grpc/grpc.h>
 #include <grpc/support/log.h>
-#include "src/cpp/util/time.h"
+#include <grpc++/impl/call.h>
+#include <grpc++/impl/sync.h>
+#include <grpc++/time.h>
 
 namespace grpc {
 
@@ -99,7 +99,7 @@ ServerContext::ServerContext()
 ServerContext::ServerContext(gpr_timespec deadline, grpc_metadata* metadata,
                              size_t metadata_count)
     : completion_op_(nullptr),
-      deadline_(Timespec2Timepoint(deadline)),
+      deadline_(deadline),
       call_(nullptr),
       cq_(nullptr),
       sent_initial_metadata_(false) {
diff --git a/src/cpp/util/time.cc b/src/cpp/util/time.cc
index 059ea72abf69271e5337ae6c23aaa4a2e8005ed4..1fef2a56deff8d53e6f7561fd84a25c28038e0d3 100644
--- a/src/cpp/util/time.cc
+++ b/src/cpp/util/time.cc
@@ -31,9 +31,12 @@
  *
  */
 
-#include "src/cpp/util/time.h"
+#include <grpc++/config.h>
+
+#ifndef GRPC_CXX0X_NO_CHRONO
 
 #include <grpc/support/time.h>
+#include <grpc++/time.h>
 
 using std::chrono::duration_cast;
 using std::chrono::nanoseconds;
@@ -68,3 +71,5 @@ system_clock::time_point Timespec2Timepoint(gpr_timespec t) {
 }
 
 }  // namespace grpc
+
+#endif  // !GRPC_CXX0X_NO_CHRONO
diff --git a/src/csharp/Grpc.Auth/.gitignore b/src/csharp/Grpc.Auth/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..c2dd6641675ac03d8a7e5d6af6f03637ef4cd137
--- /dev/null
+++ b/src/csharp/Grpc.Auth/.gitignore
@@ -0,0 +1,3 @@
+bin
+obj
+*.nupkg
diff --git a/src/csharp/Grpc.Auth/GoogleCredential.cs b/src/csharp/Grpc.Auth/GoogleCredential.cs
new file mode 100644
index 0000000000000000000000000000000000000000..36d43d320714ba63e7b9b59b632a538f5e9b1534
--- /dev/null
+++ b/src/csharp/Grpc.Auth/GoogleCredential.cs
@@ -0,0 +1,124 @@
+#region Copyright notice and license
+
+// 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.
+
+#endregion
+
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Security.Cryptography;
+
+using Google.Apis.Auth.OAuth2;
+using Mono.Security.Cryptography;
+using Newtonsoft.Json.Linq;
+using Org.BouncyCastle.Crypto.Parameters;
+using Org.BouncyCastle.Security;
+
+namespace Grpc.Auth
+{
+    // TODO(jtattermusch): Remove this class once possible.
+    /// <summary>
+    /// A temporary placeholder for Google credential from 
+    /// Google Auth library for .NET. It emulates the usage pattern 
+    /// for Usable auth.
+    /// </summary>
+    public class GoogleCredential
+    {
+        private const string GoogleApplicationCredentialsEnvName = "GOOGLE_APPLICATION_CREDENTIALS";
+        private const string ClientEmailFieldName = "client_email";
+        private const string PrivateKeyFieldName = "private_key";
+
+        private ServiceCredential credential;
+
+        private GoogleCredential(ServiceCredential credential)
+        {
+            this.credential = credential;
+        }
+
+        public static GoogleCredential GetApplicationDefault()
+        {
+            return new GoogleCredential(null);  
+        }
+
+        public bool IsCreateScopedRequired
+        {
+            get
+            {
+                return true;
+            }
+        }
+
+        public GoogleCredential CreateScoped(IEnumerable<string> scopes)
+        {
+            var credsPath = Environment.GetEnvironmentVariable(GoogleApplicationCredentialsEnvName);
+            if (credsPath == null)
+            {
+                // Default to ComputeCredentials if path to JSON key is not set.
+                // ComputeCredential is not scoped actually, but for our use case it's
+                // fine to treat is as such.
+                return new GoogleCredential(new ComputeCredential(new ComputeCredential.Initializer()));
+            }
+
+            JObject o1 = JObject.Parse(File.ReadAllText(credsPath));
+            string clientEmail = o1.GetValue(ClientEmailFieldName).Value<string>();
+            string privateKeyString = o1.GetValue(PrivateKeyFieldName).Value<string>();
+            var privateKey = ParsePrivateKeyFromString(privateKeyString);
+
+            var serviceCredential = new ServiceAccountCredential(
+                new ServiceAccountCredential.Initializer(clientEmail)
+                {
+                    Scopes = scopes,
+                    Key = privateKey
+                });
+            return new GoogleCredential(serviceCredential);
+        }
+
+        internal ServiceCredential InternalCredential
+        {
+            get
+            {
+                return credential;
+            }
+        }
+
+        private RSACryptoServiceProvider ParsePrivateKeyFromString(string base64PrivateKey)
+        {
+            // TODO(jtattermusch): temporary code to create RSACryptoServiceProvider.
+            base64PrivateKey = base64PrivateKey.Replace("-----BEGIN PRIVATE KEY-----", "").Replace("\n", "").Replace("-----END PRIVATE KEY-----", "");
+            PKCS8.PrivateKeyInfo PKI = new PKCS8.PrivateKeyInfo(Convert.FromBase64String(base64PrivateKey));
+            RsaPrivateCrtKeyParameters key = (RsaPrivateCrtKeyParameters)PrivateKeyFactory.CreateKey(PKI.GetBytes());
+            RSAParameters rsaParameters = DotNetUtilities.ToRSAParameters(key);
+            RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
+            rsa.ImportParameters(rsaParameters);
+            return rsa;
+        }
+    }
+}
diff --git a/src/csharp/Grpc.Auth/Grpc.Auth.csproj b/src/csharp/Grpc.Auth/Grpc.Auth.csproj
new file mode 100644
index 0000000000000000000000000000000000000000..1931db5fd8fa47b48a615fba55568ec8c811c538
--- /dev/null
+++ b/src/csharp/Grpc.Auth/Grpc.Auth.csproj
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProductVersion>10.0.0</ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{AE21D0EE-9A2C-4C15-AB7F-5224EED5B0EA}</ProjectGuid>
+    <OutputType>Library</OutputType>
+    <RootNamespace>Grpc.Auth</RootNamespace>
+    <AssemblyName>Grpc.Auth</AssemblyName>
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <ConsolePause>false</ConsolePause>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>full</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release</OutputPath>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <ConsolePause>false</ConsolePause>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="BouncyCastle.Crypto">
+      <HintPath>..\packages\BouncyCastle.1.7.0\lib\Net40-Client\BouncyCastle.Crypto.dll</HintPath>
+    </Reference>
+    <Reference Include="Google.Apis.Auth">
+      <HintPath>..\packages\Google.Apis.Auth.1.9.1\lib\net40\Google.Apis.Auth.dll</HintPath>
+    </Reference>
+    <Reference Include="Google.Apis.Auth.PlatformServices">
+      <HintPath>..\packages\Google.Apis.Auth.1.9.1\lib\net40\Google.Apis.Auth.PlatformServices.dll</HintPath>
+    </Reference>
+    <Reference Include="Google.Apis.Core">
+      <HintPath>..\packages\Google.Apis.Core.1.9.1\lib\portable-net40+sl50+win+wpa81+wp80\Google.Apis.Core.dll</HintPath>
+    </Reference>
+    <Reference Include="Microsoft.Threading.Tasks">
+      <HintPath>..\packages\Microsoft.Bcl.Async.1.0.168\lib\net40\Microsoft.Threading.Tasks.dll</HintPath>
+    </Reference>
+    <Reference Include="Microsoft.Threading.Tasks.Extensions">
+      <HintPath>..\packages\Microsoft.Bcl.Async.1.0.168\lib\net40\Microsoft.Threading.Tasks.Extensions.dll</HintPath>
+    </Reference>
+    <Reference Include="Microsoft.Threading.Tasks.Extensions.Desktop">
+      <HintPath>..\packages\Microsoft.Bcl.Async.1.0.168\lib\net40\Microsoft.Threading.Tasks.Extensions.Desktop.dll</HintPath>
+    </Reference>
+    <Reference Include="Mono.Security">
+      <HintPath>..\packages\Mono.Security.3.2.3.0\lib\net45\Mono.Security.dll</HintPath>
+    </Reference>
+    <Reference Include="Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>..\packages\Newtonsoft.Json.6.0.6\lib\net45\Newtonsoft.Json.dll</HintPath>
+    </Reference>
+    <Reference Include="System" />
+    <Reference Include="System.Net" />
+    <Reference Include="System.Net.Http" />
+    <Reference Include="System.Net.Http.Extensions">
+      <HintPath>..\packages\Microsoft.Net.Http.2.2.28\lib\net45\System.Net.Http.Extensions.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Net.Http.Primitives">
+      <HintPath>..\packages\Microsoft.Net.Http.2.2.28\lib\net45\System.Net.Http.Primitives.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Net.Http.WebRequest" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="Properties\AssemblyInfo.cs" />
+    <Compile Include="GoogleCredential.cs" />
+    <Compile Include="OAuth2InterceptorFactory.cs" />
+  </ItemGroup>
+  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+  <ItemGroup>
+    <ProjectReference Include="..\Grpc.Core\Grpc.Core.csproj">
+      <Project>{CCC4440E-49F7-4790-B0AF-FEABB0837AE7}</Project>
+      <Name>Grpc.Core</Name>
+    </ProjectReference>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="app.config" />
+    <None Include="packages.config" />
+  </ItemGroup>
+  <Import Project="..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets" Condition="Exists('..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets')" />
+  <Target Name="EnsureBclBuildImported" BeforeTargets="BeforeBuild" Condition="'$(BclBuildImported)' == ''">
+    <Error Condition="!Exists('..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets')" Text="This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=317567." HelpKeyword="BCLBUILD2001" />
+    <Error Condition="Exists('..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets')" Text="The build restored NuGet packages. Build the project again to include these packages in the build. For more information, see http://go.microsoft.com/fwlink/?LinkID=317568." HelpKeyword="BCLBUILD2002" />
+  </Target>
+</Project>
\ No newline at end of file
diff --git a/src/csharp/Grpc.Auth/OAuth2InterceptorFactory.cs b/src/csharp/Grpc.Auth/OAuth2InterceptorFactory.cs
new file mode 100644
index 0000000000000000000000000000000000000000..ca384d1a6e444fe2f513fc84289d7d0d8eeefb56
--- /dev/null
+++ b/src/csharp/Grpc.Auth/OAuth2InterceptorFactory.cs
@@ -0,0 +1,104 @@
+#region Copyright notice and license
+
+// 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.
+
+#endregion
+
+using System;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.IO;
+using System.Security.Cryptography.X509Certificates;
+using System.Text.RegularExpressions;
+using System.Threading;
+using System.Threading.Tasks;
+
+using Google.Apis.Auth.OAuth2;
+using Google.Apis.Util;
+using Grpc.Core;
+using Grpc.Core.Utils;
+
+namespace Grpc.Auth
+{
+    public static class OAuth2InterceptorFactory
+    {
+        /// <summary>
+        /// Creates OAuth2 interceptor.
+        /// </summary>
+        public static HeaderInterceptorDelegate Create(GoogleCredential googleCredential)
+        {
+            var interceptor = new OAuth2Interceptor(googleCredential.InternalCredential, SystemClock.Default);
+            return new HeaderInterceptorDelegate(interceptor.InterceptHeaders);
+        }
+
+        /// <summary>
+        /// Injects OAuth2 authorization header into initial metadata (= request headers).
+        /// </summary>
+        private class OAuth2Interceptor
+        {
+            private const string AuthorizationHeader = "Authorization";
+            private const string Schema = "Bearer";
+
+            private ServiceCredential credential;
+            private IClock clock;
+
+            public OAuth2Interceptor(ServiceCredential credential, IClock clock)
+            {
+                this.credential = credential;
+                this.clock = clock;
+            }
+
+            /// <summary>
+            /// Gets access token and requests refreshing it if is going to expire soon.
+            /// </summary>
+            /// <param name="cancellationToken"></param>
+            /// <returns></returns>
+            public string GetAccessToken(CancellationToken cancellationToken)
+            {
+                if (credential.Token == null || credential.Token.IsExpired(clock))
+                {
+                    // TODO(jtattermusch): Parallel requests will spawn multiple requests to refresh the token once the token expires.
+                    // TODO(jtattermusch): Rethink synchronous wait to obtain the result.
+                    if (!credential.RequestAccessTokenAsync(cancellationToken).Result)
+                    {
+                        throw new InvalidOperationException("The access token has expired but we can't refresh it");
+                    }
+                }
+                return credential.Token.AccessToken;
+            }
+
+            public void InterceptHeaders(Metadata.Builder headerBuilder)
+            {
+                var accessToken = GetAccessToken(CancellationToken.None);
+                headerBuilder.Add(new Metadata.MetadataEntry(AuthorizationHeader, Schema + " " + accessToken));
+            }
+        }
+    }
+}
diff --git a/src/csharp/Grpc.Auth/Properties/AssemblyInfo.cs b/src/csharp/Grpc.Auth/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000000000000000000000000000000000000..66b18d0ccf0dea0d17f903b47430ac657efcffec
--- /dev/null
+++ b/src/csharp/Grpc.Auth/Properties/AssemblyInfo.cs
@@ -0,0 +1,14 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+
+[assembly: AssemblyTitle("Grpc.Auth")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("")]
+[assembly: AssemblyCopyright("Google Inc.  All rights reserved.")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+[assembly: AssemblyVersion("0.2.*")]
+
+[assembly: InternalsVisibleTo("Grpc.Auth.Tests")]
\ No newline at end of file
diff --git a/src/csharp/Grpc.Auth/app.config b/src/csharp/Grpc.Auth/app.config
new file mode 100644
index 0000000000000000000000000000000000000000..966b777192f3d53ea95e7056f903c1bc009213f8
--- /dev/null
+++ b/src/csharp/Grpc.Auth/app.config
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+  <runtime>
+    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+      <dependentAssembly>
+        <assemblyIdentity name="System.Net.Http.Primitives" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.2.28.0" newVersion="4.2.28.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.2.28.0" newVersion="4.0.0.0" />
+      </dependentAssembly>
+    </assemblyBinding>
+  </runtime>
+</configuration>
\ No newline at end of file
diff --git a/src/csharp/Grpc.Auth/packages.config b/src/csharp/Grpc.Auth/packages.config
new file mode 100644
index 0000000000000000000000000000000000000000..0816bdbad15fff474698ef62497b930d8ebfa555
--- /dev/null
+++ b/src/csharp/Grpc.Auth/packages.config
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+  <package id="BouncyCastle" version="1.7.0" targetFramework="net45" />
+  <package id="Google.Apis.Auth" version="1.9.1" targetFramework="net45" />
+  <package id="Google.Apis.Core" version="1.9.1" targetFramework="net45" />
+  <package id="Microsoft.Bcl" version="1.1.9" targetFramework="net45" />
+  <package id="Microsoft.Bcl.Async" version="1.0.168" targetFramework="net45" />
+  <package id="Microsoft.Bcl.Build" version="1.0.14" targetFramework="net45" />
+  <package id="Microsoft.Net.Http" version="2.2.28" targetFramework="net45" />
+  <package id="Mono.Security" version="3.2.3.0" targetFramework="net45" />
+  <package id="Newtonsoft.Json" version="6.0.6" targetFramework="net45" />
+</packages>
\ No newline at end of file
diff --git a/src/csharp/Grpc.Core/Grpc.Core.csproj b/src/csharp/Grpc.Core/Grpc.Core.csproj
index b612512b03c1257249192e37452351c394ade422..0b85392e15a9d54ca936ff432b61273e2da50ed5 100644
--- a/src/csharp/Grpc.Core/Grpc.Core.csproj
+++ b/src/csharp/Grpc.Core/Grpc.Core.csproj
@@ -34,8 +34,7 @@
   </PropertyGroup>
   <ItemGroup>
     <Reference Include="System" />
-    <Reference Include="System.Collections.Immutable, Version=1.0.34.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
+    <Reference Include="System.Collections.Immutable">
       <HintPath>..\packages\Microsoft.Bcl.Immutable.1.0.34\lib\portable-net45+win8+wp8+wpa81\System.Collections.Immutable.dll</HintPath>
     </Reference>
   </ItemGroup>
diff --git a/src/csharp/Grpc.Core/Internal/CallSafeHandle.cs b/src/csharp/Grpc.Core/Internal/CallSafeHandle.cs
index 14add60c7289a4b80e2fee9d72819bebd5b2d5a8..c97a3bc2b16901f091dede5b901372fd189ef898 100644
--- a/src/csharp/Grpc.Core/Internal/CallSafeHandle.cs
+++ b/src/csharp/Grpc.Core/Internal/CallSafeHandle.cs
@@ -33,6 +33,7 @@ using System;
 using System.Diagnostics;
 using System.Runtime.InteropServices;
 using Grpc.Core;
+using Grpc.Core.Utils;
 
 namespace Grpc.Core.Internal
 {
@@ -180,7 +181,7 @@ namespace Grpc.Core.Internal
 
         private static void AssertCallOk(GRPCCallError callError)
         {
-            Trace.Assert(callError == GRPCCallError.GRPC_CALL_OK, "Status not GRPC_CALL_OK");
+            Preconditions.CheckState(callError == GRPCCallError.GRPC_CALL_OK, "Status not GRPC_CALL_OK");
         }
 
         private static uint GetFlags(bool buffered)
diff --git a/src/csharp/Grpc.Core/Internal/ServerSafeHandle.cs b/src/csharp/Grpc.Core/Internal/ServerSafeHandle.cs
index a59da0982215178791f698a96c66d65b0a16fa6a..8080643d8c18eb6b7cd008d0e77071d9491e9e82 100644
--- a/src/csharp/Grpc.Core/Internal/ServerSafeHandle.cs
+++ b/src/csharp/Grpc.Core/Internal/ServerSafeHandle.cs
@@ -35,6 +35,7 @@ using System;
 using System.Collections.Concurrent;
 using System.Diagnostics;
 using System.Runtime.InteropServices;
+using Grpc.Core.Utils;
 
 namespace Grpc.Core.Internal
 {
@@ -105,9 +106,9 @@ namespace Grpc.Core.Internal
             grpcsharp_server_shutdown_and_notify_CALLBACK(this, callback);
         }
 
-        public GRPCCallError RequestCall(CompletionQueueSafeHandle cq, CompletionCallbackDelegate callback)
+        public void RequestCall(CompletionQueueSafeHandle cq, CompletionCallbackDelegate callback)
         {
-            return grpcsharp_server_request_call(this, cq, callback);
+            AssertCallOk(grpcsharp_server_request_call(this, cq, callback));
         }
 
         protected override bool ReleaseHandle()
@@ -115,5 +116,10 @@ namespace Grpc.Core.Internal
             grpcsharp_server_destroy(handle);
             return true;
         }
+
+        private static void AssertCallOk(GRPCCallError callError)
+        {
+            Preconditions.CheckState(callError == GRPCCallError.GRPC_CALL_OK, "Status not GRPC_CALL_OK");
+        }
     }
 }
diff --git a/src/csharp/Grpc.Core/RpcException.cs b/src/csharp/Grpc.Core/RpcException.cs
index 433d87215ee3f4b6151ce020ff8c7f4ed5840508..c58578286b3e886cc3f950e8fd07dfb3d0ae4e4a 100644
--- a/src/csharp/Grpc.Core/RpcException.cs
+++ b/src/csharp/Grpc.Core/RpcException.cs
@@ -42,7 +42,7 @@ namespace Grpc.Core
     {
         private readonly Status status;
 
-        public RpcException(Status status)
+        public RpcException(Status status) : base(status.ToString())
         {
             this.status = status;
         }
diff --git a/src/csharp/Grpc.Core/Server.cs b/src/csharp/Grpc.Core/Server.cs
index f086fa8beb957124d6ef22066eaf80103a2150d0..e686cdddef782c6bbfd16175f5778d6753d970ba 100644
--- a/src/csharp/Grpc.Core/Server.cs
+++ b/src/csharp/Grpc.Core/Server.cs
@@ -38,27 +38,29 @@ using System.Diagnostics;
 using System.Runtime.InteropServices;
 using System.Threading.Tasks;
 using Grpc.Core.Internal;
+using Grpc.Core.Utils;
 
 namespace Grpc.Core
 {
     /// <summary>
-    /// Server is implemented only to be able to do
-    /// in-process testing.
+    /// A gRPC server.
     /// </summary>
     public class Server
     {
-        // TODO: make sure the delegate doesn't get garbage collected while
+        // TODO(jtattermusch) : make sure the delegate doesn't get garbage collected while
         // native callbacks are in the completion queue.
         readonly ServerShutdownCallbackDelegate serverShutdownHandler;
         readonly CompletionCallbackDelegate newServerRpcHandler;
 
-        readonly BlockingCollection<NewRpcInfo> newRpcQueue = new BlockingCollection<NewRpcInfo>();
         readonly ServerSafeHandle handle;
+        readonly object myLock = new object();
 
         readonly Dictionary<string, IServerCallHandler> callHandlers = new Dictionary<string, IServerCallHandler>();
-
         readonly TaskCompletionSource<object> shutdownTcs = new TaskCompletionSource<object>();
 
+        bool startRequested;
+        bool shutdownRequested;
+
         public Server()
         {
             this.handle = ServerSafeHandle.NewServer(GetCompletionQueue(), IntPtr.Zero);
@@ -66,71 +68,81 @@ namespace Grpc.Core
             this.serverShutdownHandler = HandleServerShutdown;
         }
 
-        // only call this before Start()
+        /// <summary>
+        /// Adds a service definition to the server. This is how you register
+        /// handlers for a service with the server.
+        /// Only call this before Start().
+        /// </summary>
         public void AddServiceDefinition(ServerServiceDefinition serviceDefinition)
         {
-            foreach (var entry in serviceDefinition.CallHandlers)
+            lock (myLock)
             {
-                callHandlers.Add(entry.Key, entry.Value);
+                Preconditions.CheckState(!startRequested);
+                foreach (var entry in serviceDefinition.CallHandlers)
+                {
+                    callHandlers.Add(entry.Key, entry.Value);
+                }
             }
         }
 
-        // only call before Start()
+        /// <summary>
+        /// Add a non-secure port on which server should listen.
+        /// Only call this before Start().
+        /// </summary>
         public int AddListeningPort(string addr)
         {
-            return handle.AddListeningPort(addr);
-        }
-
-        // only call before Start()
-        public int AddListeningPort(string addr, ServerCredentials credentials)
-        {
-            using (var nativeCredentials = credentials.ToNativeCredentials())
+            lock (myLock)
             {
-                return handle.AddListeningPort(addr, nativeCredentials);
+                Preconditions.CheckState(!startRequested);
+                return handle.AddListeningPort(addr);
             }
         }
 
-        public void Start()
-        {
-            handle.Start();
-
-            // TODO: this basically means the server is single threaded....
-            StartHandlingRpcs();
-        }
-
         /// <summary>
-        /// Requests and handles single RPC call.
+        /// Add a secure port on which server should listen.
+        /// Only call this before Start().
         /// </summary>
-        internal void RunRpc()
+        public int AddListeningPort(string addr, ServerCredentials credentials)
         {
-            AllowOneRpc();
-
-            try
+            lock (myLock)
             {
-                var rpcInfo = newRpcQueue.Take();
-
-                // Console.WriteLine("Server received RPC " + rpcInfo.Method);
-
-                IServerCallHandler callHandler;
-                if (!callHandlers.TryGetValue(rpcInfo.Method, out callHandler))
+                Preconditions.CheckState(!startRequested);
+                using (var nativeCredentials = credentials.ToNativeCredentials())
                 {
-                    callHandler = new NoSuchMethodCallHandler();
+                    return handle.AddListeningPort(addr, nativeCredentials);
                 }
-                callHandler.StartCall(rpcInfo.Method, rpcInfo.Call, GetCompletionQueue());
             }
-            catch (Exception e)
+        }
+
+        /// <summary>
+        /// Starts the server.
+        /// </summary>
+        public void Start()
+        {
+            lock (myLock)
             {
-                Console.WriteLine("Exception while handling RPC: " + e);
+                Preconditions.CheckState(!startRequested);
+                startRequested = true;
+                
+                handle.Start();
+                AllowOneRpc();
             }
         }
 
         /// <summary>
         /// Requests server shutdown and when there are no more calls being serviced,
-        /// cleans up used resources.
+        /// cleans up used resources. The returned task finishes when shutdown procedure
+        /// is complete.
         /// </summary>
-        /// <returns>The async.</returns>
         public async Task ShutdownAsync()
         {
+            lock (myLock)
+            {
+                Preconditions.CheckState(startRequested);
+                Preconditions.CheckState(!shutdownRequested);
+                shutdownRequested = true;
+            }
+
             handle.ShutdownAndNotify(serverShutdownHandler);
             await shutdownTcs.Task;
             handle.Dispose();
@@ -152,19 +164,43 @@ namespace Grpc.Core
             handle.Dispose();
         }
 
-        private async Task StartHandlingRpcs()
+        /// <summary>
+        /// Allows one new RPC call to be received by server.
+        /// </summary>
+        private void AllowOneRpc()
         {
-            while (true)
+            lock (myLock)
             {
-                await Task.Factory.StartNew(RunRpc);
+                if (!shutdownRequested)
+                {
+                    handle.RequestCall(GetCompletionQueue(), newServerRpcHandler);
+                }
             }
         }
 
-        private void AllowOneRpc()
+        /// <summary>
+        /// Selects corresponding handler for given call and handles the call.
+        /// </summary>
+        private void InvokeCallHandler(CallSafeHandle call, string method)
         {
-            AssertCallOk(handle.RequestCall(GetCompletionQueue(), newServerRpcHandler));
+            try
+            {
+                IServerCallHandler callHandler;
+                if (!callHandlers.TryGetValue(method, out callHandler))
+                {
+                    callHandler = new NoSuchMethodCallHandler();
+                }
+                callHandler.StartCall(method, call, GetCompletionQueue());
+            }
+            catch (Exception e)
+            {
+                Console.WriteLine("Exception while handling RPC: " + e);
+            }
         }
 
+        /// <summary>
+        /// Handles the native callback.
+        /// </summary>
         private void HandleNewServerRpc(GRPCOpError error, IntPtr batchContextPtr)
         {
             try
@@ -176,13 +212,16 @@ namespace Grpc.Core
                     // TODO: handle error
                 }
 
-                var rpcInfo = new NewRpcInfo(ctx.GetServerRpcNewCall(), ctx.GetServerRpcNewMethod());
+                CallSafeHandle call = ctx.GetServerRpcNewCall();
+                string method = ctx.GetServerRpcNewMethod();
 
                 // after server shutdown, the callback returns with null call
-                if (!rpcInfo.Call.IsInvalid)
+                if (!call.IsInvalid)
                 {
-                    newRpcQueue.Add(rpcInfo);
+                    Task.Run(() => InvokeCallHandler(call, method));
                 }
+
+                AllowOneRpc();
             }
             catch (Exception e)
             {
@@ -190,6 +229,10 @@ namespace Grpc.Core
             }
         }
 
+        /// <summary>
+        /// Handles native callback.
+        /// </summary>
+        /// <param name="eventPtr"></param>
         private void HandleServerShutdown(IntPtr eventPtr)
         {
             try
@@ -202,42 +245,9 @@ namespace Grpc.Core
             }
         }
 
-        private static void AssertCallOk(GRPCCallError callError)
-        {
-            Trace.Assert(callError == GRPCCallError.GRPC_CALL_OK, "Status not GRPC_CALL_OK");
-        }
-
         private static CompletionQueueSafeHandle GetCompletionQueue()
         {
             return GrpcEnvironment.ThreadPool.CompletionQueue;
         }
-
-        private struct NewRpcInfo
-        {
-            private CallSafeHandle call;
-            private string method;
-
-            public NewRpcInfo(CallSafeHandle call, string method)
-            {
-                this.call = call;
-                this.method = method;
-            }
-
-            public CallSafeHandle Call
-            {
-                get
-                {
-                    return this.call;
-                }
-            }
-
-            public string Method
-            {
-                get
-                {
-                    return this.method;
-                }
-            }
-        }
     }
 }
diff --git a/src/csharp/Grpc.Core/Status.cs b/src/csharp/Grpc.Core/Status.cs
index 080bbdc2f5b3544b5917126837490732ae1a3f9f..7d76aec4d1198dda8969c79cede6ff0dbe3e556b 100644
--- a/src/csharp/Grpc.Core/Status.cs
+++ b/src/csharp/Grpc.Core/Status.cs
@@ -69,5 +69,10 @@ namespace Grpc.Core
                 return detail;
             }
         }
+
+        public override string ToString()
+        {
+            return string.Format("Status(StatusCode={0}, Detail=\"{1}\")", statusCode, detail);
+        }
     }
 }
diff --git a/src/csharp/Grpc.Examples.MathServer/MathServer.cs b/src/csharp/Grpc.Examples.MathServer/MathServer.cs
index 884a84d0a6c8d1ceb4dadc15e6ebae3a953c14af..abc7ef05e4b28d57a072eff4e101665728eea6c3 100644
--- a/src/csharp/Grpc.Examples.MathServer/MathServer.cs
+++ b/src/csharp/Grpc.Examples.MathServer/MathServer.cs
@@ -40,13 +40,13 @@ namespace math
     {
         public static void Main(string[] args)
         {
-            String host = "0.0.0.0";
+            string host = "0.0.0.0";
 
             GrpcEnvironment.Initialize();
 
             Server server = new Server();
             server.AddServiceDefinition(MathGrpc.BindService(new MathServiceImpl()));
-            int port = server.AddListeningPort(host + ":0");
+            int port = server.AddListeningPort(host + ":23456");
             server.Start();
 
             Console.WriteLine("MathServer listening on port " + port);
diff --git a/src/csharp/Grpc.IntegrationTesting.Client/Grpc.IntegrationTesting.Client.csproj b/src/csharp/Grpc.IntegrationTesting.Client/Grpc.IntegrationTesting.Client.csproj
index b1a4a81916a25eca2993f9ed715ceb53cd493410..df05c535e2472636515ebb270c3fc89fe79a2fc0 100644
--- a/src/csharp/Grpc.IntegrationTesting.Client/Grpc.IntegrationTesting.Client.csproj
+++ b/src/csharp/Grpc.IntegrationTesting.Client/Grpc.IntegrationTesting.Client.csproj
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -46,4 +46,7 @@
       <Name>Grpc.IntegrationTesting</Name>
     </ProjectReference>
   </ItemGroup>
+  <ItemGroup>
+    <None Include="app.config" />
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/src/csharp/Grpc.IntegrationTesting.Client/app.config b/src/csharp/Grpc.IntegrationTesting.Client/app.config
new file mode 100644
index 0000000000000000000000000000000000000000..966b777192f3d53ea95e7056f903c1bc009213f8
--- /dev/null
+++ b/src/csharp/Grpc.IntegrationTesting.Client/app.config
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+  <runtime>
+    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+      <dependentAssembly>
+        <assemblyIdentity name="System.Net.Http.Primitives" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.2.28.0" newVersion="4.2.28.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.2.28.0" newVersion="4.0.0.0" />
+      </dependentAssembly>
+    </assemblyBinding>
+  </runtime>
+</configuration>
\ No newline at end of file
diff --git a/src/csharp/Grpc.IntegrationTesting.Server/Grpc.IntegrationTesting.Server.csproj b/src/csharp/Grpc.IntegrationTesting.Server/Grpc.IntegrationTesting.Server.csproj
index 73c9f2d2077ae36f1cf33adaa6b3b9aedca871b1..235897c888e6e483eabd732c99c707b6940c8446 100644
--- a/src/csharp/Grpc.IntegrationTesting.Server/Grpc.IntegrationTesting.Server.csproj
+++ b/src/csharp/Grpc.IntegrationTesting.Server/Grpc.IntegrationTesting.Server.csproj
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -46,4 +46,7 @@
       <Name>Grpc.IntegrationTesting</Name>
     </ProjectReference>
   </ItemGroup>
+  <ItemGroup>
+    <None Include="app.config" />
+  </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/src/csharp/Grpc.IntegrationTesting.Server/app.config b/src/csharp/Grpc.IntegrationTesting.Server/app.config
new file mode 100644
index 0000000000000000000000000000000000000000..966b777192f3d53ea95e7056f903c1bc009213f8
--- /dev/null
+++ b/src/csharp/Grpc.IntegrationTesting.Server/app.config
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+  <runtime>
+    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+      <dependentAssembly>
+        <assemblyIdentity name="System.Net.Http.Primitives" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.2.28.0" newVersion="4.2.28.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.2.28.0" newVersion="4.0.0.0" />
+      </dependentAssembly>
+    </assemblyBinding>
+  </runtime>
+</configuration>
\ No newline at end of file
diff --git a/src/csharp/Grpc.IntegrationTesting/Grpc.IntegrationTesting.csproj b/src/csharp/Grpc.IntegrationTesting/Grpc.IntegrationTesting.csproj
index 584bf1068de88e688acab3b3a8cf93d2606d2e51..13bbb5363fa41ad8e9837e7ce9863af628d92d7c 100644
--- a/src/csharp/Grpc.IntegrationTesting/Grpc.IntegrationTesting.csproj
+++ b/src/csharp/Grpc.IntegrationTesting/Grpc.IntegrationTesting.csproj
@@ -32,6 +32,21 @@
     <PlatformTarget>x86</PlatformTarget>
   </PropertyGroup>
   <ItemGroup>
+    <Reference Include="Google.Apis.Auth.PlatformServices">
+      <HintPath>..\packages\Google.Apis.Auth.1.9.1\lib\net40\Google.Apis.Auth.PlatformServices.dll</HintPath>
+    </Reference>
+    <Reference Include="Google.Apis.Core">
+      <HintPath>..\packages\Google.Apis.Core.1.9.1\lib\portable-net40+sl50+win+wpa81+wp80\Google.Apis.Core.dll</HintPath>
+    </Reference>
+    <Reference Include="Microsoft.Threading.Tasks">
+      <HintPath>..\packages\Microsoft.Bcl.Async.1.0.168\lib\net40\Microsoft.Threading.Tasks.dll</HintPath>
+    </Reference>
+    <Reference Include="Microsoft.Threading.Tasks.Extensions">
+      <HintPath>..\packages\Microsoft.Bcl.Async.1.0.168\lib\net40\Microsoft.Threading.Tasks.Extensions.dll</HintPath>
+    </Reference>
+    <Reference Include="Microsoft.Threading.Tasks.Extensions.Desktop">
+      <HintPath>..\packages\Microsoft.Bcl.Async.1.0.168\lib\net40\Microsoft.Threading.Tasks.Extensions.Desktop.dll</HintPath>
+    </Reference>
     <Reference Include="nunit.framework">
       <HintPath>..\packages\NUnit.2.6.4\lib\nunit.framework.dll</HintPath>
     </Reference>
@@ -39,8 +54,19 @@
     <Reference Include="Google.ProtocolBuffers">
       <HintPath>..\packages\Google.ProtocolBuffers.2.4.1.521\lib\net40\Google.ProtocolBuffers.dll</HintPath>
     </Reference>
-    <Reference Include="System.Collections.Immutable, Version=1.0.34.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
+    <Reference Include="System.Net" />
+    <Reference Include="System.Net.Http" />
+    <Reference Include="System.Net.Http.Extensions">
+      <HintPath>..\packages\Microsoft.Net.Http.2.2.28\lib\net45\System.Net.Http.Extensions.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Net.Http.Primitives">
+      <HintPath>..\packages\Microsoft.Net.Http.2.2.28\lib\net45\System.Net.Http.Primitives.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Net.Http.WebRequest" />
+    <Reference Include="Newtonsoft.Json">
+      <HintPath>..\packages\Newtonsoft.Json.6.0.6\lib\net45\Newtonsoft.Json.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Collections.Immutable">
       <HintPath>..\packages\Microsoft.Bcl.Immutable.1.0.34\lib\portable-net45+win8+wp8+wpa81\System.Collections.Immutable.dll</HintPath>
     </Reference>
   </ItemGroup>
@@ -61,8 +87,13 @@
       <Project>{CCC4440E-49F7-4790-B0AF-FEABB0837AE7}</Project>
       <Name>Grpc.Core</Name>
     </ProjectReference>
+    <ProjectReference Include="..\Grpc.Auth\Grpc.Auth.csproj">
+      <Project>{AE21D0EE-9A2C-4C15-AB7F-5224EED5B0EA}</Project>
+      <Name>Grpc.Auth</Name>
+    </ProjectReference>
   </ItemGroup>
   <ItemGroup>
+    <None Include="app.config" />
     <None Include="packages.config" />
     <None Include="proto\test.proto" />
     <None Include="proto\empty.proto" />
@@ -80,5 +111,12 @@
       <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     </None>
   </ItemGroup>
-  <ItemGroup />
+  <ItemGroup>
+    <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+  </ItemGroup>
+  <Import Project="..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets" Condition="Exists('..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets')" />
+  <Target Name="EnsureBclBuildImported" BeforeTargets="BeforeBuild" Condition="'$(BclBuildImported)' == ''">
+    <Error Condition="!Exists('..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets')" Text="This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=317567." HelpKeyword="BCLBUILD2001" />
+    <Error Condition="Exists('..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets')" Text="The build restored NuGet packages. Build the project again to include these packages in the build. For more information, see http://go.microsoft.com/fwlink/?LinkID=317568." HelpKeyword="BCLBUILD2002" />
+  </Target>
 </Project>
\ No newline at end of file
diff --git a/src/csharp/Grpc.IntegrationTesting/InteropClient.cs b/src/csharp/Grpc.IntegrationTesting/InteropClient.cs
index 6b92d3c660fe56737661b551f40527ee32d68949..1fbae374b1d61372f48371b197a81fbbb797280b 100644
--- a/src/csharp/Grpc.IntegrationTesting/InteropClient.cs
+++ b/src/csharp/Grpc.IntegrationTesting/InteropClient.cs
@@ -33,12 +33,11 @@
 
 using System;
 using System.Collections.Generic;
-using System.Diagnostics;
-using System.IO;
 using System.Text.RegularExpressions;
-using System.Threading.Tasks;
+
 using Google.ProtocolBuffers;
 using grpc.testing;
+using Grpc.Auth;
 using Grpc.Core;
 using Grpc.Core.Utils;
 using NUnit.Framework;
@@ -47,6 +46,11 @@ namespace Grpc.IntegrationTesting
 {
     public class InteropClient
     {
+        private const string ServiceAccountUser = "155450119199-3psnrh1sdr3d8cpj1v46naggf81mhdnk@developer.gserviceaccount.com";
+        private const string ComputeEngineUser = "155450119199-r5aaqa2vqoa9g5mv2m6s3m1l293rlmel@developer.gserviceaccount.com";
+        private const string AuthScope = "https://www.googleapis.com/auth/xapi.zoo";
+        private const string AuthScopeResponse = "xapi.zoo";
+
         private class ClientOptions
         {
             public bool help;
@@ -115,7 +119,18 @@ namespace Grpc.IntegrationTesting
 
             using (Channel channel = new Channel(addr, credentials, channelArgs))
             {
-                TestServiceGrpc.ITestServiceClient client = new TestServiceGrpc.TestServiceClientStub(channel);
+                var stubConfig = StubConfiguration.Default;
+                if (options.testCase == "service_account_creds" || options.testCase == "compute_engine_creds")
+                {
+                    var credential = GoogleCredential.GetApplicationDefault();
+                    if (credential.IsCreateScopedRequired)
+                    {
+                        credential = credential.CreateScoped(new[] { AuthScope });
+                    }
+                    stubConfig = new StubConfiguration(OAuth2InterceptorFactory.Create(credential));
+                }
+
+                TestServiceGrpc.ITestServiceClient client = new TestServiceGrpc.TestServiceClientStub(channel, stubConfig);
                 RunTestCase(options.testCase, client);
             }
 
@@ -144,6 +159,12 @@ namespace Grpc.IntegrationTesting
                 case "empty_stream":
                     RunEmptyStream(client);
                     break;
+                case "service_account_creds":
+                    RunServiceAccountCreds(client);
+                    break;
+                case "compute_engine_creds":
+                    RunComputeEngineCreds(client);
+                    break;
                 case "benchmark_empty_unary":
                     RunBenchmarkEmptyUnary(client);
                     break;
@@ -287,6 +308,46 @@ namespace Grpc.IntegrationTesting
             Console.WriteLine("Passed!");
         }
 
+        public static void RunServiceAccountCreds(TestServiceGrpc.ITestServiceClient client)
+        {
+            Console.WriteLine("running service_account_creds");
+            var request = SimpleRequest.CreateBuilder()
+                .SetResponseType(PayloadType.COMPRESSABLE)
+                    .SetResponseSize(314159)
+                    .SetPayload(CreateZerosPayload(271828))
+                    .SetFillUsername(true)
+                    .SetFillOauthScope(true)
+                    .Build();
+
+            var response = client.UnaryCall(request);
+
+            Assert.AreEqual(PayloadType.COMPRESSABLE, response.Payload.Type);
+            Assert.AreEqual(314159, response.Payload.Body.Length);
+            Assert.AreEqual(AuthScopeResponse, response.OauthScope);
+            Assert.AreEqual(ServiceAccountUser, response.Username);
+            Console.WriteLine("Passed!");
+        }
+
+        public static void RunComputeEngineCreds(TestServiceGrpc.ITestServiceClient client)
+        {
+            Console.WriteLine("running compute_engine_creds");
+            var request = SimpleRequest.CreateBuilder()
+                .SetResponseType(PayloadType.COMPRESSABLE)
+                    .SetResponseSize(314159)
+                    .SetPayload(CreateZerosPayload(271828))
+                    .SetFillUsername(true)
+                    .SetFillOauthScope(true)
+                    .Build();
+
+            var response = client.UnaryCall(request);
+
+            Assert.AreEqual(PayloadType.COMPRESSABLE, response.Payload.Type);
+            Assert.AreEqual(314159, response.Payload.Body.Length);
+            Assert.AreEqual(AuthScopeResponse, response.OauthScope);
+            Assert.AreEqual(ComputeEngineUser, response.Username);
+            Console.WriteLine("Passed!");
+        }
+
         // This is not an official interop test, but it's useful.
         public static void RunBenchmarkEmptyUnary(TestServiceGrpc.ITestServiceClient client)
         {
diff --git a/src/csharp/Grpc.IntegrationTesting/app.config b/src/csharp/Grpc.IntegrationTesting/app.config
new file mode 100644
index 0000000000000000000000000000000000000000..966b777192f3d53ea95e7056f903c1bc009213f8
--- /dev/null
+++ b/src/csharp/Grpc.IntegrationTesting/app.config
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+  <runtime>
+    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+      <dependentAssembly>
+        <assemblyIdentity name="System.Net.Http.Primitives" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.2.28.0" newVersion="4.2.28.0" />
+      </dependentAssembly>
+      <dependentAssembly>
+        <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
+        <bindingRedirect oldVersion="0.0.0.0-4.2.28.0" newVersion="4.0.0.0" />
+      </dependentAssembly>
+    </assemblyBinding>
+  </runtime>
+</configuration>
\ No newline at end of file
diff --git a/src/csharp/Grpc.IntegrationTesting/packages.config b/src/csharp/Grpc.IntegrationTesting/packages.config
index 335f829432d294df41ab545f93a46e22ae433e9a..e33b6e3e464119fedd1e83ebc41ca19958cb8a00 100644
--- a/src/csharp/Grpc.IntegrationTesting/packages.config
+++ b/src/csharp/Grpc.IntegrationTesting/packages.config
@@ -1,6 +1,13 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
+  <package id="Google.Apis.Auth" version="1.9.1" targetFramework="net45" />
+  <package id="Google.Apis.Core" version="1.9.1" targetFramework="net45" />
   <package id="Google.ProtocolBuffers" version="2.4.1.521" targetFramework="net45" />
+  <package id="Microsoft.Bcl" version="1.1.9" targetFramework="net45" />
+  <package id="Microsoft.Bcl.Async" version="1.0.168" targetFramework="net45" />
+  <package id="Microsoft.Bcl.Build" version="1.0.14" targetFramework="net45" />
   <package id="Microsoft.Bcl.Immutable" version="1.0.34" targetFramework="net45" />
+  <package id="Microsoft.Net.Http" version="2.2.28" targetFramework="net45" />
+  <package id="Newtonsoft.Json" version="6.0.6" targetFramework="net45" />
   <package id="NUnit" version="2.6.4" targetFramework="net45" />
 </packages>
\ No newline at end of file
diff --git a/src/csharp/Grpc.sln b/src/csharp/Grpc.sln
index 2f8c2e171902df02599f5d95335c1d401657907c..e2a374e362a4afc38db8de6a7bff84ce4d469243 100644
--- a/src/csharp/Grpc.sln
+++ b/src/csharp/Grpc.sln
@@ -19,6 +19,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Grpc.IntegrationTesting.Ser
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Grpc.Examples.MathServer", "Grpc.Examples.MathServer\Grpc.Examples.MathServer.csproj", "{BF62FE08-373A-43D6-9D73-41CAA38B7011}"
 EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Grpc.Auth", "Grpc.Auth\Grpc.Auth.csproj", "{AE21D0EE-9A2C-4C15-AB7F-5224EED5B0EA}"
+EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 		Debug|x86 = Debug|x86
@@ -49,6 +51,10 @@ Global
 		{A654F3B8-E859-4E6A-B30D-227527DBEF0D}.Debug|x86.Build.0 = Debug|x86
 		{A654F3B8-E859-4E6A-B30D-227527DBEF0D}.Release|x86.ActiveCfg = Release|x86
 		{A654F3B8-E859-4E6A-B30D-227527DBEF0D}.Release|x86.Build.0 = Release|x86
+		{AE21D0EE-9A2C-4C15-AB7F-5224EED5B0EA}.Debug|x86.ActiveCfg = Debug|Any CPU
+		{AE21D0EE-9A2C-4C15-AB7F-5224EED5B0EA}.Debug|x86.Build.0 = Debug|Any CPU
+		{AE21D0EE-9A2C-4C15-AB7F-5224EED5B0EA}.Release|x86.ActiveCfg = Release|Any CPU
+		{AE21D0EE-9A2C-4C15-AB7F-5224EED5B0EA}.Release|x86.Build.0 = Release|Any CPU
 		{BF62FE08-373A-43D6-9D73-41CAA38B7011}.Debug|x86.ActiveCfg = Debug|x86
 		{BF62FE08-373A-43D6-9D73-41CAA38B7011}.Debug|x86.Build.0 = Debug|x86
 		{BF62FE08-373A-43D6-9D73-41CAA38B7011}.Release|x86.ActiveCfg = Release|x86
diff --git a/src/node/README.md b/src/node/README.md
index b1d2310ede05f5c5b5c14f1e91713f4629cfebc6..6e4934151e351ea2b48b969bb833dafedd82d593 100644
--- a/src/node/README.md
+++ b/src/node/README.md
@@ -14,6 +14,12 @@ This requires `node` to be installed. If you instead have the `nodejs` executabl
  2. Follow the instructions in the `INSTALL` file in the root of that repository to install the C core library that this package depends on.
  3. Run `npm install`.
 
+If you install the gRPC C core library in a custom location, then you need to set some environment variables to install this library. The command will look like this:
+
+```sh
+CXXFLAGS=-I<custom location>/include LDFLAGS=-L<custom location>/lib npm install [grpc]
+```
+
 ## Tests
 
 To run the test suite, simply run `npm test` in the install location.
diff --git a/src/node/ext/completion_queue_async_worker.cc b/src/node/ext/completion_queue_async_worker.cc
index cd7acd1d1b11d4ebdcebc8d3c392211d8f645928..4e57121a85ab228bdefe38aa93ab8c03d11f6e13 100644
--- a/src/node/ext/completion_queue_async_worker.cc
+++ b/src/node/ext/completion_queue_async_worker.cc
@@ -43,6 +43,8 @@
 namespace grpc {
 namespace node {
 
+const int max_queue_threads = 2;
+
 using v8::Function;
 using v8::Handle;
 using v8::Object;
@@ -51,6 +53,9 @@ using v8::Value;
 
 grpc_completion_queue *CompletionQueueAsyncWorker::queue;
 
+int CompletionQueueAsyncWorker::current_threads;
+int CompletionQueueAsyncWorker::waiting_next_calls;
+
 CompletionQueueAsyncWorker::CompletionQueueAsyncWorker()
     : NanAsyncWorker(NULL) {}
 
@@ -67,17 +72,30 @@ grpc_completion_queue *CompletionQueueAsyncWorker::GetQueue() { return queue; }
 
 void CompletionQueueAsyncWorker::Next() {
   NanScope();
-  CompletionQueueAsyncWorker *worker = new CompletionQueueAsyncWorker();
-  NanAsyncQueueWorker(worker);
+  if (current_threads < max_queue_threads) {
+    CompletionQueueAsyncWorker *worker = new CompletionQueueAsyncWorker();
+    NanAsyncQueueWorker(worker);
+  } else {
+    waiting_next_calls += 1;
+  }
 }
 
 void CompletionQueueAsyncWorker::Init(Handle<Object> exports) {
   NanScope();
+  current_threads = 0;
+  waiting_next_calls = 0;
   queue = grpc_completion_queue_create();
 }
 
 void CompletionQueueAsyncWorker::HandleOKCallback() {
   NanScope();
+  if (waiting_next_calls > 0) {
+    waiting_next_calls -= 1;
+    CompletionQueueAsyncWorker *worker = new CompletionQueueAsyncWorker();
+    NanAsyncQueueWorker(worker);
+  } else {
+    current_threads -= 1;
+  }
   NanCallback *callback = GetTagCallback(result->tag);
   Handle<Value> argv[] = {NanNull(), GetTagNodeValue(result->tag)};
   callback->Call(2, argv);
diff --git a/src/node/ext/completion_queue_async_worker.h b/src/node/ext/completion_queue_async_worker.h
index 0ddb5b4cfd2551a19a1b9421c8dfe7a52829b1aa..5d52bbb1fbe9f11dbaf49528ebaea35eda10279e 100644
--- a/src/node/ext/completion_queue_async_worker.h
+++ b/src/node/ext/completion_queue_async_worker.h
@@ -73,6 +73,11 @@ class CompletionQueueAsyncWorker : public NanAsyncWorker {
   grpc_event *result;
 
   static grpc_completion_queue *queue;
+
+  // Number of grpc_completion_queue_next calls in the thread pool
+  static int current_threads;
+  // Number of grpc_completion_queue_next calls waiting to enter the thread pool
+  static int waiting_next_calls;
 };
 
 }  // namespace node
diff --git a/src/node/package.json b/src/node/package.json
index fc3ca1f103cfcd602931e74a0faae8ad364a125e..6c0953a83f2b208bef2681763ac305dbec6e7ce9 100644
--- a/src/node/package.json
+++ b/src/node/package.json
@@ -1,6 +1,6 @@
 {
   "name": "grpc",
-  "version": "0.6.1",
+  "version": "0.6.2",
   "author": "Google Inc.",
   "description": "gRPC Library for Node",
   "homepage": "http://www.grpc.io/",
diff --git a/src/objective-c/GRPCClient/GRPCMethodName.h b/src/objective-c/GRPCClient/GRPCMethodName.h
index dcad8a3347989bde4c4040591f7b1f18cc2f0c0c..fe153dd478b2cacd48d6f0079a24191652dd7718 100644
--- a/src/objective-c/GRPCClient/GRPCMethodName.h
+++ b/src/objective-c/GRPCClient/GRPCMethodName.h
@@ -37,7 +37,8 @@
 
 // A fully-qualified gRPC method name. Full qualification is needed because a gRPC endpoint can
 // implement multiple interfaces.
-// TODO(jcanizales): Is this proto-specific, or actual part of gRPC? If the former, move one layer up.
+// TODO(jcanizales): Move to ProtoRPC package.
+// TODO(jcanizales): Rename interface -> service.
 @interface GRPCMethodName : NSObject
 @property(nonatomic, readonly) NSString *package;
 @property(nonatomic, readonly) NSString *interface;
diff --git a/test/core/transport/transport_end2end_tests.h b/src/objective-c/ProtoRPC/ProtoRPC.h
similarity index 50%
rename from test/core/transport/transport_end2end_tests.h
rename to src/objective-c/ProtoRPC/ProtoRPC.h
index 1edffe9a79ed7f17f2d8501d6dae9d6be423851b..b6375f52d6fc648e92ffb811729a95c2ca46ac8e 100644
--- a/test/core/transport/transport_end2end_tests.h
+++ b/src/objective-c/ProtoRPC/ProtoRPC.h
@@ -31,38 +31,16 @@
  *
  */
 
-#ifndef GRPC_TEST_CORE_TRANSPORT_TRANSPORT_END2END_TESTS_H
-#define GRPC_TEST_CORE_TRANSPORT_TRANSPORT_END2END_TESTS_H
+#import <Foundation/Foundation.h>
+#import <gRPC/GRPCCall.h>
 
-#include "src/core/transport/transport.h"
+@interface ProtoRPC : GRPCCall
 
-/* Defines a suite of tests that all GRPC transports should be able to pass */
+- (instancetype)initWithHost:(NSString *)host
+                      method:(GRPCMethodName *)method
+              requestsWriter:(id<GRXWriter>)requestsWriter
+               responseClass:(Class)responseClass
+          responsesWriteable:(id<GRXWriteable>)responsesWriteable NS_DESIGNATED_INITIALIZER;
 
-/* A test configuration has a name and a factory method */
-typedef struct grpc_transport_test_config {
-  /* The name of this configuration */
-  char *name;
-  /* Create a transport
-     Returns 0 on success
-
-     Arguments:
-       OUT: client           - the created client half of the transport
-       IN:  client_callbacks - callback structure to be used by the client
-                               transport
-       IN:  client_user_data - user data pointer to be passed into each client
-                               callback
-       OUT: server           - the created server half of the transport
-       IN:  server_callbacks - callback structure to be used by the server
-                               transport
-       IN:  server_user_data - user data pointer to be passed into each
-                               server */
-  int (*create_transport)(grpc_transport_setup_callback client_setup,
-                          void *client_arg,
-                          grpc_transport_setup_callback server_setup,
-                          void *server_arg, grpc_mdctx *mdctx);
-} grpc_transport_test_config;
-
-/* Run the test suite on one configuration */
-void grpc_transport_end2end_tests(grpc_transport_test_config *config);
-
-#endif  /* GRPC_TEST_CORE_TRANSPORT_TRANSPORT_END2END_TESTS_H */
+- (void)start;
+@end
diff --git a/src/objective-c/ProtoRPC/ProtoRPC.m b/src/objective-c/ProtoRPC/ProtoRPC.m
new file mode 100644
index 0000000000000000000000000000000000000000..6520b3af59abcd6bb2a393feeb54e52baaa33615
--- /dev/null
+++ b/src/objective-c/ProtoRPC/ProtoRPC.m
@@ -0,0 +1,91 @@
+/*
+ *
+ * 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 "ProtoRPC.h"
+
+#import <gRPC/GRXWriteable.h>
+#import <gRPC/GRXWriter.h>
+#import <gRPC/GRXWriter+Transformations.h>
+#import <ProtocolBuffers/ProtocolBuffers.h>
+
+@implementation ProtoRPC {
+  id<GRXWriteable> _responseWriteable;
+}
+
+- (instancetype)initWithHost:(NSString *)host
+                      method:(GRPCMethodName *)method
+              requestsWriter:(id<GRXWriter>)requestsWriter {
+  return [self initWithHost:host
+                     method:method
+             requestsWriter:requestsWriter
+              responseClass:nil
+        responsesWriteable:nil];
+}
+
+// Designated initializer
+- (instancetype)initWithHost:(NSString *)host
+                      method:(GRPCMethodName *)method
+              requestsWriter:(id<GRXWriter>)requestsWriter
+               responseClass:(Class)responseClass
+          responsesWriteable:(id<GRXWriteable>)responsesWriteable {
+  // Because we can't tell the type system to constrain the class, we need to check at runtime:
+  if (![responseClass respondsToSelector:@selector(parseFromData:)]) {
+    [NSException raise:NSInvalidArgumentException
+                format:@"A protobuf class to parse the responses must be provided."];
+  }
+  // A writer that serializes the proto messages to send.
+  id<GRXWriter> bytesWriter =
+      [[[GRXWriter alloc] initWithWriter:requestsWriter] map:^id(PBGeneratedMessage *proto) {
+        return [proto data];
+      }];
+  if ((self = [super initWithHost:host method:method requestsWriter:bytesWriter])) {
+    // A writeable that parses the proto messages received.
+    _responseWriteable = [[GRXWriteable alloc] initWithValueHandler:^(NSData *value) {
+      [responsesWriteable didReceiveValue:[responseClass parseFromData:value]];
+    } completionHandler:^(NSError *errorOrNil) {
+      [responsesWriteable didFinishWithError:errorOrNil];
+    }];
+  }
+  return self;
+}
+
+- (void)start {
+  [self startWithWriteable:_responseWriteable];
+}
+
+- (void)startWithWriteable:(id<GRXWriteable>)writeable {
+  [super startWithWriteable:writeable];
+  // Break retain cycles.
+  _responseWriteable = nil;
+}
+@end
diff --git a/src/objective-c/ProtoRPC/ProtoService.h b/src/objective-c/ProtoRPC/ProtoService.h
new file mode 100644
index 0000000000000000000000000000000000000000..c5ef820f48a765692082b1908c1c3f2405797278
--- /dev/null
+++ b/src/objective-c/ProtoRPC/ProtoService.h
@@ -0,0 +1,49 @@
+/*
+ *
+ * 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 <Foundation/Foundation.h>
+
+@class ProtoRPC;
+@protocol GRXWriteable;
+@protocol GRXWriter;
+
+@interface ProtoService : NSObject
+- (instancetype)initWithHost:(NSString *)host
+                 packageName:(NSString *)packageName
+                 serviceName:(NSString *)serviceName NS_DESIGNATED_INITIALIZER;
+
+- (ProtoRPC *)RPCToMethod:(NSString *)method
+           requestsWriter:(id<GRXWriter>)requestsWriter
+  	        responseClass:(Class)responseClass
+  	   responsesWriteable:(id<GRXWriteable>)responsesWriteable;
+@end
diff --git a/src/objective-c/ProtoRPC/ProtoService.m b/src/objective-c/ProtoRPC/ProtoService.m
new file mode 100644
index 0000000000000000000000000000000000000000..453d7b3f1a6bec4408342683b625c0504d5dd50e
--- /dev/null
+++ b/src/objective-c/ProtoRPC/ProtoService.m
@@ -0,0 +1,81 @@
+/*
+ *
+ * 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 "ProtoService.h"
+
+#import <gRPC/GRPCMethodName.h>
+#import <gRPC/GRXWriteable.h>
+#import <gRPC/GRXWriter.h>
+
+#import "ProtoRPC.h"
+
+@implementation ProtoService {
+  NSString *_host;
+  NSString *_packageName;
+  NSString *_serviceName;
+}
+
+- (instancetype)init {
+  return [self initWithHost:nil packageName:nil serviceName:nil];
+}
+
+// Designated initializer
+- (instancetype)initWithHost:(NSString *)host
+                 packageName:(NSString *)packageName
+                 serviceName:(NSString *)serviceName {
+  if (!host || !serviceName) {
+    [NSException raise:NSInvalidArgumentException
+                format:@"Neither host nor serviceName can be nil."];
+  }
+  if ((self = [super init])) {
+    _host = [host copy];
+    _packageName = [packageName copy];
+    _serviceName = [serviceName copy];
+  }
+  return self;
+}
+
+- (ProtoRPC *)RPCToMethod:(NSString *)method
+           requestsWriter:(id<GRXWriter>)requestsWriter
+            responseClass:(Class)responseClass
+       responsesWriteable:(id<GRXWriteable>)responsesWriteable {
+  GRPCMethodName *methodName = [[GRPCMethodName alloc] initWithPackage:_packageName
+                                                             interface:_serviceName
+                                                                method:method];
+  return [[ProtoRPC alloc] initWithHost:_host
+                                 method:methodName
+                         requestsWriter:requestsWriter
+                          responseClass:responseClass
+                     responsesWriteable:responsesWriteable];
+}
+@end
diff --git a/src/objective-c/RxLibrary/GRXWriteable.h b/src/objective-c/RxLibrary/GRXWriteable.h
index cdcb99f4590a2b130744ebfdd8848a0b383b9680..6f6ea142e01d90fe604ad55d90c3204178554093 100644
--- a/src/objective-c/RxLibrary/GRXWriteable.h
+++ b/src/objective-c/RxLibrary/GRXWriteable.h
@@ -50,10 +50,16 @@
 
 typedef void (^GRXValueHandler)(id value);
 typedef void (^GRXCompletionHandler)(NSError *errorOrNil);
+typedef void (^GRXSingleValueHandler)(id value, NSError *errorOrNil);
+typedef void (^GRXStreamHandler)(BOOL done, id value, NSError *error);
 
 // Utility to create objects that conform to the GRXWriteable protocol, from
 // blocks that handle each of the two methods of the protocol.
 @interface GRXWriteable : NSObject<GRXWriteable>
+
++ (instancetype)writeableWithSingleValueHandler:(GRXSingleValueHandler)handler;
++ (instancetype)writeableWithStreamHandler:(GRXStreamHandler)handler;
+
 - (instancetype)initWithValueHandler:(GRXValueHandler)valueHandler
                    completionHandler:(GRXCompletionHandler)completionHandler
     NS_DESIGNATED_INITIALIZER;
diff --git a/src/objective-c/RxLibrary/GRXWriteable.m b/src/objective-c/RxLibrary/GRXWriteable.m
index 7231f06462a823bbab952ce4c623d5e17f85d084..7000a078d1e014e825d8a973a2d2f8bd5302f351 100644
--- a/src/objective-c/RxLibrary/GRXWriteable.m
+++ b/src/objective-c/RxLibrary/GRXWriteable.m
@@ -38,6 +38,30 @@
   GRXCompletionHandler _completionHandler;
 }
 
++ (instancetype)writeableWithSingleValueHandler:(GRXSingleValueHandler)handler {
+  if (!handler) {
+    return [[self alloc] init];
+  }
+  return [[self alloc] initWithValueHandler:^(id value) {
+    handler(value, nil);
+  } completionHandler:^(NSError *errorOrNil) {
+    if (errorOrNil) {
+      handler(nil, errorOrNil);
+    }
+  }];
+}
+
++ (instancetype)writeableWithStreamHandler:(GRXStreamHandler)handler {
+  if (!handler) {
+    return [[self alloc] init];
+  }
+  return [[self alloc] initWithValueHandler:^(id value) {
+    handler(NO, value, nil);
+  } completionHandler:^(NSError *errorOrNil) {
+    handler(YES, nil, errorOrNil);
+  }];
+}
+
 - (instancetype)init {
   return [self initWithValueHandler:nil completionHandler:nil];
 }
diff --git a/src/objective-c/examples/Sample/Podfile.lock b/src/objective-c/examples/Sample/Podfile.lock
index 1b348cad60a9fb4a5d770cacf0de1b257e7228c5..ccf5aa0f06b2e982c4cbabf01b7636486614084f 100644
--- a/src/objective-c/examples/Sample/Podfile.lock
+++ b/src/objective-c/examples/Sample/Podfile.lock
@@ -1,13 +1,22 @@
 PODS:
   - gRPC (0.0.1):
     - gRPC/C-Core (= 0.0.1)
+    - gRPC/GRPCClient (= 0.0.1)
+    - gRPC/ProtoRPC (= 0.0.1)
     - gRPC/RxLibrary (= 0.0.1)
   - gRPC/C-Core (0.0.1):
     - OpenSSL (~> 1.0.200)
+  - gRPC/GRPCClient (0.0.1):
+    - gRPC/C-Core
+    - gRPC/RxLibrary
+  - gRPC/ProtoRPC (0.0.1):
+    - gRPC/GRPCClient
+    - gRPC/RxLibrary
   - gRPC/RxLibrary (0.0.1)
   - OpenSSL (1.0.201)
   - ProtocolBuffers (1.9.8)
   - RemoteTest (0.0.1):
+    - gRPC (~> 0.0)
     - ProtocolBuffers (~> 1.9)
   - Route_guide (0.0.1):
     - ProtocolBuffers (~> 1.9)
@@ -26,10 +35,10 @@ EXTERNAL SOURCES:
     :path: RouteGuideClient
 
 SPEC CHECKSUMS:
-  gRPC: 70fefb183437c880dbe8f9a477ff0d409e81e390
+  gRPC: f6c1bf5dde59ab543e4bd1d5e2ea56da4a9a0253
   OpenSSL: 4e990d04b14015c49c800c400b86ae44a4818a5c
   ProtocolBuffers: 9a4a171c0c7cc8f21dd29aeca4f9ac775d84a880
-  RemoteTest: d7bbf2e0646a886ea9502375f0f79e8fe551aa71
+  RemoteTest: 021a51c04d5795f286b379ca5ef14d0be5b2fb9b
   Route_guide: a277da8eef182774abb050d7b81109f5878f8652
 
-COCOAPODS: 0.36.4
+COCOAPODS: 0.36.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
deleted file mode 120000
index cacb26174f3a733c66e0f44ff1744bec85562e3e..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Headers/Public/GRPCClient/GRPCCall.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../../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
deleted file mode 120000
index 4dddbd8955e0638cfe7c268f4ddf88fa2a453c97..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Headers/Public/GRPCClient/GRPCMethodName.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../../GRPCClient/GRPCMethodName.h
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/GRXImmediateWriter.h b/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/GRXImmediateWriter.h
deleted file mode 120000
index 915b0e4f90afa9092a847ceaa1f1868ca4614105..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/GRXImmediateWriter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../../RxLibrary/GRXImmediateWriter.h
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/GRXMappingWriter.h b/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/GRXMappingWriter.h
deleted file mode 120000
index 4d1073f4511d5dbdd962ad4bd3cb8970839f26e1..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/GRXMappingWriter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../../RxLibrary/transformations/GRXMappingWriter.h
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/GRXWriteable.h b/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/GRXWriteable.h
deleted file mode 120000
index cb275199fce593118f4e1fcdcbde0d772b2d5a6c..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/GRXWriteable.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../../RxLibrary/GRXWriteable.h
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/GRXWriter+Immediate.h b/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/GRXWriter+Immediate.h
deleted file mode 120000
index fe5e740afbc8ac5796406e324181828a27e55426..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/GRXWriter+Immediate.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../../RxLibrary/GRXWriter+Immediate.h
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/GRXWriter+Transformations.h b/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/GRXWriter+Transformations.h
deleted file mode 120000
index c57168c9efdb3ff26b343ea9275418ae9a87d00d..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/GRXWriter+Transformations.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../../RxLibrary/GRXWriter+Transformations.h
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/GRXWriter.h b/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/GRXWriter.h
deleted file mode 120000
index c4f657e5678b0ff7b73f8c176a56db623693b1c8..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/GRXWriter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../../RxLibrary/GRXWriter.h
\ No newline at end of file
diff --git a/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/NSEnumerator+GRXUtil.h b/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/NSEnumerator+GRXUtil.h
deleted file mode 120000
index 97c6aaeeeccbca6fe69090113ed420b00e452e74..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Headers/Public/RxLibrary/NSEnumerator+GRXUtil.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../../RxLibrary/NSEnumerator+GRXUtil.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
deleted file mode 100644
index a34c50b54eb4cb469c5c848c2edde9d732fc65c9..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Local Podspecs/GRPCClient.podspec	
+++ /dev/null
@@ -1,14 +0,0 @@
-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/Local Podspecs/RxLibrary.podspec b/src/objective-c/examples/Sample/Pods/Local Podspecs/RxLibrary.podspec
deleted file mode 100644
index 605aedaf108179a0007cc4eac8110e3be98b5609..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Local Podspecs/RxLibrary.podspec	
+++ /dev/null
@@ -1,13 +0,0 @@
-Pod::Spec.new do |s|
-  s.name         = 'RxLibrary'
-  s.version      = '0.0.1'
-  s.summary      = 'Reactive Extensions library for iOS'
-  s.author = {
-    'Jorge Canizales' => 'jcanizales@google.com'
-  }
-  s.source_files = '*.{h,m}', 'transformations/*.{h,m}', 'private/*.{h,m}'
-  s.private_header_files = 'private/*.h'
-  s.platform = :ios
-  s.ios.deployment_target = '6.0'
-  s.requires_arc = true
-end
diff --git a/src/objective-c/examples/Sample/Pods/Manifest.lock b/src/objective-c/examples/Sample/Pods/Manifest.lock
deleted file mode 100644
index 1b348cad60a9fb4a5d770cacf0de1b257e7228c5..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Manifest.lock
+++ /dev/null
@@ -1,35 +0,0 @@
-PODS:
-  - gRPC (0.0.1):
-    - gRPC/C-Core (= 0.0.1)
-    - gRPC/RxLibrary (= 0.0.1)
-  - gRPC/C-Core (0.0.1):
-    - OpenSSL (~> 1.0.200)
-  - gRPC/RxLibrary (0.0.1)
-  - OpenSSL (1.0.201)
-  - ProtocolBuffers (1.9.8)
-  - RemoteTest (0.0.1):
-    - ProtocolBuffers (~> 1.9)
-  - Route_guide (0.0.1):
-    - ProtocolBuffers (~> 1.9)
-
-DEPENDENCIES:
-  - gRPC (from `../../../..`)
-  - RemoteTest (from `RemoteTestClient`)
-  - Route_guide (from `RouteGuideClient`)
-
-EXTERNAL SOURCES:
-  gRPC:
-    :path: ../../../..
-  RemoteTest:
-    :path: RemoteTestClient
-  Route_guide:
-    :path: RouteGuideClient
-
-SPEC CHECKSUMS:
-  gRPC: 70fefb183437c880dbe8f9a477ff0d409e81e390
-  OpenSSL: 4e990d04b14015c49c800c400b86ae44a4818a5c
-  ProtocolBuffers: 9a4a171c0c7cc8f21dd29aeca4f9ac775d84a880
-  RemoteTest: d7bbf2e0646a886ea9502375f0f79e8fe551aa71
-  Route_guide: a277da8eef182774abb050d7b81109f5878f8652
-
-COCOAPODS: 0.36.4
diff --git a/src/objective-c/examples/Sample/Pods/Pods.xcodeproj/project.pbxproj b/src/objective-c/examples/Sample/Pods/Pods.xcodeproj/project.pbxproj
deleted file mode 100644
index 54aba3094dc4b2a2f30949a3695f441e81e61134..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Pods.xcodeproj/project.pbxproj
+++ /dev/null
@@ -1,6661 +0,0 @@
-// !$*UTF8*$!
-{
-	archiveVersion = 1;
-	classes = {
-	};
-	objectVersion = 46;
-	objects = {
-
-/* Begin PBXBuildFile section */
-		000F081EDA8A6B9DAC27F12C /* alarm_heap.c in Sources */ = {isa = PBXBuildFile; fileRef = ACD472E4027B901D3D4FD970 /* alarm_heap.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		009D61E96F712A2A7C5D7D72 /* tcp_client_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = B916697BDD15D047B9CE258E /* tcp_client_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		00A8707346A29B6BF78EF6A6 /* fd_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = AF13AD52322D3DDC33780FF6 /* fd_posix.h */; };
-		00B01D23E945E97476184E5A /* CodedInputStream.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D8B2ADAC76C56837BCD6E3F /* CodedInputStream.h */; };
-		00D28F1702ADF048A74E52C3 /* env_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 37DBA0AFDAFF79CE36275868 /* env_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		00FB26BA4B87CEA36AFCB197 /* GRXNSFastEnumerator.m in Sources */ = {isa = PBXBuildFile; fileRef = 4B45C3AD7EF8936646FCF8C7 /* GRXNSFastEnumerator.m */; };
-		010EB17FF74DAA86A30DDC6C /* pem.h in Headers */ = {isa = PBXBuildFile; fileRef = 2C9FFF9B3A1727D39DECD7F3 /* pem.h */; };
-		0123D93BC3492C32D32620D5 /* pem2.h in Headers */ = {isa = PBXBuildFile; fileRef = 97AC1F49BA95AC83993BCB91 /* pem2.h */; };
-		013CE6DB048C014FE45E9B8A /* bin_encoder.c in Sources */ = {isa = PBXBuildFile; fileRef = B6ED74BFADC33253E682ABC4 /* bin_encoder.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		01453026532B50E4BA6A30A2 /* surface_trace.c in Sources */ = {isa = PBXBuildFile; fileRef = 362056B78B02662F088A082D /* surface_trace.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		01B4D9B3531C077C257B5BF2 /* status_conversion.c in Sources */ = {isa = PBXBuildFile; fileRef = CFA8E7BD1676F3248B151924 /* status_conversion.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		02256658DF768C9AB1450F02 /* endpoint_pair_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 46BA07C95C706BFD2C47CF30 /* endpoint_pair_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		0249D63244951B289231AC6D /* RingBuffer.m in Sources */ = {isa = PBXBuildFile; fileRef = E307610E1EEEFBA4D4925832 /* RingBuffer.m */; };
-		0280D7887F8FAEB62596CD7F /* blowfish.h in Headers */ = {isa = PBXBuildFile; fileRef = D17935EFCDE731E09000DF66 /* blowfish.h */; };
-		0291D5E4080E1EE30C0DC26D /* server_secure_chttp2.c in Sources */ = {isa = PBXBuildFile; fileRef = BF25E4D94898506695C15034 /* server_secure_chttp2.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		02F3E5AF0000AA6F411403F7 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E920231885948DD62874D4 /* Foundation.framework */; };
-		030A4A3B82BDB18CF0C2C8D4 /* GRPCCompletionQueue.m in Sources */ = {isa = PBXBuildFile; fileRef = 3843F294A0DAFF3AE97F28E7 /* GRPCCompletionQueue.m */; };
-		030E28465C47E51430E006CE /* AbstractMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = F271930D3583DA89399BDFBB /* AbstractMessage.h */; };
-		030F56179CAA30BD463721C1 /* GRXWriter+Transformations.h in Headers */ = {isa = PBXBuildFile; fileRef = 21839ADB0BEF093A31BF49B1 /* GRXWriter+Transformations.h */; };
-		03353AA2354EC57128DFEB98 /* slice_buffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 1991DD1C6F949CF8FADB4C7E /* slice_buffer.h */; };
-		0340C3F1E4FBFDF1DBD811A2 /* secure_transport_setup.c in Sources */ = {isa = PBXBuildFile; fileRef = E74322EC3E06EC9CDFE14671 /* secure_transport_setup.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		0341AC33A60734D5C11772AC /* sync_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 0C105B76701EFB0EFABDBBF2 /* sync_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		038DBC66A323E9B11C627A78 /* sync_generic.h in Headers */ = {isa = PBXBuildFile; fileRef = 71FD80A83315D1F3BC2FF0C2 /* sync_generic.h */; };
-		03B3C6EF0624547EADDCB227 /* http2_errors.h in Headers */ = {isa = PBXBuildFile; fileRef = 7841A5D53D143AB23C94D8F7 /* http2_errors.h */; };
-		03D93D19FFD54C79F968386D /* tcp_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 0DBA6C9779F09A779661A077 /* tcp_posix.h */; };
-		03FA0C6D176D14D03399C9ED /* cmdline.c in Sources */ = {isa = PBXBuildFile; fileRef = 136CEE7CF5D6B8674CA659B7 /* cmdline.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		0403A23F3B513D898015F4CB /* http_filter.c in Sources */ = {isa = PBXBuildFile; fileRef = D40ADADFBB6DC95EC6855D77 /* http_filter.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		0418BF437466542CFFB050D4 /* alpn.c in Sources */ = {isa = PBXBuildFile; fileRef = CC24275C1B81C4F0B56DF5BE /* alpn.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		046C6A3503A7B2A0C8794A63 /* parser.c in Sources */ = {isa = PBXBuildFile; fileRef = 5FB603E306CD89ADB1CE6511 /* parser.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		047502A007CC29ADB5B63DD6 /* x509_vfy.h in Headers */ = {isa = PBXBuildFile; fileRef = 1C038257C6440675A3A55C19 /* x509_vfy.h */; };
-		04898971704A12115B6EE977 /* GRPCMethodName+HTTP2Encoding.m in Sources */ = {isa = PBXBuildFile; fileRef = D9A61224E115AD9725AA7A5C /* GRPCMethodName+HTTP2Encoding.m */; };
-		0559A8E83B22538C3C750CDB /* pqueue.h in Headers */ = {isa = PBXBuildFile; fileRef = 61246E9F7BB79C02CBDC3F0A /* pqueue.h */; };
-		0572EEE6FC558063B5E2F763 /* event_string.h in Headers */ = {isa = PBXBuildFile; fileRef = A9F7B929E2D1994F8045C8EB /* event_string.h */; };
-		05774EE6D56D312D02AD2E07 /* frame_data.c in Sources */ = {isa = PBXBuildFile; fileRef = F93ADDC6556CB4F0A0CCE308 /* frame_data.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		05861C315383FFF101DD1AC7 /* GeneratedMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8A255B56065DAB7E8DB7345A /* GeneratedMessage.m */; };
-		05A6844106FA7AFB6C0AD907 /* pollset_kick_windows.h in Headers */ = {isa = PBXBuildFile; fileRef = 731D0E4DC3F73AADCC27E534 /* pollset_kick_windows.h */; };
-		05F932AE0DC3097A4F4CA3A6 /* thd_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 9A58ACD0EC03D5883ED79C0C /* thd_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		0625B67521A136D4C473334E /* GRXImmediateWriter.m in Sources */ = {isa = PBXBuildFile; fileRef = BF086B2B602320004C6364E6 /* GRXImmediateWriter.m */; };
-		06734790D66E80FDC60259A7 /* socket_windows.h in Headers */ = {isa = PBXBuildFile; fileRef = 2A7B4BAB4502F95548251FC6 /* socket_windows.h */; };
-		0681BA8F537F519524F0A0F6 /* file_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 545C3120FFA2450C7CE9E6DA /* file_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		068F94D61A45576642EFEC8D /* sockaddr.h in Headers */ = {isa = PBXBuildFile; fileRef = 7888E3FEC368C63162A16235 /* sockaddr.h */; };
-		06D2C9A5E7138C028B658FB6 /* json_common.h in Headers */ = {isa = PBXBuildFile; fileRef = 042FE743DCBA5D7202467480 /* json_common.h */; };
-		06DAE007BFEADB594F60EF8C /* timeout_encoding.h in Headers */ = {isa = PBXBuildFile; fileRef = 937B5E356D599266F6BF35E5 /* timeout_encoding.h */; };
-		072D6F8751D5B31E51C8CCAB /* slice_buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = D27CB2495D6BC2AAA54AD811 /* slice_buffer.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		074B9BACAA7C38E6C40A7B87 /* timers_preciseclock.h in Headers */ = {isa = PBXBuildFile; fileRef = A29A7E4785EC3464B81DE033 /* timers_preciseclock.h */; };
-		0759456E225F0FE5E22DE60D /* format_request.c in Sources */ = {isa = PBXBuildFile; fileRef = 35DAF7732DF40F6191B582F0 /* format_request.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		079C1EE7DC20CB1DE0B4113E /* GRPCSecureChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = 95F2438496323A2635262311 /* GRPCSecureChannel.h */; };
-		07A1A59BD89B084AA99BDC5E /* ConcreteExtensionField.m in Sources */ = {isa = PBXBuildFile; fileRef = B504F82835C2F0A602CA44BC /* ConcreteExtensionField.m */; };
-		07D0D32963600C622176C802 /* GRXMappingWriter.h in Headers */ = {isa = PBXBuildFile; fileRef = 30DC0AEBF86D6086E7728540 /* GRXMappingWriter.h */; };
-		0810C05D733D3A6834E8D9D4 /* alpn.c in Sources */ = {isa = PBXBuildFile; fileRef = CC24275C1B81C4F0B56DF5BE /* alpn.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		084682783CD9E7A60F30A978 /* log_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 3DB3834E86AC5CD0D96885D2 /* log_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		0851161EA77A8F42AFFB8405 /* tcp_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = BD2C5EA58859F38D05EE84DC /* tcp_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		08A249157A9A79F96AB7D328 /* ExtendableMessageBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 97138B0BC9857D489F0D7E01 /* ExtendableMessageBuilder.m */; };
-		08E66FA52DC0E3E558859380 /* alpn.c in Sources */ = {isa = PBXBuildFile; fileRef = CC24275C1B81C4F0B56DF5BE /* alpn.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		092633CD8E96253BA8893BAA /* iomgr.h in Headers */ = {isa = PBXBuildFile; fileRef = F0CAA4D057B933B55CDDA440 /* iomgr.h */; };
-		096B26867548B02F1C12313D /* GeneratedMessageBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 882FB0E68742560157A92A3A /* GeneratedMessageBuilder.h */; };
-		098CA5B2E73F70B19DE9D9F9 /* wakeup_fd_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = DEB8C5F9370F106E90A84DEE /* wakeup_fd_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		098FBD8E3F0A2759EF08516B /* hmac.h in Headers */ = {isa = PBXBuildFile; fileRef = 62AABF4FAFB404658CB645D4 /* hmac.h */; };
-		09EAB1466F9CAC9E45F8CFF9 /* frame_data.h in Headers */ = {isa = PBXBuildFile; fileRef = 4EBBF04A177E2CF6B10FE856 /* frame_data.h */; };
-		09EB9D7E1B87851D881F4EF2 /* ExtendableMessageBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 97138B0BC9857D489F0D7E01 /* ExtendableMessageBuilder.m */; };
-		0A08D34534875F37EC606F95 /* tcp_client_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = B916697BDD15D047B9CE258E /* tcp_client_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		0A2FC84E239C689751B3784A /* hpack_parser.h in Headers */ = {isa = PBXBuildFile; fileRef = EA3AA73E2696645C327CC231 /* hpack_parser.h */; };
-		0A383C44EA5F4ACA3C179DD5 /* ec.h in Headers */ = {isa = PBXBuildFile; fileRef = 55946E8A56007AB0F3AF8283 /* ec.h */; };
-		0A4FC5E8FE8796A6695BB2D2 /* socket_utils_linux.c in Sources */ = {isa = PBXBuildFile; fileRef = BFF865292FE2CD0BAC28C4A2 /* socket_utils_linux.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		0A518B91E4170BF689146AFE /* string_win32.h in Headers */ = {isa = PBXBuildFile; fileRef = 632D3C9EB25C3C7659F9F39A /* string_win32.h */; };
-		0ABF0E51A940D3FE0B4201FF /* GRPCUnsecuredChannel.m in Sources */ = {isa = PBXBuildFile; fileRef = 84699F407C0F5C552CFE19E9 /* GRPCUnsecuredChannel.m */; };
-		0ADC74465F4009F160F925C0 /* GRPCChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = BF18594A111FF813A7E2C0E6 /* GRPCChannel.h */; };
-		0B79FF991C7EEE1B29D3B339 /* stream_op.h in Headers */ = {isa = PBXBuildFile; fileRef = D62A2B89BC57A50909A82C8D /* stream_op.h */; };
-		0BBA6B28370C3EE317E3872B /* Test.pb.m in Sources */ = {isa = PBXBuildFile; fileRef = D6649667C01C50F65DEAA701 /* Test.pb.m */; };
-		0C143882B23F901019D178AF /* sockaddr_win32.h in Headers */ = {isa = PBXBuildFile; fileRef = A7B35482A8B3E763F2E49204 /* sockaddr_win32.h */; };
-		0C2A46C5BA21AECC8F81CAE6 /* thd.h in Headers */ = {isa = PBXBuildFile; fileRef = 68E76147B6FA250C2CD4F10F /* thd.h */; };
-		0C2B32291752DB53CC24C831 /* alloc.h in Headers */ = {isa = PBXBuildFile; fileRef = 1FFF40090BBE373979CD818E /* alloc.h */; };
-		0C41D59CF2DC0C9DBB1589D8 /* Message.h in Headers */ = {isa = PBXBuildFile; fileRef = 72D1F32F1133F699F7402689 /* Message.h */; };
-		0C7F3D64F51B2E92F2C294A6 /* port_platform.h in Headers */ = {isa = PBXBuildFile; fileRef = 9CDD59E7CC95C8FC7D97E181 /* port_platform.h */; };
-		0C8553DEC58C96F31B1A603A /* secure_transport_setup.h in Headers */ = {isa = PBXBuildFile; fileRef = C19838C914909B0B92D93A99 /* secure_transport_setup.h */; };
-		0C94CFB2D7CBF6A8469CB3D7 /* GRXImmediateWriter.m in Sources */ = {isa = PBXBuildFile; fileRef = BF086B2B602320004C6364E6 /* GRXImmediateWriter.m */; };
-		0CC8A5D54E5F55996711737B /* trace.c in Sources */ = {isa = PBXBuildFile; fileRef = B2BBB2419D8C53FE86B50785 /* trace.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		0D3F8CEFBF93762415EAEBEC /* frame_window_update.c in Sources */ = {isa = PBXBuildFile; fileRef = A44141A91AFD802B21F301D1 /* frame_window_update.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		0D8940F610BFBFAA7870AA8C /* opensslv.h in Headers */ = {isa = PBXBuildFile; fileRef = CE505393BA1DED4309A794BF /* opensslv.h */; };
-		0DB600DEA6094CDB05902190 /* transport.h in Headers */ = {isa = PBXBuildFile; fileRef = 4E54CB0C0280C270C850A4DE /* transport.h */; };
-		0E6886261B42CBDF5F01F411 /* transport_security_interface.h in Headers */ = {isa = PBXBuildFile; fileRef = AA5D910551A70909CF207903 /* transport_security_interface.h */; };
-		0E824499D11701BC1F14A180 /* http_server_filter.c in Sources */ = {isa = PBXBuildFile; fileRef = 702E018073440195E124A8C4 /* http_server_filter.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		0EB17874C0B6F9F4CF33EEE5 /* GRPCMethodName.h in Headers */ = {isa = PBXBuildFile; fileRef = 5EB7CC0B9B5B8ED763DAD468 /* GRPCMethodName.h */; };
-		0EF8E48453D0912CDF4445F5 /* sockaddr_utils.h in Headers */ = {isa = PBXBuildFile; fileRef = 857F065925832466000E24C4 /* sockaddr_utils.h */; };
-		0F2C78732070918A03642F6A /* opensslconf.h in Headers */ = {isa = PBXBuildFile; fileRef = 32C499FB0870BEF8AF1565FC /* opensslconf.h */; };
-		0F759F1A211EF16EBEBD024C /* sync.h in Headers */ = {isa = PBXBuildFile; fileRef = 0A590DA3DCF37E0C263E2794 /* sync.h */; };
-		0FC63DE73927805D4195040C /* GRPCChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = BF18594A111FF813A7E2C0E6 /* GRPCChannel.h */; };
-		0FE3044E06C7C0A6B5B8FB9E /* GRPCDelegateWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = 2118ADFB0ACC203A0C44DC04 /* GRPCDelegateWrapper.m */; };
-		0FF78A07038D4724DB854B13 /* ocsp.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F44DED8449303D794BAB617 /* ocsp.h */; };
-		0FFBED20C4038446AFB37E6E /* time_averaged_stats.h in Headers */ = {isa = PBXBuildFile; fileRef = F3AA748BBA2B63D9C996FC2B /* time_averaged_stats.h */; };
-		1003DCB9BDB515C6ABDAB365 /* pkcs7.h in Headers */ = {isa = PBXBuildFile; fileRef = 0A146135B811250D1914B47F /* pkcs7.h */; };
-		10080FAD9B5E2CE73911F102 /* window_stats.c in Sources */ = {isa = PBXBuildFile; fileRef = A483D2D2BC2227E981BFAD95 /* window_stats.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		101A657C19D7CC12066E295F /* tcp_client.h in Headers */ = {isa = PBXBuildFile; fileRef = C72A49BF07D01F8088DFCC4E /* tcp_client.h */; };
-		106F580F5D9052CDD2800304 /* comp.h in Headers */ = {isa = PBXBuildFile; fileRef = FE566BB5269F67EEF6FE6960 /* comp.h */; };
-		10A2DC0809CBDE111CE10769 /* parser.h in Headers */ = {isa = PBXBuildFile; fileRef = 686C0D5512A270C008BCF001 /* parser.h */; };
-		10F4817FF40180F6D431FF77 /* GRXImmediateWriter.m in Sources */ = {isa = PBXBuildFile; fileRef = BF086B2B602320004C6364E6 /* GRXImmediateWriter.m */; };
-		11279CFD46DD5448A5FD0E86 /* channel_args.h in Headers */ = {isa = PBXBuildFile; fileRef = 7256585C37337ED83551BB66 /* channel_args.h */; };
-		12083274E3486D689F94A2C1 /* GRXNSFastEnumerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 482DA575CF9599896DDAD7B8 /* GRXNSFastEnumerator.h */; };
-		1208CEE4DE05FCDDF24C4531 /* timeout_encoding.c in Sources */ = {isa = PBXBuildFile; fileRef = 5621298E280D2F357ED9DBDF /* timeout_encoding.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		124B65D3FA76966DC9398C5B /* Utilities.m in Sources */ = {isa = PBXBuildFile; fileRef = 385180B3943DC40F19F8A085 /* Utilities.m */; };
-		12F848ACA5D78FEC18DD4FD7 /* channel_stack.h in Headers */ = {isa = PBXBuildFile; fileRef = 551ADCF1B6E05631C0798A5D /* channel_stack.h */; };
-		130ECAE2C036E7FB6DC002C3 /* byte_buffer_queue.c in Sources */ = {isa = PBXBuildFile; fileRef = BEE79C3939F4822E22742D3E /* byte_buffer_queue.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		137896609CAC252A1863E76A /* GRXMappingWriter.h in Headers */ = {isa = PBXBuildFile; fileRef = 30DC0AEBF86D6086E7728540 /* GRXMappingWriter.h */; };
-		13A879263D6E22BFCC0A1AB1 /* server_create.c in Sources */ = {isa = PBXBuildFile; fileRef = F6022893DD454271F713FD2C /* server_create.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		13CF8EBCE8D1124774156455 /* bn.h in Headers */ = {isa = PBXBuildFile; fileRef = DDB7824792A0D7E587422DEC /* bn.h */; };
-		13E429FE16FB698C592A23D4 /* pem.h in Headers */ = {isa = PBXBuildFile; fileRef = 2C9FFF9B3A1727D39DECD7F3 /* pem.h */; };
-		140A4605FD251CD2C6397FCD /* alloc.h in Headers */ = {isa = PBXBuildFile; fileRef = 1FFF40090BBE373979CD818E /* alloc.h */; };
-		143911D68A325943077A5F32 /* resolve_address_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 25CC1535787632E504407E0E /* resolve_address_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		145C502A7D224B26E8ACC5F3 /* frame_rst_stream.c in Sources */ = {isa = PBXBuildFile; fileRef = 7F54961D42B49E50CC8D1338 /* frame_rst_stream.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		14646957F38B6AF98B762312 /* histogram.c in Sources */ = {isa = PBXBuildFile; fileRef = 2E85D4E1E6887747C8C0EA7A /* histogram.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		14B0EE24FCF72513655F7A4A /* fake_transport_security.c in Sources */ = {isa = PBXBuildFile; fileRef = B7DE7323A46EAC8DE3C841CC /* fake_transport_security.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		14D704A1480E6608209F59B5 /* completion_queue.c in Sources */ = {isa = PBXBuildFile; fileRef = 8D2CD6C833DA66C3FE1BA7EA /* completion_queue.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		150C50043F5EFE95C06097E8 /* credentials.h in Headers */ = {isa = PBXBuildFile; fileRef = 7F91F8C861FF28FC65974048 /* credentials.h */; };
-		156B1200E1362D288D62DB09 /* frame_rst_stream.h in Headers */ = {isa = PBXBuildFile; fileRef = EB5E7B7C6915536C163CD40B /* frame_rst_stream.h */; };
-		158F2361E9229BAEF7222B83 /* conf.h in Headers */ = {isa = PBXBuildFile; fileRef = 07C5B3701B8AA40D98728D52 /* conf.h */; };
-		15DBD9F76ED9EBAAA8DF8122 /* socket_utils_common_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = D6C8BC2D5261C752FBE0D073 /* socket_utils_common_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		160240E0E76EF41AE784277B /* alarm_heap.h in Headers */ = {isa = PBXBuildFile; fileRef = 1D8BEF54D1799D651A2C427A /* alarm_heap.h */; };
-		16534CB4DC649C680FF3E5F6 /* format_request.c in Sources */ = {isa = PBXBuildFile; fileRef = 35DAF7732DF40F6191B582F0 /* format_request.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		165AC03BF20B7BE4A4C7F6D8 /* GRXWriteable.m in Sources */ = {isa = PBXBuildFile; fileRef = FE14502B83EB31B456B00307 /* GRXWriteable.m */; };
-		166DD91F115A23C1DA1ECA9B /* ProtocolBuffers.h in Headers */ = {isa = PBXBuildFile; fileRef = 38958B8C3D9B8070ED88BD92 /* ProtocolBuffers.h */; };
-		16E965C5ADDE156B961342CD /* frame_goaway.h in Headers */ = {isa = PBXBuildFile; fileRef = 00B587323BFCD1957DEC693D /* frame_goaway.h */; };
-		1701D3AE12A130A86B639A6B /* hpack_table.c in Sources */ = {isa = PBXBuildFile; fileRef = 2ADEF3193716592CD4C3D9DF /* hpack_table.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		173D3796F0597CF59758B7CC /* asn1_mac.h in Headers */ = {isa = PBXBuildFile; fileRef = F5BEEBA60AE917954B96425A /* asn1_mac.h */; };
-		176339CE6F581D7D2FB184FB /* log_win32.h in Headers */ = {isa = PBXBuildFile; fileRef = 4FB887B7DFAA588A6A7A825B /* log_win32.h */; };
-		1791671EBE9654130ECA26EC /* err.h in Headers */ = {isa = PBXBuildFile; fileRef = FFE50BB7E184EB895E72ED5B /* err.h */; };
-		17EC3A066E22AF6FE5080451 /* endpoint_pair_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 46BA07C95C706BFD2C47CF30 /* endpoint_pair_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		182178214BA6B4A9A510AC3A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E920231885948DD62874D4 /* Foundation.framework */; };
-		185AD9DB2F41E9B111BD0D6C /* e_os2.h in Headers */ = {isa = PBXBuildFile; fileRef = A98FA49795A8DD446B56C330 /* e_os2.h */; };
-		18DBCDB7731DBBB4FA59FF26 /* NSDictionary+GRPC.m in Sources */ = {isa = PBXBuildFile; fileRef = B738B74ED9964C24A51DD3A8 /* NSDictionary+GRPC.m */; };
-		18E72D83040C7B90B6B84973 /* cancellable.c in Sources */ = {isa = PBXBuildFile; fileRef = 1693B87FC0921746424B8E7A /* cancellable.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		195CDA772DC8311DDE60762A /* string.c in Sources */ = {isa = PBXBuildFile; fileRef = 1D2E879D2283DE7CE03DFDD8 /* string.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		1982E498CB3698139C9568DF /* fake_transport_security.h in Headers */ = {isa = PBXBuildFile; fileRef = FF56DC4FC3FC0F8B7F75A1A8 /* fake_transport_security.h */; };
-		19BCBB00E219C6FAB35F31D0 /* secure_channel_create.c in Sources */ = {isa = PBXBuildFile; fileRef = F028342496E673415FF3D8AB /* secure_channel_create.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		1A394A8324056A13E992E559 /* GRXNSScalarEnumerator.m in Sources */ = {isa = PBXBuildFile; fileRef = CF0DFFDFFA35E0AE2EA0EF2F /* GRXNSScalarEnumerator.m */; };
-		1A817BC3C5C6FAEB81FC300A /* tls.h in Headers */ = {isa = PBXBuildFile; fileRef = 02B8069D19729724DF1290A0 /* tls.h */; };
-		1AD04D79E12926C6B16E79A1 /* cmdline.h in Headers */ = {isa = PBXBuildFile; fileRef = 62C3614F855CAD59CEBDB1C4 /* cmdline.h */; };
-		1B941BFF77CE565C33E3B4F1 /* secure_endpoint.h in Headers */ = {isa = PBXBuildFile; fileRef = E83BCAEE168FF4FC16653717 /* secure_endpoint.h */; };
-		1BAFB9C2AA230C0612C3BB74 /* google_default_credentials.c in Sources */ = {isa = PBXBuildFile; fileRef = C539CB090E9EAAED0464BACD /* google_default_credentials.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		1BC5B46771B11CFCDC357E7C /* http_client_filter.c in Sources */ = {isa = PBXBuildFile; fileRef = 3011D324672ADCCCB0DF1E04 /* http_client_filter.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		1BC9A4383D98D3FE21B2A0CB /* WireFormat.h in Headers */ = {isa = PBXBuildFile; fileRef = 49779DB1C5A2F5CFEBAAFEF9 /* WireFormat.h */; };
-		1BDC0C556514D0A2A7DAD43C /* frame_window_update.h in Headers */ = {isa = PBXBuildFile; fileRef = FA1E53C03134BD79E85D69BB /* frame_window_update.h */; };
-		1C0C47E075538BCC3EFE891D /* metadata_array.c in Sources */ = {isa = PBXBuildFile; fileRef = A47DCD9141F1ECF8A77694BF /* metadata_array.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		1C1F838704E4C473FE02AD56 /* krb5_asn.h in Headers */ = {isa = PBXBuildFile; fileRef = A372F1563365DC01263466B5 /* krb5_asn.h */; };
-		1CA0E62E554FD5D41AADED4A /* frame_window_update.c in Sources */ = {isa = PBXBuildFile; fileRef = A44141A91AFD802B21F301D1 /* frame_window_update.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		1D0621C37385231F2A7EA523 /* byte_buffer_queue.h in Headers */ = {isa = PBXBuildFile; fileRef = 1494BF1C6BBB3E7058D0B384 /* byte_buffer_queue.h */; };
-		1D5610D6F53A48606A2DE0C5 /* ripemd.h in Headers */ = {isa = PBXBuildFile; fileRef = 390B0B49E8EFA5AAB384B2CC /* ripemd.h */; };
-		1D582A253FAABDCBA4C91B7D /* byte_buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 88986E5DC1E75A40B26FA0F3 /* byte_buffer.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		1DBD2BA98BA10AD49A1C9443 /* auth.h in Headers */ = {isa = PBXBuildFile; fileRef = 709BF0BFC75540EC9E5DEA59 /* auth.h */; };
-		1DF0844BE0484CF9EE1FD398 /* completion_queue.c in Sources */ = {isa = PBXBuildFile; fileRef = 8D2CD6C833DA66C3FE1BA7EA /* completion_queue.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		1E6AABD0371733C70B270A18 /* log.h in Headers */ = {isa = PBXBuildFile; fileRef = AC20E7974FC6D45F39E2E3F6 /* log.h */; };
-		1EBC5A8AEB11566CC82FF716 /* http_filter.h in Headers */ = {isa = PBXBuildFile; fileRef = 82E0D0FF1330995CD65F17F9 /* http_filter.h */; };
-		1EC8A76E951A0E03BF69035C /* httpcli.c in Sources */ = {isa = PBXBuildFile; fileRef = 9EB5E9E525851BF88C1930C0 /* httpcli.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		1EC961C8EB7D36222BA33EC0 /* md5.h in Headers */ = {isa = PBXBuildFile; fileRef = 4A34766847C2DFF77298EA4D /* md5.h */; };
-		1F16AF70AEC6DF8028F955C6 /* format_request.h in Headers */ = {isa = PBXBuildFile; fileRef = 3DA4398D3864DDE90508BEDB /* format_request.h */; };
-		1F55676B9734EBC91039F43D /* tls_gcc.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD84E9AE38D8DA667136E64 /* tls_gcc.h */; };
-		1F6F90086BD65A0835E6F094 /* http2_errors.h in Headers */ = {isa = PBXBuildFile; fileRef = 7841A5D53D143AB23C94D8F7 /* http2_errors.h */; };
-		204339AB665412F85A4787AF /* GRPCCompletionQueue.m in Sources */ = {isa = PBXBuildFile; fileRef = 3843F294A0DAFF3AE97F28E7 /* GRPCCompletionQueue.m */; };
-		2069B59F205B4ABB80DBC812 /* log.c in Sources */ = {isa = PBXBuildFile; fileRef = 09FD3D7AD914C9353EB65529 /* log.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		20A11ECC8F5E72B30EA88C54 /* credentials_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 3C89A7A6EA403EB3DC6B287B /* credentials_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		20B807B199F7D5823BDA0B84 /* wakeup_fd_nospecial.c in Sources */ = {isa = PBXBuildFile; fileRef = 2347B82D8AD9CFDF29E04525 /* wakeup_fd_nospecial.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2102BF47BE264219746C94D7 /* server_create.c in Sources */ = {isa = PBXBuildFile; fileRef = F6022893DD454271F713FD2C /* server_create.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		212B54B2E80EDE70B9EC7F8D /* fd_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = E1F91FEB24408BC30186C5CC /* fd_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		21615F75A9CC9E8E42011C65 /* x509v3.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E60A65312367FE96A674F09 /* x509v3.h */; };
-		216D221B184C6ACF277688FB /* frame_settings.c in Sources */ = {isa = PBXBuildFile; fileRef = 2199EA5661E8753C38D79EC9 /* frame_settings.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		21A55A474EC930B61099D638 /* time_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 8B03F1B317FE59E0CE6747ED /* time_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		226D509BA1A5665597130739 /* connected_channel.h in Headers */ = {isa = PBXBuildFile; fileRef = 9342FC71179F4D1461C18A98 /* connected_channel.h */; };
-		226ED2F15576BD018FC93294 /* http_server_filter.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A5A429ED5EC2E7EB0146FFB /* http_server_filter.h */; };
-		228447E614E338EE06612836 /* ObjectivecDescriptor.pb.m in Sources */ = {isa = PBXBuildFile; fileRef = B8502DE6FC5E49568F49F41B /* ObjectivecDescriptor.pb.m */; };
-		2288136BFE49BB08AF87D356 /* ec.h in Headers */ = {isa = PBXBuildFile; fileRef = 55946E8A56007AB0F3AF8283 /* ec.h */; };
-		228E698CA81014B26E9DD586 /* NSEnumerator+GRXUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 3BF40F941CC1E13D1EC0106F /* NSEnumerator+GRXUtil.m */; };
-		2292F168DAF69E300ED51A63 /* frame_data.h in Headers */ = {isa = PBXBuildFile; fileRef = 4EBBF04A177E2CF6B10FE856 /* frame_data.h */; };
-		22DE323093D6109D60171157 /* httpcli_security_connector.c in Sources */ = {isa = PBXBuildFile; fileRef = 4258ECAEE95E0068DBBBD447 /* httpcli_security_connector.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		232210BEB45A519F3DDEADA6 /* resolve_address_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 5C2C6DE8CDC5FDB5A63AAA7D /* resolve_address_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		23780E1CE756A02375D9E6DE /* json_string.c in Sources */ = {isa = PBXBuildFile; fileRef = 705F149853706AB963D20A0A /* json_string.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		23A8D39356B7B64D751CE2B0 /* security_connector.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8D3410DEEEE721CB1E2340 /* security_connector.h */; };
-		23DB3927F284476D8F712079 /* channel_stack.h in Headers */ = {isa = PBXBuildFile; fileRef = 551ADCF1B6E05631C0798A5D /* channel_stack.h */; };
-		23E669647B88CA73A60CC279 /* NSEnumerator+GRXUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 3BF40F941CC1E13D1EC0106F /* NSEnumerator+GRXUtil.m */; };
-		241EC8E9265E0B6F0290D3FD /* NSData+GRPC.m in Sources */ = {isa = PBXBuildFile; fileRef = 3B009A38978FE24BCB519CB4 /* NSData+GRPC.m */; };
-		242F0083FA23A4A065448C2A /* frame_settings.c in Sources */ = {isa = PBXBuildFile; fileRef = 2199EA5661E8753C38D79EC9 /* frame_settings.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		24575F5A62000C670BC17B63 /* cpu_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 818DC3D8E054FC9EF1C0F1BB /* cpu_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		247E9B78AEA7396967718B73 /* channel.c in Sources */ = {isa = PBXBuildFile; fileRef = B542D487162588CF33BE01BB /* channel.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2481B62FB4B1900ABEF273ED /* GRXNSBlockEnumerator.h in Headers */ = {isa = PBXBuildFile; fileRef = AF17EDE3DF892AA526697F9C /* GRXNSBlockEnumerator.h */; };
-		24A81F5B5F88A30770E88DFF /* symhacks.h in Headers */ = {isa = PBXBuildFile; fileRef = 11FC5A78D96C538F410ACBF8 /* symhacks.h */; };
-		24C202602A3A83EDDFD3004E /* tcp_server_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 651FAE8C05B04EB09ADA44B1 /* tcp_server_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		24F6EDFBC4E236068E8BB5E0 /* GRXNSBlockEnumerator.m in Sources */ = {isa = PBXBuildFile; fileRef = 8BD3A6A6436D217FF1D0401C /* GRXNSBlockEnumerator.m */; };
-		24F89F8710581C0919904757 /* ui_compat.h in Headers */ = {isa = PBXBuildFile; fileRef = 707B43D7094693DC964C9A69 /* ui_compat.h */; };
-		25315E4CF2BA3B5CB99E9755 /* GRXMappingWriter.m in Sources */ = {isa = PBXBuildFile; fileRef = BA0FBD1240C3330ADAFD46ED /* GRXMappingWriter.m */; };
-		25347970E8770DEF98017D3A /* census_log.h in Headers */ = {isa = PBXBuildFile; fileRef = DA022393E5E17A516743E561 /* census_log.h */; };
-		2573C17A27143691491C56E6 /* pkcs12.h in Headers */ = {isa = PBXBuildFile; fileRef = 077488225B8A45F3B5E307D5 /* pkcs12.h */; };
-		257C21DBD76E938720D9A4B6 /* wakeup_fd_pipe.c in Sources */ = {isa = PBXBuildFile; fileRef = BD1B20F8D2B7ADFD921FB0D4 /* wakeup_fd_pipe.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		258D5C7E1F48E9490A3DEE93 /* NSError+GRPC.h in Headers */ = {isa = PBXBuildFile; fileRef = E3EE726B6CC258D7AD02F50A /* NSError+GRPC.h */; };
-		25C58F10BD3C75BF9E165883 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E920231885948DD62874D4 /* Foundation.framework */; };
-		265B319D6B6A8883D6025D96 /* Route_guide.pb.h in Headers */ = {isa = PBXBuildFile; fileRef = 58E0257BE81E1918C5267E17 /* Route_guide.pb.h */; };
-		266E813ABC315DF95745FFC9 /* noop_filter.c in Sources */ = {isa = PBXBuildFile; fileRef = 8FE7F081D7EBCCBF8595A007 /* noop_filter.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		267A2058AD87B5F36325611B /* huffsyms.h in Headers */ = {isa = PBXBuildFile; fileRef = E79E1B27DCA9FCCD3182E568 /* huffsyms.h */; };
-		2698FA43C48F0B033FA48BC1 /* Descriptor.pb.m in Sources */ = {isa = PBXBuildFile; fileRef = FE48EF7E57B8F2167E1B0135 /* Descriptor.pb.m */; };
-		26A952BF74CE975BBC1033B2 /* WireFormat.m in Sources */ = {isa = PBXBuildFile; fileRef = 53F5707E31B5AB47CC439A2C /* WireFormat.m */; };
-		26BBD9E785CB96364A624B4D /* grpc_security.h in Headers */ = {isa = PBXBuildFile; fileRef = 37D5B8B98758DFDC65FAE7E5 /* grpc_security.h */; };
-		26CD437A4CF65AEACB1FB50E /* ossl_typ.h in Headers */ = {isa = PBXBuildFile; fileRef = 786C225EB84ADD9B73B8660F /* ossl_typ.h */; };
-		26CD4E8E18AA6DE0E65706C6 /* census_tracing.c in Sources */ = {isa = PBXBuildFile; fileRef = 069AF9321C3BC16C407A4BDA /* census_tracing.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		26E7C0F777D8A64F83D3EB44 /* client.h in Headers */ = {isa = PBXBuildFile; fileRef = CEE9355DBD53244708163705 /* client.h */; };
-		26FD2233DFCAAFC84C34C39F /* huffsyms.c in Sources */ = {isa = PBXBuildFile; fileRef = 66A49F3E07E65E9D23B71E15 /* huffsyms.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		270E5709A7FE94FAC32FC5CD /* resolve_address_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 5C2C6DE8CDC5FDB5A63AAA7D /* resolve_address_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2728A2A1BB3890DB7406D829 /* auth.c in Sources */ = {isa = PBXBuildFile; fileRef = 1584B1F0D4982A6EF7A952CF /* auth.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		273CCC1FB3BF1CEB8F931D23 /* thd.c in Sources */ = {isa = PBXBuildFile; fileRef = D3D5A17BD6040A60D82D06EE /* thd.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		27CD878FB37978EA53E278B0 /* timers.c in Sources */ = {isa = PBXBuildFile; fileRef = 1B04B251148F84EB89C5EF9A /* timers.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		280897A7289DDE169AA0546E /* status_conversion.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E68948320F849995B09AC37 /* status_conversion.h */; };
-		2808BA4A49A3D2AB2C7735EA /* histogram.h in Headers */ = {isa = PBXBuildFile; fileRef = 58854B850D217166AEA9B026 /* histogram.h */; };
-		28194E4EB5CB5EE977B26DB0 /* trace.h in Headers */ = {isa = PBXBuildFile; fileRef = 909FB597BDA176D2981D3026 /* trace.h */; };
-		282EE922EFD5C65419C7D448 /* security_connector.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8D3410DEEEE721CB1E2340 /* security_connector.h */; };
-		285AF2EB153F939521583E86 /* server_chttp2.c in Sources */ = {isa = PBXBuildFile; fileRef = 7E89280021B8CBC7D987AD06 /* server_chttp2.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		286C4521366DF382491531AA /* Pods-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = C02489A51275B9FDD158316A /* Pods-dummy.m */; };
-		2873E927E80CFEAD564BB02D /* GRXNSBlockEnumerator.h in Headers */ = {isa = PBXBuildFile; fileRef = AF17EDE3DF892AA526697F9C /* GRXNSBlockEnumerator.h */; };
-		28FC75C649983F1DEEA81C0C /* rsa.h in Headers */ = {isa = PBXBuildFile; fileRef = 3F919F2BECD5316CAE51EFB7 /* rsa.h */; };
-		29757161645E89F3DE5974A7 /* wakeup_fd_eventfd.c in Sources */ = {isa = PBXBuildFile; fileRef = E8E8F6A5EC1411544D5BB809 /* wakeup_fd_eventfd.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		297E7A9C1AC6AA6183BFA636 /* sync_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 0C105B76701EFB0EFABDBBF2 /* sync_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2996B791FE359CAA40D9DBDA /* stream_op.c in Sources */ = {isa = PBXBuildFile; fileRef = 7443FC5042AD6D54F533BE2F /* stream_op.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		29C579D6982D546591FB322F /* base64.h in Headers */ = {isa = PBXBuildFile; fileRef = 2EAAA73555E295CC4EB69093 /* base64.h */; };
-		29C6DBA8BE53D593366967BF /* GeneratedMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = B17B03EA2FA04E545FF6F671 /* GeneratedMessage.h */; };
-		29DE72203D0319B1E0C96371 /* Test.pb.m in Sources */ = {isa = PBXBuildFile; fileRef = D6649667C01C50F65DEAA701 /* Test.pb.m */; };
-		29E150BFC5FE38E7328D554C /* chttp2_transport.c in Sources */ = {isa = PBXBuildFile; fileRef = 0639FA42DBCCF395D3B05632 /* chttp2_transport.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2A05B02150ADAE04C765B367 /* frame_rst_stream.c in Sources */ = {isa = PBXBuildFile; fileRef = 7F54961D42B49E50CC8D1338 /* frame_rst_stream.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2A2CD934AFC1DE30AC2B25E5 /* hpack_parser.h in Headers */ = {isa = PBXBuildFile; fileRef = EA3AA73E2696645C327CC231 /* hpack_parser.h */; };
-		2A4239EF76699C4FA1C3D6C1 /* transport.c in Sources */ = {isa = PBXBuildFile; fileRef = C9B0549BC9D5CEE7FFDBF499 /* transport.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2A67FC5F37E5444D57C12A1D /* sockaddr_win32.h in Headers */ = {isa = PBXBuildFile; fileRef = A7B35482A8B3E763F2E49204 /* sockaddr_win32.h */; };
-		2A95B8FED6DE13B6311575ED /* alarm.c in Sources */ = {isa = PBXBuildFile; fileRef = 9711365E4FFC9119BEED12F2 /* alarm.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2AA0B41647E7C01443B9DC1A /* server_chttp2.c in Sources */ = {isa = PBXBuildFile; fileRef = 7E89280021B8CBC7D987AD06 /* server_chttp2.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2AD66793503249D0872F60DE /* hpack_table.c in Sources */ = {isa = PBXBuildFile; fileRef = 2ADEF3193716592CD4C3D9DF /* hpack_table.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2AF3F825ED3BDD650766BDD4 /* ui.h in Headers */ = {isa = PBXBuildFile; fileRef = 835E0E62F744BA594A13DB89 /* ui.h */; };
-		2B3B43D22719CBFD3553A914 /* message_compress.h in Headers */ = {isa = PBXBuildFile; fileRef = BDFE2FD7D829909C8BA54CE5 /* message_compress.h */; };
-		2B5EA29AFC7C8FF34B0D69A8 /* json_writer.h in Headers */ = {isa = PBXBuildFile; fileRef = C3D405F034FCA0772AEA9CE4 /* json_writer.h */; };
-		2B9866DBF9E5CEF765948941 /* ssl2.h in Headers */ = {isa = PBXBuildFile; fileRef = 7739C2ECFEC444826F4F32EA /* ssl2.h */; };
-		2BB70856E634EC8F6D3259BE /* resolve_address.h in Headers */ = {isa = PBXBuildFile; fileRef = FBEC0724BD339FFB26F5F022 /* resolve_address.h */; };
-		2BCD4B302960B240447E5971 /* rc4.h in Headers */ = {isa = PBXBuildFile; fileRef = 016F12209885CD0253753FF5 /* rc4.h */; };
-		2BE5399767768B1296032F45 /* GRXNSFastEnumerator.m in Sources */ = {isa = PBXBuildFile; fileRef = 4B45C3AD7EF8936646FCF8C7 /* GRXNSFastEnumerator.m */; };
-		2C06B1388A910AAC0ABDC2B2 /* metadata_buffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 53EC3A019D7830A5407236B1 /* metadata_buffer.h */; };
-		2C2BD47787C960880FDE1B35 /* string.c in Sources */ = {isa = PBXBuildFile; fileRef = 1D2E879D2283DE7CE03DFDD8 /* string.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2C2FDB4BB84778101B8A38D2 /* frame_goaway.h in Headers */ = {isa = PBXBuildFile; fileRef = 00B587323BFCD1957DEC693D /* frame_goaway.h */; };
-		2C343F377400891A504D926D /* NSEnumerator+GRXUtil.h in Headers */ = {isa = PBXBuildFile; fileRef = 62FF523610CB2A23C2394C8E /* NSEnumerator+GRXUtil.h */; };
-		2CA9B863B57AE884095F21A6 /* pollset_kick.c in Sources */ = {isa = PBXBuildFile; fileRef = 5DE51958FAA2D6EC3686404F /* pollset_kick.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2CCECA004CE2755B70196DD3 /* stream_encoder.c in Sources */ = {isa = PBXBuildFile; fileRef = 25389E5BD8E164F9DA3F870A /* stream_encoder.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2D2CD8F1C181D9F7E6C7B501 /* surface_trace.c in Sources */ = {isa = PBXBuildFile; fileRef = 362056B78B02662F088A082D /* surface_trace.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2D464464872BE79FACA6C945 /* iomgr_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 08A0C7FFD858CF072C811E42 /* iomgr_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2D7F540EEED5ADF7AC4C4BC0 /* UnknownFieldSetBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = C7D47F1384449D2EDFFFE2C5 /* UnknownFieldSetBuilder.m */; };
-		2D85C7E44AB27F1A09CB502D /* lame_client.c in Sources */ = {isa = PBXBuildFile; fileRef = 82B014EBF0529BFB30D7972A /* lame_client.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2DB2752AB5940BCEB9592151 /* log.c in Sources */ = {isa = PBXBuildFile; fileRef = 09FD3D7AD914C9353EB65529 /* log.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2DE7E8A10D5B1FC100F5BEA7 /* wakeup_fd_nospecial.c in Sources */ = {isa = PBXBuildFile; fileRef = 2347B82D8AD9CFDF29E04525 /* wakeup_fd_nospecial.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2DFAA7224BF1FDD8B9481B0A /* credentials.c in Sources */ = {isa = PBXBuildFile; fileRef = DAD9814362B1EC0A3BEFC733 /* credentials.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2E4823BE51F7825481000773 /* tls_msvc.h in Headers */ = {isa = PBXBuildFile; fileRef = 07ADEF22FC5A6CA8425ADB68 /* tls_msvc.h */; };
-		2E5F005391CCD9644304725D /* asn1t.h in Headers */ = {isa = PBXBuildFile; fileRef = D411C778D1B5CB55E3F81DA2 /* asn1t.h */; };
-		2ECD94D88B05DE05A06B6BBF /* sync_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = A524814A3590D4348D549C14 /* sync_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2EF35044AAC0F16AF132A91D /* grpc_security.h in Headers */ = {isa = PBXBuildFile; fileRef = 37D5B8B98758DFDC65FAE7E5 /* grpc_security.h */; };
-		2EFAD61B62131EB28A5ACB99 /* json_reader.c in Sources */ = {isa = PBXBuildFile; fileRef = A9B2304351F4D869D9983AE0 /* json_reader.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		2F823A506B29238755628416 /* time_averaged_stats.h in Headers */ = {isa = PBXBuildFile; fileRef = F3AA748BBA2B63D9C996FC2B /* time_averaged_stats.h */; };
-		3004851E71C51D280110EC39 /* tls1.h in Headers */ = {isa = PBXBuildFile; fileRef = B65E20D0DB3E4F3D6867FB77 /* tls1.h */; };
-		301A06D8D3AF2B3BCD0007CA /* cms.h in Headers */ = {isa = PBXBuildFile; fileRef = BFD8F3C8487F38428F6A509E /* cms.h */; };
-		3049EC70C084E2E2D05AD0E5 /* MutableField.m in Sources */ = {isa = PBXBuildFile; fileRef = 5D7E3645794B4FC5A28DB07A /* MutableField.m */; };
-		30520D97EC4EC13E0AB44E5A /* census_interface.h in Headers */ = {isa = PBXBuildFile; fileRef = B51521C50DEBAE7DD3561DCA /* census_interface.h */; };
-		30C4467AF20DF21111E68E38 /* atm_gcc_sync.h in Headers */ = {isa = PBXBuildFile; fileRef = 1210B14947151443C45DF689 /* atm_gcc_sync.h */; };
-		30C7B481D7EF5156FF8AD0DA /* Pods-SampleTests-ProtocolBuffers-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 14812113C5EF9DEB50DFF326 /* Pods-SampleTests-ProtocolBuffers-dummy.m */; };
-		30CF3169F6528B9D4904AD32 /* resolve_address_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 5C2C6DE8CDC5FDB5A63AAA7D /* resolve_address_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		310481489CC8120E570150DC /* channel_stack.c in Sources */ = {isa = PBXBuildFile; fileRef = 887D72DBB420C3E1A6738760 /* channel_stack.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		313432AB3C1E8124DC457A36 /* wakeup_fd_nospecial.c in Sources */ = {isa = PBXBuildFile; fileRef = 2347B82D8AD9CFDF29E04525 /* wakeup_fd_nospecial.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		315725A5540DCE644E310E84 /* des.h in Headers */ = {isa = PBXBuildFile; fileRef = E764B272A54ECA2B4EEDDEF0 /* des.h */; };
-		316E50F8CE0DB25A029BFB04 /* dh.h in Headers */ = {isa = PBXBuildFile; fileRef = 2AD05BAD508D25C95810DC9B /* dh.h */; };
-		31869B2BF8FF6413D487B7D4 /* rc2.h in Headers */ = {isa = PBXBuildFile; fileRef = C5AAB5EAB3B14E99FC11A384 /* rc2.h */; };
-		31C31F6767CB28C21C7B7C01 /* NSError+GRPC.h in Headers */ = {isa = PBXBuildFile; fileRef = E3EE726B6CC258D7AD02F50A /* NSError+GRPC.h */; };
-		3235E4EF011CA778DEFFBDF2 /* fd_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = AF13AD52322D3DDC33780FF6 /* fd_posix.h */; };
-		324A98AF3B83A4370FAC4AE3 /* byte_buffer_reader.c in Sources */ = {isa = PBXBuildFile; fileRef = 1318B504F6D7B3052AAD4DC4 /* byte_buffer_reader.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		326666F1CE653C81F9B70650 /* census_filter.h in Headers */ = {isa = PBXBuildFile; fileRef = A55B75B919DE7DC2F5B2A967 /* census_filter.h */; };
-		3294A89EDD644C584EAA4FB0 /* credentials_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 87C766D8A76DD09C1DB8A1DB /* credentials_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		32A7C54A69DF5BE016964DB6 /* ProtocolBuffers.h in Headers */ = {isa = PBXBuildFile; fileRef = 38958B8C3D9B8070ED88BD92 /* ProtocolBuffers.h */; };
-		3335F90D8C95C592F6094A42 /* cpu_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 5CFFF202D8C58B36ADA3DE94 /* cpu_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		3344A63DF338C3BB921A6606 /* Field.h in Headers */ = {isa = PBXBuildFile; fileRef = 7073EA35CBD7DC711060427E /* Field.h */; };
-		334E8FEC48CC5B03AD348F8E /* httpcli_security_connector.c in Sources */ = {isa = PBXBuildFile; fileRef = 4258ECAEE95E0068DBBBD447 /* httpcli_security_connector.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		3366F405F0E1B3FAC3DF70D8 /* census_rpc_stats.h in Headers */ = {isa = PBXBuildFile; fileRef = EFCA73F5E80AE5E7C18BAE5F /* census_rpc_stats.h */; };
-		33AD3EAFDB6F2368160843CE /* Route_guide.pb.h in Headers */ = {isa = PBXBuildFile; fileRef = 58E0257BE81E1918C5267E17 /* Route_guide.pb.h */; };
-		33C755580647C7175E4FCE92 /* ObjectivecDescriptor.pb.m in Sources */ = {isa = PBXBuildFile; fileRef = B8502DE6FC5E49568F49F41B /* ObjectivecDescriptor.pb.m */; };
-		33FC9D00A26EFD6B24226517 /* useful.h in Headers */ = {isa = PBXBuildFile; fileRef = 4FE5B2BA4E0B8F46C08C6C30 /* useful.h */; };
-		345F7CB0165975CA109B7D36 /* json_token.c in Sources */ = {isa = PBXBuildFile; fileRef = 9ECE1E3191D8265752CA58E2 /* json_token.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		345FA9EF8692B9F9AD6637E0 /* byte_buffer.h in Headers */ = {isa = PBXBuildFile; fileRef = CF4BB6900EA7F1317FE1A1D5 /* byte_buffer.h */; };
-		34739550CC1B3F331DEC07C9 /* modes.h in Headers */ = {isa = PBXBuildFile; fileRef = D14D71D9C78FD141E88A2AB6 /* modes.h */; };
-		34ACFEBE3A7A3B00A8795923 /* bin_encoder.c in Sources */ = {isa = PBXBuildFile; fileRef = B6ED74BFADC33253E682ABC4 /* bin_encoder.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		34BDBAB7B2C8534D141B2FF5 /* TextFormat.m in Sources */ = {isa = PBXBuildFile; fileRef = E446230CDDACC00743326ACC /* TextFormat.m */; };
-		34C392874F53A1A832B76E87 /* connected_channel.h in Headers */ = {isa = PBXBuildFile; fileRef = 9342FC71179F4D1461C18A98 /* connected_channel.h */; };
-		351F614BEBCC86C0C99943CA /* format_request.h in Headers */ = {isa = PBXBuildFile; fileRef = 3DA4398D3864DDE90508BEDB /* format_request.h */; };
-		352DBA35799DA89FCF97B6E4 /* conf_api.h in Headers */ = {isa = PBXBuildFile; fileRef = C56A403563F4F0297CBBA5E8 /* conf_api.h */; };
-		356F975E58088CA325A3E581 /* conf.h in Headers */ = {isa = PBXBuildFile; fileRef = 07C5B3701B8AA40D98728D52 /* conf.h */; };
-		3571E141DD3A26653229E617 /* AbstractMessageBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = EDDBC232C7BD17F4B5938A72 /* AbstractMessageBuilder.m */; };
-		358DCFEB16146066CA950067 /* socket_windows.h in Headers */ = {isa = PBXBuildFile; fileRef = 2A7B4BAB4502F95548251FC6 /* socket_windows.h */; };
-		359F13DCEFA30A909F21FD43 /* Empty.pb.h in Headers */ = {isa = PBXBuildFile; fileRef = 8CC2A8976E4F1AC52BF5A240 /* Empty.pb.h */; };
-		35E8734BA649618A6E93B6C4 /* ui.h in Headers */ = {isa = PBXBuildFile; fileRef = 835E0E62F744BA594A13DB89 /* ui.h */; };
-		36133482E787B3DC961A695D /* http_filter.c in Sources */ = {isa = PBXBuildFile; fileRef = D40ADADFBB6DC95EC6855D77 /* http_filter.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		362192C412FEFBD7AE93C813 /* NSDictionary+GRPC.m in Sources */ = {isa = PBXBuildFile; fileRef = B738B74ED9964C24A51DD3A8 /* NSDictionary+GRPC.m */; };
-		368813FAC943920CA95B8FA2 /* http_server_filter.c in Sources */ = {isa = PBXBuildFile; fileRef = 702E018073440195E124A8C4 /* http_server_filter.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		369647D7FA5FEECF29F997F6 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E920231885948DD62874D4 /* Foundation.framework */; };
-		36A455506D87F65BD4FCE4CB /* thd_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = A2D0C9AF67318A88A271B329 /* thd_internal.h */; };
-		3757E753ED86B982E75391CA /* Utilities.h in Headers */ = {isa = PBXBuildFile; fileRef = D34EDADD3A7795B3D4C0AF58 /* Utilities.h */; };
-		375848F3FF595BE6ABB941B9 /* GRXWriter.m in Sources */ = {isa = PBXBuildFile; fileRef = 00137D70FD603FE10A44A443 /* GRXWriter.m */; };
-		3783CDA8D9A78218EAF3C31A /* Pods-SampleTests-RemoteTest-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = E300DA3BE8A8045FBE38FB99 /* Pods-SampleTests-RemoteTest-dummy.m */; };
-		378DC9304368E5FE75894601 /* iocp_windows.h in Headers */ = {isa = PBXBuildFile; fileRef = A7CE930FEE65B105A824A4CF /* iocp_windows.h */; };
-		37B3559B9D6AD1CBFE60E258 /* blowfish.h in Headers */ = {isa = PBXBuildFile; fileRef = D17935EFCDE731E09000DF66 /* blowfish.h */; };
-		37B8F1823D0607F065EFDC1B /* cpu_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 818DC3D8E054FC9EF1C0F1BB /* cpu_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		37C0D0D8316BB20A3C511060 /* endpoint_pair_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 7AE82FDA9BFB3E31D4C5A7CC /* endpoint_pair_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		37CE2CC157050B1444BB302B /* ConcreteExtensionField.h in Headers */ = {isa = PBXBuildFile; fileRef = B4F80BE028884A82874B10E2 /* ConcreteExtensionField.h */; };
-		37D28835B4F89BCA3C1E402F /* atm_gcc_sync.h in Headers */ = {isa = PBXBuildFile; fileRef = 1210B14947151443C45DF689 /* atm_gcc_sync.h */; };
-		37DEE801C171EC06BBF478F3 /* GRXMappingWriter.m in Sources */ = {isa = PBXBuildFile; fileRef = BA0FBD1240C3330ADAFD46ED /* GRXMappingWriter.m */; };
-		3819ABA56292EFE6350AEEF1 /* sync_win32.h in Headers */ = {isa = PBXBuildFile; fileRef = DC630B706D01BDA73586F4AF /* sync_win32.h */; };
-		38294549BE6532938732C84C /* NSData+GRPC.h in Headers */ = {isa = PBXBuildFile; fileRef = 2BA4CFC5472009932AF3C45A /* NSData+GRPC.h */; };
-		3849EEFB0DF56050E01EAE71 /* pollset_multipoller_with_poll_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 4CE6325E302D61903CD1FD28 /* pollset_multipoller_with_poll_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		38FD71CF019AAE18B56539A9 /* GRPCSecureChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = 95F2438496323A2635262311 /* GRPCSecureChannel.h */; };
-		3903296C0A52197BDC663C41 /* GeneratedMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = B17B03EA2FA04E545FF6F671 /* GeneratedMessage.h */; };
-		394B3CF91214332210E65FD2 /* log.c in Sources */ = {isa = PBXBuildFile; fileRef = 09FD3D7AD914C9353EB65529 /* log.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		39827B8104845983F079B02C /* grpc_http.h in Headers */ = {isa = PBXBuildFile; fileRef = 925E27ADE0C72FDA338F485E /* grpc_http.h */; };
-		39A5C9F1FE5AD422C3487675 /* rc2.h in Headers */ = {isa = PBXBuildFile; fileRef = C5AAB5EAB3B14E99FC11A384 /* rc2.h */; };
-		39A5F6B9CDB6673DAE184EFB /* string_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 4B91EAD70775E421BD8B9FCC /* string_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		39BC1C71C3B1C317496C79FB /* atm_gcc_atomic.h in Headers */ = {isa = PBXBuildFile; fileRef = 32A314F8B2AB1E9F39C1B0A4 /* atm_gcc_atomic.h */; };
-		39C5306DFF2C79246C207046 /* wakeup_fd_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 595E044C7552A98C14435284 /* wakeup_fd_posix.h */; };
-		39FFEF1A607CB433D106ECC5 /* string_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 4B91EAD70775E421BD8B9FCC /* string_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		3A200C6433CA44CB8DBAB38F /* census_tracing.c in Sources */ = {isa = PBXBuildFile; fileRef = 069AF9321C3BC16C407A4BDA /* census_tracing.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		3A44302D58ADF831C5565231 /* GRXWriter+Immediate.h in Headers */ = {isa = PBXBuildFile; fileRef = B353EC7F04DD7326865BF2E4 /* GRXWriter+Immediate.h */; };
-		3A82350867F4E044CF5975B0 /* httpcli_security_connector.h in Headers */ = {isa = PBXBuildFile; fileRef = 77E040AA780ABF0B8A8C0390 /* httpcli_security_connector.h */; };
-		3AAA75DEE27C03B85A1C2E63 /* httpcli_security_connector.c in Sources */ = {isa = PBXBuildFile; fileRef = 4258ECAEE95E0068DBBBD447 /* httpcli_security_connector.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		3AB87B0D076EC10956736EED /* dsa.h in Headers */ = {isa = PBXBuildFile; fileRef = 1C5EC095122365ED8DACCA09 /* dsa.h */; };
-		3B00272836FED43E7C8BD906 /* rand.h in Headers */ = {isa = PBXBuildFile; fileRef = ADBD2557A394F8F84A762A1C /* rand.h */; };
-		3B06B09CC97C9E9062E7579A /* txt_db.h in Headers */ = {isa = PBXBuildFile; fileRef = 557940CD7876824C33DD7ADB /* txt_db.h */; };
-		3B5F6B30DB045229D1E4B57B /* CodedOutputStream.h in Headers */ = {isa = PBXBuildFile; fileRef = 512C6890E83E678C3723206B /* CodedOutputStream.h */; };
-		3B64656E2AC82E1A1E1294F9 /* NSError+GRPC.m in Sources */ = {isa = PBXBuildFile; fileRef = EB1B4E98E2C1E9529A2937F0 /* NSError+GRPC.m */; };
-		3B6995A6AB4F935E588A4516 /* CodedOutputStream.m in Sources */ = {isa = PBXBuildFile; fileRef = 266267E08A28C2BDB27AB4B1 /* CodedOutputStream.m */; };
-		3BD69BA475A29FD38CBBB1BC /* kssl.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0B5A3091E7FD86D36B6B83 /* kssl.h */; };
-		3BFDB4DD1899050FA291FA64 /* WireFormat.h in Headers */ = {isa = PBXBuildFile; fileRef = 49779DB1C5A2F5CFEBAAFEF9 /* WireFormat.h */; };
-		3C63FAA2D075945711B10CDC /* alloc.h in Headers */ = {isa = PBXBuildFile; fileRef = 1FFF40090BBE373979CD818E /* alloc.h */; };
-		3CC58E7BCA1F586406BBEDA4 /* MutableExtensionRegistry.h in Headers */ = {isa = PBXBuildFile; fileRef = AC7D24C484B254C957CC365C /* MutableExtensionRegistry.h */; };
-		3CD951854E54D86146D1CAE2 /* safestack.h in Headers */ = {isa = PBXBuildFile; fileRef = ED937D92BFD9EE65B9629994 /* safestack.h */; };
-		3D386EAA268FC6BEB0B0521E /* connected_channel.h in Headers */ = {isa = PBXBuildFile; fileRef = 9342FC71179F4D1461C18A98 /* connected_channel.h */; };
-		3D6DEC44D98CDC2EB5C1AD8A /* CodedInputStream.m in Sources */ = {isa = PBXBuildFile; fileRef = E1EE04CA884BA2771F155B1A /* CodedInputStream.m */; };
-		3DBCB7D3CE1A210B54598B02 /* e_os2.h in Headers */ = {isa = PBXBuildFile; fileRef = A98FA49795A8DD446B56C330 /* e_os2.h */; };
-		3DE26C4078582B16C0ECF78D /* lame_client.c in Sources */ = {isa = PBXBuildFile; fileRef = 82B014EBF0529BFB30D7972A /* lame_client.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		3EA1037FA374F88478FB9FD9 /* census_tracing.c in Sources */ = {isa = PBXBuildFile; fileRef = 069AF9321C3BC16C407A4BDA /* census_tracing.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		3EA1AE6C98C0B89B45D3E3C0 /* rc2.h in Headers */ = {isa = PBXBuildFile; fileRef = C5AAB5EAB3B14E99FC11A384 /* rc2.h */; };
-		3EE1261B98E7B5BBC87F542A /* connected_channel.c in Sources */ = {isa = PBXBuildFile; fileRef = 092547DB130BFAC1D87FDD8A /* connected_channel.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		3EE46DF36CD288F1B0ABB051 /* GRXWriter.m in Sources */ = {isa = PBXBuildFile; fileRef = 00137D70FD603FE10A44A443 /* GRXWriter.m */; };
-		3F65CA5E7D44AEB64ADEFDA6 /* tcp_windows.h in Headers */ = {isa = PBXBuildFile; fileRef = AF6A0C7403B1E83482072EAD /* tcp_windows.h */; };
-		3F932EDDFFA94AC84055AF38 /* pollset_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 2FEAD4CE0E0E4905BF839FBA /* pollset_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		3FB0BA773DA42CEF7ECC2BD0 /* NSData+GRPC.m in Sources */ = {isa = PBXBuildFile; fileRef = 3B009A38978FE24BCB519CB4 /* NSData+GRPC.m */; };
-		3FE0C1931C1F1C27D5D513CA /* file.h in Headers */ = {isa = PBXBuildFile; fileRef = D40526323B87888709D24324 /* file.h */; };
-		3FF474A3EEC0DB286EDE14C3 /* Bootstrap.h in Headers */ = {isa = PBXBuildFile; fileRef = FEC0D9E6713C7AD603C43A63 /* Bootstrap.h */; };
-		403F15B8702919B3149E4BF5 /* ecdsa.h in Headers */ = {isa = PBXBuildFile; fileRef = CC4B92F98C219BAB7AF48AFF /* ecdsa.h */; };
-		40C4DEC2A9FB2E00943B9A11 /* sync.c in Sources */ = {isa = PBXBuildFile; fileRef = 1BD0836A20448E42E0314D8A /* sync.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		40FA3B48050F5CB53EE28AE4 /* alarm.h in Headers */ = {isa = PBXBuildFile; fileRef = 95CA75B4F8A4139C4B69A501 /* alarm.h */; };
-		40FD694556E0BE577D3E2BC7 /* server.h in Headers */ = {isa = PBXBuildFile; fileRef = 9E97C00F1298866BC5B942A0 /* server.h */; };
-		411465E1B830C4EAD315FC91 /* symhacks.h in Headers */ = {isa = PBXBuildFile; fileRef = 11FC5A78D96C538F410ACBF8 /* symhacks.h */; };
-		4135974F98240A27F68E662B /* NSDictionary+GRPC.h in Headers */ = {isa = PBXBuildFile; fileRef = 908890BFD97AE08513208B3C /* NSDictionary+GRPC.h */; };
-		419A528B135E9CDA9895EF28 /* GRPCSecureChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = 95F2438496323A2635262311 /* GRPCSecureChannel.h */; };
-		41DD74930FDB3638AE68F05E /* hpack_table.c in Sources */ = {isa = PBXBuildFile; fileRef = 2ADEF3193716592CD4C3D9DF /* hpack_table.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		41DF55ACCD08834BAD8E1B5A /* endpoint_pair.h in Headers */ = {isa = PBXBuildFile; fileRef = 0280D6D5B1B2FD6DADF0EBB8 /* endpoint_pair.h */; };
-		42877984FCEA81D7C33CBBF6 /* srp.h in Headers */ = {isa = PBXBuildFile; fileRef = A6526F7F44853C7D64D34A71 /* srp.h */; };
-		428B770EEF11F73D5D1334A0 /* dso.h in Headers */ = {isa = PBXBuildFile; fileRef = D97B6A05C9BFC4CF3BFAF3F0 /* dso.h */; };
-		4316E8A25B66946843DBD0F2 /* json_writer.c in Sources */ = {isa = PBXBuildFile; fileRef = 89BF934C96AB0AB0CBA4E05A /* json_writer.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		43475660B23F875F4CF9EFAF /* GRXMappingWriter.h in Headers */ = {isa = PBXBuildFile; fileRef = 30DC0AEBF86D6086E7728540 /* GRXMappingWriter.h */; };
-		43535D94F4F40F4AC4373A36 /* Messages.pb.m in Sources */ = {isa = PBXBuildFile; fileRef = 0B52E252ED090B7DB0024334 /* Messages.pb.m */; };
-		439F57A0585CE6259F955CCD /* endpoint_pair_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 7AE82FDA9BFB3E31D4C5A7CC /* endpoint_pair_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		43A68245C6209ABD57AC7AEC /* timeout_encoding.h in Headers */ = {isa = PBXBuildFile; fileRef = 937B5E356D599266F6BF35E5 /* timeout_encoding.h */; };
-		43F7647B64A984DD6DEC26DD /* noop_filter.h in Headers */ = {isa = PBXBuildFile; fileRef = 08871F1CD8513D34428A2933 /* noop_filter.h */; };
-		44187F7A138646619F49D845 /* gen_hpack_tables.c in Sources */ = {isa = PBXBuildFile; fileRef = 9A03F86E69EB1ECD0C98F251 /* gen_hpack_tables.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		444E1837CB6ACC0F1CA28689 /* pqueue.h in Headers */ = {isa = PBXBuildFile; fileRef = 61246E9F7BB79C02CBDC3F0A /* pqueue.h */; };
-		448CE8B0F5F67869963F482F /* thd_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F35CC539D3ADDAD0DA84467 /* thd_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		44B1F21EDEA46FACA8C62C7D /* port_platform.h in Headers */ = {isa = PBXBuildFile; fileRef = 9CDD59E7CC95C8FC7D97E181 /* port_platform.h */; };
-		44C852304BA090BCF3E000AA /* file_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 551CFC4043ED5409C105ABEA /* file_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		44FAF07811DA602BF717AA55 /* roots.pem in Resources */ = {isa = PBXBuildFile; fileRef = 7EAF225F4EC2DE6AFBD12319 /* roots.pem */; };
-		4516414E3A60F6351BAB5547 /* alarm_heap.c in Sources */ = {isa = PBXBuildFile; fileRef = ACD472E4027B901D3D4FD970 /* alarm_heap.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		452DF17BC4101B3941711AB2 /* CodedInputStream.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D8B2ADAC76C56837BCD6E3F /* CodedInputStream.h */; };
-		454C2A534A424E0A7B5B1E62 /* GeneratedMessageBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 14493F5D45551AF7DD4DCFAF /* GeneratedMessageBuilder.m */; };
-		456C36C17F468009D7E68458 /* x509_vfy.h in Headers */ = {isa = PBXBuildFile; fileRef = 1C038257C6440675A3A55C19 /* x509_vfy.h */; };
-		4597CCC3FF721DCE71ACDD0A /* kssl.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0B5A3091E7FD86D36B6B83 /* kssl.h */; };
-		45A935273F5DB23F559DF283 /* json.h in Headers */ = {isa = PBXBuildFile; fileRef = AEA0150555EE52124AD1B7C2 /* json.h */; };
-		45F4358717B946675BB7FAEA /* fd_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = E1F91FEB24408BC30186C5CC /* fd_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		45F67E6F270B21FCB2BC1DF9 /* byte_buffer_queue.c in Sources */ = {isa = PBXBuildFile; fileRef = BEE79C3939F4822E22742D3E /* byte_buffer_queue.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		45F8F1E92E7BCEFB1BAB0610 /* http_client_filter.h in Headers */ = {isa = PBXBuildFile; fileRef = F2704E6980860EA1AB6A090F /* http_client_filter.h */; };
-		463152EA25BFC4FBCD7358B0 /* channel.h in Headers */ = {isa = PBXBuildFile; fileRef = 901652CA4B573F7BAA191043 /* channel.h */; };
-		463A89089E888C77633B4BB4 /* time_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 8B03F1B317FE59E0CE6747ED /* time_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		463F9E6CBFEC0079FB9E37EA /* sync_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 3E4109CF85B04479E8DC8D08 /* sync_posix.h */; };
-		4698A1E4DB73FDA1BF730663 /* cancellable_platform.h in Headers */ = {isa = PBXBuildFile; fileRef = 845FA310D1B037B9E1D54905 /* cancellable_platform.h */; };
-		46AA9328679CD4FF1251BCE3 /* frame.h in Headers */ = {isa = PBXBuildFile; fileRef = 8EFAF709CD0D054FE4DA247A /* frame.h */; };
-		46B4B76ACFB8BD4FC0403381 /* json.c in Sources */ = {isa = PBXBuildFile; fileRef = 36976E64654DF9EA4141C812 /* json.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		46CA782356458C2D59307A47 /* credentials_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 87C766D8A76DD09C1DB8A1DB /* credentials_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		46CC760DF424FA6DA7F7210D /* sha.h in Headers */ = {isa = PBXBuildFile; fileRef = CE05CF8E2EC1CA3AB87C808F /* sha.h */; };
-		46E08D3E42AA513668535065 /* asn1.h in Headers */ = {isa = PBXBuildFile; fileRef = 6CB0C4DA3194B77529082D92 /* asn1.h */; };
-		46F16BD458D0922ED271DBD3 /* timers.h in Headers */ = {isa = PBXBuildFile; fileRef = E24005BA4EE1886E457D1102 /* timers.h */; };
-		4729C6AB0130EAA39AE15F9E /* client_setup.h in Headers */ = {isa = PBXBuildFile; fileRef = 555B0F2CAD70423DE30C6444 /* client_setup.h */; };
-		473E47A5B8AAB6E691F8F43A /* PBArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 78F5A53737D40F816C71D4AA /* PBArray.m */; };
-		476CBBEA21196D1F623C1842 /* chttp2_transport.c in Sources */ = {isa = PBXBuildFile; fileRef = 0639FA42DBCCF395D3B05632 /* chttp2_transport.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		47F2D8D19FB53D8FDEB687F8 /* tcp_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = B409984314884D903F36169F /* tcp_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		48042C4757856B6C46DD812F /* UnknownFieldSet.m in Sources */ = {isa = PBXBuildFile; fileRef = B52453B197D589FB52125E87 /* UnknownFieldSet.m */; };
-		481F1E0F7C72D68EBBCF8567 /* thd_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 9A58ACD0EC03D5883ED79C0C /* thd_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		4837E7CEFC98650766554D12 /* client_setup.c in Sources */ = {isa = PBXBuildFile; fileRef = AB8B3BA0CC1EA854D1020AEA /* client_setup.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		48388DE1C2BFA8533856DCED /* RingBuffer.m in Sources */ = {isa = PBXBuildFile; fileRef = E307610E1EEEFBA4D4925832 /* RingBuffer.m */; };
-		488052CC30C4334D4CFD77D9 /* pollset_multipoller_with_poll_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 4CE6325E302D61903CD1FD28 /* pollset_multipoller_with_poll_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		490044BF792E694AF6210261 /* child_channel.c in Sources */ = {isa = PBXBuildFile; fileRef = 9478C18EECEB8DD6252D2215 /* child_channel.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		49081F3A69AFDF6A884EAEB7 /* GRXWriter+Transformations.h in Headers */ = {isa = PBXBuildFile; fileRef = 21839ADB0BEF093A31BF49B1 /* GRXWriter+Transformations.h */; };
-		490F6FE97E32DD77D53D44EE /* metadata.h in Headers */ = {isa = PBXBuildFile; fileRef = F510AD3A2D71ACF0282C64B5 /* metadata.h */; };
-		492D5A9DBA8693EE8B6BC258 /* http_server_filter.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A5A429ED5EC2E7EB0146FFB /* http_server_filter.h */; };
-		492E1B46C16010FF6BF5E681 /* UnknownFieldSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 4D94918E7FEC14559137E27C /* UnknownFieldSet.h */; };
-		4931E6ACF9FF298BEA14E137 /* lhash.h in Headers */ = {isa = PBXBuildFile; fileRef = 7E9520E20DCD01D0DCC65855 /* lhash.h */; };
-		49362DB45F7914418A2E0E33 /* UnknownFieldSetBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = AAAC8D326F301B501A9FB275 /* UnknownFieldSetBuilder.h */; };
-		494B45ED273D0F27C848023D /* client_setup.h in Headers */ = {isa = PBXBuildFile; fileRef = 555B0F2CAD70423DE30C6444 /* client_setup.h */; };
-		494EF8046B1E46D48C66FBA5 /* completion_queue.c in Sources */ = {isa = PBXBuildFile; fileRef = 8D2CD6C833DA66C3FE1BA7EA /* completion_queue.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		4977B828C027EEA731C92200 /* stream_op.h in Headers */ = {isa = PBXBuildFile; fileRef = D62A2B89BC57A50909A82C8D /* stream_op.h */; };
-		49A079D84CE9093B074900BF /* time_averaged_stats.c in Sources */ = {isa = PBXBuildFile; fileRef = 692DA013B9BF62ECADE9439E /* time_averaged_stats.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		49CC8F4C2FCBE7F71521A08D /* sockaddr_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 00D1F7FE42811771A45CB7E7 /* sockaddr_posix.h */; };
-		49E808361D8A920DBC44602D /* opensslv.h in Headers */ = {isa = PBXBuildFile; fileRef = CE505393BA1DED4309A794BF /* opensslv.h */; };
-		49F722213E59E278287D7FE8 /* GRXWriteable.m in Sources */ = {isa = PBXBuildFile; fileRef = FE14502B83EB31B456B00307 /* GRXWriteable.m */; };
-		4A1B1EB47581DCF4EB9D0421 /* x509.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C07549EA6437C110EB28620 /* x509.h */; };
-		4A3D70174F74A070432C1DFB /* obj_mac.h in Headers */ = {isa = PBXBuildFile; fileRef = 403CDBC827DC75263866DD1F /* obj_mac.h */; };
-		4AB249EEC6EAEE22BE3CABEB /* security_connector.c in Sources */ = {isa = PBXBuildFile; fileRef = FDD2798B42FADD235D062C79 /* security_connector.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		4B07CDA6CB53EBC6512A2E51 /* tcp_server.h in Headers */ = {isa = PBXBuildFile; fileRef = 39490C9911F760ABCE716E20 /* tcp_server.h */; };
-		4B4F5C8626A440189C23B2EB /* alarm_heap.h in Headers */ = {isa = PBXBuildFile; fileRef = 1D8BEF54D1799D651A2C427A /* alarm_heap.h */; };
-		4B6ED893DD054F2067E9D4CE /* x509.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C07549EA6437C110EB28620 /* x509.h */; };
-		4B7D37335F42FD8DE5DDB41B /* opensslconf.h in Headers */ = {isa = PBXBuildFile; fileRef = 32C499FB0870BEF8AF1565FC /* opensslconf.h */; };
-		4B86B959686E9D19BE0F576D /* hpack_table.h in Headers */ = {isa = PBXBuildFile; fileRef = 99237990158E92C9F0C675BB /* hpack_table.h */; };
-		4BD5B1FBCE7D54443CA9C383 /* GRPCSecureChannel.m in Sources */ = {isa = PBXBuildFile; fileRef = A543115DBDA830174D19FAD7 /* GRPCSecureChannel.m */; };
-		4BE479A6F7221E7DC48B4283 /* channel_stack.c in Sources */ = {isa = PBXBuildFile; fileRef = 887D72DBB420C3E1A6738760 /* channel_stack.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		4C17A682952AE414E953FFF7 /* frame_rst_stream.c in Sources */ = {isa = PBXBuildFile; fileRef = 7F54961D42B49E50CC8D1338 /* frame_rst_stream.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		4C1ADB5F5164E5005C241AC4 /* Field.h in Headers */ = {isa = PBXBuildFile; fileRef = 7073EA35CBD7DC711060427E /* Field.h */; };
-		4C9D29F63FDF5CCB2859B8EC /* seed.h in Headers */ = {isa = PBXBuildFile; fileRef = 77CE4C07F3D27C50DEBDB4A4 /* seed.h */; };
-		4CBD8BD42997B6A8BFD6B845 /* endpoint.c in Sources */ = {isa = PBXBuildFile; fileRef = AF99D421A9B44F389FD75BAB /* endpoint.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		4CC2920A98842F7464F93171 /* tcp_server_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 78285425C45A6AEF43616C14 /* tcp_server_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		4CE44C0746E910E108017C86 /* idea.h in Headers */ = {isa = PBXBuildFile; fileRef = 24B4134291477B3C306D0F9B /* idea.h */; };
-		4D1E056B28F5557F7CC28A2D /* aes.h in Headers */ = {isa = PBXBuildFile; fileRef = 0118816670A7C6C335518EDF /* aes.h */; };
-		4D1E7989C53653854DD7DE6F /* server.c in Sources */ = {isa = PBXBuildFile; fileRef = 71F8B05C67B51C33A39FD277 /* server.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		4D2B6E22373D5A13462A1B2A /* env.h in Headers */ = {isa = PBXBuildFile; fileRef = 50A5DE2884F204F06DEA6B43 /* env.h */; };
-		4D35EF4D670FF8C14DE6DF77 /* grpc_time.h in Headers */ = {isa = PBXBuildFile; fileRef = 1B3E6F352D4772D77EE612E8 /* grpc_time.h */; };
-		4D73DFE73794357E0BA6B39F /* secure_transport_setup.h in Headers */ = {isa = PBXBuildFile; fileRef = C19838C914909B0B92D93A99 /* secure_transport_setup.h */; };
-		4D88BC073B5E48099D343DDC /* metadata_array.c in Sources */ = {isa = PBXBuildFile; fileRef = A47DCD9141F1ECF8A77694BF /* metadata_array.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		4D9B402D58E3F8E29536723B /* frame_goaway.c in Sources */ = {isa = PBXBuildFile; fileRef = AC79A8E7153E7E4206A6E0F6 /* frame_goaway.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		4DA392AE6DB359A50D5EAB0D /* iomgr_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 08A0C7FFD858CF072C811E42 /* iomgr_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		4DA551DF807A0F7AD65FEB32 /* NSDictionary+GRPC.m in Sources */ = {isa = PBXBuildFile; fileRef = B738B74ED9964C24A51DD3A8 /* NSDictionary+GRPC.m */; };
-		4DB8E17E2E21673E2FE28007 /* GRPCCompletionQueue.h in Headers */ = {isa = PBXBuildFile; fileRef = CCC7879745FA67A0A66A8C99 /* GRPCCompletionQueue.h */; };
-		4DCF19613E8AECE0351594A6 /* bin_encoder.h in Headers */ = {isa = PBXBuildFile; fileRef = 7F70FAFAB9F4A5F0703D92BA /* bin_encoder.h */; };
-		4E2938247EB668D459635CCA /* stream_map.h in Headers */ = {isa = PBXBuildFile; fileRef = A18A9E53902DA1A490D048A7 /* stream_map.h */; };
-		4E2B88B2DC4531B53D1E359E /* GRXNSFastEnumerator.m in Sources */ = {isa = PBXBuildFile; fileRef = 4B45C3AD7EF8936646FCF8C7 /* GRXNSFastEnumerator.m */; };
-		4E43AE84656A601CE22A5ED8 /* init.h in Headers */ = {isa = PBXBuildFile; fileRef = 6F49DD1F6DA272012D28C11A /* init.h */; };
-		4E456611D238DD3F8826F1B0 /* sockaddr_win32.h in Headers */ = {isa = PBXBuildFile; fileRef = A7B35482A8B3E763F2E49204 /* sockaddr_win32.h */; };
-		4E764C3AC787AE28C16C7B79 /* ExtendableMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = BB5F6E52609DF6A8B79E6C6E /* ExtendableMessage.h */; };
-		4E7A10EACF2F27DA922FF2C7 /* ExtendableMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = BB5F6E52609DF6A8B79E6C6E /* ExtendableMessage.h */; };
-		4ED5869076CA27DD459CFC15 /* metadata.h in Headers */ = {isa = PBXBuildFile; fileRef = F510AD3A2D71ACF0282C64B5 /* metadata.h */; };
-		4EF947792E0714E96110981F /* GRXNSScalarEnumerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 83E135FAC325138487E28FBE /* GRXNSScalarEnumerator.h */; };
-		4EFB1E9D54BD4B152D52F1A1 /* json_writer.h in Headers */ = {isa = PBXBuildFile; fileRef = C3D405F034FCA0772AEA9CE4 /* json_writer.h */; };
-		4F0ADD71D7CE0D8E8179A161 /* slice.h in Headers */ = {isa = PBXBuildFile; fileRef = D792CBC41B3B3E657A56CD2D /* slice.h */; };
-		4F802952D9FEC942B09F0779 /* NSEnumerator+GRXUtil.h in Headers */ = {isa = PBXBuildFile; fileRef = 62FF523610CB2A23C2394C8E /* NSEnumerator+GRXUtil.h */; };
-		4F95BBADEEF4145B2C50DFF0 /* huffsyms.h in Headers */ = {isa = PBXBuildFile; fileRef = E79E1B27DCA9FCCD3182E568 /* huffsyms.h */; };
-		4FE91C9A0A716B02E5188ADD /* iocp_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 8EF237AADBB32AE1589440C6 /* iocp_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		50050C5DEF7F1410406E35FC /* string.c in Sources */ = {isa = PBXBuildFile; fileRef = 1D2E879D2283DE7CE03DFDD8 /* string.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		502C612FD7265131E82E46C4 /* alloc.c in Sources */ = {isa = PBXBuildFile; fileRef = 4B94B3D5B631FD95B0DB7404 /* alloc.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		503325D63393FE38F096A717 /* asn1.h in Headers */ = {isa = PBXBuildFile; fileRef = 6CB0C4DA3194B77529082D92 /* asn1.h */; };
-		5038DD29A261141173BA0AC3 /* channel_stack.h in Headers */ = {isa = PBXBuildFile; fileRef = 551ADCF1B6E05631C0798A5D /* channel_stack.h */; };
-		505ECE6DC9220C1D19D44826 /* json.c in Sources */ = {isa = PBXBuildFile; fileRef = 36976E64654DF9EA4141C812 /* json.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5066C7CC2EFD61EFE3C90880 /* opensslv.h in Headers */ = {isa = PBXBuildFile; fileRef = CE505393BA1DED4309A794BF /* opensslv.h */; };
-		50BDFA15FFC4750B5309DCFD /* trace.h in Headers */ = {isa = PBXBuildFile; fileRef = 909FB597BDA176D2981D3026 /* trace.h */; };
-		50C24730B2D90632A9973AA0 /* iomgr_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 5B9267052B252C28261605A1 /* iomgr_internal.h */; };
-		50C260173B8C5BE6832EFFC6 /* server.h in Headers */ = {isa = PBXBuildFile; fileRef = 9E97C00F1298866BC5B942A0 /* server.h */; };
-		50CBF29F5FE688CC097C8789 /* file_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 551CFC4043ED5409C105ABEA /* file_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		50DE90CDE6EEDD76E686C835 /* byte_buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 88986E5DC1E75A40B26FA0F3 /* byte_buffer.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		50E28FD6071CFCD12B5A766D /* grpc_http.h in Headers */ = {isa = PBXBuildFile; fileRef = 925E27ADE0C72FDA338F485E /* grpc_http.h */; };
-		5115437FB879324B652332AE /* murmur_hash.h in Headers */ = {isa = PBXBuildFile; fileRef = F7F6C37F6B1B704ADEA89319 /* murmur_hash.h */; };
-		515DAAA56AD167B075811A46 /* sync_generic.h in Headers */ = {isa = PBXBuildFile; fileRef = 71FD80A83315D1F3BC2FF0C2 /* sync_generic.h */; };
-		51651074F1BB3FFB4FE32017 /* call.c in Sources */ = {isa = PBXBuildFile; fileRef = 272957AFD4ACE71712E696CF /* call.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		51A0C693F0BC02A3690AED2B /* whrlpool.h in Headers */ = {isa = PBXBuildFile; fileRef = 7832206106004363B9EF30E6 /* whrlpool.h */; };
-		51AF277BB80DFC6613639298 /* format_request.h in Headers */ = {isa = PBXBuildFile; fileRef = 3DA4398D3864DDE90508BEDB /* format_request.h */; };
-		51BBDF8C2369E2F5015B59BF /* client_channel.h in Headers */ = {isa = PBXBuildFile; fileRef = C238706A0B82D7D865504F64 /* client_channel.h */; };
-		51C77D2320718F9CBCFDA82C /* cpu.h in Headers */ = {isa = PBXBuildFile; fileRef = B12ECD5F1AB1A68E4300BD85 /* cpu.h */; };
-		51F0FF1521AE61BC7A4E6B48 /* GRPCCall.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D137F3FDB5B92415B7AC31C /* GRPCCall.h */; };
-		5269975A705AB8B7473147FA /* cancellable_platform.h in Headers */ = {isa = PBXBuildFile; fileRef = 845FA310D1B037B9E1D54905 /* cancellable_platform.h */; };
-		5287ED926133465BBBAE19F5 /* mdc2.h in Headers */ = {isa = PBXBuildFile; fileRef = CE9B94697CCEC36CED30CF18 /* mdc2.h */; };
-		52C9573605F27614A47FD98B /* GRPCCall.m in Sources */ = {isa = PBXBuildFile; fileRef = 9CDD140DA194B5246113EDC8 /* GRPCCall.m */; };
-		533C431DFC771A4792EB34CB /* hpack_parser.c in Sources */ = {isa = PBXBuildFile; fileRef = 05837CB7759CEE2E57F4CF48 /* hpack_parser.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		533D879BBA6DFA86DC05818C /* log.h in Headers */ = {isa = PBXBuildFile; fileRef = AC20E7974FC6D45F39E2E3F6 /* log.h */; };
-		53704DB8E70C41056EDB0A0A /* server_secure_chttp2.c in Sources */ = {isa = PBXBuildFile; fileRef = BF25E4D94898506695C15034 /* server_secure_chttp2.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5370783799361A2E6CD1CCBE /* init.c in Sources */ = {isa = PBXBuildFile; fileRef = 94F3E600B7F40BA99CC9B1E1 /* init.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5371D38E7D69A5B42D94A7F0 /* NSDictionary+GRPC.h in Headers */ = {isa = PBXBuildFile; fileRef = 908890BFD97AE08513208B3C /* NSDictionary+GRPC.h */; };
-		53792F52CFB4F6B9C94014E9 /* tcp_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = B409984314884D903F36169F /* tcp_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		537F000120177BDB37CC638D /* GRPCSecureChannel.m in Sources */ = {isa = PBXBuildFile; fileRef = A543115DBDA830174D19FAD7 /* GRPCSecureChannel.m */; };
-		53C8DF828FDFA56A99E3CCC1 /* seed.h in Headers */ = {isa = PBXBuildFile; fileRef = 77CE4C07F3D27C50DEBDB4A4 /* seed.h */; };
-		548AD798ED0C537118CC6DA7 /* Pods-ProtocolBuffers-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A087CE9B84F73C45A1CD5628 /* Pods-ProtocolBuffers-dummy.m */; };
-		54E26147C763862F799AEBB7 /* Pods-Sample-OpenSSL-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9237BB0A69F0E093CB3274F4 /* Pods-Sample-OpenSSL-dummy.m */; };
-		5538310FE89E16F4D1403451 /* noop_filter.c in Sources */ = {isa = PBXBuildFile; fileRef = 8FE7F081D7EBCCBF8595A007 /* noop_filter.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		553F5945A9A7656E4B4233D9 /* window_stats.c in Sources */ = {isa = PBXBuildFile; fileRef = A483D2D2BC2227E981BFAD95 /* window_stats.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		554460321DDD759696BAE8F5 /* iomgr.c in Sources */ = {isa = PBXBuildFile; fileRef = CBA0D6DE446A425B959CD645 /* iomgr.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		556CCAF23521B2A2284A48E3 /* srp.h in Headers */ = {isa = PBXBuildFile; fileRef = A6526F7F44853C7D64D34A71 /* srp.h */; };
-		557B4BEA10607289B4B844C1 /* dsa.h in Headers */ = {isa = PBXBuildFile; fileRef = 1C5EC095122365ED8DACCA09 /* dsa.h */; };
-		559CA4F3F2DCE33CD210EEDC /* wakeup_fd_pipe.h in Headers */ = {isa = PBXBuildFile; fileRef = 2F2C73D7D6DD73A2C440A9B5 /* wakeup_fd_pipe.h */; };
-		55B1CCDE66084CFD44A83D97 /* cpu.h in Headers */ = {isa = PBXBuildFile; fileRef = B12ECD5F1AB1A68E4300BD85 /* cpu.h */; };
-		55B48594A4EB4732AB1EDC5D /* GRPCChannel.m in Sources */ = {isa = PBXBuildFile; fileRef = 78CC954F00740B8C589205E2 /* GRPCChannel.m */; };
-		5617AD69046C206ADC6C788B /* grpc_security.h in Headers */ = {isa = PBXBuildFile; fileRef = 37D5B8B98758DFDC65FAE7E5 /* grpc_security.h */; };
-		5666D5ADD0EF7C2EE5F8D06E /* slice.h in Headers */ = {isa = PBXBuildFile; fileRef = D792CBC41B3B3E657A56CD2D /* slice.h */; };
-		56756A4A8DD74EA60D684285 /* hash_table.h in Headers */ = {isa = PBXBuildFile; fileRef = E6238E0B2F14B6A142E9386E /* hash_table.h */; };
-		567EA34866C224EDE33A9B2E /* window_stats.c in Sources */ = {isa = PBXBuildFile; fileRef = A483D2D2BC2227E981BFAD95 /* window_stats.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5811E857FBDA4A3F9611FD73 /* call.c in Sources */ = {isa = PBXBuildFile; fileRef = 272957AFD4ACE71712E696CF /* call.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5868DFB62D8645D3604E6340 /* conf.h in Headers */ = {isa = PBXBuildFile; fileRef = 07C5B3701B8AA40D98728D52 /* conf.h */; };
-		586975898AF2386FAB35DFDC /* conf_api.h in Headers */ = {isa = PBXBuildFile; fileRef = C56A403563F4F0297CBBA5E8 /* conf_api.h */; };
-		58B9F158110A20CA76239C85 /* ui_compat.h in Headers */ = {isa = PBXBuildFile; fileRef = 707B43D7094693DC964C9A69 /* ui_compat.h */; };
-		58C7ADC8DE8AE32ADA264F88 /* secure_channel_create.c in Sources */ = {isa = PBXBuildFile; fileRef = F028342496E673415FF3D8AB /* secure_channel_create.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		58EC1D6962AE8AF8519133A2 /* sync_generic.h in Headers */ = {isa = PBXBuildFile; fileRef = 71FD80A83315D1F3BC2FF0C2 /* sync_generic.h */; };
-		5934C13F85C89B88AF43119E /* md5.h in Headers */ = {isa = PBXBuildFile; fileRef = 4A34766847C2DFF77298EA4D /* md5.h */; };
-		5943B79362DA59CD4AD512F7 /* ocsp.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F44DED8449303D794BAB617 /* ocsp.h */; };
-		5948355E8A242058668AD8E6 /* pkcs7.h in Headers */ = {isa = PBXBuildFile; fileRef = 0A146135B811250D1914B47F /* pkcs7.h */; };
-		59C14034E25FE2E191DFA3C2 /* message_compress.h in Headers */ = {isa = PBXBuildFile; fileRef = BDFE2FD7D829909C8BA54CE5 /* message_compress.h */; };
-		59FEA8E7A16AE88137E36438 /* wakeup_fd_pipe.h in Headers */ = {isa = PBXBuildFile; fileRef = 2F2C73D7D6DD73A2C440A9B5 /* wakeup_fd_pipe.h */; };
-		5A0415A5D0793C631358CB41 /* event_string.h in Headers */ = {isa = PBXBuildFile; fileRef = A9F7B929E2D1994F8045C8EB /* event_string.h */; };
-		5A46D73D4573D1ECA7019182 /* cancellable.c in Sources */ = {isa = PBXBuildFile; fileRef = 1693B87FC0921746424B8E7A /* cancellable.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5ADA989B340006EF340EBCD5 /* transport_security.h in Headers */ = {isa = PBXBuildFile; fileRef = F0C991251C2107D1FBD154AF /* transport_security.h */; };
-		5AE9B27F961B15BF07DD1E77 /* AbstractMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = BEFD30461D28E85BC4564977 /* AbstractMessage.m */; };
-		5B314FDEEC1922B067C3CE69 /* GRPCChannel.m in Sources */ = {isa = PBXBuildFile; fileRef = 78CC954F00740B8C589205E2 /* GRPCChannel.m */; };
-		5B5C39DF5D9EDE5185EF1CE7 /* pollset_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = F3DB27C5D118BD4492A9DCF9 /* pollset_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5BA245A1C112FCD756439F24 /* file_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 551CFC4043ED5409C105ABEA /* file_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5BCAA2EB13B1357AE94520CA /* tcp_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = BD2C5EA58859F38D05EE84DC /* tcp_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5BD6CF1C2C2E70C824423908 /* cmac.h in Headers */ = {isa = PBXBuildFile; fileRef = C0CBC4CB17FEC26EA9AC1649 /* cmac.h */; };
-		5BE7DCB3D2D1799C24492009 /* obj_mac.h in Headers */ = {isa = PBXBuildFile; fileRef = 403CDBC827DC75263866DD1F /* obj_mac.h */; };
-		5BFA01054D5A91C27F34DCC0 /* channel_args.h in Headers */ = {isa = PBXBuildFile; fileRef = 7256585C37337ED83551BB66 /* channel_args.h */; };
-		5C3F051AD2DBD4891F9BBD8E /* varint.c in Sources */ = {isa = PBXBuildFile; fileRef = D68E6DE85E57C95FF7A06516 /* varint.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5C4487D4AC96D28F4FC7A0CC /* NSError+GRPC.m in Sources */ = {isa = PBXBuildFile; fileRef = EB1B4E98E2C1E9529A2937F0 /* NSError+GRPC.m */; };
-		5C6A026276E01F2CAD2A6929 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E920231885948DD62874D4 /* Foundation.framework */; };
-		5CADAC9E1816248B8311CDA9 /* frame_data.c in Sources */ = {isa = PBXBuildFile; fileRef = F93ADDC6556CB4F0A0CCE308 /* frame_data.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5CBB5F393AAC5BE846CD16F1 /* string_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 77C6558BBFF31326983320B0 /* string_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5CBCA026459291D99E0C1645 /* ebcdic.h in Headers */ = {isa = PBXBuildFile; fileRef = 589A52F1F41BEDEB49C095E1 /* ebcdic.h */; };
-		5D08C2464B0ED87F7049ACAF /* GRPCUnsecuredChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = 89EC88522CAA5913E134CC50 /* GRPCUnsecuredChannel.h */; };
-		5D0D008B75F15B8D254602CA /* log_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 83FC73B2F90BD4477BAB7716 /* log_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5D0D547B0339A51FCEFFBB65 /* timers_preciseclock.h in Headers */ = {isa = PBXBuildFile; fileRef = A29A7E4785EC3464B81DE033 /* timers_preciseclock.h */; };
-		5D3CBCD0BE19BB9A63EC5DC8 /* http_client_filter.c in Sources */ = {isa = PBXBuildFile; fileRef = 3011D324672ADCCCB0DF1E04 /* http_client_filter.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5D8532A7EB71AF674C523EEA /* atm_gcc_sync.h in Headers */ = {isa = PBXBuildFile; fileRef = 1210B14947151443C45DF689 /* atm_gcc_sync.h */; };
-		5DB5510EF0C5BB2B3C61EC2C /* metadata_buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 65DC894DCBA3E25098C3F392 /* metadata_buffer.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5DBA3475E57338CD023AA14C /* stream_encoder.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F70A1753EA84C60AF27B5DE /* stream_encoder.h */; };
-		5DBC95A4D0205848FD268121 /* byte_buffer_queue.c in Sources */ = {isa = PBXBuildFile; fileRef = BEE79C3939F4822E22742D3E /* byte_buffer_queue.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5DBD610D699997A56EAE4AEB /* GRXImmediateWriter.h in Headers */ = {isa = PBXBuildFile; fileRef = 7A9AC18A46591A7BDE09299C /* GRXImmediateWriter.h */; };
-		5DEF2035131B882F2B073BFD /* pem2.h in Headers */ = {isa = PBXBuildFile; fileRef = 97AC1F49BA95AC83993BCB91 /* pem2.h */; };
-		5E1B11F6AE12656C4465B408 /* cpu_linux.c in Sources */ = {isa = PBXBuildFile; fileRef = EB3D587E70F10F51FAD52541 /* cpu_linux.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5E22E35A818E9F227476ADC6 /* grpc.h in Headers */ = {isa = PBXBuildFile; fileRef = 296D8B18B1E9020B7FBF9ED7 /* grpc.h */; };
-		5E37BBD24A26F1EB95612A60 /* window_stats.h in Headers */ = {isa = PBXBuildFile; fileRef = 22CF3D4CF0769E7668CAA7F1 /* window_stats.h */; };
-		5E5D54CB1AE8224000BF0FA2 /* GRPCWrappedCall.m in Sources */ = {isa = PBXBuildFile; fileRef = 5E5D54CA1AE8224000BF0FA2 /* GRPCWrappedCall.m */; };
-		5E77604C969DAC886A47B8D0 /* status_conversion.c in Sources */ = {isa = PBXBuildFile; fileRef = CFA8E7BD1676F3248B151924 /* status_conversion.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5ECD867AB41C579D5054F37B /* pollset_kick_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 23DCBAC0F303E8BFDDB8B222 /* pollset_kick_posix.h */; };
-		5EDC0C261377F9778187BEEA /* cmac.h in Headers */ = {isa = PBXBuildFile; fileRef = C0CBC4CB17FEC26EA9AC1649 /* cmac.h */; };
-		5EE76BA381A4087039B2C9D5 /* pollset_kick_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 23DCBAC0F303E8BFDDB8B222 /* pollset_kick_posix.h */; };
-		5F064E4CF19AC27AC752DBCF /* cpu_iphone.c in Sources */ = {isa = PBXBuildFile; fileRef = 3847E4E2D0286C716F9145EC /* cpu_iphone.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5F10400B3F8325D44EFC5966 /* GRXWriteable.h in Headers */ = {isa = PBXBuildFile; fileRef = 5986A0FA0E0C626F78D638F8 /* GRXWriteable.h */; };
-		5F19FF2E515C9F28074AFFED /* auth.c in Sources */ = {isa = PBXBuildFile; fileRef = 1584B1F0D4982A6EF7A952CF /* auth.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		5FD516B0EAB110F4148D24BF /* tcp_client.h in Headers */ = {isa = PBXBuildFile; fileRef = C72A49BF07D01F8088DFCC4E /* tcp_client.h */; };
-		60204E342D25978B7D157893 /* GRPCUnsecuredChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = 89EC88522CAA5913E134CC50 /* GRPCUnsecuredChannel.h */; };
-		603EF5F5078BD463469F076E /* GRXNSFastEnumerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 482DA575CF9599896DDAD7B8 /* GRXNSFastEnumerator.h */; };
-		60434E5E3B3A0EAD39D372C1 /* json_common.h in Headers */ = {isa = PBXBuildFile; fileRef = 042FE743DCBA5D7202467480 /* json_common.h */; };
-		607E5A500ADD7479CAAE382A /* call_log_batch.c in Sources */ = {isa = PBXBuildFile; fileRef = 0048A73AC7AEFB054999A639 /* call_log_batch.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		6080B0C7E2A5A52FA1D677C9 /* pollset_kick.h in Headers */ = {isa = PBXBuildFile; fileRef = C560E054B648B38F92F270A1 /* pollset_kick.h */; };
-		60C095460A7025F9AC8939BF /* kssl.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D0B5A3091E7FD86D36B6B83 /* kssl.h */; };
-		60FFC17BE16374689B130DCF /* noop_filter.h in Headers */ = {isa = PBXBuildFile; fileRef = 08871F1CD8513D34428A2933 /* noop_filter.h */; };
-		610E2A52B493C4E15FE28F20 /* ssl.h in Headers */ = {isa = PBXBuildFile; fileRef = BDBBDCF65961AB006C59723F /* ssl.h */; };
-		6278D9F6475CB5D1D35D083E /* metadata_buffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 53EC3A019D7830A5407236B1 /* metadata_buffer.h */; };
-		628065C5620AF0860374473F /* safestack.h in Headers */ = {isa = PBXBuildFile; fileRef = ED937D92BFD9EE65B9629994 /* safestack.h */; };
-		6287BDFB472DA149EC713CD0 /* GeneratedMessageBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 14493F5D45551AF7DD4DCFAF /* GeneratedMessageBuilder.m */; };
-		62BC895B4E7370CA00F25802 /* ssl3.h in Headers */ = {isa = PBXBuildFile; fileRef = C4E33A9259B1081D706CF1FB /* ssl3.h */; };
-		62C6E4E5A196F0D94D912B96 /* Empty.pb.h in Headers */ = {isa = PBXBuildFile; fileRef = 8CC2A8976E4F1AC52BF5A240 /* Empty.pb.h */; };
-		62DB0E0C751E11C80BC12325 /* metadata_buffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 53EC3A019D7830A5407236B1 /* metadata_buffer.h */; };
-		62E0F6CE424241907A562208 /* GRPCCompletionQueue.h in Headers */ = {isa = PBXBuildFile; fileRef = CCC7879745FA67A0A66A8C99 /* GRPCCompletionQueue.h */; };
-		62E6630301677198F6F92F41 /* ts.h in Headers */ = {isa = PBXBuildFile; fileRef = 3B2617A6F99ED60229A68989 /* ts.h */; };
-		62EBC4CAE0C0D7B7A49BFEAE /* iomgr_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 217C6A65943248F2BCDB480A /* iomgr_posix.h */; };
-		6303930E32CBD796B1DF01F2 /* endpoint.h in Headers */ = {isa = PBXBuildFile; fileRef = 3A715DFC320B831B7F891BDA /* endpoint.h */; };
-		632AF8F2EA328F465302A1C3 /* Test.pb.m in Sources */ = {isa = PBXBuildFile; fileRef = D6649667C01C50F65DEAA701 /* Test.pb.m */; };
-		635E5C52B50DE07C9FC9234D /* ConcreteExtensionField.h in Headers */ = {isa = PBXBuildFile; fileRef = B4F80BE028884A82874B10E2 /* ConcreteExtensionField.h */; };
-		63B56B8F51E813E9B52FA0A6 /* alarm_heap.c in Sources */ = {isa = PBXBuildFile; fileRef = ACD472E4027B901D3D4FD970 /* alarm_heap.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		64436C3EC75663B0B7D50E39 /* roots.pem in Resources */ = {isa = PBXBuildFile; fileRef = 7EAF225F4EC2DE6AFBD12319 /* roots.pem */; };
-		644B10007CB015C5EBA2AD06 /* wakeup_fd_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = DEB8C5F9370F106E90A84DEE /* wakeup_fd_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		646245FBC559D3D0471BB779 /* ssl23.h in Headers */ = {isa = PBXBuildFile; fileRef = 864E6908BB9552D10287236D /* ssl23.h */; };
-		646CEA9E8B0952644387BCA6 /* NSData+GRPC.h in Headers */ = {isa = PBXBuildFile; fileRef = 2BA4CFC5472009932AF3C45A /* NSData+GRPC.h */; };
-		6472E91CCF379498DB53BC27 /* ObjectivecDescriptor.pb.h in Headers */ = {isa = PBXBuildFile; fileRef = 8717869787DC3C09C31BE1A7 /* ObjectivecDescriptor.pb.h */; };
-		64839715C9DF2ED46106B63B /* GRPCMethodName+HTTP2Encoding.m in Sources */ = {isa = PBXBuildFile; fileRef = D9A61224E115AD9725AA7A5C /* GRPCMethodName+HTTP2Encoding.m */; };
-		64A0C3FF349EE51D6A092B0D /* algorithm.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B729130FD8D5696CE112A9B /* algorithm.h */; };
-		64C7955992EC970C547A9685 /* engine.h in Headers */ = {isa = PBXBuildFile; fileRef = D3CD8C351D901D0C065C8F26 /* engine.h */; };
-		655476B97AA03777031FB45A /* status.h in Headers */ = {isa = PBXBuildFile; fileRef = 699CCABB0EF4C0DBE9ECFF77 /* status.h */; };
-		6564106ED133943CCFF7E88E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E920231885948DD62874D4 /* Foundation.framework */; };
-		656B978EA6CE600D4D2146EC /* GRXWriter.h in Headers */ = {isa = PBXBuildFile; fileRef = B49754C36A8BF1B609D456E4 /* GRXWriter.h */; };
-		657F349E175A184E48D27365 /* parser.h in Headers */ = {isa = PBXBuildFile; fileRef = 686C0D5512A270C008BCF001 /* parser.h */; };
-		6597CEB38BFC0153D2844442 /* ts.h in Headers */ = {isa = PBXBuildFile; fileRef = 3B2617A6F99ED60229A68989 /* ts.h */; };
-		65A9F6CEBB88A634F31D1175 /* frame_settings.h in Headers */ = {isa = PBXBuildFile; fileRef = 844295EC51D3903941C395C4 /* frame_settings.h */; };
-		65CFBA550D533723A14702E2 /* init_unsecure.c in Sources */ = {isa = PBXBuildFile; fileRef = C3BFA648AC3F1804BED0C966 /* init_unsecure.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		65D0507E6E76B8D9FB88E5B9 /* pollset_windows.h in Headers */ = {isa = PBXBuildFile; fileRef = 97A3ACC219CC63F5D7FFD40C /* pollset_windows.h */; };
-		65EAA0BFC3BA655A767AE372 /* frame_ping.h in Headers */ = {isa = PBXBuildFile; fileRef = A12F885517EF15D46BA10711 /* frame_ping.h */; };
-		665004BDC08181FF0A5E87A3 /* Pods-SampleTests-OpenSSL-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = EDC427CF599E1939EB622B02 /* Pods-SampleTests-OpenSSL-dummy.m */; };
-		66C9A8A931D3C80974704EBC /* grpc_time.h in Headers */ = {isa = PBXBuildFile; fileRef = 1B3E6F352D4772D77EE612E8 /* grpc_time.h */; };
-		66E084446D410CBE4517EB8C /* GRXNSScalarEnumerator.m in Sources */ = {isa = PBXBuildFile; fileRef = CF0DFFDFFA35E0AE2EA0EF2F /* GRXNSScalarEnumerator.m */; };
-		680E27D325D4D688E9A9D2F4 /* x509_vfy.h in Headers */ = {isa = PBXBuildFile; fileRef = 1C038257C6440675A3A55C19 /* x509_vfy.h */; };
-		686E2DD2E2B13E3186978874 /* tcp_server_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 651FAE8C05B04EB09ADA44B1 /* tcp_server_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		689DC3C7D18EF420B853F842 /* slice_buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = D27CB2495D6BC2AAA54AD811 /* slice_buffer.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		68AFD9F87F86A7588969B836 /* http_filter.c in Sources */ = {isa = PBXBuildFile; fileRef = D40ADADFBB6DC95EC6855D77 /* http_filter.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		68BEE189722920A059304A94 /* wakeup_fd_pipe.c in Sources */ = {isa = PBXBuildFile; fileRef = BD1B20F8D2B7ADFD921FB0D4 /* wakeup_fd_pipe.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		68BF2564782DEF9A12920092 /* message_compress.h in Headers */ = {isa = PBXBuildFile; fileRef = BDFE2FD7D829909C8BA54CE5 /* message_compress.h */; };
-		68CD3C258CB1691E9CC83D1B /* Descriptor.pb.h in Headers */ = {isa = PBXBuildFile; fileRef = F60215710E44F2B63C712F67 /* Descriptor.pb.h */; };
-		68D97B6C69F2319955F6C425 /* tcp_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 0DBA6C9779F09A779661A077 /* tcp_posix.h */; };
-		69457F4C04864A9F566987D4 /* tcp_server_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 78285425C45A6AEF43616C14 /* tcp_server_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		69570C734AEE5C34D5F4B302 /* ObjectivecDescriptor.pb.h in Headers */ = {isa = PBXBuildFile; fileRef = 8717869787DC3C09C31BE1A7 /* ObjectivecDescriptor.pb.h */; };
-		69E211CE18ADB3795893EDA1 /* Message.h in Headers */ = {isa = PBXBuildFile; fileRef = 72D1F32F1133F699F7402689 /* Message.h */; };
-		69F749FB140675AB5267CD86 /* GRXNSBlockEnumerator.m in Sources */ = {isa = PBXBuildFile; fileRef = 8BD3A6A6436D217FF1D0401C /* GRXNSBlockEnumerator.m */; };
-		6A256A763980439EC3A6F80E /* thd_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 9A58ACD0EC03D5883ED79C0C /* thd_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		6A7072AF238F5F67B6F292B2 /* call_details.c in Sources */ = {isa = PBXBuildFile; fileRef = F72129AB470DEE3F62A8FC76 /* call_details.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		6A8A5ACB242484F4FA190B2B /* varint.c in Sources */ = {isa = PBXBuildFile; fileRef = D68E6DE85E57C95FF7A06516 /* varint.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		6AD29030DB73E1A07287337C /* GRXWriter+Immediate.m in Sources */ = {isa = PBXBuildFile; fileRef = 2FDC708E61C2626808625845 /* GRXWriter+Immediate.m */; };
-		6B50DF8EA851F4C6247CBE1A /* log_android.c in Sources */ = {isa = PBXBuildFile; fileRef = C9949F43CB5F853649D8411D /* log_android.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		6B9877EDCF87F1894992BE1E /* frame.h in Headers */ = {isa = PBXBuildFile; fileRef = 8EFAF709CD0D054FE4DA247A /* frame.h */; };
-		6BB6DE125C81981608BA6B3A /* WireFormat.m in Sources */ = {isa = PBXBuildFile; fileRef = 53F5707E31B5AB47CC439A2C /* WireFormat.m */; };
-		6C00B0AC2F44FD202412A69F /* objects.h in Headers */ = {isa = PBXBuildFile; fileRef = 9C270F924FADCC2633164DF6 /* objects.h */; };
-		6C18C1D5A5452817E615B35C /* GRXNSFastEnumerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 482DA575CF9599896DDAD7B8 /* GRXNSFastEnumerator.h */; };
-		6CCD1C9177C8C979E93BD977 /* dtls1.h in Headers */ = {isa = PBXBuildFile; fileRef = 66DC0069EFDA6F4ECCFA552F /* dtls1.h */; };
-		6CE4BDC94C6A749E45166E83 /* Pods-RemoteTest-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = C756CEE18F78C78DD0C12E49 /* Pods-RemoteTest-dummy.m */; };
-		6D159B0A6EF3487ED054AF68 /* ObjectivecDescriptor.pb.m in Sources */ = {isa = PBXBuildFile; fileRef = B8502DE6FC5E49568F49F41B /* ObjectivecDescriptor.pb.m */; };
-		6D3EFC28331FA343097D609C /* varint.c in Sources */ = {isa = PBXBuildFile; fileRef = D68E6DE85E57C95FF7A06516 /* varint.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		6D41E48A518BEA28AA004ACB /* md4.h in Headers */ = {isa = PBXBuildFile; fileRef = DB33BDC523FCA7A3F0E9B0CD /* md4.h */; };
-		6D9339EB99219A41F068115D /* MessageBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 7ACE587669F5BA2724FF401C /* MessageBuilder.h */; };
-		6DD5B76144B2D32037D66D1E /* hpack_parser.c in Sources */ = {isa = PBXBuildFile; fileRef = 05837CB7759CEE2E57F4CF48 /* hpack_parser.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		6E21AAA8E82C1C572183F0F7 /* useful.h in Headers */ = {isa = PBXBuildFile; fileRef = 4FE5B2BA4E0B8F46C08C6C30 /* useful.h */; };
-		6E427B93E5DDB90F81E5AF1E /* Empty.pb.m in Sources */ = {isa = PBXBuildFile; fileRef = 0A8D8B65642D968FE2489FB4 /* Empty.pb.m */; };
-		6E5313CC602372A146A09930 /* json_token.h in Headers */ = {isa = PBXBuildFile; fileRef = C5CA889C8CBB047E77DADB23 /* json_token.h */; };
-		6E6869B7B6998E2C02B5F246 /* census_tracing.h in Headers */ = {isa = PBXBuildFile; fileRef = 647DA385735244E30B6A372B /* census_tracing.h */; };
-		6E9E4974BCEB90D325571154 /* thd.c in Sources */ = {isa = PBXBuildFile; fileRef = D3D5A17BD6040A60D82D06EE /* thd.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		6EDE3617E3ADD5D8DC34B66E /* log_android.c in Sources */ = {isa = PBXBuildFile; fileRef = C9949F43CB5F853649D8411D /* log_android.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		6F06D77DC73ED72C9B9407B7 /* dh.h in Headers */ = {isa = PBXBuildFile; fileRef = 2AD05BAD508D25C95810DC9B /* dh.h */; };
-		6F2201E5FC1905F6E33D4ADA /* client_channel.c in Sources */ = {isa = PBXBuildFile; fileRef = 1651D4FA30764DB3A1FBB1A1 /* client_channel.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		6F223F3D2688C9D8C26DE12B /* ExtendableMessageBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = EEACE028BFE2BD1DE7EBA99C /* ExtendableMessageBuilder.h */; };
-		6F352FEF127D460A681E57B3 /* crypto.h in Headers */ = {isa = PBXBuildFile; fileRef = 2C3AB039FE4E2FE6E21DB4C3 /* crypto.h */; };
-		6F6C1DDF2A870C2FDA6C1C28 /* GRPCCall.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D137F3FDB5B92415B7AC31C /* GRPCCall.h */; };
-		6FA9341E984DFDD79EF46F90 /* log_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 3DB3834E86AC5CD0D96885D2 /* log_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		6FBF34691F3D24BA6566ABAC /* atm_win32.h in Headers */ = {isa = PBXBuildFile; fileRef = EC2C6FEDF5F8EC31C6D7EFDD /* atm_win32.h */; };
-		6FDAEEDDBAD316251B30B9F7 /* x509v3.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E60A65312367FE96A674F09 /* x509v3.h */; };
-		7028B8A66CE55A1E975C342A /* endpoint_pair_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 7AE82FDA9BFB3E31D4C5A7CC /* endpoint_pair_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		7057162B64833612474041FF /* GRXWriter+Transformations.m in Sources */ = {isa = PBXBuildFile; fileRef = 29AB49050027768AEA1E3811 /* GRXWriter+Transformations.m */; };
-		708A2D94B5B95A5E9D69E600 /* gen_hpack_tables.c in Sources */ = {isa = PBXBuildFile; fileRef = 9A03F86E69EB1ECD0C98F251 /* gen_hpack_tables.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		70A8348CC8FE3CA414E4764E /* ExtendableMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8ABA1AEF600162BC25FF26A0 /* ExtendableMessage.m */; };
-		70CD3E4BAE3597B6014E14C7 /* ssl_transport_security.h in Headers */ = {isa = PBXBuildFile; fileRef = 0904AAFE71C13FEBE2A2413D /* ssl_transport_security.h */; };
-		71242E6F8477B74775B09DED /* iomgr_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 08A0C7FFD858CF072C811E42 /* iomgr_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		71868CE61CB53A0A764AF928 /* json_string.c in Sources */ = {isa = PBXBuildFile; fileRef = 705F149853706AB963D20A0A /* json_string.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		71BB603FD6B1EBF688F099B7 /* http_client_filter.c in Sources */ = {isa = PBXBuildFile; fileRef = 3011D324672ADCCCB0DF1E04 /* http_client_filter.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		721562C0BFD0F73601EFA283 /* MutableField.m in Sources */ = {isa = PBXBuildFile; fileRef = 5D7E3645794B4FC5A28DB07A /* MutableField.m */; };
-		7227EB8D66046DD7D5C5E0DE /* frame_rst_stream.h in Headers */ = {isa = PBXBuildFile; fileRef = EB5E7B7C6915536C163CD40B /* frame_rst_stream.h */; };
-		726C21A5D55C9502FBB219A0 /* Pods-SampleTests-Route_guide-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 3694DD501F73DBD743A5082A /* Pods-SampleTests-Route_guide-dummy.m */; };
-		7294DE1ED74E07C393514D59 /* AbstractMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = BEFD30461D28E85BC4564977 /* AbstractMessage.m */; };
-		72CB5193E49AA6DDD096B0E7 /* transport_security.c in Sources */ = {isa = PBXBuildFile; fileRef = AA5ECB2F157C1EB5A59BA407 /* transport_security.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		72F2C6178957E81B1E13867F /* census_tracing.h in Headers */ = {isa = PBXBuildFile; fileRef = 647DA385735244E30B6A372B /* census_tracing.h */; };
-		72F89D474532987A2F12A84C /* cpu_iphone.c in Sources */ = {isa = PBXBuildFile; fileRef = 3847E4E2D0286C716F9145EC /* cpu_iphone.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		7323105FB840E1FD38568962 /* grpc_string.h in Headers */ = {isa = PBXBuildFile; fileRef = D16D6E15BB846B8D1CC63D37 /* grpc_string.h */; };
-		73423563C131297DE60209FE /* log_android.c in Sources */ = {isa = PBXBuildFile; fileRef = C9949F43CB5F853649D8411D /* log_android.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		7355A0EF168655B3D169677A /* env_linux.c in Sources */ = {isa = PBXBuildFile; fileRef = 3DB502DA27DE84D3006C0081 /* env_linux.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		735E76A20485C7B2419767C3 /* pollset_kick_windows.h in Headers */ = {isa = PBXBuildFile; fileRef = 731D0E4DC3F73AADCC27E534 /* pollset_kick_windows.h */; };
-		736F85F6444CD0613F73836D /* json_reader.h in Headers */ = {isa = PBXBuildFile; fileRef = C4A92081738D6E4F939A0969 /* json_reader.h */; };
-		737D008F49968BCDC6E6E93E /* http_client_filter.h in Headers */ = {isa = PBXBuildFile; fileRef = F2704E6980860EA1AB6A090F /* http_client_filter.h */; };
-		739F035E619FED2F41256B87 /* modes.h in Headers */ = {isa = PBXBuildFile; fileRef = D14D71D9C78FD141E88A2AB6 /* modes.h */; };
-		73A61033C517B64DB125EBB5 /* ExtensionRegistry.m in Sources */ = {isa = PBXBuildFile; fileRef = 9E9F6FBD9A20ABE0AB587479 /* ExtensionRegistry.m */; };
-		73B39CE5D99EA7638280CFDE /* tcp_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = BD2C5EA58859F38D05EE84DC /* tcp_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		73D29B707B9E6705C56C058B /* GeneratedMessageBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 14493F5D45551AF7DD4DCFAF /* GeneratedMessageBuilder.m */; };
-		73DF7C893CCB33704D20F291 /* iomgr.h in Headers */ = {isa = PBXBuildFile; fileRef = F0CAA4D057B933B55CDDA440 /* iomgr.h */; };
-		74BA60A61FACFF2BCF525380 /* census_rpc_stats.c in Sources */ = {isa = PBXBuildFile; fileRef = FCDEC2AFE402D37148992805 /* census_rpc_stats.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		74BC45DE6A0426FDBA98A1F8 /* ExtensionRegistry.m in Sources */ = {isa = PBXBuildFile; fileRef = 9E9F6FBD9A20ABE0AB587479 /* ExtensionRegistry.m */; };
-		7513DCB3E1841DE44664D840 /* iomgr_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 5B9267052B252C28261605A1 /* iomgr_internal.h */; };
-		7538A7AD1D75764C440EF523 /* alarm_heap.h in Headers */ = {isa = PBXBuildFile; fileRef = 1D8BEF54D1799D651A2C427A /* alarm_heap.h */; };
-		755270F9A57F0C2FBDC05382 /* frame_data.c in Sources */ = {isa = PBXBuildFile; fileRef = F93ADDC6556CB4F0A0CCE308 /* frame_data.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		75661DE702EA45242D058BC0 /* trace.h in Headers */ = {isa = PBXBuildFile; fileRef = 909FB597BDA176D2981D3026 /* trace.h */; };
-		75935DBB4C25EA3156E1A14B /* time.c in Sources */ = {isa = PBXBuildFile; fileRef = A70DA7CEE54302BED2248E14 /* time.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		75B097884C723B44008A64E3 /* GRPCUnsecuredChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = 89EC88522CAA5913E134CC50 /* GRPCUnsecuredChannel.h */; };
-		763F363043F8FE2DF71BF182 /* tls_pthread.h in Headers */ = {isa = PBXBuildFile; fileRef = DE0442F9E24E5B99169CC8E1 /* tls_pthread.h */; };
-		7668140A11E783086E29430C /* thd_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = A2D0C9AF67318A88A271B329 /* thd_internal.h */; };
-		767C866B8A87D5E07F99022F /* tls_pthread.h in Headers */ = {isa = PBXBuildFile; fileRef = DE0442F9E24E5B99169CC8E1 /* tls_pthread.h */; };
-		76BBCD07DF0529D3BF7ECE3D /* fd_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = E1F91FEB24408BC30186C5CC /* fd_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		76C12606D04D021EF8667882 /* GRPCCall.m in Sources */ = {isa = PBXBuildFile; fileRef = 9CDD140DA194B5246113EDC8 /* GRPCCall.m */; };
-		76E1C231BB3B59544F53DC50 /* dso.h in Headers */ = {isa = PBXBuildFile; fileRef = D97B6A05C9BFC4CF3BFAF3F0 /* dso.h */; };
-		77075899E620FC555DB747BA /* sockaddr_utils.c in Sources */ = {isa = PBXBuildFile; fileRef = 3074D0C70E2E858E523A6F83 /* sockaddr_utils.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		7788F36B4C1FBF01B32A7F13 /* timeout_encoding.c in Sources */ = {isa = PBXBuildFile; fileRef = 5621298E280D2F357ED9DBDF /* timeout_encoding.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		778F3F70525F165B1C00BB46 /* alarm.h in Headers */ = {isa = PBXBuildFile; fileRef = 95CA75B4F8A4139C4B69A501 /* alarm.h */; };
-		77A37CD8DC6BB0031123E547 /* asn1.h in Headers */ = {isa = PBXBuildFile; fileRef = 6CB0C4DA3194B77529082D92 /* asn1.h */; };
-		77CEAFC01BC2E754D2F37D3C /* census_rpc_stats.h in Headers */ = {isa = PBXBuildFile; fileRef = EFCA73F5E80AE5E7C18BAE5F /* census_rpc_stats.h */; };
-		77DC2B5E8E5B403455B9BD9B /* Utilities.h in Headers */ = {isa = PBXBuildFile; fileRef = D34EDADD3A7795B3D4C0AF58 /* Utilities.h */; };
-		78064F6AB0DB1F4772934BCD /* byte_buffer.h in Headers */ = {isa = PBXBuildFile; fileRef = CF4BB6900EA7F1317FE1A1D5 /* byte_buffer.h */; };
-		7814EA18A20FFF5285C56B45 /* file.c in Sources */ = {isa = PBXBuildFile; fileRef = 78E17449C6B53B05841EC6DA /* file.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		78253CED659EEAAA2BCB73CF /* pollset_kick_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 23DCBAC0F303E8BFDDB8B222 /* pollset_kick_posix.h */; };
-		782972AF7F3F35A4A5E38A83 /* NSEnumerator+GRXUtil.m in Sources */ = {isa = PBXBuildFile; fileRef = 3BF40F941CC1E13D1EC0106F /* NSEnumerator+GRXUtil.m */; };
-		78F89AB25C5DCFCF32078CFD /* security_connector.c in Sources */ = {isa = PBXBuildFile; fileRef = FDD2798B42FADD235D062C79 /* security_connector.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		793479DDFF81E790DBD1DABB /* Pods-Sample-ProtocolBuffers-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A9863428D20C26F1F6EDBEF9 /* Pods-Sample-ProtocolBuffers-dummy.m */; };
-		7935908D5E4914029F901F78 /* CodedInputStream.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D8B2ADAC76C56837BCD6E3F /* CodedInputStream.h */; };
-		79959F897305F44D44D78440 /* transport.h in Headers */ = {isa = PBXBuildFile; fileRef = 4E54CB0C0280C270C850A4DE /* transport.h */; };
-		79A46DBE416A4524D48CCE29 /* md4.h in Headers */ = {isa = PBXBuildFile; fileRef = DB33BDC523FCA7A3F0E9B0CD /* md4.h */; };
-		79F1B26A01CB179475C54A81 /* atm_gcc_atomic.h in Headers */ = {isa = PBXBuildFile; fileRef = 32A314F8B2AB1E9F39C1B0A4 /* atm_gcc_atomic.h */; };
-		79F5B6B5240F89BED04FA731 /* ForwardDeclarations.h in Headers */ = {isa = PBXBuildFile; fileRef = 8DBF9152E4657D3D9660BD87 /* ForwardDeclarations.h */; };
-		7A14DF5392476FCF71493217 /* secure_endpoint.h in Headers */ = {isa = PBXBuildFile; fileRef = E83BCAEE168FF4FC16653717 /* secure_endpoint.h */; };
-		7A435236FAA40C3CF4E650A7 /* roots.pem in Resources */ = {isa = PBXBuildFile; fileRef = 7EAF225F4EC2DE6AFBD12319 /* roots.pem */; };
-		7B2CF3143F417ACDC99DEC81 /* socket_utils_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = EF906AB8AF22A3D40E284C93 /* socket_utils_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		7B55DBB89943E6328F0E17D5 /* time.c in Sources */ = {isa = PBXBuildFile; fileRef = A70DA7CEE54302BED2248E14 /* time.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		7B83BFB40B6A0E4EC6A95F4B /* x509.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C07549EA6437C110EB28620 /* x509.h */; };
-		7B97A44D3B26694EA2A96882 /* Messages.pb.h in Headers */ = {isa = PBXBuildFile; fileRef = 0720FBDE49BBBBAA7B3E0DEF /* Messages.pb.h */; };
-		7BB647108E3B2083DD1D7098 /* atm.h in Headers */ = {isa = PBXBuildFile; fileRef = DE2A0ED4DDBEC3E6D84D16F3 /* atm.h */; };
-		7BFB1FAF7B8ED71D93665B53 /* tcp_server.h in Headers */ = {isa = PBXBuildFile; fileRef = 39490C9911F760ABCE716E20 /* tcp_server.h */; };
-		7C2CA14B84E54399513B55F9 /* client.c in Sources */ = {isa = PBXBuildFile; fileRef = 0886F5B8103F7797CD449DD8 /* client.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		7C4138C23B090DE729A91757 /* ExtendableMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8ABA1AEF600162BC25FF26A0 /* ExtendableMessage.m */; };
-		7C685FA15E85B5C52564CD00 /* camellia.h in Headers */ = {isa = PBXBuildFile; fileRef = 66F71AE62EB572BA6DD5A32A /* camellia.h */; };
-		7C972F9BC6CA93AEE618AA58 /* PBArray.h in Headers */ = {isa = PBXBuildFile; fileRef = E73432FD3175A62327850971 /* PBArray.h */; };
-		7CAFE13BAABE816E00AB24F5 /* http2_errors.h in Headers */ = {isa = PBXBuildFile; fileRef = 7841A5D53D143AB23C94D8F7 /* http2_errors.h */; };
-		7CCD8BFFBAED2CA628776521 /* pollset_multipoller_with_epoll.c in Sources */ = {isa = PBXBuildFile; fileRef = 6D9F7A8D1118F332DA3364C4 /* pollset_multipoller_with_epoll.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		7CE12C0725708432DF8DDCA9 /* channel_create.c in Sources */ = {isa = PBXBuildFile; fileRef = 93FBD738A8069598A3816DB1 /* channel_create.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		7CFD71D499B861A4233CEA81 /* AbstractMessageBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 462FC4958D1DC02236910099 /* AbstractMessageBuilder.h */; };
-		7D0C0BD80454961A6477B91B /* parser.c in Sources */ = {isa = PBXBuildFile; fileRef = 5FB603E306CD89ADB1CE6511 /* parser.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		7DA1D6A040FCF0C94B1C78BD /* host_port.h in Headers */ = {isa = PBXBuildFile; fileRef = FE16C4FD70CFDC5F8E356C47 /* host_port.h */; };
-		7DD237478BBB5BA10C3EF69B /* pqueue.h in Headers */ = {isa = PBXBuildFile; fileRef = 61246E9F7BB79C02CBDC3F0A /* pqueue.h */; };
-		7E13FE45D86DD1BFB68D879E /* slice.c in Sources */ = {isa = PBXBuildFile; fileRef = F0DF5F5361D504902939C3F3 /* slice.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		7E21FA323CA980BE3B7B597E /* Descriptor.pb.m in Sources */ = {isa = PBXBuildFile; fileRef = FE48EF7E57B8F2167E1B0135 /* Descriptor.pb.m */; };
-		7E388FBD962A6337B9600FE6 /* fake_transport_security.h in Headers */ = {isa = PBXBuildFile; fileRef = FF56DC4FC3FC0F8B7F75A1A8 /* fake_transport_security.h */; };
-		7EF1BC523A6EF5D7AAC80733 /* pollset_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F86CF370886416DAC191E31 /* pollset_posix.h */; };
-		7EFB16C02C644230E5692CAE /* pollset.h in Headers */ = {isa = PBXBuildFile; fileRef = E6A4F7BF5200983A0464A000 /* pollset.h */; };
-		7F3841CB75E33DAA3ED3A320 /* byte_buffer_reader.c in Sources */ = {isa = PBXBuildFile; fileRef = 1318B504F6D7B3052AAD4DC4 /* byte_buffer_reader.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		7FDDC76B991EE7F5E4FA5B9F /* buffer.h in Headers */ = {isa = PBXBuildFile; fileRef = F3CD1C438363227E2959C8EC /* buffer.h */; };
-		7FE20F056C69813A6794B5E1 /* Descriptor.pb.h in Headers */ = {isa = PBXBuildFile; fileRef = F60215710E44F2B63C712F67 /* Descriptor.pb.h */; };
-		80E8197A3DFD75727A94C329 /* json_reader.h in Headers */ = {isa = PBXBuildFile; fileRef = C4A92081738D6E4F939A0969 /* json_reader.h */; };
-		813588A9FCBE6059546212D8 /* client_channel.c in Sources */ = {isa = PBXBuildFile; fileRef = 1651D4FA30764DB3A1FBB1A1 /* client_channel.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		8143DB79B8F463FE301A592C /* asn1_mac.h in Headers */ = {isa = PBXBuildFile; fileRef = F5BEEBA60AE917954B96425A /* asn1_mac.h */; };
-		814E54868B1685C55618BB55 /* host_port.c in Sources */ = {isa = PBXBuildFile; fileRef = 43DF9A60A5B869B8B2942C8A /* host_port.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		8151A31DBB505BD8970B52B0 /* AbstractMessageBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = EDDBC232C7BD17F4B5938A72 /* AbstractMessageBuilder.m */; };
-		81655F966C5B805F738DC99D /* WireFormat.h in Headers */ = {isa = PBXBuildFile; fileRef = 49779DB1C5A2F5CFEBAAFEF9 /* WireFormat.h */; };
-		81A0D47B97DFEE1BB12AA513 /* byte_buffer_reader.h in Headers */ = {isa = PBXBuildFile; fileRef = 5110D7E251E644EC6D7C29CA /* byte_buffer_reader.h */; };
-		8209BEE52CF1F20B4D399508 /* log.h in Headers */ = {isa = PBXBuildFile; fileRef = AC20E7974FC6D45F39E2E3F6 /* log.h */; };
-		822F538A2840A8AC3DDFBA6B /* secure_transport_setup.c in Sources */ = {isa = PBXBuildFile; fileRef = E74322EC3E06EC9CDFE14671 /* secure_transport_setup.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		82364DF8B545166D01E0EBC2 /* Message.h in Headers */ = {isa = PBXBuildFile; fileRef = 72D1F32F1133F699F7402689 /* Message.h */; };
-		82469215CEEDA4AB5134B9B4 /* ssl_transport_security.c in Sources */ = {isa = PBXBuildFile; fileRef = BD44797A3981F425F27C8EAF /* ssl_transport_security.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		82D8365B8056AE8ED9515A65 /* Utilities.m in Sources */ = {isa = PBXBuildFile; fileRef = 385180B3943DC40F19F8A085 /* Utilities.m */; };
-		831A7D4F9CA723250F9464E1 /* pollset_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F86CF370886416DAC191E31 /* pollset_posix.h */; };
-		832CF8BB3C62C5075A4A007A /* stack.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B526FC86BD71B2D8E60A26E /* stack.h */; };
-		832D6919157D219FAC4736D1 /* GRXWriteable.h in Headers */ = {isa = PBXBuildFile; fileRef = 5986A0FA0E0C626F78D638F8 /* GRXWriteable.h */; };
-		832F65601540D2527B4FCBFD /* tls.h in Headers */ = {isa = PBXBuildFile; fileRef = 02B8069D19729724DF1290A0 /* tls.h */; };
-		83CE5F27A9533D1B9F132C84 /* Route_guide.pb.m in Sources */ = {isa = PBXBuildFile; fileRef = DC73D1CE591B9BA80D367B85 /* Route_guide.pb.m */; };
-		83DA0EF392288E6AFA7152A1 /* e_os2.h in Headers */ = {isa = PBXBuildFile; fileRef = A98FA49795A8DD446B56C330 /* e_os2.h */; };
-		83F7D7D1EB9336FA2F1DB4E0 /* frame_rst_stream.h in Headers */ = {isa = PBXBuildFile; fileRef = EB5E7B7C6915536C163CD40B /* frame_rst_stream.h */; };
-		83FBA20077C3A47E28E5306C /* hpack_parser.h in Headers */ = {isa = PBXBuildFile; fileRef = EA3AA73E2696645C327CC231 /* hpack_parser.h */; };
-		83FF5B118BFDFADB68B0F6B7 /* json_writer.c in Sources */ = {isa = PBXBuildFile; fileRef = 89BF934C96AB0AB0CBA4E05A /* json_writer.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		841573E1709B6ADB7394DE07 /* init_secure.c in Sources */ = {isa = PBXBuildFile; fileRef = BE7781256B45578CE91A01F0 /* init_secure.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		8476190C228C798207E31FFC /* iomgr_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 217C6A65943248F2BCDB480A /* iomgr_posix.h */; };
-		84BCC2CF676675BE8C014B91 /* log_linux.c in Sources */ = {isa = PBXBuildFile; fileRef = 0B45E5CE899602BFD5F23E6C /* log_linux.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		84CEBD615DD394484DD90FF8 /* alarm.h in Headers */ = {isa = PBXBuildFile; fileRef = 95CA75B4F8A4139C4B69A501 /* alarm.h */; };
-		84DF4F5B936945A23B92C0A1 /* frame_window_update.c in Sources */ = {isa = PBXBuildFile; fileRef = A44141A91AFD802B21F301D1 /* frame_window_update.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		84F065983DD139791E027442 /* time_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = B0EF8D6D45E898F9B98D43C5 /* time_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		850D5C3C63D960D3A67CA317 /* slice.c in Sources */ = {isa = PBXBuildFile; fileRef = F0DF5F5361D504902939C3F3 /* slice.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		854ABE4E0316F4C018C12D33 /* event_string.h in Headers */ = {isa = PBXBuildFile; fileRef = A9F7B929E2D1994F8045C8EB /* event_string.h */; };
-		85C48528BEB3085488104DEF /* pollset.h in Headers */ = {isa = PBXBuildFile; fileRef = E6A4F7BF5200983A0464A000 /* pollset.h */; };
-		85FA0B896484C1EB1BE453C5 /* huffsyms.c in Sources */ = {isa = PBXBuildFile; fileRef = 66A49F3E07E65E9D23B71E15 /* huffsyms.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		85FE9095F8FB2DAE910B1136 /* wakeup_fd_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 595E044C7552A98C14435284 /* wakeup_fd_posix.h */; };
-		86108ECC5F31DDD28A97804F /* wakeup_fd_eventfd.c in Sources */ = {isa = PBXBuildFile; fileRef = E8E8F6A5EC1411544D5BB809 /* wakeup_fd_eventfd.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		86487312CC8E4DB1C433E3CE /* lhash.h in Headers */ = {isa = PBXBuildFile; fileRef = 7E9520E20DCD01D0DCC65855 /* lhash.h */; };
-		8684F98F697782732F186D52 /* thd.h in Headers */ = {isa = PBXBuildFile; fileRef = 68E76147B6FA250C2CD4F10F /* thd.h */; };
-		873773B633AD86086A266B8B /* census_filter.h in Headers */ = {isa = PBXBuildFile; fileRef = A55B75B919DE7DC2F5B2A967 /* census_filter.h */; };
-		876220A8C4662399DB3D8812 /* sync_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 3E4109CF85B04479E8DC8D08 /* sync_posix.h */; };
-		8777E974A316747B2022FFDF /* auth.c in Sources */ = {isa = PBXBuildFile; fileRef = 1584B1F0D4982A6EF7A952CF /* auth.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		8780A793FC2BA639D7D9D684 /* transport_security_interface.h in Headers */ = {isa = PBXBuildFile; fileRef = AA5D910551A70909CF207903 /* transport_security_interface.h */; };
-		87963BD4DE0E32A80662428B /* srtp.h in Headers */ = {isa = PBXBuildFile; fileRef = 34247B31A4DACE7069B17B75 /* srtp.h */; };
-		88146CCA5978B54D84A21772 /* socket_windows.h in Headers */ = {isa = PBXBuildFile; fileRef = 2A7B4BAB4502F95548251FC6 /* socket_windows.h */; };
-		8840F69E7192A89783973C8A /* stack.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B526FC86BD71B2D8E60A26E /* stack.h */; };
-		8875B93A57F70581B3657737 /* obj_mac.h in Headers */ = {isa = PBXBuildFile; fileRef = 403CDBC827DC75263866DD1F /* obj_mac.h */; };
-		88C30CCE57D8E2F0B886FC2D /* ExtensionRegistry.h in Headers */ = {isa = PBXBuildFile; fileRef = 6084991EB3F40BB862678A56 /* ExtensionRegistry.h */; };
-		892BF5C44CC068E340A23CB3 /* ssl.h in Headers */ = {isa = PBXBuildFile; fileRef = BDBBDCF65961AB006C59723F /* ssl.h */; };
-		898213A0CF8CF24856E4D94F /* trace.c in Sources */ = {isa = PBXBuildFile; fileRef = B2BBB2419D8C53FE86B50785 /* trace.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		899E90B39A4047DBAE1C8069 /* Test.pb.h in Headers */ = {isa = PBXBuildFile; fileRef = 98F217A4FEA5EA5AF56839E3 /* Test.pb.h */; };
-		89BA53B5AE803AB9BF492F7C /* fake_transport_security.c in Sources */ = {isa = PBXBuildFile; fileRef = B7DE7323A46EAC8DE3C841CC /* fake_transport_security.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		89BCB8FDFE5090254167C008 /* event_string.c in Sources */ = {isa = PBXBuildFile; fileRef = 77DFD8B1DA08AC123ACD7FB6 /* event_string.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		8A01A3D08B77D0A159F7C270 /* secure_endpoint.c in Sources */ = {isa = PBXBuildFile; fileRef = DA0324B7B188B50CC09EE455 /* secure_endpoint.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		8A382593654D4B140895FBF1 /* fake_transport_security.c in Sources */ = {isa = PBXBuildFile; fileRef = B7DE7323A46EAC8DE3C841CC /* fake_transport_security.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		8A85E6EB2E3C9E528EEDB285 /* dh.h in Headers */ = {isa = PBXBuildFile; fileRef = 2AD05BAD508D25C95810DC9B /* dh.h */; };
-		8AA65551FF954CF0D3765A92 /* GRXImmediateWriter.h in Headers */ = {isa = PBXBuildFile; fileRef = 7A9AC18A46591A7BDE09299C /* GRXImmediateWriter.h */; };
-		8AB7E11ADD774AE187084D7A /* modes.h in Headers */ = {isa = PBXBuildFile; fileRef = D14D71D9C78FD141E88A2AB6 /* modes.h */; };
-		8B301635ECA4487000C2DBBF /* json_token.h in Headers */ = {isa = PBXBuildFile; fileRef = C5CA889C8CBB047E77DADB23 /* json_token.h */; };
-		8B3A6E0158AAA3BDCA6D96BC /* idea.h in Headers */ = {isa = PBXBuildFile; fileRef = 24B4134291477B3C306D0F9B /* idea.h */; };
-		8B6A9A42BA8C759D9F37B87E /* metadata_array.c in Sources */ = {isa = PBXBuildFile; fileRef = A47DCD9141F1ECF8A77694BF /* metadata_array.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		8B77005FF7E773A4C7FA875A /* ecdh.h in Headers */ = {isa = PBXBuildFile; fileRef = 0385FDCE365D14934891746C /* ecdh.h */; };
-		8B855C1D072A2A9B5B8C03D9 /* NSDictionary+GRPC.h in Headers */ = {isa = PBXBuildFile; fileRef = 908890BFD97AE08513208B3C /* NSDictionary+GRPC.h */; };
-		8BDA6679652E50307C5B454B /* grpc_http.h in Headers */ = {isa = PBXBuildFile; fileRef = 925E27ADE0C72FDA338F485E /* grpc_http.h */; };
-		8C38096C3265C4945E741752 /* frame_ping.c in Sources */ = {isa = PBXBuildFile; fileRef = 4FE4F605AA3C77DD8BC5A69E /* frame_ping.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		8C5A9F992E7C489D7E1860DD /* asn1_mac.h in Headers */ = {isa = PBXBuildFile; fileRef = F5BEEBA60AE917954B96425A /* asn1_mac.h */; };
-		8C601100A1429182C6BF5435 /* err.h in Headers */ = {isa = PBXBuildFile; fileRef = FFE50BB7E184EB895E72ED5B /* err.h */; };
-		8C9E0E10F9D4C92F3A8453B5 /* socket_utils_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 2D925E56B6B03563B89F6838 /* socket_utils_posix.h */; };
-		8D04F666910F49E488EA549E /* json_common.h in Headers */ = {isa = PBXBuildFile; fileRef = 042FE743DCBA5D7202467480 /* json_common.h */; };
-		8D54635FC41FC6C1010CBE78 /* string_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 77C6558BBFF31326983320B0 /* string_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		8DFA633ADEFE3B788B81D22F /* client_channel.c in Sources */ = {isa = PBXBuildFile; fileRef = 1651D4FA30764DB3A1FBB1A1 /* client_channel.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		8E2BE66E19B1C6F07EBDB859 /* endpoint_pair.h in Headers */ = {isa = PBXBuildFile; fileRef = 0280D6D5B1B2FD6DADF0EBB8 /* endpoint_pair.h */; };
-		8E2C00E45CE170E2A2355783 /* httpcli.h in Headers */ = {isa = PBXBuildFile; fileRef = 208DF1BA4BA8F949D6D903B3 /* httpcli.h */; };
-		8E2E44E7D8B0EBE838823C9A /* GRXWriter+Transformations.m in Sources */ = {isa = PBXBuildFile; fileRef = 29AB49050027768AEA1E3811 /* GRXWriter+Transformations.m */; };
-		8E3972A472829D9E94BF748F /* endpoint.c in Sources */ = {isa = PBXBuildFile; fileRef = AF99D421A9B44F389FD75BAB /* endpoint.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		8E56A8AFA67EA24E3F64CBFC /* grpc_time.h in Headers */ = {isa = PBXBuildFile; fileRef = 1B3E6F352D4772D77EE612E8 /* grpc_time.h */; };
-		8E68EE377D3051E0B20AD2E5 /* camellia.h in Headers */ = {isa = PBXBuildFile; fileRef = 66F71AE62EB572BA6DD5A32A /* camellia.h */; };
-		8E94966B0C8A24A33FACDB30 /* murmur_hash.c in Sources */ = {isa = PBXBuildFile; fileRef = 44F9218A56E4EBCEED716673 /* murmur_hash.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		8EC0A90BAB3F7310A199E7B8 /* channel.c in Sources */ = {isa = PBXBuildFile; fileRef = B542D487162588CF33BE01BB /* channel.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		8ECE8689819A707F71AC50EA /* GRPCMethodName.m in Sources */ = {isa = PBXBuildFile; fileRef = DDD83A7A2AB0AEB0F48C7947 /* GRPCMethodName.m */; };
-		8EDC979BBB631A85EC447CA2 /* ConcreteExtensionField.m in Sources */ = {isa = PBXBuildFile; fileRef = B504F82835C2F0A602CA44BC /* ConcreteExtensionField.m */; };
-		8F6ECEAF47EBD3948F238AB8 /* useful.h in Headers */ = {isa = PBXBuildFile; fileRef = 4FE5B2BA4E0B8F46C08C6C30 /* useful.h */; };
-		8FD67A02EF935C5FA41B4960 /* log_linux.c in Sources */ = {isa = PBXBuildFile; fileRef = 0B45E5CE899602BFD5F23E6C /* log_linux.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		9018845A06C489373F22DC39 /* completion_queue.h in Headers */ = {isa = PBXBuildFile; fileRef = 1016E5B38DF8AC3855975C2F /* completion_queue.h */; };
-		901A3CB3025F5E0A9EA637B4 /* transport.c in Sources */ = {isa = PBXBuildFile; fileRef = C9B0549BC9D5CEE7FFDBF499 /* transport.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		903CDC70E73A173EC65C0778 /* frame_goaway.c in Sources */ = {isa = PBXBuildFile; fileRef = AC79A8E7153E7E4206A6E0F6 /* frame_goaway.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		905420DD1311E1C5E6B07AC5 /* http_server_filter.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A5A429ED5EC2E7EB0146FFB /* http_server_filter.h */; };
-		905ED50086764028ABAC0FEA /* MessageBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 7ACE587669F5BA2724FF401C /* MessageBuilder.h */; };
-		9081355EE210BD3EEF404B5C /* pkcs7.h in Headers */ = {isa = PBXBuildFile; fileRef = 0A146135B811250D1914B47F /* pkcs7.h */; };
-		9097DB58A7116A6BB3FDFB7D /* ripemd.h in Headers */ = {isa = PBXBuildFile; fileRef = 390B0B49E8EFA5AAB384B2CC /* ripemd.h */; };
-		90A82D83BCEA3CC7FB0BF080 /* engine.h in Headers */ = {isa = PBXBuildFile; fileRef = D3CD8C351D901D0C065C8F26 /* engine.h */; };
-		90B24EA0787CA9E6D2E94231 /* cast.h in Headers */ = {isa = PBXBuildFile; fileRef = BE4BCA754104BF9BFE6B27DB /* cast.h */; };
-		90D3307C59BD8A42F05710DF /* NSData+GRPC.h in Headers */ = {isa = PBXBuildFile; fileRef = 2BA4CFC5472009932AF3C45A /* NSData+GRPC.h */; };
-		90D44C95A978D44B5D351532 /* grpc_string.h in Headers */ = {isa = PBXBuildFile; fileRef = D16D6E15BB846B8D1CC63D37 /* grpc_string.h */; };
-		90DC37D6D537C8B95DE7B6CB /* host_port.h in Headers */ = {isa = PBXBuildFile; fileRef = FE16C4FD70CFDC5F8E356C47 /* host_port.h */; };
-		90E57473242C45E0B09D2C53 /* surface_trace.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B7E488CD9E640DE9592977E /* surface_trace.h */; };
-		913C162208A9E3C6DD57496C /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E920231885948DD62874D4 /* Foundation.framework */; };
-		915A2AF95EE2DA86874840C4 /* GRXWriteable.h in Headers */ = {isa = PBXBuildFile; fileRef = 5986A0FA0E0C626F78D638F8 /* GRXWriteable.h */; };
-		91B7A40A14BDCC44B9640E77 /* server.c in Sources */ = {isa = PBXBuildFile; fileRef = 71F8B05C67B51C33A39FD277 /* server.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		91E6A47FBA37AF9D4879486D /* CodedOutputStream.m in Sources */ = {isa = PBXBuildFile; fileRef = 266267E08A28C2BDB27AB4B1 /* CodedOutputStream.m */; };
-		92444EC7E7F2E20E2133E1CD /* GRXNSScalarEnumerator.m in Sources */ = {isa = PBXBuildFile; fileRef = CF0DFFDFFA35E0AE2EA0EF2F /* GRXNSScalarEnumerator.m */; };
-		9259380D5B74DB52F409F1E7 /* hpack_parser.c in Sources */ = {isa = PBXBuildFile; fileRef = 05837CB7759CEE2E57F4CF48 /* hpack_parser.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		925D5494172C21FEA23C942C /* GRPCMethodName.m in Sources */ = {isa = PBXBuildFile; fileRef = DDD83A7A2AB0AEB0F48C7947 /* GRPCMethodName.m */; };
-		92BF6E7A7221622AAC82A4E5 /* Test.pb.h in Headers */ = {isa = PBXBuildFile; fileRef = 98F217A4FEA5EA5AF56839E3 /* Test.pb.h */; };
-		92D5C7A254E483D8FAAE7101 /* rsa.h in Headers */ = {isa = PBXBuildFile; fileRef = 3F919F2BECD5316CAE51EFB7 /* rsa.h */; };
-		92ED9C3E1E859C553006EF8E /* tcp_server_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 78285425C45A6AEF43616C14 /* tcp_server_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		92EFFD393C4D3F797A9386E7 /* Route_guide.pb.m in Sources */ = {isa = PBXBuildFile; fileRef = DC73D1CE591B9BA80D367B85 /* Route_guide.pb.m */; };
-		93766E7A2118F8C0EAE627BD /* iomgr.h in Headers */ = {isa = PBXBuildFile; fileRef = F0CAA4D057B933B55CDDA440 /* iomgr.h */; };
-		938EDB82A665F45D500AAB46 /* secure_transport_setup.c in Sources */ = {isa = PBXBuildFile; fileRef = E74322EC3E06EC9CDFE14671 /* secure_transport_setup.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		93A049B988285C416453FC27 /* channel.h in Headers */ = {isa = PBXBuildFile; fileRef = 901652CA4B573F7BAA191043 /* channel.h */; };
-		93D3CF2B8101480C45AAA51F /* server_chttp2.c in Sources */ = {isa = PBXBuildFile; fileRef = 7E89280021B8CBC7D987AD06 /* server_chttp2.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		93DECD6AE4B13252577709FE /* blowfish.h in Headers */ = {isa = PBXBuildFile; fileRef = D17935EFCDE731E09000DF66 /* blowfish.h */; };
-		940AAD05D52FAFB4CC7FBB19 /* ssl23.h in Headers */ = {isa = PBXBuildFile; fileRef = 864E6908BB9552D10287236D /* ssl23.h */; };
-		943A1870CBED97335E1C936C /* ecdh.h in Headers */ = {isa = PBXBuildFile; fileRef = 0385FDCE365D14934891746C /* ecdh.h */; };
-		9486B2666E2C15E3828DB05A /* Descriptor.pb.m in Sources */ = {isa = PBXBuildFile; fileRef = FE48EF7E57B8F2167E1B0135 /* Descriptor.pb.m */; };
-		94B5FFC72C2D36DE02FB0835 /* timeout_encoding.c in Sources */ = {isa = PBXBuildFile; fileRef = 5621298E280D2F357ED9DBDF /* timeout_encoding.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		9503F953134FC0679AFACDB7 /* sha.h in Headers */ = {isa = PBXBuildFile; fileRef = CE05CF8E2EC1CA3AB87C808F /* sha.h */; };
-		955B528B6195DEDC43F13F55 /* bio.h in Headers */ = {isa = PBXBuildFile; fileRef = C651F351648FAA6E7EDD7F22 /* bio.h */; };
-		957CAFD046FFE6DFD5E10439 /* resolve_address_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 25CC1535787632E504407E0E /* resolve_address_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		95861687A87CC325C6BC488E /* time_averaged_stats.h in Headers */ = {isa = PBXBuildFile; fileRef = F3AA748BBA2B63D9C996FC2B /* time_averaged_stats.h */; };
-		95B511B8899ECA8EA9EF4B69 /* ssl_transport_security.h in Headers */ = {isa = PBXBuildFile; fileRef = 0904AAFE71C13FEBE2A2413D /* ssl_transport_security.h */; };
-		95DB78CC8B83E3C350988305 /* ecdh.h in Headers */ = {isa = PBXBuildFile; fileRef = 0385FDCE365D14934891746C /* ecdh.h */; };
-		95EB8E955536F86F41ED6F28 /* file_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 545C3120FFA2450C7CE9E6DA /* file_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		95F35CEB3BB2E7F08D54AC9A /* socket_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = E7BC6ECD4926C4D722CA46C9 /* socket_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		961172B19A8AC92B8FB9ED99 /* transport_security_interface.h in Headers */ = {isa = PBXBuildFile; fileRef = AA5D910551A70909CF207903 /* transport_security_interface.h */; };
-		963BA0AD0902A9035B203E24 /* asn1t.h in Headers */ = {isa = PBXBuildFile; fileRef = D411C778D1B5CB55E3F81DA2 /* asn1t.h */; };
-		967352AC463B0E0356791893 /* stream_encoder.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F70A1753EA84C60AF27B5DE /* stream_encoder.h */; };
-		96A6FE0B11CE62FF10F2BFC1 /* objects.h in Headers */ = {isa = PBXBuildFile; fileRef = 9C270F924FADCC2633164DF6 /* objects.h */; };
-		97115900FA721F4DBE71087F /* stream_encoder.c in Sources */ = {isa = PBXBuildFile; fileRef = 25389E5BD8E164F9DA3F870A /* stream_encoder.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		9743A0C323C93DADA6C5CDFE /* frame_ping.c in Sources */ = {isa = PBXBuildFile; fileRef = 4FE4F605AA3C77DD8BC5A69E /* frame_ping.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		97B071B91BDA4D844096B567 /* cpu.h in Headers */ = {isa = PBXBuildFile; fileRef = B12ECD5F1AB1A68E4300BD85 /* cpu.h */; };
-		97C2FCEAA59B93958F661AE0 /* cpu_iphone.c in Sources */ = {isa = PBXBuildFile; fileRef = 3847E4E2D0286C716F9145EC /* cpu_iphone.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		97CA84884ECC58D1831A090C /* AbstractMessageBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = EDDBC232C7BD17F4B5938A72 /* AbstractMessageBuilder.m */; };
-		97CC85A3647586A49C85384E /* file.h in Headers */ = {isa = PBXBuildFile; fileRef = D40526323B87888709D24324 /* file.h */; };
-		97E4EF7EA669FBC0DE6D3295 /* census_log.c in Sources */ = {isa = PBXBuildFile; fileRef = 548C55CC9C51EA26C40A807B /* census_log.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		982FA4B9844767680FEA9262 /* MessageBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 7ACE587669F5BA2724FF401C /* MessageBuilder.h */; };
-		9842C09D559FBF622D3190F5 /* byte_buffer_queue.h in Headers */ = {isa = PBXBuildFile; fileRef = 1494BF1C6BBB3E7058D0B384 /* byte_buffer_queue.h */; };
-		987DD43C2E3F715FA44859A3 /* census_log.h in Headers */ = {isa = PBXBuildFile; fileRef = DA022393E5E17A516743E561 /* census_log.h */; };
-		987F177134DA1C540722D918 /* socket_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = E7BC6ECD4926C4D722CA46C9 /* socket_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		98800141D2282CE89CBFC893 /* child_channel.c in Sources */ = {isa = PBXBuildFile; fileRef = 9478C18EECEB8DD6252D2215 /* child_channel.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		9885B76104463075332C4BA1 /* krb5_asn.h in Headers */ = {isa = PBXBuildFile; fileRef = A372F1563365DC01263466B5 /* krb5_asn.h */; };
-		98991B1F1C7963B9C9DA50FE /* MutableExtensionRegistry.m in Sources */ = {isa = PBXBuildFile; fileRef = 13CA68ECEA957C7BA9B5E007 /* MutableExtensionRegistry.m */; };
-		98A53969B5BE4184C0C75FA7 /* cms.h in Headers */ = {isa = PBXBuildFile; fileRef = BFD8F3C8487F38428F6A509E /* cms.h */; };
-		99053524C124E679F4EDCE02 /* channel_args.c in Sources */ = {isa = PBXBuildFile; fileRef = 156C6D5C0D6F9C16AB5A30AB /* channel_args.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		99AC66C4EE8E825ACC5BC8C0 /* aes.h in Headers */ = {isa = PBXBuildFile; fileRef = 0118816670A7C6C335518EDF /* aes.h */; };
-		99EE81C4B1FD1623D153A5BD /* json.c in Sources */ = {isa = PBXBuildFile; fileRef = 36976E64654DF9EA4141C812 /* json.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		99F9D07366845BEF05F09F2E /* sync.h in Headers */ = {isa = PBXBuildFile; fileRef = 0A590DA3DCF37E0C263E2794 /* sync.h */; };
-		99FC7A8054D16B17AF623333 /* ecdsa.h in Headers */ = {isa = PBXBuildFile; fileRef = CC4B92F98C219BAB7AF48AFF /* ecdsa.h */; };
-		9A0DCDF71952F90B59704422 /* fd_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = AF13AD52322D3DDC33780FF6 /* fd_posix.h */; };
-		9A4E1F0A6C2FDCCEAB378A8D /* host_port.c in Sources */ = {isa = PBXBuildFile; fileRef = 43DF9A60A5B869B8B2942C8A /* host_port.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		9A706CA1DD1FEC383EEC088B /* hpack_table.h in Headers */ = {isa = PBXBuildFile; fileRef = 99237990158E92C9F0C675BB /* hpack_table.h */; };
-		9A9A007AC022F1EEAC22ADE6 /* string_win32.h in Headers */ = {isa = PBXBuildFile; fileRef = 632D3C9EB25C3C7659F9F39A /* string_win32.h */; };
-		9B0BF976683EAF1E9740A3FF /* Pods-Sample-gRPC-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 2795129FEBBFD1ABFFF6A785 /* Pods-Sample-gRPC-dummy.m */; };
-		9B11DB6F3063D706B130AE98 /* surface_trace.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B7E488CD9E640DE9592977E /* surface_trace.h */; };
-		9B96B604C129DA7F1E98F1C0 /* pollset_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F86CF370886416DAC191E31 /* pollset_posix.h */; };
-		9BA2E6C521285A6B5A5A5C5E /* init.c in Sources */ = {isa = PBXBuildFile; fileRef = 94F3E600B7F40BA99CC9B1E1 /* init.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		9BB8B575C045547B297F1F5D /* init_secure.c in Sources */ = {isa = PBXBuildFile; fileRef = BE7781256B45578CE91A01F0 /* init_secure.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		9BE4CE13C96D1D80C15D1596 /* asn1t.h in Headers */ = {isa = PBXBuildFile; fileRef = D411C778D1B5CB55E3F81DA2 /* asn1t.h */; };
-		9C05C77EEE4B73A283B278C8 /* aes.h in Headers */ = {isa = PBXBuildFile; fileRef = 0118816670A7C6C335518EDF /* aes.h */; };
-		9C14820DBA65D82452E9E631 /* http_filter.h in Headers */ = {isa = PBXBuildFile; fileRef = 82E0D0FF1330995CD65F17F9 /* http_filter.h */; };
-		9C5AE14A1751E3E213EB1910 /* Pods-Sample-RemoteTest-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D86DA95767D8423BB870CCF /* Pods-Sample-RemoteTest-dummy.m */; };
-		9C6B24FDA09DFB6A42DC4071 /* ForwardDeclarations.h in Headers */ = {isa = PBXBuildFile; fileRef = 8DBF9152E4657D3D9660BD87 /* ForwardDeclarations.h */; };
-		9CCCF4259F5DA6354A279009 /* channel_args.c in Sources */ = {isa = PBXBuildFile; fileRef = 156C6D5C0D6F9C16AB5A30AB /* channel_args.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		9CFD0B1B8BB79CD060360E5E /* des_old.h in Headers */ = {isa = PBXBuildFile; fileRef = FC6E72A9A76E69ADB344A62A /* des_old.h */; };
-		9D02DAFA2CFA634864F20366 /* completion_queue.h in Headers */ = {isa = PBXBuildFile; fileRef = 1016E5B38DF8AC3855975C2F /* completion_queue.h */; };
-		9D1B5B14234707624C18545E /* thd_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F35CC539D3ADDAD0DA84467 /* thd_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		9D7964D086F7A293B1A676AC /* call_log_batch.c in Sources */ = {isa = PBXBuildFile; fileRef = 0048A73AC7AEFB054999A639 /* call_log_batch.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		9DCEB152D77533F4512FFE7F /* MutableExtensionRegistry.h in Headers */ = {isa = PBXBuildFile; fileRef = AC7D24C484B254C957CC365C /* MutableExtensionRegistry.h */; };
-		9DCECC99551C3BA38F3BE927 /* txt_db.h in Headers */ = {isa = PBXBuildFile; fileRef = 557940CD7876824C33DD7ADB /* txt_db.h */; };
-		9DFD860A131C6E11898D6948 /* json_string.c in Sources */ = {isa = PBXBuildFile; fileRef = 705F149853706AB963D20A0A /* json_string.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		9E07A9862C1FA2956744A55B /* GRPCMethodName+HTTP2Encoding.h in Headers */ = {isa = PBXBuildFile; fileRef = 2A446E4DDCE68DCE74D60538 /* GRPCMethodName+HTTP2Encoding.h */; };
-		9E1001D37E2FC67624F1B7FD /* cpu_linux.c in Sources */ = {isa = PBXBuildFile; fileRef = EB3D587E70F10F51FAD52541 /* cpu_linux.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		9E22E69B345586B8934400D7 /* secure_transport_setup.h in Headers */ = {isa = PBXBuildFile; fileRef = C19838C914909B0B92D93A99 /* secure_transport_setup.h */; };
-		9E2F3A3641C32CC9CBFFF38A /* hmac.h in Headers */ = {isa = PBXBuildFile; fileRef = 62AABF4FAFB404658CB645D4 /* hmac.h */; };
-		9E3191AC8437FA2DAAD7378B /* GRXWriter.h in Headers */ = {isa = PBXBuildFile; fileRef = B49754C36A8BF1B609D456E4 /* GRXWriter.h */; };
-		9E7D72C4511F61794C5B1E75 /* init.c in Sources */ = {isa = PBXBuildFile; fileRef = 94F3E600B7F40BA99CC9B1E1 /* init.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		9E9DFE28A567B004CEC8A43B /* Route_guide.pb.h in Headers */ = {isa = PBXBuildFile; fileRef = 58E0257BE81E1918C5267E17 /* Route_guide.pb.h */; };
-		9EB6BC304413EA1E334EB4CC /* pem.h in Headers */ = {isa = PBXBuildFile; fileRef = 2C9FFF9B3A1727D39DECD7F3 /* pem.h */; };
-		9ECC8154B8ABE7AD0D4DD58F /* histogram.h in Headers */ = {isa = PBXBuildFile; fileRef = 58854B850D217166AEA9B026 /* histogram.h */; };
-		9F485068F9F58BBE28331A5D /* metadata.c in Sources */ = {isa = PBXBuildFile; fileRef = B8A175B88623510F93F363DD /* metadata.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		A0073294554D93E3E6477E9F /* frame.h in Headers */ = {isa = PBXBuildFile; fileRef = 8EFAF709CD0D054FE4DA247A /* frame.h */; };
-		A021EB1F40407AD92131EB92 /* slice.h in Headers */ = {isa = PBXBuildFile; fileRef = D792CBC41B3B3E657A56CD2D /* slice.h */; };
-		A03D8BCE681E24F7F86BFEA6 /* auth.h in Headers */ = {isa = PBXBuildFile; fileRef = 709BF0BFC75540EC9E5DEA59 /* auth.h */; };
-		A072DDCE8AC2C297CC3175F8 /* file.c in Sources */ = {isa = PBXBuildFile; fileRef = 78E17449C6B53B05841EC6DA /* file.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		A0AE292E9DDF9891FEF6BBF9 /* Pods-OpenSSL-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0C676CCFC74F97CF22E7D9A3 /* Pods-OpenSSL-dummy.m */; };
-		A0BF2C4EF0F229456814D675 /* GeneratedMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8A255B56065DAB7E8DB7345A /* GeneratedMessage.m */; };
-		A0F731A071D1B51F0B40E69E /* tcp_server.h in Headers */ = {isa = PBXBuildFile; fileRef = 39490C9911F760ABCE716E20 /* tcp_server.h */; };
-		A126EEB0D02F33039C83F43B /* string_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 4B91EAD70775E421BD8B9FCC /* string_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		A128A7235108C7D6368C9AC4 /* message_compress.c in Sources */ = {isa = PBXBuildFile; fileRef = 7BBB69A0CD99821CAE91F9CA /* message_compress.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		A12A645BDDC8831885D1EE0C /* ebcdic.h in Headers */ = {isa = PBXBuildFile; fileRef = 589A52F1F41BEDEB49C095E1 /* ebcdic.h */; };
-		A1FC7C611847CB29DAEC5CCA /* Bootstrap.h in Headers */ = {isa = PBXBuildFile; fileRef = FEC0D9E6713C7AD603C43A63 /* Bootstrap.h */; };
-		A2824DF69CB17643AC49DBD7 /* call_op_string.c in Sources */ = {isa = PBXBuildFile; fileRef = 08438C3CB2AC3F96F24EA50F /* call_op_string.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		A29790C105EF20A1BDBE8593 /* chttp2_transport.h in Headers */ = {isa = PBXBuildFile; fileRef = 8CDA69F3F5647005EF56EC3E /* chttp2_transport.h */; };
-		A2CC189FEFBB0F8F6678B956 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E920231885948DD62874D4 /* Foundation.framework */; };
-		A2DA62EDA387C55E3CB09FCC /* Pods-SampleTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 6CB70053F22835615A8FEA53 /* Pods-SampleTests-dummy.m */; };
-		A2ED2EC21FBDE3466EB474F6 /* message_compress.c in Sources */ = {isa = PBXBuildFile; fileRef = 7BBB69A0CD99821CAE91F9CA /* message_compress.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		A308F2AB219C13F7FDF514BF /* tls_msvc.h in Headers */ = {isa = PBXBuildFile; fileRef = 07ADEF22FC5A6CA8425ADB68 /* tls_msvc.h */; };
-		A3114E87A29C4F5862069B48 /* AbstractMessageBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 462FC4958D1DC02236910099 /* AbstractMessageBuilder.h */; };
-		A31F80C029463B36047BE8D6 /* resolve_address_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 25CC1535787632E504407E0E /* resolve_address_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		A321E4E922D9129115CF9F96 /* metadata.h in Headers */ = {isa = PBXBuildFile; fileRef = F510AD3A2D71ACF0282C64B5 /* metadata.h */; };
-		A32D9A1B7C697CB47682CC31 /* base64.c in Sources */ = {isa = PBXBuildFile; fileRef = 23557DFB8024977332256A02 /* base64.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		A37C6ABC7B7DFD6954E86139 /* GRPCDelegateWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = 2118ADFB0ACC203A0C44DC04 /* GRPCDelegateWrapper.m */; };
-		A38802ED1594094EFFB1A95B /* grpc.h in Headers */ = {isa = PBXBuildFile; fileRef = 296D8B18B1E9020B7FBF9ED7 /* grpc.h */; };
-		A3B80A84F12A9A1BF68FAFDA /* engine.h in Headers */ = {isa = PBXBuildFile; fileRef = D3CD8C351D901D0C065C8F26 /* engine.h */; };
-		A40B5C1910F819B5C76A3496 /* stream_op.c in Sources */ = {isa = PBXBuildFile; fileRef = 7443FC5042AD6D54F533BE2F /* stream_op.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		A4373325642124EC58970EFA /* GRPCMethodName+HTTP2Encoding.h in Headers */ = {isa = PBXBuildFile; fileRef = 2A446E4DDCE68DCE74D60538 /* GRPCMethodName+HTTP2Encoding.h */; };
-		A48A5A42460F2A887C21D376 /* frame_ping.h in Headers */ = {isa = PBXBuildFile; fileRef = A12F885517EF15D46BA10711 /* frame_ping.h */; };
-		A491E79FCCE0B93625E868C7 /* sync_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = A524814A3590D4348D549C14 /* sync_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		A4AEA2FD0AF9FC1C5BD9606F /* completion_queue.h in Headers */ = {isa = PBXBuildFile; fileRef = 1016E5B38DF8AC3855975C2F /* completion_queue.h */; };
-		A4EB19F67AF53E1FD7AD8A96 /* time_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 8B03F1B317FE59E0CE6747ED /* time_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		A56D76711D62B6AD6A419B16 /* ssl_transport_security.c in Sources */ = {isa = PBXBuildFile; fileRef = BD44797A3981F425F27C8EAF /* ssl_transport_security.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		A58A668E1A0485AA18791C9E /* ExtendableMessageBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = 97138B0BC9857D489F0D7E01 /* ExtendableMessageBuilder.m */; };
-		A59B175F688D82D51EB75750 /* stream_map.c in Sources */ = {isa = PBXBuildFile; fileRef = CC72D69889FCA54FF26E059B /* stream_map.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		A5C516EAE97E7F6CDD54C1C9 /* surface_trace.c in Sources */ = {isa = PBXBuildFile; fileRef = 362056B78B02662F088A082D /* surface_trace.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		A64064987EEF00CD4CAFE35A /* RingBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = BBB6D3AC4566125D3148449C /* RingBuffer.h */; };
-		A646F21D830F622E8AC03F6C /* ripemd.h in Headers */ = {isa = PBXBuildFile; fileRef = 390B0B49E8EFA5AAB384B2CC /* ripemd.h */; };
-		A64918AD19AB86A3B200EF62 /* init.h in Headers */ = {isa = PBXBuildFile; fileRef = 6F49DD1F6DA272012D28C11A /* init.h */; };
-		A68985C06FD51A48C741FDB0 /* tcp_client_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 836F2223B440CDADB152E932 /* tcp_client_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		A6995EDFE558F67F27C9A6E2 /* pollset_kick.h in Headers */ = {isa = PBXBuildFile; fileRef = C560E054B648B38F92F270A1 /* pollset_kick.h */; };
-		A6AA679601B2638E871303E3 /* iomgr_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 3B74FD6B6DCCD59F59C39884 /* iomgr_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		A6B32C12626CD2A58DF11706 /* ExtensionRegistry.h in Headers */ = {isa = PBXBuildFile; fileRef = 6084991EB3F40BB862678A56 /* ExtensionRegistry.h */; };
-		A6B868EB1E5CBDD1A414756E /* atm_win32.h in Headers */ = {isa = PBXBuildFile; fileRef = EC2C6FEDF5F8EC31C6D7EFDD /* atm_win32.h */; };
-		A6BDF97EFA928161338EB9D1 /* GeneratedMessageBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 882FB0E68742560157A92A3A /* GeneratedMessageBuilder.h */; };
-		A6C266251E48B4BA43D1B893 /* server_secure_chttp2.c in Sources */ = {isa = PBXBuildFile; fileRef = BF25E4D94898506695C15034 /* server_secure_chttp2.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		A78CC684CE8E32A612CD0F01 /* RingBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = BBB6D3AC4566125D3148449C /* RingBuffer.h */; };
-		A7B3EF094FE11F3A13C5B8B3 /* sockaddr.h in Headers */ = {isa = PBXBuildFile; fileRef = 7888E3FEC368C63162A16235 /* sockaddr.h */; };
-		A7EF314697FFC9109080C96E /* iomgr_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 5B9267052B252C28261605A1 /* iomgr_internal.h */; };
-		A802B1D61EA93ED4A6AD1B3C /* txt_db.h in Headers */ = {isa = PBXBuildFile; fileRef = 557940CD7876824C33DD7ADB /* txt_db.h */; };
-		A815D496537E4AEBDF5E3EE0 /* pkcs12.h in Headers */ = {isa = PBXBuildFile; fileRef = 077488225B8A45F3B5E307D5 /* pkcs12.h */; };
-		A8482721FFB301FB48810558 /* server_create.c in Sources */ = {isa = PBXBuildFile; fileRef = F6022893DD454271F713FD2C /* server_create.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		A869502EAFB669E10F8E37CC /* iocp_windows.h in Headers */ = {isa = PBXBuildFile; fileRef = A7CE930FEE65B105A824A4CF /* iocp_windows.h */; };
-		A86D2B2D80AD984B0FED9C30 /* resolve_address.h in Headers */ = {isa = PBXBuildFile; fileRef = FBEC0724BD339FFB26F5F022 /* resolve_address.h */; };
-		A87619A8B0BE536F91ACB531 /* srtp.h in Headers */ = {isa = PBXBuildFile; fileRef = 34247B31A4DACE7069B17B75 /* srtp.h */; };
-		A8E782D23B1462145AA3B427 /* status.h in Headers */ = {isa = PBXBuildFile; fileRef = 699CCABB0EF4C0DBE9ECFF77 /* status.h */; };
-		A8EE085AAE2CBAB790106BEC /* Utilities.h in Headers */ = {isa = PBXBuildFile; fileRef = D34EDADD3A7795B3D4C0AF58 /* Utilities.h */; };
-		A8FAC8216C3D86BD36BB0072 /* MutableField.h in Headers */ = {isa = PBXBuildFile; fileRef = ACD20403C53CF2ECB88C1984 /* MutableField.h */; };
-		A97F536539226BF810C62486 /* GRXNSScalarEnumerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 83E135FAC325138487E28FBE /* GRXNSScalarEnumerator.h */; };
-		A994EA1D162C54ADB957C6A3 /* socket_utils_linux.c in Sources */ = {isa = PBXBuildFile; fileRef = BFF865292FE2CD0BAC28C4A2 /* socket_utils_linux.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		A9B7688B5E9DD94CAEE1FE55 /* GRPCCall.h in Headers */ = {isa = PBXBuildFile; fileRef = 6D137F3FDB5B92415B7AC31C /* GRPCCall.h */; };
-		AA03B07F080821B7553F2C29 /* atm.h in Headers */ = {isa = PBXBuildFile; fileRef = DE2A0ED4DDBEC3E6D84D16F3 /* atm.h */; };
-		AA6547B52F5766E385AFB992 /* gen_hpack_tables.c in Sources */ = {isa = PBXBuildFile; fileRef = 9A03F86E69EB1ECD0C98F251 /* gen_hpack_tables.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		AA6CA9EB45E6B3C0CE12F6D4 /* cpu_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 818DC3D8E054FC9EF1C0F1BB /* cpu_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		AAB7AF63548BA999CF5FA86E /* whrlpool.h in Headers */ = {isa = PBXBuildFile; fileRef = 7832206106004363B9EF30E6 /* whrlpool.h */; };
-		AAE689C49E91DAE36FCC5007 /* auth.h in Headers */ = {isa = PBXBuildFile; fileRef = 709BF0BFC75540EC9E5DEA59 /* auth.h */; };
-		AB27A6BAA4C7D3FAB052E896 /* call.h in Headers */ = {isa = PBXBuildFile; fileRef = 395B0602EA14447B448D6C9C /* call.h */; };
-		AB49185F503640119E276893 /* tcp_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = B409984314884D903F36169F /* tcp_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		AB6C51A30C038A9841368585 /* census_filter.h in Headers */ = {isa = PBXBuildFile; fileRef = A55B75B919DE7DC2F5B2A967 /* census_filter.h */; };
-		ABBF98A38CE3BFDEE57D46A3 /* huffsyms.h in Headers */ = {isa = PBXBuildFile; fileRef = E79E1B27DCA9FCCD3182E568 /* huffsyms.h */; };
-		AC12894B3A4775D758E5858C /* symhacks.h in Headers */ = {isa = PBXBuildFile; fileRef = 11FC5A78D96C538F410ACBF8 /* symhacks.h */; };
-		AC2A601DB80389A32DEC53CB /* httpcli_security_connector.h in Headers */ = {isa = PBXBuildFile; fileRef = 77E040AA780ABF0B8A8C0390 /* httpcli_security_connector.h */; };
-		AC401789901A6DBE5D1F6ECF /* GRXWriter+Immediate.m in Sources */ = {isa = PBXBuildFile; fileRef = 2FDC708E61C2626808625845 /* GRXWriter+Immediate.m */; };
-		AC59DB6557B83B983EB7B5AE /* client_setup.c in Sources */ = {isa = PBXBuildFile; fileRef = AB8B3BA0CC1EA854D1020AEA /* client_setup.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		AC6C63B326FBD8E87E274E37 /* ExtensionField.h in Headers */ = {isa = PBXBuildFile; fileRef = 36225081DAA3120D658B6559 /* ExtensionField.h */; };
-		AC73020110286DB8204D6532 /* PBArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 78F5A53737D40F816C71D4AA /* PBArray.m */; };
-		AC8709C1759E2457B876C8FB /* transport.c in Sources */ = {isa = PBXBuildFile; fileRef = C9B0549BC9D5CEE7FFDBF499 /* transport.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		AC8C7A160AC69AC643BE4187 /* httpcli.c in Sources */ = {isa = PBXBuildFile; fileRef = 9EB5E9E525851BF88C1930C0 /* httpcli.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		ACECFBFD7D425DFA26822953 /* json_token.c in Sources */ = {isa = PBXBuildFile; fileRef = 9ECE1E3191D8265752CA58E2 /* json_token.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		AD006F52845DCC488FFAF156 /* ExtensionRegistry.m in Sources */ = {isa = PBXBuildFile; fileRef = 9E9F6FBD9A20ABE0AB587479 /* ExtensionRegistry.m */; };
-		AD0B1B0BBF9D682C0CE1E46E /* census_interface.h in Headers */ = {isa = PBXBuildFile; fileRef = B51521C50DEBAE7DD3561DCA /* census_interface.h */; };
-		AD0D30472B326382D0E24726 /* UnknownFieldSetBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = AAAC8D326F301B501A9FB275 /* UnknownFieldSetBuilder.h */; };
-		AD1CB214C8EA138F4A617DB7 /* json.h in Headers */ = {isa = PBXBuildFile; fileRef = AEA0150555EE52124AD1B7C2 /* json.h */; };
-		AD60FA94653A394250ED99A9 /* CodedOutputStream.h in Headers */ = {isa = PBXBuildFile; fileRef = 512C6890E83E678C3723206B /* CodedOutputStream.h */; };
-		AD630C49F700F35A9AAF60CA /* google_default_credentials.c in Sources */ = {isa = PBXBuildFile; fileRef = C539CB090E9EAAED0464BACD /* google_default_credentials.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		AD709BEF8ADC11775361BF99 /* alarm_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 76F2FAD49839F1EAB96C1537 /* alarm_internal.h */; };
-		AD9B7C206BC07D7580FB1820 /* AbstractMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = F271930D3583DA89399BDFBB /* AbstractMessage.h */; };
-		ADFADA47B1A7E449BE86D900 /* census_init.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A70DB43C1169315D6ADE286 /* census_init.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		AE69F28B5DD7489B55347A73 /* event_string.c in Sources */ = {isa = PBXBuildFile; fileRef = 77DFD8B1DA08AC123ACD7FB6 /* event_string.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		AE6B5A14971F1B75857413BC /* timers.c in Sources */ = {isa = PBXBuildFile; fileRef = 1B04B251148F84EB89C5EF9A /* timers.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		AE8479C37D9A17BAFFD522CC /* cmdline.c in Sources */ = {isa = PBXBuildFile; fileRef = 136CEE7CF5D6B8674CA659B7 /* cmdline.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		AECEF36BF0C16AAEDE951D32 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E920231885948DD62874D4 /* Foundation.framework */; };
-		AECFDD9E4DD7168A93F128D0 /* wakeup_fd_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 595E044C7552A98C14435284 /* wakeup_fd_posix.h */; };
-		AEEFC67EA9601F525E167880 /* UnknownFieldSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 4D94918E7FEC14559137E27C /* UnknownFieldSet.h */; };
-		AEF58E1847584780830E7E1A /* pollset_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 2FEAD4CE0E0E4905BF839FBA /* pollset_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		AF572E3417280ECDB6D177F4 /* ts.h in Headers */ = {isa = PBXBuildFile; fileRef = 3B2617A6F99ED60229A68989 /* ts.h */; };
-		AF95A5F4A1746FEF7584D74F /* metadata_buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 65DC894DCBA3E25098C3F392 /* metadata_buffer.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		AF9980E815F36EE6488B0D49 /* client.h in Headers */ = {isa = PBXBuildFile; fileRef = CEE9355DBD53244708163705 /* client.h */; };
-		AF99D06977F633A6766500E5 /* Empty.pb.m in Sources */ = {isa = PBXBuildFile; fileRef = 0A8D8B65642D968FE2489FB4 /* Empty.pb.m */; };
-		B00B9A5C652F7D638792DF9D /* alarm.c in Sources */ = {isa = PBXBuildFile; fileRef = 9711365E4FFC9119BEED12F2 /* alarm.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B019BAE97EE431F01D2952A1 /* timers.h in Headers */ = {isa = PBXBuildFile; fileRef = E24005BA4EE1886E457D1102 /* timers.h */; };
-		B046DFF0E470B2BC880ACC6A /* GRXWriter+Immediate.m in Sources */ = {isa = PBXBuildFile; fileRef = 2FDC708E61C2626808625845 /* GRXWriter+Immediate.m */; };
-		B05F3F773B9995DA7F5F6031 /* GRPCCompletionQueue.h in Headers */ = {isa = PBXBuildFile; fileRef = CCC7879745FA67A0A66A8C99 /* GRPCCompletionQueue.h */; };
-		B0861E138FB79939F34F2DC1 /* histogram.c in Sources */ = {isa = PBXBuildFile; fileRef = 2E85D4E1E6887747C8C0EA7A /* histogram.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B09F5CF64C817C0A32C5A4F1 /* ebcdic.h in Headers */ = {isa = PBXBuildFile; fileRef = 589A52F1F41BEDEB49C095E1 /* ebcdic.h */; };
-		B0ACD496C8E1E9740733E11D /* sync_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 3E4109CF85B04479E8DC8D08 /* sync_posix.h */; };
-		B0F49A19CEB5F66B8338C85D /* file.h in Headers */ = {isa = PBXBuildFile; fileRef = D40526323B87888709D24324 /* file.h */; };
-		B0FAA2A0D2D7A1286CD172D7 /* GRPCMethodName+HTTP2Encoding.h in Headers */ = {isa = PBXBuildFile; fileRef = 2A446E4DDCE68DCE74D60538 /* GRPCMethodName+HTTP2Encoding.h */; };
-		B16FCB71EC3291C710A0E8C7 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E920231885948DD62874D4 /* Foundation.framework */; };
-		B1904A678DFC18F6DDC4AC98 /* window_stats.h in Headers */ = {isa = PBXBuildFile; fileRef = 22CF3D4CF0769E7668CAA7F1 /* window_stats.h */; };
-		B1B5814F7AA7943C54C34139 /* thd_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 9F35CC539D3ADDAD0DA84467 /* thd_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B1BA2D993BC0C8A9C6765C88 /* census_log.c in Sources */ = {isa = PBXBuildFile; fileRef = 548C55CC9C51EA26C40A807B /* census_log.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B23DDFA186B2A6204C467661 /* hpack_table.h in Headers */ = {isa = PBXBuildFile; fileRef = 99237990158E92C9F0C675BB /* hpack_table.h */; };
-		B242868C6C5E6073B6C62EBB /* GRPCMethodName.h in Headers */ = {isa = PBXBuildFile; fileRef = 5EB7CC0B9B5B8ED763DAD468 /* GRPCMethodName.h */; };
-		B255ADF74AF24A24A2CB1BAE /* json_writer.h in Headers */ = {isa = PBXBuildFile; fileRef = C3D405F034FCA0772AEA9CE4 /* json_writer.h */; };
-		B25FBC0F6C806F13F4073CC9 /* ssl.h in Headers */ = {isa = PBXBuildFile; fileRef = BDBBDCF65961AB006C59723F /* ssl.h */; };
-		B290A1D77A9D07C152432C07 /* mdc2.h in Headers */ = {isa = PBXBuildFile; fileRef = CE9B94697CCEC36CED30CF18 /* mdc2.h */; };
-		B29F49EB2266808D42E08346 /* Bootstrap.h in Headers */ = {isa = PBXBuildFile; fileRef = FEC0D9E6713C7AD603C43A63 /* Bootstrap.h */; };
-		B2A0894954D7A0424177303C /* hash_table.h in Headers */ = {isa = PBXBuildFile; fileRef = E6238E0B2F14B6A142E9386E /* hash_table.h */; };
-		B2A4E7921E669AFE2A93DCC6 /* call.h in Headers */ = {isa = PBXBuildFile; fileRef = 395B0602EA14447B448D6C9C /* call.h */; };
-		B2B2C3C5308E734391BDF1DA /* varint.h in Headers */ = {isa = PBXBuildFile; fileRef = 772C64BCD36866BCD61FD0CF /* varint.h */; };
-		B3089BB78BFAFE46908BFE81 /* transport_security.c in Sources */ = {isa = PBXBuildFile; fileRef = AA5ECB2F157C1EB5A59BA407 /* transport_security.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B31B4B07F4353CBACDF8A760 /* pollset_multipoller_with_epoll.c in Sources */ = {isa = PBXBuildFile; fileRef = 6D9F7A8D1118F332DA3364C4 /* pollset_multipoller_with_epoll.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B32051816218A527F3E2E0A6 /* credentials_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 3C89A7A6EA403EB3DC6B287B /* credentials_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B32FD4B3B29031BDFEF0553B /* pollset_windows.h in Headers */ = {isa = PBXBuildFile; fileRef = 97A3ACC219CC63F5D7FFD40C /* pollset_windows.h */; };
-		B39706BD76A906EE0C6EF81A /* format_request.c in Sources */ = {isa = PBXBuildFile; fileRef = 35DAF7732DF40F6191B582F0 /* format_request.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B3971D6B729C358CDDACC860 /* socket_utils_linux.c in Sources */ = {isa = PBXBuildFile; fileRef = BFF865292FE2CD0BAC28C4A2 /* socket_utils_linux.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B3EFF455070D8196B381C0A9 /* host_port.c in Sources */ = {isa = PBXBuildFile; fileRef = 43DF9A60A5B869B8B2942C8A /* host_port.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B40078329D43DE359DAE7C1E /* transport.h in Headers */ = {isa = PBXBuildFile; fileRef = 4E54CB0C0280C270C850A4DE /* transport.h */; };
-		B402775E5EE3B27370EAAEC8 /* srtp.h in Headers */ = {isa = PBXBuildFile; fileRef = 34247B31A4DACE7069B17B75 /* srtp.h */; };
-		B44A8C04EBB300616BE6B3EC /* call_details.c in Sources */ = {isa = PBXBuildFile; fileRef = F72129AB470DEE3F62A8FC76 /* call_details.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B4B659B8214C93539E5DE188 /* bin_encoder.c in Sources */ = {isa = PBXBuildFile; fileRef = B6ED74BFADC33253E682ABC4 /* bin_encoder.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B4B8923590A0BCFFD162A12A /* histogram.c in Sources */ = {isa = PBXBuildFile; fileRef = 2E85D4E1E6887747C8C0EA7A /* histogram.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B4C09E9D07ED3381F4A321A2 /* byte_buffer.h in Headers */ = {isa = PBXBuildFile; fileRef = CF4BB6900EA7F1317FE1A1D5 /* byte_buffer.h */; };
-		B4D4BF923329E4F7F0FE7C70 /* GRPCDelegateWrapper.h in Headers */ = {isa = PBXBuildFile; fileRef = 4F5C6030E0C6D3878C91CDBA /* GRPCDelegateWrapper.h */; };
-		B54A46596FF4EEA4D31F0ABF /* des_old.h in Headers */ = {isa = PBXBuildFile; fileRef = FC6E72A9A76E69ADB344A62A /* des_old.h */; };
-		B586BC7C05842E700B9B0A62 /* GRXWriteable.m in Sources */ = {isa = PBXBuildFile; fileRef = FE14502B83EB31B456B00307 /* GRXWriteable.m */; };
-		B606CFBCCC44A5781BECC0ED /* metadata.c in Sources */ = {isa = PBXBuildFile; fileRef = B8A175B88623510F93F363DD /* metadata.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B68FDD42845835C540113469 /* MutableExtensionRegistry.m in Sources */ = {isa = PBXBuildFile; fileRef = 13CA68ECEA957C7BA9B5E007 /* MutableExtensionRegistry.m */; };
-		B6D29330D1891A7F0DF05B2A /* init_unsecure.c in Sources */ = {isa = PBXBuildFile; fileRef = C3BFA648AC3F1804BED0C966 /* init_unsecure.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B6ECBBA2A69EB240BDA6E3C1 /* stream_op.h in Headers */ = {isa = PBXBuildFile; fileRef = D62A2B89BC57A50909A82C8D /* stream_op.h */; };
-		B6FC0EB26B3472894648A09D /* iomgr.c in Sources */ = {isa = PBXBuildFile; fileRef = CBA0D6DE446A425B959CD645 /* iomgr.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B72EB8D75A4E96D05F39C4E0 /* bin_encoder.h in Headers */ = {isa = PBXBuildFile; fileRef = 7F70FAFAB9F4A5F0703D92BA /* bin_encoder.h */; };
-		B746CA7A1467B3C09AB0C31D /* UnknownFieldSet.m in Sources */ = {isa = PBXBuildFile; fileRef = B52453B197D589FB52125E87 /* UnknownFieldSet.m */; };
-		B77BF1A0B7EC818DC0A05FDE /* call_details.c in Sources */ = {isa = PBXBuildFile; fileRef = F72129AB470DEE3F62A8FC76 /* call_details.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B793CEFAFE062C8EFCE93B60 /* GRPCMethodName.h in Headers */ = {isa = PBXBuildFile; fileRef = 5EB7CC0B9B5B8ED763DAD468 /* GRPCMethodName.h */; };
-		B7C491C4FC7EA4715E4B9B50 /* MutableField.m in Sources */ = {isa = PBXBuildFile; fileRef = 5D7E3645794B4FC5A28DB07A /* MutableField.m */; };
-		B813A4DBB1401C02DE29A8CC /* ui_compat.h in Headers */ = {isa = PBXBuildFile; fileRef = 707B43D7094693DC964C9A69 /* ui_compat.h */; };
-		B8654D2BBB5E30A0556445CD /* sockaddr_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 00D1F7FE42811771A45CB7E7 /* sockaddr_posix.h */; };
-		B866B17F38E5ADDA6F4900BD /* NSData+GRPC.m in Sources */ = {isa = PBXBuildFile; fileRef = 3B009A38978FE24BCB519CB4 /* NSData+GRPC.m */; };
-		B8798741A5FC904F69442BDC /* objects.h in Headers */ = {isa = PBXBuildFile; fileRef = 9C270F924FADCC2633164DF6 /* objects.h */; };
-		B8816AD89E6670250B017320 /* frame_window_update.h in Headers */ = {isa = PBXBuildFile; fileRef = FA1E53C03134BD79E85D69BB /* frame_window_update.h */; };
-		B885CF77630C98E4E7C866D0 /* alpn.h in Headers */ = {isa = PBXBuildFile; fileRef = 4E526CA022944834AEEE078E /* alpn.h */; };
-		B8907E9926D1669C56AD918A /* alloc.c in Sources */ = {isa = PBXBuildFile; fileRef = 4B94B3D5B631FD95B0DB7404 /* alloc.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B9485BEE3D20FA700BC1D362 /* CodedOutputStream.h in Headers */ = {isa = PBXBuildFile; fileRef = 512C6890E83E678C3723206B /* CodedOutputStream.h */; };
-		B9527174E6C367A7442503DC /* endpoint_pair_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 46BA07C95C706BFD2C47CF30 /* endpoint_pair_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B95DBE4353A105B062BDA9BC /* file_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 545C3120FFA2450C7CE9E6DA /* file_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		B9C598C8461C51BBFC47A289 /* log_win32.h in Headers */ = {isa = PBXBuildFile; fileRef = 4FB887B7DFAA588A6A7A825B /* log_win32.h */; };
-		B9C651E9F095AAF1E3CFD4E5 /* GRPCDelegateWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = 2118ADFB0ACC203A0C44DC04 /* GRPCDelegateWrapper.m */; };
-		BA0C2274331559E9CA35CCB9 /* chttp2_transport.h in Headers */ = {isa = PBXBuildFile; fileRef = 8CDA69F3F5647005EF56EC3E /* chttp2_transport.h */; };
-		BA15B329CD48F2B0EA075AAB /* json.h in Headers */ = {isa = PBXBuildFile; fileRef = AEA0150555EE52124AD1B7C2 /* json.h */; };
-		BA386797C7707AB731452DA3 /* frame_ping.h in Headers */ = {isa = PBXBuildFile; fileRef = A12F885517EF15D46BA10711 /* frame_ping.h */; };
-		BA4E68FA5ADAA4AF46240C81 /* GRPCChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = BF18594A111FF813A7E2C0E6 /* GRPCChannel.h */; };
-		BB45789FA1BB5ED057812C62 /* socket_utils_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 2D925E56B6B03563B89F6838 /* socket_utils_posix.h */; };
-		BB79F1F39240326B23E42F14 /* channel_args.c in Sources */ = {isa = PBXBuildFile; fileRef = 156C6D5C0D6F9C16AB5A30AB /* channel_args.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		BB9AC4E06D94C9BEDE8ABDEB /* crypto.h in Headers */ = {isa = PBXBuildFile; fileRef = 2C3AB039FE4E2FE6E21DB4C3 /* crypto.h */; };
-		BBC86B55963026C34EF87B1C /* transport_security.c in Sources */ = {isa = PBXBuildFile; fileRef = AA5ECB2F157C1EB5A59BA407 /* transport_security.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		BBE2FDBDCE1B86D253B821E2 /* TextFormat.h in Headers */ = {isa = PBXBuildFile; fileRef = DFF32937D1BD905796DBC05A /* TextFormat.h */; };
-		BC2ECEE1F2D8CFC619DCBB05 /* bn.h in Headers */ = {isa = PBXBuildFile; fileRef = DDB7824792A0D7E587422DEC /* bn.h */; };
-		BC5AE9C28D98402C8FECE36F /* tcp_client_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 836F2223B440CDADB152E932 /* tcp_client_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		BCD18B40DFB1157620730E25 /* GRXImmediateWriter.h in Headers */ = {isa = PBXBuildFile; fileRef = 7A9AC18A46591A7BDE09299C /* GRXImmediateWriter.h */; };
-		BD0545557EEA6075B9CFC2A9 /* env.h in Headers */ = {isa = PBXBuildFile; fileRef = 50A5DE2884F204F06DEA6B43 /* env.h */; };
-		BD3219C53E38771818523D76 /* NSError+GRPC.m in Sources */ = {isa = PBXBuildFile; fileRef = EB1B4E98E2C1E9529A2937F0 /* NSError+GRPC.m */; };
-		BD7B4BA80AD97ECCFF31354A /* AbstractMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = BEFD30461D28E85BC4564977 /* AbstractMessage.m */; };
-		BD7C0F7174EB5951677EFB05 /* channel_create.c in Sources */ = {isa = PBXBuildFile; fileRef = 93FBD738A8069598A3816DB1 /* channel_create.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		BDC97080984F85C7175190FE /* idea.h in Headers */ = {isa = PBXBuildFile; fileRef = 24B4134291477B3C306D0F9B /* idea.h */; };
-		BF58C54F2F7A768AE02FB637 /* ssl_transport_security.h in Headers */ = {isa = PBXBuildFile; fileRef = 0904AAFE71C13FEBE2A2413D /* ssl_transport_security.h */; };
-		BF6B22582562A9DAA461B13C /* tls_gcc.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD84E9AE38D8DA667136E64 /* tls_gcc.h */; };
-		BF7FD72A6D1DEAEDD8AFA492 /* log_win32.h in Headers */ = {isa = PBXBuildFile; fileRef = 4FB887B7DFAA588A6A7A825B /* log_win32.h */; };
-		BFC14A0FC6E16660F5A62574 /* time_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = B0EF8D6D45E898F9B98D43C5 /* time_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C02E36498C3BBEB10673F593 /* GRXWriter.h in Headers */ = {isa = PBXBuildFile; fileRef = B49754C36A8BF1B609D456E4 /* GRXWriter.h */; };
-		C051049EBFA74C04C2963E7D /* stack.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B526FC86BD71B2D8E60A26E /* stack.h */; };
-		C06465D43377E15AD4FAF838 /* env_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 37DBA0AFDAFF79CE36275868 /* env_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C0ABB6CBA521BD31FFFB89B7 /* client.c in Sources */ = {isa = PBXBuildFile; fileRef = 0886F5B8103F7797CD449DD8 /* client.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C0B3670A83D5E2F277D10274 /* ossl_typ.h in Headers */ = {isa = PBXBuildFile; fileRef = 786C225EB84ADD9B73B8660F /* ossl_typ.h */; };
-		C16205E292032938F8B8042B /* sockaddr_utils.h in Headers */ = {isa = PBXBuildFile; fileRef = 857F065925832466000E24C4 /* sockaddr_utils.h */; };
-		C18852D3231FFCDF8B6D1C31 /* x509v3.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E60A65312367FE96A674F09 /* x509v3.h */; };
-		C18D3132A48FC2AF7797B976 /* des.h in Headers */ = {isa = PBXBuildFile; fileRef = E764B272A54ECA2B4EEDDEF0 /* des.h */; };
-		C1EF5E8F19E2A29317AAD19F /* algorithm.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B729130FD8D5696CE112A9B /* algorithm.h */; };
-		C23C3FFBCEADD4C69C5316D4 /* endpoint_pair.h in Headers */ = {isa = PBXBuildFile; fileRef = 0280D6D5B1B2FD6DADF0EBB8 /* endpoint_pair.h */; };
-		C24849739039041035CD19D1 /* census_interface.h in Headers */ = {isa = PBXBuildFile; fileRef = B51521C50DEBAE7DD3561DCA /* census_interface.h */; };
-		C27F0F37B6B54289AB484A47 /* conf_api.h in Headers */ = {isa = PBXBuildFile; fileRef = C56A403563F4F0297CBBA5E8 /* conf_api.h */; };
-		C2969D5F29FE42714ABA1C8E /* child_channel.h in Headers */ = {isa = PBXBuildFile; fileRef = CE4F5BE7E052D1309933236C /* child_channel.h */; };
-		C2AC16BDACE304E182775869 /* iomgr.c in Sources */ = {isa = PBXBuildFile; fileRef = CBA0D6DE446A425B959CD645 /* iomgr.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C2AF6066881D7501AC09C32E /* GRXMappingWriter.m in Sources */ = {isa = PBXBuildFile; fileRef = BA0FBD1240C3330ADAFD46ED /* GRXMappingWriter.m */; };
-		C2C6F22A9F95CB5E96ED2BD4 /* ssl_transport_security.c in Sources */ = {isa = PBXBuildFile; fileRef = BD44797A3981F425F27C8EAF /* ssl_transport_security.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C2D7038080318F4BE8CFBBAA /* GRXWriter+Immediate.h in Headers */ = {isa = PBXBuildFile; fileRef = B353EC7F04DD7326865BF2E4 /* GRXWriter+Immediate.h */; };
-		C2DC63834C036995766F51D1 /* env_linux.c in Sources */ = {isa = PBXBuildFile; fileRef = 3DB502DA27DE84D3006C0081 /* env_linux.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C2E029BFA79B65E19DDE60D2 /* json_reader.c in Sources */ = {isa = PBXBuildFile; fileRef = A9B2304351F4D869D9983AE0 /* json_reader.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C2F95285BA9F1446DCB3B043 /* tcp_client.h in Headers */ = {isa = PBXBuildFile; fileRef = C72A49BF07D01F8088DFCC4E /* tcp_client.h */; };
-		C31CC46773583D3994A21EB1 /* dso.h in Headers */ = {isa = PBXBuildFile; fileRef = D97B6A05C9BFC4CF3BFAF3F0 /* dso.h */; };
-		C32AD08C8521A378E8C320CE /* server.c in Sources */ = {isa = PBXBuildFile; fileRef = 71F8B05C67B51C33A39FD277 /* server.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C33AE967C91D7293A60031B5 /* atm_win32.h in Headers */ = {isa = PBXBuildFile; fileRef = EC2C6FEDF5F8EC31C6D7EFDD /* atm_win32.h */; };
-		C36CFB8D3BDBAD9B31262391 /* UnknownFieldSetBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = AAAC8D326F301B501A9FB275 /* UnknownFieldSetBuilder.h */; };
-		C37AFDCB35F8822BB9A49074 /* MutableExtensionRegistry.m in Sources */ = {isa = PBXBuildFile; fileRef = 13CA68ECEA957C7BA9B5E007 /* MutableExtensionRegistry.m */; };
-		C3A26FDC055DCC7B87888EE3 /* RingBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = BBB6D3AC4566125D3148449C /* RingBuffer.h */; };
-		C3A4E506119835FF94DC7AA0 /* srp.h in Headers */ = {isa = PBXBuildFile; fileRef = A6526F7F44853C7D64D34A71 /* srp.h */; };
-		C3CB3B6F139CD2B4DFC1D6FA /* comp.h in Headers */ = {isa = PBXBuildFile; fileRef = FE566BB5269F67EEF6FE6960 /* comp.h */; };
-		C3D740D96302BB06ED252B10 /* census_filter.c in Sources */ = {isa = PBXBuildFile; fileRef = 0B9DB82928AAE1ADBF1DB4A7 /* census_filter.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C3E87F67F97BCDF69F6D0321 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E920231885948DD62874D4 /* Foundation.framework */; };
-		C4186B7A98D380CF6DC29D55 /* byte_buffer_reader.c in Sources */ = {isa = PBXBuildFile; fileRef = 1318B504F6D7B3052AAD4DC4 /* byte_buffer_reader.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C4255EBF16705E550CACA6D3 /* frame_ping.c in Sources */ = {isa = PBXBuildFile; fileRef = 4FE4F605AA3C77DD8BC5A69E /* frame_ping.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C42CCBCCB613865E1D13BFA5 /* timeout_encoding.h in Headers */ = {isa = PBXBuildFile; fileRef = 937B5E356D599266F6BF35E5 /* timeout_encoding.h */; };
-		C44A69521783D27A39AB2C53 /* env_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 37DBA0AFDAFF79CE36275868 /* env_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C480573A3038CF191BED501A /* alpn.h in Headers */ = {isa = PBXBuildFile; fileRef = 4E526CA022944834AEEE078E /* alpn.h */; };
-		C4B0C922E1828D0BFF950B72 /* murmur_hash.c in Sources */ = {isa = PBXBuildFile; fileRef = 44F9218A56E4EBCEED716673 /* murmur_hash.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C50663357C73E463E417B1EE /* err.h in Headers */ = {isa = PBXBuildFile; fileRef = FFE50BB7E184EB895E72ED5B /* err.h */; };
-		C5214A441F79CB09FE2601C3 /* base64.c in Sources */ = {isa = PBXBuildFile; fileRef = 23557DFB8024977332256A02 /* base64.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C52A3B6BDDCB66672C3A7466 /* census_log.c in Sources */ = {isa = PBXBuildFile; fileRef = 548C55CC9C51EA26C40A807B /* census_log.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C53086D42A36608A7E4F6C72 /* fake_transport_security.h in Headers */ = {isa = PBXBuildFile; fileRef = FF56DC4FC3FC0F8B7F75A1A8 /* fake_transport_security.h */; };
-		C5777003BF68D9924E4A3A33 /* hmac.h in Headers */ = {isa = PBXBuildFile; fileRef = 62AABF4FAFB404658CB645D4 /* hmac.h */; };
-		C58F8DA7050AB687D113CC26 /* message_compress.c in Sources */ = {isa = PBXBuildFile; fileRef = 7BBB69A0CD99821CAE91F9CA /* message_compress.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C5AA9B45A7D1DD89F5A35058 /* iocp_windows.h in Headers */ = {isa = PBXBuildFile; fileRef = A7CE930FEE65B105A824A4CF /* iocp_windows.h */; };
-		C5D1EABCF905D4F88A8CBAAA /* GRPCMethodName+HTTP2Encoding.m in Sources */ = {isa = PBXBuildFile; fileRef = D9A61224E115AD9725AA7A5C /* GRPCMethodName+HTTP2Encoding.m */; };
-		C5E07FC43F3F56D86E7F2287 /* census_rpc_stats.c in Sources */ = {isa = PBXBuildFile; fileRef = FCDEC2AFE402D37148992805 /* census_rpc_stats.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C62A3E7369D1DED3C0BA2604 /* stream_map.h in Headers */ = {isa = PBXBuildFile; fileRef = A18A9E53902DA1A490D048A7 /* stream_map.h */; };
-		C6845990A723842F7AA2AA8D /* lhash.h in Headers */ = {isa = PBXBuildFile; fileRef = 7E9520E20DCD01D0DCC65855 /* lhash.h */; };
-		C68524D49220CA792DFFB871 /* sync.h in Headers */ = {isa = PBXBuildFile; fileRef = 0A590DA3DCF37E0C263E2794 /* sync.h */; };
-		C689EE7532987416570509F8 /* json_token.h in Headers */ = {isa = PBXBuildFile; fileRef = C5CA889C8CBB047E77DADB23 /* json_token.h */; };
-		C6DBA34FC4FEBA7A658000D9 /* sockaddr_utils.c in Sources */ = {isa = PBXBuildFile; fileRef = 3074D0C70E2E858E523A6F83 /* sockaddr_utils.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C6FA5030017D7DD1FC7C77CF /* tcp_client_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 836F2223B440CDADB152E932 /* tcp_client_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C6FC015A4CA68E95E9598872 /* port_platform.h in Headers */ = {isa = PBXBuildFile; fileRef = 9CDD59E7CC95C8FC7D97E181 /* port_platform.h */; };
-		C6FFCB0BCC38BB023FDE7520 /* ProtocolBuffers.h in Headers */ = {isa = PBXBuildFile; fileRef = 38958B8C3D9B8070ED88BD92 /* ProtocolBuffers.h */; };
-		C768AB47B4A8E88D74E34371 /* client.h in Headers */ = {isa = PBXBuildFile; fileRef = CEE9355DBD53244708163705 /* client.h */; };
-		C773AD8F106C7A23647DB6E4 /* dsa.h in Headers */ = {isa = PBXBuildFile; fileRef = 1C5EC095122365ED8DACCA09 /* dsa.h */; };
-		C7BA0D9E950341CE414755E0 /* ExtensionField.h in Headers */ = {isa = PBXBuildFile; fileRef = 36225081DAA3120D658B6559 /* ExtensionField.h */; };
-		C7BC48687930D6B2B1DF5F0C /* UnknownFieldSetBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = C7D47F1384449D2EDFFFE2C5 /* UnknownFieldSetBuilder.m */; };
-		C7C29789C25C800021DC23DB /* ConcreteExtensionField.h in Headers */ = {isa = PBXBuildFile; fileRef = B4F80BE028884A82874B10E2 /* ConcreteExtensionField.h */; };
-		C7FF115D57D8DF124E15E0AB /* env_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = C85D5228B2712CE336C2F9DA /* env_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C8187520B14BD7147808DA06 /* thd.h in Headers */ = {isa = PBXBuildFile; fileRef = 68E76147B6FA250C2CD4F10F /* thd.h */; };
-		C831397CD4FA232FBB0C7CF6 /* endpoint.h in Headers */ = {isa = PBXBuildFile; fileRef = 3A715DFC320B831B7F891BDA /* endpoint.h */; };
-		C867CBACA1279BE21586F5BE /* bio.h in Headers */ = {isa = PBXBuildFile; fileRef = C651F351648FAA6E7EDD7F22 /* bio.h */; };
-		C8D37F8BC4E6D704E2A7CDF0 /* ExtensionRegistry.h in Headers */ = {isa = PBXBuildFile; fileRef = 6084991EB3F40BB862678A56 /* ExtensionRegistry.h */; };
-		C8F38097704B85A575375DAD /* murmur_hash.c in Sources */ = {isa = PBXBuildFile; fileRef = 44F9218A56E4EBCEED716673 /* murmur_hash.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C9089E43C193490B4EF68F44 /* base64.h in Headers */ = {isa = PBXBuildFile; fileRef = 2EAAA73555E295CC4EB69093 /* base64.h */; };
-		C91297A12EF2BADF33AC6AE9 /* event_string.c in Sources */ = {isa = PBXBuildFile; fileRef = 77DFD8B1DA08AC123ACD7FB6 /* event_string.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C9440EA111524FE711216A2C /* Utilities.m in Sources */ = {isa = PBXBuildFile; fileRef = 385180B3943DC40F19F8A085 /* Utilities.m */; };
-		C9709E720038854B53F39C7E /* wakeup_fd_pipe.c in Sources */ = {isa = PBXBuildFile; fileRef = BD1B20F8D2B7ADFD921FB0D4 /* wakeup_fd_pipe.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C99E42D042F45AC3A6035ACF /* Field.h in Headers */ = {isa = PBXBuildFile; fileRef = 7073EA35CBD7DC711060427E /* Field.h */; };
-		C9C75DEAE49569804071C4DD /* ForwardDeclarations.h in Headers */ = {isa = PBXBuildFile; fileRef = 8DBF9152E4657D3D9660BD87 /* ForwardDeclarations.h */; };
-		C9C886C13EFA36DDE417BF7E /* sync_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = A524814A3590D4348D549C14 /* sync_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		C9F78945DA3282646526D9C3 /* pollset_kick_windows.h in Headers */ = {isa = PBXBuildFile; fileRef = 731D0E4DC3F73AADCC27E534 /* pollset_kick_windows.h */; };
-		C9FDFF2FD7083183FC0B01A9 /* httpcli.h in Headers */ = {isa = PBXBuildFile; fileRef = 208DF1BA4BA8F949D6D903B3 /* httpcli.h */; };
-		CA02AF622EE178C5F1140ED3 /* PBArray.h in Headers */ = {isa = PBXBuildFile; fileRef = E73432FD3175A62327850971 /* PBArray.h */; };
-		CA1427821548014AAAD5E67A /* alloc.c in Sources */ = {isa = PBXBuildFile; fileRef = 4B94B3D5B631FD95B0DB7404 /* alloc.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		CA6BB1D4C78FFC6B4DEBC635 /* ExtendableMessageBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = EEACE028BFE2BD1DE7EBA99C /* ExtendableMessageBuilder.h */; };
-		CA761BBB3ACE64267F9A21E3 /* ecdsa.h in Headers */ = {isa = PBXBuildFile; fileRef = CC4B92F98C219BAB7AF48AFF /* ecdsa.h */; };
-		CA7BCEA61AB5486021EF12AB /* GRPCMethodName.m in Sources */ = {isa = PBXBuildFile; fileRef = DDD83A7A2AB0AEB0F48C7947 /* GRPCMethodName.m */; };
-		CB04D8309A41C348484D1DD1 /* ssl2.h in Headers */ = {isa = PBXBuildFile; fileRef = 7739C2ECFEC444826F4F32EA /* ssl2.h */; };
-		CB0DE0FE323E91F04FBA85C0 /* ossl_typ.h in Headers */ = {isa = PBXBuildFile; fileRef = 786C225EB84ADD9B73B8660F /* ossl_typ.h */; };
-		CB3D9D4F4A6BF3E7A44592F9 /* wakeup_fd_pipe.h in Headers */ = {isa = PBXBuildFile; fileRef = 2F2C73D7D6DD73A2C440A9B5 /* wakeup_fd_pipe.h */; };
-		CB8BFA24417F6DF7A6282C44 /* status_conversion.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E68948320F849995B09AC37 /* status_conversion.h */; };
-		CBC4D52B0EFEC97ADF234640 /* GRPCUnsecuredChannel.m in Sources */ = {isa = PBXBuildFile; fileRef = 84699F407C0F5C552CFE19E9 /* GRPCUnsecuredChannel.m */; };
-		CCAB5F12B7E8461935128CC6 /* byte_buffer_reader.h in Headers */ = {isa = PBXBuildFile; fileRef = 5110D7E251E644EC6D7C29CA /* byte_buffer_reader.h */; };
-		CCDFB03DF5AEEFCD741F8C7F /* log_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 83FC73B2F90BD4477BAB7716 /* log_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		CCF37B0323CA91C661E3C323 /* sockaddr_utils.c in Sources */ = {isa = PBXBuildFile; fileRef = 3074D0C70E2E858E523A6F83 /* sockaddr_utils.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		CD097C30FE2C43B906381A86 /* env.h in Headers */ = {isa = PBXBuildFile; fileRef = 50A5DE2884F204F06DEA6B43 /* env.h */; };
-		CD175CC894A2CD2AA0B1E02F /* Pods-Sample-Route_guide-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7903B8EE593EEC961956C7B0 /* Pods-Sample-Route_guide-dummy.m */; };
-		CD71902EDCC7A587A2B6071F /* cms.h in Headers */ = {isa = PBXBuildFile; fileRef = BFD8F3C8487F38428F6A509E /* cms.h */; };
-		CDCFF7341E745AABC212D0E4 /* init_secure.c in Sources */ = {isa = PBXBuildFile; fileRef = BE7781256B45578CE91A01F0 /* init_secure.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		CDDDE2F7113879077C8B8FBF /* UnknownFieldSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 4D94918E7FEC14559137E27C /* UnknownFieldSet.h */; };
-		CE9B9DB60BECE59ABF2A17E7 /* sha.h in Headers */ = {isa = PBXBuildFile; fileRef = CE05CF8E2EC1CA3AB87C808F /* sha.h */; };
-		CEA130A8478958425419B8AF /* iomgr_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 3B74FD6B6DCCD59F59C39884 /* iomgr_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		CEA9637228145F9C89D3B731 /* CodedInputStream.m in Sources */ = {isa = PBXBuildFile; fileRef = E1EE04CA884BA2771F155B1A /* CodedInputStream.m */; };
-		CEA9E99190C634F7EFCA16BD /* census_init.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A70DB43C1169315D6ADE286 /* census_init.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		CF008421E0A19CB68CF09175 /* rand.h in Headers */ = {isa = PBXBuildFile; fileRef = ADBD2557A394F8F84A762A1C /* rand.h */; };
-		CF2798F0D6A41B023D00B30C /* PBArray.h in Headers */ = {isa = PBXBuildFile; fileRef = E73432FD3175A62327850971 /* PBArray.h */; };
-		CF627049C3D7A537EFBEDEC4 /* rc4.h in Headers */ = {isa = PBXBuildFile; fileRef = 016F12209885CD0253753FF5 /* rc4.h */; };
-		CFC87A2BF353077DBC7A0825 /* Messages.pb.h in Headers */ = {isa = PBXBuildFile; fileRef = 0720FBDE49BBBBAA7B3E0DEF /* Messages.pb.h */; };
-		D00EF8C88423DCAB8269DEE9 /* ExtensionField.h in Headers */ = {isa = PBXBuildFile; fileRef = 36225081DAA3120D658B6559 /* ExtensionField.h */; };
-		D022E311EA7690529672416F /* base64.c in Sources */ = {isa = PBXBuildFile; fileRef = 23557DFB8024977332256A02 /* base64.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		D05A2DDF66B75A83A3A0C3EA /* cast.h in Headers */ = {isa = PBXBuildFile; fileRef = BE4BCA754104BF9BFE6B27DB /* cast.h */; };
-		D06C6B856E4632C990D53EC6 /* slice.c in Sources */ = {isa = PBXBuildFile; fileRef = F0DF5F5361D504902939C3F3 /* slice.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		D0FBFF10013C9A6017F64E8C /* credentials_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 87C766D8A76DD09C1DB8A1DB /* credentials_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		D10946212AF99DAF1A22C532 /* tcp_windows.h in Headers */ = {isa = PBXBuildFile; fileRef = AF6A0C7403B1E83482072EAD /* tcp_windows.h */; };
-		D1380276BDDF9FB4234C6A91 /* iocp_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 8EF237AADBB32AE1589440C6 /* iocp_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		D1402C2123EE63C04F96747B /* socket_utils_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 2D925E56B6B03563B89F6838 /* socket_utils_posix.h */; };
-		D1BD7FA6EED3C462491390F6 /* ssl2.h in Headers */ = {isa = PBXBuildFile; fileRef = 7739C2ECFEC444826F4F32EA /* ssl2.h */; };
-		D276DF4FC4EB8B968350073F /* transport_impl.h in Headers */ = {isa = PBXBuildFile; fileRef = E9BFD5CE1581C9C96A33A657 /* transport_impl.h */; };
-		D29397696425196BA19A7308 /* seed.h in Headers */ = {isa = PBXBuildFile; fileRef = 77CE4C07F3D27C50DEBDB4A4 /* seed.h */; };
-		D2BCE53D8FE747AD8D95D22B /* cpu_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 5CFFF202D8C58B36ADA3DE94 /* cpu_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		D2DFDD76F185F5BB5AF2391D /* pollset_kick.h in Headers */ = {isa = PBXBuildFile; fileRef = C560E054B648B38F92F270A1 /* pollset_kick.h */; };
-		D32C57166B6F1D26F4E18911 /* wakeup_fd_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = DEB8C5F9370F106E90A84DEE /* wakeup_fd_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		D32DB15C51D95B1085EA9822 /* byte_buffer_reader.h in Headers */ = {isa = PBXBuildFile; fileRef = 5110D7E251E644EC6D7C29CA /* byte_buffer_reader.h */; };
-		D366C17CE6033CB2769871E4 /* transport_security.h in Headers */ = {isa = PBXBuildFile; fileRef = F0C991251C2107D1FBD154AF /* transport_security.h */; };
-		D3E97277595CE4CBD5520A03 /* des_old.h in Headers */ = {isa = PBXBuildFile; fileRef = FC6E72A9A76E69ADB344A62A /* des_old.h */; };
-		D401B7FD137FDFA051F4F2F9 /* GRPCCall.m in Sources */ = {isa = PBXBuildFile; fileRef = 9CDD140DA194B5246113EDC8 /* GRPCCall.m */; };
-		D41DBB418B770A75ABA43461 /* socket_utils_common_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = D6C8BC2D5261C752FBE0D073 /* socket_utils_common_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		D46DABD218F7EE5F5EE83E47 /* MutableExtensionRegistry.h in Headers */ = {isa = PBXBuildFile; fileRef = AC7D24C484B254C957CC365C /* MutableExtensionRegistry.h */; };
-		D4E16F88E8F560E29A6241BC /* sockaddr_utils.h in Headers */ = {isa = PBXBuildFile; fileRef = 857F065925832466000E24C4 /* sockaddr_utils.h */; };
-		D50A25382B2F2EFF51BB15EA /* AbstractMessageBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 462FC4958D1DC02236910099 /* AbstractMessageBuilder.h */; };
-		D519454B20EBE5A744D28288 /* secure_channel_create.c in Sources */ = {isa = PBXBuildFile; fileRef = F028342496E673415FF3D8AB /* secure_channel_create.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		D536329794DF6373495C4396 /* census_rpc_stats.c in Sources */ = {isa = PBXBuildFile; fileRef = FCDEC2AFE402D37148992805 /* census_rpc_stats.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		D54515B00B3A40B9BE563DDE /* MutableField.h in Headers */ = {isa = PBXBuildFile; fileRef = ACD20403C53CF2ECB88C1984 /* MutableField.h */; };
-		D54C3C334BB78E17691614C3 /* mdc2.h in Headers */ = {isa = PBXBuildFile; fileRef = CE9B94697CCEC36CED30CF18 /* mdc2.h */; };
-		D60BC7B5CB01559C6182D1A8 /* stream_map.c in Sources */ = {isa = PBXBuildFile; fileRef = CC72D69889FCA54FF26E059B /* stream_map.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		D61AACC3AEA522E8A3DB9D7B /* buffer.h in Headers */ = {isa = PBXBuildFile; fileRef = F3CD1C438363227E2959C8EC /* buffer.h */; };
-		D6536C2C6807417CA5D128C1 /* child_channel.h in Headers */ = {isa = PBXBuildFile; fileRef = CE4F5BE7E052D1309933236C /* child_channel.h */; };
-		D65ED6D74A684C62A43D2E41 /* Empty.pb.m in Sources */ = {isa = PBXBuildFile; fileRef = 0A8D8B65642D968FE2489FB4 /* Empty.pb.m */; };
-		D678660FE9083409E72C14D4 /* ExtendableMessageBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = EEACE028BFE2BD1DE7EBA99C /* ExtendableMessageBuilder.h */; };
-		D6DB8B4AF972A82591ADA52C /* credentials_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 3C89A7A6EA403EB3DC6B287B /* credentials_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		D6DED39816867A184CC0ABF1 /* call_log_batch.c in Sources */ = {isa = PBXBuildFile; fileRef = 0048A73AC7AEFB054999A639 /* call_log_batch.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		D70AE7D3AAE51AAE0B4B964D /* stream_encoder.c in Sources */ = {isa = PBXBuildFile; fileRef = 25389E5BD8E164F9DA3F870A /* stream_encoder.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		D769C5EAFEDCD7DF8279C868 /* md4.h in Headers */ = {isa = PBXBuildFile; fileRef = DB33BDC523FCA7A3F0E9B0CD /* md4.h */; };
-		D79088A2BFE4CA3FB755159F /* evp.h in Headers */ = {isa = PBXBuildFile; fileRef = 20EACCB92FAED41836935D0B /* evp.h */; };
-		D7B23B41FE001033CB5E090D /* file.c in Sources */ = {isa = PBXBuildFile; fileRef = 78E17449C6B53B05841EC6DA /* file.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		D7D0E904F329B3156B4887FA /* ui.h in Headers */ = {isa = PBXBuildFile; fileRef = 835E0E62F744BA594A13DB89 /* ui.h */; };
-		D7D70A69727D4BEB74B07CD3 /* stream_encoder.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F70A1753EA84C60AF27B5DE /* stream_encoder.h */; };
-		D7D92CA34B0B714AFEBE7D23 /* tls_gcc.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CD84E9AE38D8DA667136E64 /* tls_gcc.h */; };
-		D827738922E047A6E2D2764E /* Messages.pb.h in Headers */ = {isa = PBXBuildFile; fileRef = 0720FBDE49BBBBAA7B3E0DEF /* Messages.pb.h */; };
-		D8578BE80FB2D73942F3B69A /* crypto.h in Headers */ = {isa = PBXBuildFile; fileRef = 2C3AB039FE4E2FE6E21DB4C3 /* crypto.h */; };
-		D8827371E8D60BB99C3E4761 /* cmdline.h in Headers */ = {isa = PBXBuildFile; fileRef = 62C3614F855CAD59CEBDB1C4 /* cmdline.h */; };
-		D88BB4E887C9888234ABECDB /* iomgr_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 3B74FD6B6DCCD59F59C39884 /* iomgr_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		D8A3199E0931FB4359F19B0F /* evp.h in Headers */ = {isa = PBXBuildFile; fileRef = 20EACCB92FAED41836935D0B /* evp.h */; };
-		D9708E95D1FC105DA7EF16C0 /* string_win32.h in Headers */ = {isa = PBXBuildFile; fileRef = 632D3C9EB25C3C7659F9F39A /* string_win32.h */; };
-		D97CC464A48C55030160142A /* channel_create.c in Sources */ = {isa = PBXBuildFile; fileRef = 93FBD738A8069598A3816DB1 /* channel_create.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		D98BCFFFAD4815E73726CF17 /* base64.h in Headers */ = {isa = PBXBuildFile; fileRef = 2EAAA73555E295CC4EB69093 /* base64.h */; };
-		D998B38A004A8361E460C101 /* stream_map.h in Headers */ = {isa = PBXBuildFile; fileRef = A18A9E53902DA1A490D048A7 /* stream_map.h */; };
-		D99B2868A02B27C368AADE5B /* credentials.c in Sources */ = {isa = PBXBuildFile; fileRef = DAD9814362B1EC0A3BEFC733 /* credentials.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		D9D69F79ADD1C532EC42BE09 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E920231885948DD62874D4 /* Foundation.framework */; };
-		D9E969C338EF76A3B0FAF269 /* cancellable_platform.h in Headers */ = {isa = PBXBuildFile; fileRef = 845FA310D1B037B9E1D54905 /* cancellable_platform.h */; };
-		DA09971C0889964979D7D61E /* byte_buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 88986E5DC1E75A40B26FA0F3 /* byte_buffer.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		DA1DEAA33E9CCAFA8C324613 /* pollset_kick.c in Sources */ = {isa = PBXBuildFile; fileRef = 5DE51958FAA2D6EC3686404F /* pollset_kick.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		DA4635628EE1CB17C6B16F9D /* krb5_asn.h in Headers */ = {isa = PBXBuildFile; fileRef = A372F1563365DC01263466B5 /* krb5_asn.h */; };
-		DA6078CF801D2D98C9838CC2 /* sync.c in Sources */ = {isa = PBXBuildFile; fileRef = 1BD0836A20448E42E0314D8A /* sync.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		DA608A0C1B4B1DD542F9B519 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E920231885948DD62874D4 /* Foundation.framework */; };
-		DA99D1E5A271CA33406CBEE1 /* PBArray.m in Sources */ = {isa = PBXBuildFile; fileRef = 78F5A53737D40F816C71D4AA /* PBArray.m */; };
-		DAC2DDA4CE706558FA2118E2 /* client.c in Sources */ = {isa = PBXBuildFile; fileRef = 0886F5B8103F7797CD449DD8 /* client.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		DB27E14EDE04FACDB5499F9D /* pollset_windows.h in Headers */ = {isa = PBXBuildFile; fileRef = 97A3ACC219CC63F5D7FFD40C /* pollset_windows.h */; };
-		DB3DE5323A7AEF14407D2E24 /* slice_buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = D27CB2495D6BC2AAA54AD811 /* slice_buffer.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		DBFFCA363EB8A6E5D9B29F0F /* metadata_buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 65DC894DCBA3E25098C3F392 /* metadata_buffer.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		DC3C7E70EE16ECA23A9B4739 /* ssl3.h in Headers */ = {isa = PBXBuildFile; fileRef = C4E33A9259B1081D706CF1FB /* ssl3.h */; };
-		DC3E06BF91A5FEA23E64C664 /* init_unsecure.c in Sources */ = {isa = PBXBuildFile; fileRef = C3BFA648AC3F1804BED0C966 /* init_unsecure.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		DC6579026B449A7334832385 /* chttp2_transport.h in Headers */ = {isa = PBXBuildFile; fileRef = 8CDA69F3F5647005EF56EC3E /* chttp2_transport.h */; };
-		DCA1E5104A9C487AA8DE6332 /* channel_stack.c in Sources */ = {isa = PBXBuildFile; fileRef = 887D72DBB420C3E1A6738760 /* channel_stack.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		DCAE4461D7D26AE01291CCB3 /* transport_impl.h in Headers */ = {isa = PBXBuildFile; fileRef = E9BFD5CE1581C9C96A33A657 /* transport_impl.h */; };
-		DD1074CEE33612B52B4A701C /* cmdline.c in Sources */ = {isa = PBXBuildFile; fileRef = 136CEE7CF5D6B8674CA659B7 /* cmdline.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		DD177F2857087CEACA1B6E5B /* channel.h in Headers */ = {isa = PBXBuildFile; fileRef = 901652CA4B573F7BAA191043 /* channel.h */; };
-		DD1D3EE4BCB47C32DDB9E4A8 /* cmdline.h in Headers */ = {isa = PBXBuildFile; fileRef = 62C3614F855CAD59CEBDB1C4 /* cmdline.h */; };
-		DD3526667B8ACCBBA7103E70 /* frame_goaway.c in Sources */ = {isa = PBXBuildFile; fileRef = AC79A8E7153E7E4206A6E0F6 /* frame_goaway.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		DD6EFE28C40FD50B0AC421F7 /* parser.c in Sources */ = {isa = PBXBuildFile; fileRef = 5FB603E306CD89ADB1CE6511 /* parser.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		DDA860F2FF195D034E80398A /* alarm.c in Sources */ = {isa = PBXBuildFile; fileRef = 9711365E4FFC9119BEED12F2 /* alarm.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		DDC9E7139CDB2C937CF83B81 /* host_port.h in Headers */ = {isa = PBXBuildFile; fileRef = FE16C4FD70CFDC5F8E356C47 /* host_port.h */; };
-		DDFBD5AE2316A187B66BC406 /* pollset_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = F3DB27C5D118BD4492A9DCF9 /* pollset_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		DE03A3EA3B5A84333A24333A /* timers_preciseclock.h in Headers */ = {isa = PBXBuildFile; fileRef = A29A7E4785EC3464B81DE033 /* timers_preciseclock.h */; };
-		DE1455600C07547831ED39FE /* bin_encoder.h in Headers */ = {isa = PBXBuildFile; fileRef = 7F70FAFAB9F4A5F0703D92BA /* bin_encoder.h */; };
-		DE3D8AC6311C208130D9B14D /* GRXWriter+Transformations.m in Sources */ = {isa = PBXBuildFile; fileRef = 29AB49050027768AEA1E3811 /* GRXWriter+Transformations.m */; };
-		DEA34BD3DF840555CC97127D /* rsa.h in Headers */ = {isa = PBXBuildFile; fileRef = 3F919F2BECD5316CAE51EFB7 /* rsa.h */; };
-		DEC91C99827071D02CB8404A /* Test.pb.h in Headers */ = {isa = PBXBuildFile; fileRef = 98F217A4FEA5EA5AF56839E3 /* Test.pb.h */; };
-		DF09456244FE00A0CB2FB410 /* pollset_multipoller_with_epoll.c in Sources */ = {isa = PBXBuildFile; fileRef = 6D9F7A8D1118F332DA3364C4 /* pollset_multipoller_with_epoll.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		DF14B1E8F84C288A3AA437C3 /* env_linux.c in Sources */ = {isa = PBXBuildFile; fileRef = 3DB502DA27DE84D3006C0081 /* env_linux.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		DF450BABC01912F7CCFC24AA /* json_reader.c in Sources */ = {isa = PBXBuildFile; fileRef = A9B2304351F4D869D9983AE0 /* json_reader.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		DF86C3FBF4D1DDB34E4A6848 /* grpc.h in Headers */ = {isa = PBXBuildFile; fileRef = 296D8B18B1E9020B7FBF9ED7 /* grpc.h */; };
-		DF87D957D08EDF9A1975D310 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E920231885948DD62874D4 /* Foundation.framework */; };
-		DFB54A88A6B94A0DC51BF80E /* des.h in Headers */ = {isa = PBXBuildFile; fileRef = E764B272A54ECA2B4EEDDEF0 /* des.h */; };
-		DFC9FE10B9A541F2DD10D71E /* alpn.h in Headers */ = {isa = PBXBuildFile; fileRef = 4E526CA022944834AEEE078E /* alpn.h */; };
-		DFDF133B63EC148897209CB5 /* endpoint.h in Headers */ = {isa = PBXBuildFile; fileRef = 3A715DFC320B831B7F891BDA /* endpoint.h */; };
-		DFED98403160BA6B281B1320 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E920231885948DD62874D4 /* Foundation.framework */; };
-		E036D8B9F53EE04469F930AE /* cmac.h in Headers */ = {isa = PBXBuildFile; fileRef = C0CBC4CB17FEC26EA9AC1649 /* cmac.h */; };
-		E07B82A01C23C8B0C3236896 /* ocsp.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F44DED8449303D794BAB617 /* ocsp.h */; };
-		E088850C86D9E755F82655E3 /* dtls1.h in Headers */ = {isa = PBXBuildFile; fileRef = 66DC0069EFDA6F4ECCFA552F /* dtls1.h */; };
-		E09C9309D0055D60CE53A773 /* ExtendableMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8ABA1AEF600162BC25FF26A0 /* ExtendableMessage.m */; };
-		E0A8E63F4786E71191FAFECC /* Messages.pb.m in Sources */ = {isa = PBXBuildFile; fileRef = 0B52E252ED090B7DB0024334 /* Messages.pb.m */; };
-		E0CBB92D4CF7A0AD1FB02250 /* alarm_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 76F2FAD49839F1EAB96C1537 /* alarm_internal.h */; };
-		E0D4D65CB5ACEC6A496BD66F /* Pods-Sample-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B4203115D83813C7536D6932 /* Pods-Sample-dummy.m */; };
-		E0F31B941138DD7D00F78D9D /* GRXWriter+Immediate.h in Headers */ = {isa = PBXBuildFile; fileRef = B353EC7F04DD7326865BF2E4 /* GRXWriter+Immediate.h */; };
-		E126A5B5D9FD3BFBFDC5C6E4 /* grpc_string.h in Headers */ = {isa = PBXBuildFile; fileRef = D16D6E15BB846B8D1CC63D37 /* grpc_string.h */; };
-		E155D6C4F5C97DC728A8A103 /* GeneratedMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = B17B03EA2FA04E545FF6F671 /* GeneratedMessage.h */; };
-		E1726083BD683B6A445A079A /* cpu_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 5CFFF202D8C58B36ADA3DE94 /* cpu_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E176F12E652A18B90C8EC257 /* tcp_windows.h in Headers */ = {isa = PBXBuildFile; fileRef = AF6A0C7403B1E83482072EAD /* tcp_windows.h */; };
-		E17E16BDDBB6E34840E52EF1 /* channel.c in Sources */ = {isa = PBXBuildFile; fileRef = B542D487162588CF33BE01BB /* channel.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E192C7A5389995920B8F9821 /* time_averaged_stats.c in Sources */ = {isa = PBXBuildFile; fileRef = 692DA013B9BF62ECADE9439E /* time_averaged_stats.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E194212152ACA5B06BD1CCC4 /* httpcli.c in Sources */ = {isa = PBXBuildFile; fileRef = 9EB5E9E525851BF88C1930C0 /* httpcli.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E19D6A0C37190FF60541DC29 /* env_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = C85D5228B2712CE336C2F9DA /* env_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E1BD2A722EB69CB1AEB235B0 /* json_token.c in Sources */ = {isa = PBXBuildFile; fileRef = 9ECE1E3191D8265752CA58E2 /* json_token.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E1DB994B7D45C311D71665B3 /* pkcs12.h in Headers */ = {isa = PBXBuildFile; fileRef = 077488225B8A45F3B5E307D5 /* pkcs12.h */; };
-		E20A238B2CE6A3EEF9F5CCB9 /* pollset_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = F3DB27C5D118BD4492A9DCF9 /* pollset_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E235367793C0AB5BE1227F77 /* huffsyms.c in Sources */ = {isa = PBXBuildFile; fileRef = 66A49F3E07E65E9D23B71E15 /* huffsyms.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E29499EE863E0B12E40CDCF6 /* secure_endpoint.c in Sources */ = {isa = PBXBuildFile; fileRef = DA0324B7B188B50CC09EE455 /* secure_endpoint.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E29608554C0F8F529228E2D8 /* rc4.h in Headers */ = {isa = PBXBuildFile; fileRef = 016F12209885CD0253753FF5 /* rc4.h */; };
-		E29642BB56B8EC52ACDBB445 /* atm_gcc_atomic.h in Headers */ = {isa = PBXBuildFile; fileRef = 32A314F8B2AB1E9F39C1B0A4 /* atm_gcc_atomic.h */; };
-		E2F4BAE6249CA2EBE89C2569 /* frame_settings.h in Headers */ = {isa = PBXBuildFile; fileRef = 844295EC51D3903941C395C4 /* frame_settings.h */; };
-		E33965CB7775B012628352B6 /* TextFormat.h in Headers */ = {isa = PBXBuildFile; fileRef = DFF32937D1BD905796DBC05A /* TextFormat.h */; };
-		E3511EDB5AF1AA62CA55FB66 /* TextFormat.m in Sources */ = {isa = PBXBuildFile; fileRef = E446230CDDACC00743326ACC /* TextFormat.m */; };
-		E35D745EA016B11B2839D589 /* window_stats.h in Headers */ = {isa = PBXBuildFile; fileRef = 22CF3D4CF0769E7668CAA7F1 /* window_stats.h */; };
-		E38616C58F291975442B4FF1 /* AbstractMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = F271930D3583DA89399BDFBB /* AbstractMessage.h */; };
-		E39D3D6657127262426CA948 /* call.h in Headers */ = {isa = PBXBuildFile; fileRef = 395B0602EA14447B448D6C9C /* call.h */; };
-		E3BBE64A284C1E05EB8D7B70 /* evp.h in Headers */ = {isa = PBXBuildFile; fileRef = 20EACCB92FAED41836935D0B /* evp.h */; };
-		E3C87E6747A79CB785B0B34A /* GRPCChannel.m in Sources */ = {isa = PBXBuildFile; fileRef = 78CC954F00740B8C589205E2 /* GRPCChannel.m */; };
-		E3F4B9B83E0D3C6637BA392C /* pollset_kick.c in Sources */ = {isa = PBXBuildFile; fileRef = 5DE51958FAA2D6EC3686404F /* pollset_kick.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E43052A5659CF21368787780 /* Route_guide.pb.m in Sources */ = {isa = PBXBuildFile; fileRef = DC73D1CE591B9BA80D367B85 /* Route_guide.pb.m */; };
-		E47221D291DC7D153F268B17 /* hash_table.h in Headers */ = {isa = PBXBuildFile; fileRef = E6238E0B2F14B6A142E9386E /* hash_table.h */; };
-		E483C93E854A8E7469943A50 /* call.c in Sources */ = {isa = PBXBuildFile; fileRef = 272957AFD4ACE71712E696CF /* call.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E492F0414629A44FBF20B046 /* tcp_client_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = B916697BDD15D047B9CE258E /* tcp_client_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E4A6965C52BED798DE36A3F3 /* hash_table.c in Sources */ = {isa = PBXBuildFile; fileRef = B3B63D66E287A3C87A6A370F /* hash_table.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E4FBF1A45F8B1151A44390ED /* NSEnumerator+GRXUtil.h in Headers */ = {isa = PBXBuildFile; fileRef = 62FF523610CB2A23C2394C8E /* NSEnumerator+GRXUtil.h */; };
-		E5B7D776344AE37C166B00CA /* log_win32.c in Sources */ = {isa = PBXBuildFile; fileRef = 3DB3834E86AC5CD0D96885D2 /* log_win32.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E5D63489DE2CB74E1715D216 /* alarm_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 76F2FAD49839F1EAB96C1537 /* alarm_internal.h */; };
-		E5DA29635551EB1498F0D3B1 /* time.c in Sources */ = {isa = PBXBuildFile; fileRef = A70DA7CEE54302BED2248E14 /* time.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E5E2689486D4E4AB4A55A014 /* bio.h in Headers */ = {isa = PBXBuildFile; fileRef = C651F351648FAA6E7EDD7F22 /* bio.h */; };
-		E64B43AA09DE7E49CC1CC298 /* socket_utils_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = EF906AB8AF22A3D40E284C93 /* socket_utils_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E658D909485DC0886C867B35 /* census_filter.c in Sources */ = {isa = PBXBuildFile; fileRef = 0B9DB82928AAE1ADBF1DB4A7 /* census_filter.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E666EC35EB1ABE2DB4F0D650 /* security_connector.h in Headers */ = {isa = PBXBuildFile; fileRef = 8F8D3410DEEEE721CB1E2340 /* security_connector.h */; };
-		E6757C7D1775995AC1A7F81B /* endpoint.c in Sources */ = {isa = PBXBuildFile; fileRef = AF99D421A9B44F389FD75BAB /* endpoint.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E6B18B834045A80A830F5ED8 /* tls1.h in Headers */ = {isa = PBXBuildFile; fileRef = B65E20D0DB3E4F3D6867FB77 /* tls1.h */; };
-		E6B38AEE378FF7CC216D93BC /* security_connector.c in Sources */ = {isa = PBXBuildFile; fileRef = FDD2798B42FADD235D062C79 /* security_connector.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E6E993E1C1D6A8EA2B703B71 /* frame_settings.h in Headers */ = {isa = PBXBuildFile; fileRef = 844295EC51D3903941C395C4 /* frame_settings.h */; };
-		E7025964197E9644CB0CDA64 /* Pods-SampleTests-gRPC-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0E0C22A75BAE66DCC0928A86 /* Pods-SampleTests-gRPC-dummy.m */; };
-		E70C34053FBF84362CB51D1E /* census_init.c in Sources */ = {isa = PBXBuildFile; fileRef = 2A70DB43C1169315D6ADE286 /* census_init.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E744D6684B4587FB1B4B547D /* resolve_address.h in Headers */ = {isa = PBXBuildFile; fileRef = FBEC0724BD339FFB26F5F022 /* resolve_address.h */; };
-		E74A037B6DD82999415ACF37 /* histogram.h in Headers */ = {isa = PBXBuildFile; fileRef = 58854B850D217166AEA9B026 /* histogram.h */; };
-		E774D411E70BD8F690C8FBE5 /* client_channel.h in Headers */ = {isa = PBXBuildFile; fileRef = C238706A0B82D7D865504F64 /* client_channel.h */; };
-		E78B751BB17B2F492BCA5B1D /* pollset_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 2FEAD4CE0E0E4905BF839FBA /* pollset_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E79278802C2D189DCFBF2FD0 /* Field.m in Sources */ = {isa = PBXBuildFile; fileRef = C97B5CA8ACEAF0CCF4C9F319 /* Field.m */; };
-		E7B9AE558CCF6FCD71BED0DD /* sync_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 0C105B76701EFB0EFABDBBF2 /* sync_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E825E10093862AF249C08529 /* http_server_filter.c in Sources */ = {isa = PBXBuildFile; fileRef = 702E018073440195E124A8C4 /* http_server_filter.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E85457C251E63DE1711CE562 /* slice_buffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 1991DD1C6F949CF8FADB4C7E /* slice_buffer.h */; };
-		E86B3D0B315A7D922E14F10B /* GRPCDelegateWrapper.h in Headers */ = {isa = PBXBuildFile; fileRef = 4F5C6030E0C6D3878C91CDBA /* GRPCDelegateWrapper.h */; };
-		E8896CD0728993A95826D347 /* log_linux.c in Sources */ = {isa = PBXBuildFile; fileRef = 0B45E5CE899602BFD5F23E6C /* log_linux.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E894D95897BE9432148DD407 /* hash_table.c in Sources */ = {isa = PBXBuildFile; fileRef = B3B63D66E287A3C87A6A370F /* hash_table.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		E970E117015469E1A11234A4 /* Descriptor.pb.h in Headers */ = {isa = PBXBuildFile; fileRef = F60215710E44F2B63C712F67 /* Descriptor.pb.h */; };
-		E993C8013FABFAA27C2F7A31 /* whrlpool.h in Headers */ = {isa = PBXBuildFile; fileRef = 7832206106004363B9EF30E6 /* whrlpool.h */; };
-		EA31EDB87882D38E6D01E4B0 /* cancellable.c in Sources */ = {isa = PBXBuildFile; fileRef = 1693B87FC0921746424B8E7A /* cancellable.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		EA4D8E1712CF5B459ED24640 /* transport_impl.h in Headers */ = {isa = PBXBuildFile; fileRef = E9BFD5CE1581C9C96A33A657 /* transport_impl.h */; };
-		EA84AF84B140B546E5B221DA /* ssl23.h in Headers */ = {isa = PBXBuildFile; fileRef = 864E6908BB9552D10287236D /* ssl23.h */; };
-		EA9B64532E9EE9B7E8CF1711 /* init.h in Headers */ = {isa = PBXBuildFile; fileRef = 6F49DD1F6DA272012D28C11A /* init.h */; };
-		EAE25C8FA41E888BD53543B8 /* ssl3.h in Headers */ = {isa = PBXBuildFile; fileRef = C4E33A9259B1081D706CF1FB /* ssl3.h */; };
-		EB207A07840F0D787DE9574D /* Field.m in Sources */ = {isa = PBXBuildFile; fileRef = C97B5CA8ACEAF0CCF4C9F319 /* Field.m */; };
-		EB2F7FEA5AC820ADBD375FE1 /* census_log.h in Headers */ = {isa = PBXBuildFile; fileRef = DA022393E5E17A516743E561 /* census_log.h */; };
-		EB3C8B6C6A9A6B465B881DB6 /* atm.h in Headers */ = {isa = PBXBuildFile; fileRef = DE2A0ED4DDBEC3E6D84D16F3 /* atm.h */; };
-		EB4A481DBA7F5B9ED3FE2A5A /* GRXWriter+Transformations.h in Headers */ = {isa = PBXBuildFile; fileRef = 21839ADB0BEF093A31BF49B1 /* GRXWriter+Transformations.h */; };
-		EB7E892D50FFA5760EBB75D7 /* slice_buffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 1991DD1C6F949CF8FADB4C7E /* slice_buffer.h */; };
-		EBC1C48189C2D6AC69429A45 /* string_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 77C6558BBFF31326983320B0 /* string_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		EBD5D0B63DB8F9CD2243091C /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E920231885948DD62874D4 /* Foundation.framework */; };
-		EC03BB992B2D33EDB30D7EB8 /* client_channel.h in Headers */ = {isa = PBXBuildFile; fileRef = C238706A0B82D7D865504F64 /* client_channel.h */; };
-		EC3B09B8FF8B80DA62D92780 /* pollset.h in Headers */ = {isa = PBXBuildFile; fileRef = E6A4F7BF5200983A0464A000 /* pollset.h */; };
-		EC6CDF21F2C5C2CF2FFFE8F6 /* credentials.c in Sources */ = {isa = PBXBuildFile; fileRef = DAD9814362B1EC0A3BEFC733 /* credentials.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		EC7B4DAFA07DB9C2DFC63658 /* thd.c in Sources */ = {isa = PBXBuildFile; fileRef = D3D5A17BD6040A60D82D06EE /* thd.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		EC98C650783D9C7153EE867F /* GRXNSScalarEnumerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 83E135FAC325138487E28FBE /* GRXNSScalarEnumerator.h */; };
-		EC9AFE6749DDBB2CE749091C /* iomgr_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 217C6A65943248F2BCDB480A /* iomgr_posix.h */; };
-		EC9EBE44A28F204ACAECB60E /* trace.c in Sources */ = {isa = PBXBuildFile; fileRef = B2BBB2419D8C53FE86B50785 /* trace.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		ED1C2551796251D39F8B9386 /* UnknownFieldSetBuilder.m in Sources */ = {isa = PBXBuildFile; fileRef = C7D47F1384449D2EDFFFE2C5 /* UnknownFieldSetBuilder.m */; };
-		ED2132EC275D58DDE58636AE /* chttp2_transport.c in Sources */ = {isa = PBXBuildFile; fileRef = 0639FA42DBCCF395D3B05632 /* chttp2_transport.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		ED7211185D62CAB5ECB5F394 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E920231885948DD62874D4 /* Foundation.framework */; };
-		ED82757251D748B933C01DAA /* log_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 83FC73B2F90BD4477BAB7716 /* log_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		EDA212E6F09692071A5C7D3F /* CodedInputStream.m in Sources */ = {isa = PBXBuildFile; fileRef = E1EE04CA884BA2771F155B1A /* CodedInputStream.m */; };
-		EDC74856B63EF590856DD0E0 /* sync_win32.h in Headers */ = {isa = PBXBuildFile; fileRef = DC630B706D01BDA73586F4AF /* sync_win32.h */; };
-		EDD9DC5953D8607CCC5DAA20 /* ConcreteExtensionField.m in Sources */ = {isa = PBXBuildFile; fileRef = B504F82835C2F0A602CA44BC /* ConcreteExtensionField.m */; };
-		EE5C0CF95DBBE491A4C95B0C /* murmur_hash.h in Headers */ = {isa = PBXBuildFile; fileRef = F7F6C37F6B1B704ADEA89319 /* murmur_hash.h */; };
-		EE9538238114755FD9FEB7DA /* Field.m in Sources */ = {isa = PBXBuildFile; fileRef = C97B5CA8ACEAF0CCF4C9F319 /* Field.m */; };
-		EF63CB8BB08EC7DF2C8935D7 /* Messages.pb.m in Sources */ = {isa = PBXBuildFile; fileRef = 0B52E252ED090B7DB0024334 /* Messages.pb.m */; };
-		EF6727678B8CC28CE4708219 /* client_setup.h in Headers */ = {isa = PBXBuildFile; fileRef = 555B0F2CAD70423DE30C6444 /* client_setup.h */; };
-		EF7642DAA8BEA8242AE57A4D /* CodedOutputStream.m in Sources */ = {isa = PBXBuildFile; fileRef = 266267E08A28C2BDB27AB4B1 /* CodedOutputStream.m */; };
-		EFA749E7B1BA2A1A22763B56 /* GRPCDelegateWrapper.h in Headers */ = {isa = PBXBuildFile; fileRef = 4F5C6030E0C6D3878C91CDBA /* GRPCDelegateWrapper.h */; };
-		EFED0F1D969079C1BED8D759 /* algorithm.c in Sources */ = {isa = PBXBuildFile; fileRef = C120CA737CE445803BF6F292 /* algorithm.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		EFFE11966F67590EEE261EDD /* json_reader.h in Headers */ = {isa = PBXBuildFile; fileRef = C4A92081738D6E4F939A0969 /* json_reader.h */; };
-		F02050D0A64CA37E754F1830 /* rand.h in Headers */ = {isa = PBXBuildFile; fileRef = ADBD2557A394F8F84A762A1C /* rand.h */; };
-		F07C8E57F625962A307B1D9E /* timers.c in Sources */ = {isa = PBXBuildFile; fileRef = 1B04B251148F84EB89C5EF9A /* timers.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F0BBB741DD03B70B5B2F8EBF /* algorithm.h in Headers */ = {isa = PBXBuildFile; fileRef = 6B729130FD8D5696CE112A9B /* algorithm.h */; };
-		F0D04AD3E1C006860139A79C /* murmur_hash.h in Headers */ = {isa = PBXBuildFile; fileRef = F7F6C37F6B1B704ADEA89319 /* murmur_hash.h */; };
-		F0FD770B995EC931F3479017 /* thd_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = A2D0C9AF67318A88A271B329 /* thd_internal.h */; };
-		F119BC90F1526D007B4EFB2A /* time_averaged_stats.c in Sources */ = {isa = PBXBuildFile; fileRef = 692DA013B9BF62ECADE9439E /* time_averaged_stats.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F139D13210BAF9A65F9F34D8 /* sockaddr.h in Headers */ = {isa = PBXBuildFile; fileRef = 7888E3FEC368C63162A16235 /* sockaddr.h */; };
-		F14069192D1CA8003C7DF72D /* Pods-gRPC-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 23FC9E110CDD11D7B12A9A8D /* Pods-gRPC-dummy.m */; };
-		F186FFB13D8D9E6FD17FDDCA /* GRPCCompletionQueue.m in Sources */ = {isa = PBXBuildFile; fileRef = 3843F294A0DAFF3AE97F28E7 /* GRPCCompletionQueue.m */; };
-		F1BBE2E5342DD7EC3945868C /* cast.h in Headers */ = {isa = PBXBuildFile; fileRef = BE4BCA754104BF9BFE6B27DB /* cast.h */; };
-		F1BCC39C97E972BE490556EB /* surface_trace.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B7E488CD9E640DE9592977E /* surface_trace.h */; };
-		F1E15846169DE757D3B4F90D /* census_filter.c in Sources */ = {isa = PBXBuildFile; fileRef = 0B9DB82928AAE1ADBF1DB4A7 /* census_filter.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F22AA0922BF4F89717F047D7 /* frame_goaway.h in Headers */ = {isa = PBXBuildFile; fileRef = 00B587323BFCD1957DEC693D /* frame_goaway.h */; };
-		F237ADEF9BF54A0707894BC8 /* noop_filter.h in Headers */ = {isa = PBXBuildFile; fileRef = 08871F1CD8513D34428A2933 /* noop_filter.h */; };
-		F25CB4658EB35CC918D2B0DE /* credentials.h in Headers */ = {isa = PBXBuildFile; fileRef = 7F91F8C861FF28FC65974048 /* credentials.h */; };
-		F2722413A5E7DDD72375A013 /* secure_endpoint.h in Headers */ = {isa = PBXBuildFile; fileRef = E83BCAEE168FF4FC16653717 /* secure_endpoint.h */; };
-		F27D5BF4F91E709AAA257F77 /* credentials.h in Headers */ = {isa = PBXBuildFile; fileRef = 7F91F8C861FF28FC65974048 /* credentials.h */; };
-		F28F51130D36F0287029C5EB /* json_writer.c in Sources */ = {isa = PBXBuildFile; fileRef = 89BF934C96AB0AB0CBA4E05A /* json_writer.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F2CFB62D1DD00E84136F4D2A /* env_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = C85D5228B2712CE336C2F9DA /* env_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F2D3C6DBA9EBA903167EB235 /* comp.h in Headers */ = {isa = PBXBuildFile; fileRef = FE566BB5269F67EEF6FE6960 /* comp.h */; };
-		F2F131A159F9BAFE744858E3 /* GRXNSBlockEnumerator.h in Headers */ = {isa = PBXBuildFile; fileRef = AF17EDE3DF892AA526697F9C /* GRXNSBlockEnumerator.h */; };
-		F34E98CE9D7634252259B449 /* httpcli_security_connector.h in Headers */ = {isa = PBXBuildFile; fileRef = 77E040AA780ABF0B8A8C0390 /* httpcli_security_connector.h */; };
-		F353303E37ED91D90DFEC071 /* algorithm.c in Sources */ = {isa = PBXBuildFile; fileRef = C120CA737CE445803BF6F292 /* algorithm.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F3833C955230EDFBF28A0583 /* ec.h in Headers */ = {isa = PBXBuildFile; fileRef = 55946E8A56007AB0F3AF8283 /* ec.h */; };
-		F397420FB1A4B01639F55D75 /* connected_channel.c in Sources */ = {isa = PBXBuildFile; fileRef = 092547DB130BFAC1D87FDD8A /* connected_channel.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F3DE465337C5EF3AAD9BBC7B /* GRPCUnsecuredChannel.m in Sources */ = {isa = PBXBuildFile; fileRef = 84699F407C0F5C552CFE19E9 /* GRPCUnsecuredChannel.m */; };
-		F416A35C5E3E030CBE430063 /* GeneratedMessageBuilder.h in Headers */ = {isa = PBXBuildFile; fileRef = 882FB0E68742560157A92A3A /* GeneratedMessageBuilder.h */; };
-		F42DD8436FC7A36879662366 /* call_op_string.c in Sources */ = {isa = PBXBuildFile; fileRef = 08438C3CB2AC3F96F24EA50F /* call_op_string.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F47486C2D438B18285F9CC21 /* MutableField.h in Headers */ = {isa = PBXBuildFile; fileRef = ACD20403C53CF2ECB88C1984 /* MutableField.h */; };
-		F474E67A9D2A3696FD2FA3E4 /* camellia.h in Headers */ = {isa = PBXBuildFile; fileRef = 66F71AE62EB572BA6DD5A32A /* camellia.h */; };
-		F4B87AD47A83E6764C7DA6A1 /* algorithm.c in Sources */ = {isa = PBXBuildFile; fileRef = C120CA737CE445803BF6F292 /* algorithm.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F4C02A30CEBC6F8C41F5013A /* httpcli.h in Headers */ = {isa = PBXBuildFile; fileRef = 208DF1BA4BA8F949D6D903B3 /* httpcli.h */; };
-		F4ED6BD1572C081CAC06B113 /* call_op_string.c in Sources */ = {isa = PBXBuildFile; fileRef = 08438C3CB2AC3F96F24EA50F /* call_op_string.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F4F710B0678B4B0991DCC75E /* census_rpc_stats.h in Headers */ = {isa = PBXBuildFile; fileRef = EFCA73F5E80AE5E7C18BAE5F /* census_rpc_stats.h */; };
-		F502CA38CF13BA2B13A389D7 /* GRXNSBlockEnumerator.m in Sources */ = {isa = PBXBuildFile; fileRef = 8BD3A6A6436D217FF1D0401C /* GRXNSBlockEnumerator.m */; };
-		F560DE1B37E3E9867BB40E42 /* tls_msvc.h in Headers */ = {isa = PBXBuildFile; fileRef = 07ADEF22FC5A6CA8425ADB68 /* tls_msvc.h */; };
-		F5B9A8F9A4CDDD2C34D4F549 /* http_filter.h in Headers */ = {isa = PBXBuildFile; fileRef = 82E0D0FF1330995CD65F17F9 /* http_filter.h */; };
-		F639AA28AC38A019A1A6C6A9 /* varint.h in Headers */ = {isa = PBXBuildFile; fileRef = 772C64BCD36866BCD61FD0CF /* varint.h */; };
-		F6522F3FF5B6AF620895A569 /* stream_map.c in Sources */ = {isa = PBXBuildFile; fileRef = CC72D69889FCA54FF26E059B /* stream_map.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F65E5989FBDDD2618D70C26A /* Pods-Route_guide-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 253AE8966BA024A90D547F8D /* Pods-Route_guide-dummy.m */; };
-		F68CD6EDE87DC8AEE25653E7 /* byte_buffer_queue.h in Headers */ = {isa = PBXBuildFile; fileRef = 1494BF1C6BBB3E7058D0B384 /* byte_buffer_queue.h */; };
-		F69BFFA451A71BA94348F35D /* child_channel.h in Headers */ = {isa = PBXBuildFile; fileRef = CE4F5BE7E052D1309933236C /* child_channel.h */; };
-		F6F4A894FDCE2EBC85F9C26B /* http_client_filter.h in Headers */ = {isa = PBXBuildFile; fileRef = F2704E6980860EA1AB6A090F /* http_client_filter.h */; };
-		F70F1FBED8F6F9CB4E4AD24D /* UnknownFieldSet.m in Sources */ = {isa = PBXBuildFile; fileRef = B52453B197D589FB52125E87 /* UnknownFieldSet.m */; };
-		F71055D669408EE6B6C4A30F /* dtls1.h in Headers */ = {isa = PBXBuildFile; fileRef = 66DC0069EFDA6F4ECCFA552F /* dtls1.h */; };
-		F7168500BF9500A7FB3F67E1 /* connected_channel.c in Sources */ = {isa = PBXBuildFile; fileRef = 092547DB130BFAC1D87FDD8A /* connected_channel.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F728068C3E05C35EF8B4A6C0 /* safestack.h in Headers */ = {isa = PBXBuildFile; fileRef = ED937D92BFD9EE65B9629994 /* safestack.h */; };
-		F73CDC989A6F0DF22CF96C98 /* GRPCSecureChannel.m in Sources */ = {isa = PBXBuildFile; fileRef = A543115DBDA830174D19FAD7 /* GRPCSecureChannel.m */; };
-		F76ABFE9BE96C5C34FF50DE1 /* parser.h in Headers */ = {isa = PBXBuildFile; fileRef = 686C0D5512A270C008BCF001 /* parser.h */; };
-		F78A76996F319DD2348B5D66 /* WireFormat.m in Sources */ = {isa = PBXBuildFile; fileRef = 53F5707E31B5AB47CC439A2C /* WireFormat.m */; };
-		F7A0A889E38166794356693F /* child_channel.c in Sources */ = {isa = PBXBuildFile; fileRef = 9478C18EECEB8DD6252D2215 /* child_channel.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F7B1AEA4BEE878716048BD63 /* tcp_server_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 651FAE8C05B04EB09ADA44B1 /* tcp_server_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F8436B61C0B461DD11DF7049 /* wakeup_fd_eventfd.c in Sources */ = {isa = PBXBuildFile; fileRef = E8E8F6A5EC1411544D5BB809 /* wakeup_fd_eventfd.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F85A7B8E608128554BDBDEA6 /* socket_utils_common_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = D6C8BC2D5261C752FBE0D073 /* socket_utils_common_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F85D03CCB34504E300C34001 /* cpu_linux.c in Sources */ = {isa = PBXBuildFile; fileRef = EB3D587E70F10F51FAD52541 /* cpu_linux.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F86FED1901AF50700516EC81 /* client_setup.c in Sources */ = {isa = PBXBuildFile; fileRef = AB8B3BA0CC1EA854D1020AEA /* client_setup.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F8A0BBB7E98F9ADD8096EEB8 /* pollset_multipoller_with_poll_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = 4CE6325E302D61903CD1FD28 /* pollset_multipoller_with_poll_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F8DD5E944DD6A78A369407D2 /* ExtendableMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = BB5F6E52609DF6A8B79E6C6E /* ExtendableMessage.h */; };
-		F901E898EE25C206D3C9D2C8 /* secure_endpoint.c in Sources */ = {isa = PBXBuildFile; fileRef = DA0324B7B188B50CC09EE455 /* secure_endpoint.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F91B0D6B9740C91FB994C0D3 /* hash_table.c in Sources */ = {isa = PBXBuildFile; fileRef = B3B63D66E287A3C87A6A370F /* hash_table.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F91CCFB28E1CFBD393D71762 /* socket_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = E7BC6ECD4926C4D722CA46C9 /* socket_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		F91F695A7076886D3CB2DAB3 /* tls.h in Headers */ = {isa = PBXBuildFile; fileRef = 02B8069D19729724DF1290A0 /* tls.h */; };
-		F94E36DF3EF70787933FFE6A /* opensslconf.h in Headers */ = {isa = PBXBuildFile; fileRef = 32C499FB0870BEF8AF1565FC /* opensslconf.h */; };
-		F99B5C1CCBC7EA120450462F /* noop_filter.c in Sources */ = {isa = PBXBuildFile; fileRef = 8FE7F081D7EBCCBF8595A007 /* noop_filter.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		FA379C4391D1CBACF226A22B /* TextFormat.h in Headers */ = {isa = PBXBuildFile; fileRef = DFF32937D1BD905796DBC05A /* TextFormat.h */; };
-		FA5A0FD2144550ADD9897FB4 /* pem2.h in Headers */ = {isa = PBXBuildFile; fileRef = 97AC1F49BA95AC83993BCB91 /* pem2.h */; };
-		FA5BA0BC7B92561B16D3A6DB /* tcp_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 0DBA6C9779F09A779661A077 /* tcp_posix.h */; };
-		FA9C12071BF7ED7D7FD9D6F6 /* GRXWriter.m in Sources */ = {isa = PBXBuildFile; fileRef = 00137D70FD603FE10A44A443 /* GRXWriter.m */; };
-		FAB120AAA6B50891EC17B452 /* stream_op.c in Sources */ = {isa = PBXBuildFile; fileRef = 7443FC5042AD6D54F533BE2F /* stream_op.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		FABF8677368842EA4431FAC7 /* status_conversion.c in Sources */ = {isa = PBXBuildFile; fileRef = CFA8E7BD1676F3248B151924 /* status_conversion.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		FB28E5B6F91CE133CAE4DBBF /* channel_args.h in Headers */ = {isa = PBXBuildFile; fileRef = 7256585C37337ED83551BB66 /* channel_args.h */; };
-		FB71F7232E66495B08C78743 /* time_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = B0EF8D6D45E898F9B98D43C5 /* time_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		FBD5DF85A941795BF9D51A60 /* RingBuffer.m in Sources */ = {isa = PBXBuildFile; fileRef = E307610E1EEEFBA4D4925832 /* RingBuffer.m */; };
-		FBEA21590916CBCBEA3AF284 /* NSError+GRPC.h in Headers */ = {isa = PBXBuildFile; fileRef = E3EE726B6CC258D7AD02F50A /* NSError+GRPC.h */; };
-		FC6F97DE90F0DEEBCF549489 /* frame_data.h in Headers */ = {isa = PBXBuildFile; fileRef = 4EBBF04A177E2CF6B10FE856 /* frame_data.h */; };
-		FC7EA70B0C5514CAD72C270C /* GeneratedMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8A255B56065DAB7E8DB7345A /* GeneratedMessage.m */; };
-		FC8978A1F1FDB4568AC109A2 /* tls_pthread.h in Headers */ = {isa = PBXBuildFile; fileRef = DE0442F9E24E5B99169CC8E1 /* tls_pthread.h */; };
-		FC95E0B9D72DF90929CACCB9 /* census_tracing.h in Headers */ = {isa = PBXBuildFile; fileRef = 647DA385735244E30B6A372B /* census_tracing.h */; };
-		FCA05EB01597AC5FBF14C945 /* md5.h in Headers */ = {isa = PBXBuildFile; fileRef = 4A34766847C2DFF77298EA4D /* md5.h */; };
-		FCC5DB6332BEF37B4B8D38FF /* transport_security.h in Headers */ = {isa = PBXBuildFile; fileRef = F0C991251C2107D1FBD154AF /* transport_security.h */; };
-		FCD1D056B1085FB23EC0B35E /* bn.h in Headers */ = {isa = PBXBuildFile; fileRef = DDB7824792A0D7E587422DEC /* bn.h */; };
-		FCEAD60E975F55CCB9F4CE8B /* metadata.c in Sources */ = {isa = PBXBuildFile; fileRef = B8A175B88623510F93F363DD /* metadata.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		FD13D3F66A2053D28F019B69 /* google_default_credentials.c in Sources */ = {isa = PBXBuildFile; fileRef = C539CB090E9EAAED0464BACD /* google_default_credentials.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		FD24D409D804508C7D9D2FD8 /* server.h in Headers */ = {isa = PBXBuildFile; fileRef = 9E97C00F1298866BC5B942A0 /* server.h */; };
-		FD3430817B54AC7F1749D67B /* frame_window_update.h in Headers */ = {isa = PBXBuildFile; fileRef = FA1E53C03134BD79E85D69BB /* frame_window_update.h */; };
-		FD6868CF357F236011591B7C /* socket_utils_posix.c in Sources */ = {isa = PBXBuildFile; fileRef = EF906AB8AF22A3D40E284C93 /* socket_utils_posix.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		FD7C275D23C2572A00EA5DA7 /* TextFormat.m in Sources */ = {isa = PBXBuildFile; fileRef = E446230CDDACC00743326ACC /* TextFormat.m */; };
-		FD90F8325B4504D223E4727A /* buffer.h in Headers */ = {isa = PBXBuildFile; fileRef = F3CD1C438363227E2959C8EC /* buffer.h */; };
-		FDB3B771966F72B15BA49799 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E920231885948DD62874D4 /* Foundation.framework */; };
-		FDB64740A220064941124CE2 /* sync_win32.h in Headers */ = {isa = PBXBuildFile; fileRef = DC630B706D01BDA73586F4AF /* sync_win32.h */; };
-		FE3A6E10B1339A609B9B4165 /* iocp_windows.c in Sources */ = {isa = PBXBuildFile; fileRef = 8EF237AADBB32AE1589440C6 /* iocp_windows.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		FE79C454FF2B8EA1910928AF /* sockaddr_posix.h in Headers */ = {isa = PBXBuildFile; fileRef = 00D1F7FE42811771A45CB7E7 /* sockaddr_posix.h */; };
-		FEB547C5119839C0FC6830D7 /* Empty.pb.h in Headers */ = {isa = PBXBuildFile; fileRef = 8CC2A8976E4F1AC52BF5A240 /* Empty.pb.h */; };
-		FEC3A255ADA67E8CD72BD2F8 /* lame_client.c in Sources */ = {isa = PBXBuildFile; fileRef = 82B014EBF0529BFB30D7972A /* lame_client.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		FF186E6AAFA2043E1E230DBA /* frame_settings.c in Sources */ = {isa = PBXBuildFile; fileRef = 2199EA5661E8753C38D79EC9 /* frame_settings.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		FF20CC8321E48130124C0CDE /* status.h in Headers */ = {isa = PBXBuildFile; fileRef = 699CCABB0EF4C0DBE9ECFF77 /* status.h */; };
-		FF2D81690F115A76A71F1184 /* timers.h in Headers */ = {isa = PBXBuildFile; fileRef = E24005BA4EE1886E457D1102 /* timers.h */; };
-		FF4DAEF344EA95FA933157D0 /* sync.c in Sources */ = {isa = PBXBuildFile; fileRef = 1BD0836A20448E42E0314D8A /* sync.c */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
-		FF943CA5D49776619B55E1DB /* tls1.h in Headers */ = {isa = PBXBuildFile; fileRef = B65E20D0DB3E4F3D6867FB77 /* tls1.h */; };
-		FFC252DCAA3AB276E627EDD7 /* status_conversion.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E68948320F849995B09AC37 /* status_conversion.h */; };
-		FFC736ECE295CD5FB7C25E7D /* ObjectivecDescriptor.pb.h in Headers */ = {isa = PBXBuildFile; fileRef = 8717869787DC3C09C31BE1A7 /* ObjectivecDescriptor.pb.h */; };
-		FFDC6C5B28AF3D7F93AA2AE7 /* varint.h in Headers */ = {isa = PBXBuildFile; fileRef = 772C64BCD36866BCD61FD0CF /* varint.h */; };
-/* End PBXBuildFile section */
-
-/* Begin PBXContainerItemProxy section */
-		0622938533A58FFFA09C75FC /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = 5A31380749D2D986F74F1554;
-			remoteInfo = "Pods-Sample-OpenSSL";
-		};
-		06D42337AED5962AB3B8EC96 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = 52849F89804FD62CDF39A502;
-			remoteInfo = "Pods-gRPC-gRPC";
-		};
-		0C10F08183346FDFA5A6257B /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = CF93943E13021BAE4F05050B;
-			remoteInfo = "Pods-SampleTests-RemoteTest";
-		};
-		1456C0F0BDE0753E9421C687 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = E8A038AFC52B83C6CEEF1A60;
-			remoteInfo = "Pods-Sample-ProtocolBuffers";
-		};
-		18B39FD217BFDD3A27167E55 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = 01C449C242E3ED554D84A611;
-			remoteInfo = "Pods-ProtocolBuffers";
-		};
-		225A4A7A2939F181AAAD6E9B /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = E8A038AFC52B83C6CEEF1A60;
-			remoteInfo = "Pods-Sample-ProtocolBuffers";
-		};
-		2A7905A83D3A36D62865C6A3 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = A2C0DFC30E8922D73DFA6E7A;
-			remoteInfo = "Pods-OpenSSL";
-		};
-		2EC3111F97CBA412EEAD0BF3 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = 5A31380749D2D986F74F1554;
-			remoteInfo = "Pods-Sample-OpenSSL";
-		};
-		32C6AA750DB368582FFF8D15 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = AEB2043448E5878CC3D6D248;
-			remoteInfo = "Pods-SampleTests-ProtocolBuffers";
-		};
-		3391462E683A921AE022BA42 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = CAE7A7263529BD28E61F22CE;
-			remoteInfo = "Pods-Route_guide";
-		};
-		33E4FD8820165B2FDCD11C8D /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = 455BA4912B88B1766CAFBBA5;
-			remoteInfo = "Pods-SampleTests-OpenSSL";
-		};
-		3CC54E27429A66E03BFFB8F3 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = AEB2043448E5878CC3D6D248;
-			remoteInfo = "Pods-SampleTests-ProtocolBuffers";
-		};
-		4E33AB3FD3A032F69AF14227 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = 161C88F48197C52433106937;
-			remoteInfo = "Pods-Sample-gRPC-gRPC";
-		};
-		55C1B67A77CE53684FF6B6AF /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = 9A927A1CECCE267CF1C4BC39;
-			remoteInfo = "Pods-Sample-RemoteTest";
-		};
-		63C7CF17E18C723DF8947D38 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = E271A481FA821F450C0B3F15;
-			remoteInfo = "Pods-gRPC";
-		};
-		66DE4E65C7F6016914E810E8 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = 01C449C242E3ED554D84A611;
-			remoteInfo = "Pods-ProtocolBuffers";
-		};
-		6886F88B542EA0D05FF1C308 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = AEB2043448E5878CC3D6D248;
-			remoteInfo = "Pods-SampleTests-ProtocolBuffers";
-		};
-		6EB7EC1B7A4E91AA0B414596 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = E8A038AFC52B83C6CEEF1A60;
-			remoteInfo = "Pods-Sample-ProtocolBuffers";
-		};
-		78F60CC1CB9BC7997FFE795E /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = D9915B561CA6EC38C838676C;
-			remoteInfo = "Pods-SampleTests-gRPC";
-		};
-		7DE96EECEF24154EFC2A56EA /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = 24224A9E6165CF2833705F00;
-			remoteInfo = "Pods-Sample-gRPC";
-		};
-		B3950EF1C51B11433217115A /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = 01C449C242E3ED554D84A611;
-			remoteInfo = "Pods-ProtocolBuffers";
-		};
-		B7C3A043843DB1B014976B28 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = 47DE3004CBE5C02E04F68945;
-			remoteInfo = "Pods-SampleTests-gRPC-gRPC";
-		};
-		BB65C5DBC3434DD213FDEB4E /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = A2C0DFC30E8922D73DFA6E7A;
-			remoteInfo = "Pods-OpenSSL";
-		};
-		C0DEE09E1F9C867D897FF408 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = 455BA4912B88B1766CAFBBA5;
-			remoteInfo = "Pods-SampleTests-OpenSSL";
-		};
-		CE419F0F0E0935463E3484F2 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = 0A154C8B54E34A8FCDA1AD3F;
-			remoteInfo = "Pods-SampleTests-Route_guide";
-		};
-		D15190738458C1AECE0F5717 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = E614EF3DC27A5A1637C70A47;
-			remoteInfo = "Pods-Sample-Route_guide";
-		};
-		D3D29BE93401215C25BC80FB /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = CE276871B00BBAE7665C080B;
-			remoteInfo = "Pods-RemoteTest";
-		};
-/* End PBXContainerItemProxy section */
-
-/* Begin PBXFileReference section */
-		00137D70FD603FE10A44A443 /* GRXWriter.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = GRXWriter.m; sourceTree = "<group>"; };
-		0048A73AC7AEFB054999A639 /* call_log_batch.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = call_log_batch.c; sourceTree = "<group>"; };
-		007A825D2883AABA6DA58327 /* Pods-SampleTests-Route_guide-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Pods-SampleTests-Route_guide-prefix.pch"; path = "../Pods-SampleTests-Route_guide/Pods-SampleTests-Route_guide-prefix.pch"; sourceTree = "<group>"; };
-		00B587323BFCD1957DEC693D /* frame_goaway.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = frame_goaway.h; sourceTree = "<group>"; };
-		00D1F7FE42811771A45CB7E7 /* sockaddr_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = sockaddr_posix.h; sourceTree = "<group>"; };
-		0118816670A7C6C335518EDF /* aes.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = aes.h; path = opensslIncludes/openssl/aes.h; sourceTree = "<group>"; };
-		016F12209885CD0253753FF5 /* rc4.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = rc4.h; path = opensslIncludes/openssl/rc4.h; sourceTree = "<group>"; };
-		0280D6D5B1B2FD6DADF0EBB8 /* endpoint_pair.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = endpoint_pair.h; sourceTree = "<group>"; };
-		02B8069D19729724DF1290A0 /* tls.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = tls.h; sourceTree = "<group>"; };
-		0385FDCE365D14934891746C /* ecdh.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ecdh.h; path = opensslIncludes/openssl/ecdh.h; sourceTree = "<group>"; };
-		0396BC860234A3A3880901F4 /* Pods-gRPC.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-gRPC.xcconfig"; path = "../Pods-gRPC/Pods-gRPC.xcconfig"; sourceTree = "<group>"; };
-		042FE743DCBA5D7202467480 /* json_common.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = json_common.h; sourceTree = "<group>"; };
-		052572FFF52DC519716438CC /* Pods-ProtocolBuffers.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-ProtocolBuffers.xcconfig"; sourceTree = "<group>"; };
-		05837CB7759CEE2E57F4CF48 /* hpack_parser.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = hpack_parser.c; sourceTree = "<group>"; };
-		0639FA42DBCCF395D3B05632 /* chttp2_transport.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = chttp2_transport.c; sourceTree = "<group>"; };
-		069AF9321C3BC16C407A4BDA /* census_tracing.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = census_tracing.c; sourceTree = "<group>"; };
-		0720FBDE49BBBBAA7B3E0DEF /* Messages.pb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = Messages.pb.h; sourceTree = "<group>"; };
-		0732D27AEA18C3BE65B633D7 /* libPods.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPods.a; sourceTree = BUILT_PRODUCTS_DIR; };
-		077488225B8A45F3B5E307D5 /* pkcs12.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pkcs12.h; path = opensslIncludes/openssl/pkcs12.h; sourceTree = "<group>"; };
-		07ADEF22FC5A6CA8425ADB68 /* tls_msvc.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = tls_msvc.h; sourceTree = "<group>"; };
-		07C5B3701B8AA40D98728D52 /* conf.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = conf.h; path = opensslIncludes/openssl/conf.h; sourceTree = "<group>"; };
-		08438C3CB2AC3F96F24EA50F /* call_op_string.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = call_op_string.c; sourceTree = "<group>"; };
-		0886F5B8103F7797CD449DD8 /* client.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = client.c; sourceTree = "<group>"; };
-		08871F1CD8513D34428A2933 /* noop_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = noop_filter.h; sourceTree = "<group>"; };
-		08A0C7FFD858CF072C811E42 /* iomgr_windows.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = iomgr_windows.c; sourceTree = "<group>"; };
-		0904AAFE71C13FEBE2A2413D /* ssl_transport_security.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = ssl_transport_security.h; sourceTree = "<group>"; };
-		092547DB130BFAC1D87FDD8A /* connected_channel.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = connected_channel.c; sourceTree = "<group>"; };
-		09FD3D7AD914C9353EB65529 /* log.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = log.c; sourceTree = "<group>"; };
-		0A146135B811250D1914B47F /* pkcs7.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pkcs7.h; path = opensslIncludes/openssl/pkcs7.h; sourceTree = "<group>"; };
-		0A590DA3DCF37E0C263E2794 /* sync.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = sync.h; sourceTree = "<group>"; };
-		0A8D8B65642D968FE2489FB4 /* Empty.pb.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = Empty.pb.m; sourceTree = "<group>"; };
-		0B45E5CE899602BFD5F23E6C /* log_linux.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = log_linux.c; sourceTree = "<group>"; };
-		0B52E252ED090B7DB0024334 /* Messages.pb.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = Messages.pb.m; sourceTree = "<group>"; };
-		0B7137671BD7B2B31E9ED818 /* Pods-Sample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Sample.release.xcconfig"; sourceTree = "<group>"; };
-		0B9DB82928AAE1ADBF1DB4A7 /* census_filter.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = census_filter.c; sourceTree = "<group>"; };
-		0C105B76701EFB0EFABDBBF2 /* sync_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = sync_posix.c; sourceTree = "<group>"; };
-		0C676CCFC74F97CF22E7D9A3 /* Pods-OpenSSL-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-OpenSSL-dummy.m"; sourceTree = "<group>"; };
-		0CD84E9AE38D8DA667136E64 /* tls_gcc.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = tls_gcc.h; sourceTree = "<group>"; };
-		0DBA6C9779F09A779661A077 /* tcp_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = tcp_posix.h; sourceTree = "<group>"; };
-		0E0C22A75BAE66DCC0928A86 /* Pods-SampleTests-gRPC-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Pods-SampleTests-gRPC-dummy.m"; path = "../Pods-SampleTests-gRPC/Pods-SampleTests-gRPC-dummy.m"; sourceTree = "<group>"; };
-		0F44DED8449303D794BAB617 /* ocsp.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ocsp.h; path = opensslIncludes/openssl/ocsp.h; sourceTree = "<group>"; };
-		0F70A1753EA84C60AF27B5DE /* stream_encoder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = stream_encoder.h; sourceTree = "<group>"; };
-		1016E5B38DF8AC3855975C2F /* completion_queue.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = completion_queue.h; sourceTree = "<group>"; };
-		11FC5A78D96C538F410ACBF8 /* symhacks.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = symhacks.h; path = opensslIncludes/openssl/symhacks.h; sourceTree = "<group>"; };
-		1210B14947151443C45DF689 /* atm_gcc_sync.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = atm_gcc_sync.h; sourceTree = "<group>"; };
-		1318B504F6D7B3052AAD4DC4 /* byte_buffer_reader.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = byte_buffer_reader.c; sourceTree = "<group>"; };
-		136CEE7CF5D6B8674CA659B7 /* cmdline.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = cmdline.c; sourceTree = "<group>"; };
-		13CA68ECEA957C7BA9B5E007 /* MutableExtensionRegistry.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = MutableExtensionRegistry.m; path = src/runtime/Classes/MutableExtensionRegistry.m; sourceTree = "<group>"; };
-		14493F5D45551AF7DD4DCFAF /* GeneratedMessageBuilder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GeneratedMessageBuilder.m; path = src/runtime/Classes/GeneratedMessageBuilder.m; sourceTree = "<group>"; };
-		14812113C5EF9DEB50DFF326 /* Pods-SampleTests-ProtocolBuffers-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Pods-SampleTests-ProtocolBuffers-dummy.m"; path = "../Pods-SampleTests-ProtocolBuffers/Pods-SampleTests-ProtocolBuffers-dummy.m"; sourceTree = "<group>"; };
-		14909D30BE5F9EA392801E52 /* Pods-Sample-ProtocolBuffers-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Pods-Sample-ProtocolBuffers-prefix.pch"; path = "../Pods-Sample-ProtocolBuffers/Pods-Sample-ProtocolBuffers-prefix.pch"; sourceTree = "<group>"; };
-		1494BF1C6BBB3E7058D0B384 /* byte_buffer_queue.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = byte_buffer_queue.h; sourceTree = "<group>"; };
-		156C6D5C0D6F9C16AB5A30AB /* channel_args.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = channel_args.c; sourceTree = "<group>"; };
-		1584B1F0D4982A6EF7A952CF /* auth.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = auth.c; sourceTree = "<group>"; };
-		1651D4FA30764DB3A1FBB1A1 /* client_channel.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = client_channel.c; sourceTree = "<group>"; };
-		1693B87FC0921746424B8E7A /* cancellable.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = cancellable.c; sourceTree = "<group>"; };
-		185D71DEA33A07F75C60BE47 /* Pods-SampleTests-gRPC-Private.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SampleTests-gRPC-Private.xcconfig"; path = "../Pods-SampleTests-gRPC/Pods-SampleTests-gRPC-Private.xcconfig"; sourceTree = "<group>"; };
-		1991DD1C6F949CF8FADB4C7E /* slice_buffer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = slice_buffer.h; sourceTree = "<group>"; };
-		1A59FA7BEA5B01EA768C1377 /* Pods-Sample-RemoteTest-Private.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Sample-RemoteTest-Private.xcconfig"; path = "../Pods-Sample-RemoteTest/Pods-Sample-RemoteTest-Private.xcconfig"; sourceTree = "<group>"; };
-		1A5A429ED5EC2E7EB0146FFB /* http_server_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = http_server_filter.h; sourceTree = "<group>"; };
-		1B04B251148F84EB89C5EF9A /* timers.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = timers.c; sourceTree = "<group>"; };
-		1B3E6F352D4772D77EE612E8 /* grpc_time.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = grpc_time.h; sourceTree = "<group>"; };
-		1BD0836A20448E42E0314D8A /* sync.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = sync.c; sourceTree = "<group>"; };
-		1C038257C6440675A3A55C19 /* x509_vfy.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = x509_vfy.h; path = opensslIncludes/openssl/x509_vfy.h; sourceTree = "<group>"; };
-		1C5EC095122365ED8DACCA09 /* dsa.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = dsa.h; path = opensslIncludes/openssl/dsa.h; sourceTree = "<group>"; };
-		1D2E879D2283DE7CE03DFDD8 /* string.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = string.c; sourceTree = "<group>"; };
-		1D859EA46D8E7D34056E5A3F /* Pods-Route_guide-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Route_guide-prefix.pch"; sourceTree = "<group>"; };
-		1D8BEF54D1799D651A2C427A /* alarm_heap.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = alarm_heap.h; sourceTree = "<group>"; };
-		1FFF40090BBE373979CD818E /* alloc.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = alloc.h; sourceTree = "<group>"; };
-		208DF1BA4BA8F949D6D903B3 /* httpcli.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = httpcli.h; sourceTree = "<group>"; };
-		20EACCB92FAED41836935D0B /* evp.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = evp.h; path = opensslIncludes/openssl/evp.h; sourceTree = "<group>"; };
-		2118ADFB0ACC203A0C44DC04 /* GRPCDelegateWrapper.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = GRPCDelegateWrapper.m; sourceTree = "<group>"; };
-		217C6A65943248F2BCDB480A /* iomgr_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = iomgr_posix.h; sourceTree = "<group>"; };
-		21839ADB0BEF093A31BF49B1 /* GRXWriter+Transformations.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "GRXWriter+Transformations.h"; sourceTree = "<group>"; };
-		2199EA5661E8753C38D79EC9 /* frame_settings.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = frame_settings.c; sourceTree = "<group>"; };
-		22CF3D4CF0769E7668CAA7F1 /* window_stats.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = window_stats.h; sourceTree = "<group>"; };
-		2347B82D8AD9CFDF29E04525 /* wakeup_fd_nospecial.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = wakeup_fd_nospecial.c; sourceTree = "<group>"; };
-		23557DFB8024977332256A02 /* base64.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = base64.c; sourceTree = "<group>"; };
-		23DCBAC0F303E8BFDDB8B222 /* pollset_kick_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = pollset_kick_posix.h; sourceTree = "<group>"; };
-		23FC9E110CDD11D7B12A9A8D /* Pods-gRPC-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Pods-gRPC-dummy.m"; path = "../Pods-gRPC/Pods-gRPC-dummy.m"; sourceTree = "<group>"; };
-		24B4134291477B3C306D0F9B /* idea.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = idea.h; path = opensslIncludes/openssl/idea.h; sourceTree = "<group>"; };
-		24F595F6D7D7760449F99D3F /* gRPC.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = gRPC.bundle; sourceTree = BUILT_PRODUCTS_DIR; };
-		25389E5BD8E164F9DA3F870A /* stream_encoder.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = stream_encoder.c; sourceTree = "<group>"; };
-		253AE8966BA024A90D547F8D /* Pods-Route_guide-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Route_guide-dummy.m"; sourceTree = "<group>"; };
-		25CC1535787632E504407E0E /* resolve_address_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = resolve_address_posix.c; sourceTree = "<group>"; };
-		26397A96A767631337677141 /* libPods-Route_guide.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Route_guide.a"; sourceTree = BUILT_PRODUCTS_DIR; };
-		266267E08A28C2BDB27AB4B1 /* CodedOutputStream.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = CodedOutputStream.m; path = src/runtime/Classes/CodedOutputStream.m; sourceTree = "<group>"; };
-		272957AFD4ACE71712E696CF /* call.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = call.c; sourceTree = "<group>"; };
-		2795129FEBBFD1ABFFF6A785 /* Pods-Sample-gRPC-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Sample-gRPC-dummy.m"; sourceTree = "<group>"; };
-		283F94B23D74B84F80DD5877 /* Pods-SampleTests-OpenSSL-Private.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SampleTests-OpenSSL-Private.xcconfig"; path = "../Pods-SampleTests-OpenSSL/Pods-SampleTests-OpenSSL-Private.xcconfig"; sourceTree = "<group>"; };
-		296D8B18B1E9020B7FBF9ED7 /* grpc.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = grpc.h; sourceTree = "<group>"; };
-		29AB49050027768AEA1E3811 /* GRXWriter+Transformations.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "GRXWriter+Transformations.m"; sourceTree = "<group>"; };
-		2A446E4DDCE68DCE74D60538 /* GRPCMethodName+HTTP2Encoding.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "GRPCMethodName+HTTP2Encoding.h"; sourceTree = "<group>"; };
-		2A70DB43C1169315D6ADE286 /* census_init.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = census_init.c; sourceTree = "<group>"; };
-		2A7B4BAB4502F95548251FC6 /* socket_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = socket_windows.h; sourceTree = "<group>"; };
-		2AD05BAD508D25C95810DC9B /* dh.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = dh.h; path = opensslIncludes/openssl/dh.h; sourceTree = "<group>"; };
-		2ADEF3193716592CD4C3D9DF /* hpack_table.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = hpack_table.c; sourceTree = "<group>"; };
-		2BA4CFC5472009932AF3C45A /* NSData+GRPC.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "NSData+GRPC.h"; sourceTree = "<group>"; };
-		2C3AB039FE4E2FE6E21DB4C3 /* crypto.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = crypto.h; path = opensslIncludes/openssl/crypto.h; sourceTree = "<group>"; };
-		2C9FFF9B3A1727D39DECD7F3 /* pem.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pem.h; path = opensslIncludes/openssl/pem.h; sourceTree = "<group>"; };
-		2D925E56B6B03563B89F6838 /* socket_utils_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = socket_utils_posix.h; sourceTree = "<group>"; };
-		2E85D4E1E6887747C8C0EA7A /* histogram.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = histogram.c; sourceTree = "<group>"; };
-		2EAAA73555E295CC4EB69093 /* base64.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = base64.h; sourceTree = "<group>"; };
-		2EC86514BB193DE737DF5A6E /* Pods-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-acknowledgements.plist"; sourceTree = "<group>"; };
-		2F2C73D7D6DD73A2C440A9B5 /* wakeup_fd_pipe.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = wakeup_fd_pipe.h; sourceTree = "<group>"; };
-		2FDC708E61C2626808625845 /* GRXWriter+Immediate.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "GRXWriter+Immediate.m"; sourceTree = "<group>"; };
-		2FEAD4CE0E0E4905BF839FBA /* pollset_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = pollset_posix.c; sourceTree = "<group>"; };
-		3011D324672ADCCCB0DF1E04 /* http_client_filter.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = http_client_filter.c; sourceTree = "<group>"; };
-		30719F00F9274FB786C2967E /* Pods-SampleTests-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SampleTests-resources.sh"; sourceTree = "<group>"; };
-		3074D0C70E2E858E523A6F83 /* sockaddr_utils.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = sockaddr_utils.c; sourceTree = "<group>"; };
-		30DC0AEBF86D6086E7728540 /* GRXMappingWriter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = GRXMappingWriter.h; sourceTree = "<group>"; };
-		312BB7A456AECCAC670AFF93 /* libPods-Sample-RemoteTest.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Sample-RemoteTest.a"; sourceTree = BUILT_PRODUCTS_DIR; };
-		32A314F8B2AB1E9F39C1B0A4 /* atm_gcc_atomic.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = atm_gcc_atomic.h; sourceTree = "<group>"; };
-		32C499FB0870BEF8AF1565FC /* opensslconf.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = opensslconf.h; path = opensslIncludes/openssl/opensslconf.h; sourceTree = "<group>"; };
-		34247B31A4DACE7069B17B75 /* srtp.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = srtp.h; path = opensslIncludes/openssl/srtp.h; sourceTree = "<group>"; };
-		35DAF7732DF40F6191B582F0 /* format_request.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = format_request.c; sourceTree = "<group>"; };
-		362056B78B02662F088A082D /* surface_trace.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = surface_trace.c; sourceTree = "<group>"; };
-		36225081DAA3120D658B6559 /* ExtensionField.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ExtensionField.h; path = src/runtime/Classes/ExtensionField.h; sourceTree = "<group>"; };
-		3694DD501F73DBD743A5082A /* Pods-SampleTests-Route_guide-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Pods-SampleTests-Route_guide-dummy.m"; path = "../Pods-SampleTests-Route_guide/Pods-SampleTests-Route_guide-dummy.m"; sourceTree = "<group>"; };
-		36976E64654DF9EA4141C812 /* json.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = json.c; sourceTree = "<group>"; };
-		37B92D471F75BCA5A708C58A /* libPods-RemoteTest.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-RemoteTest.a"; sourceTree = BUILT_PRODUCTS_DIR; };
-		37D5B8B98758DFDC65FAE7E5 /* grpc_security.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = grpc_security.h; sourceTree = "<group>"; };
-		37DBA0AFDAFF79CE36275868 /* env_win32.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = env_win32.c; sourceTree = "<group>"; };
-		3843F294A0DAFF3AE97F28E7 /* GRPCCompletionQueue.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = GRPCCompletionQueue.m; sourceTree = "<group>"; };
-		3847E4E2D0286C716F9145EC /* cpu_iphone.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = cpu_iphone.c; sourceTree = "<group>"; };
-		385180B3943DC40F19F8A085 /* Utilities.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = Utilities.m; path = src/runtime/Classes/Utilities.m; sourceTree = "<group>"; };
-		38958B8C3D9B8070ED88BD92 /* ProtocolBuffers.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ProtocolBuffers.h; path = src/runtime/Classes/ProtocolBuffers.h; sourceTree = "<group>"; };
-		390B0B49E8EFA5AAB384B2CC /* ripemd.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ripemd.h; path = opensslIncludes/openssl/ripemd.h; sourceTree = "<group>"; };
-		39490C9911F760ABCE716E20 /* tcp_server.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = tcp_server.h; sourceTree = "<group>"; };
-		395B0602EA14447B448D6C9C /* call.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = call.h; sourceTree = "<group>"; };
-		39EBA7C6F0DB6672205BD780 /* Pods-Sample-OpenSSL.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Sample-OpenSSL.xcconfig"; path = "../Pods-Sample-OpenSSL/Pods-Sample-OpenSSL.xcconfig"; sourceTree = "<group>"; };
-		3A715DFC320B831B7F891BDA /* endpoint.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = endpoint.h; sourceTree = "<group>"; };
-		3B009A38978FE24BCB519CB4 /* NSData+GRPC.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "NSData+GRPC.m"; sourceTree = "<group>"; };
-		3B2617A6F99ED60229A68989 /* ts.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ts.h; path = opensslIncludes/openssl/ts.h; sourceTree = "<group>"; };
-		3B74FD6B6DCCD59F59C39884 /* iomgr_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = iomgr_posix.c; sourceTree = "<group>"; };
-		3BE5F8CA5B8ADB669194F165 /* libPods-gRPC.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-gRPC.a"; sourceTree = BUILT_PRODUCTS_DIR; };
-		3BF40F941CC1E13D1EC0106F /* NSEnumerator+GRXUtil.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "NSEnumerator+GRXUtil.m"; sourceTree = "<group>"; };
-		3C07549EA6437C110EB28620 /* x509.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = x509.h; path = opensslIncludes/openssl/x509.h; sourceTree = "<group>"; };
-		3C89A7A6EA403EB3DC6B287B /* credentials_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = credentials_posix.c; sourceTree = "<group>"; };
-		3D0F9AE3912E6E5E216D2F73 /* Pods-ProtocolBuffers-Private.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-ProtocolBuffers-Private.xcconfig"; sourceTree = "<group>"; };
-		3DA4398D3864DDE90508BEDB /* format_request.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = format_request.h; sourceTree = "<group>"; };
-		3DB3834E86AC5CD0D96885D2 /* log_win32.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = log_win32.c; sourceTree = "<group>"; };
-		3DB502DA27DE84D3006C0081 /* env_linux.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = env_linux.c; sourceTree = "<group>"; };
-		3E4109CF85B04479E8DC8D08 /* sync_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = sync_posix.h; sourceTree = "<group>"; };
-		3F919F2BECD5316CAE51EFB7 /* rsa.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = rsa.h; path = opensslIncludes/openssl/rsa.h; sourceTree = "<group>"; };
-		403CDBC827DC75263866DD1F /* obj_mac.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = obj_mac.h; path = opensslIncludes/openssl/obj_mac.h; sourceTree = "<group>"; };
-		41D7A88FF6475B69BDB13547 /* gRPC.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = gRPC.bundle; sourceTree = BUILT_PRODUCTS_DIR; };
-		4258ECAEE95E0068DBBBD447 /* httpcli_security_connector.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = httpcli_security_connector.c; sourceTree = "<group>"; };
-		43DF9A60A5B869B8B2942C8A /* host_port.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = host_port.c; sourceTree = "<group>"; };
-		442D49E6A723C4CFB4C3A7FF /* Pods-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-acknowledgements.markdown"; sourceTree = "<group>"; };
-		44F9218A56E4EBCEED716673 /* murmur_hash.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = murmur_hash.c; sourceTree = "<group>"; };
-		461069D9C304C72AEB2CC43F /* Pods-SampleTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SampleTests-acknowledgements.plist"; sourceTree = "<group>"; };
-		462FC4958D1DC02236910099 /* AbstractMessageBuilder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AbstractMessageBuilder.h; path = src/runtime/Classes/AbstractMessageBuilder.h; sourceTree = "<group>"; };
-		46BA07C95C706BFD2C47CF30 /* endpoint_pair_windows.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = endpoint_pair_windows.c; sourceTree = "<group>"; };
-		46F0F4E2E0B72032572A1773 /* Pods-Sample-gRPC.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Sample-gRPC.xcconfig"; sourceTree = "<group>"; };
-		479DCC0B884C97B3018AD25A /* Pods-SampleTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SampleTests.release.xcconfig"; sourceTree = "<group>"; };
-		482DA575CF9599896DDAD7B8 /* GRXNSFastEnumerator.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = GRXNSFastEnumerator.h; sourceTree = "<group>"; };
-		4837B1BD041B84AD0C2F7855 /* Pods-RemoteTest-Private.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-RemoteTest-Private.xcconfig"; sourceTree = "<group>"; };
-		49779DB1C5A2F5CFEBAAFEF9 /* WireFormat.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = WireFormat.h; path = src/runtime/Classes/WireFormat.h; sourceTree = "<group>"; };
-		4A34766847C2DFF77298EA4D /* md5.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = md5.h; path = opensslIncludes/openssl/md5.h; sourceTree = "<group>"; };
-		4B45C3AD7EF8936646FCF8C7 /* GRXNSFastEnumerator.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = GRXNSFastEnumerator.m; sourceTree = "<group>"; };
-		4B91EAD70775E421BD8B9FCC /* string_win32.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = string_win32.c; sourceTree = "<group>"; };
-		4B94B3D5B631FD95B0DB7404 /* alloc.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = alloc.c; sourceTree = "<group>"; };
-		4C1655FF7E5FF42898A6BA70 /* Pods-OpenSSL-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-OpenSSL-prefix.pch"; sourceTree = "<group>"; };
-		4CE6325E302D61903CD1FD28 /* pollset_multipoller_with_poll_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = pollset_multipoller_with_poll_posix.c; sourceTree = "<group>"; };
-		4D94918E7FEC14559137E27C /* UnknownFieldSet.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = UnknownFieldSet.h; path = src/runtime/Classes/UnknownFieldSet.h; sourceTree = "<group>"; };
-		4DDDBCFF0883CB99937DF975 /* Pods-Sample-Route_guide-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Pods-Sample-Route_guide-prefix.pch"; path = "../Pods-Sample-Route_guide/Pods-Sample-Route_guide-prefix.pch"; sourceTree = "<group>"; };
-		4E526CA022944834AEEE078E /* alpn.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = alpn.h; sourceTree = "<group>"; };
-		4E54CB0C0280C270C850A4DE /* transport.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = transport.h; sourceTree = "<group>"; };
-		4EBBF04A177E2CF6B10FE856 /* frame_data.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = frame_data.h; sourceTree = "<group>"; };
-		4F5C6030E0C6D3878C91CDBA /* GRPCDelegateWrapper.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = GRPCDelegateWrapper.h; sourceTree = "<group>"; };
-		4FB887B7DFAA588A6A7A825B /* log_win32.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = log_win32.h; sourceTree = "<group>"; };
-		4FE4F605AA3C77DD8BC5A69E /* frame_ping.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = frame_ping.c; sourceTree = "<group>"; };
-		4FE5B2BA4E0B8F46C08C6C30 /* useful.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = useful.h; sourceTree = "<group>"; };
-		506F88ADCB46C3FC40D15A90 /* Pods-Sample-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Sample-acknowledgements.markdown"; sourceTree = "<group>"; };
-		50A5DE2884F204F06DEA6B43 /* env.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = env.h; sourceTree = "<group>"; };
-		5110D7E251E644EC6D7C29CA /* byte_buffer_reader.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = byte_buffer_reader.h; sourceTree = "<group>"; };
-		512C6890E83E678C3723206B /* CodedOutputStream.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CodedOutputStream.h; path = src/runtime/Classes/CodedOutputStream.h; sourceTree = "<group>"; };
-		53EC3A019D7830A5407236B1 /* metadata_buffer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = metadata_buffer.h; sourceTree = "<group>"; };
-		53F5707E31B5AB47CC439A2C /* WireFormat.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = WireFormat.m; path = src/runtime/Classes/WireFormat.m; sourceTree = "<group>"; };
-		545C3120FFA2450C7CE9E6DA /* file_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = file_posix.c; sourceTree = "<group>"; };
-		548C55CC9C51EA26C40A807B /* census_log.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = census_log.c; sourceTree = "<group>"; };
-		551ADCF1B6E05631C0798A5D /* channel_stack.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = channel_stack.h; sourceTree = "<group>"; };
-		551CFC4043ED5409C105ABEA /* file_win32.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = file_win32.c; sourceTree = "<group>"; };
-		555B0F2CAD70423DE30C6444 /* client_setup.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = client_setup.h; sourceTree = "<group>"; };
-		557940CD7876824C33DD7ADB /* txt_db.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = txt_db.h; path = opensslIncludes/openssl/txt_db.h; sourceTree = "<group>"; };
-		55946E8A56007AB0F3AF8283 /* ec.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ec.h; path = opensslIncludes/openssl/ec.h; sourceTree = "<group>"; };
-		5621298E280D2F357ED9DBDF /* timeout_encoding.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = timeout_encoding.c; sourceTree = "<group>"; };
-		58854B850D217166AEA9B026 /* histogram.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = histogram.h; sourceTree = "<group>"; };
-		589A52F1F41BEDEB49C095E1 /* ebcdic.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ebcdic.h; path = opensslIncludes/openssl/ebcdic.h; sourceTree = "<group>"; };
-		58D723D72E72DDD09A8E9C2F /* libPods-SampleTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-SampleTests.a"; sourceTree = BUILT_PRODUCTS_DIR; };
-		58E0257BE81E1918C5267E17 /* Route_guide.pb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = Route_guide.pb.h; sourceTree = "<group>"; };
-		595E044C7552A98C14435284 /* wakeup_fd_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = wakeup_fd_posix.h; sourceTree = "<group>"; };
-		5986A0FA0E0C626F78D638F8 /* GRXWriteable.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = GRXWriteable.h; sourceTree = "<group>"; };
-		5B9267052B252C28261605A1 /* iomgr_internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = iomgr_internal.h; sourceTree = "<group>"; };
-		5C2C6DE8CDC5FDB5A63AAA7D /* resolve_address_windows.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = resolve_address_windows.c; sourceTree = "<group>"; };
-		5CFFF202D8C58B36ADA3DE94 /* cpu_windows.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = cpu_windows.c; sourceTree = "<group>"; };
-		5D7E3645794B4FC5A28DB07A /* MutableField.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = MutableField.m; path = src/runtime/Classes/MutableField.m; sourceTree = "<group>"; };
-		5DE51958FAA2D6EC3686404F /* pollset_kick.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = pollset_kick.c; sourceTree = "<group>"; };
-		5E5D54C91AE81D8C00BF0FA2 /* GRPCWrappedCall.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GRPCWrappedCall.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objc; };
-		5E5D54CA1AE8224000BF0FA2 /* GRPCWrappedCall.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GRPCWrappedCall.m; sourceTree = "<group>"; };
-		5EB7CC0B9B5B8ED763DAD468 /* GRPCMethodName.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = GRPCMethodName.h; sourceTree = "<group>"; };
-		5FB603E306CD89ADB1CE6511 /* parser.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = parser.c; sourceTree = "<group>"; };
-		6084991EB3F40BB862678A56 /* ExtensionRegistry.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ExtensionRegistry.h; path = src/runtime/Classes/ExtensionRegistry.h; sourceTree = "<group>"; };
-		61246E9F7BB79C02CBDC3F0A /* pqueue.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pqueue.h; path = opensslIncludes/openssl/pqueue.h; sourceTree = "<group>"; };
-		6151842E395081DBF80CAC01 /* Pods-Sample-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Sample-acknowledgements.plist"; sourceTree = "<group>"; };
-		621AF84901C5401206AB4669 /* Pods-SampleTests-ProtocolBuffers-Private.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SampleTests-ProtocolBuffers-Private.xcconfig"; path = "../Pods-SampleTests-ProtocolBuffers/Pods-SampleTests-ProtocolBuffers-Private.xcconfig"; sourceTree = "<group>"; };
-		6240F7EA27D10F106B7F136E /* libPods-Sample.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Sample.a"; sourceTree = BUILT_PRODUCTS_DIR; };
-		62AABF4FAFB404658CB645D4 /* hmac.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = hmac.h; path = opensslIncludes/openssl/hmac.h; sourceTree = "<group>"; };
-		62C3614F855CAD59CEBDB1C4 /* cmdline.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = cmdline.h; sourceTree = "<group>"; };
-		62FF523610CB2A23C2394C8E /* NSEnumerator+GRXUtil.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "NSEnumerator+GRXUtil.h"; sourceTree = "<group>"; };
-		632D3C9EB25C3C7659F9F39A /* string_win32.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = string_win32.h; sourceTree = "<group>"; };
-		647DA385735244E30B6A372B /* census_tracing.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = census_tracing.h; sourceTree = "<group>"; };
-		651FAE8C05B04EB09ADA44B1 /* tcp_server_windows.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = tcp_server_windows.c; sourceTree = "<group>"; };
-		65DC894DCBA3E25098C3F392 /* metadata_buffer.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = metadata_buffer.c; sourceTree = "<group>"; };
-		66A49F3E07E65E9D23B71E15 /* huffsyms.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = huffsyms.c; sourceTree = "<group>"; };
-		66DC0069EFDA6F4ECCFA552F /* dtls1.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = dtls1.h; path = opensslIncludes/openssl/dtls1.h; sourceTree = "<group>"; };
-		66F71AE62EB572BA6DD5A32A /* camellia.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = camellia.h; path = opensslIncludes/openssl/camellia.h; sourceTree = "<group>"; };
-		686C0D5512A270C008BCF001 /* parser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = parser.h; sourceTree = "<group>"; };
-		68E76147B6FA250C2CD4F10F /* thd.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = thd.h; sourceTree = "<group>"; };
-		692DA013B9BF62ECADE9439E /* time_averaged_stats.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = time_averaged_stats.c; sourceTree = "<group>"; };
-		699CCABB0EF4C0DBE9ECFF77 /* status.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = status.h; sourceTree = "<group>"; };
-		6B729130FD8D5696CE112A9B /* algorithm.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = algorithm.h; sourceTree = "<group>"; };
-		6CB0C4DA3194B77529082D92 /* asn1.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = asn1.h; path = opensslIncludes/openssl/asn1.h; sourceTree = "<group>"; };
-		6CB70053F22835615A8FEA53 /* Pods-SampleTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-SampleTests-dummy.m"; sourceTree = "<group>"; };
-		6D137F3FDB5B92415B7AC31C /* GRPCCall.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = GRPCCall.h; sourceTree = "<group>"; };
-		6D41D3ED4D6E50700925180C /* Pods-SampleTests-Route_guide.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SampleTests-Route_guide.xcconfig"; path = "../Pods-SampleTests-Route_guide/Pods-SampleTests-Route_guide.xcconfig"; sourceTree = "<group>"; };
-		6D8B2ADAC76C56837BCD6E3F /* CodedInputStream.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CodedInputStream.h; path = src/runtime/Classes/CodedInputStream.h; sourceTree = "<group>"; };
-		6D9F7A8D1118F332DA3364C4 /* pollset_multipoller_with_epoll.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = pollset_multipoller_with_epoll.c; sourceTree = "<group>"; };
-		6DDAF4ED87028DC95895771E /* Pods-Sample-ProtocolBuffers.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Sample-ProtocolBuffers.xcconfig"; path = "../Pods-Sample-ProtocolBuffers/Pods-Sample-ProtocolBuffers.xcconfig"; sourceTree = "<group>"; };
-		6DF87CC1C564F3A2AA3A0288 /* Pods-SampleTests-OpenSSL.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SampleTests-OpenSSL.xcconfig"; path = "../Pods-SampleTests-OpenSSL/Pods-SampleTests-OpenSSL.xcconfig"; sourceTree = "<group>"; };
-		6E60A65312367FE96A674F09 /* x509v3.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = x509v3.h; path = opensslIncludes/openssl/x509v3.h; sourceTree = "<group>"; };
-		6E68948320F849995B09AC37 /* status_conversion.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = status_conversion.h; sourceTree = "<group>"; };
-		6F49DD1F6DA272012D28C11A /* init.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = init.h; sourceTree = "<group>"; };
-		702E018073440195E124A8C4 /* http_server_filter.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = http_server_filter.c; sourceTree = "<group>"; };
-		705F149853706AB963D20A0A /* json_string.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = json_string.c; sourceTree = "<group>"; };
-		7073EA35CBD7DC711060427E /* Field.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Field.h; path = src/runtime/Classes/Field.h; sourceTree = "<group>"; };
-		707B43D7094693DC964C9A69 /* ui_compat.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ui_compat.h; path = opensslIncludes/openssl/ui_compat.h; sourceTree = "<group>"; };
-		709BF0BFC75540EC9E5DEA59 /* auth.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = auth.h; sourceTree = "<group>"; };
-		71F8B05C67B51C33A39FD277 /* server.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = server.c; sourceTree = "<group>"; };
-		71FD80A83315D1F3BC2FF0C2 /* sync_generic.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = sync_generic.h; sourceTree = "<group>"; };
-		7256585C37337ED83551BB66 /* channel_args.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = channel_args.h; sourceTree = "<group>"; };
-		72D1F32F1133F699F7402689 /* Message.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Message.h; path = src/runtime/Classes/Message.h; sourceTree = "<group>"; };
-		731D0E4DC3F73AADCC27E534 /* pollset_kick_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = pollset_kick_windows.h; sourceTree = "<group>"; };
-		7324ECAFA0F52389E41D4B25 /* Pods-SampleTests-ProtocolBuffers.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SampleTests-ProtocolBuffers.xcconfig"; path = "../Pods-SampleTests-ProtocolBuffers/Pods-SampleTests-ProtocolBuffers.xcconfig"; sourceTree = "<group>"; };
-		73851498A7CB41575B08683E /* Pods-Sample-environment.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Sample-environment.h"; sourceTree = "<group>"; };
-		7443FC5042AD6D54F533BE2F /* stream_op.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = stream_op.c; sourceTree = "<group>"; };
-		76F2FAD49839F1EAB96C1537 /* alarm_internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = alarm_internal.h; sourceTree = "<group>"; };
-		772C64BCD36866BCD61FD0CF /* varint.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = varint.h; sourceTree = "<group>"; };
-		7739C2ECFEC444826F4F32EA /* ssl2.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl2.h; path = opensslIncludes/openssl/ssl2.h; sourceTree = "<group>"; };
-		778F9708965C53FE312E1004 /* Pods-Sample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Sample.debug.xcconfig"; sourceTree = "<group>"; };
-		77C6558BBFF31326983320B0 /* string_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = string_posix.c; sourceTree = "<group>"; };
-		77CE4C07F3D27C50DEBDB4A4 /* seed.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = seed.h; path = opensslIncludes/openssl/seed.h; sourceTree = "<group>"; };
-		77DFD8B1DA08AC123ACD7FB6 /* event_string.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = event_string.c; sourceTree = "<group>"; };
-		77E040AA780ABF0B8A8C0390 /* httpcli_security_connector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = httpcli_security_connector.h; sourceTree = "<group>"; };
-		78285425C45A6AEF43616C14 /* tcp_server_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = tcp_server_posix.c; sourceTree = "<group>"; };
-		7832206106004363B9EF30E6 /* whrlpool.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = whrlpool.h; path = opensslIncludes/openssl/whrlpool.h; sourceTree = "<group>"; };
-		7841A5D53D143AB23C94D8F7 /* http2_errors.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = http2_errors.h; sourceTree = "<group>"; };
-		78678D208AC9C4E19C84DD90 /* libPods-OpenSSL.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-OpenSSL.a"; sourceTree = BUILT_PRODUCTS_DIR; };
-		786C225EB84ADD9B73B8660F /* ossl_typ.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ossl_typ.h; path = opensslIncludes/openssl/ossl_typ.h; sourceTree = "<group>"; };
-		7888E3FEC368C63162A16235 /* sockaddr.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = sockaddr.h; sourceTree = "<group>"; };
-		78CC954F00740B8C589205E2 /* GRPCChannel.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = GRPCChannel.m; sourceTree = "<group>"; };
-		78E17449C6B53B05841EC6DA /* file.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = file.c; sourceTree = "<group>"; };
-		78F5A53737D40F816C71D4AA /* PBArray.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = PBArray.m; path = src/runtime/Classes/PBArray.m; sourceTree = "<group>"; };
-		7903B8EE593EEC961956C7B0 /* Pods-Sample-Route_guide-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Pods-Sample-Route_guide-dummy.m"; path = "../Pods-Sample-Route_guide/Pods-Sample-Route_guide-dummy.m"; sourceTree = "<group>"; };
-		7A9AC18A46591A7BDE09299C /* GRXImmediateWriter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = GRXImmediateWriter.h; sourceTree = "<group>"; };
-		7ACE587669F5BA2724FF401C /* MessageBuilder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MessageBuilder.h; path = src/runtime/Classes/MessageBuilder.h; sourceTree = "<group>"; };
-		7ADD2A001607EDFCFE3D603D /* Pods-SampleTests-gRPC.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SampleTests-gRPC.xcconfig"; path = "../Pods-SampleTests-gRPC/Pods-SampleTests-gRPC.xcconfig"; sourceTree = "<group>"; };
-		7AE82FDA9BFB3E31D4C5A7CC /* endpoint_pair_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = endpoint_pair_posix.c; sourceTree = "<group>"; };
-		7B526FC86BD71B2D8E60A26E /* stack.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = stack.h; path = opensslIncludes/openssl/stack.h; sourceTree = "<group>"; };
-		7BBB69A0CD99821CAE91F9CA /* message_compress.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = message_compress.c; sourceTree = "<group>"; };
-		7C25DA582B7E9AB66A5D84F1 /* Pods-Sample-gRPC-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Sample-gRPC-prefix.pch"; sourceTree = "<group>"; };
-		7C2EE38F99099956908CECF9 /* Pods-Sample-RemoteTest-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Pods-Sample-RemoteTest-prefix.pch"; path = "../Pods-Sample-RemoteTest/Pods-Sample-RemoteTest-prefix.pch"; sourceTree = "<group>"; };
-		7E89280021B8CBC7D987AD06 /* server_chttp2.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = server_chttp2.c; sourceTree = "<group>"; };
-		7E9520E20DCD01D0DCC65855 /* lhash.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = lhash.h; path = opensslIncludes/openssl/lhash.h; sourceTree = "<group>"; };
-		7EAF225F4EC2DE6AFBD12319 /* roots.pem */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = roots.pem; sourceTree = "<group>"; };
-		7F54961D42B49E50CC8D1338 /* frame_rst_stream.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = frame_rst_stream.c; sourceTree = "<group>"; };
-		7F70FAFAB9F4A5F0703D92BA /* bin_encoder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = bin_encoder.h; sourceTree = "<group>"; };
-		7F91F8C861FF28FC65974048 /* credentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = credentials.h; sourceTree = "<group>"; };
-		818DC3D8E054FC9EF1C0F1BB /* cpu_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = cpu_posix.c; sourceTree = "<group>"; };
-		8240255EEA8AE10091016E55 /* gRPC.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = gRPC.bundle; sourceTree = BUILT_PRODUCTS_DIR; };
-		82B014EBF0529BFB30D7972A /* lame_client.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = lame_client.c; sourceTree = "<group>"; };
-		82E0D0FF1330995CD65F17F9 /* http_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = http_filter.h; sourceTree = "<group>"; };
-		835E0E62F744BA594A13DB89 /* ui.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ui.h; path = opensslIncludes/openssl/ui.h; sourceTree = "<group>"; };
-		836F2223B440CDADB152E932 /* tcp_client_windows.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = tcp_client_windows.c; sourceTree = "<group>"; };
-		83E135FAC325138487E28FBE /* GRXNSScalarEnumerator.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = GRXNSScalarEnumerator.h; sourceTree = "<group>"; };
-		83FC73B2F90BD4477BAB7716 /* log_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = log_posix.c; sourceTree = "<group>"; };
-		844295EC51D3903941C395C4 /* frame_settings.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = frame_settings.h; sourceTree = "<group>"; };
-		845FA310D1B037B9E1D54905 /* cancellable_platform.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = cancellable_platform.h; sourceTree = "<group>"; };
-		84699F407C0F5C552CFE19E9 /* GRPCUnsecuredChannel.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = GRPCUnsecuredChannel.m; sourceTree = "<group>"; };
-		857F065925832466000E24C4 /* sockaddr_utils.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = sockaddr_utils.h; sourceTree = "<group>"; };
-		864E6908BB9552D10287236D /* ssl23.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl23.h; path = opensslIncludes/openssl/ssl23.h; sourceTree = "<group>"; };
-		8678098EE8A09DFFADB9BD8A /* Pods-SampleTests-RemoteTest-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Pods-SampleTests-RemoteTest-prefix.pch"; path = "../Pods-SampleTests-RemoteTest/Pods-SampleTests-RemoteTest-prefix.pch"; sourceTree = "<group>"; };
-		8717869787DC3C09C31BE1A7 /* ObjectivecDescriptor.pb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ObjectivecDescriptor.pb.h; path = src/runtime/Classes/ObjectivecDescriptor.pb.h; sourceTree = "<group>"; };
-		87C766D8A76DD09C1DB8A1DB /* credentials_win32.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = credentials_win32.c; sourceTree = "<group>"; };
-		882FB0E68742560157A92A3A /* GeneratedMessageBuilder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GeneratedMessageBuilder.h; path = src/runtime/Classes/GeneratedMessageBuilder.h; sourceTree = "<group>"; };
-		887D72DBB420C3E1A6738760 /* channel_stack.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = channel_stack.c; sourceTree = "<group>"; };
-		88986E5DC1E75A40B26FA0F3 /* byte_buffer.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = byte_buffer.c; sourceTree = "<group>"; };
-		89BF934C96AB0AB0CBA4E05A /* json_writer.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = json_writer.c; sourceTree = "<group>"; };
-		89EC88522CAA5913E134CC50 /* GRPCUnsecuredChannel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = GRPCUnsecuredChannel.h; sourceTree = "<group>"; };
-		8A255B56065DAB7E8DB7345A /* GeneratedMessage.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GeneratedMessage.m; path = src/runtime/Classes/GeneratedMessage.m; sourceTree = "<group>"; };
-		8AB974254F70D3734E674FF4 /* Pods-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-resources.sh"; sourceTree = "<group>"; };
-		8ABA1AEF600162BC25FF26A0 /* ExtendableMessage.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = ExtendableMessage.m; path = src/runtime/Classes/ExtendableMessage.m; sourceTree = "<group>"; };
-		8B03F1B317FE59E0CE6747ED /* time_win32.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = time_win32.c; sourceTree = "<group>"; };
-		8B7E488CD9E640DE9592977E /* surface_trace.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = surface_trace.h; sourceTree = "<group>"; };
-		8BD3A6A6436D217FF1D0401C /* GRXNSBlockEnumerator.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = GRXNSBlockEnumerator.m; sourceTree = "<group>"; };
-		8CC2A8976E4F1AC52BF5A240 /* Empty.pb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = Empty.pb.h; sourceTree = "<group>"; };
-		8CDA69F3F5647005EF56EC3E /* chttp2_transport.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = chttp2_transport.h; sourceTree = "<group>"; };
-		8D2CD6C833DA66C3FE1BA7EA /* completion_queue.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = completion_queue.c; sourceTree = "<group>"; };
-		8D607D15F877D0F40B399AF9 /* libPods-Sample-gRPC.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Sample-gRPC.a"; sourceTree = BUILT_PRODUCTS_DIR; };
-		8DBF9152E4657D3D9660BD87 /* ForwardDeclarations.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ForwardDeclarations.h; path = src/runtime/Classes/ForwardDeclarations.h; sourceTree = "<group>"; };
-		8EF237AADBB32AE1589440C6 /* iocp_windows.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = iocp_windows.c; sourceTree = "<group>"; };
-		8EFAF709CD0D054FE4DA247A /* frame.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = frame.h; sourceTree = "<group>"; };
-		8F86CF370886416DAC191E31 /* pollset_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = pollset_posix.h; sourceTree = "<group>"; };
-		8F8D3410DEEEE721CB1E2340 /* security_connector.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = security_connector.h; sourceTree = "<group>"; };
-		8FE7F081D7EBCCBF8595A007 /* noop_filter.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = noop_filter.c; sourceTree = "<group>"; };
-		901652CA4B573F7BAA191043 /* channel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = channel.h; sourceTree = "<group>"; };
-		907F99DBF427CE5A0D778FFF /* Pods-SampleTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SampleTests.debug.xcconfig"; sourceTree = "<group>"; };
-		908890BFD97AE08513208B3C /* NSDictionary+GRPC.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "NSDictionary+GRPC.h"; sourceTree = "<group>"; };
-		909FB597BDA176D2981D3026 /* trace.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = trace.h; sourceTree = "<group>"; };
-		91C6C394D4767AA0A9C6ED09 /* Pods-OpenSSL-Private.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-OpenSSL-Private.xcconfig"; sourceTree = "<group>"; };
-		9237BB0A69F0E093CB3274F4 /* Pods-Sample-OpenSSL-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Pods-Sample-OpenSSL-dummy.m"; path = "../Pods-Sample-OpenSSL/Pods-Sample-OpenSSL-dummy.m"; sourceTree = "<group>"; };
-		925E27ADE0C72FDA338F485E /* grpc_http.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = grpc_http.h; sourceTree = "<group>"; };
-		9342FC71179F4D1461C18A98 /* connected_channel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = connected_channel.h; sourceTree = "<group>"; };
-		937B5E356D599266F6BF35E5 /* timeout_encoding.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = timeout_encoding.h; sourceTree = "<group>"; };
-		939EE37844D7360A65060A3C /* Pods-SampleTests-gRPC-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Pods-SampleTests-gRPC-prefix.pch"; path = "../Pods-SampleTests-gRPC/Pods-SampleTests-gRPC-prefix.pch"; sourceTree = "<group>"; };
-		93FBD738A8069598A3816DB1 /* channel_create.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = channel_create.c; sourceTree = "<group>"; };
-		9478C18EECEB8DD6252D2215 /* child_channel.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = child_channel.c; sourceTree = "<group>"; };
-		94F3E600B7F40BA99CC9B1E1 /* init.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = init.c; sourceTree = "<group>"; };
-		95CA75B4F8A4139C4B69A501 /* alarm.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = alarm.h; sourceTree = "<group>"; };
-		95F2438496323A2635262311 /* GRPCSecureChannel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = GRPCSecureChannel.h; sourceTree = "<group>"; };
-		967671B78D8149254DE715B7 /* libssl.a */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = archive.ar; name = libssl.a; path = lib/libssl.a; sourceTree = "<group>"; };
-		9711365E4FFC9119BEED12F2 /* alarm.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = alarm.c; sourceTree = "<group>"; };
-		97138B0BC9857D489F0D7E01 /* ExtendableMessageBuilder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = ExtendableMessageBuilder.m; path = src/runtime/Classes/ExtendableMessageBuilder.m; sourceTree = "<group>"; };
-		97A3ACC219CC63F5D7FFD40C /* pollset_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = pollset_windows.h; sourceTree = "<group>"; };
-		97A8A5841471BC4954FBC3B9 /* Pods-Sample-gRPC-Private.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Sample-gRPC-Private.xcconfig"; sourceTree = "<group>"; };
-		97AC1F49BA95AC83993BCB91 /* pem2.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = pem2.h; path = opensslIncludes/openssl/pem2.h; sourceTree = "<group>"; };
-		98F217A4FEA5EA5AF56839E3 /* Test.pb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = Test.pb.h; sourceTree = "<group>"; };
-		99237990158E92C9F0C675BB /* hpack_table.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = hpack_table.h; sourceTree = "<group>"; };
-		9A03F86E69EB1ECD0C98F251 /* gen_hpack_tables.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = gen_hpack_tables.c; sourceTree = "<group>"; };
-		9A58ACD0EC03D5883ED79C0C /* thd_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = thd_posix.c; sourceTree = "<group>"; };
-		9C270F924FADCC2633164DF6 /* objects.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = objects.h; path = opensslIncludes/openssl/objects.h; sourceTree = "<group>"; };
-		9CDD140DA194B5246113EDC8 /* GRPCCall.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = GRPCCall.m; sourceTree = "<group>"; };
-		9CDD59E7CC95C8FC7D97E181 /* port_platform.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = port_platform.h; sourceTree = "<group>"; };
-		9D0B5A3091E7FD86D36B6B83 /* kssl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = kssl.h; path = opensslIncludes/openssl/kssl.h; sourceTree = "<group>"; };
-		9D7F0E45DD4F3653FFFED7E0 /* Pods-gRPC-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Pods-gRPC-prefix.pch"; path = "../Pods-gRPC/Pods-gRPC-prefix.pch"; sourceTree = "<group>"; };
-		9D86DA95767D8423BB870CCF /* Pods-Sample-RemoteTest-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Pods-Sample-RemoteTest-dummy.m"; path = "../Pods-Sample-RemoteTest/Pods-Sample-RemoteTest-dummy.m"; sourceTree = "<group>"; };
-		9E6B8BF8B2B4A1253685D19A /* Pods-SampleTests-Route_guide-Private.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SampleTests-Route_guide-Private.xcconfig"; path = "../Pods-SampleTests-Route_guide/Pods-SampleTests-Route_guide-Private.xcconfig"; sourceTree = "<group>"; };
-		9E97C00F1298866BC5B942A0 /* server.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = server.h; sourceTree = "<group>"; };
-		9E9F6FBD9A20ABE0AB587479 /* ExtensionRegistry.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = ExtensionRegistry.m; path = src/runtime/Classes/ExtensionRegistry.m; sourceTree = "<group>"; };
-		9EB5E9E525851BF88C1930C0 /* httpcli.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = httpcli.c; sourceTree = "<group>"; };
-		9ECE1E3191D8265752CA58E2 /* json_token.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = json_token.c; sourceTree = "<group>"; };
-		9F35CC539D3ADDAD0DA84467 /* thd_win32.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = thd_win32.c; sourceTree = "<group>"; };
-		A087CE9B84F73C45A1CD5628 /* Pods-ProtocolBuffers-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-ProtocolBuffers-dummy.m"; sourceTree = "<group>"; };
-		A12F885517EF15D46BA10711 /* frame_ping.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = frame_ping.h; sourceTree = "<group>"; };
-		A18A9E53902DA1A490D048A7 /* stream_map.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = stream_map.h; sourceTree = "<group>"; };
-		A1A2B6382BD3DF9FAA1746B4 /* Pods-Sample-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Sample-resources.sh"; sourceTree = "<group>"; };
-		A29A7E4785EC3464B81DE033 /* timers_preciseclock.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = timers_preciseclock.h; sourceTree = "<group>"; };
-		A2D0C9AF67318A88A271B329 /* thd_internal.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = thd_internal.h; sourceTree = "<group>"; };
-		A372F1563365DC01263466B5 /* krb5_asn.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = krb5_asn.h; path = opensslIncludes/openssl/krb5_asn.h; sourceTree = "<group>"; };
-		A44141A91AFD802B21F301D1 /* frame_window_update.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = frame_window_update.c; sourceTree = "<group>"; };
-		A47DCD9141F1ECF8A77694BF /* metadata_array.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = metadata_array.c; sourceTree = "<group>"; };
-		A483D2D2BC2227E981BFAD95 /* window_stats.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = window_stats.c; sourceTree = "<group>"; };
-		A524814A3590D4348D549C14 /* sync_win32.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = sync_win32.c; sourceTree = "<group>"; };
-		A530AAB38E2B009BA6E14C89 /* Pods-SampleTests-OpenSSL-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Pods-SampleTests-OpenSSL-prefix.pch"; path = "../Pods-SampleTests-OpenSSL/Pods-SampleTests-OpenSSL-prefix.pch"; sourceTree = "<group>"; };
-		A543115DBDA830174D19FAD7 /* GRPCSecureChannel.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = GRPCSecureChannel.m; sourceTree = "<group>"; };
-		A55B75B919DE7DC2F5B2A967 /* census_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = census_filter.h; sourceTree = "<group>"; };
-		A6526F7F44853C7D64D34A71 /* srp.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = srp.h; path = opensslIncludes/openssl/srp.h; sourceTree = "<group>"; };
-		A70DA7CEE54302BED2248E14 /* time.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = time.c; sourceTree = "<group>"; };
-		A73136F76FF9F5955D9A2383 /* Pods-Sample-OpenSSL-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Pods-Sample-OpenSSL-prefix.pch"; path = "../Pods-Sample-OpenSSL/Pods-Sample-OpenSSL-prefix.pch"; sourceTree = "<group>"; };
-		A7B35482A8B3E763F2E49204 /* sockaddr_win32.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = sockaddr_win32.h; sourceTree = "<group>"; };
-		A7CE930FEE65B105A824A4CF /* iocp_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = iocp_windows.h; sourceTree = "<group>"; };
-		A832B428E3ECECB5EEA250EA /* Pods-Sample-Route_guide.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Sample-Route_guide.xcconfig"; path = "../Pods-Sample-Route_guide/Pods-Sample-Route_guide.xcconfig"; sourceTree = "<group>"; };
-		A84CC34AEDD516C899DB8CF4 /* Pods-Sample-Route_guide-Private.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Sample-Route_guide-Private.xcconfig"; path = "../Pods-Sample-Route_guide/Pods-Sample-Route_guide-Private.xcconfig"; sourceTree = "<group>"; };
-		A9863428D20C26F1F6EDBEF9 /* Pods-Sample-ProtocolBuffers-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Pods-Sample-ProtocolBuffers-dummy.m"; path = "../Pods-Sample-ProtocolBuffers/Pods-Sample-ProtocolBuffers-dummy.m"; sourceTree = "<group>"; };
-		A98FA49795A8DD446B56C330 /* e_os2.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = e_os2.h; path = opensslIncludes/openssl/e_os2.h; sourceTree = "<group>"; };
-		A9B2304351F4D869D9983AE0 /* json_reader.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = json_reader.c; sourceTree = "<group>"; };
-		A9F7B929E2D1994F8045C8EB /* event_string.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = event_string.h; sourceTree = "<group>"; };
-		AA5D910551A70909CF207903 /* transport_security_interface.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = transport_security_interface.h; sourceTree = "<group>"; };
-		AA5ECB2F157C1EB5A59BA407 /* transport_security.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = transport_security.c; sourceTree = "<group>"; };
-		AAAC8D326F301B501A9FB275 /* UnknownFieldSetBuilder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = UnknownFieldSetBuilder.h; path = src/runtime/Classes/UnknownFieldSetBuilder.h; sourceTree = "<group>"; };
-		AB8B3BA0CC1EA854D1020AEA /* client_setup.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = client_setup.c; sourceTree = "<group>"; };
-		AC20E7974FC6D45F39E2E3F6 /* log.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = log.h; sourceTree = "<group>"; };
-		AC79A8E7153E7E4206A6E0F6 /* frame_goaway.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = frame_goaway.c; sourceTree = "<group>"; };
-		AC7D24C484B254C957CC365C /* MutableExtensionRegistry.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MutableExtensionRegistry.h; path = src/runtime/Classes/MutableExtensionRegistry.h; sourceTree = "<group>"; };
-		AC9D5638CA9FE89943EAF771 /* libPods-SampleTests-OpenSSL.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-SampleTests-OpenSSL.a"; sourceTree = BUILT_PRODUCTS_DIR; };
-		ACD20403C53CF2ECB88C1984 /* MutableField.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = MutableField.h; path = src/runtime/Classes/MutableField.h; sourceTree = "<group>"; };
-		ACD472E4027B901D3D4FD970 /* alarm_heap.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = alarm_heap.c; sourceTree = "<group>"; };
-		ADBD2557A394F8F84A762A1C /* rand.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = rand.h; path = opensslIncludes/openssl/rand.h; sourceTree = "<group>"; };
-		AEA0150555EE52124AD1B7C2 /* json.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = json.h; sourceTree = "<group>"; };
-		AF13AD52322D3DDC33780FF6 /* fd_posix.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = fd_posix.h; sourceTree = "<group>"; };
-		AF17EDE3DF892AA526697F9C /* GRXNSBlockEnumerator.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = GRXNSBlockEnumerator.h; sourceTree = "<group>"; };
-		AF6A0C7403B1E83482072EAD /* tcp_windows.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = tcp_windows.h; sourceTree = "<group>"; };
-		AF99D421A9B44F389FD75BAB /* endpoint.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = endpoint.c; sourceTree = "<group>"; };
-		B0EF8D6D45E898F9B98D43C5 /* time_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = time_posix.c; sourceTree = "<group>"; };
-		B12ECD5F1AB1A68E4300BD85 /* cpu.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = cpu.h; sourceTree = "<group>"; };
-		B17B03EA2FA04E545FF6F671 /* GeneratedMessage.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = GeneratedMessage.h; path = src/runtime/Classes/GeneratedMessage.h; sourceTree = "<group>"; };
-		B2BBB2419D8C53FE86B50785 /* trace.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = trace.c; sourceTree = "<group>"; };
-		B340F7275C1355D0BA57D370 /* libcrypto.a */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = archive.ar; name = libcrypto.a; path = lib/libcrypto.a; sourceTree = "<group>"; };
-		B353EC7F04DD7326865BF2E4 /* GRXWriter+Immediate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "GRXWriter+Immediate.h"; sourceTree = "<group>"; };
-		B3B63D66E287A3C87A6A370F /* hash_table.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = hash_table.c; sourceTree = "<group>"; };
-		B409984314884D903F36169F /* tcp_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = tcp_posix.c; sourceTree = "<group>"; };
-		B4203115D83813C7536D6932 /* Pods-Sample-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Sample-dummy.m"; sourceTree = "<group>"; };
-		B49754C36A8BF1B609D456E4 /* GRXWriter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = GRXWriter.h; sourceTree = "<group>"; };
-		B4F80BE028884A82874B10E2 /* ConcreteExtensionField.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ConcreteExtensionField.h; path = src/runtime/Classes/ConcreteExtensionField.h; sourceTree = "<group>"; };
-		B504F82835C2F0A602CA44BC /* ConcreteExtensionField.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = ConcreteExtensionField.m; path = src/runtime/Classes/ConcreteExtensionField.m; sourceTree = "<group>"; };
-		B51521C50DEBAE7DD3561DCA /* census_interface.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = census_interface.h; sourceTree = "<group>"; };
-		B52453B197D589FB52125E87 /* UnknownFieldSet.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = UnknownFieldSet.m; path = src/runtime/Classes/UnknownFieldSet.m; sourceTree = "<group>"; };
-		B542D487162588CF33BE01BB /* channel.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = channel.c; sourceTree = "<group>"; };
-		B5A7D705B7743E5EB37EEF52 /* libPods-Sample-ProtocolBuffers.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Sample-ProtocolBuffers.a"; sourceTree = BUILT_PRODUCTS_DIR; };
-		B64822636A0657DA8FB6B4FC /* libPods-ProtocolBuffers.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ProtocolBuffers.a"; sourceTree = BUILT_PRODUCTS_DIR; };
-		B65E20D0DB3E4F3D6867FB77 /* tls1.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = tls1.h; path = opensslIncludes/openssl/tls1.h; sourceTree = "<group>"; };
-		B672404C4B9A9AA68D52177B /* libPods-SampleTests-gRPC.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-SampleTests-gRPC.a"; sourceTree = BUILT_PRODUCTS_DIR; };
-		B6ED74BFADC33253E682ABC4 /* bin_encoder.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = bin_encoder.c; sourceTree = "<group>"; };
-		B738B74ED9964C24A51DD3A8 /* NSDictionary+GRPC.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "NSDictionary+GRPC.m"; sourceTree = "<group>"; };
-		B77F11E53B26F2C847C2D662 /* Pods.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Pods.debug.xcconfig; sourceTree = "<group>"; };
-		B7DE7323A46EAC8DE3C841CC /* fake_transport_security.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = fake_transport_security.c; sourceTree = "<group>"; };
-		B8502DE6FC5E49568F49F41B /* ObjectivecDescriptor.pb.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = ObjectivecDescriptor.pb.m; path = src/runtime/Classes/ObjectivecDescriptor.pb.m; sourceTree = "<group>"; };
-		B8A175B88623510F93F363DD /* metadata.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = metadata.c; sourceTree = "<group>"; };
-		B916697BDD15D047B9CE258E /* tcp_client_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = tcp_client_posix.c; sourceTree = "<group>"; };
-		BA0FBD1240C3330ADAFD46ED /* GRXMappingWriter.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = GRXMappingWriter.m; sourceTree = "<group>"; };
-		BB5F6E52609DF6A8B79E6C6E /* ExtendableMessage.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ExtendableMessage.h; path = src/runtime/Classes/ExtendableMessage.h; sourceTree = "<group>"; };
-		BBB6D3AC4566125D3148449C /* RingBuffer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RingBuffer.h; path = src/runtime/Classes/RingBuffer.h; sourceTree = "<group>"; };
-		BD1B20F8D2B7ADFD921FB0D4 /* wakeup_fd_pipe.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = wakeup_fd_pipe.c; sourceTree = "<group>"; };
-		BD2C5EA58859F38D05EE84DC /* tcp_windows.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = tcp_windows.c; sourceTree = "<group>"; };
-		BD44797A3981F425F27C8EAF /* ssl_transport_security.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = ssl_transport_security.c; sourceTree = "<group>"; };
-		BDBBDCF65961AB006C59723F /* ssl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl.h; path = opensslIncludes/openssl/ssl.h; sourceTree = "<group>"; };
-		BDFE2FD7D829909C8BA54CE5 /* message_compress.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = message_compress.h; sourceTree = "<group>"; };
-		BE4BCA754104BF9BFE6B27DB /* cast.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = cast.h; path = opensslIncludes/openssl/cast.h; sourceTree = "<group>"; };
-		BE7781256B45578CE91A01F0 /* init_secure.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = init_secure.c; sourceTree = "<group>"; };
-		BE7E9B88B929CDC8C90DAA05 /* libPods-SampleTests-RemoteTest.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-SampleTests-RemoteTest.a"; sourceTree = BUILT_PRODUCTS_DIR; };
-		BEE79C3939F4822E22742D3E /* byte_buffer_queue.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = byte_buffer_queue.c; sourceTree = "<group>"; };
-		BEFD30461D28E85BC4564977 /* AbstractMessage.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AbstractMessage.m; path = src/runtime/Classes/AbstractMessage.m; sourceTree = "<group>"; };
-		BF086B2B602320004C6364E6 /* GRXImmediateWriter.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = GRXImmediateWriter.m; sourceTree = "<group>"; };
-		BF18594A111FF813A7E2C0E6 /* GRPCChannel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = GRPCChannel.h; sourceTree = "<group>"; };
-		BF25E4D94898506695C15034 /* server_secure_chttp2.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = server_secure_chttp2.c; sourceTree = "<group>"; };
-		BFD8F3C8487F38428F6A509E /* cms.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = cms.h; path = opensslIncludes/openssl/cms.h; sourceTree = "<group>"; };
-		BFF865292FE2CD0BAC28C4A2 /* socket_utils_linux.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = socket_utils_linux.c; sourceTree = "<group>"; };
-		C02489A51275B9FDD158316A /* Pods-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-dummy.m"; sourceTree = "<group>"; };
-		C0CBC4CB17FEC26EA9AC1649 /* cmac.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = cmac.h; path = opensslIncludes/openssl/cmac.h; sourceTree = "<group>"; };
-		C100BFF62859B01C180DF057 /* Pods-SampleTests-RemoteTest-Private.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SampleTests-RemoteTest-Private.xcconfig"; path = "../Pods-SampleTests-RemoteTest/Pods-SampleTests-RemoteTest-Private.xcconfig"; sourceTree = "<group>"; };
-		C120CA737CE445803BF6F292 /* algorithm.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = algorithm.c; sourceTree = "<group>"; };
-		C19838C914909B0B92D93A99 /* secure_transport_setup.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = secure_transport_setup.h; sourceTree = "<group>"; };
-		C238706A0B82D7D865504F64 /* client_channel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = client_channel.h; sourceTree = "<group>"; };
-		C26486ABAEEC1AECC448F29E /* Pods-Route_guide-Private.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Route_guide-Private.xcconfig"; sourceTree = "<group>"; };
-		C3BFA648AC3F1804BED0C966 /* init_unsecure.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = init_unsecure.c; sourceTree = "<group>"; };
-		C3D405F034FCA0772AEA9CE4 /* json_writer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = json_writer.h; sourceTree = "<group>"; };
-		C4A92081738D6E4F939A0969 /* json_reader.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = json_reader.h; sourceTree = "<group>"; };
-		C4E33A9259B1081D706CF1FB /* ssl3.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ssl3.h; path = opensslIncludes/openssl/ssl3.h; sourceTree = "<group>"; };
-		C539CB090E9EAAED0464BACD /* google_default_credentials.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = google_default_credentials.c; sourceTree = "<group>"; };
-		C560E054B648B38F92F270A1 /* pollset_kick.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = pollset_kick.h; sourceTree = "<group>"; };
-		C56A403563F4F0297CBBA5E8 /* conf_api.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = conf_api.h; path = opensslIncludes/openssl/conf_api.h; sourceTree = "<group>"; };
-		C5AAB5EAB3B14E99FC11A384 /* rc2.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = rc2.h; path = opensslIncludes/openssl/rc2.h; sourceTree = "<group>"; };
-		C5CA889C8CBB047E77DADB23 /* json_token.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = json_token.h; sourceTree = "<group>"; };
-		C651F351648FAA6E7EDD7F22 /* bio.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = bio.h; path = opensslIncludes/openssl/bio.h; sourceTree = "<group>"; };
-		C72A49BF07D01F8088DFCC4E /* tcp_client.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = tcp_client.h; sourceTree = "<group>"; };
-		C756CEE18F78C78DD0C12E49 /* Pods-RemoteTest-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-RemoteTest-dummy.m"; sourceTree = "<group>"; };
-		C7D47F1384449D2EDFFFE2C5 /* UnknownFieldSetBuilder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = UnknownFieldSetBuilder.m; path = src/runtime/Classes/UnknownFieldSetBuilder.m; sourceTree = "<group>"; };
-		C85D5228B2712CE336C2F9DA /* env_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = env_posix.c; sourceTree = "<group>"; };
-		C8969569F0038E334CCF8BD5 /* Pods-gRPC-Private.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-gRPC-Private.xcconfig"; path = "../Pods-gRPC/Pods-gRPC-Private.xcconfig"; sourceTree = "<group>"; };
-		C97B5CA8ACEAF0CCF4C9F319 /* Field.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = Field.m; path = src/runtime/Classes/Field.m; sourceTree = "<group>"; };
-		C9949F43CB5F853649D8411D /* log_android.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = log_android.c; sourceTree = "<group>"; };
-		C9B0549BC9D5CEE7FFDBF499 /* transport.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = transport.c; sourceTree = "<group>"; };
-		CB353546D2772BAB68E7CE69 /* Pods-SampleTests-ProtocolBuffers-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Pods-SampleTests-ProtocolBuffers-prefix.pch"; path = "../Pods-SampleTests-ProtocolBuffers/Pods-SampleTests-ProtocolBuffers-prefix.pch"; sourceTree = "<group>"; };
-		CBA0D6DE446A425B959CD645 /* iomgr.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = iomgr.c; sourceTree = "<group>"; };
-		CBA1FC6794B42203F49941F4 /* Pods-Sample-OpenSSL-Private.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Sample-OpenSSL-Private.xcconfig"; path = "../Pods-Sample-OpenSSL/Pods-Sample-OpenSSL-Private.xcconfig"; sourceTree = "<group>"; };
-		CBC289DAF977518C39931163 /* Pods-RemoteTest-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-RemoteTest-prefix.pch"; sourceTree = "<group>"; };
-		CC24275C1B81C4F0B56DF5BE /* alpn.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = alpn.c; sourceTree = "<group>"; };
-		CC4B92F98C219BAB7AF48AFF /* ecdsa.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ecdsa.h; path = opensslIncludes/openssl/ecdsa.h; sourceTree = "<group>"; };
-		CC72D69889FCA54FF26E059B /* stream_map.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = stream_map.c; sourceTree = "<group>"; };
-		CCC7879745FA67A0A66A8C99 /* GRPCCompletionQueue.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = GRPCCompletionQueue.h; sourceTree = "<group>"; };
-		CE05CF8E2EC1CA3AB87C808F /* sha.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = sha.h; path = opensslIncludes/openssl/sha.h; sourceTree = "<group>"; };
-		CE4F5BE7E052D1309933236C /* child_channel.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = child_channel.h; sourceTree = "<group>"; };
-		CE505393BA1DED4309A794BF /* opensslv.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = opensslv.h; path = opensslIncludes/openssl/opensslv.h; sourceTree = "<group>"; };
-		CE9B94697CCEC36CED30CF18 /* mdc2.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = mdc2.h; path = opensslIncludes/openssl/mdc2.h; sourceTree = "<group>"; };
-		CEE9355DBD53244708163705 /* client.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = client.h; sourceTree = "<group>"; };
-		CF0DFFDFFA35E0AE2EA0EF2F /* GRXNSScalarEnumerator.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = GRXNSScalarEnumerator.m; sourceTree = "<group>"; };
-		CF4BB6900EA7F1317FE1A1D5 /* byte_buffer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = byte_buffer.h; sourceTree = "<group>"; };
-		CF81B2D0FEE08004C3FD253B /* Pods-SampleTests-environment.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-SampleTests-environment.h"; sourceTree = "<group>"; };
-		CFA8E7BD1676F3248B151924 /* status_conversion.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = status_conversion.c; sourceTree = "<group>"; };
-		D0A27F6813DC9659FDAE6C3D /* Pods-Sample-ProtocolBuffers-Private.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Sample-ProtocolBuffers-Private.xcconfig"; path = "../Pods-Sample-ProtocolBuffers/Pods-Sample-ProtocolBuffers-Private.xcconfig"; sourceTree = "<group>"; };
-		D14D71D9C78FD141E88A2AB6 /* modes.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = modes.h; path = opensslIncludes/openssl/modes.h; sourceTree = "<group>"; };
-		D16D6E15BB846B8D1CC63D37 /* grpc_string.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = grpc_string.h; sourceTree = "<group>"; };
-		D17935EFCDE731E09000DF66 /* blowfish.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = blowfish.h; path = opensslIncludes/openssl/blowfish.h; sourceTree = "<group>"; };
-		D23639C6E3F36111B2F8106A /* Pods-SampleTests-RemoteTest.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SampleTests-RemoteTest.xcconfig"; path = "../Pods-SampleTests-RemoteTest/Pods-SampleTests-RemoteTest.xcconfig"; sourceTree = "<group>"; };
-		D27CB2495D6BC2AAA54AD811 /* slice_buffer.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = slice_buffer.c; sourceTree = "<group>"; };
-		D34EDADD3A7795B3D4C0AF58 /* Utilities.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Utilities.h; path = src/runtime/Classes/Utilities.h; sourceTree = "<group>"; };
-		D3CD8C351D901D0C065C8F26 /* engine.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = engine.h; path = opensslIncludes/openssl/engine.h; sourceTree = "<group>"; };
-		D3D5A17BD6040A60D82D06EE /* thd.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = thd.c; sourceTree = "<group>"; };
-		D40526323B87888709D24324 /* file.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = file.h; sourceTree = "<group>"; };
-		D40ADADFBB6DC95EC6855D77 /* http_filter.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = http_filter.c; sourceTree = "<group>"; };
-		D411C778D1B5CB55E3F81DA2 /* asn1t.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = asn1t.h; path = opensslIncludes/openssl/asn1t.h; sourceTree = "<group>"; };
-		D4FDAA4A78F994AD1139CDB5 /* libPods-Sample-OpenSSL.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Sample-OpenSSL.a"; sourceTree = BUILT_PRODUCTS_DIR; };
-		D55F979D08C86B56B168CA42 /* Pods-SampleTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-SampleTests-acknowledgements.markdown"; sourceTree = "<group>"; };
-		D62A2B89BC57A50909A82C8D /* stream_op.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = stream_op.h; sourceTree = "<group>"; };
-		D6649667C01C50F65DEAA701 /* Test.pb.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = Test.pb.m; sourceTree = "<group>"; };
-		D68E6DE85E57C95FF7A06516 /* varint.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = varint.c; sourceTree = "<group>"; };
-		D6C8BC2D5261C752FBE0D073 /* socket_utils_common_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = socket_utils_common_posix.c; sourceTree = "<group>"; };
-		D792CBC41B3B3E657A56CD2D /* slice.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = slice.h; sourceTree = "<group>"; };
-		D958CE475566436F9C2A5056 /* Pods-environment.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-environment.h"; sourceTree = "<group>"; };
-		D97B6A05C9BFC4CF3BFAF3F0 /* dso.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = dso.h; path = opensslIncludes/openssl/dso.h; sourceTree = "<group>"; };
-		D9A61224E115AD9725AA7A5C /* GRPCMethodName+HTTP2Encoding.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "GRPCMethodName+HTTP2Encoding.m"; sourceTree = "<group>"; };
-		DA022393E5E17A516743E561 /* census_log.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = census_log.h; sourceTree = "<group>"; };
-		DA0324B7B188B50CC09EE455 /* secure_endpoint.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = secure_endpoint.c; sourceTree = "<group>"; };
-		DAD9814362B1EC0A3BEFC733 /* credentials.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = credentials.c; sourceTree = "<group>"; };
-		DB33BDC523FCA7A3F0E9B0CD /* md4.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = md4.h; path = opensslIncludes/openssl/md4.h; sourceTree = "<group>"; };
-		DC630B706D01BDA73586F4AF /* sync_win32.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = sync_win32.h; sourceTree = "<group>"; };
-		DC73D1CE591B9BA80D367B85 /* Route_guide.pb.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = Route_guide.pb.m; sourceTree = "<group>"; };
-		DDB7824792A0D7E587422DEC /* bn.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = bn.h; path = opensslIncludes/openssl/bn.h; sourceTree = "<group>"; };
-		DDD83A7A2AB0AEB0F48C7947 /* GRPCMethodName.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = GRPCMethodName.m; sourceTree = "<group>"; };
-		DE0442F9E24E5B99169CC8E1 /* tls_pthread.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = tls_pthread.h; sourceTree = "<group>"; };
-		DE2A0ED4DDBEC3E6D84D16F3 /* atm.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = atm.h; sourceTree = "<group>"; };
-		DEB8C5F9370F106E90A84DEE /* wakeup_fd_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = wakeup_fd_posix.c; sourceTree = "<group>"; };
-		DF171BB5BAA37A552CDAAD26 /* libPods-SampleTests-ProtocolBuffers.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-SampleTests-ProtocolBuffers.a"; sourceTree = BUILT_PRODUCTS_DIR; };
-		DFF32937D1BD905796DBC05A /* TextFormat.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = TextFormat.h; path = src/runtime/Classes/TextFormat.h; sourceTree = "<group>"; };
-		E1EE04CA884BA2771F155B1A /* CodedInputStream.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = CodedInputStream.m; path = src/runtime/Classes/CodedInputStream.m; sourceTree = "<group>"; };
-		E1F91FEB24408BC30186C5CC /* fd_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = fd_posix.c; sourceTree = "<group>"; };
-		E24005BA4EE1886E457D1102 /* timers.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = timers.h; sourceTree = "<group>"; };
-		E300DA3BE8A8045FBE38FB99 /* Pods-SampleTests-RemoteTest-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Pods-SampleTests-RemoteTest-dummy.m"; path = "../Pods-SampleTests-RemoteTest/Pods-SampleTests-RemoteTest-dummy.m"; sourceTree = "<group>"; };
-		E307610E1EEEFBA4D4925832 /* RingBuffer.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RingBuffer.m; path = src/runtime/Classes/RingBuffer.m; sourceTree = "<group>"; };
-		E329117842FC2F6CAC80EC0E /* libPods-SampleTests-Route_guide.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-SampleTests-Route_guide.a"; sourceTree = BUILT_PRODUCTS_DIR; };
-		E399DB739AF98C8C2BC29745 /* Pods.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Pods.release.xcconfig; sourceTree = "<group>"; };
-		E3EE726B6CC258D7AD02F50A /* NSError+GRPC.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "NSError+GRPC.h"; sourceTree = "<group>"; };
-		E446230CDDACC00743326ACC /* TextFormat.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = TextFormat.m; path = src/runtime/Classes/TextFormat.m; sourceTree = "<group>"; };
-		E6238E0B2F14B6A142E9386E /* hash_table.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = hash_table.h; sourceTree = "<group>"; };
-		E6A4F7BF5200983A0464A000 /* pollset.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = pollset.h; sourceTree = "<group>"; };
-		E73432FD3175A62327850971 /* PBArray.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = PBArray.h; path = src/runtime/Classes/PBArray.h; sourceTree = "<group>"; };
-		E74322EC3E06EC9CDFE14671 /* secure_transport_setup.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = secure_transport_setup.c; sourceTree = "<group>"; };
-		E764B272A54ECA2B4EEDDEF0 /* des.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = des.h; path = opensslIncludes/openssl/des.h; sourceTree = "<group>"; };
-		E79E1B27DCA9FCCD3182E568 /* huffsyms.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = huffsyms.h; sourceTree = "<group>"; };
-		E7BC6ECD4926C4D722CA46C9 /* socket_windows.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = socket_windows.c; sourceTree = "<group>"; };
-		E83BCAEE168FF4FC16653717 /* secure_endpoint.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = secure_endpoint.h; sourceTree = "<group>"; };
-		E8E8F6A5EC1411544D5BB809 /* wakeup_fd_eventfd.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = wakeup_fd_eventfd.c; sourceTree = "<group>"; };
-		E9BFD5CE1581C9C96A33A657 /* transport_impl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = transport_impl.h; sourceTree = "<group>"; };
-		EA3AA73E2696645C327CC231 /* hpack_parser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = hpack_parser.h; sourceTree = "<group>"; };
-		EB1B4E98E2C1E9529A2937F0 /* NSError+GRPC.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "NSError+GRPC.m"; sourceTree = "<group>"; };
-		EB3D587E70F10F51FAD52541 /* cpu_linux.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = cpu_linux.c; sourceTree = "<group>"; };
-		EB5E7B7C6915536C163CD40B /* frame_rst_stream.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = frame_rst_stream.h; sourceTree = "<group>"; };
-		EC255722ACBDA689161E6823 /* Pods-Sample-RemoteTest.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Sample-RemoteTest.xcconfig"; path = "../Pods-Sample-RemoteTest/Pods-Sample-RemoteTest.xcconfig"; sourceTree = "<group>"; };
-		EC2C6FEDF5F8EC31C6D7EFDD /* atm_win32.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = atm_win32.h; sourceTree = "<group>"; };
-		ED937D92BFD9EE65B9629994 /* safestack.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = safestack.h; path = opensslIncludes/openssl/safestack.h; sourceTree = "<group>"; };
-		EDC427CF599E1939EB622B02 /* Pods-SampleTests-OpenSSL-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Pods-SampleTests-OpenSSL-dummy.m"; path = "../Pods-SampleTests-OpenSSL/Pods-SampleTests-OpenSSL-dummy.m"; sourceTree = "<group>"; };
-		EDDBC232C7BD17F4B5938A72 /* AbstractMessageBuilder.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AbstractMessageBuilder.m; path = src/runtime/Classes/AbstractMessageBuilder.m; sourceTree = "<group>"; };
-		EEACE028BFE2BD1DE7EBA99C /* ExtendableMessageBuilder.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ExtendableMessageBuilder.h; path = src/runtime/Classes/ExtendableMessageBuilder.h; sourceTree = "<group>"; };
-		EEFECD0FB67EF7BE8035EA92 /* Pods-RemoteTest.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-RemoteTest.xcconfig"; sourceTree = "<group>"; };
-		EF20E11F62E62D71570700D2 /* Pods-ProtocolBuffers-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-ProtocolBuffers-prefix.pch"; sourceTree = "<group>"; };
-		EF906AB8AF22A3D40E284C93 /* socket_utils_posix.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = socket_utils_posix.c; sourceTree = "<group>"; };
-		EFCA73F5E80AE5E7C18BAE5F /* census_rpc_stats.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = census_rpc_stats.h; sourceTree = "<group>"; };
-		F028342496E673415FF3D8AB /* secure_channel_create.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = secure_channel_create.c; sourceTree = "<group>"; };
-		F0C991251C2107D1FBD154AF /* transport_security.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = transport_security.h; sourceTree = "<group>"; };
-		F0CAA4D057B933B55CDDA440 /* iomgr.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = iomgr.h; sourceTree = "<group>"; };
-		F0DF5F5361D504902939C3F3 /* slice.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = slice.c; sourceTree = "<group>"; };
-		F2704E6980860EA1AB6A090F /* http_client_filter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = http_client_filter.h; sourceTree = "<group>"; };
-		F271930D3583DA89399BDFBB /* AbstractMessage.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AbstractMessage.h; path = src/runtime/Classes/AbstractMessage.h; sourceTree = "<group>"; };
-		F3AA748BBA2B63D9C996FC2B /* time_averaged_stats.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = time_averaged_stats.h; sourceTree = "<group>"; };
-		F3CD1C438363227E2959C8EC /* buffer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = buffer.h; path = opensslIncludes/openssl/buffer.h; sourceTree = "<group>"; };
-		F3DB27C5D118BD4492A9DCF9 /* pollset_windows.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = pollset_windows.c; sourceTree = "<group>"; };
-		F40B226C510215D623E7E912 /* libPods-Sample-Route_guide.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Sample-Route_guide.a"; sourceTree = BUILT_PRODUCTS_DIR; };
-		F510AD3A2D71ACF0282C64B5 /* metadata.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = metadata.h; sourceTree = "<group>"; };
-		F5BEEBA60AE917954B96425A /* asn1_mac.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = asn1_mac.h; path = opensslIncludes/openssl/asn1_mac.h; sourceTree = "<group>"; };
-		F60215710E44F2B63C712F67 /* Descriptor.pb.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Descriptor.pb.h; path = src/runtime/Classes/Descriptor.pb.h; sourceTree = "<group>"; };
-		F6022893DD454271F713FD2C /* server_create.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = server_create.c; sourceTree = "<group>"; };
-		F72129AB470DEE3F62A8FC76 /* call_details.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = call_details.c; sourceTree = "<group>"; };
-		F77DF02035B9AF8D4133BD22 /* Pods-OpenSSL.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-OpenSSL.xcconfig"; sourceTree = "<group>"; };
-		F7F6C37F6B1B704ADEA89319 /* murmur_hash.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = murmur_hash.h; sourceTree = "<group>"; };
-		F8E920231885948DD62874D4 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; };
-		F93ADDC6556CB4F0A0CCE308 /* frame_data.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = frame_data.c; sourceTree = "<group>"; };
-		F9F8AFE394BD368F3F6EDFF9 /* Pods-Route_guide.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Route_guide.xcconfig"; sourceTree = "<group>"; };
-		FA1E53C03134BD79E85D69BB /* frame_window_update.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = frame_window_update.h; sourceTree = "<group>"; };
-		FBEC0724BD339FFB26F5F022 /* resolve_address.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = resolve_address.h; sourceTree = "<group>"; };
-		FC6E72A9A76E69ADB344A62A /* des_old.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = des_old.h; path = opensslIncludes/openssl/des_old.h; sourceTree = "<group>"; };
-		FCDEC2AFE402D37148992805 /* census_rpc_stats.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = census_rpc_stats.c; sourceTree = "<group>"; };
-		FDD2798B42FADD235D062C79 /* security_connector.c */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.c; path = security_connector.c; sourceTree = "<group>"; };
-		FE14502B83EB31B456B00307 /* GRXWriteable.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = GRXWriteable.m; sourceTree = "<group>"; };
-		FE16C4FD70CFDC5F8E356C47 /* host_port.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = host_port.h; sourceTree = "<group>"; };
-		FE48EF7E57B8F2167E1B0135 /* Descriptor.pb.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = Descriptor.pb.m; path = src/runtime/Classes/Descriptor.pb.m; sourceTree = "<group>"; };
-		FE566BB5269F67EEF6FE6960 /* comp.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = comp.h; path = opensslIncludes/openssl/comp.h; sourceTree = "<group>"; };
-		FEB5DE7E91426587814394AF /* Podfile */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; };
-		FEC0D9E6713C7AD603C43A63 /* Bootstrap.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Bootstrap.h; path = src/runtime/Classes/Bootstrap.h; sourceTree = "<group>"; };
-		FF56DC4FC3FC0F8B7F75A1A8 /* fake_transport_security.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = fake_transport_security.h; sourceTree = "<group>"; };
-		FFE50BB7E184EB895E72ED5B /* err.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = err.h; path = opensslIncludes/openssl/err.h; sourceTree = "<group>"; };
-/* End PBXFileReference section */
-
-/* Begin PBXFrameworksBuildPhase section */
-		302811D97B7D580C18D502C6 /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				FDB3B771966F72B15BA49799 /* Foundation.framework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		370A590844038DB8D305C083 /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				5C6A026276E01F2CAD2A6929 /* Foundation.framework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		37F9DF5D4E6985A10440B395 /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				DFED98403160BA6B281B1320 /* Foundation.framework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		39892D4D2A0C56A72BA170AC /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				D9D69F79ADD1C532EC42BE09 /* Foundation.framework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		41A55C7E921EF760FA5037B7 /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				ED7211185D62CAB5ECB5F394 /* Foundation.framework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		5AFF33649572EFABC7A07A03 /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		62EF5B8B84C327E49708EC1A /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				AECEF36BF0C16AAEDE951D32 /* Foundation.framework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		668DA73FA4219F80B3E29935 /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				25C58F10BD3C75BF9E165883 /* Foundation.framework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		6EFBC93703CAC1ED26554B55 /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				6564106ED133943CCFF7E88E /* Foundation.framework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		9E238B9325AB2983D6AD95E2 /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				369647D7FA5FEECF29F997F6 /* Foundation.framework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		9F69F833B3793B16B3BF5765 /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				DA608A0C1B4B1DD542F9B519 /* Foundation.framework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		A72A6D77B04811A79E6EB8B8 /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				B16FCB71EC3291C710A0E8C7 /* Foundation.framework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		AA4FB3D0732B054CDC58F3BB /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				C3E87F67F97BCDF69F6D0321 /* Foundation.framework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		AB83A0EE0D0FBA16A4899F19 /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				A2CC189FEFBB0F8F6678B956 /* Foundation.framework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		AD8D2C416B46F67D8B9E02F4 /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				EBD5D0B63DB8F9CD2243091C /* Foundation.framework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		B84D19C2C4AC16E1F87EA7FA /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		B8EFDE3C646A5713A99AA68A /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		C761D81305BAB47FBF0FD76D /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				DF87D957D08EDF9A1975D310 /* Foundation.framework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		D4A425AF9C9161398AE1E3E8 /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				913C162208A9E3C6DD57496C /* Foundation.framework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		E83956D8AA88EFBFF0B0FCFD /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				182178214BA6B4A9A510AC3A /* Foundation.framework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		F8D75AFA0768C6485E481DCC /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				02F3E5AF0000AA6F411403F7 /* Foundation.framework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-/* End PBXFrameworksBuildPhase section */
-
-/* Begin PBXGroup section */
-		024BA99817F9C7C80A5A116A /* transformations */ = {
-			isa = PBXGroup;
-			children = (
-				30DC0AEBF86D6086E7728540 /* GRXMappingWriter.h */,
-				BA0FBD1240C3330ADAFD46ED /* GRXMappingWriter.m */,
-			);
-			path = transformations;
-			sourceTree = "<group>";
-		};
-		110A9425C9BB7D4B6B5F64F0 /* Support Files */ = {
-			isa = PBXGroup;
-			children = (
-				F77DF02035B9AF8D4133BD22 /* Pods-OpenSSL.xcconfig */,
-				91C6C394D4767AA0A9C6ED09 /* Pods-OpenSSL-Private.xcconfig */,
-				0C676CCFC74F97CF22E7D9A3 /* Pods-OpenSSL-dummy.m */,
-				4C1655FF7E5FF42898A6BA70 /* Pods-OpenSSL-prefix.pch */,
-				39EBA7C6F0DB6672205BD780 /* Pods-Sample-OpenSSL.xcconfig */,
-				CBA1FC6794B42203F49941F4 /* Pods-Sample-OpenSSL-Private.xcconfig */,
-				9237BB0A69F0E093CB3274F4 /* Pods-Sample-OpenSSL-dummy.m */,
-				A73136F76FF9F5955D9A2383 /* Pods-Sample-OpenSSL-prefix.pch */,
-				6DF87CC1C564F3A2AA3A0288 /* Pods-SampleTests-OpenSSL.xcconfig */,
-				283F94B23D74B84F80DD5877 /* Pods-SampleTests-OpenSSL-Private.xcconfig */,
-				EDC427CF599E1939EB622B02 /* Pods-SampleTests-OpenSSL-dummy.m */,
-				A530AAB38E2B009BA6E14C89 /* Pods-SampleTests-OpenSSL-prefix.pch */,
-			);
-			name = "Support Files";
-			path = "../Target Support Files/Pods-OpenSSL";
-			sourceTree = "<group>";
-		};
-		1BD0291213EA12577DC8D76C /* httpcli */ = {
-			isa = PBXGroup;
-			children = (
-				35DAF7732DF40F6191B582F0 /* format_request.c */,
-				3DA4398D3864DDE90508BEDB /* format_request.h */,
-				9EB5E9E525851BF88C1930C0 /* httpcli.c */,
-				208DF1BA4BA8F949D6D903B3 /* httpcli.h */,
-				4258ECAEE95E0068DBBBD447 /* httpcli_security_connector.c */,
-				77E040AA780ABF0B8A8C0390 /* httpcli_security_connector.h */,
-				5FB603E306CD89ADB1CE6511 /* parser.c */,
-				686C0D5512A270C008BCF001 /* parser.h */,
-			);
-			path = httpcli;
-			sourceTree = "<group>";
-		};
-		1F64025FAA890CDBB02621B8 /* tsi */ = {
-			isa = PBXGroup;
-			children = (
-				B7DE7323A46EAC8DE3C841CC /* fake_transport_security.c */,
-				FF56DC4FC3FC0F8B7F75A1A8 /* fake_transport_security.h */,
-				BD44797A3981F425F27C8EAF /* ssl_transport_security.c */,
-				0904AAFE71C13FEBE2A2413D /* ssl_transport_security.h */,
-				AA5ECB2F157C1EB5A59BA407 /* transport_security.c */,
-				F0C991251C2107D1FBD154AF /* transport_security.h */,
-				AA5D910551A70909CF207903 /* transport_security_interface.h */,
-			);
-			path = tsi;
-			sourceTree = "<group>";
-		};
-		24E3826D6E6AA8696179757C /* grpc */ = {
-			isa = PBXGroup;
-			children = (
-				CF4BB6900EA7F1317FE1A1D5 /* byte_buffer.h */,
-				5110D7E251E644EC6D7C29CA /* byte_buffer_reader.h */,
-				296D8B18B1E9020B7FBF9ED7 /* grpc.h */,
-				925E27ADE0C72FDA338F485E /* grpc_http.h */,
-				37D5B8B98758DFDC65FAE7E5 /* grpc_security.h */,
-				699CCABB0EF4C0DBE9ECFF77 /* status.h */,
-				BDA863F0DB01E95A623C4A6E /* support */,
-			);
-			path = grpc;
-			sourceTree = "<group>";
-		};
-		269252B83D14A8B35C4CC8F5 /* Support Files */ = {
-			isa = PBXGroup;
-			children = (
-				46F0F4E2E0B72032572A1773 /* Pods-Sample-gRPC.xcconfig */,
-				97A8A5841471BC4954FBC3B9 /* Pods-Sample-gRPC-Private.xcconfig */,
-				2795129FEBBFD1ABFFF6A785 /* Pods-Sample-gRPC-dummy.m */,
-				7C25DA582B7E9AB66A5D84F1 /* Pods-Sample-gRPC-prefix.pch */,
-				7ADD2A001607EDFCFE3D603D /* Pods-SampleTests-gRPC.xcconfig */,
-				185D71DEA33A07F75C60BE47 /* Pods-SampleTests-gRPC-Private.xcconfig */,
-				0E0C22A75BAE66DCC0928A86 /* Pods-SampleTests-gRPC-dummy.m */,
-				939EE37844D7360A65060A3C /* Pods-SampleTests-gRPC-prefix.pch */,
-				0396BC860234A3A3880901F4 /* Pods-gRPC.xcconfig */,
-				C8969569F0038E334CCF8BD5 /* Pods-gRPC-Private.xcconfig */,
-				23FC9E110CDD11D7B12A9A8D /* Pods-gRPC-dummy.m */,
-				9D7F0E45DD4F3653FFFED7E0 /* Pods-gRPC-prefix.pch */,
-			);
-			name = "Support Files";
-			path = "src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-gRPC";
-			sourceTree = "<group>";
-		};
-		273976DBABB77D2C84A7E938 /* Pods */ = {
-			isa = PBXGroup;
-			children = (
-				442D49E6A723C4CFB4C3A7FF /* Pods-acknowledgements.markdown */,
-				2EC86514BB193DE737DF5A6E /* Pods-acknowledgements.plist */,
-				C02489A51275B9FDD158316A /* Pods-dummy.m */,
-				D958CE475566436F9C2A5056 /* Pods-environment.h */,
-				8AB974254F70D3734E674FF4 /* Pods-resources.sh */,
-				B77F11E53B26F2C847C2D662 /* Pods.debug.xcconfig */,
-				E399DB739AF98C8C2BC29745 /* Pods.release.xcconfig */,
-			);
-			name = Pods;
-			path = "Target Support Files/Pods";
-			sourceTree = "<group>";
-		};
-		29281177367645E66D69609A /* profiling */ = {
-			isa = PBXGroup;
-			children = (
-				1B04B251148F84EB89C5EF9A /* timers.c */,
-				E24005BA4EE1886E457D1102 /* timers.h */,
-				A29A7E4785EC3464B81DE033 /* timers_preciseclock.h */,
-			);
-			path = profiling;
-			sourceTree = "<group>";
-		};
-		2A7A429F090170464CEB9F77 /* Pods-Sample */ = {
-			isa = PBXGroup;
-			children = (
-				506F88ADCB46C3FC40D15A90 /* Pods-Sample-acknowledgements.markdown */,
-				6151842E395081DBF80CAC01 /* Pods-Sample-acknowledgements.plist */,
-				B4203115D83813C7536D6932 /* Pods-Sample-dummy.m */,
-				73851498A7CB41575B08683E /* Pods-Sample-environment.h */,
-				A1A2B6382BD3DF9FAA1746B4 /* Pods-Sample-resources.sh */,
-				778F9708965C53FE312E1004 /* Pods-Sample.debug.xcconfig */,
-				0B7137671BD7B2B31E9ED818 /* Pods-Sample.release.xcconfig */,
-			);
-			name = "Pods-Sample";
-			path = "Target Support Files/Pods-Sample";
-			sourceTree = "<group>";
-		};
-		3238F1DE1A65B8D1A3B5E514 /* transport */ = {
-			isa = PBXGroup;
-			children = (
-				0639FA42DBCCF395D3B05632 /* chttp2_transport.c */,
-				8CDA69F3F5647005EF56EC3E /* chttp2_transport.h */,
-				B8A175B88623510F93F363DD /* metadata.c */,
-				F510AD3A2D71ACF0282C64B5 /* metadata.h */,
-				7443FC5042AD6D54F533BE2F /* stream_op.c */,
-				D62A2B89BC57A50909A82C8D /* stream_op.h */,
-				C9B0549BC9D5CEE7FFDBF499 /* transport.c */,
-				4E54CB0C0280C270C850A4DE /* transport.h */,
-				E9BFD5CE1581C9C96A33A657 /* transport_impl.h */,
-				C518B3C038EAE412F71BB491 /* chttp2 */,
-			);
-			path = transport;
-			sourceTree = "<group>";
-		};
-		3389E3FAE3E0B1D1CAE1F8DE /* private */ = {
-			isa = PBXGroup;
-			children = (
-				AF17EDE3DF892AA526697F9C /* GRXNSBlockEnumerator.h */,
-				8BD3A6A6436D217FF1D0401C /* GRXNSBlockEnumerator.m */,
-				482DA575CF9599896DDAD7B8 /* GRXNSFastEnumerator.h */,
-				4B45C3AD7EF8936646FCF8C7 /* GRXNSFastEnumerator.m */,
-				83E135FAC325138487E28FBE /* GRXNSScalarEnumerator.h */,
-				CF0DFFDFFA35E0AE2EA0EF2F /* GRXNSScalarEnumerator.m */,
-			);
-			path = private;
-			sourceTree = "<group>";
-		};
-		3483A4F822E19BC0A10946D7 /* Support Files */ = {
-			isa = PBXGroup;
-			children = (
-				F9F8AFE394BD368F3F6EDFF9 /* Pods-Route_guide.xcconfig */,
-				C26486ABAEEC1AECC448F29E /* Pods-Route_guide-Private.xcconfig */,
-				253AE8966BA024A90D547F8D /* Pods-Route_guide-dummy.m */,
-				1D859EA46D8E7D34056E5A3F /* Pods-Route_guide-prefix.pch */,
-				A832B428E3ECECB5EEA250EA /* Pods-Sample-Route_guide.xcconfig */,
-				A84CC34AEDD516C899DB8CF4 /* Pods-Sample-Route_guide-Private.xcconfig */,
-				7903B8EE593EEC961956C7B0 /* Pods-Sample-Route_guide-dummy.m */,
-				4DDDBCFF0883CB99937DF975 /* Pods-Sample-Route_guide-prefix.pch */,
-				6D41D3ED4D6E50700925180C /* Pods-SampleTests-Route_guide.xcconfig */,
-				9E6B8BF8B2B4A1253685D19A /* Pods-SampleTests-Route_guide-Private.xcconfig */,
-				3694DD501F73DBD743A5082A /* Pods-SampleTests-Route_guide-dummy.m */,
-				007A825D2883AABA6DA58327 /* Pods-SampleTests-Route_guide-prefix.pch */,
-			);
-			name = "Support Files";
-			path = "../Pods/Target Support Files/Pods-Route_guide";
-			sourceTree = "<group>";
-		};
-		3786534CAB8FE7D738FCEA80 /* Pods */ = {
-			isa = PBXGroup;
-			children = (
-				6C65ED659520BEB9198FB971 /* OpenSSL */,
-				C8C97122437670DB7A5B9B50 /* ProtocolBuffers */,
-			);
-			name = Pods;
-			sourceTree = "<group>";
-		};
-		40F7B1B38CEFFA921DF276A2 /* channel */ = {
-			isa = PBXGroup;
-			children = (
-				08438C3CB2AC3F96F24EA50F /* call_op_string.c */,
-				0B9DB82928AAE1ADBF1DB4A7 /* census_filter.c */,
-				A55B75B919DE7DC2F5B2A967 /* census_filter.h */,
-				156C6D5C0D6F9C16AB5A30AB /* channel_args.c */,
-				7256585C37337ED83551BB66 /* channel_args.h */,
-				887D72DBB420C3E1A6738760 /* channel_stack.c */,
-				551ADCF1B6E05631C0798A5D /* channel_stack.h */,
-				9478C18EECEB8DD6252D2215 /* child_channel.c */,
-				CE4F5BE7E052D1309933236C /* child_channel.h */,
-				1651D4FA30764DB3A1FBB1A1 /* client_channel.c */,
-				C238706A0B82D7D865504F64 /* client_channel.h */,
-				AB8B3BA0CC1EA854D1020AEA /* client_setup.c */,
-				555B0F2CAD70423DE30C6444 /* client_setup.h */,
-				092547DB130BFAC1D87FDD8A /* connected_channel.c */,
-				9342FC71179F4D1461C18A98 /* connected_channel.h */,
-				3011D324672ADCCCB0DF1E04 /* http_client_filter.c */,
-				F2704E6980860EA1AB6A090F /* http_client_filter.h */,
-				D40ADADFBB6DC95EC6855D77 /* http_filter.c */,
-				82E0D0FF1330995CD65F17F9 /* http_filter.h */,
-				702E018073440195E124A8C4 /* http_server_filter.c */,
-				1A5A429ED5EC2E7EB0146FFB /* http_server_filter.h */,
-				65DC894DCBA3E25098C3F392 /* metadata_buffer.c */,
-				53EC3A019D7830A5407236B1 /* metadata_buffer.h */,
-				8FE7F081D7EBCCBF8595A007 /* noop_filter.c */,
-				08871F1CD8513D34428A2933 /* noop_filter.h */,
-			);
-			path = channel;
-			sourceTree = "<group>";
-		};
-		415F40DC8310D2014AEBF72F /* objective-c */ = {
-			isa = PBXGroup;
-			children = (
-				4CD7551E11CDA42A7915B8FD /* RxLibrary */,
-			);
-			path = "objective-c";
-			sourceTree = "<group>";
-		};
-		4818528FD12C45883CDAC981 /* Pods-SampleTests */ = {
-			isa = PBXGroup;
-			children = (
-				D55F979D08C86B56B168CA42 /* Pods-SampleTests-acknowledgements.markdown */,
-				461069D9C304C72AEB2CC43F /* Pods-SampleTests-acknowledgements.plist */,
-				6CB70053F22835615A8FEA53 /* Pods-SampleTests-dummy.m */,
-				CF81B2D0FEE08004C3FD253B /* Pods-SampleTests-environment.h */,
-				30719F00F9274FB786C2967E /* Pods-SampleTests-resources.sh */,
-				907F99DBF427CE5A0D778FFF /* Pods-SampleTests.debug.xcconfig */,
-				479DCC0B884C97B3018AD25A /* Pods-SampleTests.release.xcconfig */,
-			);
-			name = "Pods-SampleTests";
-			path = "Target Support Files/Pods-SampleTests";
-			sourceTree = "<group>";
-		};
-		4CD7551E11CDA42A7915B8FD /* RxLibrary */ = {
-			isa = PBXGroup;
-			children = (
-				7A9AC18A46591A7BDE09299C /* GRXImmediateWriter.h */,
-				BF086B2B602320004C6364E6 /* GRXImmediateWriter.m */,
-				5986A0FA0E0C626F78D638F8 /* GRXWriteable.h */,
-				FE14502B83EB31B456B00307 /* GRXWriteable.m */,
-				B49754C36A8BF1B609D456E4 /* GRXWriter.h */,
-				00137D70FD603FE10A44A443 /* GRXWriter.m */,
-				B353EC7F04DD7326865BF2E4 /* GRXWriter+Immediate.h */,
-				2FDC708E61C2626808625845 /* GRXWriter+Immediate.m */,
-				21839ADB0BEF093A31BF49B1 /* GRXWriter+Transformations.h */,
-				29AB49050027768AEA1E3811 /* GRXWriter+Transformations.m */,
-				62FF523610CB2A23C2394C8E /* NSEnumerator+GRXUtil.h */,
-				3BF40F941CC1E13D1EC0106F /* NSEnumerator+GRXUtil.m */,
-				3389E3FAE3E0B1D1CAE1F8DE /* private */,
-				024BA99817F9C7C80A5A116A /* transformations */,
-			);
-			path = RxLibrary;
-			sourceTree = "<group>";
-		};
-		4E6DFD8247F6C8CB9B008D60 /* debug */ = {
-			isa = PBXGroup;
-			children = (
-				B2BBB2419D8C53FE86B50785 /* trace.c */,
-				909FB597BDA176D2981D3026 /* trace.h */,
-			);
-			path = debug;
-			sourceTree = "<group>";
-		};
-		624A039DB97DA838A68FA950 /* support */ = {
-			isa = PBXGroup;
-			children = (
-				4B94B3D5B631FD95B0DB7404 /* alloc.c */,
-				1693B87FC0921746424B8E7A /* cancellable.c */,
-				136CEE7CF5D6B8674CA659B7 /* cmdline.c */,
-				3847E4E2D0286C716F9145EC /* cpu_iphone.c */,
-				EB3D587E70F10F51FAD52541 /* cpu_linux.c */,
-				818DC3D8E054FC9EF1C0F1BB /* cpu_posix.c */,
-				5CFFF202D8C58B36ADA3DE94 /* cpu_windows.c */,
-				50A5DE2884F204F06DEA6B43 /* env.h */,
-				3DB502DA27DE84D3006C0081 /* env_linux.c */,
-				C85D5228B2712CE336C2F9DA /* env_posix.c */,
-				37DBA0AFDAFF79CE36275868 /* env_win32.c */,
-				78E17449C6B53B05841EC6DA /* file.c */,
-				D40526323B87888709D24324 /* file.h */,
-				545C3120FFA2450C7CE9E6DA /* file_posix.c */,
-				551CFC4043ED5409C105ABEA /* file_win32.c */,
-				D16D6E15BB846B8D1CC63D37 /* grpc_string.h */,
-				2E85D4E1E6887747C8C0EA7A /* histogram.c */,
-				43DF9A60A5B869B8B2942C8A /* host_port.c */,
-				09FD3D7AD914C9353EB65529 /* log.c */,
-				C9949F43CB5F853649D8411D /* log_android.c */,
-				0B45E5CE899602BFD5F23E6C /* log_linux.c */,
-				83FC73B2F90BD4477BAB7716 /* log_posix.c */,
-				3DB3834E86AC5CD0D96885D2 /* log_win32.c */,
-				44F9218A56E4EBCEED716673 /* murmur_hash.c */,
-				F7F6C37F6B1B704ADEA89319 /* murmur_hash.h */,
-				F0DF5F5361D504902939C3F3 /* slice.c */,
-				D27CB2495D6BC2AAA54AD811 /* slice_buffer.c */,
-				1D2E879D2283DE7CE03DFDD8 /* string.c */,
-				77C6558BBFF31326983320B0 /* string_posix.c */,
-				4B91EAD70775E421BD8B9FCC /* string_win32.c */,
-				632D3C9EB25C3C7659F9F39A /* string_win32.h */,
-				1BD0836A20448E42E0314D8A /* sync.c */,
-				0C105B76701EFB0EFABDBBF2 /* sync_posix.c */,
-				A524814A3590D4348D549C14 /* sync_win32.c */,
-				D3D5A17BD6040A60D82D06EE /* thd.c */,
-				A2D0C9AF67318A88A271B329 /* thd_internal.h */,
-				9A58ACD0EC03D5883ED79C0C /* thd_posix.c */,
-				9F35CC539D3ADDAD0DA84467 /* thd_win32.c */,
-				A70DA7CEE54302BED2248E14 /* time.c */,
-				B0EF8D6D45E898F9B98D43C5 /* time_posix.c */,
-				8B03F1B317FE59E0CE6747ED /* time_win32.c */,
-			);
-			path = support;
-			sourceTree = "<group>";
-		};
-		6C65ED659520BEB9198FB971 /* OpenSSL */ = {
-			isa = PBXGroup;
-			children = (
-				0118816670A7C6C335518EDF /* aes.h */,
-				6CB0C4DA3194B77529082D92 /* asn1.h */,
-				F5BEEBA60AE917954B96425A /* asn1_mac.h */,
-				D411C778D1B5CB55E3F81DA2 /* asn1t.h */,
-				C651F351648FAA6E7EDD7F22 /* bio.h */,
-				D17935EFCDE731E09000DF66 /* blowfish.h */,
-				DDB7824792A0D7E587422DEC /* bn.h */,
-				F3CD1C438363227E2959C8EC /* buffer.h */,
-				66F71AE62EB572BA6DD5A32A /* camellia.h */,
-				BE4BCA754104BF9BFE6B27DB /* cast.h */,
-				C0CBC4CB17FEC26EA9AC1649 /* cmac.h */,
-				BFD8F3C8487F38428F6A509E /* cms.h */,
-				FE566BB5269F67EEF6FE6960 /* comp.h */,
-				07C5B3701B8AA40D98728D52 /* conf.h */,
-				C56A403563F4F0297CBBA5E8 /* conf_api.h */,
-				2C3AB039FE4E2FE6E21DB4C3 /* crypto.h */,
-				E764B272A54ECA2B4EEDDEF0 /* des.h */,
-				FC6E72A9A76E69ADB344A62A /* des_old.h */,
-				2AD05BAD508D25C95810DC9B /* dh.h */,
-				1C5EC095122365ED8DACCA09 /* dsa.h */,
-				D97B6A05C9BFC4CF3BFAF3F0 /* dso.h */,
-				66DC0069EFDA6F4ECCFA552F /* dtls1.h */,
-				A98FA49795A8DD446B56C330 /* e_os2.h */,
-				589A52F1F41BEDEB49C095E1 /* ebcdic.h */,
-				55946E8A56007AB0F3AF8283 /* ec.h */,
-				0385FDCE365D14934891746C /* ecdh.h */,
-				CC4B92F98C219BAB7AF48AFF /* ecdsa.h */,
-				D3CD8C351D901D0C065C8F26 /* engine.h */,
-				FFE50BB7E184EB895E72ED5B /* err.h */,
-				20EACCB92FAED41836935D0B /* evp.h */,
-				62AABF4FAFB404658CB645D4 /* hmac.h */,
-				24B4134291477B3C306D0F9B /* idea.h */,
-				A372F1563365DC01263466B5 /* krb5_asn.h */,
-				9D0B5A3091E7FD86D36B6B83 /* kssl.h */,
-				7E9520E20DCD01D0DCC65855 /* lhash.h */,
-				DB33BDC523FCA7A3F0E9B0CD /* md4.h */,
-				4A34766847C2DFF77298EA4D /* md5.h */,
-				CE9B94697CCEC36CED30CF18 /* mdc2.h */,
-				D14D71D9C78FD141E88A2AB6 /* modes.h */,
-				403CDBC827DC75263866DD1F /* obj_mac.h */,
-				9C270F924FADCC2633164DF6 /* objects.h */,
-				0F44DED8449303D794BAB617 /* ocsp.h */,
-				32C499FB0870BEF8AF1565FC /* opensslconf.h */,
-				CE505393BA1DED4309A794BF /* opensslv.h */,
-				786C225EB84ADD9B73B8660F /* ossl_typ.h */,
-				2C9FFF9B3A1727D39DECD7F3 /* pem.h */,
-				97AC1F49BA95AC83993BCB91 /* pem2.h */,
-				077488225B8A45F3B5E307D5 /* pkcs12.h */,
-				0A146135B811250D1914B47F /* pkcs7.h */,
-				61246E9F7BB79C02CBDC3F0A /* pqueue.h */,
-				ADBD2557A394F8F84A762A1C /* rand.h */,
-				C5AAB5EAB3B14E99FC11A384 /* rc2.h */,
-				016F12209885CD0253753FF5 /* rc4.h */,
-				390B0B49E8EFA5AAB384B2CC /* ripemd.h */,
-				3F919F2BECD5316CAE51EFB7 /* rsa.h */,
-				ED937D92BFD9EE65B9629994 /* safestack.h */,
-				77CE4C07F3D27C50DEBDB4A4 /* seed.h */,
-				CE05CF8E2EC1CA3AB87C808F /* sha.h */,
-				A6526F7F44853C7D64D34A71 /* srp.h */,
-				34247B31A4DACE7069B17B75 /* srtp.h */,
-				BDBBDCF65961AB006C59723F /* ssl.h */,
-				7739C2ECFEC444826F4F32EA /* ssl2.h */,
-				864E6908BB9552D10287236D /* ssl23.h */,
-				C4E33A9259B1081D706CF1FB /* ssl3.h */,
-				7B526FC86BD71B2D8E60A26E /* stack.h */,
-				11FC5A78D96C538F410ACBF8 /* symhacks.h */,
-				B65E20D0DB3E4F3D6867FB77 /* tls1.h */,
-				3B2617A6F99ED60229A68989 /* ts.h */,
-				557940CD7876824C33DD7ADB /* txt_db.h */,
-				835E0E62F744BA594A13DB89 /* ui.h */,
-				707B43D7094693DC964C9A69 /* ui_compat.h */,
-				7832206106004363B9EF30E6 /* whrlpool.h */,
-				3C07549EA6437C110EB28620 /* x509.h */,
-				1C038257C6440675A3A55C19 /* x509_vfy.h */,
-				6E60A65312367FE96A674F09 /* x509v3.h */,
-				81771ACD2AFC056974D843C8 /* Frameworks */,
-				110A9425C9BB7D4B6B5F64F0 /* Support Files */,
-			);
-			path = OpenSSL;
-			sourceTree = "<group>";
-		};
-		7137402801C224BA1A05523C /* objective-c */ = {
-			isa = PBXGroup;
-			children = (
-				79D31B5493CE99BFDA82F8FA /* GRPCClient */,
-			);
-			path = "objective-c";
-			sourceTree = "<group>";
-		};
-		721EFE28F4826EB17291E116 = {
-			isa = PBXGroup;
-			children = (
-				FEB5DE7E91426587814394AF /* Podfile */,
-				DECC97A64A3CEEDA96AD0215 /* Development Pods */,
-				9E4379A78F4FC22E0C064451 /* Frameworks */,
-				3786534CAB8FE7D738FCEA80 /* Pods */,
-				EB4EE50A9FE1415729F57788 /* Products */,
-				B8DAA57317EC52A7E698155E /* Targets Support Files */,
-			);
-			sourceTree = "<group>";
-		};
-		788853779D4E72CFFB950A4A /* private */ = {
-			isa = PBXGroup;
-			children = (
-				BF18594A111FF813A7E2C0E6 /* GRPCChannel.h */,
-				78CC954F00740B8C589205E2 /* GRPCChannel.m */,
-				CCC7879745FA67A0A66A8C99 /* GRPCCompletionQueue.h */,
-				3843F294A0DAFF3AE97F28E7 /* GRPCCompletionQueue.m */,
-				4F5C6030E0C6D3878C91CDBA /* GRPCDelegateWrapper.h */,
-				2118ADFB0ACC203A0C44DC04 /* GRPCDelegateWrapper.m */,
-				2A446E4DDCE68DCE74D60538 /* GRPCMethodName+HTTP2Encoding.h */,
-				D9A61224E115AD9725AA7A5C /* GRPCMethodName+HTTP2Encoding.m */,
-				95F2438496323A2635262311 /* GRPCSecureChannel.h */,
-				A543115DBDA830174D19FAD7 /* GRPCSecureChannel.m */,
-				89EC88522CAA5913E134CC50 /* GRPCUnsecuredChannel.h */,
-				84699F407C0F5C552CFE19E9 /* GRPCUnsecuredChannel.m */,
-				2BA4CFC5472009932AF3C45A /* NSData+GRPC.h */,
-				3B009A38978FE24BCB519CB4 /* NSData+GRPC.m */,
-				908890BFD97AE08513208B3C /* NSDictionary+GRPC.h */,
-				B738B74ED9964C24A51DD3A8 /* NSDictionary+GRPC.m */,
-				E3EE726B6CC258D7AD02F50A /* NSError+GRPC.h */,
-				EB1B4E98E2C1E9529A2937F0 /* NSError+GRPC.m */,
-				5E5D54C91AE81D8C00BF0FA2 /* GRPCWrappedCall.h */,
-				5E5D54CA1AE8224000BF0FA2 /* GRPCWrappedCall.m */,
-			);
-			path = private;
-			sourceTree = "<group>";
-		};
-		79D31B5493CE99BFDA82F8FA /* GRPCClient */ = {
-			isa = PBXGroup;
-			children = (
-				6D137F3FDB5B92415B7AC31C /* GRPCCall.h */,
-				9CDD140DA194B5246113EDC8 /* GRPCCall.m */,
-				5EB7CC0B9B5B8ED763DAD468 /* GRPCMethodName.h */,
-				DDD83A7A2AB0AEB0F48C7947 /* GRPCMethodName.m */,
-				788853779D4E72CFFB950A4A /* private */,
-			);
-			path = GRPCClient;
-			sourceTree = "<group>";
-		};
-		7E30608899B2B43F2E61A90A /* surface */ = {
-			isa = PBXGroup;
-			children = (
-				88986E5DC1E75A40B26FA0F3 /* byte_buffer.c */,
-				BEE79C3939F4822E22742D3E /* byte_buffer_queue.c */,
-				1494BF1C6BBB3E7058D0B384 /* byte_buffer_queue.h */,
-				1318B504F6D7B3052AAD4DC4 /* byte_buffer_reader.c */,
-				272957AFD4ACE71712E696CF /* call.c */,
-				395B0602EA14447B448D6C9C /* call.h */,
-				F72129AB470DEE3F62A8FC76 /* call_details.c */,
-				0048A73AC7AEFB054999A639 /* call_log_batch.c */,
-				B542D487162588CF33BE01BB /* channel.c */,
-				901652CA4B573F7BAA191043 /* channel.h */,
-				93FBD738A8069598A3816DB1 /* channel_create.c */,
-				0886F5B8103F7797CD449DD8 /* client.c */,
-				CEE9355DBD53244708163705 /* client.h */,
-				8D2CD6C833DA66C3FE1BA7EA /* completion_queue.c */,
-				1016E5B38DF8AC3855975C2F /* completion_queue.h */,
-				77DFD8B1DA08AC123ACD7FB6 /* event_string.c */,
-				A9F7B929E2D1994F8045C8EB /* event_string.h */,
-				94F3E600B7F40BA99CC9B1E1 /* init.c */,
-				6F49DD1F6DA272012D28C11A /* init.h */,
-				BE7781256B45578CE91A01F0 /* init_secure.c */,
-				C3BFA648AC3F1804BED0C966 /* init_unsecure.c */,
-				82B014EBF0529BFB30D7972A /* lame_client.c */,
-				A47DCD9141F1ECF8A77694BF /* metadata_array.c */,
-				F028342496E673415FF3D8AB /* secure_channel_create.c */,
-				71F8B05C67B51C33A39FD277 /* server.c */,
-				9E97C00F1298866BC5B942A0 /* server.h */,
-				7E89280021B8CBC7D987AD06 /* server_chttp2.c */,
-				F6022893DD454271F713FD2C /* server_create.c */,
-				362056B78B02662F088A082D /* surface_trace.c */,
-				8B7E488CD9E640DE9592977E /* surface_trace.h */,
-			);
-			path = surface;
-			sourceTree = "<group>";
-		};
-		81771ACD2AFC056974D843C8 /* Frameworks */ = {
-			isa = PBXGroup;
-			children = (
-				B340F7275C1355D0BA57D370 /* libcrypto.a */,
-				967671B78D8149254DE715B7 /* libssl.a */,
-			);
-			name = Frameworks;
-			sourceTree = "<group>";
-		};
-		877E3B462C988EFAB5317233 /* gRPC */ = {
-			isa = PBXGroup;
-			children = (
-				F46FB0E4504DEEBE38D1CC24 /* C-Core */,
-				925DB43821BEDB1E1C8A80B2 /* Resources */,
-				E41B2265F7B506D9A31E4BB2 /* RxLibrary */,
-				269252B83D14A8B35C4CC8F5 /* Support Files */,
-				CB2D79BCD7AF52751A2CB6DF /* src */,
-			);
-			name = gRPC;
-			path = ../../../../..;
-			sourceTree = "<group>";
-		};
-		925DB43821BEDB1E1C8A80B2 /* Resources */ = {
-			isa = PBXGroup;
-			children = (
-				AA9F649BC316530FFB4567B4 /* etc */,
-			);
-			name = Resources;
-			sourceTree = "<group>";
-		};
-		9DABE528203077F303CC02DB /* RemoteTest */ = {
-			isa = PBXGroup;
-			children = (
-				8CC2A8976E4F1AC52BF5A240 /* Empty.pb.h */,
-				0A8D8B65642D968FE2489FB4 /* Empty.pb.m */,
-				0720FBDE49BBBBAA7B3E0DEF /* Messages.pb.h */,
-				0B52E252ED090B7DB0024334 /* Messages.pb.m */,
-				98F217A4FEA5EA5AF56839E3 /* Test.pb.h */,
-				D6649667C01C50F65DEAA701 /* Test.pb.m */,
-				BDD0974B9E90748430E91119 /* Support Files */,
-			);
-			name = RemoteTest;
-			path = ../RemoteTestClient;
-			sourceTree = "<group>";
-		};
-		9E4379A78F4FC22E0C064451 /* Frameworks */ = {
-			isa = PBXGroup;
-			children = (
-				BF2E2963CC9E904FF16648F9 /* iOS */,
-			);
-			name = Frameworks;
-			sourceTree = "<group>";
-		};
-		A2CF39C7D14FFA7998EE4459 /* compression */ = {
-			isa = PBXGroup;
-			children = (
-				C120CA737CE445803BF6F292 /* algorithm.c */,
-				6B729130FD8D5696CE112A9B /* algorithm.h */,
-				7BBB69A0CD99821CAE91F9CA /* message_compress.c */,
-				BDFE2FD7D829909C8BA54CE5 /* message_compress.h */,
-			);
-			path = compression;
-			sourceTree = "<group>";
-		};
-		A712A3A512313D543E4F74B8 /* Support Files */ = {
-			isa = PBXGroup;
-			children = (
-				052572FFF52DC519716438CC /* Pods-ProtocolBuffers.xcconfig */,
-				3D0F9AE3912E6E5E216D2F73 /* Pods-ProtocolBuffers-Private.xcconfig */,
-				A087CE9B84F73C45A1CD5628 /* Pods-ProtocolBuffers-dummy.m */,
-				EF20E11F62E62D71570700D2 /* Pods-ProtocolBuffers-prefix.pch */,
-				6DDAF4ED87028DC95895771E /* Pods-Sample-ProtocolBuffers.xcconfig */,
-				D0A27F6813DC9659FDAE6C3D /* Pods-Sample-ProtocolBuffers-Private.xcconfig */,
-				A9863428D20C26F1F6EDBEF9 /* Pods-Sample-ProtocolBuffers-dummy.m */,
-				14909D30BE5F9EA392801E52 /* Pods-Sample-ProtocolBuffers-prefix.pch */,
-				7324ECAFA0F52389E41D4B25 /* Pods-SampleTests-ProtocolBuffers.xcconfig */,
-				621AF84901C5401206AB4669 /* Pods-SampleTests-ProtocolBuffers-Private.xcconfig */,
-				14812113C5EF9DEB50DFF326 /* Pods-SampleTests-ProtocolBuffers-dummy.m */,
-				CB353546D2772BAB68E7CE69 /* Pods-SampleTests-ProtocolBuffers-prefix.pch */,
-			);
-			name = "Support Files";
-			path = "../Target Support Files/Pods-ProtocolBuffers";
-			sourceTree = "<group>";
-		};
-		A8409F7BFFE13031A44EEB78 /* security */ = {
-			isa = PBXGroup;
-			children = (
-				1584B1F0D4982A6EF7A952CF /* auth.c */,
-				709BF0BFC75540EC9E5DEA59 /* auth.h */,
-				23557DFB8024977332256A02 /* base64.c */,
-				2EAAA73555E295CC4EB69093 /* base64.h */,
-				DAD9814362B1EC0A3BEFC733 /* credentials.c */,
-				7F91F8C861FF28FC65974048 /* credentials.h */,
-				3C89A7A6EA403EB3DC6B287B /* credentials_posix.c */,
-				87C766D8A76DD09C1DB8A1DB /* credentials_win32.c */,
-				C539CB090E9EAAED0464BACD /* google_default_credentials.c */,
-				9ECE1E3191D8265752CA58E2 /* json_token.c */,
-				C5CA889C8CBB047E77DADB23 /* json_token.h */,
-				DA0324B7B188B50CC09EE455 /* secure_endpoint.c */,
-				E83BCAEE168FF4FC16653717 /* secure_endpoint.h */,
-				E74322EC3E06EC9CDFE14671 /* secure_transport_setup.c */,
-				C19838C914909B0B92D93A99 /* secure_transport_setup.h */,
-				FDD2798B42FADD235D062C79 /* security_connector.c */,
-				8F8D3410DEEEE721CB1E2340 /* security_connector.h */,
-				BF25E4D94898506695C15034 /* server_secure_chttp2.c */,
-			);
-			path = security;
-			sourceTree = "<group>";
-		};
-		AA9F649BC316530FFB4567B4 /* etc */ = {
-			isa = PBXGroup;
-			children = (
-				7EAF225F4EC2DE6AFBD12319 /* roots.pem */,
-			);
-			path = etc;
-			sourceTree = "<group>";
-		};
-		B8DAA57317EC52A7E698155E /* Targets Support Files */ = {
-			isa = PBXGroup;
-			children = (
-				273976DBABB77D2C84A7E938 /* Pods */,
-				2A7A429F090170464CEB9F77 /* Pods-Sample */,
-				4818528FD12C45883CDAC981 /* Pods-SampleTests */,
-			);
-			name = "Targets Support Files";
-			sourceTree = "<group>";
-		};
-		BDA863F0DB01E95A623C4A6E /* support */ = {
-			isa = PBXGroup;
-			children = (
-				1FFF40090BBE373979CD818E /* alloc.h */,
-				DE2A0ED4DDBEC3E6D84D16F3 /* atm.h */,
-				32A314F8B2AB1E9F39C1B0A4 /* atm_gcc_atomic.h */,
-				1210B14947151443C45DF689 /* atm_gcc_sync.h */,
-				EC2C6FEDF5F8EC31C6D7EFDD /* atm_win32.h */,
-				845FA310D1B037B9E1D54905 /* cancellable_platform.h */,
-				62C3614F855CAD59CEBDB1C4 /* cmdline.h */,
-				B12ECD5F1AB1A68E4300BD85 /* cpu.h */,
-				1B3E6F352D4772D77EE612E8 /* grpc_time.h */,
-				58854B850D217166AEA9B026 /* histogram.h */,
-				FE16C4FD70CFDC5F8E356C47 /* host_port.h */,
-				AC20E7974FC6D45F39E2E3F6 /* log.h */,
-				4FB887B7DFAA588A6A7A825B /* log_win32.h */,
-				9CDD59E7CC95C8FC7D97E181 /* port_platform.h */,
-				D792CBC41B3B3E657A56CD2D /* slice.h */,
-				1991DD1C6F949CF8FADB4C7E /* slice_buffer.h */,
-				0A590DA3DCF37E0C263E2794 /* sync.h */,
-				71FD80A83315D1F3BC2FF0C2 /* sync_generic.h */,
-				3E4109CF85B04479E8DC8D08 /* sync_posix.h */,
-				DC630B706D01BDA73586F4AF /* sync_win32.h */,
-				68E76147B6FA250C2CD4F10F /* thd.h */,
-				02B8069D19729724DF1290A0 /* tls.h */,
-				0CD84E9AE38D8DA667136E64 /* tls_gcc.h */,
-				07ADEF22FC5A6CA8425ADB68 /* tls_msvc.h */,
-				DE0442F9E24E5B99169CC8E1 /* tls_pthread.h */,
-				4FE5B2BA4E0B8F46C08C6C30 /* useful.h */,
-			);
-			path = support;
-			sourceTree = "<group>";
-		};
-		BDD0974B9E90748430E91119 /* Support Files */ = {
-			isa = PBXGroup;
-			children = (
-				EEFECD0FB67EF7BE8035EA92 /* Pods-RemoteTest.xcconfig */,
-				4837B1BD041B84AD0C2F7855 /* Pods-RemoteTest-Private.xcconfig */,
-				C756CEE18F78C78DD0C12E49 /* Pods-RemoteTest-dummy.m */,
-				CBC289DAF977518C39931163 /* Pods-RemoteTest-prefix.pch */,
-				EC255722ACBDA689161E6823 /* Pods-Sample-RemoteTest.xcconfig */,
-				1A59FA7BEA5B01EA768C1377 /* Pods-Sample-RemoteTest-Private.xcconfig */,
-				9D86DA95767D8423BB870CCF /* Pods-Sample-RemoteTest-dummy.m */,
-				7C2EE38F99099956908CECF9 /* Pods-Sample-RemoteTest-prefix.pch */,
-				D23639C6E3F36111B2F8106A /* Pods-SampleTests-RemoteTest.xcconfig */,
-				C100BFF62859B01C180DF057 /* Pods-SampleTests-RemoteTest-Private.xcconfig */,
-				E300DA3BE8A8045FBE38FB99 /* Pods-SampleTests-RemoteTest-dummy.m */,
-				8678098EE8A09DFFADB9BD8A /* Pods-SampleTests-RemoteTest-prefix.pch */,
-			);
-			name = "Support Files";
-			path = "../Pods/Target Support Files/Pods-RemoteTest";
-			sourceTree = "<group>";
-		};
-		BE2FAA22E5817C5A7CD7980E /* src */ = {
-			isa = PBXGroup;
-			children = (
-				415F40DC8310D2014AEBF72F /* objective-c */,
-			);
-			path = src;
-			sourceTree = "<group>";
-		};
-		BF2E2963CC9E904FF16648F9 /* iOS */ = {
-			isa = PBXGroup;
-			children = (
-				F8E920231885948DD62874D4 /* Foundation.framework */,
-			);
-			name = iOS;
-			sourceTree = "<group>";
-		};
-		C518B3C038EAE412F71BB491 /* chttp2 */ = {
-			isa = PBXGroup;
-			children = (
-				CC24275C1B81C4F0B56DF5BE /* alpn.c */,
-				4E526CA022944834AEEE078E /* alpn.h */,
-				B6ED74BFADC33253E682ABC4 /* bin_encoder.c */,
-				7F70FAFAB9F4A5F0703D92BA /* bin_encoder.h */,
-				8EFAF709CD0D054FE4DA247A /* frame.h */,
-				F93ADDC6556CB4F0A0CCE308 /* frame_data.c */,
-				4EBBF04A177E2CF6B10FE856 /* frame_data.h */,
-				AC79A8E7153E7E4206A6E0F6 /* frame_goaway.c */,
-				00B587323BFCD1957DEC693D /* frame_goaway.h */,
-				4FE4F605AA3C77DD8BC5A69E /* frame_ping.c */,
-				A12F885517EF15D46BA10711 /* frame_ping.h */,
-				7F54961D42B49E50CC8D1338 /* frame_rst_stream.c */,
-				EB5E7B7C6915536C163CD40B /* frame_rst_stream.h */,
-				2199EA5661E8753C38D79EC9 /* frame_settings.c */,
-				844295EC51D3903941C395C4 /* frame_settings.h */,
-				A44141A91AFD802B21F301D1 /* frame_window_update.c */,
-				FA1E53C03134BD79E85D69BB /* frame_window_update.h */,
-				9A03F86E69EB1ECD0C98F251 /* gen_hpack_tables.c */,
-				05837CB7759CEE2E57F4CF48 /* hpack_parser.c */,
-				EA3AA73E2696645C327CC231 /* hpack_parser.h */,
-				2ADEF3193716592CD4C3D9DF /* hpack_table.c */,
-				99237990158E92C9F0C675BB /* hpack_table.h */,
-				7841A5D53D143AB23C94D8F7 /* http2_errors.h */,
-				66A49F3E07E65E9D23B71E15 /* huffsyms.c */,
-				E79E1B27DCA9FCCD3182E568 /* huffsyms.h */,
-				CFA8E7BD1676F3248B151924 /* status_conversion.c */,
-				6E68948320F849995B09AC37 /* status_conversion.h */,
-				25389E5BD8E164F9DA3F870A /* stream_encoder.c */,
-				0F70A1753EA84C60AF27B5DE /* stream_encoder.h */,
-				CC72D69889FCA54FF26E059B /* stream_map.c */,
-				A18A9E53902DA1A490D048A7 /* stream_map.h */,
-				5621298E280D2F357ED9DBDF /* timeout_encoding.c */,
-				937B5E356D599266F6BF35E5 /* timeout_encoding.h */,
-				D68E6DE85E57C95FF7A06516 /* varint.c */,
-				772C64BCD36866BCD61FD0CF /* varint.h */,
-			);
-			path = chttp2;
-			sourceTree = "<group>";
-		};
-		C8C97122437670DB7A5B9B50 /* ProtocolBuffers */ = {
-			isa = PBXGroup;
-			children = (
-				F271930D3583DA89399BDFBB /* AbstractMessage.h */,
-				BEFD30461D28E85BC4564977 /* AbstractMessage.m */,
-				462FC4958D1DC02236910099 /* AbstractMessageBuilder.h */,
-				EDDBC232C7BD17F4B5938A72 /* AbstractMessageBuilder.m */,
-				FEC0D9E6713C7AD603C43A63 /* Bootstrap.h */,
-				6D8B2ADAC76C56837BCD6E3F /* CodedInputStream.h */,
-				E1EE04CA884BA2771F155B1A /* CodedInputStream.m */,
-				512C6890E83E678C3723206B /* CodedOutputStream.h */,
-				266267E08A28C2BDB27AB4B1 /* CodedOutputStream.m */,
-				B4F80BE028884A82874B10E2 /* ConcreteExtensionField.h */,
-				B504F82835C2F0A602CA44BC /* ConcreteExtensionField.m */,
-				F60215710E44F2B63C712F67 /* Descriptor.pb.h */,
-				FE48EF7E57B8F2167E1B0135 /* Descriptor.pb.m */,
-				BB5F6E52609DF6A8B79E6C6E /* ExtendableMessage.h */,
-				8ABA1AEF600162BC25FF26A0 /* ExtendableMessage.m */,
-				EEACE028BFE2BD1DE7EBA99C /* ExtendableMessageBuilder.h */,
-				97138B0BC9857D489F0D7E01 /* ExtendableMessageBuilder.m */,
-				36225081DAA3120D658B6559 /* ExtensionField.h */,
-				6084991EB3F40BB862678A56 /* ExtensionRegistry.h */,
-				9E9F6FBD9A20ABE0AB587479 /* ExtensionRegistry.m */,
-				7073EA35CBD7DC711060427E /* Field.h */,
-				C97B5CA8ACEAF0CCF4C9F319 /* Field.m */,
-				8DBF9152E4657D3D9660BD87 /* ForwardDeclarations.h */,
-				B17B03EA2FA04E545FF6F671 /* GeneratedMessage.h */,
-				8A255B56065DAB7E8DB7345A /* GeneratedMessage.m */,
-				882FB0E68742560157A92A3A /* GeneratedMessageBuilder.h */,
-				14493F5D45551AF7DD4DCFAF /* GeneratedMessageBuilder.m */,
-				72D1F32F1133F699F7402689 /* Message.h */,
-				7ACE587669F5BA2724FF401C /* MessageBuilder.h */,
-				AC7D24C484B254C957CC365C /* MutableExtensionRegistry.h */,
-				13CA68ECEA957C7BA9B5E007 /* MutableExtensionRegistry.m */,
-				ACD20403C53CF2ECB88C1984 /* MutableField.h */,
-				5D7E3645794B4FC5A28DB07A /* MutableField.m */,
-				8717869787DC3C09C31BE1A7 /* ObjectivecDescriptor.pb.h */,
-				B8502DE6FC5E49568F49F41B /* ObjectivecDescriptor.pb.m */,
-				E73432FD3175A62327850971 /* PBArray.h */,
-				78F5A53737D40F816C71D4AA /* PBArray.m */,
-				38958B8C3D9B8070ED88BD92 /* ProtocolBuffers.h */,
-				BBB6D3AC4566125D3148449C /* RingBuffer.h */,
-				E307610E1EEEFBA4D4925832 /* RingBuffer.m */,
-				DFF32937D1BD905796DBC05A /* TextFormat.h */,
-				E446230CDDACC00743326ACC /* TextFormat.m */,
-				4D94918E7FEC14559137E27C /* UnknownFieldSet.h */,
-				B52453B197D589FB52125E87 /* UnknownFieldSet.m */,
-				AAAC8D326F301B501A9FB275 /* UnknownFieldSetBuilder.h */,
-				C7D47F1384449D2EDFFFE2C5 /* UnknownFieldSetBuilder.m */,
-				D34EDADD3A7795B3D4C0AF58 /* Utilities.h */,
-				385180B3943DC40F19F8A085 /* Utilities.m */,
-				49779DB1C5A2F5CFEBAAFEF9 /* WireFormat.h */,
-				53F5707E31B5AB47CC439A2C /* WireFormat.m */,
-				A712A3A512313D543E4F74B8 /* Support Files */,
-			);
-			path = ProtocolBuffers;
-			sourceTree = "<group>";
-		};
-		C99F73EB0B719F7CC23C2669 /* statistics */ = {
-			isa = PBXGroup;
-			children = (
-				2A70DB43C1169315D6ADE286 /* census_init.c */,
-				B51521C50DEBAE7DD3561DCA /* census_interface.h */,
-				548C55CC9C51EA26C40A807B /* census_log.c */,
-				DA022393E5E17A516743E561 /* census_log.h */,
-				FCDEC2AFE402D37148992805 /* census_rpc_stats.c */,
-				EFCA73F5E80AE5E7C18BAE5F /* census_rpc_stats.h */,
-				069AF9321C3BC16C407A4BDA /* census_tracing.c */,
-				647DA385735244E30B6A372B /* census_tracing.h */,
-				B3B63D66E287A3C87A6A370F /* hash_table.c */,
-				E6238E0B2F14B6A142E9386E /* hash_table.h */,
-				A483D2D2BC2227E981BFAD95 /* window_stats.c */,
-				22CF3D4CF0769E7668CAA7F1 /* window_stats.h */,
-			);
-			path = statistics;
-			sourceTree = "<group>";
-		};
-		CB2D79BCD7AF52751A2CB6DF /* src */ = {
-			isa = PBXGroup;
-			children = (
-				7137402801C224BA1A05523C /* objective-c */,
-			);
-			path = src;
-			sourceTree = "<group>";
-		};
-		D4C54BB830FC273954B673A2 /* Route_guide */ = {
-			isa = PBXGroup;
-			children = (
-				58E0257BE81E1918C5267E17 /* Route_guide.pb.h */,
-				DC73D1CE591B9BA80D367B85 /* Route_guide.pb.m */,
-				3483A4F822E19BC0A10946D7 /* Support Files */,
-			);
-			name = Route_guide;
-			path = ../RouteGuideClient;
-			sourceTree = "<group>";
-		};
-		D8A13ED6B1A423F317FE7D88 /* core */ = {
-			isa = PBXGroup;
-			children = (
-				40F7B1B38CEFFA921DF276A2 /* channel */,
-				A2CF39C7D14FFA7998EE4459 /* compression */,
-				4E6DFD8247F6C8CB9B008D60 /* debug */,
-				1BD0291213EA12577DC8D76C /* httpcli */,
-				E54198B2B4874BFB32DEBBA7 /* iomgr */,
-				E55CC75FA82398F69960DFB5 /* json */,
-				29281177367645E66D69609A /* profiling */,
-				A8409F7BFFE13031A44EEB78 /* security */,
-				C99F73EB0B719F7CC23C2669 /* statistics */,
-				624A039DB97DA838A68FA950 /* support */,
-				7E30608899B2B43F2E61A90A /* surface */,
-				3238F1DE1A65B8D1A3B5E514 /* transport */,
-				1F64025FAA890CDBB02621B8 /* tsi */,
-			);
-			path = core;
-			sourceTree = "<group>";
-		};
-		DECC97A64A3CEEDA96AD0215 /* Development Pods */ = {
-			isa = PBXGroup;
-			children = (
-				9DABE528203077F303CC02DB /* RemoteTest */,
-				D4C54BB830FC273954B673A2 /* Route_guide */,
-				877E3B462C988EFAB5317233 /* gRPC */,
-			);
-			name = "Development Pods";
-			sourceTree = "<group>";
-		};
-		E41B2265F7B506D9A31E4BB2 /* RxLibrary */ = {
-			isa = PBXGroup;
-			children = (
-				BE2FAA22E5817C5A7CD7980E /* src */,
-			);
-			name = RxLibrary;
-			sourceTree = "<group>";
-		};
-		E54198B2B4874BFB32DEBBA7 /* iomgr */ = {
-			isa = PBXGroup;
-			children = (
-				9711365E4FFC9119BEED12F2 /* alarm.c */,
-				95CA75B4F8A4139C4B69A501 /* alarm.h */,
-				ACD472E4027B901D3D4FD970 /* alarm_heap.c */,
-				1D8BEF54D1799D651A2C427A /* alarm_heap.h */,
-				76F2FAD49839F1EAB96C1537 /* alarm_internal.h */,
-				AF99D421A9B44F389FD75BAB /* endpoint.c */,
-				3A715DFC320B831B7F891BDA /* endpoint.h */,
-				0280D6D5B1B2FD6DADF0EBB8 /* endpoint_pair.h */,
-				7AE82FDA9BFB3E31D4C5A7CC /* endpoint_pair_posix.c */,
-				46BA07C95C706BFD2C47CF30 /* endpoint_pair_windows.c */,
-				E1F91FEB24408BC30186C5CC /* fd_posix.c */,
-				AF13AD52322D3DDC33780FF6 /* fd_posix.h */,
-				8EF237AADBB32AE1589440C6 /* iocp_windows.c */,
-				A7CE930FEE65B105A824A4CF /* iocp_windows.h */,
-				CBA0D6DE446A425B959CD645 /* iomgr.c */,
-				F0CAA4D057B933B55CDDA440 /* iomgr.h */,
-				5B9267052B252C28261605A1 /* iomgr_internal.h */,
-				3B74FD6B6DCCD59F59C39884 /* iomgr_posix.c */,
-				217C6A65943248F2BCDB480A /* iomgr_posix.h */,
-				08A0C7FFD858CF072C811E42 /* iomgr_windows.c */,
-				E6A4F7BF5200983A0464A000 /* pollset.h */,
-				5DE51958FAA2D6EC3686404F /* pollset_kick.c */,
-				C560E054B648B38F92F270A1 /* pollset_kick.h */,
-				23DCBAC0F303E8BFDDB8B222 /* pollset_kick_posix.h */,
-				731D0E4DC3F73AADCC27E534 /* pollset_kick_windows.h */,
-				6D9F7A8D1118F332DA3364C4 /* pollset_multipoller_with_epoll.c */,
-				4CE6325E302D61903CD1FD28 /* pollset_multipoller_with_poll_posix.c */,
-				2FEAD4CE0E0E4905BF839FBA /* pollset_posix.c */,
-				8F86CF370886416DAC191E31 /* pollset_posix.h */,
-				F3DB27C5D118BD4492A9DCF9 /* pollset_windows.c */,
-				97A3ACC219CC63F5D7FFD40C /* pollset_windows.h */,
-				FBEC0724BD339FFB26F5F022 /* resolve_address.h */,
-				25CC1535787632E504407E0E /* resolve_address_posix.c */,
-				5C2C6DE8CDC5FDB5A63AAA7D /* resolve_address_windows.c */,
-				7888E3FEC368C63162A16235 /* sockaddr.h */,
-				00D1F7FE42811771A45CB7E7 /* sockaddr_posix.h */,
-				3074D0C70E2E858E523A6F83 /* sockaddr_utils.c */,
-				857F065925832466000E24C4 /* sockaddr_utils.h */,
-				A7B35482A8B3E763F2E49204 /* sockaddr_win32.h */,
-				D6C8BC2D5261C752FBE0D073 /* socket_utils_common_posix.c */,
-				BFF865292FE2CD0BAC28C4A2 /* socket_utils_linux.c */,
-				EF906AB8AF22A3D40E284C93 /* socket_utils_posix.c */,
-				2D925E56B6B03563B89F6838 /* socket_utils_posix.h */,
-				E7BC6ECD4926C4D722CA46C9 /* socket_windows.c */,
-				2A7B4BAB4502F95548251FC6 /* socket_windows.h */,
-				C72A49BF07D01F8088DFCC4E /* tcp_client.h */,
-				B916697BDD15D047B9CE258E /* tcp_client_posix.c */,
-				836F2223B440CDADB152E932 /* tcp_client_windows.c */,
-				B409984314884D903F36169F /* tcp_posix.c */,
-				0DBA6C9779F09A779661A077 /* tcp_posix.h */,
-				39490C9911F760ABCE716E20 /* tcp_server.h */,
-				78285425C45A6AEF43616C14 /* tcp_server_posix.c */,
-				651FAE8C05B04EB09ADA44B1 /* tcp_server_windows.c */,
-				BD2C5EA58859F38D05EE84DC /* tcp_windows.c */,
-				AF6A0C7403B1E83482072EAD /* tcp_windows.h */,
-				692DA013B9BF62ECADE9439E /* time_averaged_stats.c */,
-				F3AA748BBA2B63D9C996FC2B /* time_averaged_stats.h */,
-				E8E8F6A5EC1411544D5BB809 /* wakeup_fd_eventfd.c */,
-				2347B82D8AD9CFDF29E04525 /* wakeup_fd_nospecial.c */,
-				BD1B20F8D2B7ADFD921FB0D4 /* wakeup_fd_pipe.c */,
-				2F2C73D7D6DD73A2C440A9B5 /* wakeup_fd_pipe.h */,
-				DEB8C5F9370F106E90A84DEE /* wakeup_fd_posix.c */,
-				595E044C7552A98C14435284 /* wakeup_fd_posix.h */,
-			);
-			path = iomgr;
-			sourceTree = "<group>";
-		};
-		E55CC75FA82398F69960DFB5 /* json */ = {
-			isa = PBXGroup;
-			children = (
-				36976E64654DF9EA4141C812 /* json.c */,
-				AEA0150555EE52124AD1B7C2 /* json.h */,
-				042FE743DCBA5D7202467480 /* json_common.h */,
-				A9B2304351F4D869D9983AE0 /* json_reader.c */,
-				C4A92081738D6E4F939A0969 /* json_reader.h */,
-				705F149853706AB963D20A0A /* json_string.c */,
-				89BF934C96AB0AB0CBA4E05A /* json_writer.c */,
-				C3D405F034FCA0772AEA9CE4 /* json_writer.h */,
-			);
-			path = json;
-			sourceTree = "<group>";
-		};
-		EAA3364EF1FC49F790FC4C8D /* src */ = {
-			isa = PBXGroup;
-			children = (
-				D8A13ED6B1A423F317FE7D88 /* core */,
-			);
-			path = src;
-			sourceTree = "<group>";
-		};
-		EB4EE50A9FE1415729F57788 /* Products */ = {
-			isa = PBXGroup;
-			children = (
-				41D7A88FF6475B69BDB13547 /* gRPC.bundle */,
-				24F595F6D7D7760449F99D3F /* gRPC.bundle */,
-				8240255EEA8AE10091016E55 /* gRPC.bundle */,
-				0732D27AEA18C3BE65B633D7 /* libPods.a */,
-				78678D208AC9C4E19C84DD90 /* libPods-OpenSSL.a */,
-				B64822636A0657DA8FB6B4FC /* libPods-ProtocolBuffers.a */,
-				37B92D471F75BCA5A708C58A /* libPods-RemoteTest.a */,
-				26397A96A767631337677141 /* libPods-Route_guide.a */,
-				6240F7EA27D10F106B7F136E /* libPods-Sample.a */,
-				D4FDAA4A78F994AD1139CDB5 /* libPods-Sample-OpenSSL.a */,
-				B5A7D705B7743E5EB37EEF52 /* libPods-Sample-ProtocolBuffers.a */,
-				312BB7A456AECCAC670AFF93 /* libPods-Sample-RemoteTest.a */,
-				F40B226C510215D623E7E912 /* libPods-Sample-Route_guide.a */,
-				8D607D15F877D0F40B399AF9 /* libPods-Sample-gRPC.a */,
-				58D723D72E72DDD09A8E9C2F /* libPods-SampleTests.a */,
-				AC9D5638CA9FE89943EAF771 /* libPods-SampleTests-OpenSSL.a */,
-				DF171BB5BAA37A552CDAAD26 /* libPods-SampleTests-ProtocolBuffers.a */,
-				BE7E9B88B929CDC8C90DAA05 /* libPods-SampleTests-RemoteTest.a */,
-				E329117842FC2F6CAC80EC0E /* libPods-SampleTests-Route_guide.a */,
-				B672404C4B9A9AA68D52177B /* libPods-SampleTests-gRPC.a */,
-				3BE5F8CA5B8ADB669194F165 /* libPods-gRPC.a */,
-			);
-			name = Products;
-			sourceTree = "<group>";
-		};
-		EE327D51E29C5068E2F72363 /* include */ = {
-			isa = PBXGroup;
-			children = (
-				24E3826D6E6AA8696179757C /* grpc */,
-			);
-			path = include;
-			sourceTree = "<group>";
-		};
-		F46FB0E4504DEEBE38D1CC24 /* C-Core */ = {
-			isa = PBXGroup;
-			children = (
-				EE327D51E29C5068E2F72363 /* include */,
-				EAA3364EF1FC49F790FC4C8D /* src */,
-			);
-			name = "C-Core";
-			sourceTree = "<group>";
-		};
-/* End PBXGroup section */
-
-/* Begin PBXHeadersBuildPhase section */
-		0F6671BCAA8E31E310E43A06 /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				359F13DCEFA30A909F21FD43 /* Empty.pb.h in Headers */,
-				7B97A44D3B26694EA2A96882 /* Messages.pb.h in Headers */,
-				899E90B39A4047DBAE1C8069 /* Test.pb.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		10748DBB0536357A5333E658 /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				33AD3EAFDB6F2368160843CE /* Route_guide.pb.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		111F79E2B0A0D2FF68B63896 /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				62C6E4E5A196F0D94D912B96 /* Empty.pb.h in Headers */,
-				D827738922E047A6E2D2764E /* Messages.pb.h in Headers */,
-				DEC91C99827071D02CB8404A /* Test.pb.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		36B83927738461D4756D3286 /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				6F6C1DDF2A870C2FDA6C1C28 /* GRPCCall.h in Headers */,
-				BA4E68FA5ADAA4AF46240C81 /* GRPCChannel.h in Headers */,
-				B05F3F773B9995DA7F5F6031 /* GRPCCompletionQueue.h in Headers */,
-				E86B3D0B315A7D922E14F10B /* GRPCDelegateWrapper.h in Headers */,
-				A4373325642124EC58970EFA /* GRPCMethodName+HTTP2Encoding.h in Headers */,
-				B242868C6C5E6073B6C62EBB /* GRPCMethodName.h in Headers */,
-				38FD71CF019AAE18B56539A9 /* GRPCSecureChannel.h in Headers */,
-				60204E342D25978B7D157893 /* GRPCUnsecuredChannel.h in Headers */,
-				BCD18B40DFB1157620730E25 /* GRXImmediateWriter.h in Headers */,
-				07D0D32963600C622176C802 /* GRXMappingWriter.h in Headers */,
-				F2F131A159F9BAFE744858E3 /* GRXNSBlockEnumerator.h in Headers */,
-				12083274E3486D689F94A2C1 /* GRXNSFastEnumerator.h in Headers */,
-				A97F536539226BF810C62486 /* GRXNSScalarEnumerator.h in Headers */,
-				5F10400B3F8325D44EFC5966 /* GRXWriteable.h in Headers */,
-				3A44302D58ADF831C5565231 /* GRXWriter+Immediate.h in Headers */,
-				49081F3A69AFDF6A884EAEB7 /* GRXWriter+Transformations.h in Headers */,
-				656B978EA6CE600D4D2146EC /* GRXWriter.h in Headers */,
-				646CEA9E8B0952644387BCA6 /* NSData+GRPC.h in Headers */,
-				5371D38E7D69A5B42D94A7F0 /* NSDictionary+GRPC.h in Headers */,
-				E4FBF1A45F8B1151A44390ED /* NSEnumerator+GRXUtil.h in Headers */,
-				31C31F6767CB28C21C7B7C01 /* NSError+GRPC.h in Headers */,
-				778F3F70525F165B1C00BB46 /* alarm.h in Headers */,
-				160240E0E76EF41AE784277B /* alarm_heap.h in Headers */,
-				AD709BEF8ADC11775361BF99 /* alarm_internal.h in Headers */,
-				F0BBB741DD03B70B5B2F8EBF /* algorithm.h in Headers */,
-				0C2B32291752DB53CC24C831 /* alloc.h in Headers */,
-				C480573A3038CF191BED501A /* alpn.h in Headers */,
-				EB3C8B6C6A9A6B465B881DB6 /* atm.h in Headers */,
-				79F1B26A01CB179475C54A81 /* atm_gcc_atomic.h in Headers */,
-				5D8532A7EB71AF674C523EEA /* atm_gcc_sync.h in Headers */,
-				C33AE967C91D7293A60031B5 /* atm_win32.h in Headers */,
-				AAE689C49E91DAE36FCC5007 /* auth.h in Headers */,
-				29C579D6982D546591FB322F /* base64.h in Headers */,
-				B72EB8D75A4E96D05F39C4E0 /* bin_encoder.h in Headers */,
-				345FA9EF8692B9F9AD6637E0 /* byte_buffer.h in Headers */,
-				F68CD6EDE87DC8AEE25653E7 /* byte_buffer_queue.h in Headers */,
-				CCAB5F12B7E8461935128CC6 /* byte_buffer_reader.h in Headers */,
-				B2A4E7921E669AFE2A93DCC6 /* call.h in Headers */,
-				D9E969C338EF76A3B0FAF269 /* cancellable_platform.h in Headers */,
-				AB6C51A30C038A9841368585 /* census_filter.h in Headers */,
-				AD0B1B0BBF9D682C0CE1E46E /* census_interface.h in Headers */,
-				987DD43C2E3F715FA44859A3 /* census_log.h in Headers */,
-				3366F405F0E1B3FAC3DF70D8 /* census_rpc_stats.h in Headers */,
-				6E6869B7B6998E2C02B5F246 /* census_tracing.h in Headers */,
-				DD177F2857087CEACA1B6E5B /* channel.h in Headers */,
-				11279CFD46DD5448A5FD0E86 /* channel_args.h in Headers */,
-				23DB3927F284476D8F712079 /* channel_stack.h in Headers */,
-				D6536C2C6807417CA5D128C1 /* child_channel.h in Headers */,
-				BA0C2274331559E9CA35CCB9 /* chttp2_transport.h in Headers */,
-				AF9980E815F36EE6488B0D49 /* client.h in Headers */,
-				EC03BB992B2D33EDB30D7EB8 /* client_channel.h in Headers */,
-				494B45ED273D0F27C848023D /* client_setup.h in Headers */,
-				1AD04D79E12926C6B16E79A1 /* cmdline.h in Headers */,
-				A4AEA2FD0AF9FC1C5BD9606F /* completion_queue.h in Headers */,
-				3D386EAA268FC6BEB0B0521E /* connected_channel.h in Headers */,
-				97B071B91BDA4D844096B567 /* cpu.h in Headers */,
-				150C50043F5EFE95C06097E8 /* credentials.h in Headers */,
-				C831397CD4FA232FBB0C7CF6 /* endpoint.h in Headers */,
-				C23C3FFBCEADD4C69C5316D4 /* endpoint_pair.h in Headers */,
-				BD0545557EEA6075B9CFC2A9 /* env.h in Headers */,
-				0572EEE6FC558063B5E2F763 /* event_string.h in Headers */,
-				1982E498CB3698139C9568DF /* fake_transport_security.h in Headers */,
-				00A8707346A29B6BF78EF6A6 /* fd_posix.h in Headers */,
-				B0F49A19CEB5F66B8338C85D /* file.h in Headers */,
-				1F16AF70AEC6DF8028F955C6 /* format_request.h in Headers */,
-				A0073294554D93E3E6477E9F /* frame.h in Headers */,
-				2292F168DAF69E300ED51A63 /* frame_data.h in Headers */,
-				F22AA0922BF4F89717F047D7 /* frame_goaway.h in Headers */,
-				BA386797C7707AB731452DA3 /* frame_ping.h in Headers */,
-				83F7D7D1EB9336FA2F1DB4E0 /* frame_rst_stream.h in Headers */,
-				E2F4BAE6249CA2EBE89C2569 /* frame_settings.h in Headers */,
-				FD3430817B54AC7F1749D67B /* frame_window_update.h in Headers */,
-				A38802ED1594094EFFB1A95B /* grpc.h in Headers */,
-				50E28FD6071CFCD12B5A766D /* grpc_http.h in Headers */,
-				2EF35044AAC0F16AF132A91D /* grpc_security.h in Headers */,
-				7323105FB840E1FD38568962 /* grpc_string.h in Headers */,
-				8E56A8AFA67EA24E3F64CBFC /* grpc_time.h in Headers */,
-				E47221D291DC7D153F268B17 /* hash_table.h in Headers */,
-				9ECC8154B8ABE7AD0D4DD58F /* histogram.h in Headers */,
-				DDC9E7139CDB2C937CF83B81 /* host_port.h in Headers */,
-				83FBA20077C3A47E28E5306C /* hpack_parser.h in Headers */,
-				9A706CA1DD1FEC383EEC088B /* hpack_table.h in Headers */,
-				7CAFE13BAABE816E00AB24F5 /* http2_errors.h in Headers */,
-				45F8F1E92E7BCEFB1BAB0610 /* http_client_filter.h in Headers */,
-				1EBC5A8AEB11566CC82FF716 /* http_filter.h in Headers */,
-				226ED2F15576BD018FC93294 /* http_server_filter.h in Headers */,
-				8E2C00E45CE170E2A2355783 /* httpcli.h in Headers */,
-				F34E98CE9D7634252259B449 /* httpcli_security_connector.h in Headers */,
-				ABBF98A38CE3BFDEE57D46A3 /* huffsyms.h in Headers */,
-				EA9B64532E9EE9B7E8CF1711 /* init.h in Headers */,
-				378DC9304368E5FE75894601 /* iocp_windows.h in Headers */,
-				93766E7A2118F8C0EAE627BD /* iomgr.h in Headers */,
-				A7EF314697FFC9109080C96E /* iomgr_internal.h in Headers */,
-				EC9AFE6749DDBB2CE749091C /* iomgr_posix.h in Headers */,
-				AD1CB214C8EA138F4A617DB7 /* json.h in Headers */,
-				60434E5E3B3A0EAD39D372C1 /* json_common.h in Headers */,
-				EFFE11966F67590EEE261EDD /* json_reader.h in Headers */,
-				6E5313CC602372A146A09930 /* json_token.h in Headers */,
-				2B5EA29AFC7C8FF34B0D69A8 /* json_writer.h in Headers */,
-				533D879BBA6DFA86DC05818C /* log.h in Headers */,
-				B9C598C8461C51BBFC47A289 /* log_win32.h in Headers */,
-				59C14034E25FE2E191DFA3C2 /* message_compress.h in Headers */,
-				A321E4E922D9129115CF9F96 /* metadata.h in Headers */,
-				6278D9F6475CB5D1D35D083E /* metadata_buffer.h in Headers */,
-				5115437FB879324B652332AE /* murmur_hash.h in Headers */,
-				60FFC17BE16374689B130DCF /* noop_filter.h in Headers */,
-				10A2DC0809CBDE111CE10769 /* parser.h in Headers */,
-				EC3B09B8FF8B80DA62D92780 /* pollset.h in Headers */,
-				6080B0C7E2A5A52FA1D677C9 /* pollset_kick.h in Headers */,
-				5ECD867AB41C579D5054F37B /* pollset_kick_posix.h in Headers */,
-				C9F78945DA3282646526D9C3 /* pollset_kick_windows.h in Headers */,
-				831A7D4F9CA723250F9464E1 /* pollset_posix.h in Headers */,
-				B32FD4B3B29031BDFEF0553B /* pollset_windows.h in Headers */,
-				C6FC015A4CA68E95E9598872 /* port_platform.h in Headers */,
-				2BB70856E634EC8F6D3259BE /* resolve_address.h in Headers */,
-				F2722413A5E7DDD72375A013 /* secure_endpoint.h in Headers */,
-				9E22E69B345586B8934400D7 /* secure_transport_setup.h in Headers */,
-				E666EC35EB1ABE2DB4F0D650 /* security_connector.h in Headers */,
-				FD24D409D804508C7D9D2FD8 /* server.h in Headers */,
-				A021EB1F40407AD92131EB92 /* slice.h in Headers */,
-				E85457C251E63DE1711CE562 /* slice_buffer.h in Headers */,
-				F139D13210BAF9A65F9F34D8 /* sockaddr.h in Headers */,
-				B8654D2BBB5E30A0556445CD /* sockaddr_posix.h in Headers */,
-				0EF8E48453D0912CDF4445F5 /* sockaddr_utils.h in Headers */,
-				4E456611D238DD3F8826F1B0 /* sockaddr_win32.h in Headers */,
-				D1402C2123EE63C04F96747B /* socket_utils_posix.h in Headers */,
-				88146CCA5978B54D84A21772 /* socket_windows.h in Headers */,
-				70CD3E4BAE3597B6014E14C7 /* ssl_transport_security.h in Headers */,
-				655476B97AA03777031FB45A /* status.h in Headers */,
-				CB8BFA24417F6DF7A6282C44 /* status_conversion.h in Headers */,
-				967352AC463B0E0356791893 /* stream_encoder.h in Headers */,
-				4E2938247EB668D459635CCA /* stream_map.h in Headers */,
-				B6ECBBA2A69EB240BDA6E3C1 /* stream_op.h in Headers */,
-				D9708E95D1FC105DA7EF16C0 /* string_win32.h in Headers */,
-				9B11DB6F3063D706B130AE98 /* surface_trace.h in Headers */,
-				C68524D49220CA792DFFB871 /* sync.h in Headers */,
-				515DAAA56AD167B075811A46 /* sync_generic.h in Headers */,
-				876220A8C4662399DB3D8812 /* sync_posix.h in Headers */,
-				3819ABA56292EFE6350AEEF1 /* sync_win32.h in Headers */,
-				101A657C19D7CC12066E295F /* tcp_client.h in Headers */,
-				68D97B6C69F2319955F6C425 /* tcp_posix.h in Headers */,
-				4B07CDA6CB53EBC6512A2E51 /* tcp_server.h in Headers */,
-				D10946212AF99DAF1A22C532 /* tcp_windows.h in Headers */,
-				C8187520B14BD7147808DA06 /* thd.h in Headers */,
-				36A455506D87F65BD4FCE4CB /* thd_internal.h in Headers */,
-				2F823A506B29238755628416 /* time_averaged_stats.h in Headers */,
-				43A68245C6209ABD57AC7AEC /* timeout_encoding.h in Headers */,
-				46F16BD458D0922ED271DBD3 /* timers.h in Headers */,
-				DE03A3EA3B5A84333A24333A /* timers_preciseclock.h in Headers */,
-				832F65601540D2527B4FCBFD /* tls.h in Headers */,
-				1F55676B9734EBC91039F43D /* tls_gcc.h in Headers */,
-				2E4823BE51F7825481000773 /* tls_msvc.h in Headers */,
-				763F363043F8FE2DF71BF182 /* tls_pthread.h in Headers */,
-				50BDFA15FFC4750B5309DCFD /* trace.h in Headers */,
-				B40078329D43DE359DAE7C1E /* transport.h in Headers */,
-				D276DF4FC4EB8B968350073F /* transport_impl.h in Headers */,
-				D366C17CE6033CB2769871E4 /* transport_security.h in Headers */,
-				961172B19A8AC92B8FB9ED99 /* transport_security_interface.h in Headers */,
-				33FC9D00A26EFD6B24226517 /* useful.h in Headers */,
-				F639AA28AC38A019A1A6C6A9 /* varint.h in Headers */,
-				CB3D9D4F4A6BF3E7A44592F9 /* wakeup_fd_pipe.h in Headers */,
-				39C5306DFF2C79246C207046 /* wakeup_fd_posix.h in Headers */,
-				5E37BBD24A26F1EB95612A60 /* window_stats.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		3BD0C3129F3835F01BE22E88 /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				9E9DFE28A567B004CEC8A43B /* Route_guide.pb.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		716499B59A81CB3314B55E3E /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				4D1E056B28F5557F7CC28A2D /* aes.h in Headers */,
-				503325D63393FE38F096A717 /* asn1.h in Headers */,
-				8143DB79B8F463FE301A592C /* asn1_mac.h in Headers */,
-				963BA0AD0902A9035B203E24 /* asn1t.h in Headers */,
-				C867CBACA1279BE21586F5BE /* bio.h in Headers */,
-				0280D7887F8FAEB62596CD7F /* blowfish.h in Headers */,
-				BC2ECEE1F2D8CFC619DCBB05 /* bn.h in Headers */,
-				7FDDC76B991EE7F5E4FA5B9F /* buffer.h in Headers */,
-				F474E67A9D2A3696FD2FA3E4 /* camellia.h in Headers */,
-				F1BBE2E5342DD7EC3945868C /* cast.h in Headers */,
-				5EDC0C261377F9778187BEEA /* cmac.h in Headers */,
-				CD71902EDCC7A587A2B6071F /* cms.h in Headers */,
-				106F580F5D9052CDD2800304 /* comp.h in Headers */,
-				5868DFB62D8645D3604E6340 /* conf.h in Headers */,
-				586975898AF2386FAB35DFDC /* conf_api.h in Headers */,
-				D8578BE80FB2D73942F3B69A /* crypto.h in Headers */,
-				C18D3132A48FC2AF7797B976 /* des.h in Headers */,
-				9CFD0B1B8BB79CD060360E5E /* des_old.h in Headers */,
-				316E50F8CE0DB25A029BFB04 /* dh.h in Headers */,
-				C773AD8F106C7A23647DB6E4 /* dsa.h in Headers */,
-				C31CC46773583D3994A21EB1 /* dso.h in Headers */,
-				F71055D669408EE6B6C4A30F /* dtls1.h in Headers */,
-				185AD9DB2F41E9B111BD0D6C /* e_os2.h in Headers */,
-				B09F5CF64C817C0A32C5A4F1 /* ebcdic.h in Headers */,
-				F3833C955230EDFBF28A0583 /* ec.h in Headers */,
-				8B77005FF7E773A4C7FA875A /* ecdh.h in Headers */,
-				99FC7A8054D16B17AF623333 /* ecdsa.h in Headers */,
-				64C7955992EC970C547A9685 /* engine.h in Headers */,
-				C50663357C73E463E417B1EE /* err.h in Headers */,
-				D79088A2BFE4CA3FB755159F /* evp.h in Headers */,
-				C5777003BF68D9924E4A3A33 /* hmac.h in Headers */,
-				BDC97080984F85C7175190FE /* idea.h in Headers */,
-				9885B76104463075332C4BA1 /* krb5_asn.h in Headers */,
-				3BD69BA475A29FD38CBBB1BC /* kssl.h in Headers */,
-				C6845990A723842F7AA2AA8D /* lhash.h in Headers */,
-				6D41E48A518BEA28AA004ACB /* md4.h in Headers */,
-				5934C13F85C89B88AF43119E /* md5.h in Headers */,
-				5287ED926133465BBBAE19F5 /* mdc2.h in Headers */,
-				34739550CC1B3F331DEC07C9 /* modes.h in Headers */,
-				8875B93A57F70581B3657737 /* obj_mac.h in Headers */,
-				B8798741A5FC904F69442BDC /* objects.h in Headers */,
-				E07B82A01C23C8B0C3236896 /* ocsp.h in Headers */,
-				0F2C78732070918A03642F6A /* opensslconf.h in Headers */,
-				5066C7CC2EFD61EFE3C90880 /* opensslv.h in Headers */,
-				26CD437A4CF65AEACB1FB50E /* ossl_typ.h in Headers */,
-				9EB6BC304413EA1E334EB4CC /* pem.h in Headers */,
-				FA5A0FD2144550ADD9897FB4 /* pem2.h in Headers */,
-				A815D496537E4AEBDF5E3EE0 /* pkcs12.h in Headers */,
-				5948355E8A242058668AD8E6 /* pkcs7.h in Headers */,
-				7DD237478BBB5BA10C3EF69B /* pqueue.h in Headers */,
-				F02050D0A64CA37E754F1830 /* rand.h in Headers */,
-				3EA1AE6C98C0B89B45D3E3C0 /* rc2.h in Headers */,
-				CF627049C3D7A537EFBEDEC4 /* rc4.h in Headers */,
-				1D5610D6F53A48606A2DE0C5 /* ripemd.h in Headers */,
-				92D5C7A254E483D8FAAE7101 /* rsa.h in Headers */,
-				628065C5620AF0860374473F /* safestack.h in Headers */,
-				D29397696425196BA19A7308 /* seed.h in Headers */,
-				9503F953134FC0679AFACDB7 /* sha.h in Headers */,
-				C3A4E506119835FF94DC7AA0 /* srp.h in Headers */,
-				87963BD4DE0E32A80662428B /* srtp.h in Headers */,
-				610E2A52B493C4E15FE28F20 /* ssl.h in Headers */,
-				CB04D8309A41C348484D1DD1 /* ssl2.h in Headers */,
-				940AAD05D52FAFB4CC7FBB19 /* ssl23.h in Headers */,
-				62BC895B4E7370CA00F25802 /* ssl3.h in Headers */,
-				832CF8BB3C62C5075A4A007A /* stack.h in Headers */,
-				411465E1B830C4EAD315FC91 /* symhacks.h in Headers */,
-				3004851E71C51D280110EC39 /* tls1.h in Headers */,
-				AF572E3417280ECDB6D177F4 /* ts.h in Headers */,
-				3B06B09CC97C9E9062E7579A /* txt_db.h in Headers */,
-				2AF3F825ED3BDD650766BDD4 /* ui.h in Headers */,
-				24F89F8710581C0919904757 /* ui_compat.h in Headers */,
-				AAB7AF63548BA999CF5FA86E /* whrlpool.h in Headers */,
-				7B83BFB40B6A0E4EC6A95F4B /* x509.h in Headers */,
-				047502A007CC29ADB5B63DD6 /* x509_vfy.h in Headers */,
-				6FDAEEDDBAD316251B30B9F7 /* x509v3.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		829F76EB122AEED27B3A7BBA /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				99AC66C4EE8E825ACC5BC8C0 /* aes.h in Headers */,
-				46E08D3E42AA513668535065 /* asn1.h in Headers */,
-				8C5A9F992E7C489D7E1860DD /* asn1_mac.h in Headers */,
-				2E5F005391CCD9644304725D /* asn1t.h in Headers */,
-				955B528B6195DEDC43F13F55 /* bio.h in Headers */,
-				93DECD6AE4B13252577709FE /* blowfish.h in Headers */,
-				FCD1D056B1085FB23EC0B35E /* bn.h in Headers */,
-				FD90F8325B4504D223E4727A /* buffer.h in Headers */,
-				7C685FA15E85B5C52564CD00 /* camellia.h in Headers */,
-				D05A2DDF66B75A83A3A0C3EA /* cast.h in Headers */,
-				5BD6CF1C2C2E70C824423908 /* cmac.h in Headers */,
-				301A06D8D3AF2B3BCD0007CA /* cms.h in Headers */,
-				C3CB3B6F139CD2B4DFC1D6FA /* comp.h in Headers */,
-				158F2361E9229BAEF7222B83 /* conf.h in Headers */,
-				C27F0F37B6B54289AB484A47 /* conf_api.h in Headers */,
-				6F352FEF127D460A681E57B3 /* crypto.h in Headers */,
-				DFB54A88A6B94A0DC51BF80E /* des.h in Headers */,
-				D3E97277595CE4CBD5520A03 /* des_old.h in Headers */,
-				8A85E6EB2E3C9E528EEDB285 /* dh.h in Headers */,
-				3AB87B0D076EC10956736EED /* dsa.h in Headers */,
-				428B770EEF11F73D5D1334A0 /* dso.h in Headers */,
-				6CCD1C9177C8C979E93BD977 /* dtls1.h in Headers */,
-				3DBCB7D3CE1A210B54598B02 /* e_os2.h in Headers */,
-				5CBCA026459291D99E0C1645 /* ebcdic.h in Headers */,
-				0A383C44EA5F4ACA3C179DD5 /* ec.h in Headers */,
-				95DB78CC8B83E3C350988305 /* ecdh.h in Headers */,
-				CA761BBB3ACE64267F9A21E3 /* ecdsa.h in Headers */,
-				A3B80A84F12A9A1BF68FAFDA /* engine.h in Headers */,
-				8C601100A1429182C6BF5435 /* err.h in Headers */,
-				D8A3199E0931FB4359F19B0F /* evp.h in Headers */,
-				098FBD8E3F0A2759EF08516B /* hmac.h in Headers */,
-				8B3A6E0158AAA3BDCA6D96BC /* idea.h in Headers */,
-				1C1F838704E4C473FE02AD56 /* krb5_asn.h in Headers */,
-				60C095460A7025F9AC8939BF /* kssl.h in Headers */,
-				4931E6ACF9FF298BEA14E137 /* lhash.h in Headers */,
-				D769C5EAFEDCD7DF8279C868 /* md4.h in Headers */,
-				1EC961C8EB7D36222BA33EC0 /* md5.h in Headers */,
-				D54C3C334BB78E17691614C3 /* mdc2.h in Headers */,
-				8AB7E11ADD774AE187084D7A /* modes.h in Headers */,
-				4A3D70174F74A070432C1DFB /* obj_mac.h in Headers */,
-				6C00B0AC2F44FD202412A69F /* objects.h in Headers */,
-				0FF78A07038D4724DB854B13 /* ocsp.h in Headers */,
-				4B7D37335F42FD8DE5DDB41B /* opensslconf.h in Headers */,
-				49E808361D8A920DBC44602D /* opensslv.h in Headers */,
-				CB0DE0FE323E91F04FBA85C0 /* ossl_typ.h in Headers */,
-				13E429FE16FB698C592A23D4 /* pem.h in Headers */,
-				0123D93BC3492C32D32620D5 /* pem2.h in Headers */,
-				2573C17A27143691491C56E6 /* pkcs12.h in Headers */,
-				1003DCB9BDB515C6ABDAB365 /* pkcs7.h in Headers */,
-				0559A8E83B22538C3C750CDB /* pqueue.h in Headers */,
-				3B00272836FED43E7C8BD906 /* rand.h in Headers */,
-				39A5C9F1FE5AD422C3487675 /* rc2.h in Headers */,
-				2BCD4B302960B240447E5971 /* rc4.h in Headers */,
-				A646F21D830F622E8AC03F6C /* ripemd.h in Headers */,
-				DEA34BD3DF840555CC97127D /* rsa.h in Headers */,
-				3CD951854E54D86146D1CAE2 /* safestack.h in Headers */,
-				4C9D29F63FDF5CCB2859B8EC /* seed.h in Headers */,
-				46CC760DF424FA6DA7F7210D /* sha.h in Headers */,
-				556CCAF23521B2A2284A48E3 /* srp.h in Headers */,
-				A87619A8B0BE536F91ACB531 /* srtp.h in Headers */,
-				B25FBC0F6C806F13F4073CC9 /* ssl.h in Headers */,
-				D1BD7FA6EED3C462491390F6 /* ssl2.h in Headers */,
-				646245FBC559D3D0471BB779 /* ssl23.h in Headers */,
-				EAE25C8FA41E888BD53543B8 /* ssl3.h in Headers */,
-				C051049EBFA74C04C2963E7D /* stack.h in Headers */,
-				24A81F5B5F88A30770E88DFF /* symhacks.h in Headers */,
-				FF943CA5D49776619B55E1DB /* tls1.h in Headers */,
-				6597CEB38BFC0153D2844442 /* ts.h in Headers */,
-				9DCECC99551C3BA38F3BE927 /* txt_db.h in Headers */,
-				D7D0E904F329B3156B4887FA /* ui.h in Headers */,
-				B813A4DBB1401C02DE29A8CC /* ui_compat.h in Headers */,
-				E993C8013FABFAA27C2F7A31 /* whrlpool.h in Headers */,
-				4A1B1EB47581DCF4EB9D0421 /* x509.h in Headers */,
-				456C36C17F468009D7E68458 /* x509_vfy.h in Headers */,
-				C18852D3231FFCDF8B6D1C31 /* x509v3.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		8B0F1A0773E5A00AF28B9148 /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				A9B7688B5E9DD94CAEE1FE55 /* GRPCCall.h in Headers */,
-				0ADC74465F4009F160F925C0 /* GRPCChannel.h in Headers */,
-				4DB8E17E2E21673E2FE28007 /* GRPCCompletionQueue.h in Headers */,
-				EFA749E7B1BA2A1A22763B56 /* GRPCDelegateWrapper.h in Headers */,
-				B0FAA2A0D2D7A1286CD172D7 /* GRPCMethodName+HTTP2Encoding.h in Headers */,
-				0EB17874C0B6F9F4CF33EEE5 /* GRPCMethodName.h in Headers */,
-				419A528B135E9CDA9895EF28 /* GRPCSecureChannel.h in Headers */,
-				5D08C2464B0ED87F7049ACAF /* GRPCUnsecuredChannel.h in Headers */,
-				8AA65551FF954CF0D3765A92 /* GRXImmediateWriter.h in Headers */,
-				137896609CAC252A1863E76A /* GRXMappingWriter.h in Headers */,
-				2481B62FB4B1900ABEF273ED /* GRXNSBlockEnumerator.h in Headers */,
-				6C18C1D5A5452817E615B35C /* GRXNSFastEnumerator.h in Headers */,
-				EC98C650783D9C7153EE867F /* GRXNSScalarEnumerator.h in Headers */,
-				915A2AF95EE2DA86874840C4 /* GRXWriteable.h in Headers */,
-				E0F31B941138DD7D00F78D9D /* GRXWriter+Immediate.h in Headers */,
-				030F56179CAA30BD463721C1 /* GRXWriter+Transformations.h in Headers */,
-				C02E36498C3BBEB10673F593 /* GRXWriter.h in Headers */,
-				90D3307C59BD8A42F05710DF /* NSData+GRPC.h in Headers */,
-				8B855C1D072A2A9B5B8C03D9 /* NSDictionary+GRPC.h in Headers */,
-				2C343F377400891A504D926D /* NSEnumerator+GRXUtil.h in Headers */,
-				258D5C7E1F48E9490A3DEE93 /* NSError+GRPC.h in Headers */,
-				84CEBD615DD394484DD90FF8 /* alarm.h in Headers */,
-				4B4F5C8626A440189C23B2EB /* alarm_heap.h in Headers */,
-				E0CBB92D4CF7A0AD1FB02250 /* alarm_internal.h in Headers */,
-				C1EF5E8F19E2A29317AAD19F /* algorithm.h in Headers */,
-				140A4605FD251CD2C6397FCD /* alloc.h in Headers */,
-				B885CF77630C98E4E7C866D0 /* alpn.h in Headers */,
-				AA03B07F080821B7553F2C29 /* atm.h in Headers */,
-				E29642BB56B8EC52ACDBB445 /* atm_gcc_atomic.h in Headers */,
-				30C4467AF20DF21111E68E38 /* atm_gcc_sync.h in Headers */,
-				A6B868EB1E5CBDD1A414756E /* atm_win32.h in Headers */,
-				A03D8BCE681E24F7F86BFEA6 /* auth.h in Headers */,
-				D98BCFFFAD4815E73726CF17 /* base64.h in Headers */,
-				DE1455600C07547831ED39FE /* bin_encoder.h in Headers */,
-				78064F6AB0DB1F4772934BCD /* byte_buffer.h in Headers */,
-				9842C09D559FBF622D3190F5 /* byte_buffer_queue.h in Headers */,
-				D32DB15C51D95B1085EA9822 /* byte_buffer_reader.h in Headers */,
-				E39D3D6657127262426CA948 /* call.h in Headers */,
-				5269975A705AB8B7473147FA /* cancellable_platform.h in Headers */,
-				873773B633AD86086A266B8B /* census_filter.h in Headers */,
-				C24849739039041035CD19D1 /* census_interface.h in Headers */,
-				EB2F7FEA5AC820ADBD375FE1 /* census_log.h in Headers */,
-				F4F710B0678B4B0991DCC75E /* census_rpc_stats.h in Headers */,
-				72F2C6178957E81B1E13867F /* census_tracing.h in Headers */,
-				463152EA25BFC4FBCD7358B0 /* channel.h in Headers */,
-				FB28E5B6F91CE133CAE4DBBF /* channel_args.h in Headers */,
-				5038DD29A261141173BA0AC3 /* channel_stack.h in Headers */,
-				C2969D5F29FE42714ABA1C8E /* child_channel.h in Headers */,
-				A29790C105EF20A1BDBE8593 /* chttp2_transport.h in Headers */,
-				26E7C0F777D8A64F83D3EB44 /* client.h in Headers */,
-				51BBDF8C2369E2F5015B59BF /* client_channel.h in Headers */,
-				EF6727678B8CC28CE4708219 /* client_setup.h in Headers */,
-				DD1D3EE4BCB47C32DDB9E4A8 /* cmdline.h in Headers */,
-				9D02DAFA2CFA634864F20366 /* completion_queue.h in Headers */,
-				34C392874F53A1A832B76E87 /* connected_channel.h in Headers */,
-				55B1CCDE66084CFD44A83D97 /* cpu.h in Headers */,
-				F27D5BF4F91E709AAA257F77 /* credentials.h in Headers */,
-				DFDF133B63EC148897209CB5 /* endpoint.h in Headers */,
-				41DF55ACCD08834BAD8E1B5A /* endpoint_pair.h in Headers */,
-				4D2B6E22373D5A13462A1B2A /* env.h in Headers */,
-				854ABE4E0316F4C018C12D33 /* event_string.h in Headers */,
-				C53086D42A36608A7E4F6C72 /* fake_transport_security.h in Headers */,
-				3235E4EF011CA778DEFFBDF2 /* fd_posix.h in Headers */,
-				3FE0C1931C1F1C27D5D513CA /* file.h in Headers */,
-				351F614BEBCC86C0C99943CA /* format_request.h in Headers */,
-				46AA9328679CD4FF1251BCE3 /* frame.h in Headers */,
-				09EAB1466F9CAC9E45F8CFF9 /* frame_data.h in Headers */,
-				16E965C5ADDE156B961342CD /* frame_goaway.h in Headers */,
-				A48A5A42460F2A887C21D376 /* frame_ping.h in Headers */,
-				156B1200E1362D288D62DB09 /* frame_rst_stream.h in Headers */,
-				E6E993E1C1D6A8EA2B703B71 /* frame_settings.h in Headers */,
-				B8816AD89E6670250B017320 /* frame_window_update.h in Headers */,
-				DF86C3FBF4D1DDB34E4A6848 /* grpc.h in Headers */,
-				39827B8104845983F079B02C /* grpc_http.h in Headers */,
-				26BBD9E785CB96364A624B4D /* grpc_security.h in Headers */,
-				90D44C95A978D44B5D351532 /* grpc_string.h in Headers */,
-				66C9A8A931D3C80974704EBC /* grpc_time.h in Headers */,
-				B2A0894954D7A0424177303C /* hash_table.h in Headers */,
-				2808BA4A49A3D2AB2C7735EA /* histogram.h in Headers */,
-				90DC37D6D537C8B95DE7B6CB /* host_port.h in Headers */,
-				2A2CD934AFC1DE30AC2B25E5 /* hpack_parser.h in Headers */,
-				B23DDFA186B2A6204C467661 /* hpack_table.h in Headers */,
-				03B3C6EF0624547EADDCB227 /* http2_errors.h in Headers */,
-				F6F4A894FDCE2EBC85F9C26B /* http_client_filter.h in Headers */,
-				9C14820DBA65D82452E9E631 /* http_filter.h in Headers */,
-				492D5A9DBA8693EE8B6BC258 /* http_server_filter.h in Headers */,
-				F4C02A30CEBC6F8C41F5013A /* httpcli.h in Headers */,
-				3A82350867F4E044CF5975B0 /* httpcli_security_connector.h in Headers */,
-				267A2058AD87B5F36325611B /* huffsyms.h in Headers */,
-				4E43AE84656A601CE22A5ED8 /* init.h in Headers */,
-				A869502EAFB669E10F8E37CC /* iocp_windows.h in Headers */,
-				73DF7C893CCB33704D20F291 /* iomgr.h in Headers */,
-				50C24730B2D90632A9973AA0 /* iomgr_internal.h in Headers */,
-				62EBC4CAE0C0D7B7A49BFEAE /* iomgr_posix.h in Headers */,
-				45A935273F5DB23F559DF283 /* json.h in Headers */,
-				8D04F666910F49E488EA549E /* json_common.h in Headers */,
-				80E8197A3DFD75727A94C329 /* json_reader.h in Headers */,
-				8B301635ECA4487000C2DBBF /* json_token.h in Headers */,
-				4EFB1E9D54BD4B152D52F1A1 /* json_writer.h in Headers */,
-				8209BEE52CF1F20B4D399508 /* log.h in Headers */,
-				BF7FD72A6D1DEAEDD8AFA492 /* log_win32.h in Headers */,
-				2B3B43D22719CBFD3553A914 /* message_compress.h in Headers */,
-				490F6FE97E32DD77D53D44EE /* metadata.h in Headers */,
-				62DB0E0C751E11C80BC12325 /* metadata_buffer.h in Headers */,
-				F0D04AD3E1C006860139A79C /* murmur_hash.h in Headers */,
-				43F7647B64A984DD6DEC26DD /* noop_filter.h in Headers */,
-				F76ABFE9BE96C5C34FF50DE1 /* parser.h in Headers */,
-				7EFB16C02C644230E5692CAE /* pollset.h in Headers */,
-				A6995EDFE558F67F27C9A6E2 /* pollset_kick.h in Headers */,
-				5EE76BA381A4087039B2C9D5 /* pollset_kick_posix.h in Headers */,
-				05A6844106FA7AFB6C0AD907 /* pollset_kick_windows.h in Headers */,
-				9B96B604C129DA7F1E98F1C0 /* pollset_posix.h in Headers */,
-				65D0507E6E76B8D9FB88E5B9 /* pollset_windows.h in Headers */,
-				0C7F3D64F51B2E92F2C294A6 /* port_platform.h in Headers */,
-				E744D6684B4587FB1B4B547D /* resolve_address.h in Headers */,
-				7A14DF5392476FCF71493217 /* secure_endpoint.h in Headers */,
-				0C8553DEC58C96F31B1A603A /* secure_transport_setup.h in Headers */,
-				282EE922EFD5C65419C7D448 /* security_connector.h in Headers */,
-				40FD694556E0BE577D3E2BC7 /* server.h in Headers */,
-				5666D5ADD0EF7C2EE5F8D06E /* slice.h in Headers */,
-				EB7E892D50FFA5760EBB75D7 /* slice_buffer.h in Headers */,
-				068F94D61A45576642EFEC8D /* sockaddr.h in Headers */,
-				49CC8F4C2FCBE7F71521A08D /* sockaddr_posix.h in Headers */,
-				C16205E292032938F8B8042B /* sockaddr_utils.h in Headers */,
-				2A67FC5F37E5444D57C12A1D /* sockaddr_win32.h in Headers */,
-				8C9E0E10F9D4C92F3A8453B5 /* socket_utils_posix.h in Headers */,
-				06734790D66E80FDC60259A7 /* socket_windows.h in Headers */,
-				BF58C54F2F7A768AE02FB637 /* ssl_transport_security.h in Headers */,
-				FF20CC8321E48130124C0CDE /* status.h in Headers */,
-				280897A7289DDE169AA0546E /* status_conversion.h in Headers */,
-				5DBA3475E57338CD023AA14C /* stream_encoder.h in Headers */,
-				D998B38A004A8361E460C101 /* stream_map.h in Headers */,
-				0B79FF991C7EEE1B29D3B339 /* stream_op.h in Headers */,
-				9A9A007AC022F1EEAC22ADE6 /* string_win32.h in Headers */,
-				90E57473242C45E0B09D2C53 /* surface_trace.h in Headers */,
-				0F759F1A211EF16EBEBD024C /* sync.h in Headers */,
-				038DBC66A323E9B11C627A78 /* sync_generic.h in Headers */,
-				463F9E6CBFEC0079FB9E37EA /* sync_posix.h in Headers */,
-				EDC74856B63EF590856DD0E0 /* sync_win32.h in Headers */,
-				C2F95285BA9F1446DCB3B043 /* tcp_client.h in Headers */,
-				03D93D19FFD54C79F968386D /* tcp_posix.h in Headers */,
-				7BFB1FAF7B8ED71D93665B53 /* tcp_server.h in Headers */,
-				E176F12E652A18B90C8EC257 /* tcp_windows.h in Headers */,
-				8684F98F697782732F186D52 /* thd.h in Headers */,
-				F0FD770B995EC931F3479017 /* thd_internal.h in Headers */,
-				95861687A87CC325C6BC488E /* time_averaged_stats.h in Headers */,
-				C42CCBCCB613865E1D13BFA5 /* timeout_encoding.h in Headers */,
-				B019BAE97EE431F01D2952A1 /* timers.h in Headers */,
-				5D0D547B0339A51FCEFFBB65 /* timers_preciseclock.h in Headers */,
-				1A817BC3C5C6FAEB81FC300A /* tls.h in Headers */,
-				BF6B22582562A9DAA461B13C /* tls_gcc.h in Headers */,
-				F560DE1B37E3E9867BB40E42 /* tls_msvc.h in Headers */,
-				FC8978A1F1FDB4568AC109A2 /* tls_pthread.h in Headers */,
-				75661DE702EA45242D058BC0 /* trace.h in Headers */,
-				79959F897305F44D44D78440 /* transport.h in Headers */,
-				DCAE4461D7D26AE01291CCB3 /* transport_impl.h in Headers */,
-				5ADA989B340006EF340EBCD5 /* transport_security.h in Headers */,
-				0E6886261B42CBDF5F01F411 /* transport_security_interface.h in Headers */,
-				8F6ECEAF47EBD3948F238AB8 /* useful.h in Headers */,
-				FFDC6C5B28AF3D7F93AA2AE7 /* varint.h in Headers */,
-				59FEA8E7A16AE88137E36438 /* wakeup_fd_pipe.h in Headers */,
-				AECFDD9E4DD7168A93F128D0 /* wakeup_fd_posix.h in Headers */,
-				B1904A678DFC18F6DDC4AC98 /* window_stats.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		8B90ED4F3DAB4A49E99C5281 /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				9C05C77EEE4B73A283B278C8 /* aes.h in Headers */,
-				77A37CD8DC6BB0031123E547 /* asn1.h in Headers */,
-				173D3796F0597CF59758B7CC /* asn1_mac.h in Headers */,
-				9BE4CE13C96D1D80C15D1596 /* asn1t.h in Headers */,
-				E5E2689486D4E4AB4A55A014 /* bio.h in Headers */,
-				37B3559B9D6AD1CBFE60E258 /* blowfish.h in Headers */,
-				13CF8EBCE8D1124774156455 /* bn.h in Headers */,
-				D61AACC3AEA522E8A3DB9D7B /* buffer.h in Headers */,
-				8E68EE377D3051E0B20AD2E5 /* camellia.h in Headers */,
-				90B24EA0787CA9E6D2E94231 /* cast.h in Headers */,
-				E036D8B9F53EE04469F930AE /* cmac.h in Headers */,
-				98A53969B5BE4184C0C75FA7 /* cms.h in Headers */,
-				F2D3C6DBA9EBA903167EB235 /* comp.h in Headers */,
-				356F975E58088CA325A3E581 /* conf.h in Headers */,
-				352DBA35799DA89FCF97B6E4 /* conf_api.h in Headers */,
-				BB9AC4E06D94C9BEDE8ABDEB /* crypto.h in Headers */,
-				315725A5540DCE644E310E84 /* des.h in Headers */,
-				B54A46596FF4EEA4D31F0ABF /* des_old.h in Headers */,
-				6F06D77DC73ED72C9B9407B7 /* dh.h in Headers */,
-				557B4BEA10607289B4B844C1 /* dsa.h in Headers */,
-				76E1C231BB3B59544F53DC50 /* dso.h in Headers */,
-				E088850C86D9E755F82655E3 /* dtls1.h in Headers */,
-				83DA0EF392288E6AFA7152A1 /* e_os2.h in Headers */,
-				A12A645BDDC8831885D1EE0C /* ebcdic.h in Headers */,
-				2288136BFE49BB08AF87D356 /* ec.h in Headers */,
-				943A1870CBED97335E1C936C /* ecdh.h in Headers */,
-				403F15B8702919B3149E4BF5 /* ecdsa.h in Headers */,
-				90A82D83BCEA3CC7FB0BF080 /* engine.h in Headers */,
-				1791671EBE9654130ECA26EC /* err.h in Headers */,
-				E3BBE64A284C1E05EB8D7B70 /* evp.h in Headers */,
-				9E2F3A3641C32CC9CBFFF38A /* hmac.h in Headers */,
-				4CE44C0746E910E108017C86 /* idea.h in Headers */,
-				DA4635628EE1CB17C6B16F9D /* krb5_asn.h in Headers */,
-				4597CCC3FF721DCE71ACDD0A /* kssl.h in Headers */,
-				86487312CC8E4DB1C433E3CE /* lhash.h in Headers */,
-				79A46DBE416A4524D48CCE29 /* md4.h in Headers */,
-				FCA05EB01597AC5FBF14C945 /* md5.h in Headers */,
-				B290A1D77A9D07C152432C07 /* mdc2.h in Headers */,
-				739F035E619FED2F41256B87 /* modes.h in Headers */,
-				5BE7DCB3D2D1799C24492009 /* obj_mac.h in Headers */,
-				96A6FE0B11CE62FF10F2BFC1 /* objects.h in Headers */,
-				5943B79362DA59CD4AD512F7 /* ocsp.h in Headers */,
-				F94E36DF3EF70787933FFE6A /* opensslconf.h in Headers */,
-				0D8940F610BFBFAA7870AA8C /* opensslv.h in Headers */,
-				C0B3670A83D5E2F277D10274 /* ossl_typ.h in Headers */,
-				010EB17FF74DAA86A30DDC6C /* pem.h in Headers */,
-				5DEF2035131B882F2B073BFD /* pem2.h in Headers */,
-				E1DB994B7D45C311D71665B3 /* pkcs12.h in Headers */,
-				9081355EE210BD3EEF404B5C /* pkcs7.h in Headers */,
-				444E1837CB6ACC0F1CA28689 /* pqueue.h in Headers */,
-				CF008421E0A19CB68CF09175 /* rand.h in Headers */,
-				31869B2BF8FF6413D487B7D4 /* rc2.h in Headers */,
-				E29608554C0F8F529228E2D8 /* rc4.h in Headers */,
-				9097DB58A7116A6BB3FDFB7D /* ripemd.h in Headers */,
-				28FC75C649983F1DEEA81C0C /* rsa.h in Headers */,
-				F728068C3E05C35EF8B4A6C0 /* safestack.h in Headers */,
-				53C8DF828FDFA56A99E3CCC1 /* seed.h in Headers */,
-				CE9B9DB60BECE59ABF2A17E7 /* sha.h in Headers */,
-				42877984FCEA81D7C33CBBF6 /* srp.h in Headers */,
-				B402775E5EE3B27370EAAEC8 /* srtp.h in Headers */,
-				892BF5C44CC068E340A23CB3 /* ssl.h in Headers */,
-				2B9866DBF9E5CEF765948941 /* ssl2.h in Headers */,
-				EA84AF84B140B546E5B221DA /* ssl23.h in Headers */,
-				DC3C7E70EE16ECA23A9B4739 /* ssl3.h in Headers */,
-				8840F69E7192A89783973C8A /* stack.h in Headers */,
-				AC12894B3A4775D758E5858C /* symhacks.h in Headers */,
-				E6B18B834045A80A830F5ED8 /* tls1.h in Headers */,
-				62E6630301677198F6F92F41 /* ts.h in Headers */,
-				A802B1D61EA93ED4A6AD1B3C /* txt_db.h in Headers */,
-				35E8734BA649618A6E93B6C4 /* ui.h in Headers */,
-				58B9F158110A20CA76239C85 /* ui_compat.h in Headers */,
-				51A0C693F0BC02A3690AED2B /* whrlpool.h in Headers */,
-				4B6ED893DD054F2067E9D4CE /* x509.h in Headers */,
-				680E27D325D4D688E9A9D2F4 /* x509_vfy.h in Headers */,
-				21615F75A9CC9E8E42011C65 /* x509v3.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		9815606CA284D785A725E6BB /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				030E28465C47E51430E006CE /* AbstractMessage.h in Headers */,
-				D50A25382B2F2EFF51BB15EA /* AbstractMessageBuilder.h in Headers */,
-				B29F49EB2266808D42E08346 /* Bootstrap.h in Headers */,
-				452DF17BC4101B3941711AB2 /* CodedInputStream.h in Headers */,
-				3B5F6B30DB045229D1E4B57B /* CodedOutputStream.h in Headers */,
-				C7C29789C25C800021DC23DB /* ConcreteExtensionField.h in Headers */,
-				7FE20F056C69813A6794B5E1 /* Descriptor.pb.h in Headers */,
-				F8DD5E944DD6A78A369407D2 /* ExtendableMessage.h in Headers */,
-				6F223F3D2688C9D8C26DE12B /* ExtendableMessageBuilder.h in Headers */,
-				C7BA0D9E950341CE414755E0 /* ExtensionField.h in Headers */,
-				88C30CCE57D8E2F0B886FC2D /* ExtensionRegistry.h in Headers */,
-				C99E42D042F45AC3A6035ACF /* Field.h in Headers */,
-				9C6B24FDA09DFB6A42DC4071 /* ForwardDeclarations.h in Headers */,
-				29C6DBA8BE53D593366967BF /* GeneratedMessage.h in Headers */,
-				A6BDF97EFA928161338EB9D1 /* GeneratedMessageBuilder.h in Headers */,
-				82364DF8B545166D01E0EBC2 /* Message.h in Headers */,
-				905ED50086764028ABAC0FEA /* MessageBuilder.h in Headers */,
-				D46DABD218F7EE5F5EE83E47 /* MutableExtensionRegistry.h in Headers */,
-				D54515B00B3A40B9BE563DDE /* MutableField.h in Headers */,
-				69570C734AEE5C34D5F4B302 /* ObjectivecDescriptor.pb.h in Headers */,
-				CA02AF622EE178C5F1140ED3 /* PBArray.h in Headers */,
-				166DD91F115A23C1DA1ECA9B /* ProtocolBuffers.h in Headers */,
-				A78CC684CE8E32A612CD0F01 /* RingBuffer.h in Headers */,
-				FA379C4391D1CBACF226A22B /* TextFormat.h in Headers */,
-				CDDDE2F7113879077C8B8FBF /* UnknownFieldSet.h in Headers */,
-				AD0D30472B326382D0E24726 /* UnknownFieldSetBuilder.h in Headers */,
-				A8EE085AAE2CBAB790106BEC /* Utilities.h in Headers */,
-				1BC9A4383D98D3FE21B2A0CB /* WireFormat.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		9B5E2D7CBC32D4B042C49242 /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				51F0FF1521AE61BC7A4E6B48 /* GRPCCall.h in Headers */,
-				0FC63DE73927805D4195040C /* GRPCChannel.h in Headers */,
-				62E0F6CE424241907A562208 /* GRPCCompletionQueue.h in Headers */,
-				B4D4BF923329E4F7F0FE7C70 /* GRPCDelegateWrapper.h in Headers */,
-				9E07A9862C1FA2956744A55B /* GRPCMethodName+HTTP2Encoding.h in Headers */,
-				B793CEFAFE062C8EFCE93B60 /* GRPCMethodName.h in Headers */,
-				079C1EE7DC20CB1DE0B4113E /* GRPCSecureChannel.h in Headers */,
-				75B097884C723B44008A64E3 /* GRPCUnsecuredChannel.h in Headers */,
-				5DBD610D699997A56EAE4AEB /* GRXImmediateWriter.h in Headers */,
-				43475660B23F875F4CF9EFAF /* GRXMappingWriter.h in Headers */,
-				2873E927E80CFEAD564BB02D /* GRXNSBlockEnumerator.h in Headers */,
-				603EF5F5078BD463469F076E /* GRXNSFastEnumerator.h in Headers */,
-				4EF947792E0714E96110981F /* GRXNSScalarEnumerator.h in Headers */,
-				832D6919157D219FAC4736D1 /* GRXWriteable.h in Headers */,
-				C2D7038080318F4BE8CFBBAA /* GRXWriter+Immediate.h in Headers */,
-				EB4A481DBA7F5B9ED3FE2A5A /* GRXWriter+Transformations.h in Headers */,
-				9E3191AC8437FA2DAAD7378B /* GRXWriter.h in Headers */,
-				38294549BE6532938732C84C /* NSData+GRPC.h in Headers */,
-				4135974F98240A27F68E662B /* NSDictionary+GRPC.h in Headers */,
-				4F802952D9FEC942B09F0779 /* NSEnumerator+GRXUtil.h in Headers */,
-				FBEA21590916CBCBEA3AF284 /* NSError+GRPC.h in Headers */,
-				40FA3B48050F5CB53EE28AE4 /* alarm.h in Headers */,
-				7538A7AD1D75764C440EF523 /* alarm_heap.h in Headers */,
-				E5D63489DE2CB74E1715D216 /* alarm_internal.h in Headers */,
-				64A0C3FF349EE51D6A092B0D /* algorithm.h in Headers */,
-				3C63FAA2D075945711B10CDC /* alloc.h in Headers */,
-				DFC9FE10B9A541F2DD10D71E /* alpn.h in Headers */,
-				7BB647108E3B2083DD1D7098 /* atm.h in Headers */,
-				39BC1C71C3B1C317496C79FB /* atm_gcc_atomic.h in Headers */,
-				37D28835B4F89BCA3C1E402F /* atm_gcc_sync.h in Headers */,
-				6FBF34691F3D24BA6566ABAC /* atm_win32.h in Headers */,
-				1DBD2BA98BA10AD49A1C9443 /* auth.h in Headers */,
-				C9089E43C193490B4EF68F44 /* base64.h in Headers */,
-				4DCF19613E8AECE0351594A6 /* bin_encoder.h in Headers */,
-				B4C09E9D07ED3381F4A321A2 /* byte_buffer.h in Headers */,
-				1D0621C37385231F2A7EA523 /* byte_buffer_queue.h in Headers */,
-				81A0D47B97DFEE1BB12AA513 /* byte_buffer_reader.h in Headers */,
-				AB27A6BAA4C7D3FAB052E896 /* call.h in Headers */,
-				4698A1E4DB73FDA1BF730663 /* cancellable_platform.h in Headers */,
-				326666F1CE653C81F9B70650 /* census_filter.h in Headers */,
-				30520D97EC4EC13E0AB44E5A /* census_interface.h in Headers */,
-				25347970E8770DEF98017D3A /* census_log.h in Headers */,
-				77CEAFC01BC2E754D2F37D3C /* census_rpc_stats.h in Headers */,
-				FC95E0B9D72DF90929CACCB9 /* census_tracing.h in Headers */,
-				93A049B988285C416453FC27 /* channel.h in Headers */,
-				5BFA01054D5A91C27F34DCC0 /* channel_args.h in Headers */,
-				12F848ACA5D78FEC18DD4FD7 /* channel_stack.h in Headers */,
-				F69BFFA451A71BA94348F35D /* child_channel.h in Headers */,
-				DC6579026B449A7334832385 /* chttp2_transport.h in Headers */,
-				C768AB47B4A8E88D74E34371 /* client.h in Headers */,
-				E774D411E70BD8F690C8FBE5 /* client_channel.h in Headers */,
-				4729C6AB0130EAA39AE15F9E /* client_setup.h in Headers */,
-				D8827371E8D60BB99C3E4761 /* cmdline.h in Headers */,
-				9018845A06C489373F22DC39 /* completion_queue.h in Headers */,
-				226D509BA1A5665597130739 /* connected_channel.h in Headers */,
-				51C77D2320718F9CBCFDA82C /* cpu.h in Headers */,
-				F25CB4658EB35CC918D2B0DE /* credentials.h in Headers */,
-				6303930E32CBD796B1DF01F2 /* endpoint.h in Headers */,
-				8E2BE66E19B1C6F07EBDB859 /* endpoint_pair.h in Headers */,
-				CD097C30FE2C43B906381A86 /* env.h in Headers */,
-				5A0415A5D0793C631358CB41 /* event_string.h in Headers */,
-				7E388FBD962A6337B9600FE6 /* fake_transport_security.h in Headers */,
-				9A0DCDF71952F90B59704422 /* fd_posix.h in Headers */,
-				97CC85A3647586A49C85384E /* file.h in Headers */,
-				51AF277BB80DFC6613639298 /* format_request.h in Headers */,
-				6B9877EDCF87F1894992BE1E /* frame.h in Headers */,
-				FC6F97DE90F0DEEBCF549489 /* frame_data.h in Headers */,
-				2C2FDB4BB84778101B8A38D2 /* frame_goaway.h in Headers */,
-				65EAA0BFC3BA655A767AE372 /* frame_ping.h in Headers */,
-				7227EB8D66046DD7D5C5E0DE /* frame_rst_stream.h in Headers */,
-				65A9F6CEBB88A634F31D1175 /* frame_settings.h in Headers */,
-				1BDC0C556514D0A2A7DAD43C /* frame_window_update.h in Headers */,
-				5E22E35A818E9F227476ADC6 /* grpc.h in Headers */,
-				8BDA6679652E50307C5B454B /* grpc_http.h in Headers */,
-				5617AD69046C206ADC6C788B /* grpc_security.h in Headers */,
-				E126A5B5D9FD3BFBFDC5C6E4 /* grpc_string.h in Headers */,
-				4D35EF4D670FF8C14DE6DF77 /* grpc_time.h in Headers */,
-				56756A4A8DD74EA60D684285 /* hash_table.h in Headers */,
-				E74A037B6DD82999415ACF37 /* histogram.h in Headers */,
-				7DA1D6A040FCF0C94B1C78BD /* host_port.h in Headers */,
-				0A2FC84E239C689751B3784A /* hpack_parser.h in Headers */,
-				4B86B959686E9D19BE0F576D /* hpack_table.h in Headers */,
-				1F6F90086BD65A0835E6F094 /* http2_errors.h in Headers */,
-				737D008F49968BCDC6E6E93E /* http_client_filter.h in Headers */,
-				F5B9A8F9A4CDDD2C34D4F549 /* http_filter.h in Headers */,
-				905420DD1311E1C5E6B07AC5 /* http_server_filter.h in Headers */,
-				C9FDFF2FD7083183FC0B01A9 /* httpcli.h in Headers */,
-				AC2A601DB80389A32DEC53CB /* httpcli_security_connector.h in Headers */,
-				4F95BBADEEF4145B2C50DFF0 /* huffsyms.h in Headers */,
-				A64918AD19AB86A3B200EF62 /* init.h in Headers */,
-				C5AA9B45A7D1DD89F5A35058 /* iocp_windows.h in Headers */,
-				092633CD8E96253BA8893BAA /* iomgr.h in Headers */,
-				7513DCB3E1841DE44664D840 /* iomgr_internal.h in Headers */,
-				8476190C228C798207E31FFC /* iomgr_posix.h in Headers */,
-				BA15B329CD48F2B0EA075AAB /* json.h in Headers */,
-				06D2C9A5E7138C028B658FB6 /* json_common.h in Headers */,
-				736F85F6444CD0613F73836D /* json_reader.h in Headers */,
-				C689EE7532987416570509F8 /* json_token.h in Headers */,
-				B255ADF74AF24A24A2CB1BAE /* json_writer.h in Headers */,
-				1E6AABD0371733C70B270A18 /* log.h in Headers */,
-				176339CE6F581D7D2FB184FB /* log_win32.h in Headers */,
-				68BF2564782DEF9A12920092 /* message_compress.h in Headers */,
-				4ED5869076CA27DD459CFC15 /* metadata.h in Headers */,
-				2C06B1388A910AAC0ABDC2B2 /* metadata_buffer.h in Headers */,
-				EE5C0CF95DBBE491A4C95B0C /* murmur_hash.h in Headers */,
-				F237ADEF9BF54A0707894BC8 /* noop_filter.h in Headers */,
-				657F349E175A184E48D27365 /* parser.h in Headers */,
-				85C48528BEB3085488104DEF /* pollset.h in Headers */,
-				D2DFDD76F185F5BB5AF2391D /* pollset_kick.h in Headers */,
-				78253CED659EEAAA2BCB73CF /* pollset_kick_posix.h in Headers */,
-				735E76A20485C7B2419767C3 /* pollset_kick_windows.h in Headers */,
-				7EF1BC523A6EF5D7AAC80733 /* pollset_posix.h in Headers */,
-				DB27E14EDE04FACDB5499F9D /* pollset_windows.h in Headers */,
-				44B1F21EDEA46FACA8C62C7D /* port_platform.h in Headers */,
-				A86D2B2D80AD984B0FED9C30 /* resolve_address.h in Headers */,
-				1B941BFF77CE565C33E3B4F1 /* secure_endpoint.h in Headers */,
-				4D73DFE73794357E0BA6B39F /* secure_transport_setup.h in Headers */,
-				23A8D39356B7B64D751CE2B0 /* security_connector.h in Headers */,
-				50C260173B8C5BE6832EFFC6 /* server.h in Headers */,
-				4F0ADD71D7CE0D8E8179A161 /* slice.h in Headers */,
-				03353AA2354EC57128DFEB98 /* slice_buffer.h in Headers */,
-				A7B3EF094FE11F3A13C5B8B3 /* sockaddr.h in Headers */,
-				FE79C454FF2B8EA1910928AF /* sockaddr_posix.h in Headers */,
-				D4E16F88E8F560E29A6241BC /* sockaddr_utils.h in Headers */,
-				0C143882B23F901019D178AF /* sockaddr_win32.h in Headers */,
-				BB45789FA1BB5ED057812C62 /* socket_utils_posix.h in Headers */,
-				358DCFEB16146066CA950067 /* socket_windows.h in Headers */,
-				95B511B8899ECA8EA9EF4B69 /* ssl_transport_security.h in Headers */,
-				A8E782D23B1462145AA3B427 /* status.h in Headers */,
-				FFC252DCAA3AB276E627EDD7 /* status_conversion.h in Headers */,
-				D7D70A69727D4BEB74B07CD3 /* stream_encoder.h in Headers */,
-				C62A3E7369D1DED3C0BA2604 /* stream_map.h in Headers */,
-				4977B828C027EEA731C92200 /* stream_op.h in Headers */,
-				0A518B91E4170BF689146AFE /* string_win32.h in Headers */,
-				F1BCC39C97E972BE490556EB /* surface_trace.h in Headers */,
-				99F9D07366845BEF05F09F2E /* sync.h in Headers */,
-				58EC1D6962AE8AF8519133A2 /* sync_generic.h in Headers */,
-				B0ACD496C8E1E9740733E11D /* sync_posix.h in Headers */,
-				FDB64740A220064941124CE2 /* sync_win32.h in Headers */,
-				5FD516B0EAB110F4148D24BF /* tcp_client.h in Headers */,
-				FA5BA0BC7B92561B16D3A6DB /* tcp_posix.h in Headers */,
-				A0F731A071D1B51F0B40E69E /* tcp_server.h in Headers */,
-				3F65CA5E7D44AEB64ADEFDA6 /* tcp_windows.h in Headers */,
-				0C2A46C5BA21AECC8F81CAE6 /* thd.h in Headers */,
-				7668140A11E783086E29430C /* thd_internal.h in Headers */,
-				0FFBED20C4038446AFB37E6E /* time_averaged_stats.h in Headers */,
-				06DAE007BFEADB594F60EF8C /* timeout_encoding.h in Headers */,
-				FF2D81690F115A76A71F1184 /* timers.h in Headers */,
-				074B9BACAA7C38E6C40A7B87 /* timers_preciseclock.h in Headers */,
-				F91F695A7076886D3CB2DAB3 /* tls.h in Headers */,
-				D7D92CA34B0B714AFEBE7D23 /* tls_gcc.h in Headers */,
-				A308F2AB219C13F7FDF514BF /* tls_msvc.h in Headers */,
-				767C866B8A87D5E07F99022F /* tls_pthread.h in Headers */,
-				28194E4EB5CB5EE977B26DB0 /* trace.h in Headers */,
-				0DB600DEA6094CDB05902190 /* transport.h in Headers */,
-				EA4D8E1712CF5B459ED24640 /* transport_impl.h in Headers */,
-				FCC5DB6332BEF37B4B8D38FF /* transport_security.h in Headers */,
-				8780A793FC2BA639D7D9D684 /* transport_security_interface.h in Headers */,
-				6E21AAA8E82C1C572183F0F7 /* useful.h in Headers */,
-				B2B2C3C5308E734391BDF1DA /* varint.h in Headers */,
-				559CA4F3F2DCE33CD210EEDC /* wakeup_fd_pipe.h in Headers */,
-				85FE9095F8FB2DAE910B1136 /* wakeup_fd_posix.h in Headers */,
-				E35D745EA016B11B2839D589 /* window_stats.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		CAFBDEA34B4F7AE14D2CBB75 /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				FEB547C5119839C0FC6830D7 /* Empty.pb.h in Headers */,
-				CFC87A2BF353077DBC7A0825 /* Messages.pb.h in Headers */,
-				92BF6E7A7221622AAC82A4E5 /* Test.pb.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		CB7FC2B8623547E52B9D4D62 /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				E38616C58F291975442B4FF1 /* AbstractMessage.h in Headers */,
-				A3114E87A29C4F5862069B48 /* AbstractMessageBuilder.h in Headers */,
-				3FF474A3EEC0DB286EDE14C3 /* Bootstrap.h in Headers */,
-				00B01D23E945E97476184E5A /* CodedInputStream.h in Headers */,
-				B9485BEE3D20FA700BC1D362 /* CodedOutputStream.h in Headers */,
-				635E5C52B50DE07C9FC9234D /* ConcreteExtensionField.h in Headers */,
-				68CD3C258CB1691E9CC83D1B /* Descriptor.pb.h in Headers */,
-				4E7A10EACF2F27DA922FF2C7 /* ExtendableMessage.h in Headers */,
-				CA6BB1D4C78FFC6B4DEBC635 /* ExtendableMessageBuilder.h in Headers */,
-				D00EF8C88423DCAB8269DEE9 /* ExtensionField.h in Headers */,
-				A6B32C12626CD2A58DF11706 /* ExtensionRegistry.h in Headers */,
-				4C1ADB5F5164E5005C241AC4 /* Field.h in Headers */,
-				79F5B6B5240F89BED04FA731 /* ForwardDeclarations.h in Headers */,
-				E155D6C4F5C97DC728A8A103 /* GeneratedMessage.h in Headers */,
-				F416A35C5E3E030CBE430063 /* GeneratedMessageBuilder.h in Headers */,
-				0C41D59CF2DC0C9DBB1589D8 /* Message.h in Headers */,
-				982FA4B9844767680FEA9262 /* MessageBuilder.h in Headers */,
-				9DCEB152D77533F4512FFE7F /* MutableExtensionRegistry.h in Headers */,
-				A8FAC8216C3D86BD36BB0072 /* MutableField.h in Headers */,
-				6472E91CCF379498DB53BC27 /* ObjectivecDescriptor.pb.h in Headers */,
-				7C972F9BC6CA93AEE618AA58 /* PBArray.h in Headers */,
-				32A7C54A69DF5BE016964DB6 /* ProtocolBuffers.h in Headers */,
-				C3A26FDC055DCC7B87888EE3 /* RingBuffer.h in Headers */,
-				E33965CB7775B012628352B6 /* TextFormat.h in Headers */,
-				AEEFC67EA9601F525E167880 /* UnknownFieldSet.h in Headers */,
-				49362DB45F7914418A2E0E33 /* UnknownFieldSetBuilder.h in Headers */,
-				77DC2B5E8E5B403455B9BD9B /* Utilities.h in Headers */,
-				81655F966C5B805F738DC99D /* WireFormat.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		D8B6197057DF608617BE5AE0 /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				265B319D6B6A8883D6025D96 /* Route_guide.pb.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		E7569C1A937D6BF4D8C6B6E7 /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				AD9B7C206BC07D7580FB1820 /* AbstractMessage.h in Headers */,
-				7CFD71D499B861A4233CEA81 /* AbstractMessageBuilder.h in Headers */,
-				A1FC7C611847CB29DAEC5CCA /* Bootstrap.h in Headers */,
-				7935908D5E4914029F901F78 /* CodedInputStream.h in Headers */,
-				AD60FA94653A394250ED99A9 /* CodedOutputStream.h in Headers */,
-				37CE2CC157050B1444BB302B /* ConcreteExtensionField.h in Headers */,
-				E970E117015469E1A11234A4 /* Descriptor.pb.h in Headers */,
-				4E764C3AC787AE28C16C7B79 /* ExtendableMessage.h in Headers */,
-				D678660FE9083409E72C14D4 /* ExtendableMessageBuilder.h in Headers */,
-				AC6C63B326FBD8E87E274E37 /* ExtensionField.h in Headers */,
-				C8D37F8BC4E6D704E2A7CDF0 /* ExtensionRegistry.h in Headers */,
-				3344A63DF338C3BB921A6606 /* Field.h in Headers */,
-				C9C75DEAE49569804071C4DD /* ForwardDeclarations.h in Headers */,
-				3903296C0A52197BDC663C41 /* GeneratedMessage.h in Headers */,
-				096B26867548B02F1C12313D /* GeneratedMessageBuilder.h in Headers */,
-				69E211CE18ADB3795893EDA1 /* Message.h in Headers */,
-				6D9339EB99219A41F068115D /* MessageBuilder.h in Headers */,
-				3CC58E7BCA1F586406BBEDA4 /* MutableExtensionRegistry.h in Headers */,
-				F47486C2D438B18285F9CC21 /* MutableField.h in Headers */,
-				FFC736ECE295CD5FB7C25E7D /* ObjectivecDescriptor.pb.h in Headers */,
-				CF2798F0D6A41B023D00B30C /* PBArray.h in Headers */,
-				C6FFCB0BCC38BB023FDE7520 /* ProtocolBuffers.h in Headers */,
-				A64064987EEF00CD4CAFE35A /* RingBuffer.h in Headers */,
-				BBE2FDBDCE1B86D253B821E2 /* TextFormat.h in Headers */,
-				492E1B46C16010FF6BF5E681 /* UnknownFieldSet.h in Headers */,
-				C36CFB8D3BDBAD9B31262391 /* UnknownFieldSetBuilder.h in Headers */,
-				3757E753ED86B982E75391CA /* Utilities.h in Headers */,
-				3BFDB4DD1899050FA291FA64 /* WireFormat.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-/* End PBXHeadersBuildPhase section */
-
-/* Begin PBXNativeTarget section */
-		01C449C242E3ED554D84A611 /* Pods-ProtocolBuffers */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = 64D5F2F831676A97B4285D51 /* Build configuration list for PBXNativeTarget "Pods-ProtocolBuffers" */;
-			buildPhases = (
-				E28A72FACF36CCE1C4B40E6E /* Sources */,
-				9F69F833B3793B16B3BF5765 /* Frameworks */,
-				CB7FC2B8623547E52B9D4D62 /* Headers */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-			);
-			name = "Pods-ProtocolBuffers";
-			productName = "Pods-ProtocolBuffers";
-			productReference = B64822636A0657DA8FB6B4FC /* libPods-ProtocolBuffers.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		0A154C8B54E34A8FCDA1AD3F /* Pods-SampleTests-Route_guide */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = 9A92F3593F047DF639B13D3E /* Build configuration list for PBXNativeTarget "Pods-SampleTests-Route_guide" */;
-			buildPhases = (
-				43073832236BF6D0C731D587 /* Sources */,
-				37F9DF5D4E6985A10440B395 /* Frameworks */,
-				3BD0C3129F3835F01BE22E88 /* Headers */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-				087D56A5850DCFAE8F95C4A9 /* PBXTargetDependency */,
-			);
-			name = "Pods-SampleTests-Route_guide";
-			productName = "Pods-SampleTests-Route_guide";
-			productReference = E329117842FC2F6CAC80EC0E /* libPods-SampleTests-Route_guide.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		161C88F48197C52433106937 /* Pods-Sample-gRPC-gRPC */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = EC337B5DCAD8FE8DBEA1E777 /* Build configuration list for PBXNativeTarget "Pods-Sample-gRPC-gRPC" */;
-			buildPhases = (
-				C85C3D220F6F8B598221A0AB /* Sources */,
-				5AFF33649572EFABC7A07A03 /* Frameworks */,
-				D6FF4B8A50F68505EA74878B /* Resources */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-			);
-			name = "Pods-Sample-gRPC-gRPC";
-			productName = "Pods-Sample-gRPC-gRPC";
-			productReference = 24F595F6D7D7760449F99D3F /* gRPC.bundle */;
-			productType = "com.apple.product-type.bundle";
-		};
-		24224A9E6165CF2833705F00 /* Pods-Sample-gRPC */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = C240889DAF14DD75C45D27C7 /* Build configuration list for PBXNativeTarget "Pods-Sample-gRPC" */;
-			buildPhases = (
-				4CE20F0FA4DC89382E272E4C /* Sources */,
-				AB83A0EE0D0FBA16A4899F19 /* Frameworks */,
-				9B5E2D7CBC32D4B042C49242 /* Headers */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-				1ACC4A38E3AAA5EDAF4A9AAF /* PBXTargetDependency */,
-				AF5B698F9C2F6A540E4BAA3A /* PBXTargetDependency */,
-			);
-			name = "Pods-Sample-gRPC";
-			productName = "Pods-Sample-gRPC";
-			productReference = 8D607D15F877D0F40B399AF9 /* libPods-Sample-gRPC.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		455BA4912B88B1766CAFBBA5 /* Pods-SampleTests-OpenSSL */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = 5E92C229B95AAB944C308CDC /* Build configuration list for PBXNativeTarget "Pods-SampleTests-OpenSSL" */;
-			buildPhases = (
-				9EFFD99593EC0894E9BD195B /* Sources */,
-				A72A6D77B04811A79E6EB8B8 /* Frameworks */,
-				829F76EB122AEED27B3A7BBA /* Headers */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-			);
-			name = "Pods-SampleTests-OpenSSL";
-			productName = "Pods-SampleTests-OpenSSL";
-			productReference = AC9D5638CA9FE89943EAF771 /* libPods-SampleTests-OpenSSL.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		47DE3004CBE5C02E04F68945 /* Pods-SampleTests-gRPC-gRPC */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = 7875D6F82420579F07F6F04F /* Build configuration list for PBXNativeTarget "Pods-SampleTests-gRPC-gRPC" */;
-			buildPhases = (
-				5D02A06EA975A5AC4867C0BA /* Sources */,
-				B84D19C2C4AC16E1F87EA7FA /* Frameworks */,
-				BCFFD0A592BF9D20EA2FFDC2 /* Resources */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-			);
-			name = "Pods-SampleTests-gRPC-gRPC";
-			productName = "Pods-SampleTests-gRPC-gRPC";
-			productReference = 8240255EEA8AE10091016E55 /* gRPC.bundle */;
-			productType = "com.apple.product-type.bundle";
-		};
-		52849F89804FD62CDF39A502 /* Pods-gRPC-gRPC */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = FDB9644BFD0D2CC68F0C5D86 /* Build configuration list for PBXNativeTarget "Pods-gRPC-gRPC" */;
-			buildPhases = (
-				17290C20C1117E763E1503D9 /* Sources */,
-				B8EFDE3C646A5713A99AA68A /* Frameworks */,
-				AD3DEEF965003762E5BAA698 /* Resources */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-			);
-			name = "Pods-gRPC-gRPC";
-			productName = "Pods-gRPC-gRPC";
-			productReference = 41D7A88FF6475B69BDB13547 /* gRPC.bundle */;
-			productType = "com.apple.product-type.bundle";
-		};
-		5A31380749D2D986F74F1554 /* Pods-Sample-OpenSSL */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = 412AB29A510335AFFC964F16 /* Build configuration list for PBXNativeTarget "Pods-Sample-OpenSSL" */;
-			buildPhases = (
-				0F4A1CC26ABBBC28CF405F48 /* Sources */,
-				6EFBC93703CAC1ED26554B55 /* Frameworks */,
-				716499B59A81CB3314B55E3E /* Headers */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-			);
-			name = "Pods-Sample-OpenSSL";
-			productName = "Pods-Sample-OpenSSL";
-			productReference = D4FDAA4A78F994AD1139CDB5 /* libPods-Sample-OpenSSL.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		9A927A1CECCE267CF1C4BC39 /* Pods-Sample-RemoteTest */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = 12AF50E6B2C99BF6774628F7 /* Build configuration list for PBXNativeTarget "Pods-Sample-RemoteTest" */;
-			buildPhases = (
-				18963E71B28CD7A13006634C /* Sources */,
-				D4A425AF9C9161398AE1E3E8 /* Frameworks */,
-				0F6671BCAA8E31E310E43A06 /* Headers */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-				CD7AC395A15CA369B5EDF9D4 /* PBXTargetDependency */,
-			);
-			name = "Pods-Sample-RemoteTest";
-			productName = "Pods-Sample-RemoteTest";
-			productReference = 312BB7A456AECCAC670AFF93 /* libPods-Sample-RemoteTest.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		A2C0DFC30E8922D73DFA6E7A /* Pods-OpenSSL */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = 5E3A93AFD7B375DE5F71B263 /* Build configuration list for PBXNativeTarget "Pods-OpenSSL" */;
-			buildPhases = (
-				1171D0CC44B2B9BE330D97E4 /* Sources */,
-				C761D81305BAB47FBF0FD76D /* Frameworks */,
-				8B90ED4F3DAB4A49E99C5281 /* Headers */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-			);
-			name = "Pods-OpenSSL";
-			productName = "Pods-OpenSSL";
-			productReference = 78678D208AC9C4E19C84DD90 /* libPods-OpenSSL.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		AEB2043448E5878CC3D6D248 /* Pods-SampleTests-ProtocolBuffers */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = 1BE096DDB20B69F9E8D1B541 /* Build configuration list for PBXNativeTarget "Pods-SampleTests-ProtocolBuffers" */;
-			buildPhases = (
-				BE742903150180E53322DEF8 /* Sources */,
-				62EF5B8B84C327E49708EC1A /* Frameworks */,
-				E7569C1A937D6BF4D8C6B6E7 /* Headers */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-			);
-			name = "Pods-SampleTests-ProtocolBuffers";
-			productName = "Pods-SampleTests-ProtocolBuffers";
-			productReference = DF171BB5BAA37A552CDAAD26 /* libPods-SampleTests-ProtocolBuffers.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		BB07BA6D2BC4D5C55865E841 /* Pods-Sample */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = 633EFB08CED17C220C5CA4A3 /* Build configuration list for PBXNativeTarget "Pods-Sample" */;
-			buildPhases = (
-				FF002E265B8496876C78F54A /* Sources */,
-				41A55C7E921EF760FA5037B7 /* Frameworks */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-				2DB1F20910CF74E4BB8EB9D9 /* PBXTargetDependency */,
-				644F4D907ABFB69571C3F211 /* PBXTargetDependency */,
-				CB0768D100A402BB025812C5 /* PBXTargetDependency */,
-				B95C5BB4420D82CB5D3778F3 /* PBXTargetDependency */,
-				E860EA93BF2231CBB30A4B5E /* PBXTargetDependency */,
-			);
-			name = "Pods-Sample";
-			productName = "Pods-Sample";
-			productReference = 6240F7EA27D10F106B7F136E /* libPods-Sample.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		CAE7A7263529BD28E61F22CE /* Pods-Route_guide */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = A4EED9AEB632CC12BC785CF4 /* Build configuration list for PBXNativeTarget "Pods-Route_guide" */;
-			buildPhases = (
-				EADF3567515F02C9A41F5A06 /* Sources */,
-				668DA73FA4219F80B3E29935 /* Frameworks */,
-				10748DBB0536357A5333E658 /* Headers */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-				D5061DF63CF01ADE71D3E33B /* PBXTargetDependency */,
-			);
-			name = "Pods-Route_guide";
-			productName = "Pods-Route_guide";
-			productReference = 26397A96A767631337677141 /* libPods-Route_guide.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		CD1F58AC957B28B69E61EE84 /* Pods-SampleTests */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = 3958FBF2BC5ADD4690E5C597 /* Build configuration list for PBXNativeTarget "Pods-SampleTests" */;
-			buildPhases = (
-				FF797292EC76866794C0F494 /* Sources */,
-				F8D75AFA0768C6485E481DCC /* Frameworks */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-				2F71A0DE8BA088072D8B887E /* PBXTargetDependency */,
-				AFA971D25CFDF4C28385612C /* PBXTargetDependency */,
-				568E4ABDC38F5F427A36C9E5 /* PBXTargetDependency */,
-				F1EB91E67CDC629E06799E1D /* PBXTargetDependency */,
-				A7DC103026C61CB2427BD186 /* PBXTargetDependency */,
-			);
-			name = "Pods-SampleTests";
-			productName = "Pods-SampleTests";
-			productReference = 58D723D72E72DDD09A8E9C2F /* libPods-SampleTests.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		CE276871B00BBAE7665C080B /* Pods-RemoteTest */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = E8EA7009814584C2A03AE0BA /* Build configuration list for PBXNativeTarget "Pods-RemoteTest" */;
-			buildPhases = (
-				813DA4726C952CF6950A8FA9 /* Sources */,
-				302811D97B7D580C18D502C6 /* Frameworks */,
-				111F79E2B0A0D2FF68B63896 /* Headers */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-				CEF98682DA696271DB391A4B /* PBXTargetDependency */,
-			);
-			name = "Pods-RemoteTest";
-			productName = "Pods-RemoteTest";
-			productReference = 37B92D471F75BCA5A708C58A /* libPods-RemoteTest.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		CF93943E13021BAE4F05050B /* Pods-SampleTests-RemoteTest */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = 97FE078069898BAE0B100765 /* Build configuration list for PBXNativeTarget "Pods-SampleTests-RemoteTest" */;
-			buildPhases = (
-				084B0F005668D36E9ED1A34D /* Sources */,
-				E83956D8AA88EFBFF0B0FCFD /* Frameworks */,
-				CAFBDEA34B4F7AE14D2CBB75 /* Headers */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-				8D19ECC4D1935A73CE23E5D1 /* PBXTargetDependency */,
-			);
-			name = "Pods-SampleTests-RemoteTest";
-			productName = "Pods-SampleTests-RemoteTest";
-			productReference = BE7E9B88B929CDC8C90DAA05 /* libPods-SampleTests-RemoteTest.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		D9915B561CA6EC38C838676C /* Pods-SampleTests-gRPC */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = 5BB0AE93F53F9D9D6542FE7E /* Build configuration list for PBXNativeTarget "Pods-SampleTests-gRPC" */;
-			buildPhases = (
-				B3C0F543F9B9980DB49A24CE /* Sources */,
-				9E238B9325AB2983D6AD95E2 /* Frameworks */,
-				36B83927738461D4756D3286 /* Headers */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-				0BE958174AFEE075839FFE3D /* PBXTargetDependency */,
-				DC8ADAEC185870C7F654DA10 /* PBXTargetDependency */,
-			);
-			name = "Pods-SampleTests-gRPC";
-			productName = "Pods-SampleTests-gRPC";
-			productReference = B672404C4B9A9AA68D52177B /* libPods-SampleTests-gRPC.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		E271A481FA821F450C0B3F15 /* Pods-gRPC */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = E1A7F1B12E03E37CFABCAE30 /* Build configuration list for PBXNativeTarget "Pods-gRPC" */;
-			buildPhases = (
-				D6BF490770C3E0A39870BF67 /* Sources */,
-				AA4FB3D0732B054CDC58F3BB /* Frameworks */,
-				8B0F1A0773E5A00AF28B9148 /* Headers */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-				A2062E049D31E34A9E898AE4 /* PBXTargetDependency */,
-				16B02BAB2E03B69D1187E641 /* PBXTargetDependency */,
-			);
-			name = "Pods-gRPC";
-			productName = "Pods-gRPC";
-			productReference = 3BE5F8CA5B8ADB669194F165 /* libPods-gRPC.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		E614EF3DC27A5A1637C70A47 /* Pods-Sample-Route_guide */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = 1A399C4C2B0D1A27E94B9046 /* Build configuration list for PBXNativeTarget "Pods-Sample-Route_guide" */;
-			buildPhases = (
-				08CE3E3D3D7C68479B1F8F1A /* Sources */,
-				AD8D2C416B46F67D8B9E02F4 /* Frameworks */,
-				D8B6197057DF608617BE5AE0 /* Headers */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-				5DD659F6E4C952EF058120EA /* PBXTargetDependency */,
-			);
-			name = "Pods-Sample-Route_guide";
-			productName = "Pods-Sample-Route_guide";
-			productReference = F40B226C510215D623E7E912 /* libPods-Sample-Route_guide.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		E8A038AFC52B83C6CEEF1A60 /* Pods-Sample-ProtocolBuffers */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = 70DD77F43CF2F2290795FDB4 /* Build configuration list for PBXNativeTarget "Pods-Sample-ProtocolBuffers" */;
-			buildPhases = (
-				B1D84B695DF2150EA530A2E9 /* Sources */,
-				39892D4D2A0C56A72BA170AC /* Frameworks */,
-				9815606CA284D785A725E6BB /* Headers */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-			);
-			name = "Pods-Sample-ProtocolBuffers";
-			productName = "Pods-Sample-ProtocolBuffers";
-			productReference = B5A7D705B7743E5EB37EEF52 /* libPods-Sample-ProtocolBuffers.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-		F31018D90D5B44888895ACFE /* Pods */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = 6137D4F65352176F3796325E /* Build configuration list for PBXNativeTarget "Pods" */;
-			buildPhases = (
-				01B349B07A90986CBA7118C0 /* Sources */,
-				370A590844038DB8D305C083 /* Frameworks */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-				4DEC9A31D420B8B001BED74B /* PBXTargetDependency */,
-				092CABFA3458A5F84D7EFDBA /* PBXTargetDependency */,
-				FB3966206666C662BFB08151 /* PBXTargetDependency */,
-				61D992AE1BC37C84AB11B802 /* PBXTargetDependency */,
-				ED34561A6DFE13B64AB81F0B /* PBXTargetDependency */,
-			);
-			name = Pods;
-			productName = Pods;
-			productReference = 0732D27AEA18C3BE65B633D7 /* libPods.a */;
-			productType = "com.apple.product-type.library.static";
-		};
-/* End PBXNativeTarget section */
-
-/* Begin PBXProject section */
-		72D77CB6BAE984ACEF1E2DC2 /* Project object */ = {
-			isa = PBXProject;
-			attributes = {
-				LastUpgradeCheck = 0510;
-			};
-			buildConfigurationList = D8633B0A05C85D062CF74659 /* Build configuration list for PBXProject "Pods" */;
-			compatibilityVersion = "Xcode 3.2";
-			developmentRegion = English;
-			hasScannedForEncodings = 0;
-			knownRegions = (
-				en,
-			);
-			mainGroup = 721EFE28F4826EB17291E116;
-			productRefGroup = EB4EE50A9FE1415729F57788 /* Products */;
-			projectDirPath = "";
-			projectRoot = "";
-			targets = (
-				F31018D90D5B44888895ACFE /* Pods */,
-				A2C0DFC30E8922D73DFA6E7A /* Pods-OpenSSL */,
-				01C449C242E3ED554D84A611 /* Pods-ProtocolBuffers */,
-				CE276871B00BBAE7665C080B /* Pods-RemoteTest */,
-				CAE7A7263529BD28E61F22CE /* Pods-Route_guide */,
-				BB07BA6D2BC4D5C55865E841 /* Pods-Sample */,
-				5A31380749D2D986F74F1554 /* Pods-Sample-OpenSSL */,
-				E8A038AFC52B83C6CEEF1A60 /* Pods-Sample-ProtocolBuffers */,
-				9A927A1CECCE267CF1C4BC39 /* Pods-Sample-RemoteTest */,
-				E614EF3DC27A5A1637C70A47 /* Pods-Sample-Route_guide */,
-				24224A9E6165CF2833705F00 /* Pods-Sample-gRPC */,
-				161C88F48197C52433106937 /* Pods-Sample-gRPC-gRPC */,
-				CD1F58AC957B28B69E61EE84 /* Pods-SampleTests */,
-				455BA4912B88B1766CAFBBA5 /* Pods-SampleTests-OpenSSL */,
-				AEB2043448E5878CC3D6D248 /* Pods-SampleTests-ProtocolBuffers */,
-				CF93943E13021BAE4F05050B /* Pods-SampleTests-RemoteTest */,
-				0A154C8B54E34A8FCDA1AD3F /* Pods-SampleTests-Route_guide */,
-				D9915B561CA6EC38C838676C /* Pods-SampleTests-gRPC */,
-				47DE3004CBE5C02E04F68945 /* Pods-SampleTests-gRPC-gRPC */,
-				E271A481FA821F450C0B3F15 /* Pods-gRPC */,
-				52849F89804FD62CDF39A502 /* Pods-gRPC-gRPC */,
-			);
-		};
-/* End PBXProject section */
-
-/* Begin PBXResourcesBuildPhase section */
-		AD3DEEF965003762E5BAA698 /* Resources */ = {
-			isa = PBXResourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				64436C3EC75663B0B7D50E39 /* roots.pem in Resources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		BCFFD0A592BF9D20EA2FFDC2 /* Resources */ = {
-			isa = PBXResourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				44FAF07811DA602BF717AA55 /* roots.pem in Resources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		D6FF4B8A50F68505EA74878B /* Resources */ = {
-			isa = PBXResourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				7A435236FAA40C3CF4E650A7 /* roots.pem in Resources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-/* End PBXResourcesBuildPhase section */
-
-/* Begin PBXSourcesBuildPhase section */
-		01B349B07A90986CBA7118C0 /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				286C4521366DF382491531AA /* Pods-dummy.m in Sources */,
-				5E5D54CB1AE8224000BF0FA2 /* GRPCWrappedCall.m in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		084B0F005668D36E9ED1A34D /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				AF99D06977F633A6766500E5 /* Empty.pb.m in Sources */,
-				43535D94F4F40F4AC4373A36 /* Messages.pb.m in Sources */,
-				3783CDA8D9A78218EAF3C31A /* Pods-SampleTests-RemoteTest-dummy.m in Sources */,
-				632AF8F2EA328F465302A1C3 /* Test.pb.m in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		08CE3E3D3D7C68479B1F8F1A /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				CD175CC894A2CD2AA0B1E02F /* Pods-Sample-Route_guide-dummy.m in Sources */,
-				83CE5F27A9533D1B9F132C84 /* Route_guide.pb.m in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		0F4A1CC26ABBBC28CF405F48 /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				54E26147C763862F799AEBB7 /* Pods-Sample-OpenSSL-dummy.m in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		1171D0CC44B2B9BE330D97E4 /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				A0AE292E9DDF9891FEF6BBF9 /* Pods-OpenSSL-dummy.m in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		17290C20C1117E763E1503D9 /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		18963E71B28CD7A13006634C /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				D65ED6D74A684C62A43D2E41 /* Empty.pb.m in Sources */,
-				EF63CB8BB08EC7DF2C8935D7 /* Messages.pb.m in Sources */,
-				9C5AE14A1751E3E213EB1910 /* Pods-Sample-RemoteTest-dummy.m in Sources */,
-				29DE72203D0319B1E0C96371 /* Test.pb.m in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		43073832236BF6D0C731D587 /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				726C21A5D55C9502FBB219A0 /* Pods-SampleTests-Route_guide-dummy.m in Sources */,
-				92EFFD393C4D3F797A9386E7 /* Route_guide.pb.m in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		4CE20F0FA4DC89382E272E4C /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				76C12606D04D021EF8667882 /* GRPCCall.m in Sources */,
-				55B48594A4EB4732AB1EDC5D /* GRPCChannel.m in Sources */,
-				030A4A3B82BDB18CF0C2C8D4 /* GRPCCompletionQueue.m in Sources */,
-				A37C6ABC7B7DFD6954E86139 /* GRPCDelegateWrapper.m in Sources */,
-				C5D1EABCF905D4F88A8CBAAA /* GRPCMethodName+HTTP2Encoding.m in Sources */,
-				8ECE8689819A707F71AC50EA /* GRPCMethodName.m in Sources */,
-				F73CDC989A6F0DF22CF96C98 /* GRPCSecureChannel.m in Sources */,
-				CBC4D52B0EFEC97ADF234640 /* GRPCUnsecuredChannel.m in Sources */,
-				10F4817FF40180F6D431FF77 /* GRXImmediateWriter.m in Sources */,
-				25315E4CF2BA3B5CB99E9755 /* GRXMappingWriter.m in Sources */,
-				69F749FB140675AB5267CD86 /* GRXNSBlockEnumerator.m in Sources */,
-				00FB26BA4B87CEA36AFCB197 /* GRXNSFastEnumerator.m in Sources */,
-				66E084446D410CBE4517EB8C /* GRXNSScalarEnumerator.m in Sources */,
-				49F722213E59E278287D7FE8 /* GRXWriteable.m in Sources */,
-				AC401789901A6DBE5D1F6ECF /* GRXWriter+Immediate.m in Sources */,
-				DE3D8AC6311C208130D9B14D /* GRXWriter+Transformations.m in Sources */,
-				FA9C12071BF7ED7D7FD9D6F6 /* GRXWriter.m in Sources */,
-				3FB0BA773DA42CEF7ECC2BD0 /* NSData+GRPC.m in Sources */,
-				18DBCDB7731DBBB4FA59FF26 /* NSDictionary+GRPC.m in Sources */,
-				782972AF7F3F35A4A5E38A83 /* NSEnumerator+GRXUtil.m in Sources */,
-				BD3219C53E38771818523D76 /* NSError+GRPC.m in Sources */,
-				9B0BF976683EAF1E9740A3FF /* Pods-Sample-gRPC-dummy.m in Sources */,
-				2A95B8FED6DE13B6311575ED /* alarm.c in Sources */,
-				000F081EDA8A6B9DAC27F12C /* alarm_heap.c in Sources */,
-				F4B87AD47A83E6764C7DA6A1 /* algorithm.c in Sources */,
-				502C612FD7265131E82E46C4 /* alloc.c in Sources */,
-				0418BF437466542CFFB050D4 /* alpn.c in Sources */,
-				2728A2A1BB3890DB7406D829 /* auth.c in Sources */,
-				A32D9A1B7C697CB47682CC31 /* base64.c in Sources */,
-				B4B659B8214C93539E5DE188 /* bin_encoder.c in Sources */,
-				DA09971C0889964979D7D61E /* byte_buffer.c in Sources */,
-				5DBC95A4D0205848FD268121 /* byte_buffer_queue.c in Sources */,
-				C4186B7A98D380CF6DC29D55 /* byte_buffer_reader.c in Sources */,
-				51651074F1BB3FFB4FE32017 /* call.c in Sources */,
-				6A7072AF238F5F67B6F292B2 /* call_details.c in Sources */,
-				9D7964D086F7A293B1A676AC /* call_log_batch.c in Sources */,
-				F4ED6BD1572C081CAC06B113 /* call_op_string.c in Sources */,
-				5A46D73D4573D1ECA7019182 /* cancellable.c in Sources */,
-				E658D909485DC0886C867B35 /* census_filter.c in Sources */,
-				CEA9E99190C634F7EFCA16BD /* census_init.c in Sources */,
-				C52A3B6BDDCB66672C3A7466 /* census_log.c in Sources */,
-				D536329794DF6373495C4396 /* census_rpc_stats.c in Sources */,
-				3EA1037FA374F88478FB9FD9 /* census_tracing.c in Sources */,
-				E17E16BDDBB6E34840E52EF1 /* channel.c in Sources */,
-				9CCCF4259F5DA6354A279009 /* channel_args.c in Sources */,
-				BD7C0F7174EB5951677EFB05 /* channel_create.c in Sources */,
-				4BE479A6F7221E7DC48B4283 /* channel_stack.c in Sources */,
-				98800141D2282CE89CBFC893 /* child_channel.c in Sources */,
-				29E150BFC5FE38E7328D554C /* chttp2_transport.c in Sources */,
-				DAC2DDA4CE706558FA2118E2 /* client.c in Sources */,
-				8DFA633ADEFE3B788B81D22F /* client_channel.c in Sources */,
-				AC59DB6557B83B983EB7B5AE /* client_setup.c in Sources */,
-				03FA0C6D176D14D03399C9ED /* cmdline.c in Sources */,
-				14D704A1480E6608209F59B5 /* completion_queue.c in Sources */,
-				F397420FB1A4B01639F55D75 /* connected_channel.c in Sources */,
-				72F89D474532987A2F12A84C /* cpu_iphone.c in Sources */,
-				5E1B11F6AE12656C4465B408 /* cpu_linux.c in Sources */,
-				37B8F1823D0607F065EFDC1B /* cpu_posix.c in Sources */,
-				3335F90D8C95C592F6094A42 /* cpu_windows.c in Sources */,
-				EC6CDF21F2C5C2CF2FFFE8F6 /* credentials.c in Sources */,
-				D6DB8B4AF972A82591ADA52C /* credentials_posix.c in Sources */,
-				46CA782356458C2D59307A47 /* credentials_win32.c in Sources */,
-				E6757C7D1775995AC1A7F81B /* endpoint.c in Sources */,
-				7028B8A66CE55A1E975C342A /* endpoint_pair_posix.c in Sources */,
-				17EC3A066E22AF6FE5080451 /* endpoint_pair_windows.c in Sources */,
-				DF14B1E8F84C288A3AA437C3 /* env_linux.c in Sources */,
-				E19D6A0C37190FF60541DC29 /* env_posix.c in Sources */,
-				00D28F1702ADF048A74E52C3 /* env_win32.c in Sources */,
-				89BCB8FDFE5090254167C008 /* event_string.c in Sources */,
-				8A382593654D4B140895FBF1 /* fake_transport_security.c in Sources */,
-				45F4358717B946675BB7FAEA /* fd_posix.c in Sources */,
-				A072DDCE8AC2C297CC3175F8 /* file.c in Sources */,
-				B95DBE4353A105B062BDA9BC /* file_posix.c in Sources */,
-				50CBF29F5FE688CC097C8789 /* file_win32.c in Sources */,
-				B39706BD76A906EE0C6EF81A /* format_request.c in Sources */,
-				05774EE6D56D312D02AD2E07 /* frame_data.c in Sources */,
-				903CDC70E73A173EC65C0778 /* frame_goaway.c in Sources */,
-				9743A0C323C93DADA6C5CDFE /* frame_ping.c in Sources */,
-				4C17A682952AE414E953FFF7 /* frame_rst_stream.c in Sources */,
-				216D221B184C6ACF277688FB /* frame_settings.c in Sources */,
-				0D3F8CEFBF93762415EAEBEC /* frame_window_update.c in Sources */,
-				708A2D94B5B95A5E9D69E600 /* gen_hpack_tables.c in Sources */,
-				AD630C49F700F35A9AAF60CA /* google_default_credentials.c in Sources */,
-				E894D95897BE9432148DD407 /* hash_table.c in Sources */,
-				B4B8923590A0BCFFD162A12A /* histogram.c in Sources */,
-				B3EFF455070D8196B381C0A9 /* host_port.c in Sources */,
-				6DD5B76144B2D32037D66D1E /* hpack_parser.c in Sources */,
-				41DD74930FDB3638AE68F05E /* hpack_table.c in Sources */,
-				71BB603FD6B1EBF688F099B7 /* http_client_filter.c in Sources */,
-				0403A23F3B513D898015F4CB /* http_filter.c in Sources */,
-				0E824499D11701BC1F14A180 /* http_server_filter.c in Sources */,
-				AC8C7A160AC69AC643BE4187 /* httpcli.c in Sources */,
-				334E8FEC48CC5B03AD348F8E /* httpcli_security_connector.c in Sources */,
-				85FA0B896484C1EB1BE453C5 /* huffsyms.c in Sources */,
-				5370783799361A2E6CD1CCBE /* init.c in Sources */,
-				9BB8B575C045547B297F1F5D /* init_secure.c in Sources */,
-				B6D29330D1891A7F0DF05B2A /* init_unsecure.c in Sources */,
-				FE3A6E10B1339A609B9B4165 /* iocp_windows.c in Sources */,
-				B6FC0EB26B3472894648A09D /* iomgr.c in Sources */,
-				CEA130A8478958425419B8AF /* iomgr_posix.c in Sources */,
-				4DA392AE6DB359A50D5EAB0D /* iomgr_windows.c in Sources */,
-				46B4B76ACFB8BD4FC0403381 /* json.c in Sources */,
-				C2E029BFA79B65E19DDE60D2 /* json_reader.c in Sources */,
-				71868CE61CB53A0A764AF928 /* json_string.c in Sources */,
-				345F7CB0165975CA109B7D36 /* json_token.c in Sources */,
-				4316E8A25B66946843DBD0F2 /* json_writer.c in Sources */,
-				2D85C7E44AB27F1A09CB502D /* lame_client.c in Sources */,
-				2069B59F205B4ABB80DBC812 /* log.c in Sources */,
-				6B50DF8EA851F4C6247CBE1A /* log_android.c in Sources */,
-				84BCC2CF676675BE8C014B91 /* log_linux.c in Sources */,
-				ED82757251D748B933C01DAA /* log_posix.c in Sources */,
-				6FA9341E984DFDD79EF46F90 /* log_win32.c in Sources */,
-				A128A7235108C7D6368C9AC4 /* message_compress.c in Sources */,
-				9F485068F9F58BBE28331A5D /* metadata.c in Sources */,
-				1C0C47E075538BCC3EFE891D /* metadata_array.c in Sources */,
-				AF95A5F4A1746FEF7584D74F /* metadata_buffer.c in Sources */,
-				C4B0C922E1828D0BFF950B72 /* murmur_hash.c in Sources */,
-				266E813ABC315DF95745FFC9 /* noop_filter.c in Sources */,
-				7D0C0BD80454961A6477B91B /* parser.c in Sources */,
-				E3F4B9B83E0D3C6637BA392C /* pollset_kick.c in Sources */,
-				DF09456244FE00A0CB2FB410 /* pollset_multipoller_with_epoll.c in Sources */,
-				3849EEFB0DF56050E01EAE71 /* pollset_multipoller_with_poll_posix.c in Sources */,
-				AEF58E1847584780830E7E1A /* pollset_posix.c in Sources */,
-				5B5C39DF5D9EDE5185EF1CE7 /* pollset_windows.c in Sources */,
-				957CAFD046FFE6DFD5E10439 /* resolve_address_posix.c in Sources */,
-				232210BEB45A519F3DDEADA6 /* resolve_address_windows.c in Sources */,
-				58C7ADC8DE8AE32ADA264F88 /* secure_channel_create.c in Sources */,
-				8A01A3D08B77D0A159F7C270 /* secure_endpoint.c in Sources */,
-				0340C3F1E4FBFDF1DBD811A2 /* secure_transport_setup.c in Sources */,
-				4AB249EEC6EAEE22BE3CABEB /* security_connector.c in Sources */,
-				C32AD08C8521A378E8C320CE /* server.c in Sources */,
-				93D3CF2B8101480C45AAA51F /* server_chttp2.c in Sources */,
-				13A879263D6E22BFCC0A1AB1 /* server_create.c in Sources */,
-				53704DB8E70C41056EDB0A0A /* server_secure_chttp2.c in Sources */,
-				D06C6B856E4632C990D53EC6 /* slice.c in Sources */,
-				DB3DE5323A7AEF14407D2E24 /* slice_buffer.c in Sources */,
-				CCF37B0323CA91C661E3C323 /* sockaddr_utils.c in Sources */,
-				15DBD9F76ED9EBAAA8DF8122 /* socket_utils_common_posix.c in Sources */,
-				A994EA1D162C54ADB957C6A3 /* socket_utils_linux.c in Sources */,
-				FD6868CF357F236011591B7C /* socket_utils_posix.c in Sources */,
-				F91CCFB28E1CFBD393D71762 /* socket_windows.c in Sources */,
-				A56D76711D62B6AD6A419B16 /* ssl_transport_security.c in Sources */,
-				5E77604C969DAC886A47B8D0 /* status_conversion.c in Sources */,
-				97115900FA721F4DBE71087F /* stream_encoder.c in Sources */,
-				D60BC7B5CB01559C6182D1A8 /* stream_map.c in Sources */,
-				A40B5C1910F819B5C76A3496 /* stream_op.c in Sources */,
-				195CDA772DC8311DDE60762A /* string.c in Sources */,
-				8D54635FC41FC6C1010CBE78 /* string_posix.c in Sources */,
-				A126EEB0D02F33039C83F43B /* string_win32.c in Sources */,
-				01453026532B50E4BA6A30A2 /* surface_trace.c in Sources */,
-				DA6078CF801D2D98C9838CC2 /* sync.c in Sources */,
-				297E7A9C1AC6AA6183BFA636 /* sync_posix.c in Sources */,
-				2ECD94D88B05DE05A06B6BBF /* sync_win32.c in Sources */,
-				0A08D34534875F37EC606F95 /* tcp_client_posix.c in Sources */,
-				BC5AE9C28D98402C8FECE36F /* tcp_client_windows.c in Sources */,
-				53792F52CFB4F6B9C94014E9 /* tcp_posix.c in Sources */,
-				92ED9C3E1E859C553006EF8E /* tcp_server_posix.c in Sources */,
-				24C202602A3A83EDDFD3004E /* tcp_server_windows.c in Sources */,
-				5BCAA2EB13B1357AE94520CA /* tcp_windows.c in Sources */,
-				273CCC1FB3BF1CEB8F931D23 /* thd.c in Sources */,
-				05F932AE0DC3097A4F4CA3A6 /* thd_posix.c in Sources */,
-				B1B5814F7AA7943C54C34139 /* thd_win32.c in Sources */,
-				E5DA29635551EB1498F0D3B1 /* time.c in Sources */,
-				F119BC90F1526D007B4EFB2A /* time_averaged_stats.c in Sources */,
-				FB71F7232E66495B08C78743 /* time_posix.c in Sources */,
-				A4EB19F67AF53E1FD7AD8A96 /* time_win32.c in Sources */,
-				1208CEE4DE05FCDDF24C4531 /* timeout_encoding.c in Sources */,
-				AE6B5A14971F1B75857413BC /* timers.c in Sources */,
-				0CC8A5D54E5F55996711737B /* trace.c in Sources */,
-				901A3CB3025F5E0A9EA637B4 /* transport.c in Sources */,
-				BBC86B55963026C34EF87B1C /* transport_security.c in Sources */,
-				5C3F051AD2DBD4891F9BBD8E /* varint.c in Sources */,
-				86108ECC5F31DDD28A97804F /* wakeup_fd_eventfd.c in Sources */,
-				20B807B199F7D5823BDA0B84 /* wakeup_fd_nospecial.c in Sources */,
-				68BEE189722920A059304A94 /* wakeup_fd_pipe.c in Sources */,
-				D32C57166B6F1D26F4E18911 /* wakeup_fd_posix.c in Sources */,
-				553F5945A9A7656E4B4233D9 /* window_stats.c in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		5D02A06EA975A5AC4867C0BA /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		813DA4726C952CF6950A8FA9 /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				6E427B93E5DDB90F81E5AF1E /* Empty.pb.m in Sources */,
-				E0A8E63F4786E71191FAFECC /* Messages.pb.m in Sources */,
-				6CE4BDC94C6A749E45166E83 /* Pods-RemoteTest-dummy.m in Sources */,
-				0BBA6B28370C3EE317E3872B /* Test.pb.m in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		9EFFD99593EC0894E9BD195B /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				665004BDC08181FF0A5E87A3 /* Pods-SampleTests-OpenSSL-dummy.m in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		B1D84B695DF2150EA530A2E9 /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				7294DE1ED74E07C393514D59 /* AbstractMessage.m in Sources */,
-				3571E141DD3A26653229E617 /* AbstractMessageBuilder.m in Sources */,
-				EDA212E6F09692071A5C7D3F /* CodedInputStream.m in Sources */,
-				EF7642DAA8BEA8242AE57A4D /* CodedOutputStream.m in Sources */,
-				EDD9DC5953D8607CCC5DAA20 /* ConcreteExtensionField.m in Sources */,
-				2698FA43C48F0B033FA48BC1 /* Descriptor.pb.m in Sources */,
-				7C4138C23B090DE729A91757 /* ExtendableMessage.m in Sources */,
-				09EB9D7E1B87851D881F4EF2 /* ExtendableMessageBuilder.m in Sources */,
-				74BC45DE6A0426FDBA98A1F8 /* ExtensionRegistry.m in Sources */,
-				EB207A07840F0D787DE9574D /* Field.m in Sources */,
-				A0BF2C4EF0F229456814D675 /* GeneratedMessage.m in Sources */,
-				73D29B707B9E6705C56C058B /* GeneratedMessageBuilder.m in Sources */,
-				B68FDD42845835C540113469 /* MutableExtensionRegistry.m in Sources */,
-				3049EC70C084E2E2D05AD0E5 /* MutableField.m in Sources */,
-				33C755580647C7175E4FCE92 /* ObjectivecDescriptor.pb.m in Sources */,
-				DA99D1E5A271CA33406CBEE1 /* PBArray.m in Sources */,
-				793479DDFF81E790DBD1DABB /* Pods-Sample-ProtocolBuffers-dummy.m in Sources */,
-				48388DE1C2BFA8533856DCED /* RingBuffer.m in Sources */,
-				FD7C275D23C2572A00EA5DA7 /* TextFormat.m in Sources */,
-				48042C4757856B6C46DD812F /* UnknownFieldSet.m in Sources */,
-				2D7F540EEED5ADF7AC4C4BC0 /* UnknownFieldSetBuilder.m in Sources */,
-				124B65D3FA76966DC9398C5B /* Utilities.m in Sources */,
-				26A952BF74CE975BBC1033B2 /* WireFormat.m in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		B3C0F543F9B9980DB49A24CE /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				D401B7FD137FDFA051F4F2F9 /* GRPCCall.m in Sources */,
-				E3C87E6747A79CB785B0B34A /* GRPCChannel.m in Sources */,
-				204339AB665412F85A4787AF /* GRPCCompletionQueue.m in Sources */,
-				0FE3044E06C7C0A6B5B8FB9E /* GRPCDelegateWrapper.m in Sources */,
-				04898971704A12115B6EE977 /* GRPCMethodName+HTTP2Encoding.m in Sources */,
-				925D5494172C21FEA23C942C /* GRPCMethodName.m in Sources */,
-				537F000120177BDB37CC638D /* GRPCSecureChannel.m in Sources */,
-				0ABF0E51A940D3FE0B4201FF /* GRPCUnsecuredChannel.m in Sources */,
-				0C94CFB2D7CBF6A8469CB3D7 /* GRXImmediateWriter.m in Sources */,
-				C2AF6066881D7501AC09C32E /* GRXMappingWriter.m in Sources */,
-				24F6EDFBC4E236068E8BB5E0 /* GRXNSBlockEnumerator.m in Sources */,
-				4E2B88B2DC4531B53D1E359E /* GRXNSFastEnumerator.m in Sources */,
-				92444EC7E7F2E20E2133E1CD /* GRXNSScalarEnumerator.m in Sources */,
-				165AC03BF20B7BE4A4C7F6D8 /* GRXWriteable.m in Sources */,
-				B046DFF0E470B2BC880ACC6A /* GRXWriter+Immediate.m in Sources */,
-				7057162B64833612474041FF /* GRXWriter+Transformations.m in Sources */,
-				375848F3FF595BE6ABB941B9 /* GRXWriter.m in Sources */,
-				241EC8E9265E0B6F0290D3FD /* NSData+GRPC.m in Sources */,
-				362192C412FEFBD7AE93C813 /* NSDictionary+GRPC.m in Sources */,
-				23E669647B88CA73A60CC279 /* NSEnumerator+GRXUtil.m in Sources */,
-				5C4487D4AC96D28F4FC7A0CC /* NSError+GRPC.m in Sources */,
-				E7025964197E9644CB0CDA64 /* Pods-SampleTests-gRPC-dummy.m in Sources */,
-				DDA860F2FF195D034E80398A /* alarm.c in Sources */,
-				63B56B8F51E813E9B52FA0A6 /* alarm_heap.c in Sources */,
-				F353303E37ED91D90DFEC071 /* algorithm.c in Sources */,
-				CA1427821548014AAAD5E67A /* alloc.c in Sources */,
-				08E66FA52DC0E3E558859380 /* alpn.c in Sources */,
-				5F19FF2E515C9F28074AFFED /* auth.c in Sources */,
-				C5214A441F79CB09FE2601C3 /* base64.c in Sources */,
-				34ACFEBE3A7A3B00A8795923 /* bin_encoder.c in Sources */,
-				1D582A253FAABDCBA4C91B7D /* byte_buffer.c in Sources */,
-				130ECAE2C036E7FB6DC002C3 /* byte_buffer_queue.c in Sources */,
-				324A98AF3B83A4370FAC4AE3 /* byte_buffer_reader.c in Sources */,
-				E483C93E854A8E7469943A50 /* call.c in Sources */,
-				B44A8C04EBB300616BE6B3EC /* call_details.c in Sources */,
-				D6DED39816867A184CC0ABF1 /* call_log_batch.c in Sources */,
-				F42DD8436FC7A36879662366 /* call_op_string.c in Sources */,
-				EA31EDB87882D38E6D01E4B0 /* cancellable.c in Sources */,
-				F1E15846169DE757D3B4F90D /* census_filter.c in Sources */,
-				ADFADA47B1A7E449BE86D900 /* census_init.c in Sources */,
-				B1BA2D993BC0C8A9C6765C88 /* census_log.c in Sources */,
-				C5E07FC43F3F56D86E7F2287 /* census_rpc_stats.c in Sources */,
-				3A200C6433CA44CB8DBAB38F /* census_tracing.c in Sources */,
-				8EC0A90BAB3F7310A199E7B8 /* channel.c in Sources */,
-				BB79F1F39240326B23E42F14 /* channel_args.c in Sources */,
-				7CE12C0725708432DF8DDCA9 /* channel_create.c in Sources */,
-				310481489CC8120E570150DC /* channel_stack.c in Sources */,
-				F7A0A889E38166794356693F /* child_channel.c in Sources */,
-				ED2132EC275D58DDE58636AE /* chttp2_transport.c in Sources */,
-				C0ABB6CBA521BD31FFFB89B7 /* client.c in Sources */,
-				6F2201E5FC1905F6E33D4ADA /* client_channel.c in Sources */,
-				F86FED1901AF50700516EC81 /* client_setup.c in Sources */,
-				AE8479C37D9A17BAFFD522CC /* cmdline.c in Sources */,
-				1DF0844BE0484CF9EE1FD398 /* completion_queue.c in Sources */,
-				F7168500BF9500A7FB3F67E1 /* connected_channel.c in Sources */,
-				5F064E4CF19AC27AC752DBCF /* cpu_iphone.c in Sources */,
-				F85D03CCB34504E300C34001 /* cpu_linux.c in Sources */,
-				AA6CA9EB45E6B3C0CE12F6D4 /* cpu_posix.c in Sources */,
-				D2BCE53D8FE747AD8D95D22B /* cpu_windows.c in Sources */,
-				D99B2868A02B27C368AADE5B /* credentials.c in Sources */,
-				20A11ECC8F5E72B30EA88C54 /* credentials_posix.c in Sources */,
-				3294A89EDD644C584EAA4FB0 /* credentials_win32.c in Sources */,
-				4CBD8BD42997B6A8BFD6B845 /* endpoint.c in Sources */,
-				37C0D0D8316BB20A3C511060 /* endpoint_pair_posix.c in Sources */,
-				B9527174E6C367A7442503DC /* endpoint_pair_windows.c in Sources */,
-				7355A0EF168655B3D169677A /* env_linux.c in Sources */,
-				C7FF115D57D8DF124E15E0AB /* env_posix.c in Sources */,
-				C44A69521783D27A39AB2C53 /* env_win32.c in Sources */,
-				AE69F28B5DD7489B55347A73 /* event_string.c in Sources */,
-				14B0EE24FCF72513655F7A4A /* fake_transport_security.c in Sources */,
-				76BBCD07DF0529D3BF7ECE3D /* fd_posix.c in Sources */,
-				7814EA18A20FFF5285C56B45 /* file.c in Sources */,
-				0681BA8F537F519524F0A0F6 /* file_posix.c in Sources */,
-				44C852304BA090BCF3E000AA /* file_win32.c in Sources */,
-				0759456E225F0FE5E22DE60D /* format_request.c in Sources */,
-				755270F9A57F0C2FBDC05382 /* frame_data.c in Sources */,
-				4D9B402D58E3F8E29536723B /* frame_goaway.c in Sources */,
-				8C38096C3265C4945E741752 /* frame_ping.c in Sources */,
-				2A05B02150ADAE04C765B367 /* frame_rst_stream.c in Sources */,
-				242F0083FA23A4A065448C2A /* frame_settings.c in Sources */,
-				84DF4F5B936945A23B92C0A1 /* frame_window_update.c in Sources */,
-				44187F7A138646619F49D845 /* gen_hpack_tables.c in Sources */,
-				1BAFB9C2AA230C0612C3BB74 /* google_default_credentials.c in Sources */,
-				E4A6965C52BED798DE36A3F3 /* hash_table.c in Sources */,
-				B0861E138FB79939F34F2DC1 /* histogram.c in Sources */,
-				814E54868B1685C55618BB55 /* host_port.c in Sources */,
-				9259380D5B74DB52F409F1E7 /* hpack_parser.c in Sources */,
-				1701D3AE12A130A86B639A6B /* hpack_table.c in Sources */,
-				1BC5B46771B11CFCDC357E7C /* http_client_filter.c in Sources */,
-				68AFD9F87F86A7588969B836 /* http_filter.c in Sources */,
-				E825E10093862AF249C08529 /* http_server_filter.c in Sources */,
-				E194212152ACA5B06BD1CCC4 /* httpcli.c in Sources */,
-				3AAA75DEE27C03B85A1C2E63 /* httpcli_security_connector.c in Sources */,
-				26FD2233DFCAAFC84C34C39F /* huffsyms.c in Sources */,
-				9BA2E6C521285A6B5A5A5C5E /* init.c in Sources */,
-				CDCFF7341E745AABC212D0E4 /* init_secure.c in Sources */,
-				65CFBA550D533723A14702E2 /* init_unsecure.c in Sources */,
-				4FE91C9A0A716B02E5188ADD /* iocp_windows.c in Sources */,
-				C2AC16BDACE304E182775869 /* iomgr.c in Sources */,
-				D88BB4E887C9888234ABECDB /* iomgr_posix.c in Sources */,
-				2D464464872BE79FACA6C945 /* iomgr_windows.c in Sources */,
-				505ECE6DC9220C1D19D44826 /* json.c in Sources */,
-				DF450BABC01912F7CCFC24AA /* json_reader.c in Sources */,
-				23780E1CE756A02375D9E6DE /* json_string.c in Sources */,
-				ACECFBFD7D425DFA26822953 /* json_token.c in Sources */,
-				F28F51130D36F0287029C5EB /* json_writer.c in Sources */,
-				3DE26C4078582B16C0ECF78D /* lame_client.c in Sources */,
-				394B3CF91214332210E65FD2 /* log.c in Sources */,
-				73423563C131297DE60209FE /* log_android.c in Sources */,
-				E8896CD0728993A95826D347 /* log_linux.c in Sources */,
-				CCDFB03DF5AEEFCD741F8C7F /* log_posix.c in Sources */,
-				E5B7D776344AE37C166B00CA /* log_win32.c in Sources */,
-				A2ED2EC21FBDE3466EB474F6 /* message_compress.c in Sources */,
-				B606CFBCCC44A5781BECC0ED /* metadata.c in Sources */,
-				8B6A9A42BA8C759D9F37B87E /* metadata_array.c in Sources */,
-				DBFFCA363EB8A6E5D9B29F0F /* metadata_buffer.c in Sources */,
-				C8F38097704B85A575375DAD /* murmur_hash.c in Sources */,
-				5538310FE89E16F4D1403451 /* noop_filter.c in Sources */,
-				DD6EFE28C40FD50B0AC421F7 /* parser.c in Sources */,
-				DA1DEAA33E9CCAFA8C324613 /* pollset_kick.c in Sources */,
-				7CCD8BFFBAED2CA628776521 /* pollset_multipoller_with_epoll.c in Sources */,
-				F8A0BBB7E98F9ADD8096EEB8 /* pollset_multipoller_with_poll_posix.c in Sources */,
-				E78B751BB17B2F492BCA5B1D /* pollset_posix.c in Sources */,
-				DDFBD5AE2316A187B66BC406 /* pollset_windows.c in Sources */,
-				143911D68A325943077A5F32 /* resolve_address_posix.c in Sources */,
-				30CF3169F6528B9D4904AD32 /* resolve_address_windows.c in Sources */,
-				19BCBB00E219C6FAB35F31D0 /* secure_channel_create.c in Sources */,
-				F901E898EE25C206D3C9D2C8 /* secure_endpoint.c in Sources */,
-				822F538A2840A8AC3DDFBA6B /* secure_transport_setup.c in Sources */,
-				E6B38AEE378FF7CC216D93BC /* security_connector.c in Sources */,
-				91B7A40A14BDCC44B9640E77 /* server.c in Sources */,
-				285AF2EB153F939521583E86 /* server_chttp2.c in Sources */,
-				A8482721FFB301FB48810558 /* server_create.c in Sources */,
-				0291D5E4080E1EE30C0DC26D /* server_secure_chttp2.c in Sources */,
-				7E13FE45D86DD1BFB68D879E /* slice.c in Sources */,
-				689DC3C7D18EF420B853F842 /* slice_buffer.c in Sources */,
-				77075899E620FC555DB747BA /* sockaddr_utils.c in Sources */,
-				F85A7B8E608128554BDBDEA6 /* socket_utils_common_posix.c in Sources */,
-				B3971D6B729C358CDDACC860 /* socket_utils_linux.c in Sources */,
-				E64B43AA09DE7E49CC1CC298 /* socket_utils_posix.c in Sources */,
-				987F177134DA1C540722D918 /* socket_windows.c in Sources */,
-				82469215CEEDA4AB5134B9B4 /* ssl_transport_security.c in Sources */,
-				01B4D9B3531C077C257B5BF2 /* status_conversion.c in Sources */,
-				2CCECA004CE2755B70196DD3 /* stream_encoder.c in Sources */,
-				F6522F3FF5B6AF620895A569 /* stream_map.c in Sources */,
-				FAB120AAA6B50891EC17B452 /* stream_op.c in Sources */,
-				2C2BD47787C960880FDE1B35 /* string.c in Sources */,
-				EBC1C48189C2D6AC69429A45 /* string_posix.c in Sources */,
-				39FFEF1A607CB433D106ECC5 /* string_win32.c in Sources */,
-				2D2CD8F1C181D9F7E6C7B501 /* surface_trace.c in Sources */,
-				40C4DEC2A9FB2E00943B9A11 /* sync.c in Sources */,
-				0341AC33A60734D5C11772AC /* sync_posix.c in Sources */,
-				C9C886C13EFA36DDE417BF7E /* sync_win32.c in Sources */,
-				009D61E96F712A2A7C5D7D72 /* tcp_client_posix.c in Sources */,
-				C6FA5030017D7DD1FC7C77CF /* tcp_client_windows.c in Sources */,
-				AB49185F503640119E276893 /* tcp_posix.c in Sources */,
-				69457F4C04864A9F566987D4 /* tcp_server_posix.c in Sources */,
-				686E2DD2E2B13E3186978874 /* tcp_server_windows.c in Sources */,
-				0851161EA77A8F42AFFB8405 /* tcp_windows.c in Sources */,
-				EC7B4DAFA07DB9C2DFC63658 /* thd.c in Sources */,
-				481F1E0F7C72D68EBBCF8567 /* thd_posix.c in Sources */,
-				9D1B5B14234707624C18545E /* thd_win32.c in Sources */,
-				75935DBB4C25EA3156E1A14B /* time.c in Sources */,
-				49A079D84CE9093B074900BF /* time_averaged_stats.c in Sources */,
-				84F065983DD139791E027442 /* time_posix.c in Sources */,
-				463A89089E888C77633B4BB4 /* time_win32.c in Sources */,
-				7788F36B4C1FBF01B32A7F13 /* timeout_encoding.c in Sources */,
-				F07C8E57F625962A307B1D9E /* timers.c in Sources */,
-				EC9EBE44A28F204ACAECB60E /* trace.c in Sources */,
-				2A4239EF76699C4FA1C3D6C1 /* transport.c in Sources */,
-				B3089BB78BFAFE46908BFE81 /* transport_security.c in Sources */,
-				6D3EFC28331FA343097D609C /* varint.c in Sources */,
-				F8436B61C0B461DD11DF7049 /* wakeup_fd_eventfd.c in Sources */,
-				2DE7E8A10D5B1FC100F5BEA7 /* wakeup_fd_nospecial.c in Sources */,
-				C9709E720038854B53F39C7E /* wakeup_fd_pipe.c in Sources */,
-				098CA5B2E73F70B19DE9D9F9 /* wakeup_fd_posix.c in Sources */,
-				567EA34866C224EDE33A9B2E /* window_stats.c in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		BE742903150180E53322DEF8 /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				BD7B4BA80AD97ECCFF31354A /* AbstractMessage.m in Sources */,
-				8151A31DBB505BD8970B52B0 /* AbstractMessageBuilder.m in Sources */,
-				CEA9637228145F9C89D3B731 /* CodedInputStream.m in Sources */,
-				3B6995A6AB4F935E588A4516 /* CodedOutputStream.m in Sources */,
-				07A1A59BD89B084AA99BDC5E /* ConcreteExtensionField.m in Sources */,
-				7E21FA323CA980BE3B7B597E /* Descriptor.pb.m in Sources */,
-				E09C9309D0055D60CE53A773 /* ExtendableMessage.m in Sources */,
-				08A249157A9A79F96AB7D328 /* ExtendableMessageBuilder.m in Sources */,
-				AD006F52845DCC488FFAF156 /* ExtensionRegistry.m in Sources */,
-				E79278802C2D189DCFBF2FD0 /* Field.m in Sources */,
-				FC7EA70B0C5514CAD72C270C /* GeneratedMessage.m in Sources */,
-				454C2A534A424E0A7B5B1E62 /* GeneratedMessageBuilder.m in Sources */,
-				C37AFDCB35F8822BB9A49074 /* MutableExtensionRegistry.m in Sources */,
-				721562C0BFD0F73601EFA283 /* MutableField.m in Sources */,
-				6D159B0A6EF3487ED054AF68 /* ObjectivecDescriptor.pb.m in Sources */,
-				AC73020110286DB8204D6532 /* PBArray.m in Sources */,
-				30C7B481D7EF5156FF8AD0DA /* Pods-SampleTests-ProtocolBuffers-dummy.m in Sources */,
-				0249D63244951B289231AC6D /* RingBuffer.m in Sources */,
-				34BDBAB7B2C8534D141B2FF5 /* TextFormat.m in Sources */,
-				B746CA7A1467B3C09AB0C31D /* UnknownFieldSet.m in Sources */,
-				C7BC48687930D6B2B1DF5F0C /* UnknownFieldSetBuilder.m in Sources */,
-				82D8365B8056AE8ED9515A65 /* Utilities.m in Sources */,
-				F78A76996F319DD2348B5D66 /* WireFormat.m in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		C85C3D220F6F8B598221A0AB /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		D6BF490770C3E0A39870BF67 /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				52C9573605F27614A47FD98B /* GRPCCall.m in Sources */,
-				5B314FDEEC1922B067C3CE69 /* GRPCChannel.m in Sources */,
-				F186FFB13D8D9E6FD17FDDCA /* GRPCCompletionQueue.m in Sources */,
-				B9C651E9F095AAF1E3CFD4E5 /* GRPCDelegateWrapper.m in Sources */,
-				64839715C9DF2ED46106B63B /* GRPCMethodName+HTTP2Encoding.m in Sources */,
-				CA7BCEA61AB5486021EF12AB /* GRPCMethodName.m in Sources */,
-				4BD5B1FBCE7D54443CA9C383 /* GRPCSecureChannel.m in Sources */,
-				F3DE465337C5EF3AAD9BBC7B /* GRPCUnsecuredChannel.m in Sources */,
-				0625B67521A136D4C473334E /* GRXImmediateWriter.m in Sources */,
-				37DEE801C171EC06BBF478F3 /* GRXMappingWriter.m in Sources */,
-				F502CA38CF13BA2B13A389D7 /* GRXNSBlockEnumerator.m in Sources */,
-				2BE5399767768B1296032F45 /* GRXNSFastEnumerator.m in Sources */,
-				1A394A8324056A13E992E559 /* GRXNSScalarEnumerator.m in Sources */,
-				B586BC7C05842E700B9B0A62 /* GRXWriteable.m in Sources */,
-				6AD29030DB73E1A07287337C /* GRXWriter+Immediate.m in Sources */,
-				8E2E44E7D8B0EBE838823C9A /* GRXWriter+Transformations.m in Sources */,
-				3EE46DF36CD288F1B0ABB051 /* GRXWriter.m in Sources */,
-				B866B17F38E5ADDA6F4900BD /* NSData+GRPC.m in Sources */,
-				4DA551DF807A0F7AD65FEB32 /* NSDictionary+GRPC.m in Sources */,
-				228E698CA81014B26E9DD586 /* NSEnumerator+GRXUtil.m in Sources */,
-				3B64656E2AC82E1A1E1294F9 /* NSError+GRPC.m in Sources */,
-				F14069192D1CA8003C7DF72D /* Pods-gRPC-dummy.m in Sources */,
-				B00B9A5C652F7D638792DF9D /* alarm.c in Sources */,
-				4516414E3A60F6351BAB5547 /* alarm_heap.c in Sources */,
-				EFED0F1D969079C1BED8D759 /* algorithm.c in Sources */,
-				B8907E9926D1669C56AD918A /* alloc.c in Sources */,
-				0810C05D733D3A6834E8D9D4 /* alpn.c in Sources */,
-				8777E974A316747B2022FFDF /* auth.c in Sources */,
-				D022E311EA7690529672416F /* base64.c in Sources */,
-				013CE6DB048C014FE45E9B8A /* bin_encoder.c in Sources */,
-				50DE90CDE6EEDD76E686C835 /* byte_buffer.c in Sources */,
-				45F67E6F270B21FCB2BC1DF9 /* byte_buffer_queue.c in Sources */,
-				7F3841CB75E33DAA3ED3A320 /* byte_buffer_reader.c in Sources */,
-				5811E857FBDA4A3F9611FD73 /* call.c in Sources */,
-				B77BF1A0B7EC818DC0A05FDE /* call_details.c in Sources */,
-				607E5A500ADD7479CAAE382A /* call_log_batch.c in Sources */,
-				A2824DF69CB17643AC49DBD7 /* call_op_string.c in Sources */,
-				18E72D83040C7B90B6B84973 /* cancellable.c in Sources */,
-				C3D740D96302BB06ED252B10 /* census_filter.c in Sources */,
-				E70C34053FBF84362CB51D1E /* census_init.c in Sources */,
-				97E4EF7EA669FBC0DE6D3295 /* census_log.c in Sources */,
-				74BA60A61FACFF2BCF525380 /* census_rpc_stats.c in Sources */,
-				26CD4E8E18AA6DE0E65706C6 /* census_tracing.c in Sources */,
-				247E9B78AEA7396967718B73 /* channel.c in Sources */,
-				99053524C124E679F4EDCE02 /* channel_args.c in Sources */,
-				D97CC464A48C55030160142A /* channel_create.c in Sources */,
-				DCA1E5104A9C487AA8DE6332 /* channel_stack.c in Sources */,
-				490044BF792E694AF6210261 /* child_channel.c in Sources */,
-				476CBBEA21196D1F623C1842 /* chttp2_transport.c in Sources */,
-				7C2CA14B84E54399513B55F9 /* client.c in Sources */,
-				813588A9FCBE6059546212D8 /* client_channel.c in Sources */,
-				4837E7CEFC98650766554D12 /* client_setup.c in Sources */,
-				DD1074CEE33612B52B4A701C /* cmdline.c in Sources */,
-				494EF8046B1E46D48C66FBA5 /* completion_queue.c in Sources */,
-				3EE1261B98E7B5BBC87F542A /* connected_channel.c in Sources */,
-				97C2FCEAA59B93958F661AE0 /* cpu_iphone.c in Sources */,
-				9E1001D37E2FC67624F1B7FD /* cpu_linux.c in Sources */,
-				24575F5A62000C670BC17B63 /* cpu_posix.c in Sources */,
-				E1726083BD683B6A445A079A /* cpu_windows.c in Sources */,
-				2DFAA7224BF1FDD8B9481B0A /* credentials.c in Sources */,
-				B32051816218A527F3E2E0A6 /* credentials_posix.c in Sources */,
-				D0FBFF10013C9A6017F64E8C /* credentials_win32.c in Sources */,
-				8E3972A472829D9E94BF748F /* endpoint.c in Sources */,
-				439F57A0585CE6259F955CCD /* endpoint_pair_posix.c in Sources */,
-				02256658DF768C9AB1450F02 /* endpoint_pair_windows.c in Sources */,
-				C2DC63834C036995766F51D1 /* env_linux.c in Sources */,
-				F2CFB62D1DD00E84136F4D2A /* env_posix.c in Sources */,
-				C06465D43377E15AD4FAF838 /* env_win32.c in Sources */,
-				C91297A12EF2BADF33AC6AE9 /* event_string.c in Sources */,
-				89BA53B5AE803AB9BF492F7C /* fake_transport_security.c in Sources */,
-				212B54B2E80EDE70B9EC7F8D /* fd_posix.c in Sources */,
-				D7B23B41FE001033CB5E090D /* file.c in Sources */,
-				95EB8E955536F86F41ED6F28 /* file_posix.c in Sources */,
-				5BA245A1C112FCD756439F24 /* file_win32.c in Sources */,
-				16534CB4DC649C680FF3E5F6 /* format_request.c in Sources */,
-				5CADAC9E1816248B8311CDA9 /* frame_data.c in Sources */,
-				DD3526667B8ACCBBA7103E70 /* frame_goaway.c in Sources */,
-				C4255EBF16705E550CACA6D3 /* frame_ping.c in Sources */,
-				145C502A7D224B26E8ACC5F3 /* frame_rst_stream.c in Sources */,
-				FF186E6AAFA2043E1E230DBA /* frame_settings.c in Sources */,
-				1CA0E62E554FD5D41AADED4A /* frame_window_update.c in Sources */,
-				AA6547B52F5766E385AFB992 /* gen_hpack_tables.c in Sources */,
-				FD13D3F66A2053D28F019B69 /* google_default_credentials.c in Sources */,
-				F91B0D6B9740C91FB994C0D3 /* hash_table.c in Sources */,
-				14646957F38B6AF98B762312 /* histogram.c in Sources */,
-				9A4E1F0A6C2FDCCEAB378A8D /* host_port.c in Sources */,
-				533C431DFC771A4792EB34CB /* hpack_parser.c in Sources */,
-				2AD66793503249D0872F60DE /* hpack_table.c in Sources */,
-				5D3CBCD0BE19BB9A63EC5DC8 /* http_client_filter.c in Sources */,
-				36133482E787B3DC961A695D /* http_filter.c in Sources */,
-				368813FAC943920CA95B8FA2 /* http_server_filter.c in Sources */,
-				1EC8A76E951A0E03BF69035C /* httpcli.c in Sources */,
-				22DE323093D6109D60171157 /* httpcli_security_connector.c in Sources */,
-				E235367793C0AB5BE1227F77 /* huffsyms.c in Sources */,
-				9E7D72C4511F61794C5B1E75 /* init.c in Sources */,
-				841573E1709B6ADB7394DE07 /* init_secure.c in Sources */,
-				DC3E06BF91A5FEA23E64C664 /* init_unsecure.c in Sources */,
-				D1380276BDDF9FB4234C6A91 /* iocp_windows.c in Sources */,
-				554460321DDD759696BAE8F5 /* iomgr.c in Sources */,
-				A6AA679601B2638E871303E3 /* iomgr_posix.c in Sources */,
-				71242E6F8477B74775B09DED /* iomgr_windows.c in Sources */,
-				99EE81C4B1FD1623D153A5BD /* json.c in Sources */,
-				2EFAD61B62131EB28A5ACB99 /* json_reader.c in Sources */,
-				9DFD860A131C6E11898D6948 /* json_string.c in Sources */,
-				E1BD2A722EB69CB1AEB235B0 /* json_token.c in Sources */,
-				83FF5B118BFDFADB68B0F6B7 /* json_writer.c in Sources */,
-				FEC3A255ADA67E8CD72BD2F8 /* lame_client.c in Sources */,
-				2DB2752AB5940BCEB9592151 /* log.c in Sources */,
-				6EDE3617E3ADD5D8DC34B66E /* log_android.c in Sources */,
-				8FD67A02EF935C5FA41B4960 /* log_linux.c in Sources */,
-				5D0D008B75F15B8D254602CA /* log_posix.c in Sources */,
-				084682783CD9E7A60F30A978 /* log_win32.c in Sources */,
-				C58F8DA7050AB687D113CC26 /* message_compress.c in Sources */,
-				FCEAD60E975F55CCB9F4CE8B /* metadata.c in Sources */,
-				4D88BC073B5E48099D343DDC /* metadata_array.c in Sources */,
-				5DB5510EF0C5BB2B3C61EC2C /* metadata_buffer.c in Sources */,
-				8E94966B0C8A24A33FACDB30 /* murmur_hash.c in Sources */,
-				F99B5C1CCBC7EA120450462F /* noop_filter.c in Sources */,
-				046C6A3503A7B2A0C8794A63 /* parser.c in Sources */,
-				2CA9B863B57AE884095F21A6 /* pollset_kick.c in Sources */,
-				B31B4B07F4353CBACDF8A760 /* pollset_multipoller_with_epoll.c in Sources */,
-				488052CC30C4334D4CFD77D9 /* pollset_multipoller_with_poll_posix.c in Sources */,
-				3F932EDDFFA94AC84055AF38 /* pollset_posix.c in Sources */,
-				E20A238B2CE6A3EEF9F5CCB9 /* pollset_windows.c in Sources */,
-				A31F80C029463B36047BE8D6 /* resolve_address_posix.c in Sources */,
-				270E5709A7FE94FAC32FC5CD /* resolve_address_windows.c in Sources */,
-				D519454B20EBE5A744D28288 /* secure_channel_create.c in Sources */,
-				E29499EE863E0B12E40CDCF6 /* secure_endpoint.c in Sources */,
-				938EDB82A665F45D500AAB46 /* secure_transport_setup.c in Sources */,
-				78F89AB25C5DCFCF32078CFD /* security_connector.c in Sources */,
-				4D1E7989C53653854DD7DE6F /* server.c in Sources */,
-				2AA0B41647E7C01443B9DC1A /* server_chttp2.c in Sources */,
-				2102BF47BE264219746C94D7 /* server_create.c in Sources */,
-				A6C266251E48B4BA43D1B893 /* server_secure_chttp2.c in Sources */,
-				850D5C3C63D960D3A67CA317 /* slice.c in Sources */,
-				072D6F8751D5B31E51C8CCAB /* slice_buffer.c in Sources */,
-				C6DBA34FC4FEBA7A658000D9 /* sockaddr_utils.c in Sources */,
-				D41DBB418B770A75ABA43461 /* socket_utils_common_posix.c in Sources */,
-				0A4FC5E8FE8796A6695BB2D2 /* socket_utils_linux.c in Sources */,
-				7B2CF3143F417ACDC99DEC81 /* socket_utils_posix.c in Sources */,
-				95F35CEB3BB2E7F08D54AC9A /* socket_windows.c in Sources */,
-				C2C6F22A9F95CB5E96ED2BD4 /* ssl_transport_security.c in Sources */,
-				FABF8677368842EA4431FAC7 /* status_conversion.c in Sources */,
-				D70AE7D3AAE51AAE0B4B964D /* stream_encoder.c in Sources */,
-				A59B175F688D82D51EB75750 /* stream_map.c in Sources */,
-				2996B791FE359CAA40D9DBDA /* stream_op.c in Sources */,
-				50050C5DEF7F1410406E35FC /* string.c in Sources */,
-				5CBB5F393AAC5BE846CD16F1 /* string_posix.c in Sources */,
-				39A5F6B9CDB6673DAE184EFB /* string_win32.c in Sources */,
-				A5C516EAE97E7F6CDD54C1C9 /* surface_trace.c in Sources */,
-				FF4DAEF344EA95FA933157D0 /* sync.c in Sources */,
-				E7B9AE558CCF6FCD71BED0DD /* sync_posix.c in Sources */,
-				A491E79FCCE0B93625E868C7 /* sync_win32.c in Sources */,
-				E492F0414629A44FBF20B046 /* tcp_client_posix.c in Sources */,
-				A68985C06FD51A48C741FDB0 /* tcp_client_windows.c in Sources */,
-				47F2D8D19FB53D8FDEB687F8 /* tcp_posix.c in Sources */,
-				4CC2920A98842F7464F93171 /* tcp_server_posix.c in Sources */,
-				F7B1AEA4BEE878716048BD63 /* tcp_server_windows.c in Sources */,
-				73B39CE5D99EA7638280CFDE /* tcp_windows.c in Sources */,
-				6E9E4974BCEB90D325571154 /* thd.c in Sources */,
-				6A256A763980439EC3A6F80E /* thd_posix.c in Sources */,
-				448CE8B0F5F67869963F482F /* thd_win32.c in Sources */,
-				7B55DBB89943E6328F0E17D5 /* time.c in Sources */,
-				E192C7A5389995920B8F9821 /* time_averaged_stats.c in Sources */,
-				BFC14A0FC6E16660F5A62574 /* time_posix.c in Sources */,
-				21A55A474EC930B61099D638 /* time_win32.c in Sources */,
-				94B5FFC72C2D36DE02FB0835 /* timeout_encoding.c in Sources */,
-				27CD878FB37978EA53E278B0 /* timers.c in Sources */,
-				898213A0CF8CF24856E4D94F /* trace.c in Sources */,
-				AC8709C1759E2457B876C8FB /* transport.c in Sources */,
-				72CB5193E49AA6DDD096B0E7 /* transport_security.c in Sources */,
-				6A8A5ACB242484F4FA190B2B /* varint.c in Sources */,
-				29757161645E89F3DE5974A7 /* wakeup_fd_eventfd.c in Sources */,
-				313432AB3C1E8124DC457A36 /* wakeup_fd_nospecial.c in Sources */,
-				257C21DBD76E938720D9A4B6 /* wakeup_fd_pipe.c in Sources */,
-				644B10007CB015C5EBA2AD06 /* wakeup_fd_posix.c in Sources */,
-				10080FAD9B5E2CE73911F102 /* window_stats.c in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		E28A72FACF36CCE1C4B40E6E /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				5AE9B27F961B15BF07DD1E77 /* AbstractMessage.m in Sources */,
-				97CA84884ECC58D1831A090C /* AbstractMessageBuilder.m in Sources */,
-				3D6DEC44D98CDC2EB5C1AD8A /* CodedInputStream.m in Sources */,
-				91E6A47FBA37AF9D4879486D /* CodedOutputStream.m in Sources */,
-				8EDC979BBB631A85EC447CA2 /* ConcreteExtensionField.m in Sources */,
-				9486B2666E2C15E3828DB05A /* Descriptor.pb.m in Sources */,
-				70A8348CC8FE3CA414E4764E /* ExtendableMessage.m in Sources */,
-				A58A668E1A0485AA18791C9E /* ExtendableMessageBuilder.m in Sources */,
-				73A61033C517B64DB125EBB5 /* ExtensionRegistry.m in Sources */,
-				EE9538238114755FD9FEB7DA /* Field.m in Sources */,
-				05861C315383FFF101DD1AC7 /* GeneratedMessage.m in Sources */,
-				6287BDFB472DA149EC713CD0 /* GeneratedMessageBuilder.m in Sources */,
-				98991B1F1C7963B9C9DA50FE /* MutableExtensionRegistry.m in Sources */,
-				B7C491C4FC7EA4715E4B9B50 /* MutableField.m in Sources */,
-				228447E614E338EE06612836 /* ObjectivecDescriptor.pb.m in Sources */,
-				473E47A5B8AAB6E691F8F43A /* PBArray.m in Sources */,
-				548AD798ED0C537118CC6DA7 /* Pods-ProtocolBuffers-dummy.m in Sources */,
-				FBD5DF85A941795BF9D51A60 /* RingBuffer.m in Sources */,
-				E3511EDB5AF1AA62CA55FB66 /* TextFormat.m in Sources */,
-				F70F1FBED8F6F9CB4E4AD24D /* UnknownFieldSet.m in Sources */,
-				ED1C2551796251D39F8B9386 /* UnknownFieldSetBuilder.m in Sources */,
-				C9440EA111524FE711216A2C /* Utilities.m in Sources */,
-				6BB6DE125C81981608BA6B3A /* WireFormat.m in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		EADF3567515F02C9A41F5A06 /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				F65E5989FBDDD2618D70C26A /* Pods-Route_guide-dummy.m in Sources */,
-				E43052A5659CF21368787780 /* Route_guide.pb.m in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		FF002E265B8496876C78F54A /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				E0D4D65CB5ACEC6A496BD66F /* Pods-Sample-dummy.m in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		FF797292EC76866794C0F494 /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				A2DA62EDA387C55E3CB09FCC /* Pods-SampleTests-dummy.m in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-/* End PBXSourcesBuildPhase section */
-
-/* Begin PBXTargetDependency section */
-		087D56A5850DCFAE8F95C4A9 /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-SampleTests-ProtocolBuffers";
-			target = AEB2043448E5878CC3D6D248 /* Pods-SampleTests-ProtocolBuffers */;
-			targetProxy = 6886F88B542EA0D05FF1C308 /* PBXContainerItemProxy */;
-		};
-		092CABFA3458A5F84D7EFDBA /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-ProtocolBuffers";
-			target = 01C449C242E3ED554D84A611 /* Pods-ProtocolBuffers */;
-			targetProxy = 18B39FD217BFDD3A27167E55 /* PBXContainerItemProxy */;
-		};
-		0BE958174AFEE075839FFE3D /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-SampleTests-OpenSSL";
-			target = 455BA4912B88B1766CAFBBA5 /* Pods-SampleTests-OpenSSL */;
-			targetProxy = 33E4FD8820165B2FDCD11C8D /* PBXContainerItemProxy */;
-		};
-		16B02BAB2E03B69D1187E641 /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-gRPC-gRPC";
-			target = 52849F89804FD62CDF39A502 /* Pods-gRPC-gRPC */;
-			targetProxy = 06D42337AED5962AB3B8EC96 /* PBXContainerItemProxy */;
-		};
-		1ACC4A38E3AAA5EDAF4A9AAF /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-Sample-OpenSSL";
-			target = 5A31380749D2D986F74F1554 /* Pods-Sample-OpenSSL */;
-			targetProxy = 2EC3111F97CBA412EEAD0BF3 /* PBXContainerItemProxy */;
-		};
-		2DB1F20910CF74E4BB8EB9D9 /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-Sample-OpenSSL";
-			target = 5A31380749D2D986F74F1554 /* Pods-Sample-OpenSSL */;
-			targetProxy = 0622938533A58FFFA09C75FC /* PBXContainerItemProxy */;
-		};
-		2F71A0DE8BA088072D8B887E /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-SampleTests-OpenSSL";
-			target = 455BA4912B88B1766CAFBBA5 /* Pods-SampleTests-OpenSSL */;
-			targetProxy = C0DEE09E1F9C867D897FF408 /* PBXContainerItemProxy */;
-		};
-		4DEC9A31D420B8B001BED74B /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-OpenSSL";
-			target = A2C0DFC30E8922D73DFA6E7A /* Pods-OpenSSL */;
-			targetProxy = BB65C5DBC3434DD213FDEB4E /* PBXContainerItemProxy */;
-		};
-		568E4ABDC38F5F427A36C9E5 /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-SampleTests-RemoteTest";
-			target = CF93943E13021BAE4F05050B /* Pods-SampleTests-RemoteTest */;
-			targetProxy = 0C10F08183346FDFA5A6257B /* PBXContainerItemProxy */;
-		};
-		5DD659F6E4C952EF058120EA /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-Sample-ProtocolBuffers";
-			target = E8A038AFC52B83C6CEEF1A60 /* Pods-Sample-ProtocolBuffers */;
-			targetProxy = 6EB7EC1B7A4E91AA0B414596 /* PBXContainerItemProxy */;
-		};
-		61D992AE1BC37C84AB11B802 /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-Route_guide";
-			target = CAE7A7263529BD28E61F22CE /* Pods-Route_guide */;
-			targetProxy = 3391462E683A921AE022BA42 /* PBXContainerItemProxy */;
-		};
-		644F4D907ABFB69571C3F211 /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-Sample-ProtocolBuffers";
-			target = E8A038AFC52B83C6CEEF1A60 /* Pods-Sample-ProtocolBuffers */;
-			targetProxy = 1456C0F0BDE0753E9421C687 /* PBXContainerItemProxy */;
-		};
-		8D19ECC4D1935A73CE23E5D1 /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-SampleTests-ProtocolBuffers";
-			target = AEB2043448E5878CC3D6D248 /* Pods-SampleTests-ProtocolBuffers */;
-			targetProxy = 3CC54E27429A66E03BFFB8F3 /* PBXContainerItemProxy */;
-		};
-		A2062E049D31E34A9E898AE4 /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-OpenSSL";
-			target = A2C0DFC30E8922D73DFA6E7A /* Pods-OpenSSL */;
-			targetProxy = 2A7905A83D3A36D62865C6A3 /* PBXContainerItemProxy */;
-		};
-		A7DC103026C61CB2427BD186 /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-SampleTests-gRPC";
-			target = D9915B561CA6EC38C838676C /* Pods-SampleTests-gRPC */;
-			targetProxy = 78F60CC1CB9BC7997FFE795E /* PBXContainerItemProxy */;
-		};
-		AF5B698F9C2F6A540E4BAA3A /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-Sample-gRPC-gRPC";
-			target = 161C88F48197C52433106937 /* Pods-Sample-gRPC-gRPC */;
-			targetProxy = 4E33AB3FD3A032F69AF14227 /* PBXContainerItemProxy */;
-		};
-		AFA971D25CFDF4C28385612C /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-SampleTests-ProtocolBuffers";
-			target = AEB2043448E5878CC3D6D248 /* Pods-SampleTests-ProtocolBuffers */;
-			targetProxy = 32C6AA750DB368582FFF8D15 /* PBXContainerItemProxy */;
-		};
-		B95C5BB4420D82CB5D3778F3 /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-Sample-Route_guide";
-			target = E614EF3DC27A5A1637C70A47 /* Pods-Sample-Route_guide */;
-			targetProxy = D15190738458C1AECE0F5717 /* PBXContainerItemProxy */;
-		};
-		CB0768D100A402BB025812C5 /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-Sample-RemoteTest";
-			target = 9A927A1CECCE267CF1C4BC39 /* Pods-Sample-RemoteTest */;
-			targetProxy = 55C1B67A77CE53684FF6B6AF /* PBXContainerItemProxy */;
-		};
-		CD7AC395A15CA369B5EDF9D4 /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-Sample-ProtocolBuffers";
-			target = E8A038AFC52B83C6CEEF1A60 /* Pods-Sample-ProtocolBuffers */;
-			targetProxy = 225A4A7A2939F181AAAD6E9B /* PBXContainerItemProxy */;
-		};
-		CEF98682DA696271DB391A4B /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-ProtocolBuffers";
-			target = 01C449C242E3ED554D84A611 /* Pods-ProtocolBuffers */;
-			targetProxy = B3950EF1C51B11433217115A /* PBXContainerItemProxy */;
-		};
-		D5061DF63CF01ADE71D3E33B /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-ProtocolBuffers";
-			target = 01C449C242E3ED554D84A611 /* Pods-ProtocolBuffers */;
-			targetProxy = 66DE4E65C7F6016914E810E8 /* PBXContainerItemProxy */;
-		};
-		DC8ADAEC185870C7F654DA10 /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-SampleTests-gRPC-gRPC";
-			target = 47DE3004CBE5C02E04F68945 /* Pods-SampleTests-gRPC-gRPC */;
-			targetProxy = B7C3A043843DB1B014976B28 /* PBXContainerItemProxy */;
-		};
-		E860EA93BF2231CBB30A4B5E /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-Sample-gRPC";
-			target = 24224A9E6165CF2833705F00 /* Pods-Sample-gRPC */;
-			targetProxy = 7DE96EECEF24154EFC2A56EA /* PBXContainerItemProxy */;
-		};
-		ED34561A6DFE13B64AB81F0B /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-gRPC";
-			target = E271A481FA821F450C0B3F15 /* Pods-gRPC */;
-			targetProxy = 63C7CF17E18C723DF8947D38 /* PBXContainerItemProxy */;
-		};
-		F1EB91E67CDC629E06799E1D /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-SampleTests-Route_guide";
-			target = 0A154C8B54E34A8FCDA1AD3F /* Pods-SampleTests-Route_guide */;
-			targetProxy = CE419F0F0E0935463E3484F2 /* PBXContainerItemProxy */;
-		};
-		FB3966206666C662BFB08151 /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = "Pods-RemoteTest";
-			target = CE276871B00BBAE7665C080B /* Pods-RemoteTest */;
-			targetProxy = D3D29BE93401215C25BC80FB /* PBXContainerItemProxy */;
-		};
-/* End PBXTargetDependency section */
-
-/* Begin XCBuildConfiguration section */
-		0363A41C348F6E1353867239 /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 621AF84901C5401206AB4669 /* Pods-SampleTests-ProtocolBuffers-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-SampleTests-ProtocolBuffers/Pods-SampleTests-ProtocolBuffers-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = NO;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Release;
-		};
-		05509489DDC6B85869AC3E08 /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 97A8A5841471BC4954FBC3B9 /* Pods-Sample-gRPC-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-Sample-gRPC/Pods-Sample-gRPC-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = NO;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Release;
-		};
-		08EE0B7797F856A8B7BC3AC2 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = D0A27F6813DC9659FDAE6C3D /* Pods-Sample-ProtocolBuffers-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-Sample-ProtocolBuffers/Pods-Sample-ProtocolBuffers-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = YES;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Debug;
-		};
-		12C8271B571EC947777CC075 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 91C6C394D4767AA0A9C6ED09 /* Pods-OpenSSL-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-OpenSSL/Pods-OpenSSL-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = YES;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Debug;
-		};
-		1659FF7160DE4629117A4D71 /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = C8969569F0038E334CCF8BD5 /* Pods-gRPC-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-gRPC/Pods-gRPC-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = NO;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Release;
-		};
-		1AB98E76A7CD4E5AB2F08CE7 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 1A59FA7BEA5B01EA768C1377 /* Pods-Sample-RemoteTest-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-Sample-RemoteTest/Pods-Sample-RemoteTest-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = YES;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Debug;
-		};
-		1BA618CAAA6E315AE1E8F8CB /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = C26486ABAEEC1AECC448F29E /* Pods-Route_guide-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-Route_guide/Pods-Route_guide-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = YES;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Debug;
-		};
-		21539FC3E15577ECC564690C /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 479DCC0B884C97B3018AD25A /* Pods-SampleTests.release.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = NO;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PODS_ROOT = "$(SRCROOT)";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Release;
-		};
-		21E61A857BA90A9B7B3F42B2 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				PRODUCT_NAME = gRPC;
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-				WRAPPER_EXTENSION = bundle;
-			};
-			name = Debug;
-		};
-		388FE8EBB14308DEA36C3DCA /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = CBA1FC6794B42203F49941F4 /* Pods-Sample-OpenSSL-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-Sample-OpenSSL/Pods-Sample-OpenSSL-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = YES;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Debug;
-		};
-		39560C38CED9E17F92F68628 /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 4837B1BD041B84AD0C2F7855 /* Pods-RemoteTest-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-RemoteTest/Pods-RemoteTest-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = NO;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Release;
-		};
-		3CAD1E9BA5528BF685D22272 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 778F9708965C53FE312E1004 /* Pods-Sample.debug.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = YES;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PODS_ROOT = "$(SRCROOT)";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Debug;
-		};
-		3D083514299558B45B18EF84 /* Release */ = {
-			isa = XCBuildConfiguration;
-			buildSettings = {
-				ALWAYS_SEARCH_USER_PATHS = NO;
-				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
-				CLANG_CXX_LIBRARY = "libc++";
-				CLANG_ENABLE_MODULES = YES;
-				CLANG_ENABLE_OBJC_ARC = YES;
-				CLANG_WARN_BOOL_CONVERSION = YES;
-				CLANG_WARN_CONSTANT_CONVERSION = YES;
-				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES;
-				CLANG_WARN_EMPTY_BODY = YES;
-				CLANG_WARN_ENUM_CONVERSION = YES;
-				CLANG_WARN_INT_CONVERSION = YES;
-				CLANG_WARN_OBJC_ROOT_CLASS = YES;
-				CLANG_WARN_UNREACHABLE_CODE = YES;
-				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
-				COPY_PHASE_STRIP = YES;
-				ENABLE_NS_ASSERTIONS = NO;
-				GCC_C_LANGUAGE_STANDARD = gnu99;
-				GCC_PREPROCESSOR_DEFINITIONS = "RELEASE=1";
-				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
-				GCC_WARN_ABOUT_RETURN_TYPE = YES;
-				GCC_WARN_UNDECLARED_SELECTOR = YES;
-				GCC_WARN_UNINITIALIZED_AUTOS = YES;
-				GCC_WARN_UNUSED_FUNCTION = YES;
-				GCC_WARN_UNUSED_VARIABLE = YES;
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				STRIP_INSTALLED_PRODUCT = NO;
-				SYMROOT = "${SRCROOT}/../build";
-				VALIDATE_PRODUCT = YES;
-			};
-			name = Release;
-		};
-		3D3ECBEEBC25081CF7BD508D /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = A84CC34AEDD516C899DB8CF4 /* Pods-Sample-Route_guide-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-Sample-Route_guide/Pods-Sample-Route_guide-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = YES;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Debug;
-		};
-		41C7D4384355B38F7EA5CD34 /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 91C6C394D4767AA0A9C6ED09 /* Pods-OpenSSL-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-OpenSSL/Pods-OpenSSL-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = NO;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Release;
-		};
-		43DCB56B949CE6C03B0CADE6 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 283F94B23D74B84F80DD5877 /* Pods-SampleTests-OpenSSL-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-SampleTests-OpenSSL/Pods-SampleTests-OpenSSL-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = YES;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Debug;
-		};
-		4A6BB8FAB0F51E67D51C8A25 /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = C100BFF62859B01C180DF057 /* Pods-SampleTests-RemoteTest-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-SampleTests-RemoteTest/Pods-SampleTests-RemoteTest-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = NO;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Release;
-		};
-		521F1DFA457EC69F5E7D2BE1 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = C100BFF62859B01C180DF057 /* Pods-SampleTests-RemoteTest-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-SampleTests-RemoteTest/Pods-SampleTests-RemoteTest-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = YES;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Debug;
-		};
-		6597FEFB1D2113EA7DABA750 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				PRODUCT_NAME = gRPC;
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-				WRAPPER_EXTENSION = bundle;
-			};
-			name = Debug;
-		};
-		6BDB90A60A55EC4715F36221 /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = C26486ABAEEC1AECC448F29E /* Pods-Route_guide-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-Route_guide/Pods-Route_guide-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = NO;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Release;
-		};
-		7959DCC1F0D7319A969940C8 /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = D0A27F6813DC9659FDAE6C3D /* Pods-Sample-ProtocolBuffers-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-Sample-ProtocolBuffers/Pods-Sample-ProtocolBuffers-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = NO;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Release;
-		};
-		938DBA0697C90731BD1F4969 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				PRODUCT_NAME = gRPC;
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-				WRAPPER_EXTENSION = bundle;
-			};
-			name = Debug;
-		};
-		981F2664F5BE467F2D763657 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 3D0F9AE3912E6E5E216D2F73 /* Pods-ProtocolBuffers-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-ProtocolBuffers/Pods-ProtocolBuffers-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = YES;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Debug;
-		};
-		A2FE414188EB28FA3AD66696 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 185D71DEA33A07F75C60BE47 /* Pods-SampleTests-gRPC-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-SampleTests-gRPC/Pods-SampleTests-gRPC-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = YES;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Debug;
-		};
-		A51886CACE9BBBE702E855BD /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 9E6B8BF8B2B4A1253685D19A /* Pods-SampleTests-Route_guide-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-SampleTests-Route_guide/Pods-SampleTests-Route_guide-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = NO;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Release;
-		};
-		A7CE274FF8B4428D4FA31D8A /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 1A59FA7BEA5B01EA768C1377 /* Pods-Sample-RemoteTest-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-Sample-RemoteTest/Pods-Sample-RemoteTest-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = NO;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Release;
-		};
-		A8602E51A3024C4F60797A52 /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 185D71DEA33A07F75C60BE47 /* Pods-SampleTests-gRPC-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-SampleTests-gRPC/Pods-SampleTests-gRPC-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = NO;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Release;
-		};
-		A888841FE94AE22F481D8081 /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 3D0F9AE3912E6E5E216D2F73 /* Pods-ProtocolBuffers-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-ProtocolBuffers/Pods-ProtocolBuffers-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = NO;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Release;
-		};
-		AA32E9FCEC4207F0A6D1A05F /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 283F94B23D74B84F80DD5877 /* Pods-SampleTests-OpenSSL-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-SampleTests-OpenSSL/Pods-SampleTests-OpenSSL-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = NO;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Release;
-		};
-		AA3FD5331BC43C684392494C /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 97A8A5841471BC4954FBC3B9 /* Pods-Sample-gRPC-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-Sample-gRPC/Pods-Sample-gRPC-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = YES;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Debug;
-		};
-		AF5702C9155B650E8E95A61C /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = B77F11E53B26F2C847C2D662 /* Pods.debug.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = YES;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PODS_ROOT = "$(SRCROOT)";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Debug;
-		};
-		B432F9D5D098F98A03647123 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			buildSettings = {
-				ALWAYS_SEARCH_USER_PATHS = NO;
-				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
-				CLANG_CXX_LIBRARY = "libc++";
-				CLANG_ENABLE_MODULES = YES;
-				CLANG_ENABLE_OBJC_ARC = YES;
-				CLANG_WARN_BOOL_CONVERSION = YES;
-				CLANG_WARN_CONSTANT_CONVERSION = YES;
-				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES;
-				CLANG_WARN_EMPTY_BODY = YES;
-				CLANG_WARN_ENUM_CONVERSION = YES;
-				CLANG_WARN_INT_CONVERSION = YES;
-				CLANG_WARN_OBJC_ROOT_CLASS = YES;
-				CLANG_WARN_UNREACHABLE_CODE = YES;
-				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
-				COPY_PHASE_STRIP = NO;
-				GCC_C_LANGUAGE_STANDARD = gnu99;
-				GCC_DYNAMIC_NO_PIC = NO;
-				GCC_OPTIMIZATION_LEVEL = 0;
-				GCC_PREPROCESSOR_DEFINITIONS = (
-					"DEBUG=1",
-					"$(inherited)",
-				);
-				GCC_SYMBOLS_PRIVATE_EXTERN = NO;
-				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
-				GCC_WARN_ABOUT_RETURN_TYPE = YES;
-				GCC_WARN_UNDECLARED_SELECTOR = YES;
-				GCC_WARN_UNINITIALIZED_AUTOS = YES;
-				GCC_WARN_UNUSED_FUNCTION = YES;
-				GCC_WARN_UNUSED_VARIABLE = YES;
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				ONLY_ACTIVE_ARCH = YES;
-				STRIP_INSTALLED_PRODUCT = NO;
-				SYMROOT = "${SRCROOT}/../build";
-			};
-			name = Debug;
-		};
-		BC47360456F58F5C26745F0C /* Release */ = {
-			isa = XCBuildConfiguration;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				PRODUCT_NAME = gRPC;
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-				WRAPPER_EXTENSION = bundle;
-			};
-			name = Release;
-		};
-		BDF364B7AF18142CF7C6D386 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 621AF84901C5401206AB4669 /* Pods-SampleTests-ProtocolBuffers-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-SampleTests-ProtocolBuffers/Pods-SampleTests-ProtocolBuffers-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = YES;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Debug;
-		};
-		BDF56E844735815D3B60CA84 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 907F99DBF427CE5A0D778FFF /* Pods-SampleTests.debug.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = YES;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PODS_ROOT = "$(SRCROOT)";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Debug;
-		};
-		C48469AACF5560B44F548E62 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 4837B1BD041B84AD0C2F7855 /* Pods-RemoteTest-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-RemoteTest/Pods-RemoteTest-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = YES;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Debug;
-		};
-		DA8BDBA0FF519CA0568C5DF1 /* Release */ = {
-			isa = XCBuildConfiguration;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				PRODUCT_NAME = gRPC;
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-				WRAPPER_EXTENSION = bundle;
-			};
-			name = Release;
-		};
-		E0D2EE18025E990306B8D7F1 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 9E6B8BF8B2B4A1253685D19A /* Pods-SampleTests-Route_guide-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-SampleTests-Route_guide/Pods-SampleTests-Route_guide-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = YES;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Debug;
-		};
-		E11FDA6BB2ACF5FF958DD397 /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = A84CC34AEDD516C899DB8CF4 /* Pods-Sample-Route_guide-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-Sample-Route_guide/Pods-Sample-Route_guide-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = NO;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Release;
-		};
-		E26E5B93768EC80F6C74AAF1 /* Release */ = {
-			isa = XCBuildConfiguration;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				PRODUCT_NAME = gRPC;
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-				WRAPPER_EXTENSION = bundle;
-			};
-			name = Release;
-		};
-		E621F83C57BC83B43F2E6234 /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 0B7137671BD7B2B31E9ED818 /* Pods-Sample.release.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = NO;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PODS_ROOT = "$(SRCROOT)";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Release;
-		};
-		EAA8751F94709B2B96D10C38 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = C8969569F0038E334CCF8BD5 /* Pods-gRPC-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-gRPC/Pods-gRPC-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = YES;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Debug;
-		};
-		F08BDFD7B1A1CBE776ACAC47 /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = E399DB739AF98C8C2BC29745 /* Pods.release.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = NO;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PODS_ROOT = "$(SRCROOT)";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Release;
-		};
-		FEF43DCD7A6667EF54A482F7 /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = CBA1FC6794B42203F49941F4 /* Pods-Sample-OpenSSL-Private.xcconfig */;
-			buildSettings = {
-				ENABLE_STRICT_OBJC_MSGSEND = YES;
-				GCC_PREFIX_HEADER = "Target Support Files/Pods-Sample-OpenSSL/Pods-Sample-OpenSSL-prefix.pch";
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
-				MTL_ENABLE_DEBUG_INFO = NO;
-				OTHER_LDFLAGS = "";
-				OTHER_LIBTOOLFLAGS = "";
-				PRODUCT_NAME = "$(TARGET_NAME)";
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-			};
-			name = Release;
-		};
-/* End XCBuildConfiguration section */
-
-/* Begin XCConfigurationList section */
-		12AF50E6B2C99BF6774628F7 /* Build configuration list for PBXNativeTarget "Pods-Sample-RemoteTest" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				1AB98E76A7CD4E5AB2F08CE7 /* Debug */,
-				A7CE274FF8B4428D4FA31D8A /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		1A399C4C2B0D1A27E94B9046 /* Build configuration list for PBXNativeTarget "Pods-Sample-Route_guide" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				3D3ECBEEBC25081CF7BD508D /* Debug */,
-				E11FDA6BB2ACF5FF958DD397 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		1BE096DDB20B69F9E8D1B541 /* Build configuration list for PBXNativeTarget "Pods-SampleTests-ProtocolBuffers" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				BDF364B7AF18142CF7C6D386 /* Debug */,
-				0363A41C348F6E1353867239 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		3958FBF2BC5ADD4690E5C597 /* Build configuration list for PBXNativeTarget "Pods-SampleTests" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				BDF56E844735815D3B60CA84 /* Debug */,
-				21539FC3E15577ECC564690C /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		412AB29A510335AFFC964F16 /* Build configuration list for PBXNativeTarget "Pods-Sample-OpenSSL" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				388FE8EBB14308DEA36C3DCA /* Debug */,
-				FEF43DCD7A6667EF54A482F7 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		5BB0AE93F53F9D9D6542FE7E /* Build configuration list for PBXNativeTarget "Pods-SampleTests-gRPC" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				A2FE414188EB28FA3AD66696 /* Debug */,
-				A8602E51A3024C4F60797A52 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		5E3A93AFD7B375DE5F71B263 /* Build configuration list for PBXNativeTarget "Pods-OpenSSL" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				12C8271B571EC947777CC075 /* Debug */,
-				41C7D4384355B38F7EA5CD34 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		5E92C229B95AAB944C308CDC /* Build configuration list for PBXNativeTarget "Pods-SampleTests-OpenSSL" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				43DCB56B949CE6C03B0CADE6 /* Debug */,
-				AA32E9FCEC4207F0A6D1A05F /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		6137D4F65352176F3796325E /* Build configuration list for PBXNativeTarget "Pods" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				AF5702C9155B650E8E95A61C /* Debug */,
-				F08BDFD7B1A1CBE776ACAC47 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		633EFB08CED17C220C5CA4A3 /* Build configuration list for PBXNativeTarget "Pods-Sample" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				3CAD1E9BA5528BF685D22272 /* Debug */,
-				E621F83C57BC83B43F2E6234 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		64D5F2F831676A97B4285D51 /* Build configuration list for PBXNativeTarget "Pods-ProtocolBuffers" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				981F2664F5BE467F2D763657 /* Debug */,
-				A888841FE94AE22F481D8081 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		70DD77F43CF2F2290795FDB4 /* Build configuration list for PBXNativeTarget "Pods-Sample-ProtocolBuffers" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				08EE0B7797F856A8B7BC3AC2 /* Debug */,
-				7959DCC1F0D7319A969940C8 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		7875D6F82420579F07F6F04F /* Build configuration list for PBXNativeTarget "Pods-SampleTests-gRPC-gRPC" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				6597FEFB1D2113EA7DABA750 /* Debug */,
-				DA8BDBA0FF519CA0568C5DF1 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		97FE078069898BAE0B100765 /* Build configuration list for PBXNativeTarget "Pods-SampleTests-RemoteTest" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				521F1DFA457EC69F5E7D2BE1 /* Debug */,
-				4A6BB8FAB0F51E67D51C8A25 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		9A92F3593F047DF639B13D3E /* Build configuration list for PBXNativeTarget "Pods-SampleTests-Route_guide" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				E0D2EE18025E990306B8D7F1 /* Debug */,
-				A51886CACE9BBBE702E855BD /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		A4EED9AEB632CC12BC785CF4 /* Build configuration list for PBXNativeTarget "Pods-Route_guide" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				1BA618CAAA6E315AE1E8F8CB /* Debug */,
-				6BDB90A60A55EC4715F36221 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		C240889DAF14DD75C45D27C7 /* Build configuration list for PBXNativeTarget "Pods-Sample-gRPC" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				AA3FD5331BC43C684392494C /* Debug */,
-				05509489DDC6B85869AC3E08 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		D8633B0A05C85D062CF74659 /* Build configuration list for PBXProject "Pods" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				B432F9D5D098F98A03647123 /* Debug */,
-				3D083514299558B45B18EF84 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		E1A7F1B12E03E37CFABCAE30 /* Build configuration list for PBXNativeTarget "Pods-gRPC" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				EAA8751F94709B2B96D10C38 /* Debug */,
-				1659FF7160DE4629117A4D71 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		E8EA7009814584C2A03AE0BA /* Build configuration list for PBXNativeTarget "Pods-RemoteTest" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				C48469AACF5560B44F548E62 /* Debug */,
-				39560C38CED9E17F92F68628 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		EC337B5DCAD8FE8DBEA1E777 /* Build configuration list for PBXNativeTarget "Pods-Sample-gRPC-gRPC" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				21E61A857BA90A9B7B3F42B2 /* Debug */,
-				E26E5B93768EC80F6C74AAF1 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-		FDB9644BFD0D2CC68F0C5D86 /* Build configuration list for PBXNativeTarget "Pods-gRPC-gRPC" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				938DBA0697C90731BD1F4969 /* Debug */,
-				BC47360456F58F5C26745F0C /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
-/* End XCConfigurationList section */
-	};
-	rootObject = 72D77CB6BAE984ACEF1E2DC2 /* Project object */;
-}
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
deleted file mode 100644
index 27df35431539321f9511515440e56c9a2c33516f..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-GRPCClient/Pods-GRPCClient-Private.xcconfig	
+++ /dev/null
@@ -1,5 +0,0 @@
-#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
deleted file mode 100644
index 8cac89bb84292b12a3ad7a10d6d17ab4709684b6..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-GRPCClient/Pods-GRPCClient-dummy.m	
+++ /dev/null
@@ -1,5 +0,0 @@
-#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
deleted file mode 100644
index 95cf11d9fb04da88b7d82d6e26fb881b62c28b75..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-GRPCClient/Pods-GRPCClient-prefix.pch	
+++ /dev/null
@@ -1,5 +0,0 @@
-#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
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
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
deleted file mode 100644
index a1c3897b81a8c9f0b6d142aa79abae91ca394b6a..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-RxLibrary/Pods-RxLibrary-Private.xcconfig	
+++ /dev/null
@@ -1,5 +0,0 @@
-#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/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-RxLibrary/Pods-RxLibrary-dummy.m b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-RxLibrary/Pods-RxLibrary-dummy.m
deleted file mode 100644
index 79e146025702ff6abc0d808caef6dc46132c9b01..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-RxLibrary/Pods-RxLibrary-dummy.m	
+++ /dev/null
@@ -1,5 +0,0 @@
-#import <Foundation/Foundation.h>
-@interface PodsDummy_Pods_RxLibrary : NSObject
-@end
-@implementation PodsDummy_Pods_RxLibrary
-@end
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-RxLibrary/Pods-RxLibrary-prefix.pch b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-RxLibrary/Pods-RxLibrary-prefix.pch
deleted file mode 100644
index 95cf11d9fb04da88b7d82d6e26fb881b62c28b75..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-RxLibrary/Pods-RxLibrary-prefix.pch	
+++ /dev/null
@@ -1,5 +0,0 @@
-#ifdef __OBJC__
-#import <UIKit/UIKit.h>
-#endif
-
-#import "Pods-environment.h"
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-RxLibrary/Pods-RxLibrary.xcconfig b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-RxLibrary/Pods-RxLibrary.xcconfig
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
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
deleted file mode 100644
index e23f7be66f1f8de0468994ab4bc8d104be0f5a90..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-GRPCClient/Pods-Sample-GRPCClient-Private.xcconfig	
+++ /dev/null
@@ -1,5 +0,0 @@
-#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
deleted file mode 100644
index 2bf2682a7258c2ac240dcf7a75ce9a82e5acf91c..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-GRPCClient/Pods-Sample-GRPCClient-dummy.m	
+++ /dev/null
@@ -1,5 +0,0 @@
-#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
deleted file mode 100644
index 0e807f67a35ac9dccfea77be0cd6a5bf175e7be3..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-GRPCClient/Pods-Sample-GRPCClient-prefix.pch	
+++ /dev/null
@@ -1,5 +0,0 @@
-#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
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
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
deleted file mode 100644
index 023a22eb14aa0c116bc3934c9283c9f635e45917..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-Private.xcconfig	
+++ /dev/null
@@ -1,5 +0,0 @@
-#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/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-RxLibrary/Pods-Sample-RxLibrary-dummy.m b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-dummy.m
deleted file mode 100644
index c81b57bbe880861dcb7c02f8afb90824b6a6655e..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-dummy.m	
+++ /dev/null
@@ -1,5 +0,0 @@
-#import <Foundation/Foundation.h>
-@interface PodsDummy_Pods_Sample_RxLibrary : NSObject
-@end
-@implementation PodsDummy_Pods_Sample_RxLibrary
-@end
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-prefix.pch b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-prefix.pch
deleted file mode 100644
index 0e807f67a35ac9dccfea77be0cd6a5bf175e7be3..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-RxLibrary/Pods-Sample-RxLibrary-prefix.pch	
+++ /dev/null
@@ -1,5 +0,0 @@
-#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-RxLibrary/Pods-Sample-RxLibrary.xcconfig b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample-RxLibrary/Pods-Sample-RxLibrary.xcconfig
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample-acknowledgements.markdown b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample-acknowledgements.markdown
deleted file mode 100644
index 255149a828678c05336d615fa0b513b0dbf20816..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample-acknowledgements.markdown	
+++ /dev/null
@@ -1,3 +0,0 @@
-# Acknowledgements
-This application makes use of the following third party libraries:
-Generated by CocoaPods - http://cocoapods.org
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample-acknowledgements.plist b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample-acknowledgements.plist
deleted file mode 100644
index e4edebe92da6bc5bb3d514a675d78f68a45ccad4..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample-acknowledgements.plist	
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
-	<key>PreferenceSpecifiers</key>
-	<array>
-		<dict>
-			<key>FooterText</key>
-			<string>This application makes use of the following third party libraries:</string>
-			<key>Title</key>
-			<string>Acknowledgements</string>
-			<key>Type</key>
-			<string>PSGroupSpecifier</string>
-		</dict>
-		<dict>
-			<key>FooterText</key>
-			<string>Generated by CocoaPods - http://cocoapods.org</string>
-			<key>Title</key>
-			<string></string>
-			<key>Type</key>
-			<string>PSGroupSpecifier</string>
-		</dict>
-	</array>
-	<key>StringsTable</key>
-	<string>Acknowledgements</string>
-	<key>Title</key>
-	<string>Acknowledgements</string>
-</dict>
-</plist>
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample-dummy.m b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample-dummy.m
deleted file mode 100644
index b5ca68a1c55e4edfe41b0612050207f807a7d55a..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample-dummy.m	
+++ /dev/null
@@ -1,5 +0,0 @@
-#import <Foundation/Foundation.h>
-@interface PodsDummy_Pods_Sample : NSObject
-@end
-@implementation PodsDummy_Pods_Sample
-@end
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
deleted file mode 100644
index d0acfc70ecaa3f4cdd884f7b1e18f6b043dbded1..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample-environment.h	
+++ /dev/null
@@ -1,20 +0,0 @@
-
-// To check if a library is compiled with CocoaPods you
-// can use the `COCOAPODS` macro definition which is
-// defined in the xcconfigs so it is available in
-// headers also when they are imported in the client
-// 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
-#define COCOAPODS_VERSION_MINOR_RxLibrary 0
-#define COCOAPODS_VERSION_PATCH_RxLibrary 1
-
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample-resources.sh b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample-resources.sh
deleted file mode 100755
index e149064a090682c96ecd6833aa61db7e87a2eab5..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample-resources.sh	
+++ /dev/null
@@ -1,74 +0,0 @@
-#!/bin/sh
-set -e
-
-mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
-
-RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt
-> "$RESOURCES_TO_COPY"
-
-install_resource()
-{
-  case $1 in
-    *.storyboard)
-      echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}"
-      ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc" "${PODS_ROOT}/$1" --sdk "${SDKROOT}"
-      ;;
-    *.xib)
-        echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}"
-      ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib" "${PODS_ROOT}/$1" --sdk "${SDKROOT}"
-      ;;
-    *.framework)
-      echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
-      mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
-      echo "rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
-      rsync -av "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
-      ;;
-    *.xcdatamodel)
-      echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1"`.mom\""
-      xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodel`.mom"
-      ;;
-    *.xcdatamodeld)
-      echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd\""
-      xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd"
-      ;;
-    *.xcmappingmodel)
-      echo "xcrun mapc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm\""
-      xcrun mapc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm"
-      ;;
-    *.xcassets)
-      ;;
-    /*)
-      echo "$1"
-      echo "$1" >> "$RESOURCES_TO_COPY"
-      ;;
-    *)
-      echo "${PODS_ROOT}/$1"
-      echo "${PODS_ROOT}/$1" >> "$RESOURCES_TO_COPY"
-      ;;
-  esac
-}
-
-rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
-if [[ "${ACTION}" == "install" ]]; then
-  rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
-fi
-rm -f "$RESOURCES_TO_COPY"
-
-if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ `find . -name '*.xcassets' | wc -l` -ne 0 ]
-then
-  case "${TARGETED_DEVICE_FAMILY}" in
-    1,2)
-      TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone"
-      ;;
-    1)
-      TARGET_DEVICE_ARGS="--target-device iphone"
-      ;;
-    2)
-      TARGET_DEVICE_ARGS="--target-device ipad"
-      ;;
-    *)
-      TARGET_DEVICE_ARGS="--target-device mac"
-      ;;
-  esac
-  find "${PWD}" -name "*.xcassets" -print0 | xargs -0 actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${IPHONEOS_DEPLOYMENT_TARGET}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
-fi
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
deleted file mode 100644
index 06aa64cfac5a8da651db2e17454403edf2b55de3..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample.debug.xcconfig	
+++ /dev/null
@@ -1,6 +0,0 @@
-GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-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
deleted file mode 100644
index 06aa64cfac5a8da651db2e17454403edf2b55de3..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-Sample/Pods-Sample.release.xcconfig	
+++ /dev/null
@@ -1,6 +0,0 @@
-GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-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
deleted file mode 100644
index 01e25c4a88c0e0f6fcce3b51ca193b2b6d25c388..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient-Private.xcconfig	
+++ /dev/null
@@ -1,5 +0,0 @@
-#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
deleted file mode 100644
index 7ecd57a34b742b8c26c7e4e8c18454a76aafa78d..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient-dummy.m	
+++ /dev/null
@@ -1,5 +0,0 @@
-#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
deleted file mode 100644
index abd56515872177cd1fbfd31cb70501fb4e7e2563..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-GRPCClient/Pods-SampleTests-GRPCClient-prefix.pch	
+++ /dev/null
@@ -1,5 +0,0 @@
-#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
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
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
deleted file mode 100644
index 67069bae5da5f543896c0455630e1f7ba47deb16..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-Private.xcconfig	
+++ /dev/null
@@ -1,5 +0,0 @@
-#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/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-RxLibrary/Pods-SampleTests-RxLibrary-dummy.m b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-dummy.m
deleted file mode 100644
index d57aef11d68120ea48848750027d4aa02d77b457..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-dummy.m	
+++ /dev/null
@@ -1,5 +0,0 @@
-#import <Foundation/Foundation.h>
-@interface PodsDummy_Pods_SampleTests_RxLibrary : NSObject
-@end
-@implementation PodsDummy_Pods_SampleTests_RxLibrary
-@end
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-prefix.pch b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-prefix.pch
deleted file mode 100644
index abd56515872177cd1fbfd31cb70501fb4e7e2563..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary-prefix.pch	
+++ /dev/null
@@ -1,5 +0,0 @@
-#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-RxLibrary/Pods-SampleTests-RxLibrary.xcconfig b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests-RxLibrary/Pods-SampleTests-RxLibrary.xcconfig
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests-acknowledgements.markdown b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests-acknowledgements.markdown
deleted file mode 100644
index 255149a828678c05336d615fa0b513b0dbf20816..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests-acknowledgements.markdown	
+++ /dev/null
@@ -1,3 +0,0 @@
-# Acknowledgements
-This application makes use of the following third party libraries:
-Generated by CocoaPods - http://cocoapods.org
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests-acknowledgements.plist b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests-acknowledgements.plist
deleted file mode 100644
index e4edebe92da6bc5bb3d514a675d78f68a45ccad4..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests-acknowledgements.plist	
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
-	<key>PreferenceSpecifiers</key>
-	<array>
-		<dict>
-			<key>FooterText</key>
-			<string>This application makes use of the following third party libraries:</string>
-			<key>Title</key>
-			<string>Acknowledgements</string>
-			<key>Type</key>
-			<string>PSGroupSpecifier</string>
-		</dict>
-		<dict>
-			<key>FooterText</key>
-			<string>Generated by CocoaPods - http://cocoapods.org</string>
-			<key>Title</key>
-			<string></string>
-			<key>Type</key>
-			<string>PSGroupSpecifier</string>
-		</dict>
-	</array>
-	<key>StringsTable</key>
-	<string>Acknowledgements</string>
-	<key>Title</key>
-	<string>Acknowledgements</string>
-</dict>
-</plist>
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests-dummy.m b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests-dummy.m
deleted file mode 100644
index 01b4ad73ba6c3cc05360ed830dbe9e33b0a5b177..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests-dummy.m	
+++ /dev/null
@@ -1,5 +0,0 @@
-#import <Foundation/Foundation.h>
-@interface PodsDummy_Pods_SampleTests : NSObject
-@end
-@implementation PodsDummy_Pods_SampleTests
-@end
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
deleted file mode 100644
index d0acfc70ecaa3f4cdd884f7b1e18f6b043dbded1..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests-environment.h	
+++ /dev/null
@@ -1,20 +0,0 @@
-
-// To check if a library is compiled with CocoaPods you
-// can use the `COCOAPODS` macro definition which is
-// defined in the xcconfigs so it is available in
-// headers also when they are imported in the client
-// 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
-#define COCOAPODS_VERSION_MINOR_RxLibrary 0
-#define COCOAPODS_VERSION_PATCH_RxLibrary 1
-
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests-resources.sh b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests-resources.sh
deleted file mode 100755
index e149064a090682c96ecd6833aa61db7e87a2eab5..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests-resources.sh	
+++ /dev/null
@@ -1,74 +0,0 @@
-#!/bin/sh
-set -e
-
-mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
-
-RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt
-> "$RESOURCES_TO_COPY"
-
-install_resource()
-{
-  case $1 in
-    *.storyboard)
-      echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}"
-      ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc" "${PODS_ROOT}/$1" --sdk "${SDKROOT}"
-      ;;
-    *.xib)
-        echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}"
-      ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib" "${PODS_ROOT}/$1" --sdk "${SDKROOT}"
-      ;;
-    *.framework)
-      echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
-      mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
-      echo "rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
-      rsync -av "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
-      ;;
-    *.xcdatamodel)
-      echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1"`.mom\""
-      xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodel`.mom"
-      ;;
-    *.xcdatamodeld)
-      echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd\""
-      xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd"
-      ;;
-    *.xcmappingmodel)
-      echo "xcrun mapc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm\""
-      xcrun mapc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm"
-      ;;
-    *.xcassets)
-      ;;
-    /*)
-      echo "$1"
-      echo "$1" >> "$RESOURCES_TO_COPY"
-      ;;
-    *)
-      echo "${PODS_ROOT}/$1"
-      echo "${PODS_ROOT}/$1" >> "$RESOURCES_TO_COPY"
-      ;;
-  esac
-}
-
-rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
-if [[ "${ACTION}" == "install" ]]; then
-  rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
-fi
-rm -f "$RESOURCES_TO_COPY"
-
-if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ `find . -name '*.xcassets' | wc -l` -ne 0 ]
-then
-  case "${TARGETED_DEVICE_FAMILY}" in
-    1,2)
-      TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone"
-      ;;
-    1)
-      TARGET_DEVICE_ARGS="--target-device iphone"
-      ;;
-    2)
-      TARGET_DEVICE_ARGS="--target-device ipad"
-      ;;
-    *)
-      TARGET_DEVICE_ARGS="--target-device mac"
-      ;;
-  esac
-  find "${PWD}" -name "*.xcassets" -print0 | xargs -0 actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${IPHONEOS_DEPLOYMENT_TARGET}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
-fi
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
deleted file mode 100644
index 892541c53e7f4a927050f1a324c8866d279720e2..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests.debug.xcconfig	
+++ /dev/null
@@ -1,6 +0,0 @@
-GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-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
deleted file mode 100644
index 892541c53e7f4a927050f1a324c8866d279720e2..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods-SampleTests/Pods-SampleTests.release.xcconfig	
+++ /dev/null
@@ -1,6 +0,0 @@
-GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-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-acknowledgements.markdown b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods-acknowledgements.markdown
deleted file mode 100644
index 255149a828678c05336d615fa0b513b0dbf20816..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods-acknowledgements.markdown	
+++ /dev/null
@@ -1,3 +0,0 @@
-# Acknowledgements
-This application makes use of the following third party libraries:
-Generated by CocoaPods - http://cocoapods.org
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods-acknowledgements.plist b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods-acknowledgements.plist
deleted file mode 100644
index e4edebe92da6bc5bb3d514a675d78f68a45ccad4..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods-acknowledgements.plist	
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
-	<key>PreferenceSpecifiers</key>
-	<array>
-		<dict>
-			<key>FooterText</key>
-			<string>This application makes use of the following third party libraries:</string>
-			<key>Title</key>
-			<string>Acknowledgements</string>
-			<key>Type</key>
-			<string>PSGroupSpecifier</string>
-		</dict>
-		<dict>
-			<key>FooterText</key>
-			<string>Generated by CocoaPods - http://cocoapods.org</string>
-			<key>Title</key>
-			<string></string>
-			<key>Type</key>
-			<string>PSGroupSpecifier</string>
-		</dict>
-	</array>
-	<key>StringsTable</key>
-	<string>Acknowledgements</string>
-	<key>Title</key>
-	<string>Acknowledgements</string>
-</dict>
-</plist>
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods-dummy.m b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods-dummy.m
deleted file mode 100644
index ade64bd1a9b4e9fc118a37c545ef232fecffa983..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods-dummy.m	
+++ /dev/null
@@ -1,5 +0,0 @@
-#import <Foundation/Foundation.h>
-@interface PodsDummy_Pods : NSObject
-@end
-@implementation PodsDummy_Pods
-@end
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
deleted file mode 100644
index d0acfc70ecaa3f4cdd884f7b1e18f6b043dbded1..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods-environment.h	
+++ /dev/null
@@ -1,20 +0,0 @@
-
-// To check if a library is compiled with CocoaPods you
-// can use the `COCOAPODS` macro definition which is
-// defined in the xcconfigs so it is available in
-// headers also when they are imported in the client
-// 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
-#define COCOAPODS_VERSION_MINOR_RxLibrary 0
-#define COCOAPODS_VERSION_PATCH_RxLibrary 1
-
diff --git a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods-resources.sh b/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods-resources.sh
deleted file mode 100755
index e149064a090682c96ecd6833aa61db7e87a2eab5..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods-resources.sh	
+++ /dev/null
@@ -1,74 +0,0 @@
-#!/bin/sh
-set -e
-
-mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
-
-RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt
-> "$RESOURCES_TO_COPY"
-
-install_resource()
-{
-  case $1 in
-    *.storyboard)
-      echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}"
-      ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc" "${PODS_ROOT}/$1" --sdk "${SDKROOT}"
-      ;;
-    *.xib)
-        echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}"
-      ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib" "${PODS_ROOT}/$1" --sdk "${SDKROOT}"
-      ;;
-    *.framework)
-      echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
-      mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
-      echo "rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
-      rsync -av "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
-      ;;
-    *.xcdatamodel)
-      echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1"`.mom\""
-      xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodel`.mom"
-      ;;
-    *.xcdatamodeld)
-      echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd\""
-      xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd"
-      ;;
-    *.xcmappingmodel)
-      echo "xcrun mapc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm\""
-      xcrun mapc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm"
-      ;;
-    *.xcassets)
-      ;;
-    /*)
-      echo "$1"
-      echo "$1" >> "$RESOURCES_TO_COPY"
-      ;;
-    *)
-      echo "${PODS_ROOT}/$1"
-      echo "${PODS_ROOT}/$1" >> "$RESOURCES_TO_COPY"
-      ;;
-  esac
-}
-
-rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
-if [[ "${ACTION}" == "install" ]]; then
-  rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
-fi
-rm -f "$RESOURCES_TO_COPY"
-
-if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ `find . -name '*.xcassets' | wc -l` -ne 0 ]
-then
-  case "${TARGETED_DEVICE_FAMILY}" in
-    1,2)
-      TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone"
-      ;;
-    1)
-      TARGET_DEVICE_ARGS="--target-device iphone"
-      ;;
-    2)
-      TARGET_DEVICE_ARGS="--target-device ipad"
-      ;;
-    *)
-      TARGET_DEVICE_ARGS="--target-device mac"
-      ;;
-  esac
-  find "${PWD}" -name "*.xcassets" -print0 | xargs -0 actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${IPHONEOS_DEPLOYMENT_TARGET}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
-fi
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
deleted file mode 100644
index e9fafccb0769575537cf9fe2777363bde97ffc0d..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods.debug.xcconfig	
+++ /dev/null
@@ -1,6 +0,0 @@
-GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-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
deleted file mode 100644
index e9fafccb0769575537cf9fe2777363bde97ffc0d..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Pods/Target Support Files/Pods/Pods.release.xcconfig	
+++ /dev/null
@@ -1,6 +0,0 @@
-GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-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/README.md b/src/objective-c/examples/Sample/README.md
index 45ba544a34a1b8d256222c359e83fd9c0b680c37..716241bb756df235823995377c2ca72900e39b79 100644
--- a/src/objective-c/examples/Sample/README.md
+++ b/src/objective-c/examples/Sample/README.md
@@ -1,2 +1 @@
-When contributing changes to this sample, use Cocoapods to manage the workspace
-file and everything under the Pods directory.
\ No newline at end of file
+This sample app requires the use of Cocoapods. After installing Cocoapods, run `pod install` in this directory to recreate its dependencies. (This will compile OpenSSL, which takes some time).
diff --git a/src/objective-c/examples/Sample/RemoteTestClient/RemoteTest.podspec b/src/objective-c/examples/Sample/RemoteTestClient/RemoteTest.podspec
index 4790594bc5ba45fc1979c455b32b6c14e4cbe3aa..7b025ce25283802050dcb53e3ece949bf0a6856c 100644
--- a/src/objective-c/examples/Sample/RemoteTestClient/RemoteTest.podspec
+++ b/src/objective-c/examples/Sample/RemoteTestClient/RemoteTest.podspec
@@ -14,4 +14,5 @@ Pod::Spec.new do |s|
   s.requires_arc = true
 
   s.dependency 'ProtocolBuffers', '~> 1.9'
+  s.dependency 'gRPC', '~> 0.0'
 end
diff --git a/src/objective-c/examples/Sample/RemoteTestClient/Test.pb.h b/src/objective-c/examples/Sample/RemoteTestClient/Test.pb.h
index 6db981dc5bb9d8c6772df4f3b32eb47e0a15d308..b6111b15b8ae932a306835cd42c402d1bbb48727 100644
--- a/src/objective-c/examples/Sample/RemoteTestClient/Test.pb.h
+++ b/src/objective-c/examples/Sample/RemoteTestClient/Test.pb.h
@@ -4,6 +4,7 @@
 
 #import "Empty.pb.h"
 #import "Messages.pb.h"
+#import <gRPC/ProtoService.h>
 // @@protoc_insertion_point(imports)
 
 @class ObjectiveCFileOptions;
@@ -78,4 +79,89 @@
 @end
 
 
+
+@protocol GRXWriteable;
+@protocol GRXWriter;
+
+@protocol RMTTestService <NSObject>
+
+#pragma mark EmptyCall(grpc.testing.Empty) returns (grpc.testing.Empty)
+
+// One empty request followed by one empty response.
+- (void)emptyCallWithRequest:(RMTEmpty *)request
+                     handler:(void(^)(RMTEmpty *response, NSError *error))handler;
+
+// Returns a not-yet-started RPC object.
+- (ProtoRPC *)RPCToEmptyCallWithRequest:(RMTEmpty *)request
+                                handler:(void(^)(RMTEmpty *response, NSError *error))handler;
+
+
+#pragma mark UnaryCall(SimpleRequest) returns (SimpleResponse)
+
+// One request followed by one response.
+- (void)unaryCallWithRequest:(RMTSimpleRequest *)request
+                     handler:(void(^)(RMTSimpleResponse *response, NSError *error))handler;
+
+// Returns a not-yet-started RPC object.
+- (ProtoRPC *)RPCToUnaryCallWithRequest:(RMTSimpleRequest *)request
+                                handler:(void(^)(RMTSimpleResponse *response, NSError *error))handler;
+
+
+#pragma mark StreamingOutputCall(StreamingOutputCallRequest) returns (stream StreamingOutputCallResponse)
+
+// One request followed by a sequence of responses (streamed download).
+// The server returns the payload with client desired type and sizes.
+- (void)streamingOutputCallWithRequest:(RMTStreamingOutputCallRequest *)request
+                               handler:(void(^)(BOOL done, RMTStreamingOutputCallResponse *response, NSError *error))handler;
+
+// Returns a not-yet-started RPC object.
+- (ProtoRPC *)RPCToStreamingOutputCallWithRequest:(RMTStreamingOutputCallRequest *)request
+                                          handler:(void(^)(BOOL done, RMTStreamingOutputCallResponse *response, NSError *error))handler;
+
+
+#pragma mark StreamingInputCall(stream StreamingInputCallRequest) returns (StreamingInputCallResponse)
+
+// A sequence of requests followed by one response (streamed upload).
+// The server returns the aggregated size of client payload as the result.
+- (void)streamingInputCallWithRequestsWriter:(id<GRXWriter>)request
+                                     handler:(void(^)(RMTStreamingInputCallResponse *response, NSError *error))handler;
+
+// Returns a not-yet-started RPC object.
+- (ProtoRPC *)RPCToStreamingInputCallWithRequestsWriter:(id<GRXWriter>)request
+                                                handler:(void(^)(RMTStreamingInputCallResponse *response, NSError *error))handler;
+
+
+#pragma mark FullDuplexCall(stream StreamingOutputCallRequest) returns (stream StreamingOutputCallResponse)
+
+// A sequence of requests with each request served by the server immediately.
+// As one request could lead to multiple responses, this interface
+// demonstrates the idea of full duplexing.
+- (void)fullDuplexCallWithRequestsWriter:(id<GRXWriter>)request
+                                 handler:(void(^)(BOOL done, RMTStreamingOutputCallResponse *response, NSError *error))handler;
+
+// Returns a not-yet-started RPC object.
+- (ProtoRPC *)RPCToFullDuplexCallWithRequestsWriter:(id<GRXWriter>)request
+                                            handler:(void(^)(BOOL done, RMTStreamingOutputCallResponse *response, NSError *error))handler;
+
+
+#pragma mark HalfDuplexCall(stream StreamingOutputCallRequest) returns (stream StreamingOutputCallResponse)
+
+// A sequence of requests followed by a sequence of responses.
+// The server buffers all the client requests and then serves them in order. A
+// stream of responses are returned to the client when the server starts with
+// first request.
+- (void)halfDuplexCallWithRequestsWriter:(id<GRXWriter>)request
+                                 handler:(void(^)(BOOL done, RMTStreamingOutputCallResponse *response, NSError *error))handler;
+
+// Returns a not-yet-started RPC object.
+- (ProtoRPC *)RPCToHalfDuplexCallWithRequestsWriter:(id<GRXWriter>)request
+                                            handler:(void(^)(BOOL done, RMTStreamingOutputCallResponse *response, NSError *error))handler;
+
+@end
+
+// Basic service implementation, over gRPC, that only does marshalling and parsing.
+@interface RMTTestService : ProtoService<RMTTestService>
+- (instancetype)initWithHost:(NSString *)host NS_DESIGNATED_INITIALIZER;
+@end
+
 // @@protoc_insertion_point(global_scope)
diff --git a/src/objective-c/examples/Sample/RemoteTestClient/Test.pb.m b/src/objective-c/examples/Sample/RemoteTestClient/Test.pb.m
index bd6a29df413ea3968858912e9256e966884b1978..31a3ba3a61143621189bdbf3f82dbd4017a764cc 100644
--- a/src/objective-c/examples/Sample/RemoteTestClient/Test.pb.m
+++ b/src/objective-c/examples/Sample/RemoteTestClient/Test.pb.m
@@ -1,6 +1,10 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
 
 #import "Test.pb.h"
+
+#import <gRPC/GRXWriteable.h>
+#import <gRPC/GRXWriter+Immediate.h>
+#import <gRPC/ProtoRPC.h>
 // @@protoc_insertion_point(imports)
 
 @implementation RMTTestRoot
@@ -24,4 +28,136 @@ static PBExtensionRegistry* extensionRegistry = nil;
 @end
 
 
+static NSString *const kPackageName = @"grpc.testing";
+static NSString *const kServiceName = @"TestService";
+
+@implementation RMTTestService
+
+// Designated initializer
+- (instancetype)initWithHost:(NSString *)host {
+  return (self = [super initWithHost:host packageName:kPackageName serviceName:kServiceName]);
+}
+
+- (instancetype)initWithHost:(NSString *)host
+                 packageName:(NSString *)packageName
+                 serviceName:(NSString *)serviceName {
+  return [self initWithHost:host];
+}
+
+#pragma mark EmptyCall(grpc.testing.Empty) returns (grpc.testing.Empty)
+
+// One empty request followed by one empty response.
+- (void)emptyCallWithRequest:(RMTEmpty *)request
+                     handler:(void(^)(RMTEmpty *response, NSError *error))handler {
+  [[self RPCToEmptyCallWithRequest:request handler:handler] start];
+}
+
+// Returns a not-yet-started RPC object.
+- (ProtoRPC *)RPCToEmptyCallWithRequest:(RMTEmpty *)request
+                                handler:(void(^)(RMTEmpty *response, NSError *error))handler {
+  return [self RPCToMethod:@"EmptyCall"
+            requestsWriter:[GRXWriter writerWithValue:request]
+             responseClass:[RMTEmpty class]
+        responsesWriteable:[GRXWriteable writeableWithSingleValueHandler:handler]];
+}
+
+
+#pragma mark UnaryCall(SimpleRequest) returns (SimpleResponse)
+
+// One request followed by one response.
+- (void)unaryCallWithRequest:(RMTSimpleRequest *)request
+                     handler:(void(^)(RMTSimpleResponse *response, NSError *error))handler {
+  [[self RPCToUnaryCallWithRequest:request handler:handler] start];
+}
+
+// Returns a not-yet-started RPC object.
+- (ProtoRPC *)RPCToUnaryCallWithRequest:(RMTSimpleRequest *)request
+                                handler:(void(^)(RMTSimpleResponse *response, NSError *error))handler {
+  return [self RPCToMethod:@"UnaryCall"
+            requestsWriter:[GRXWriter writerWithValue:request]
+             responseClass:[RMTSimpleResponse class]
+        responsesWriteable:[GRXWriteable writeableWithSingleValueHandler:handler]];
+}
+
+
+#pragma mark StreamingOutputCall(StreamingOutputCallRequest) returns (stream StreamingOutputCallResponse)
+
+// One request followed by a sequence of responses (streamed download).
+// The server returns the payload with client desired type and sizes.
+- (void)streamingOutputCallWithRequest:(RMTStreamingOutputCallRequest *)request
+                               handler:(void(^)(BOOL done, RMTStreamingOutputCallResponse *response, NSError *error))handler {
+  [[self RPCToStreamingOutputCallWithRequest:request handler:handler] start];
+}
+
+// Returns a not-yet-started RPC object.
+- (ProtoRPC *)RPCToStreamingOutputCallWithRequest:(RMTStreamingOutputCallRequest *)request
+                                          handler:(void(^)(BOOL done, RMTStreamingOutputCallResponse *response, NSError *error))handler {
+  return [self RPCToMethod:@"StreamingOutputCall"
+            requestsWriter:[GRXWriter writerWithValue:request]
+             responseClass:[RMTStreamingOutputCallResponse class]
+        responsesWriteable:[GRXWriteable writeableWithStreamHandler:handler]];
+}
+
+
+#pragma mark StreamingInputCall(stream StreamingInputCallRequest) returns (StreamingInputCallResponse)
+
+// A sequence of requests followed by one response (streamed upload).
+// The server returns the aggregated size of client payload as the result.
+- (void)streamingInputCallWithRequestsWriter:(id<GRXWriter>)requestsWriter
+                                     handler:(void(^)(RMTStreamingInputCallResponse *response, NSError *error))handler {
+  [[self RPCToStreamingInputCallWithRequestsWriter:requestsWriter handler:handler] start];
+}
+
+// Returns a not-yet-started RPC object.
+- (ProtoRPC *)RPCToStreamingInputCallWithRequestsWriter:(id<GRXWriter>)requestsWriter
+                                                handler:(void(^)(RMTStreamingInputCallResponse *response, NSError *error))handler {
+  return [self RPCToMethod:@"StreamingInputCall"
+            requestsWriter:requestsWriter
+             responseClass:[RMTStreamingInputCallResponse class]
+        responsesWriteable:[GRXWriteable writeableWithSingleValueHandler:handler]];
+}
+
+
+#pragma mark FullDuplexCall(stream StreamingOutputCallRequest) returns (stream StreamingOutputCallResponse)
+
+// A sequence of requests with each request served by the server immediately.
+// As one request could lead to multiple responses, this interface
+// demonstrates the idea of full duplexing.
+- (void)fullDuplexCallWithRequestsWriter:(id<GRXWriter>)requestsWriter
+                                 handler:(void(^)(BOOL done, RMTStreamingOutputCallResponse *response, NSError *error))handler {
+  [[self RPCToFullDuplexCallWithRequestsWriter:requestsWriter handler:handler] start];
+}
+
+// Returns a not-yet-started RPC object.
+- (ProtoRPC *)RPCToFullDuplexCallWithRequestsWriter:(id<GRXWriter>)requestsWriter
+                                            handler:(void(^)(BOOL done, RMTStreamingOutputCallResponse *response, NSError *error))handler {
+  return [self RPCToMethod:@"FullDuplexCall"
+            requestsWriter:requestsWriter
+             responseClass:[RMTStreamingOutputCallResponse class]
+        responsesWriteable:[GRXWriteable writeableWithStreamHandler:handler]];
+}
+
+
+#pragma mark HalfDuplexCall(stream StreamingOutputCallRequest) returns (stream StreamingOutputCallResponse)
+
+// A sequence of requests followed by a sequence of responses.
+// The server buffers all the client requests and then serves them in order. A
+// stream of responses are returned to the client when the server starts with
+// first request.
+- (void)halfDuplexCallWithRequestsWriter:(id<GRXWriter>)requestsWriter
+                                 handler:(void(^)(BOOL done, RMTStreamingOutputCallResponse *response, NSError *error))handler {
+  [[self RPCToHalfDuplexCallWithRequestsWriter:requestsWriter handler:handler] start];
+}
+
+// Returns a not-yet-started RPC object.
+- (ProtoRPC *)RPCToHalfDuplexCallWithRequestsWriter:(id<GRXWriter>)requestsWriter
+                                            handler:(void(^)(BOOL done, RMTStreamingOutputCallResponse *response, NSError *error))handler {
+  return [self RPCToMethod:@"HalfDuplexCall"
+            requestsWriter:requestsWriter
+             responseClass:[RMTStreamingOutputCallResponse class]
+        responsesWriteable:[GRXWriteable writeableWithStreamHandler:handler]];
+}
+
+@end
+
 // @@protoc_insertion_point(global_scope)
diff --git a/src/objective-c/examples/Sample/Sample.xcodeproj/project.pbxproj b/src/objective-c/examples/Sample/Sample.xcodeproj/project.pbxproj
index 3ddaceadce42914280362c83fbeef4a60ad8c481..17c2255b5a00251fe4082cf681d56913e6e9ec15 100644
--- a/src/objective-c/examples/Sample/Sample.xcodeproj/project.pbxproj
+++ b/src/objective-c/examples/Sample/Sample.xcodeproj/project.pbxproj
@@ -8,6 +8,8 @@
 
 /* Begin PBXBuildFile section */
 		60BBBBB15823BBF7639D7AA9 /* libPods.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2DC7B7C4C0410F43B9621631 /* libPods.a */; };
+		6340F0491AE66E3300FB6A3D /* RemoteProtoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 6340F0481AE66E3300FB6A3D /* RemoteProtoTests.m */; };
+		6356D1DE1AC11FE00075FBBC /* RemoteTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 6356D1DD1AC11FE00075FBBC /* RemoteTests.m */; };
 		6369A2701A9322E20015FC5C /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 6369A26F1A9322E20015FC5C /* main.m */; };
 		6369A2731A9322E20015FC5C /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 6369A2721A9322E20015FC5C /* AppDelegate.m */; };
 		6369A2761A9322E20015FC5C /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 6369A2751A9322E20015FC5C /* ViewController.m */; };
@@ -15,7 +17,6 @@
 		6369A27B1A9322E20015FC5C /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 6369A27A1A9322E20015FC5C /* Images.xcassets */; };
 		6369A27E1A9322E20015FC5C /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 6369A27C1A9322E20015FC5C /* LaunchScreen.xib */; };
 		6369A28A1A9322E20015FC5C /* SampleTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 6369A2891A9322E20015FC5C /* SampleTests.m */; };
-		63D886A71AE73797000580D7 /* RemoteTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 63D886A61AE73797000580D7 /* RemoteTests.m */; };
 		FC81FE63CA655031F3524EC0 /* libPods.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2DC7B7C4C0410F43B9621631 /* libPods.a */; };
 /* End PBXBuildFile section */
 
@@ -31,6 +32,8 @@
 
 /* Begin PBXFileReference section */
 		2DC7B7C4C0410F43B9621631 /* libPods.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPods.a; sourceTree = BUILT_PRODUCTS_DIR; };
+		6340F0481AE66E3300FB6A3D /* RemoteProtoTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RemoteProtoTests.m; sourceTree = "<group>"; };
+		6356D1DD1AC11FE00075FBBC /* RemoteTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RemoteTests.m; sourceTree = "<group>"; };
 		6369A26A1A9322E20015FC5C /* Sample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Sample.app; sourceTree = BUILT_PRODUCTS_DIR; };
 		6369A26E1A9322E20015FC5C /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
 		6369A26F1A9322E20015FC5C /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
@@ -44,7 +47,6 @@
 		6369A2831A9322E20015FC5C /* SampleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SampleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
 		6369A2881A9322E20015FC5C /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
 		6369A2891A9322E20015FC5C /* SampleTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SampleTests.m; sourceTree = "<group>"; };
-		63D886A61AE73797000580D7 /* RemoteTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RemoteTests.m; sourceTree = "<group>"; };
 		AC29DD6FCDF962F519FEBB0D /* Pods.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.debug.xcconfig; path = "Pods/Target Support Files/Pods/Pods.debug.xcconfig"; sourceTree = "<group>"; };
 		C68330F8D451CC6ACEABA09F /* Pods.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.release.xcconfig; path = "Pods/Target Support Files/Pods/Pods.release.xcconfig"; sourceTree = "<group>"; };
 /* End PBXFileReference section */
@@ -116,9 +118,10 @@
 		6369A2861A9322E20015FC5C /* SampleTests */ = {
 			isa = PBXGroup;
 			children = (
-				63D886A61AE73797000580D7 /* RemoteTests.m */,
+				6340F0481AE66E3300FB6A3D /* RemoteProtoTests.m */,
 				6369A2891A9322E20015FC5C /* SampleTests.m */,
 				6369A2871A9322E20015FC5C /* Supporting Files */,
+				6356D1DD1AC11FE00075FBBC /* RemoteTests.m */,
 			);
 			path = SampleTests;
 			sourceTree = "<group>";
@@ -326,7 +329,8 @@
 			buildActionMask = 2147483647;
 			files = (
 				6369A28A1A9322E20015FC5C /* SampleTests.m in Sources */,
-				63D886A71AE73797000580D7 /* RemoteTests.m in Sources */,
+				6340F0491AE66E3300FB6A3D /* RemoteProtoTests.m in Sources */,
+				6356D1DE1AC11FE00075FBBC /* RemoteTests.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
diff --git a/src/objective-c/examples/Sample/Sample.xcworkspace/contents.xcworkspacedata b/src/objective-c/examples/Sample/Sample.xcworkspace/contents.xcworkspacedata
deleted file mode 100644
index 7b5a2f3050a527698c6cd9cfc08a96b4ef83556d..0000000000000000000000000000000000000000
--- a/src/objective-c/examples/Sample/Sample.xcworkspace/contents.xcworkspacedata
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Workspace
-   version = "1.0">
-   <FileRef
-      location = "group:Sample.xcodeproj">
-   </FileRef>
-   <FileRef
-      location = "group:Pods/Pods.xcodeproj">
-   </FileRef>
-</Workspace>
diff --git a/src/objective-c/examples/Sample/SampleTests/RemoteProtoTests.m b/src/objective-c/examples/Sample/SampleTests/RemoteProtoTests.m
new file mode 100644
index 0000000000000000000000000000000000000000..6c5de812770d038b09b9157cde60f44ec4f6cff1
--- /dev/null
+++ b/src/objective-c/examples/Sample/SampleTests/RemoteProtoTests.m
@@ -0,0 +1,90 @@
+/*
+ *
+ * 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 <UIKit/UIKit.h>
+#import <XCTest/XCTest.h>
+
+#import <RemoteTest/Messages.pb.h>
+#import <RemoteTest/Test.pb.h>
+
+@interface RemoteProtoTests : XCTestCase
+@end
+
+@implementation RemoteProtoTests {
+  RMTTestService *_service;
+}
+
+- (void)setUp {
+  _service = [[RMTTestService alloc] initWithHost:@"grpc-test.sandbox.google.com"];
+}
+
+- (void)testEmptyRPC {
+  __weak XCTestExpectation *noRPCError = [self expectationWithDescription:@"RPC succeeded."];
+  __weak XCTestExpectation *responded = [self expectationWithDescription:@"Response received."];
+
+  [_service emptyCallWithRequest:[RMTEmpty defaultInstance]
+                         handler:^(RMTEmpty *response, NSError *error) {
+    XCTAssertNil(error, @"Finished with unexpected error: %@", error);
+    [noRPCError fulfill];
+    XCTAssertNotNil(response, @"nil response received.");
+    [responded fulfill];
+  }];
+
+  [self waitForExpectationsWithTimeout:2. handler:nil];
+}
+
+- (void)testSimpleProtoRPC {
+  __weak XCTestExpectation *noRPCError = [self expectationWithDescription:@"RPC succeeded."];
+  __weak XCTestExpectation *responded = [self expectationWithDescription:@"Response received."];
+  __weak XCTestExpectation *validResponse = [self expectationWithDescription:@"Valid response."];
+
+  RMTSimpleRequest *request = [[[[[[RMTSimpleRequestBuilder alloc] init]
+                                  setResponseSize:100]
+                                 setFillUsername:YES]
+                                setFillOauthScope:YES]
+                               build];
+  [_service unaryCallWithRequest:request handler:^(RMTSimpleResponse *response, NSError *error) {
+    XCTAssertNil(error, @"Finished with unexpected error: %@", error);
+    [noRPCError fulfill];
+    XCTAssertNotNil(response, @"nil response received.");
+    [responded fulfill];
+    // We expect empty strings, not nil:
+    XCTAssertNotNil(response.username, @"Response's username is nil.");
+    XCTAssertNotNil(response.oauthScope, @"Response's OAuth scope is nil.");
+    [validResponse fulfill];
+  }];
+
+  [self waitForExpectationsWithTimeout:2. handler:nil];
+}
+
+@end
diff --git a/src/python/src/grpc/_adapter/_low_test.py b/src/python/src/grpc/_adapter/_low_test.py
index e88b70969ca71f6f9b232653ef95c2a34d28d080..826c586a1edcd8005deb039940d60c9e3cf4ed21 100644
--- a/src/python/src/grpc/_adapter/_low_test.py
+++ b/src/python/src/grpc/_adapter/_low_test.py
@@ -43,7 +43,6 @@ _BYTE_SEQUENCE_SEQUENCE = tuple(
     bytes(bytearray((row + column) % 256 for column in range(row)))
     for row in range(_STREAM_LENGTH))
 
-
 class LonelyClientTest(unittest.TestCase):
 
   def testLonelyClient(self):
@@ -296,7 +295,6 @@ class EchoTest(unittest.TestCase):
   def testManyManyByteEchoes(self):
     self._perform_echo_test(_BYTE_SEQUENCE_SEQUENCE)
 
-
 class CancellationTest(unittest.TestCase):
 
   def setUp(self):
@@ -392,7 +390,8 @@ class CancellationTest(unittest.TestCase):
 
     finish_event = self.client_completion_queue.get(_FUTURE)
     self.assertEqual(_low.Event.Kind.FINISH, finish_event.kind)
-    self.assertEqual(_low.Status(_low.Code.CANCELLED, ''), finish_event.status)
+    self.assertEqual(_low.Status(_low.Code.CANCELLED, 'Cancelled'), 
+                                 finish_event.status)
 
     server_timeout_none_event = self.server_completion_queue.get(0)
     self.assertIsNone(server_timeout_none_event)
diff --git a/src/ruby/bin/interop/interop_client.rb b/src/ruby/bin/interop/interop_client.rb
index 6f1fe2614f46a8ddc19dcb81ab6a9f9f2afe69fd..a3889247225b7f36fc70d6a38f9c170e90108723 100755
--- a/src/ruby/bin/interop/interop_client.rb
+++ b/src/ruby/bin/interop/interop_client.rb
@@ -277,13 +277,13 @@ class NamedTests
     p 'OK: cancel_after_begin'
   end
 
-  def cancel_after_first
+  def cancel_after_first_response
     msg_sizes = [[27_182, 31_415], [8, 9], [1828, 2653], [45_904, 58_979]]
     ppp = PingPongPlayer.new(msg_sizes)
     op = @stub.full_duplex_call(ppp.each_item, return_op: true)
     ppp.canceller_op = op  # causes ppp to cancel after the 1st message
     assert_raises(GRPC::Cancelled) { op.execute.each { |r| ppp.queue.push(r) } }
-    p 'OK: cancel_after_first'
+    p 'OK: cancel_after_first_response'
   end
 
   def all
diff --git a/src/ruby/ext/grpc/rb_call.c b/src/ruby/ext/grpc/rb_call.c
index 6da7d3c830532e8113ddebb90f73250c5f5b1eea..f4ae6fab8467f434894867ed01b50169b76d0376 100644
--- a/src/ruby/ext/grpc/rb_call.c
+++ b/src/ruby/ext/grpc/rb_call.c
@@ -607,19 +607,19 @@ static VALUE grpc_rb_call_run_batch(VALUE self, VALUE cqueue, VALUE tag,
     rb_raise(grpc_rb_eCallError,
              "grpc_call_start_batch failed with %s (code=%d)",
              grpc_call_error_detail_of(err), err);
-    return;
+    return Qnil;
   }
   ev = grpc_rb_completion_queue_pluck_event(cqueue, tag, timeout);
   if (ev == NULL) {
     grpc_run_batch_stack_cleanup(&st);
     rb_raise(grpc_rb_eOutOfTime, "grpc_call_start_batch timed out");
-    return;
+    return Qnil;
   }
   if (ev->data.op_complete != GRPC_OP_OK) {
     grpc_run_batch_stack_cleanup(&st);
     rb_raise(grpc_rb_eCallError, "start_batch completion failed, (code=%d)",
              ev->data.op_complete);
-    return;
+    return Qnil;
   }
 
   /* Build and return the BatchResult struct result */
diff --git a/src/ruby/grpc.gemspec b/src/ruby/grpc.gemspec
index c633579102531d5f43c73b56ffb628a917000f31..19b3e21cb6d1f170008a6bce8a02c85e2005fbfd 100755
--- a/src/ruby/grpc.gemspec
+++ b/src/ruby/grpc.gemspec
@@ -26,7 +26,7 @@ Gem::Specification.new do |s|
 
   s.add_dependency 'google-protobuf', '~> 3.0.0alpha.1.1'
   s.add_dependency 'googleauth', '~> 0.4'  # reqd for interop tests
-  s.add_dependency 'logging', '~> 1.8'
+  s.add_dependency 'logging', '~> 2.0'
   s.add_dependency 'minitest', '~> 5.4'  # reqd for interop tests
 
   s.add_development_dependency 'simplecov', '~> 0.9'
diff --git a/src/ruby/lib/grpc.rb b/src/ruby/lib/grpc.rb
index b0f68035cd6d8dae0653333ac51c98ddaf8c9ee9..80b5743e9145b638dd0f33d9d55e1efdb990a83d 100644
--- a/src/ruby/lib/grpc.rb
+++ b/src/ruby/lib/grpc.rb
@@ -30,6 +30,7 @@
 require 'grpc/errors'
 require 'grpc/grpc'
 require 'grpc/logconfig'
+require 'grpc/notifier'
 require 'grpc/version'
 require 'grpc/core/time_consts'
 require 'grpc/generic/active_call'
diff --git a/src/ruby/lib/grpc/generic/active_call.rb b/src/ruby/lib/grpc/generic/active_call.rb
index 43ba549905986c5f175a5d7b80ca0ad73f9a5486..947c39cd2265685ef9c9ebd937fd0360a9eca441 100644
--- a/src/ruby/lib/grpc/generic/active_call.rb
+++ b/src/ruby/lib/grpc/generic/active_call.rb
@@ -188,7 +188,7 @@ module GRPC
     # @param marshalled [false, true] indicates if the object is already
     # marshalled.
     def remote_send(req, marshalled = false)
-      logger.debug("sending #{req.inspect}, marshalled? #{marshalled}")
+      logger.debug("sending #{req}, marshalled? #{marshalled}")
       if marshalled
         payload = req
       else
diff --git a/src/ruby/lib/grpc/generic/bidi_call.rb b/src/ruby/lib/grpc/generic/bidi_call.rb
index b813ab5b542420df20986b40513c5cc81e1003bb..4ca3004d6f0755052b3764d4dc0c9140f5690a6e 100644
--- a/src/ruby/lib/grpc/generic/bidi_call.rb
+++ b/src/ruby/lib/grpc/generic/bidi_call.rb
@@ -123,8 +123,7 @@ module GRPC
         break if req.equal?(END_OF_READS)
         yield req
       end
-      @loop_th.join
-      @enq_th.join
+      @enq_th.join if @enq_th.alive?
     end
 
     # during bidi-streaming, read the requests to send from a separate thread
diff --git a/src/ruby/lib/grpc/generic/rpc_server.rb b/src/ruby/lib/grpc/generic/rpc_server.rb
index 88c24aa92bbdc18e14e13694e025c69ae3eaa1d0..3375fcf20ac2be27ad021d071a47d321d5d920c5 100644
--- a/src/ruby/lib/grpc/generic/rpc_server.rb
+++ b/src/ruby/lib/grpc/generic/rpc_server.rb
@@ -54,6 +54,18 @@ module GRPC
   end
   module_function :handle_signals
 
+  # Sets up a signal handler that adds signals to the signal handling global.
+  #
+  # Signal handlers should do as little as humanly possible.
+  # Here, they just add themselves to $grpc_signals
+  #
+  # RpcServer (and later other parts of gRPC) monitors the signals
+  # $grpc_signals in its own non-signal context.
+  def trap_signals
+    %w(INT TERM).each { |sig| trap(sig) { $grpc_signals << sig } }
+  end
+  module_function :trap_signals
+
   # Pool is a simple thread pool.
   class Pool
     # Default keep alive period is 1s
@@ -172,17 +184,6 @@ module GRPC
     # Signal check period is 0.25s
     SIGNAL_CHECK_PERIOD = 0.25
 
-    # Sets up a signal handler that adds signals to the signal handling global.
-    #
-    # Signal handlers should do as little as humanly possible.
-    # Here, they just add themselves to $grpc_signals
-    #
-    # RpcServer (and later other parts of gRPC) monitors the signals
-    # $grpc_signals in its own non-signal context.
-    def self.trap_signals
-      %w(INT TERM).each { |sig| trap(sig) { $grpc_signals << sig } }
-    end
-
     # setup_cq is used by #initialize to constuct a Core::CompletionQueue from
     # its arguments.
     def self.setup_cq(alt_cq)
@@ -299,12 +300,12 @@ module GRPC
     # Runs the server in its own thread, then waits for signal INT or TERM on
     # the current thread to terminate it.
     def run_till_terminated
-      self.class.trap_signals
+      GRPC.trap_signals
       t = Thread.new { run }
       wait_till_running
       loop do
         sleep SIGNAL_CHECK_PERIOD
-        break unless handle_signals
+        break unless GRPC.handle_signals
       end
       stop
       t.join
diff --git a/src/ruby/lib/grpc/notifier.rb b/src/ruby/lib/grpc/notifier.rb
new file mode 100644
index 0000000000000000000000000000000000000000..caa18bbed6de4f30fa899ba6011e2e9e95d28317
--- /dev/null
+++ b/src/ruby/lib/grpc/notifier.rb
@@ -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.
+
+# GRPC contains the General RPC module.
+module GRPC
+  # Notifier is useful high-level synchronization primitive.
+  class Notifier
+    attr_reader :payload, :notified
+    alias_method :notified?, :notified
+
+    def initialize
+      @mutex    = Mutex.new
+      @cvar     = ConditionVariable.new
+      @notified = false
+      @payload  = nil
+    end
+
+    def wait
+      @mutex.synchronize do
+        @cvar.wait(@mutex) until notified?
+      end
+    end
+
+    def notify(payload)
+      @mutex.synchronize do
+        return Error.new('already notified') if notified?
+        @payload  = payload
+        @notified = true
+        @cvar.signal
+        return nil
+      end
+    end
+  end
+end
diff --git a/src/ruby/spec/generic/client_stub_spec.rb b/src/ruby/spec/generic/client_stub_spec.rb
index 88c6b44c229aa99f2afaf20c1d0e9e585f1269c7..98d68ccfbb89d775f8304700d3d806bc00fdc6cd 100644
--- a/src/ruby/spec/generic/client_stub_spec.rb
+++ b/src/ruby/spec/generic/client_stub_spec.rb
@@ -29,37 +29,8 @@
 
 require 'grpc'
 
-# Notifier is useful high-level synchronization primitive.
-class Notifier
-  attr_reader :payload, :notified
-  alias_method :notified?, :notified
-
-  def initialize
-    @mutex    = Mutex.new
-    @cvar     = ConditionVariable.new
-    @notified = false
-    @payload  = nil
-  end
-
-  def wait
-    @mutex.synchronize do
-      @cvar.wait(@mutex) until notified?
-    end
-  end
-
-  def notify(payload)
-    @mutex.synchronize do
-      return Error.new('already notified') if notified?
-      @payload  = payload
-      @notified = true
-      @cvar.signal
-      return nil
-    end
-  end
-end
-
 def wakey_thread(&blk)
-  n = Notifier.new
+  n = GRPC::Notifier.new
   t = Thread.new do
     blk.call(n)
   end
diff --git a/templates/Makefile.template b/templates/Makefile.template
index 926c908b66ff69ab8bca3ff02c16308ceba8599e..e51af39348e469daac938499fe4a80d1a19ad8f9 100644
--- a/templates/Makefile.template
+++ b/templates/Makefile.template
@@ -42,6 +42,9 @@
     if not m:
       return filename
     return '$(GENDIR)/' + m.group(1) + '.pb.cc $(GENDIR)/' + m.group(1) + '.grpc.pb.cc'
+
+  sources_that_need_openssl = set()
+  sources_that_don_t_need_openssl = set()
 %>
 
 
@@ -152,9 +155,9 @@ CC_asan = clang
 CXX_asan = clang++
 LD_asan = clang
 LDXX_asan = clang++
-CPPFLAGS_asan = -O1 -fsanitize=address -fno-omit-frame-pointer
+CPPFLAGS_asan = -O0 -fsanitize=address -fno-omit-frame-pointer
 LDFLAGS_asan = -fsanitize=address
-DEFINES_asan = NDEBUG GRPC_TEST_SLOWDOWN_BUILD_FACTOR=5
+DEFINES_asan = GRPC_TEST_SLOWDOWN_BUILD_FACTOR=5
 
 VALID_CONFIG_msan = 1
 REQUIRE_CUSTOM_LIBRARIES_msan = 1
@@ -162,7 +165,7 @@ CC_msan = clang
 CXX_msan = clang++-libc++
 LD_msan = clang
 LDXX_msan = clang++-libc++
-CPPFLAGS_msan = -O1 -fsanitize=memory -fsanitize-memory-track-origins -fno-omit-frame-pointer -DGTEST_HAS_TR1_TUPLE=0 -DGTEST_USE_OWN_TR1_TUPLE=1
+CPPFLAGS_msan = -O0 -fsanitize=memory -fsanitize-memory-track-origins -fno-omit-frame-pointer -DGTEST_HAS_TR1_TUPLE=0 -DGTEST_USE_OWN_TR1_TUPLE=1
 OPENSSL_CFLAGS_msan = -DPURIFY
 LDFLAGS_msan = -fsanitize=memory -DGTEST_HAS_TR1_TUPLE=0 -DGTEST_USE_OWN_TR1_TUPLE=1
 DEFINES_msan = NDEBUG GRPC_TEST_SLOWDOWN_BUILD_FACTOR=20
@@ -359,8 +362,8 @@ OPENSSL_ALPN_CHECK_CMD = $(CC) $(CFLAGS) $(CPPFLAGS) -o $(TMPOUT) test/build/ope
 ZLIB_CHECK_CMD = $(CC) $(CFLAGS) $(CPPFLAGS) -o $(TMPOUT) test/build/zlib.c -lz $(LDFLAGS)
 PERFTOOLS_CHECK_CMD = $(CC) $(CFLAGS) $(CPPFLAGS) -o $(TMPOUT) test/build/perftools.c -lprofiler $(LDFLAGS)
 PROTOBUF_CHECK_CMD = $(CXX) $(CXXFLAGS) $(CPPFLAGS) -o $(TMPOUT) test/build/protobuf.cc -lprotobuf $(LDFLAGS)
-PROTOC_CMD = which protoc > /dev/null
-PROTOC_CHECK_CMD = protoc --version | grep -q libprotoc.3
+PROTOC_CHECK_CMD = which protoc > /dev/null
+PROTOC_CHECK_VERSION_CMD = protoc --version | grep -q libprotoc.3
 
 ifeq ($(OPENSSL_REQUIRES_DL),true)
 OPENSSL_ALPN_CHECK_CMD += -ldl
@@ -386,9 +389,9 @@ HAS_SYSTEM_ZLIB = false
 HAS_SYSTEM_PROTOBUF = false
 endif
 
-HAS_PROTOC = $(shell $(PROTOC_CMD) 2> /dev/null && echo true || echo false)
+HAS_PROTOC = $(shell $(PROTOC_CHECK_CMD) 2> /dev/null && echo true || echo false)
 ifeq ($(HAS_PROTOC),true)
-HAS_VALID_PROTOC = $(shell $(PROTOC_CHECK_CMD) 2> /dev/null && echo true || echo false)
+HAS_VALID_PROTOC = $(shell $(PROTOC_CHECK_VERSION_CMD) 2> /dev/null && echo true || echo false)
 else
 HAS_VALID_PROTOC = false
 endif
@@ -584,7 +587,7 @@ run_dep_checks:
 	$(ZLIB_CHECK_CMD) || true
 	$(PERFTOOLS_CHECK_CMD) || true
 	$(PROTOBUF_CHECK_CMD) || true
-	$(PROTOC_CHECK_CMD) || true
+	$(PROTOC_CHECK_VERSION_CMD) || true
 
 $(LIBDIR)/$(CONFIG)/zlib/libz.a:
 	$(E) "[MAKE]    Building zlib"
@@ -1080,15 +1083,6 @@ endif
 else
 % endif
 
-ifneq ($(OPENSSL_DEP),)
-# This is to ensure the embedded OpenSSL is built beforehand, properly
-# installing headers to their final destination on the drive. We need this
-# otherwise parallel compilation will fail if a source is compiled first.
-% for src in lib.src:
-${src}: $(OPENSSL_DEP)
-% endfor
-endif
-
 $(LIBDIR)/$(CONFIG)/lib${lib.name}.a: $(ZLIB_DEP) $(OPENSSL_DEP)\
 ## The else here corresponds to the if secure earlier.
 % else:
@@ -1136,6 +1130,7 @@ ifeq ($(SYSTEM),Darwin)
 endif
 
 <%
+
   if lib.language == 'c++':
     ld = '$(LDXX)'
   else:
@@ -1158,6 +1153,11 @@ endif
 
   if lib.get('secure', 'check') == 'yes':
     common = common + ' $(LDLIBS_SECURE) $(OPENSSL_MERGE_LIBS)'
+    for src in lib.src:
+      sources_that_need_openssl.add(src)
+  else:
+    for src in lib.src:
+      sources_that_don_t_need_openssl.add(src)
 
   if lib.get('secure', 'check') == 'yes' or lib.get('secure', 'check') == 'check':
     lib_deps = lib_deps + ' $(OPENSSL_DEP)'
@@ -1208,17 +1208,10 @@ endif
 % if lib.get('secure', 'check') == 'yes' or lib.get('secure', 'check') == 'check':
 endif
 % endif
-
 % for src in lib.src:
-% if not proto_re.match(src):
-$(OBJDIR)/$(CONFIG)/${os.path.splitext(src)[0]}.o: \
-% for src2 in lib.src:
-% if proto_re.match(src2):
-    ${proto_to_cc(src2)}\
-% endif
-% endfor
+% if not proto_re.match(src) and any(proto_re.match(src2) for src2 in lib.src):
+$(OBJDIR)/$(CONFIG)/${os.path.splitext(src)[0]}.o: ${' '.join(proto_to_cc(src2) for src2 in lib.src if proto_re.match(src2))}
 % endif
-
 % endfor
 </%def>
 
@@ -1340,6 +1333,17 @@ endif
 % endif
 </%def>
 
+ifneq ($(OPENSSL_DEP),)
+# This is to ensure the embedded OpenSSL is built beforehand, properly
+# installing headers to their final destination on the drive. We need this
+# otherwise parallel compilation will fail if a source is compiled first.
+% for src in sorted(sources_that_need_openssl):
+% if src not in sources_that_don_t_need_openssl:
+${src}: $(OPENSSL_DEP)
+% endif
+% endfor
+endif
+
 .PHONY: all strip tools \
 dep_error openssl_dep_error openssl_dep_message git_update stop \
 buildtests buildtests_c buildtests_cxx \
diff --git a/templates/README.md b/templates/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..6740972cfb6c40c47639fb12a46298504859c76a
--- /dev/null
+++ b/templates/README.md
@@ -0,0 +1,139 @@
+# Quick justification
+
+We've approached the problem of the build system from a lot of different
+angles. The main issue was that there isn't a single build system that
+was going to single handedly cover all of our usage cases.
+
+So instead we decided to work the following way:
+
+* A build.json file at the root is the source of truth for listing all of the
+target and files needed to build grpc and its tests, as well as basic system
+dependencies description.
+
+* Each project file (Makefile, Visual Studio project files, Bazel's BUILD) is
+a plain-text template that uses the build.json file to generate the final
+output file.
+
+This way we can maintain as many project system as we see fit, without having
+to manually maintain them when we add or remove new code to the repository.
+Only the structure of the project file is relevant to the template. The actual
+list of source code and targets isn't.
+
+We currently have template files for GNU Make, Visual Studio 2010 to 2015,
+and Bazel. In the future, we would like to expand to generating gyp or cmake
+project files (or potentially both), XCode project files, and an Android.mk
+file to be able to compile gRPC using Android's NDK.
+
+We'll gladly accept contribution that'd create additional project files
+using that system.
+
+# Structure of build.json
+
+The build.json file has the following structure:
+
+```
+{
+  "settings": { ... },   # global settings, such as version number
+  "filegroups": [ ... ], # groups of file that is automatically expanded
+  "libs": [ ... ],       # list of libraries to build
+  "targets": [ ... ],    # list of targets to build
+}
+```
+
+The `filegroups` are helpful to re-use a subset of files in multiple targets.
+One `filegroups` entry has the following structure:
+
+```
+{
+  "name": "arbitrary string", # the name of the filegroup
+  "public_headers": [ ... ],  # list of public headers defined in that filegroup
+  "headers": [ ... ],         # list of headers defined in that filegroup
+  "src": [ ... ],             # list of source files defined in that filegroup
+}
+```
+
+The `libs` array contains the list of all the libraries we describe. Some may be
+helper libraries for the tests. Some may be installable libraries. Some may be
+helper libraries for installable binaries.
+
+The `targets` array contains the list of all the binary targets we describe. Some may
+be installable binaries.
+
+One `libs` or `targets` entry has the following structure:
+
+```
+{
+  "name": "arbitrary string", # the name of the library
+  "build": "build type",      # in which situation we want that library to be
+                              # built and potentially installed
+  "language": "...",          # the language tag; "c" or "c++"
+  "public_headers": [ ... ],  # list of public headers to install
+  "headers": [ ... ],         # list of headers used by that target
+  "src": [ ... ],             # list of files to compile
+  "secure": "...",            # "yes", "no" or "check"
+  "baselib": boolean,         # this is a low level library that has system
+                              # dependencies
+  "vs_project_guid: "...",    # Visual Studio's unique guid for that project
+  "filegroups": [ ... ],      # list of filegroups to merge to that project
+                              # note that this will be expanded automatically
+  "deps": [ ... ],            # list of libraries this target depends on
+}
+```
+
+## The `"build"` tag
+
+Currently, the "`build`" tag have these meanings:
+
+* `"all"`: library to build on `"make all"`, and install on the system.
+* `"protoc"`: a protoc plugin to build on `"make all"` and install on the system.
+* `"priviate"`: a library to only build for tests.
+* `"test"`: a test binary to run on `"make test"`.
+
+All of the targets should always be present in the generated project file, if
+possible and applicable. But the build tag is what should group the targets
+together in a single build command.
+
+
+## The `"secure"` tag
+
+This means this target requires OpenSSL one way or another. The values can be
+`"yes"`, `"no"` and `"check"`. The default value is `"check"`. It means that
+the target requires OpenSSL, but that since the target depends on another one
+that is supposed to also import OpenSSL, the import should then be implicitely
+transitive. `"check"` should then only disable that target if OpenSSL hasn't
+been found or is unavailable.
+
+## The `"baselib"` boolean
+
+This means this is a library that will provide most of the features for gRPC.
+In particular, if we're locally building OpenSSL, protobuf or zlib, then we
+should merge OpenSSL, protobuf or zlib inside that library. That effect depends
+on the `"language"` tag. OpenSSL and zlib are for `"c"` libraries, while
+protobuf is for `"c++"` ones.
+
+# The template system
+
+We're currently using the [mako templates](http://www.makotemplates.org/)
+renderer. That choice enables us to simply render text files without dragging
+with us a lot of other features. Feel free to explore the current templates
+in that directory. The simplest one is probably [BUILD.template](BUILD.template)
+which is used to create the [Bazel](http://bazel.io/) project file.
+
+## The renderer engine
+
+As mentioned, the renderer is using [mako templates](http://www.makotemplates.org/),
+but some glue is needed to process all of that. See the [buildgen folder](../tools/buildgen)
+for more details. We're mainly loading the build.json file, and massaging it,
+in order to get the list of properties we need, into a Python dictionary, that
+is then passed to the template while rending it.
+
+## The plugins
+
+The file build.json itself isn't passed straight to the template files. It is
+first processed and modified by a few plugins. For example, the `filegroups`
+expander is [a plugin](../tools/buildgen/plugins/expand_filegroups.py).
+
+The structure of a plugin is simple. The plugin must defined the function
+`mako_plugin` that takes a Python dictionary. That dictionary represents the
+current state of the build.json contents. The plugin can alter it to whatever
+feature it needs to add.
diff --git a/test/core/channel/metadata_buffer_test.c b/test/core/channel/metadata_buffer_test.c
deleted file mode 100644
index 4fc434f9a5dca1a61418c3aa464d9668d8063ea8..0000000000000000000000000000000000000000
--- a/test/core/channel/metadata_buffer_test.c
+++ /dev/null
@@ -1,201 +0,0 @@
-/*
- *
- * 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/channel/metadata_buffer.h"
-#include "src/core/support/string.h"
-#include <grpc/support/alloc.h>
-#include <grpc/support/log.h>
-#include "test/core/util/test_config.h"
-
-#include <string.h>
-#include <stdio.h>
-
-/* construct a buffer with some prefix followed by an integer converted to
-   a string */
-static gpr_slice construct_buffer(size_t prefix_length, size_t index) {
-  gpr_slice buffer = gpr_slice_malloc(prefix_length + GPR_LTOA_MIN_BUFSIZE);
-  memset(GPR_SLICE_START_PTR(buffer), 'a', prefix_length);
-  GPR_SLICE_SET_LENGTH(
-      buffer,
-      prefix_length +
-          gpr_ltoa(index, (char *)GPR_SLICE_START_PTR(buffer) + prefix_length));
-  return buffer;
-}
-
-static void do_nothing(void *ignored, grpc_op_error also_ignored) {}
-
-/* we need a fake channel & call stack, which is defined here */
-
-/* a fake channel needs to track some information about the test */
-typedef struct {
-  size_t key_prefix_len;
-  size_t value_prefix_len;
-} channel_data;
-
-static void fail_call_op(grpc_call_element *elem, grpc_call_element *from_elem,
-                         grpc_call_op *op) {
-  abort();
-}
-
-/* verify that the metadata passed on during flush is the same as we expect */
-static void expect_call_op(grpc_call_element *elem,
-                           grpc_call_element *from_elem, grpc_call_op *op) {
-  size_t *n = elem->call_data;
-  channel_data *cd = elem->channel_data;
-  gpr_slice key = construct_buffer(cd->key_prefix_len, *n);
-  gpr_slice value = construct_buffer(cd->value_prefix_len, *n);
-
-  GPR_ASSERT(op->type == GRPC_SEND_METADATA);
-  GPR_ASSERT(op->dir == GRPC_CALL_DOWN);
-  GPR_ASSERT(op->flags == *n);
-  GPR_ASSERT(op->done_cb == do_nothing);
-  GPR_ASSERT(op->user_data == (void *)(gpr_uintptr) * n);
-  GPR_ASSERT(0 == gpr_slice_cmp(op->data.metadata->key->slice, key));
-  GPR_ASSERT(0 == gpr_slice_cmp(op->data.metadata->value->slice, value));
-
-  ++*n;
-
-  gpr_slice_unref(key);
-  gpr_slice_unref(value);
-  grpc_mdelem_unref(op->data.metadata);
-}
-
-static void fail_channel_op(grpc_channel_element *elem,
-                            grpc_channel_element *from_elem,
-                            grpc_channel_op *op) {
-  abort();
-}
-
-static void init_call_elem(grpc_call_element *elem,
-                           const void *transport_server_data) {
-  *(size_t *)elem->call_data = 0;
-}
-
-static void destroy_call_elem(grpc_call_element *elem) {}
-
-static void init_channel_elem(grpc_channel_element *elem,
-                              const grpc_channel_args *args, grpc_mdctx *mdctx,
-                              int is_first, int is_last) {}
-
-static void destroy_channel_elem(grpc_channel_element *elem) {}
-
-static const grpc_channel_filter top_filter = {
-    fail_call_op,      fail_channel_op,      sizeof(size_t),
-    init_call_elem,    destroy_call_elem,    sizeof(channel_data),
-    init_channel_elem, destroy_channel_elem, "top_filter"};
-
-static const grpc_channel_filter bottom_filter = {
-    expect_call_op,    fail_channel_op,      sizeof(size_t),
-    init_call_elem,    destroy_call_elem,    sizeof(channel_data),
-    init_channel_elem, destroy_channel_elem, "bottom_filter"};
-
-static const grpc_channel_filter *filters[2] = {&top_filter, &bottom_filter};
-
-/* run a test with differently sized keys, and values, some number of times. */
-static void test_case(size_t key_prefix_len, size_t value_prefix_len,
-                      size_t num_calls) {
-  size_t i;
-  size_t got_calls;
-  grpc_metadata_buffer buffer;
-  grpc_channel_stack *stk;
-  grpc_call_stack *call;
-  grpc_mdctx *mdctx;
-
-  gpr_log(GPR_INFO, "Test %d calls, {key,value}_prefix_len = {%d, %d}",
-          (int)num_calls, (int)key_prefix_len, (int)value_prefix_len);
-
-  mdctx = grpc_mdctx_create();
-
-  grpc_metadata_buffer_init(&buffer);
-
-  /* queue metadata elements */
-  for (i = 0; i < num_calls; i++) {
-    grpc_call_op op;
-    gpr_slice key = construct_buffer(key_prefix_len, i);
-    gpr_slice value = construct_buffer(value_prefix_len, i);
-
-    op.type = GRPC_SEND_METADATA;
-    op.dir = GRPC_CALL_DOWN;
-    op.flags = i;
-    op.data.metadata = grpc_mdelem_from_slices(mdctx, key, value);
-    op.done_cb = do_nothing;
-    op.user_data = (void *)(gpr_uintptr) i;
-
-    grpc_metadata_buffer_queue(&buffer, &op);
-  }
-
-  /* construct a test channel, call stack */
-  stk = gpr_malloc(grpc_channel_stack_size(filters, 2));
-  grpc_channel_stack_init(filters, 2, NULL, mdctx, stk);
-
-  for (i = 0; i < 2; i++) {
-    channel_data *cd =
-        (channel_data *)grpc_channel_stack_element(stk, i)->channel_data;
-    cd->key_prefix_len = key_prefix_len;
-    cd->value_prefix_len = value_prefix_len;
-  }
-
-  call = gpr_malloc(stk->call_stack_size);
-  grpc_call_stack_init(stk, NULL, call);
-
-  /* flush out metadata, verifying each element (see expect_call_op) */
-  grpc_metadata_buffer_flush(&buffer, grpc_call_stack_element(call, 0));
-
-  /* verify expect_call_op was called an appropriate number of times */
-  got_calls = *(size_t *)grpc_call_stack_element(call, 1)->call_data;
-  GPR_ASSERT(num_calls == got_calls);
-
-  /* clean up the things */
-  grpc_call_stack_destroy(call);
-  gpr_free(call);
-  grpc_channel_stack_destroy(stk);
-  gpr_free(stk);
-
-  grpc_metadata_buffer_destroy(&buffer, GRPC_OP_OK);
-  grpc_mdctx_unref(mdctx);
-}
-
-int main(int argc, char **argv) {
-  grpc_test_init(argc, argv);
-  test_case(0, 0, 0);
-  test_case(0, 0, 1);
-  test_case(0, 0, 2);
-  test_case(0, 0, 10000);
-  test_case(10, 10, 1);
-  test_case(10, 10, 2);
-  test_case(10, 10, 10000);
-  test_case(100, 100, 1);
-  test_case(100, 100, 2);
-  test_case(100, 100, 10000);
-  return 0;
-}
diff --git a/test/core/end2end/gen_build_json.py b/test/core/end2end/gen_build_json.py
index 9786ec0c6d2cb4558acca4c909cf58cd17ae801d..9b7db416b8917aebddf63f991180bf41b913375d 100755
--- a/test/core/end2end/gen_build_json.py
+++ b/test/core/end2end/gen_build_json.py
@@ -46,60 +46,60 @@ END2END_FIXTURES = {
     'chttp2_socket_pair_one_byte_at_a_time': False,
 }
 
+# maps tests names to whether they run fine or not (aka, not flaky)
+END2END_TESTS = {
+    'bad_hostname': True,
+    'cancel_after_accept': False,
+    'cancel_after_accept_and_writes_closed': True,
+    'cancel_after_invoke': True,
+    'cancel_before_invoke': True,
+    'cancel_in_a_vacuum': True,
+    'census_simple_request': True,
+    'disappearing_server': True,
+    'early_server_shutdown_finishes_inflight_calls': True,
+    'early_server_shutdown_finishes_tags': True,
+    'empty_batch': True,
+    'graceful_server_shutdown': True,
+    'invoke_large_request': False,
+    'max_concurrent_streams': True,
+    'no_op': True,
+    'ping_pong_streaming': True,
+    'request_response_with_binary_metadata_and_payload': True,
+    'request_response_with_metadata_and_payload': True,
+    'request_response_with_payload': True,
+    'request_with_large_metadata': True,
+    'request_with_payload': True,
+    'simple_delayed_request': True,
+    'simple_request': True,
+    'registered_call': True,
+    'thread_stress': True,
+    'writes_done_hangs_with_pending_read': True,
 
-END2END_TESTS = [
-    'bad_hostname',
-    'cancel_after_accept',
-    'cancel_after_accept_and_writes_closed',
-    'cancel_after_invoke',
-    'cancel_before_invoke',
-    'cancel_in_a_vacuum',
-    'census_simple_request',
-    'disappearing_server',
-    'early_server_shutdown_finishes_inflight_calls',
-    'early_server_shutdown_finishes_tags',
-    'empty_batch',
-    'graceful_server_shutdown',
-    'invoke_large_request',
-    'max_concurrent_streams',
-    'no_op',
-    'ping_pong_streaming',
-    'request_response_with_binary_metadata_and_payload',
-    'request_response_with_metadata_and_payload',
-    'request_response_with_payload',
-    'request_with_large_metadata',
-    'request_with_payload',
-    'simple_delayed_request',
-    'simple_request',
-    'registered_call',
-    'thread_stress',
-    'writes_done_hangs_with_pending_read',
-
-    'cancel_after_accept_legacy',
-    'cancel_after_accept_and_writes_closed_legacy',
-    'cancel_after_invoke_legacy',
-    'cancel_before_invoke_legacy',
-    'cancel_in_a_vacuum_legacy',
-    'census_simple_request_legacy',
-    'disappearing_server_legacy',
-    'early_server_shutdown_finishes_inflight_calls_legacy',
-    'early_server_shutdown_finishes_tags_legacy',
-    'graceful_server_shutdown_legacy',
-    'invoke_large_request_legacy',
-    'max_concurrent_streams_legacy',
-    'no_op_legacy',
-    'ping_pong_streaming_legacy',
-    'request_response_with_binary_metadata_and_payload_legacy',
-    'request_response_with_metadata_and_payload_legacy',
-    'request_response_with_payload_legacy',
-    'request_response_with_trailing_metadata_and_payload_legacy',
-    'request_with_large_metadata_legacy',
-    'request_with_payload_legacy',
-    'simple_delayed_request_legacy',
-    'simple_request_legacy',
-    'thread_stress_legacy',
-    'writes_done_hangs_with_pending_read_legacy',
-]
+    'cancel_after_accept_legacy': False,
+    'cancel_after_accept_and_writes_closed_legacy': True,
+    'cancel_after_invoke_legacy': True,
+    'cancel_before_invoke_legacy': True,
+    'cancel_in_a_vacuum_legacy': True,
+    'census_simple_request_legacy': True,
+    'disappearing_server_legacy': True,
+    'early_server_shutdown_finishes_inflight_calls_legacy': True,
+    'early_server_shutdown_finishes_tags_legacy': True,
+    'graceful_server_shutdown_legacy': True,
+    'invoke_large_request_legacy': False,
+    'max_concurrent_streams_legacy': True,
+    'no_op_legacy': True,
+    'ping_pong_streaming_legacy': True,
+    'request_response_with_binary_metadata_and_payload_legacy': True,
+    'request_response_with_metadata_and_payload_legacy': True,
+    'request_response_with_payload_legacy': True,
+    'request_response_with_trailing_metadata_and_payload_legacy': True,
+    'request_with_large_metadata_legacy': True,
+    'request_with_payload_legacy': True,
+    'simple_delayed_request_legacy': True,
+    'simple_request_legacy': True,
+    'thread_stress_legacy': True,
+    'writes_done_hangs_with_pending_read_legacy': True,
+}
 
 
 def main():
@@ -110,7 +110,7 @@ def main():
               'name': 'end2end_fixture_%s' % f,
               'build': 'private',
               'language': 'c',
-              'secure': 'check',
+              'secure': 'check' if END2END_FIXTURES[f] else 'no',
               'src': ['test/core/end2end/fixtures/%s.c' % f]
           }
           for f in sorted(END2END_FIXTURES.keys())] + [
@@ -122,7 +122,7 @@ def main():
               'src': ['test/core/end2end/tests/%s.c' % t],
               'headers': ['test/core/end2end/tests/cancel_test_helpers.h']
           }
-          for t in sorted(END2END_TESTS)] + [
+          for t in sorted(END2END_TESTS.keys())] + [
           {
               'name': 'end2end_certs',
               'build': 'private',
@@ -140,6 +140,7 @@ def main():
               'build': 'test',
               'language': 'c',
               'src': [],
+              'flaky': not END2END_TESTS[t],
               'deps': [
                   'end2end_fixture_%s' % f,
                   'end2end_test_%s' % t,
@@ -151,23 +152,25 @@ def main():
               ]
           }
       for f in sorted(END2END_FIXTURES.keys())
-      for t in sorted(END2END_TESTS)] + [
+      for t in sorted(END2END_TESTS.keys())] + [
           {
               'name': '%s_%s_unsecure_test' % (f, t),
               'build': 'test',
               'language': 'c',
+              'secure': 'no',
               'src': [],
+              'flaky': 'invoke_large_request' in t,
               'deps': [
                   'end2end_fixture_%s' % f,
                   'end2end_test_%s' % t,
-                  'grpc_test_util',
+                  'grpc_test_util_unsecure',
                   'grpc_unsecure',
                   'gpr_test_util',
                   'gpr'
               ]
           }
       for f in sorted(END2END_FIXTURES.keys()) if not END2END_FIXTURES[f]
-      for t in sorted(END2END_TESTS)]}
+      for t in sorted(END2END_TESTS.keys())]}
   print simplejson.dumps(json, sort_keys=True, indent=2 * ' ')
 
 
diff --git a/test/core/end2end/tests/cancel_before_invoke_legacy.c b/test/core/end2end/tests/cancel_before_invoke_legacy.c
index c8db3d256cfa778e97dc8ba4e63783cb2b548a32..3614e5391ebf420e848aa5d7b2ca81154438b964 100644
--- a/test/core/end2end/tests/cancel_before_invoke_legacy.c
+++ b/test/core/end2end/tests/cancel_before_invoke_legacy.c
@@ -118,8 +118,8 @@ static void test_cancel_before_invoke(grpc_end2end_test_config config) {
   GPR_ASSERT(GRPC_CALL_OK ==
              grpc_call_invoke_old(c, f.client_cq, tag(2), tag(3), 0));
   cq_expect_client_metadata_read(v_client, tag(2), NULL);
-  cq_expect_finished_with_status(v_client, tag(3), GRPC_STATUS_CANCELLED, NULL,
-                                 NULL);
+  cq_expect_finished_with_status(v_client, tag(3), GRPC_STATUS_CANCELLED,
+                                 "Cancelled", NULL);
   cq_verify(v_client);
 
   grpc_call_destroy(c);
diff --git a/test/core/end2end/tests/cancel_test_helpers.h b/test/core/end2end/tests/cancel_test_helpers.h
index 0d680fcfe1191cd91cf87f41a425e5c1700a58f6..8345c07904d449737a751f481921cc4ac243e765 100644
--- a/test/core/end2end/tests/cancel_test_helpers.h
+++ b/test/core/end2end/tests/cancel_test_helpers.h
@@ -46,7 +46,7 @@ static grpc_call_error wait_for_deadline(grpc_call *call) {
 }
 
 static const cancellation_mode cancellation_modes[] = {
-    {"cancel", grpc_call_cancel, GRPC_STATUS_CANCELLED, ""},
+    {"cancel", grpc_call_cancel, GRPC_STATUS_CANCELLED, "Cancelled"},
     {"deadline", wait_for_deadline, GRPC_STATUS_DEADLINE_EXCEEDED,
      "Deadline Exceeded"},
 };
diff --git a/test/core/end2end/tests/request_response_with_binary_metadata_and_payload.c b/test/core/end2end/tests/request_response_with_binary_metadata_and_payload.c
index a120f27596863ba4d7bd88366df1617ce1dc1944..0169d52059780c4a5fc32976fccd4691b14048b1 100644
--- a/test/core/end2end/tests/request_response_with_binary_metadata_and_payload.c
+++ b/test/core/end2end/tests/request_response_with_binary_metadata_and_payload.c
@@ -115,14 +115,23 @@ static void test_request_response_with_metadata_and_payload(
       grpc_byte_buffer_create(&response_payload_slice, 1);
   gpr_timespec deadline = five_seconds_time();
   grpc_metadata meta_c[2] = {
-      {"key1-bin", "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc", 13},
-      {"key2-bin", "\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d",
-       14}};
+      {"key1-bin",
+       "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc",
+       13,
+       {{NULL, NULL, NULL}}},
+      {"key2-bin",
+       "\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d",
+       14,
+       {{NULL, NULL, NULL}}}};
   grpc_metadata meta_s[2] = {
       {"key3-bin",
-       "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee", 15},
+       "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee",
+       15,
+       {{NULL, NULL, NULL}}},
       {"key4-bin",
-       "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 16}};
+       "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff",
+       16,
+       {{NULL, NULL, NULL}}}};
   grpc_end2end_test_fixture f = begin_test(config, __FUNCTION__, NULL, NULL);
   cq_verifier *v_client = cq_verifier_create(f.client_cq);
   cq_verifier *v_server = cq_verifier_create(f.server_cq);
diff --git a/test/core/end2end/tests/request_response_with_binary_metadata_and_payload_legacy.c b/test/core/end2end/tests/request_response_with_binary_metadata_and_payload_legacy.c
index 75fddeacb1fbe4bf47e41f8cc4f7636076737430..f0cb14ae3c5adad00168531b0cc5822c407aeafb 100644
--- a/test/core/end2end/tests/request_response_with_binary_metadata_and_payload_legacy.c
+++ b/test/core/end2end/tests/request_response_with_binary_metadata_and_payload_legacy.c
@@ -116,17 +116,25 @@ static void test_request_response_with_metadata_and_payload(
   gpr_timespec deadline = five_seconds_time();
   /* staggered lengths to ensure we hit various branches in base64 encode/decode
    */
-  grpc_metadata meta1 = {
-      "key1-bin", "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc", 13};
+  grpc_metadata meta1 = {"key1-bin",
+                         "\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc",
+                         13,
+                         {{NULL, NULL, NULL}}};
   grpc_metadata meta2 = {
-      "key2-bin", "\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d",
-      14};
+      "key2-bin",
+      "\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d",
+      14,
+      {{NULL, NULL, NULL}}};
   grpc_metadata meta3 = {
       "key3-bin",
-      "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee", 15};
+      "\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee",
+      15,
+      {{NULL, NULL, NULL}}};
   grpc_metadata meta4 = {
       "key4-bin",
-      "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff", 16};
+      "\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff",
+      16,
+      {{NULL, NULL, NULL}}};
   grpc_end2end_test_fixture f = begin_test(config, __FUNCTION__, NULL, NULL);
   cq_verifier *v_client = cq_verifier_create(f.client_cq);
   cq_verifier *v_server = cq_verifier_create(f.server_cq);
diff --git a/test/core/end2end/tests/request_response_with_metadata_and_payload.c b/test/core/end2end/tests/request_response_with_metadata_and_payload.c
index d5f58d33b87f74760f1a48d3ace9c90a3f6a5505..dc49242d39a0c44a9e1c73b7bfafffa142fec90b 100644
--- a/test/core/end2end/tests/request_response_with_metadata_and_payload.c
+++ b/test/core/end2end/tests/request_response_with_metadata_and_payload.c
@@ -114,8 +114,10 @@ static void test_request_response_with_metadata_and_payload(
   grpc_byte_buffer *response_payload =
       grpc_byte_buffer_create(&response_payload_slice, 1);
   gpr_timespec deadline = five_seconds_time();
-  grpc_metadata meta_c[2] = {{"key1", "val1", 4}, {"key2", "val2", 4}};
-  grpc_metadata meta_s[2] = {{"key3", "val3", 4}, {"key4", "val4", 4}};
+  grpc_metadata meta_c[2] = {{"key1", "val1", 4, {{NULL, NULL, NULL}}},
+                             {"key2", "val2", 4, {{NULL, NULL, NULL}}}};
+  grpc_metadata meta_s[2] = {{"key3", "val3", 4, {{NULL, NULL, NULL}}},
+                             {"key4", "val4", 4, {{NULL, NULL, NULL}}}};
   grpc_end2end_test_fixture f = begin_test(config, __FUNCTION__, NULL, NULL);
   cq_verifier *v_client = cq_verifier_create(f.client_cq);
   cq_verifier *v_server = cq_verifier_create(f.server_cq);
diff --git a/test/core/end2end/tests/request_response_with_metadata_and_payload_legacy.c b/test/core/end2end/tests/request_response_with_metadata_and_payload_legacy.c
index 91a0442d268e3a5a5ce75739a12547a7048553df..aaf8a53d520e728030d7b797d80db4aa4477f856 100644
--- a/test/core/end2end/tests/request_response_with_metadata_and_payload_legacy.c
+++ b/test/core/end2end/tests/request_response_with_metadata_and_payload_legacy.c
@@ -114,10 +114,10 @@ static void test_request_response_with_metadata_and_payload(
   grpc_byte_buffer *response_payload =
       grpc_byte_buffer_create(&response_payload_slice, 1);
   gpr_timespec deadline = five_seconds_time();
-  grpc_metadata meta1 = {"key1", "val1", 4};
-  grpc_metadata meta2 = {"key2", "val2", 4};
-  grpc_metadata meta3 = {"key3", "val3", 4};
-  grpc_metadata meta4 = {"key4", "val4", 4};
+  grpc_metadata meta1 = {"key1", "val1", 4, {{NULL, NULL, NULL}}};
+  grpc_metadata meta2 = {"key2", "val2", 4, {{NULL, NULL, NULL}}};
+  grpc_metadata meta3 = {"key3", "val3", 4, {{NULL, NULL, NULL}}};
+  grpc_metadata meta4 = {"key4", "val4", 4, {{NULL, NULL, NULL}}};
   grpc_end2end_test_fixture f = begin_test(config, __FUNCTION__, NULL, NULL);
   cq_verifier *v_client = cq_verifier_create(f.client_cq);
   cq_verifier *v_server = cq_verifier_create(f.server_cq);
diff --git a/test/core/end2end/tests/request_response_with_trailing_metadata_and_payload_legacy.c b/test/core/end2end/tests/request_response_with_trailing_metadata_and_payload_legacy.c
index 6431ec5ad5cba0df063b075a8d14f2cde98f4169..aaa6078fa6b6bea6b0522a28c57e6f52d91c8f68 100644
--- a/test/core/end2end/tests/request_response_with_trailing_metadata_and_payload_legacy.c
+++ b/test/core/end2end/tests/request_response_with_trailing_metadata_and_payload_legacy.c
@@ -114,12 +114,12 @@ static void test_request_response_with_metadata_and_payload(
   grpc_byte_buffer *response_payload =
       grpc_byte_buffer_create(&response_payload_slice, 1);
   gpr_timespec deadline = five_seconds_time();
-  grpc_metadata meta1 = {"key1", "val1", 4};
-  grpc_metadata meta2 = {"key2", "val2", 4};
-  grpc_metadata meta3 = {"key3", "val3", 4};
-  grpc_metadata meta4 = {"key4", "val4", 4};
-  grpc_metadata meta5 = {"key5", "val5", 4};
-  grpc_metadata meta6 = {"key6", "val6", 4};
+  grpc_metadata meta1 = {"key1", "val1", 4, {{NULL, NULL, NULL}}};
+  grpc_metadata meta2 = {"key2", "val2", 4, {{NULL, NULL, NULL}}};
+  grpc_metadata meta3 = {"key3", "val3", 4, {{NULL, NULL, NULL}}};
+  grpc_metadata meta4 = {"key4", "val4", 4, {{NULL, NULL, NULL}}};
+  grpc_metadata meta5 = {"key5", "val5", 4, {{NULL, NULL, NULL}}};
+  grpc_metadata meta6 = {"key6", "val6", 4, {{NULL, NULL, NULL}}};
   grpc_end2end_test_fixture f = begin_test(config, __FUNCTION__, NULL, NULL);
   cq_verifier *v_client = cq_verifier_create(f.client_cq);
   cq_verifier *v_server = cq_verifier_create(f.server_cq);
diff --git a/test/core/surface/lame_client_test.c b/test/core/surface/lame_client_test.c
index f0420896eeb2754c7c89e2a1c1fdbc774ee8f790..0d37502924f4d48eff04b1f651dcfb97ddb2694e 100644
--- a/test/core/surface/lame_client_test.c
+++ b/test/core/surface/lame_client_test.c
@@ -42,7 +42,7 @@ static void *tag(gpr_intptr x) { return (void *)x; }
 int main(int argc, char **argv) {
   grpc_channel *chan;
   grpc_call *call;
-  grpc_metadata md = {"a", "b", 1};
+  grpc_metadata md = {"a", "b", 1, {{NULL, NULL, NULL}}};
   grpc_completion_queue *cq;
   cq_verifier *cqv;
 
diff --git a/test/core/transport/chttp2/stream_encoder_test.c b/test/core/transport/chttp2/stream_encoder_test.c
index 5c7801079fe83cda66fed83c3aa166d0233b1f43..bda8298eb3803234093588d23ce6f0bb621c1981 100644
--- a/test/core/transport/chttp2/stream_encoder_test.c
+++ b/test/core/transport/chttp2/stream_encoder_test.c
@@ -50,6 +50,10 @@ grpc_chttp2_hpack_compressor g_compressor;
 int g_failure = 0;
 grpc_stream_op_buffer g_sopb;
 
+void **to_delete = NULL;
+int num_to_delete = 0;
+int cap_to_delete = 0;
+
 static gpr_slice create_test_slice(size_t length) {
   gpr_slice slice = gpr_slice_malloc(length);
   size_t i;
@@ -130,47 +134,71 @@ static void test_small_data_framing(void) {
   verify_sopb(10, 0, 5, "000005 0000 deadbeef 00000000ff");
 }
 
-static void add_sopb_header(const char *key, const char *value) {
-  grpc_sopb_add_metadata(&g_sopb,
-                         grpc_mdelem_from_strings(g_mdctx, key, value));
+static void add_sopb_headers(int n, ...) {
+  int i;
+  grpc_metadata_batch b;
+  va_list l;
+  grpc_linked_mdelem *e = gpr_malloc(sizeof(*e) * n);
+
+  grpc_metadata_batch_init(&b);
+
+  va_start(l, n);
+  for (i = 0; i < n; i++) {
+    char *key = va_arg(l, char *);
+    char *value = va_arg(l, char *);
+    if (i) {
+      e[i - 1].next = &e[i];
+      e[i].prev = &e[i - 1];
+    }
+    e[i].md = grpc_mdelem_from_strings(g_mdctx, key, value);
+  }
+  e[0].prev = NULL;
+  e[n - 1].next = NULL;
+  va_end(l);
+
+  b.list.head = &e[0];
+  b.list.tail = &e[n - 1];
+
+  if (cap_to_delete == num_to_delete) {
+    cap_to_delete = GPR_MAX(2 * cap_to_delete, 1000);
+    to_delete = gpr_realloc(to_delete, sizeof(*to_delete) * cap_to_delete);
+  }
+  to_delete[num_to_delete++] = e;
+
+  grpc_sopb_add_metadata(&g_sopb, b);
 }
 
 static void test_basic_headers(void) {
   int i;
 
-  add_sopb_header("a", "a");
+  add_sopb_headers(1, "a", "a");
   verify_sopb(0, 0, 0, "000005 0104 deadbeef 40 0161 0161");
 
-  add_sopb_header("a", "a");
+  add_sopb_headers(1, "a", "a");
   verify_sopb(0, 0, 0, "000001 0104 deadbeef be");
 
-  add_sopb_header("a", "a");
+  add_sopb_headers(1, "a", "a");
   verify_sopb(0, 0, 0, "000001 0104 deadbeef be");
 
-  add_sopb_header("a", "a");
-  add_sopb_header("b", "c");
+  add_sopb_headers(2, "a", "a", "b", "c");
   verify_sopb(0, 0, 0, "000006 0104 deadbeef be 40 0162 0163");
 
-  add_sopb_header("a", "a");
-  add_sopb_header("b", "c");
+  add_sopb_headers(2, "a", "a", "b", "c");
   verify_sopb(0, 0, 0, "000002 0104 deadbeef bf be");
 
-  add_sopb_header("a", "d");
+  add_sopb_headers(1, "a", "d");
   verify_sopb(0, 0, 0, "000004 0104 deadbeef 7f 00 0164");
 
   /* flush out what's there to make a few values look very popular */
   for (i = 0; i < 350; i++) {
-    add_sopb_header("a", "a");
-    add_sopb_header("b", "c");
-    add_sopb_header("a", "d");
+    add_sopb_headers(3, "a", "a", "b", "c", "a", "d");
     verify_sopb(0, 0, 0, "000003 0104 deadbeef c0 bf be");
   }
 
-  add_sopb_header("a", "a");
-  add_sopb_header("k", "v");
+  add_sopb_headers(2, "a", "a", "k", "v");
   verify_sopb(0, 0, 0, "000006 0104 deadbeef c0 00 016b 0176");
 
-  add_sopb_header("a", "v");
+  add_sopb_headers(1, "a", "v");
   /* this could be      000004 0104 deadbeef 0f 30 0176 also */
   verify_sopb(0, 0, 0, "000004 0104 deadbeef 0f 2f 0176");
 }
@@ -190,7 +218,7 @@ static void test_decode_table_overflow(void) {
 
   for (i = 0; i < 114; i++) {
     if (i > 0) {
-      add_sopb_header("aa", "ba");
+      add_sopb_headers(1, "aa", "ba");
     }
 
     encode_int_to_str(i, key);
@@ -198,25 +226,27 @@ static void test_decode_table_overflow(void) {
 
     if (i + 61 >= 127) {
       gpr_asprintf(&expect,
-                   "000009 0104 deadbeef ff%02x 40 02%02x%02x 02%02x%02x",
+                   "000002 0104 deadbeef ff%02x 000007 0104 deadbeef 40 "
+                   "02%02x%02x 02%02x%02x",
                    i + 61 - 127, key[0], key[1], value[0], value[1]);
     } else if (i > 0) {
       gpr_asprintf(&expect,
-                   "000008 0104 deadbeef %02x 40 02%02x%02x 02%02x%02x",
+                   "000001 0104 deadbeef %02x 000007 0104 deadbeef 40 "
+                   "02%02x%02x 02%02x%02x",
                    0x80 + 61 + i, key[0], key[1], value[0], value[1]);
     } else {
       gpr_asprintf(&expect, "000007 0104 deadbeef 40 02%02x%02x 02%02x%02x",
                    key[0], key[1], value[0], value[1]);
     }
 
-    add_sopb_header(key, value);
+    add_sopb_headers(1, key, value);
     verify_sopb(0, 0, 0, expect);
     gpr_free(expect);
   }
 
   /* if the above passes, then we must have just knocked this pair out of the
      decoder stack, and so we'll be forced to re-encode it */
-  add_sopb_header("aa", "ba");
+  add_sopb_headers(1, "aa", "ba");
   verify_sopb(0, 0, 0, "000007 0104 deadbeef 40 026161 026261");
 }
 
@@ -260,7 +290,7 @@ static void test_decode_random_headers_inner(int max_len) {
     randstr(st.key, max_len);
     randstr(st.value, max_len);
 
-    add_sopb_header(st.key, st.value);
+    add_sopb_headers(1, st.key, st.value);
     gpr_slice_buffer_init(&output);
     GPR_ASSERT(0 ==
                grpc_chttp2_preencode(g_sopb.ops, &g_sopb.nops, 0, &encops));
@@ -314,6 +344,7 @@ static void run_test(void (*test)(), const char *name) {
 }
 
 int main(int argc, char **argv) {
+  int i;
   grpc_test_init(argc, argv);
   TEST(test_small_data_framing);
   TEST(test_basic_headers);
@@ -329,5 +360,8 @@ int main(int argc, char **argv) {
   TEST(test_decode_random_headers_55);
   TEST(test_decode_random_headers_89);
   TEST(test_decode_random_headers_144);
+  for (i = 0; i < num_to_delete; i++) {
+    gpr_free(to_delete[i]);
+  }
   return g_failure;
 }
diff --git a/test/core/transport/chttp2_transport_end2end_test.c b/test/core/transport/chttp2_transport_end2end_test.c
deleted file mode 100644
index 766fd19960eb6f77e8f2d3a84f9eb208f415f329..0000000000000000000000000000000000000000
--- a/test/core/transport/chttp2_transport_end2end_test.c
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- *
- * 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 "transport_end2end_tests.h"
-
-#include <errno.h>
-#include <fcntl.h>
-#include <string.h>
-#include <signal.h>
-#include <sys/types.h>
-
-#include "test/core/util/test_config.h"
-#include "src/core/iomgr/iomgr.h"
-#include "src/core/iomgr/endpoint_pair.h"
-#include "src/core/transport/chttp2_transport.h"
-#include <grpc/support/log.h>
-
-/* Wrapper to create an http2 transport pair */
-static int create_http2_transport_for_test(
-    grpc_transport_setup_callback client_setup_transport,
-    void *client_setup_arg,
-    grpc_transport_setup_callback server_setup_transport,
-    void *server_setup_arg, size_t slice_size, grpc_mdctx *mdctx) {
-  grpc_endpoint_pair p = grpc_iomgr_create_endpoint_pair(1);
-
-  grpc_create_chttp2_transport(client_setup_transport, client_setup_arg, NULL,
-                               p.client, NULL, 0, mdctx, 1);
-  grpc_create_chttp2_transport(server_setup_transport, server_setup_arg, NULL,
-                               p.server, NULL, 0, mdctx, 0);
-
-  return 0;
-}
-
-static int create_http2_transport_for_test_small_slices(
-    grpc_transport_setup_callback client_setup_transport,
-    void *client_setup_arg,
-    grpc_transport_setup_callback server_setup_transport,
-    void *server_setup_arg, grpc_mdctx *mdctx) {
-  return create_http2_transport_for_test(
-      client_setup_transport, client_setup_arg, server_setup_transport,
-      server_setup_arg, 1, mdctx);
-}
-
-static int create_http2_transport_for_test_medium_slices(
-    grpc_transport_setup_callback client_setup_transport,
-    void *client_setup_arg,
-    grpc_transport_setup_callback server_setup_transport,
-    void *server_setup_arg, grpc_mdctx *mdctx) {
-  return create_http2_transport_for_test(
-      client_setup_transport, client_setup_arg, server_setup_transport,
-      server_setup_arg, 8192, mdctx);
-}
-
-static int create_http2_transport_for_test_large_slices(
-    grpc_transport_setup_callback client_setup_transport,
-    void *client_setup_arg,
-    grpc_transport_setup_callback server_setup_transport,
-    void *server_setup_arg, grpc_mdctx *mdctx) {
-  return create_http2_transport_for_test(
-      client_setup_transport, client_setup_arg, server_setup_transport,
-      server_setup_arg, 1024 * 1024, mdctx);
-}
-
-/* All configurations to be tested */
-grpc_transport_test_config fixture_configs[] = {
-    {"chttp2_on_socketpair/small",
-     create_http2_transport_for_test_small_slices},
-    {"chttp2_on_socketpair/medium",
-     create_http2_transport_for_test_medium_slices},
-    {"chttp2_on_socketpair/large",
-     create_http2_transport_for_test_large_slices},
-};
-
-/* Driver function: run the test suite for each test configuration */
-int main(int argc, char **argv) {
-  size_t i;
-
-  grpc_test_init(argc, argv);
-  grpc_iomgr_init();
-
-  for (i = 0; i < sizeof(fixture_configs) / sizeof(*fixture_configs); i++) {
-    grpc_transport_end2end_tests(&fixture_configs[i]);
-  }
-
-  grpc_iomgr_shutdown();
-
-  gpr_log(GPR_INFO, "exiting");
-  return 0;
-}
diff --git a/test/core/transport/transport_end2end_tests.c b/test/core/transport/transport_end2end_tests.c
deleted file mode 100644
index 437a1c3ef5569c031380587fefef9013404f6ef8..0000000000000000000000000000000000000000
--- a/test/core/transport/transport_end2end_tests.c
+++ /dev/null
@@ -1,931 +0,0 @@
-/*
- *
- * 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 "test/core/transport/transport_end2end_tests.h"
-
-#include <stdarg.h>
-#include <stdio.h>
-#include <string.h>
-
-#include "src/core/support/string.h"
-#include "src/core/transport/transport.h"
-#include <grpc/support/alloc.h>
-#include <grpc/support/log.h>
-#include <grpc/support/thd.h>
-#include <grpc/support/useful.h>
-#include "test/core/util/test_config.h"
-
-static grpc_mdctx *g_metadata_context;
-
-static gpr_once g_pending_ops_init = GPR_ONCE_INIT;
-static gpr_mu g_mu;
-static gpr_cv g_cv;
-static int g_pending_ops;
-
-/* Defines a suite of tests that all GRPC transports should be able to pass */
-
-/******************************************************************************
- * Testing framework
- */
-
-/* Forward declarations */
-typedef struct test_fixture test_fixture;
-
-/* User data passed to the transport and handed to each callback */
-typedef struct test_user_data { test_fixture *fixture; } test_user_data;
-
-/* A message we expect to receive (forms a singly linked list with next) */
-typedef struct expected_message {
-  /* The next message expected */
-  struct expected_message *next;
-  /* The (owned) data that we expect to receive */
-  gpr_uint8 *data;
-  /* The length of the expected message */
-  size_t length;
-  /* How many bytes of the expected message have we received? */
-  size_t read_pos;
-  /* Have we received the GRPC_OP_BEGIN for this message */
-  int begun;
-} expected_message;
-
-/* Metadata we expect to receive */
-typedef struct expected_metadata {
-  struct expected_metadata *next;
-  struct expected_metadata *prev;
-  grpc_mdelem *metadata;
-} expected_metadata;
-
-/* Tracks a stream for a test. Forms a doubly-linked list with (prev, next) */
-typedef struct test_stream {
-  /* The owning fixture */
-  test_fixture *fixture;
-  /* The transport client stream */
-  grpc_stream *client_stream;
-  /* The transport server stream */
-  grpc_stream *server_stream;
-  /* Linked lists of messages expected on client and server */
-  expected_message *client_expected_messages;
-  expected_message *server_expected_messages;
-  expected_metadata *client_expected_metadata;
-  expected_metadata *server_expected_metadata;
-
-  /* Test streams are linked in the fixture */
-  struct test_stream *next;
-  struct test_stream *prev;
-} test_stream;
-
-/* A test_fixture tracks all transport state and expectations for a test */
-struct test_fixture {
-  gpr_mu mu;
-  gpr_cv cv; /* broadcast when expectation state has changed */
-
-  /* The transport instances */
-  grpc_transport *client_transport;
-  grpc_transport *server_transport;
-  /* User data for the transport instances - pointers to these are passed
-     to the transport. */
-  test_user_data client_ud;
-  test_user_data server_ud;
-
-  /* A pointer to the head of the tracked streams list, or NULL if no streams
-     are open */
-  test_stream *streams;
-};
-
-static void expect_metadata(test_stream *s, int from_client, const char *key,
-                            const char *value);
-
-/* Convert some number of seconds into a gpr_timespec that many seconds in the
-   future */
-static gpr_timespec deadline_from_seconds(double deadline_seconds) {
-  return GRPC_TIMEOUT_SECONDS_TO_DEADLINE(deadline_seconds);
-}
-
-/* Init a test_user_data instance */
-static void init_user_data(test_user_data *ud, test_fixture *f,
-                           grpc_transport_test_config *config, int is_client) {
-  ud->fixture = f;
-}
-
-/* Implements the alloc_recv_buffer transport callback */
-static gpr_slice alloc_recv_buffer(void *user_data, grpc_transport *transport,
-                                   grpc_stream *stream, size_t size_hint) {
-  return gpr_slice_malloc(size_hint);
-}
-
-static void pending_ops_cleanup(void) {
-  gpr_mu_destroy(&g_mu);
-  gpr_cv_destroy(&g_cv);
-}
-
-static void pending_ops_init(void) {
-  gpr_mu_init(&g_mu);
-  gpr_cv_init(&g_cv);
-  atexit(pending_ops_cleanup);
-}
-
-static void use_pending_ops(void) {
-  gpr_once_init(&g_pending_ops_init, pending_ops_init);
-}
-
-static void add_pending_op(void) {
-  use_pending_ops();
-  gpr_mu_lock(&g_mu);
-  g_pending_ops++;
-  gpr_mu_unlock(&g_mu);
-}
-
-static void end_pending_op(void) {
-  gpr_mu_lock(&g_mu);
-  g_pending_ops--;
-  gpr_cv_broadcast(&g_cv);
-  gpr_mu_unlock(&g_mu);
-}
-
-static void wait_pending_ops(void) {
-  use_pending_ops();
-  gpr_mu_lock(&g_mu);
-  while (g_pending_ops > 0) {
-    gpr_cv_wait(&g_cv, &g_mu, gpr_inf_future);
-  }
-  gpr_mu_unlock(&g_mu);
-}
-
-/* Implements the create_stream transport callback */
-static void create_stream(void *user_data, grpc_transport *transport,
-                          const void *server_data) {
-  test_user_data *ud = user_data;
-  test_fixture *f = ud->fixture;
-  test_stream *stream;
-
-  GPR_ASSERT(ud == &f->server_ud);
-  GPR_ASSERT(transport == f->server_transport);
-
-  gpr_mu_lock(&f->mu);
-
-  /* Search streams for the peer to this stream */
-  if (!f->streams) goto done;
-  /* found the expecting stream */
-  stream = f->streams;
-  stream->server_stream = gpr_malloc(grpc_transport_stream_size(transport));
-  grpc_transport_init_stream(transport, stream->server_stream, server_data);
-
-done:
-  /* wakeup begin_stream, and maybe wait_and_verify */
-  gpr_cv_broadcast(&f->cv);
-  gpr_mu_unlock(&f->mu);
-}
-
-/* Search fixture streams for the test_stream instance holding a given transport
-   stream */
-static test_stream *find_test_stream(test_fixture *f, grpc_stream *stream) {
-  test_stream *s;
-
-  GPR_ASSERT(f->streams);
-  s = f->streams;
-  do {
-    if (s->client_stream == stream || s->server_stream == stream) {
-      return s;
-    }
-  } while (s != f->streams);
-
-  GPR_ASSERT(0 && "found");
-  return NULL;
-}
-
-/* Stringify a grpc_stream_state for debugging */
-static const char *state_name(grpc_stream_state state) {
-  switch (state) {
-    case GRPC_STREAM_OPEN:
-      return "GRPC_STREAM_OPEN";
-    case GRPC_STREAM_RECV_CLOSED:
-      return "GRPC_STREAM_RECV_CLOSED";
-    case GRPC_STREAM_SEND_CLOSED:
-      return "GRPC_STREAM_SEND_CLOSED";
-    case GRPC_STREAM_CLOSED:
-      return "GRPC_STREAM_CLOSED";
-  }
-  GPR_ASSERT(0 && "reachable");
-  return NULL;
-}
-
-typedef struct {
-  grpc_transport *transport;
-  grpc_stream *stream;
-} destroy_stream_args;
-
-static void destroy_stream(void *p) {
-  destroy_stream_args *a = p;
-  grpc_transport_destroy_stream(a->transport, a->stream);
-  gpr_free(a->stream);
-  gpr_free(a);
-  end_pending_op();
-}
-
-static void recv_batch(void *user_data, grpc_transport *transport,
-                       grpc_stream *stream, grpc_stream_op *ops,
-                       size_t ops_count, grpc_stream_state final_state) {
-  test_user_data *ud = user_data;
-  test_fixture *f = ud->fixture;
-  test_stream *s;
-  /* Pointer to the root pointer of either client or server expected messages;
-     not a simple pointer as we may need to manipulate the list (on receipt
-     of messages */
-  expected_message **expect_root_message;
-  expected_metadata **expect_root_metadata;
-  expected_metadata *emd;
-  size_t i, j;
-  char *hexstr1, *hexstr2;
-  int repeats = 0;
-
-  gpr_mu_lock(&f->mu);
-
-  s = find_test_stream(f, stream);
-  expect_root_message = s->client_stream == stream
-                            ? &s->client_expected_messages
-                            : &s->server_expected_messages;
-  expect_root_metadata = s->client_stream == stream
-                             ? &s->client_expected_metadata
-                             : &s->server_expected_metadata;
-
-  /* Debug log */
-  gpr_log(GPR_DEBUG, "recv_batch: %d ops on %s final_state=%s", ops_count,
-          s->client_stream == stream ? "client" : "server",
-          state_name(final_state));
-#define CLEAR_REPEATS                           \
-  if (repeats) {                                \
-    gpr_log(GPR_DEBUG, "  + %d more", repeats); \
-    repeats = 0;                                \
-  }
-  for (i = 0; i < ops_count; i++) {
-    switch (ops[i].type) {
-      case GRPC_NO_OP:
-        CLEAR_REPEATS;
-        gpr_log(GPR_DEBUG, "  [%02d] GRPC_NO_OP", i);
-        break;
-      case GRPC_OP_METADATA_BOUNDARY:
-        CLEAR_REPEATS;
-        gpr_log(GPR_DEBUG, "  [%02d] GRPC_OP_METADATA_BOUNDARY", i);
-        break;
-      case GRPC_OP_METADATA:
-        CLEAR_REPEATS;
-        hexstr1 =
-            gpr_hexdump(grpc_mdstr_as_c_string(ops[i].data.metadata->key),
-                        GPR_SLICE_LENGTH(ops[i].data.metadata->key->slice),
-                        GPR_HEXDUMP_PLAINTEXT);
-        hexstr2 =
-            gpr_hexdump(grpc_mdstr_as_c_string(ops[i].data.metadata->value),
-                        GPR_SLICE_LENGTH(ops[i].data.metadata->value->slice),
-                        GPR_HEXDUMP_PLAINTEXT);
-        gpr_log(GPR_DEBUG, "  [%02d] GRPC_OP_METADATA key=%s value=%s", i,
-                hexstr1, hexstr2);
-        gpr_free(hexstr1);
-        gpr_free(hexstr2);
-        break;
-      case GRPC_OP_BEGIN_MESSAGE:
-        CLEAR_REPEATS;
-        gpr_log(GPR_DEBUG, "  [%02d] GRPC_OP_BEGIN_MESSAGE len=%d", i,
-                ops[i].data.begin_message.length);
-        break;
-      case GRPC_OP_DEADLINE:
-        CLEAR_REPEATS;
-        gpr_log(GPR_DEBUG, "  [%02d] GRPC_OP_DEADLINE value=%d.%09d", i,
-                ops[i].data.deadline.tv_sec, ops[i].data.deadline.tv_nsec);
-        break;
-      case GRPC_OP_SLICE:
-        if (i && ops[i - 1].type == GRPC_OP_SLICE &&
-            GPR_SLICE_LENGTH(ops[i - 1].data.slice) ==
-                GPR_SLICE_LENGTH(ops[i].data.slice)) {
-          repeats++;
-        } else {
-          CLEAR_REPEATS;
-          gpr_log(GPR_DEBUG, "  [%02d] GRPC_OP_SLICE len=%d", i,
-                  GPR_SLICE_LENGTH(ops[i].data.slice));
-        }
-        break;
-      case GRPC_OP_FLOW_CTL_CB:
-        CLEAR_REPEATS;
-        gpr_log(GPR_DEBUG, "  [%02d] GRPC_OP_FLOW_CTL_CB", i);
-        break;
-    }
-  }
-  CLEAR_REPEATS;
-
-  /* Iterate over operations, and verify them against expectations */
-  for (i = 0; i < ops_count; i++) {
-    switch (ops[i].type) {
-      case GRPC_NO_OP:
-        break;
-      case GRPC_OP_METADATA_BOUNDARY:
-        break;
-      case GRPC_OP_METADATA:
-        GPR_ASSERT(*expect_root_metadata && "must be expecting metadata");
-        emd = *expect_root_metadata;
-        if (emd == NULL) {
-          gpr_log(GPR_ERROR, "metadata not found");
-          abort();
-        }
-        do {
-          if (emd->metadata == ops[i].data.metadata) {
-            if (emd == *expect_root_metadata) {
-              if (emd->next == emd) {
-                *expect_root_metadata = NULL;
-              } else {
-                *expect_root_metadata = emd->next;
-              }
-            }
-            emd->next->prev = emd->prev;
-            emd->prev->next = emd->next;
-            grpc_mdelem_unref(emd->metadata);
-            grpc_mdelem_unref(ops[i].data.metadata);
-            gpr_free(emd);
-            emd = NULL;
-            break;
-          }
-          emd = emd->next;
-        } while (emd != *expect_root_metadata);
-        if (emd) {
-          gpr_log(GPR_ERROR, "metadata not found");
-          abort();
-        }
-        break;
-      case GRPC_OP_BEGIN_MESSAGE:
-        GPR_ASSERT(*expect_root_message && "must be expecting a message");
-        GPR_ASSERT((*expect_root_message)->read_pos == 0 &&
-                   "must be at the start of a message");
-        GPR_ASSERT((*expect_root_message)->begun == 0 &&
-                   "can only BEGIN a message once");
-        GPR_ASSERT((*expect_root_message)->length ==
-                       ops[i].data.begin_message.length &&
-                   "message lengths must match");
-        (*expect_root_message)->begun = 1;
-        break;
-      case GRPC_OP_SLICE:
-        GPR_ASSERT(*expect_root_message && "must be expecting a message");
-        GPR_ASSERT((*expect_root_message)->begun == 1 &&
-                   "must have begun a message");
-        GPR_ASSERT((*expect_root_message)->read_pos +
-                           GPR_SLICE_LENGTH(ops[i].data.slice) <=
-                       (*expect_root_message)->length &&
-                   "must not send more data than expected");
-        for (j = 0; j < GPR_SLICE_LENGTH(ops[i].data.slice); j++) {
-          GPR_ASSERT((*expect_root_message)
-                             ->data[(*expect_root_message)->read_pos + j] ==
-                         GPR_SLICE_START_PTR(ops[i].data.slice)[j] &&
-                     "must send the correct message");
-        }
-        (*expect_root_message)->read_pos += GPR_SLICE_LENGTH(ops[i].data.slice);
-        if ((*expect_root_message)->read_pos ==
-            (*expect_root_message)->length) {
-          expected_message *great_success = *expect_root_message;
-          *expect_root_message = great_success->next;
-          gpr_free(great_success->data);
-          gpr_free(great_success);
-        }
-        gpr_slice_unref(ops[i].data.slice);
-        break;
-      case GRPC_OP_FLOW_CTL_CB:
-        GPR_ASSERT(0 && "allowed");
-        break;
-      case GRPC_OP_DEADLINE:
-        GPR_ASSERT(0 && "implemented");
-        break;
-    }
-  }
-
-  /* If the stream has become fully closed then we must destroy the transport
-     part of the stream */
-  if (final_state == GRPC_STREAM_CLOSED) {
-    destroy_stream_args *dsa = gpr_malloc(sizeof(destroy_stream_args));
-    gpr_thd_id id;
-    dsa->transport = transport;
-    dsa->stream = stream;
-    /* start a thread after incrementing a pending op counter (so we can wait
-       at test completion */
-    add_pending_op();
-    gpr_thd_new(&id, destroy_stream, dsa, NULL);
-    if (stream == s->client_stream) {
-      GPR_ASSERT(s->client_expected_messages == NULL &&
-                 "must receive all expected messages");
-      s->client_stream = NULL;
-    } else {
-      GPR_ASSERT(s->server_expected_messages == NULL &&
-                 "must receive all expected messages");
-      s->server_stream = NULL;
-    }
-    /* And if both the client and the server report fully closed, we can
-       unlink the stream object entirely */
-    if (s->client_stream == NULL && s->server_stream == NULL) {
-      s->next->prev = s->prev;
-      s->prev->next = s->next;
-      if (s == f->streams) {
-        if (s->next == f->streams) {
-          f->streams = NULL;
-        } else {
-          f->streams = s->next;
-        }
-      }
-    }
-  }
-
-  /* wakeup wait_and_verify */
-  gpr_cv_broadcast(&f->cv);
-  gpr_mu_unlock(&f->mu);
-}
-
-static void close_transport(void *user_data, grpc_transport *transport) {}
-
-static void recv_goaway(void *user_data, grpc_transport *transport,
-                        grpc_status_code status, gpr_slice debug) {
-  gpr_slice_unref(debug);
-}
-
-static grpc_transport_callbacks transport_callbacks = {
-    alloc_recv_buffer, create_stream, recv_batch, recv_goaway, close_transport};
-
-/* Helper for tests to create a stream.
-   Arguments:
-     s - uninitialized test_stream struct to begin
-     f - test fixture to associate this stream with
-     method, host, deadline_seconds - header fields for the stream */
-static void begin_stream(test_stream *s, test_fixture *f, const char *method,
-                         const char *host, double deadline_seconds) {
-  /* Deadline to initiate the stream (prevents the tests from hanging
-     forever) */
-  gpr_timespec deadline = deadline_from_seconds(10.0);
-  grpc_stream_op_buffer sopb;
-
-  grpc_sopb_init(&sopb);
-
-  gpr_mu_lock(&f->mu);
-
-  s->fixture = f;
-  s->client_stream =
-      gpr_malloc(grpc_transport_stream_size(f->client_transport));
-  /* server stream will be set once it's received by the peer transport */
-  s->server_stream = NULL;
-  s->client_expected_messages = NULL;
-  s->server_expected_messages = NULL;
-  s->client_expected_metadata = NULL;
-  s->server_expected_metadata = NULL;
-
-  if (f->streams) {
-    s->next = f->streams;
-    s->prev = s->next->prev;
-    s->next->prev = s->prev->next = s;
-  } else {
-    s->next = s->prev = s;
-  }
-  f->streams = s;
-
-  gpr_mu_unlock(&f->mu);
-
-  GPR_ASSERT(0 == grpc_transport_init_stream(f->client_transport,
-                                             s->client_stream, NULL));
-
-#define ADDMD(k, v)                                                           \
-  do {                                                                        \
-    grpc_mdelem *md = grpc_mdelem_from_strings(g_metadata_context, (k), (v)); \
-    grpc_sopb_add_metadata(&sopb, md);                                        \
-    expect_metadata(s, 1, (k), (v));                                          \
-  } while (0)
-
-  ADDMD(":path", method);
-  ADDMD(":authority", host);
-  ADDMD(":method", "POST");
-  grpc_transport_send_batch(f->client_transport, s->client_stream, sopb.ops,
-                            sopb.nops, 0);
-  sopb.nops = 0;
-
-  grpc_sopb_destroy(&sopb);
-
-  /* wait for the server side stream to be created */
-  gpr_mu_lock(&f->mu);
-  while (s->server_stream == NULL) {
-    GPR_ASSERT(0 == gpr_cv_wait(&f->cv, &f->mu, deadline));
-  }
-  gpr_mu_unlock(&f->mu);
-}
-
-static grpc_transport_setup_result setup_transport(
-    test_fixture *f, grpc_transport **set_transport, void *user_data,
-    grpc_transport *transport) {
-  grpc_transport_setup_result result;
-
-  gpr_mu_lock(&f->mu);
-  *set_transport = transport;
-  gpr_cv_broadcast(&f->cv);
-  gpr_mu_unlock(&f->mu);
-
-  result.callbacks = &transport_callbacks;
-  result.user_data = user_data;
-  return result;
-}
-
-static grpc_transport_setup_result setup_server_transport(
-    void *arg, grpc_transport *transport, grpc_mdctx *mdctx) {
-  test_fixture *f = arg;
-  return setup_transport(f, &f->server_transport, &f->server_ud, transport);
-}
-
-static grpc_transport_setup_result setup_client_transport(
-    void *arg, grpc_transport *transport, grpc_mdctx *mdctx) {
-  test_fixture *f = arg;
-  return setup_transport(f, &f->client_transport, &f->client_ud, transport);
-}
-
-/* Begin a test
-
-   Arguments:
-     f      - uninitialized test_fixture struct
-     config - test configuration for this test
-     name   - the name of this test */
-static void begin_test(test_fixture *f, grpc_transport_test_config *config,
-                       const char *name) {
-  gpr_timespec timeout = GRPC_TIMEOUT_SECONDS_TO_DEADLINE(100);
-
-  gpr_log(GPR_INFO, "BEGIN: %s/%s", name, config->name);
-
-  gpr_mu_init(&f->mu);
-  gpr_cv_init(&f->cv);
-
-  f->streams = NULL;
-
-  init_user_data(&f->client_ud, f, config, 1);
-  init_user_data(&f->server_ud, f, config, 0);
-
-  f->client_transport = NULL;
-  f->server_transport = NULL;
-
-  GPR_ASSERT(0 ==
-             config->create_transport(setup_client_transport, f,
-                                      setup_server_transport, f,
-                                      g_metadata_context));
-
-  gpr_mu_lock(&f->mu);
-  while (!f->client_transport || !f->server_transport) {
-    GPR_ASSERT(gpr_cv_wait(&f->cv, &f->mu, timeout));
-  }
-  gpr_mu_unlock(&f->mu);
-}
-
-/* Enumerate expected messages on a stream */
-static void enumerate_expected_messages(
-    test_stream *s, expected_message *root, const char *stream_tag,
-    void (*cb)(void *user, const char *fmt, ...), void *user) {
-  expected_message *msg;
-
-  for (msg = root; msg; msg = msg->next) {
-    cb(user,
-       "Waiting for message to finish: "
-       "length=%zu read_pos=%zu begun=%d",
-       msg->length, msg->read_pos);
-  }
-}
-
-/* Walk through everything that is still waiting to happen, and call 'cb' with
-   userdata 'user' for that expectation. */
-static void enumerate_expectations(test_fixture *f,
-                                   void (*cb)(void *user, const char *fmt, ...),
-                                   void *user) {
-  test_stream *stream;
-
-  if (f->streams) {
-    stream = f->streams;
-    do {
-      cb(user,
-         "Waiting for request to close: "
-         "client=%p, server=%p",
-         stream->client_stream, stream->server_stream);
-      enumerate_expected_messages(stream, stream->client_expected_messages,
-                                  "client", cb, user);
-      enumerate_expected_messages(stream, stream->server_expected_messages,
-                                  "server", cb, user);
-      stream = stream->next;
-    } while (stream != f->streams);
-  }
-}
-
-/* Callback for enumerate_expectations, that increments an integer each time
-   an expectation is seen */
-static void increment_expectation_count(void *p, const char *fmt, ...) {
-  ++*(int *)p;
-}
-
-/* Returns the count of pending expectations in a fixture. Requires mu taken */
-static int count_expectations(test_fixture *f) {
-  int n = 0;
-  enumerate_expectations(f, increment_expectation_count, &n);
-  return n;
-}
-
-/* Callback for enumerate_expectations that adds an expectation to the log */
-static void dump_expectation(void *p, const char *fmt, ...) {
-  char *str;
-  va_list args;
-  va_start(args, fmt);
-
-  gpr_asprintf(&str, fmt, args);
-  gpr_log(GPR_INFO, "EXPECTED: %s", str);
-  gpr_free(str);
-
-  va_end(args);
-}
-
-/* Add all pending expectations to the log */
-static void dump_expectations(test_fixture *f) {
-  enumerate_expectations(f, dump_expectation, NULL);
-}
-
-/* Wait until all expectations are completed, or crash */
-static void wait_and_verify(test_fixture *f) {
-  gpr_timespec deadline = deadline_from_seconds(10.0);
-
-  gpr_mu_lock(&f->mu);
-  while (count_expectations(f) > 0) {
-    gpr_log(GPR_INFO, "waiting for expectations to complete");
-    if (gpr_cv_wait(&f->cv, &f->mu, deadline)) {
-      gpr_log(GPR_ERROR, "Timeout waiting for expectation completion");
-      dump_expectations(f);
-      gpr_mu_unlock(&f->mu);
-      abort();
-    }
-  }
-  gpr_mu_unlock(&f->mu);
-}
-
-/* Finish a test */
-static void end_test(test_fixture *f) {
-  wait_and_verify(f);
-
-  grpc_transport_close(f->client_transport);
-  grpc_transport_close(f->server_transport);
-  grpc_transport_destroy(f->client_transport);
-  grpc_transport_destroy(f->server_transport);
-
-  wait_pending_ops();
-}
-
-/* Generate a test slice filled with {0,1,2,3,...,255,0,1,2,3,4,...} */
-static gpr_slice generate_test_data(size_t length) {
-  gpr_slice slice = gpr_slice_malloc(length);
-  size_t i;
-  for (i = 0; i < length; i++) {
-    GPR_SLICE_START_PTR(slice)[i] = i;
-  }
-  return slice;
-}
-
-/* Add an expected message to the end of a list with root root */
-static void append_expected_message(expected_message **root,
-                                    expected_message *message) {
-  expected_message *end;
-
-  if (!*root) {
-    *root = message;
-    return;
-  }
-
-  for (end = *root; end->next; end = end->next)
-    ;
-  end->next = message;
-}
-
-/* Add an expected message on stream 's''.
-   If from_client==1, expect it on the server, otherwise expect it on the client
-   Variadic parameters are a NULL-terminated list of pointers to slices that
-   should be expected as payload */
-static void expect_message(test_stream *s, int from_client,
-                           /* gpr_slice* */...) {
-  va_list args;
-  gpr_slice *slice;
-  size_t capacity = 32;
-  size_t length = 0;
-  gpr_uint8 *buffer = gpr_malloc(capacity);
-  expected_message *e;
-
-  va_start(args, from_client);
-  while ((slice = va_arg(args, gpr_slice *))) {
-    while (GPR_SLICE_LENGTH(*slice) + length > capacity) {
-      capacity *= 2;
-      buffer = gpr_realloc(buffer, capacity);
-    }
-    memcpy(buffer + length, GPR_SLICE_START_PTR(*slice),
-           GPR_SLICE_LENGTH(*slice));
-    length += GPR_SLICE_LENGTH(*slice);
-  }
-  va_end(args);
-
-  e = gpr_malloc(sizeof(expected_message));
-  e->data = buffer;
-  e->length = length;
-  e->read_pos = 0;
-  e->begun = 0;
-  e->next = NULL;
-
-  gpr_mu_lock(&s->fixture->mu);
-  append_expected_message(
-      from_client ? &s->server_expected_messages : &s->client_expected_messages,
-      e);
-  gpr_mu_unlock(&s->fixture->mu);
-}
-
-static void expect_metadata(test_stream *s, int from_client, const char *key,
-                            const char *value) {
-  expected_metadata *e = gpr_malloc(sizeof(expected_metadata));
-  expected_metadata **root =
-      from_client ? &s->server_expected_metadata : &s->client_expected_metadata;
-  e->metadata = grpc_mdelem_from_strings(g_metadata_context, key, value);
-  gpr_mu_lock(&s->fixture->mu);
-  if (!*root) {
-    *root = e;
-    e->next = e->prev = e;
-  } else {
-    e->next = *root;
-    e->prev = e->next->prev;
-    e->next->prev = e->prev->next = e;
-  }
-  gpr_mu_unlock(&s->fixture->mu);
-}
-
-/******************************************************************************
- * Actual unit tests
- */
-
-/* Test that we can create, begin, and end a test */
-static void test_no_op(grpc_transport_test_config *config) {
-  test_fixture f;
-  begin_test(&f, config, __FUNCTION__);
-  end_test(&f);
-}
-
-/* Test that a request can be initiated and terminated normally */
-static void test_simple_request(grpc_transport_test_config *config) {
-  test_fixture f;
-  test_stream s;
-
-  begin_test(&f, config, __FUNCTION__);
-  begin_stream(&s, &f, "/Test", "foo.google.com", 10);
-  grpc_transport_send_batch(f.client_transport, s.client_stream, NULL, 0, 1);
-  grpc_transport_send_batch(f.server_transport, s.server_stream, NULL, 0, 1);
-  end_test(&f);
-}
-
-/* Test that a request can be aborted by the client */
-static void test_can_abort_client(grpc_transport_test_config *config) {
-  test_fixture f;
-  test_stream s;
-
-  begin_test(&f, config, __FUNCTION__);
-  begin_stream(&s, &f, "/Test", "foo.google.com", 10);
-  expect_metadata(&s, 0, "grpc-status", "1");
-  expect_metadata(&s, 1, "grpc-status", "1");
-  grpc_transport_abort_stream(f.client_transport, s.client_stream,
-                              GRPC_STATUS_CANCELLED);
-  end_test(&f);
-}
-
-/* Test that a request can be aborted by the server */
-static void test_can_abort_server(grpc_transport_test_config *config) {
-  test_fixture f;
-  test_stream s;
-
-  begin_test(&f, config, __FUNCTION__);
-  begin_stream(&s, &f, "/Test", "foo.google.com", 10);
-  expect_metadata(&s, 0, "grpc-status", "1");
-  expect_metadata(&s, 1, "grpc-status", "1");
-  grpc_transport_abort_stream(f.server_transport, s.server_stream,
-                              GRPC_STATUS_CANCELLED);
-  end_test(&f);
-}
-
-/* Test that a request can be sent with payload */
-static void test_request_with_data(grpc_transport_test_config *config,
-                                   size_t message_length) {
-  test_fixture f;
-  test_stream s;
-  gpr_slice data = generate_test_data(message_length);
-  grpc_stream_op_buffer sopb;
-
-  grpc_sopb_init(&sopb);
-  begin_test(&f, config, __FUNCTION__);
-  gpr_log(GPR_INFO, "message_length = %d", message_length);
-  begin_stream(&s, &f, "/Test", "foo.google.com", 10);
-  expect_message(&s, 1, &data, NULL);
-  grpc_sopb_add_begin_message(&sopb, message_length, 0);
-  grpc_sopb_add_slice(&sopb, data);
-  grpc_transport_set_allow_window_updates(f.server_transport, s.server_stream,
-                                          1);
-  grpc_transport_send_batch(f.client_transport, s.client_stream, sopb.ops,
-                            sopb.nops, 1);
-  sopb.nops = 0;
-  grpc_transport_send_batch(f.server_transport, s.server_stream, NULL, 0, 1);
-  end_test(&f);
-  grpc_sopb_destroy(&sopb);
-}
-
-/* Increment an integer pointed to by x - used for verifying flow control */
-static void increment_int(void *x, grpc_op_error error) { ++*(int *)x; }
-
-/* Test that flow control callbacks are made at appropriate times */
-static void test_request_with_flow_ctl_cb(grpc_transport_test_config *config,
-                                          size_t message_length) {
-  test_fixture f;
-  test_stream s;
-  int flow_ctl_called = 0;
-  gpr_slice data = generate_test_data(message_length);
-  grpc_stream_op_buffer sopb;
-
-  grpc_sopb_init(&sopb);
-  begin_test(&f, config, __FUNCTION__);
-  gpr_log(GPR_INFO, "length=%d", message_length);
-  begin_stream(&s, &f, "/Test", "foo.google.com", 10);
-  expect_message(&s, 1, &data, NULL);
-  grpc_sopb_add_begin_message(&sopb, message_length, 0);
-  grpc_sopb_add_slice(&sopb, data);
-  grpc_sopb_add_flow_ctl_cb(&sopb, increment_int, &flow_ctl_called);
-  grpc_transport_set_allow_window_updates(f.server_transport, s.server_stream,
-                                          1);
-  grpc_transport_send_batch(f.client_transport, s.client_stream, sopb.ops,
-                            sopb.nops, 1);
-  sopb.nops = 0;
-  grpc_transport_send_batch(f.server_transport, s.server_stream, NULL, 0, 1);
-  end_test(&f);
-  GPR_ASSERT(flow_ctl_called == 1);
-  grpc_sopb_destroy(&sopb);
-}
-
-/* Set an event on ping response */
-static void ping_cb(void *p) { gpr_event_set(p, (void *)1); }
-
-/* Test that pinging gets a response */
-static void test_ping(grpc_transport_test_config *config) {
-  test_fixture f;
-  gpr_event ev;
-
-  begin_test(&f, config, __FUNCTION__);
-  gpr_event_init(&ev);
-
-  grpc_transport_ping(f.client_transport, ping_cb, &ev);
-  GPR_ASSERT(gpr_event_wait(&ev, deadline_from_seconds(10)));
-
-  end_test(&f);
-}
-
-/******************************************************************************
- * Test driver
- */
-
-static const size_t interesting_message_lengths[] = {
-    1, 100, 10000, 100000, 1000000,
-};
-
-void grpc_transport_end2end_tests(grpc_transport_test_config *config) {
-  unsigned i;
-
-  g_metadata_context = grpc_mdctx_create();
-
-  test_no_op(config);
-  test_simple_request(config);
-  test_can_abort_client(config);
-  test_can_abort_server(config);
-  test_ping(config);
-  for (i = 0; i < GPR_ARRAY_SIZE(interesting_message_lengths); i++) {
-    test_request_with_data(config, interesting_message_lengths[i]);
-    test_request_with_flow_ctl_cb(config, interesting_message_lengths[i]);
-  }
-
-  grpc_mdctx_unref(g_metadata_context);
-
-  gpr_log(GPR_INFO, "tests completed ok");
-}
diff --git a/test/cpp/client/credentials_test.cc b/test/cpp/client/credentials_test.cc
index 24251f297be5c14b8e013707cf7623476e6909d2..6840418989cb1bad0bf524bbfba8b895e7a8eeab 100644
--- a/test/cpp/client/credentials_test.cc
+++ b/test/cpp/client/credentials_test.cc
@@ -47,7 +47,7 @@ class CredentialsTest : public ::testing::Test {
 
 TEST_F(CredentialsTest, InvalidServiceAccountCreds) {
   std::unique_ptr<Credentials> bad1 =
-      ServiceAccountCredentials("", "", std::chrono::seconds(1));
+      ServiceAccountCredentials("", "", 1);
   EXPECT_EQ(nullptr, bad1.get());
 }
 
@@ -56,8 +56,6 @@ TEST_F(CredentialsTest, InvalidServiceAccountCreds) {
 
 int main(int argc, char** argv) {
   ::testing::InitGoogleTest(&argc, argv);
-  grpc_init();
   int ret = RUN_ALL_TESTS();
-  grpc_shutdown();
   return ret;
 }
diff --git a/test/cpp/end2end/async_end2end_test.cc b/test/cpp/end2end/async_end2end_test.cc
index dd294d95163694ee35531f66bdf8ade0b4be19b5..6c0dfadbb912b644487e98e7bc459227eff8b9db 100644
--- a/test/cpp/end2end/async_end2end_test.cc
+++ b/test/cpp/end2end/async_end2end_test.cc
@@ -31,13 +31,12 @@
  *
  */
 
-#include <chrono>
 #include <memory>
 
+#include "test/core/util/port.h"
 #include "test/core/util/test_config.h"
 #include "test/cpp/util/echo_duplicate.grpc.pb.h"
 #include "test/cpp/util/echo.grpc.pb.h"
-#include "src/cpp/util/time.h"
 #include <grpc++/async_unary_call.h>
 #include <grpc++/channel_arguments.h>
 #include <grpc++/channel_interface.h>
@@ -50,7 +49,7 @@
 #include <grpc++/server_credentials.h>
 #include <grpc++/status.h>
 #include <grpc++/stream.h>
-#include "test/core/util/port.h"
+#include <grpc++/time.h>
 #include <gtest/gtest.h>
 
 #include <grpc/grpc.h>
@@ -595,9 +594,6 @@ TEST_F(AsyncEnd2endTest, MetadataRpc) {
 
 int main(int argc, char** argv) {
   grpc_test_init(argc, argv);
-  grpc_init();
   ::testing::InitGoogleTest(&argc, argv);
-  int result = RUN_ALL_TESTS();
-  grpc_shutdown();
-  return result;
+  return RUN_ALL_TESTS();
 }
diff --git a/test/cpp/end2end/end2end_test.cc b/test/cpp/end2end/end2end_test.cc
index f96051cafac98c1984d302668202277a6fe4d143..5e89490ecb03fc04a3c342da76bd49543904ef72 100644
--- a/test/cpp/end2end/end2end_test.cc
+++ b/test/cpp/end2end/end2end_test.cc
@@ -31,13 +31,12 @@
  *
  */
 
-#include <chrono>
 #include <thread>
 
+#include "test/core/util/port.h"
 #include "test/core/util/test_config.h"
 #include "test/cpp/util/echo_duplicate.grpc.pb.h"
 #include "test/cpp/util/echo.grpc.pb.h"
-#include "src/cpp/util/time.h"
 #include "src/cpp/server/thread_pool.h"
 #include <grpc++/channel_arguments.h>
 #include <grpc++/channel_interface.h>
@@ -50,7 +49,7 @@
 #include <grpc++/server_credentials.h>
 #include <grpc++/status.h>
 #include <grpc++/stream.h>
-#include "test/core/util/port.h"
+#include <grpc++/time.h>
 #include <gtest/gtest.h>
 
 #include <grpc/grpc.h>
@@ -72,8 +71,8 @@ void MaybeEchoDeadline(ServerContext* context, const EchoRequest* request,
                        EchoResponse* response) {
   if (request->has_param() && request->param().echo_deadline()) {
     gpr_timespec deadline = gpr_inf_future;
-    if (context->absolute_deadline() != system_clock::time_point::max()) {
-      Timepoint2Timespec(context->absolute_deadline(), &deadline);
+    if (context->deadline() != system_clock::time_point::max()) {
+      Timepoint2Timespec(context->deadline(), &deadline);
     }
     response->mutable_param()->set_request_deadline(deadline.tv_sec);
   }
@@ -245,7 +244,7 @@ TEST_F(End2endTest, RpcDeadlineExpires) {
   ClientContext context;
   std::chrono::system_clock::time_point deadline =
       std::chrono::system_clock::now() + std::chrono::microseconds(10);
-  context.set_absolute_deadline(deadline);
+  context.set_deadline(deadline);
   Status s = stub_->Echo(&context, request, &response);
   EXPECT_EQ(StatusCode::DEADLINE_EXCEEDED, s.code());
 }
@@ -260,7 +259,7 @@ TEST_F(End2endTest, RpcLongDeadline) {
   ClientContext context;
   std::chrono::system_clock::time_point deadline =
       std::chrono::system_clock::now() + std::chrono::hours(1);
-  context.set_absolute_deadline(deadline);
+  context.set_deadline(deadline);
   Status s = stub_->Echo(&context, request, &response);
   EXPECT_EQ(response.message(), request.message());
   EXPECT_TRUE(s.IsOk());
@@ -277,7 +276,7 @@ TEST_F(End2endTest, EchoDeadline) {
   ClientContext context;
   std::chrono::system_clock::time_point deadline =
       std::chrono::system_clock::now() + std::chrono::seconds(100);
-  context.set_absolute_deadline(deadline);
+  context.set_deadline(deadline);
   Status s = stub_->Echo(&context, request, &response);
   EXPECT_EQ(response.message(), request.message());
   EXPECT_TRUE(s.IsOk());
@@ -428,7 +427,7 @@ TEST_F(End2endTest, DiffPackageServices) {
 // rpc and stream should fail on bad credentials.
 TEST_F(End2endTest, BadCredentials) {
   std::unique_ptr<Credentials> bad_creds =
-      ServiceAccountCredentials("", "", std::chrono::seconds(1));
+      ServiceAccountCredentials("", "", 1);
   EXPECT_EQ(nullptr, bad_creds.get());
   std::shared_ptr<ChannelInterface> channel =
       CreateChannel(server_address_.str(), bad_creds, ChannelArguments());
@@ -474,7 +473,7 @@ TEST_F(End2endTest, ClientCancelsRpc) {
   Status s = stub_->Echo(&context, request, &response);
   cancel_thread.join();
   EXPECT_EQ(StatusCode::CANCELLED, s.code());
-  EXPECT_TRUE(s.details().empty());
+  EXPECT_EQ(s.details(), "Cancelled");
 }
 
 // Server cancels rpc after 1ms
@@ -491,14 +490,98 @@ TEST_F(End2endTest, ServerCancelsRpc) {
   EXPECT_TRUE(s.details().empty());
 }
 
+// Client cancels request stream after sending two messages
+TEST_F(End2endTest, ClientCancelsRequestStream) {
+  ResetStub();
+  EchoRequest request;
+  EchoResponse response;
+  ClientContext context;
+  request.set_message("hello");
+
+  auto stream = stub_->RequestStream(&context, &response);
+  EXPECT_TRUE(stream->Write(request));
+  EXPECT_TRUE(stream->Write(request));
+  
+  context.TryCancel();
+
+  Status s = stream->Finish();
+  EXPECT_EQ(grpc::StatusCode::CANCELLED, s.code());
+  
+  EXPECT_EQ(response.message(), "");
+
+}
+
+// Client cancels server stream after sending some messages
+TEST_F(End2endTest, ClientCancelsResponseStream) {
+  ResetStub();
+  EchoRequest request;
+  EchoResponse response;
+  ClientContext context;
+  request.set_message("hello");
+
+  auto stream = stub_->ResponseStream(&context, request);
+
+  EXPECT_TRUE(stream->Read(&response));
+  EXPECT_EQ(response.message(), request.message() + "0");
+  EXPECT_TRUE(stream->Read(&response));
+  EXPECT_EQ(response.message(), request.message() + "1");
+
+  context.TryCancel();
+
+  // The cancellation races with responses, so there might be zero or
+  // one responses pending, read till failure
+
+  if (stream->Read(&response)) {
+    EXPECT_EQ(response.message(), request.message() + "2");
+    // Since we have cancelled, we expect the next attempt to read to fail
+    EXPECT_FALSE(stream->Read(&response));
+  }
+
+  Status s = stream->Finish();
+  // The final status could be either of CANCELLED or OK depending on
+  // who won the race.
+  EXPECT_GE(grpc::StatusCode::CANCELLED, s.code());
+}
+
+// Client cancels bidi stream after sending some messages
+TEST_F(End2endTest, ClientCancelsBidi) {
+  ResetStub();
+  EchoRequest request;
+  EchoResponse response;
+  ClientContext context;
+  grpc::string msg("hello");
+
+  auto stream = stub_->BidiStream(&context);
+
+  request.set_message(msg + "0");
+  EXPECT_TRUE(stream->Write(request));
+  EXPECT_TRUE(stream->Read(&response));
+  EXPECT_EQ(response.message(), request.message());
+
+  request.set_message(msg + "1");
+  EXPECT_TRUE(stream->Write(request));
+
+  context.TryCancel();
+
+  // The cancellation races with responses, so there might be zero or
+  // one responses pending, read till failure
+
+  if (stream->Read(&response)) {
+    EXPECT_EQ(response.message(), request.message());
+    // Since we have cancelled, we expect the next attempt to read to fail
+    EXPECT_FALSE(stream->Read(&response));
+  }
+
+  Status s = stream->Finish();
+  EXPECT_EQ(grpc::StatusCode::CANCELLED, s.code());
+}
+
+
 }  // namespace testing
 }  // namespace grpc
 
 int main(int argc, char** argv) {
   grpc_test_init(argc, argv);
-  grpc_init();
   ::testing::InitGoogleTest(&argc, argv);
-  int result = RUN_ALL_TESTS();
-  grpc_shutdown();
-  return result;
+  return RUN_ALL_TESTS();
 }
diff --git a/test/cpp/end2end/generic_end2end_test.cc b/test/cpp/end2end/generic_end2end_test.cc
index 584d4bc7ba0dcb35ea79da3e823817dd18bb53cf..103f613f70efa23b1b7edab8fe733a812cc9d071 100644
--- a/test/cpp/end2end/generic_end2end_test.cc
+++ b/test/cpp/end2end/generic_end2end_test.cc
@@ -31,11 +31,9 @@
  *
  */
 
-#include <chrono>
 #include <memory>
 
 #include "src/cpp/proto/proto_utils.h"
-#include "src/cpp/util/time.h"
 #include "test/core/util/port.h"
 #include "test/core/util/test_config.h"
 #include "test/cpp/util/echo.grpc.pb.h"
@@ -55,6 +53,7 @@
 #include <grpc++/slice.h>
 #include <grpc++/status.h>
 #include <grpc++/stream.h>
+#include <grpc++/time.h>
 #include <gtest/gtest.h>
 
 #include <grpc/grpc.h>
@@ -280,9 +279,6 @@ TEST_F(GenericEnd2endTest, SimpleBidiStreaming) {
 
 int main(int argc, char** argv) {
   grpc_test_init(argc, argv);
-  grpc_init();
   ::testing::InitGoogleTest(&argc, argv);
-  int result = RUN_ALL_TESTS();
-  grpc_shutdown();
-  return result;
+  return RUN_ALL_TESTS();
 }
diff --git a/test/cpp/interop/client.cc b/test/cpp/interop/client.cc
index 42d16f2f85efa8a603bee063dafc324d6dfb4204..072968f7cdc6a6572ae37a838de0f7363b44aafa 100644
--- a/test/cpp/interop/client.cc
+++ b/test/cpp/interop/client.cc
@@ -76,8 +76,6 @@ using grpc::testing::CreateChannelForTestCase;
 using grpc::testing::GetServiceAccountJsonKey;
 
 int main(int argc, char** argv) {
-  grpc_init();
-
   grpc::testing::InitTest(&argc, &argv, true);
 
   int ret = 0;
@@ -129,8 +127,6 @@ int main(int argc, char** argv) {
         FLAGS_test_case.c_str());
     ret = 1;
   }
-  client.Reset(nullptr);
 
-  grpc_shutdown();
   return ret;
 }
diff --git a/test/cpp/interop/client_helper.cc b/test/cpp/interop/client_helper.cc
index b4d5b88de538ec057e4567773ee5d5470f80fc86..a1dea383e6a3b683fbb8253a63bc69ef06637a48 100644
--- a/test/cpp/interop/client_helper.cc
+++ b/test/cpp/interop/client_helper.cc
@@ -85,8 +85,9 @@ std::shared_ptr<ChannelInterface> CreateChannelForTestCase(
     std::unique_ptr<Credentials> creds;
     GPR_ASSERT(FLAGS_enable_ssl);
     grpc::string json_key = GetServiceAccountJsonKey();
+    std::chrono::seconds token_lifetime = std::chrono::hours(1);
     creds = ServiceAccountCredentials(json_key, FLAGS_oauth_scope,
-                                      std::chrono::hours(1));
+                                      token_lifetime.count());
     return CreateTestChannel(host_port, FLAGS_server_host_override,
                              FLAGS_enable_ssl, FLAGS_use_prod_roots, creds);
   } else if (test_case == "compute_engine_creds") {
@@ -99,7 +100,8 @@ std::shared_ptr<ChannelInterface> CreateChannelForTestCase(
     std::unique_ptr<Credentials> creds;
     GPR_ASSERT(FLAGS_enable_ssl);
     grpc::string json_key = GetServiceAccountJsonKey();
-    creds = JWTCredentials(json_key, std::chrono::hours(1));
+    std::chrono::seconds token_lifetime = std::chrono::hours(1);
+    creds = JWTCredentials(json_key, token_lifetime.count());
     return CreateTestChannel(host_port, FLAGS_server_host_override,
                              FLAGS_enable_ssl, FLAGS_use_prod_roots, creds);
   } else {
diff --git a/test/cpp/interop/server.cc b/test/cpp/interop/server.cc
index 7888102837a393de4a1b6f55371b998a2518c6cc..22b8910a249d8fc39310ee1ce760224fce2cba5b 100644
--- a/test/cpp/interop/server.cc
+++ b/test/cpp/interop/server.cc
@@ -218,13 +218,11 @@ void RunServer() {
 static void sigint_handler(int x) { got_sigint = true; }
 
 int main(int argc, char** argv) {
-  grpc_init();
   grpc::testing::InitTest(&argc, &argv, true);
   signal(SIGINT, sigint_handler);
 
   GPR_ASSERT(FLAGS_port != 0);
   RunServer();
 
-  grpc_shutdown();
   return 0;
 }
diff --git a/test/cpp/qps/client_sync.cc b/test/cpp/qps/client_sync.cc
index aea5a0fb27acd1cf75e0e10aff1ca47362df1199..5dd64d0b13452a250df554ea3b3040007df128f7 100644
--- a/test/cpp/qps/client_sync.cc
+++ b/test/cpp/qps/client_sync.cc
@@ -105,6 +105,7 @@ class SynchronousStreamingClient GRPC_FINAL : public SynchronousClient {
     StartThreads(num_threads_);
   }
   ~SynchronousStreamingClient() {
+    EndThreads();
     if (stream_) {
       SimpleResponse response;
       stream_->WritesDone();
diff --git a/test/cpp/qps/qps_driver.cc b/test/cpp/qps/qps_driver.cc
index 0669ccf808bf9781cd4ce57f91aad03398edba6c..93b1247d73911831e51d53d64f326268d50795d9 100644
--- a/test/cpp/qps/qps_driver.cc
+++ b/test/cpp/qps/qps_driver.cc
@@ -69,7 +69,6 @@ using grpc::testing::RpcType;
 using grpc::testing::ResourceUsage;
 
 int main(int argc, char** argv) {
-  grpc_init();
   grpc::testing::InitTest(&argc, &argv, true);
 
   RpcType rpc_type;
@@ -104,6 +103,5 @@ int main(int argc, char** argv) {
   ReportLatency(result);
   ReportTimes(result);
 
-  grpc_shutdown();
   return 0;
 }
diff --git a/test/cpp/qps/smoke_test.cc b/test/cpp/qps/smoke_test.cc
index 9531913b00ee0791efa97c9aebf523682770f9f1..2c60a9997c8903948affef8ea373b2d626226ce7 100644
--- a/test/cpp/qps/smoke_test.cc
+++ b/test/cpp/qps/smoke_test.cc
@@ -33,6 +33,8 @@
 
 #include <grpc/support/log.h>
 
+#include <signal.h>
+
 #include "test/cpp/qps/driver.h"
 #include "test/cpp/qps/report.h"
 
@@ -136,14 +138,12 @@ static void RunQPS() {
 }  // namespace grpc
 
 int main(int argc, char** argv) {
-  grpc_init();
-
+  signal(SIGPIPE, SIG_IGN);
   using namespace grpc::testing;
   RunSynchronousStreamingPingPong();
   RunSynchronousUnaryPingPong();
   RunAsyncUnaryPingPong();
   RunQPS();
 
-  grpc_shutdown();
   return 0;
 }
diff --git a/test/cpp/qps/worker.cc b/test/cpp/qps/worker.cc
index 896a85cc593cc6165e272a7789dde6092ebaf116..281c617382a662dcbf24a42d5d76dd2509606b10 100644
--- a/test/cpp/qps/worker.cc
+++ b/test/cpp/qps/worker.cc
@@ -64,13 +64,11 @@ static void RunServer() {
 }  // namespace grpc
 
 int main(int argc, char** argv) {
-  grpc_init();
   grpc::testing::InitTest(&argc, &argv, true);
 
   signal(SIGINT, sigint_handler);
 
   grpc::testing::RunServer();
-
-  grpc_shutdown();
+  
   return 0;
 }
diff --git a/test/cpp/util/cli_call_test.cc b/test/cpp/util/cli_call_test.cc
index 32ef392cc4c0368b97562d64fb65d6d82a056c27..457a5e77de8d1b6d5f6263a5bb8b27f96936e433 100644
--- a/test/cpp/util/cli_call_test.cc
+++ b/test/cpp/util/cli_call_test.cc
@@ -123,9 +123,6 @@ TEST_F(CliCallTest, SimpleRpc) {
 
 int main(int argc, char** argv) {
   grpc_test_init(argc, argv);
-  grpc_init();
   ::testing::InitGoogleTest(&argc, argv);
-  int result = RUN_ALL_TESTS();
-  grpc_shutdown();
-  return result;
+  return RUN_ALL_TESTS();
 }
diff --git a/test/cpp/util/grpc_cli.cc b/test/cpp/util/grpc_cli.cc
index ee9f2752737bcdba92fcaa02cce7509ddd652f57..d71a7a0b778dc1400cc2706d7dcf94b1d595530a 100644
--- a/test/cpp/util/grpc_cli.cc
+++ b/test/cpp/util/grpc_cli.cc
@@ -79,8 +79,6 @@ DEFINE_string(output_binary_file, "output.bin",
               "Path to output file to write serialized response.");
 
 int main(int argc, char** argv) {
-  grpc_init();
-
   grpc::testing::InitTest(&argc, &argv, true);
 
   if (argc < 4 || grpc::string(argv[1]) != "call") {
@@ -127,7 +125,5 @@ int main(int argc, char** argv) {
     output_file << response;
   }
 
-  channel.reset();
-  grpc_shutdown();
   return 0;
 }
diff --git a/test/cpp/util/time_test.cc b/test/cpp/util/time_test.cc
index 4641fdb4daec90a21a19cfb8920779c857c74b01..a3cfb1c961c56b5d1fc6d99e43f56b98e5ba5dc3 100644
--- a/test/cpp/util/time_test.cc
+++ b/test/cpp/util/time_test.cc
@@ -31,11 +31,8 @@
  *
  */
 
-#include "src/cpp/util/time.h"
-
-#include <chrono>
-
 #include <grpc/support/time.h>
+#include <grpc++/time.h>
 #include <gtest/gtest.h>
 
 using std::chrono::duration_cast;
diff --git a/tools/buildgen/build-cleaner.py b/tools/buildgen/build-cleaner.py
index 6c5355bce39964547a6a0605037c87129a86eab4..fba103723cff0e425129b33cbb6222273eb81488 100755
--- a/tools/buildgen/build-cleaner.py
+++ b/tools/buildgen/build-cleaner.py
@@ -52,11 +52,15 @@ _ELEM_KEYS = [
 
 def rebuild_as_ordered_dict(indict, special_keys):
   outdict = collections.OrderedDict()
+  for key in sorted(indict.keys()):
+    if '#' in key:
+      outdict[key] = indict[key]
   for key in special_keys:
     if key in indict:
       outdict[key] = indict[key]
   for key in sorted(indict.keys()):
     if key in special_keys: continue
+    if '#' in key: continue
     outdict[key] = indict[key]
   return outdict
 
diff --git a/tools/dockerfile/grpc_cxx/build.sh b/tools/dockerfile/grpc_cxx/build.sh
new file mode 100755
index 0000000000000000000000000000000000000000..8a9e95ccb828dd09b1d3a687d0996eb007a2aea5
--- /dev/null
+++ b/tools/dockerfile/grpc_cxx/build.sh
@@ -0,0 +1,14 @@
+#!/bin/bash
+rm -rf /var/local/git
+cp -R /var/local/git-clone /var/local/git
+
+cd /var/local/git/grpc/third_party/protobuf && \
+  ./autogen.sh && \
+  ./configure --prefix=/usr && \
+  make -j12 && make check && make install && make clean
+
+cd /var/local/git/grpc && ls \
+  && make clean \
+  && make gens/test/cpp/util/messages.pb.cc \
+  && make interop_client \
+  && make interop_server
diff --git a/tools/dockerfile/grpc_java/build.sh b/tools/dockerfile/grpc_java/build.sh
new file mode 100755
index 0000000000000000000000000000000000000000..04212ceec22f1c399112649552cab38328313d3c
--- /dev/null
+++ b/tools/dockerfile/grpc_java/build.sh
@@ -0,0 +1,9 @@
+#!/bin/bash
+rm -rf /var/local/git
+cp -R /var/local/git-clone /var/local/git
+cd /var/local/git/grpc-java/lib/netty && \
+  mvn -pl codec-http2 -am -DskipTests install clean
+cd /var/local/git/grpc-java && \
+  ./gradlew build
+
+echo 'build finished'
diff --git a/tools/dockerfile/grpc_ruby/Dockerfile b/tools/dockerfile/grpc_ruby/Dockerfile
index 89656d17433dbddce432ffb19705c4cc0a0ba82b..485c34e1a810f10f4c343ca44a77cebe7386b099 100644
--- a/tools/dockerfile/grpc_ruby/Dockerfile
+++ b/tools/dockerfile/grpc_ruby/Dockerfile
@@ -42,7 +42,7 @@ RUN make clean -C /var/local/git/grpc
 RUN make install_c -j12 -C /var/local/git/grpc
 
 # Build ruby gRPC and run its tests
-RUN /bin/bash -l -c 'cd /var/local/git/grpc/src/ruby && bundle && rake'
+RUN /bin/bash -l -c 'cd /var/local/git/grpc/src/ruby && gem update bundler && bundle && rake'
 
 # Add a cacerts directory containing the Google root pem file, allowing the
 # ruby client to access the production test instance
diff --git a/tools/gce_setup/grpc_docker.sh b/tools/gce_setup/grpc_docker.sh
index c8481c4211998487c96b40a3acfae8030b8442f5..beff8cc840cd94150cf59759c60db8160195fd6d 100755
--- a/tools/gce_setup/grpc_docker.sh
+++ b/tools/gce_setup/grpc_docker.sh
@@ -1173,7 +1173,6 @@ grpc_cloud_prod_auth_jwt_token_creds_gen_ruby_cmd() {
   local test_script="/var/local/git/grpc/src/ruby/bin/interop/interop_client.rb"
   local test_script+=" --use_tls"
   local gfe_flags=$(_grpc_prod_gfe_flags)
-  local added_gfe_flags=$(_grpc_jwt_token_test_flags)
   local env_prefix="SSL_CERT_FILE=/cacerts/roots.pem"
   env_prefix+=" GOOGLE_APPLICATION_CREDENTIALS=/service_account/stubbyCloudTestingTest-7dd63462c60c.json"
   local the_cmd="$cmd_prefix '$env_prefix ruby $test_script $gfe_flags $added_gfe_flags $@'"
@@ -1402,6 +1401,38 @@ grpc_cloud_prod_gen_csharp_mono_cmd() {
   echo $the_cmd
 }
 
+# constructs the full dockerized csharp-mono service_account auth interop test cmd.
+#
+# call-seq:
+#   flags= .... # generic flags to include the command
+#   cmd=$($grpc_gen_test_cmd $flags)
+grpc_cloud_prod_auth_service_account_creds_gen_csharp_mono_cmd() {
+  local workdir_flag="-w /var/local/git/grpc/src/csharp/Grpc.IntegrationTesting.Client/bin/Debug"
+  local env_flag="-e SSL_CERT_FILE=/cacerts/roots.pem "
+  env_flag+="-e GOOGLE_APPLICATION_CREDENTIALS=/service_account/stubbyCloudTestingTest-7dd63462c60c.json "
+  local cmd_prefix="sudo docker run $workdir_flag $env_flag grpc/csharp_mono";
+  local test_script="mono Grpc.IntegrationTesting.Client.exe --use_tls=true";
+  local gfe_flags=$(_grpc_prod_gfe_flags);
+  local the_cmd="$cmd_prefix $test_script $gfe_flags $@";
+  echo $the_cmd
+}
+
+# constructs the full dockerized csharp-mono gce auth interop test cmd.
+#
+# call-seq:
+#   flags= .... # generic flags to include the command
+#   cmd=$($grpc_gen_test_cmd $flags)
+grpc_cloud_prod_auth_compute_engine_creds_gen_csharp_mono_cmd() {
+  local workdir_flag="-w /var/local/git/grpc/src/csharp/Grpc.IntegrationTesting.Client/bin/Debug"
+  local env_flag="-e SSL_CERT_FILE=/cacerts/roots.pem "
+  local cmd_prefix="sudo docker run $workdir_flag $env_flag grpc/csharp_mono";
+  local test_script="mono Grpc.IntegrationTesting.Client.exe --use_tls=true";
+  local gfe_flags=$(_grpc_prod_gfe_flags)
+  local added_gfe_flags=$(_grpc_gce_test_flags)
+  local the_cmd="$cmd_prefix $test_script $gfe_flags $added_gfe_flags $@";
+  echo $the_cmd
+}
+
 # outputs the flags passed to gfe tests
 _grpc_prod_gfe_flags() {
   echo " --server_port=443 --server_host=grpc-test.sandbox.google.com --server_host_override=grpc-test.sandbox.google.com"
diff --git a/tools/gce_setup/private_build_and_test.sh b/tools/gce_setup/private_build_and_test.sh
new file mode 100755
index 0000000000000000000000000000000000000000..9c5c347a304860d2212f54eeafdd24b8c91f1065
--- /dev/null
+++ b/tools/gce_setup/private_build_and_test.sh
@@ -0,0 +1,61 @@
+#!/bin/bash
+
+# This script has to be run from the same directory as grpc_docker.sh and after grpc_docker.sh is sourced
+#
+# Sample Usage:
+# ===============================
+# ./private_build_and_test.sh [language] [environment: interop|cloud] [test case]
+#                              [git base directory] [server name in interop environment] 
+# sh private_build_and_test.sh java interop large_unary /usr/local/google/home/donnadionne/grpc-git grpc-docker-server1
+# sh private_build_and_test.sh java cloud large_unary /usr/local/google/home/donnadionne/grpc-git
+# =============================== 
+
+# Arguments
+LANGUAGE=$1
+ENV=$2
+TEST=$3
+GIT=$4
+PROJECT=${5:-"stoked-keyword-656"}
+ZONE=${6:-"asia-east1-a"}
+CLIENT=${7:-"grpc-docker-testclients1"}
+SERVER=${8:-"grpc-docker-server"}
+
+current_time=$(date "+%Y-%m-%d-%H-%M-%S")
+result_file_name=private_result.$current_time.txt
+
+sudo docker run --name="private_images" -v $GIT:/var/local/git-clone grpc/$LANGUAGE /var/local/git-clone/grpc/tools/dockerfile/grpc_$LANGUAGE/build.sh
+
+sudo docker commit -m "private image" -a $USER private_images grpc/private_images
+
+sudo docker tag -f grpc/private_images 0.0.0.0:5000/grpc/private_images
+
+sudo docker push 0.0.0.0:5000/grpc/private_images
+
+sudo docker rmi -f grpc/private_images
+
+sudo docker rm private_images
+
+gcloud compute --project $PROJECT ssh --zone $ZONE $CLIENT --command "sudo docker pull 0.0.0.0:5000/grpc/private_images"
+
+gcloud compute --project $PROJECT ssh --zone $ZONE $CLIENT --command "sudo docker tag 0.0.0.0:5000/grpc/private_images grpc/$LANGUAGE"
+
+source grpc_docker.sh
+
+if [ $ENV == 'interop' ]
+then
+  grpc_interop_test $TEST $CLIENT $LANGUAGE $SERVER cxx
+  grpc_interop_test $TEST $CLIENT $LANGUAGE $SERVER java
+  grpc_interop_test $TEST $CLIENT $LANGUAGE $SERVER go
+  grpc_interop_test $TEST $CLIENT $LANGUAGE $SERVER ruby
+  grpc_interop_test $TEST $CLIENT $LANGUAGE $SERVER node
+  grpc_interop_test $TEST $CLIENT $LANGUAGE $SERVER python
+else
+  if [ $ENV == 'cloud' ]
+  then
+    grpc_cloud_prod_test $TEST $CLIENT $LANGUAGE > /tmp/$result_file_name 2>&1
+    gsutil cp /tmp/$result_file_name gs://$PROJECT-output/private_result/$result_file_name
+  else
+    grpc_cloud_prod_auth_test $TEST $CLIENT $LANGUAGE
+  fi
+fi
+
diff --git a/tools/run_tests/build_csharp.sh b/tools/run_tests/build_csharp.sh
index 8227ad37bca5cd5f4ce06c32876106d4292f5df8..eae7bd50405aa37fbacbda8bfe62a4efdc87d931 100755
--- a/tools/run_tests/build_csharp.sh
+++ b/tools/run_tests/build_csharp.sh
@@ -30,9 +30,21 @@
 
 set -ex
 
+if [ "$CONFIG" = "dbg" ]
+then
+  MSBUILD_CONFIG="Debug"
+else
+  MSBUILD_CONFIG="Release"
+fi
+
 # change to gRPC repo root
 cd $(dirname $0)/../..
 
 root=`pwd`
 
-xbuild src/csharp/Grpc.sln
+if [ -n "$NUGET" ]
+then
+  $NUGET restore src/csharp/Grpc.sln
+fi
+
+xbuild /p:Configuration=$MSBUILD_CONFIG src/csharp/Grpc.sln
diff --git a/tools/run_tests/run_csharp.sh b/tools/run_tests/run_csharp.sh
index d10a41ae9f4858bd5d2bcd410cf79b2d1e8a2d4c..752e83ef70547a7bce5e6dc258eacaf2a0accb4d 100755
--- a/tools/run_tests/run_csharp.sh
+++ b/tools/run_tests/run_csharp.sh
@@ -30,17 +30,22 @@
 
 set -ex
 
+CONFIG=${CONFIG:-opt}
+
+if [ "$CONFIG" = "dbg" ]
+then
+  MSBUILD_CONFIG="Debug"
+else
+  MSBUILD_CONFIG="Release"
+fi
+
 # change to gRPC repo root
 cd $(dirname $0)/../..
 
 root=`pwd`
 cd src/csharp
 
-# TODO: All the tests run pretty fast. In the future, we might need to teach
-# run_tests.py about separate tests to make them run in parallel.
-for assembly_name in Grpc.Core.Tests Grpc.Examples.Tests Grpc.IntegrationTesting
-do
-  LD_LIBRARY_PATH=$root/libs/dbg nunit-console -labels $assembly_name/bin/Debug/$assembly_name.dll
-done
+export LD_LIBRARY_PATH=$root/libs/$CONFIG
+nunit-console -labels "$1/bin/$MSBUILD_CONFIG/$1.dll"
 
 
diff --git a/tools/run_tests/run_tests.py b/tools/run_tests/run_tests.py
index 4e24f4b5104f2f4e4366414046a2fa572df54e8c..50fdec7f5f2a8e659a14245ee2c7a5fb7f4db445 100755
--- a/tools/run_tests/run_tests.py
+++ b/tools/run_tests/run_tests.py
@@ -61,7 +61,7 @@ class SimpleConfig(object):
     self.environ = environ
     self.environ['CONFIG'] = config
 
-  def job_spec(self, cmdline, hash_targets):
+  def job_spec(self, cmdline, hash_targets, shortname=None):
     """Construct a jobset.JobSpec for a test under this config
 
        Args:
@@ -74,6 +74,7 @@ class SimpleConfig(object):
                           be listed
     """
     return jobset.JobSpec(cmdline=cmdline,
+                          shortname=shortname,
                           environ=self.environ,
                           hash_targets=hash_targets
                               if self.allow_hashing else None)
@@ -218,9 +219,13 @@ class RubyLanguage(object):
 
 
 class CSharpLanguage(object):
-
   def test_specs(self, config, travis):
-    return [config.job_spec('tools/run_tests/run_csharp.sh', None)]
+    assemblies = ['Grpc.Core.Tests',
+                  'Grpc.Examples.Tests',
+                  'Grpc.IntegrationTesting']
+    return [config.job_spec(['tools/run_tests/run_csharp.sh', assembly],
+            None, shortname=assembly)
+            for assembly in assemblies ]
 
   def make_targets(self):
     return ['grpc_csharp_ext']
@@ -259,7 +264,7 @@ class Build(object):
     return []
 
   def make_targets(self):
-    return ['all']
+    return ['static']
 
   def build_steps(self):
     return []
diff --git a/tools/run_tests/tests.json b/tools/run_tests/tests.json
index 5467bdb139259e612545013b5ee367c7740fd73c..68b22d731186fa4f1a566d4c8cbd0a87c8bd1143 100644
--- a/tools/run_tests/tests.json
+++ b/tools/run_tests/tests.json
@@ -65,7 +65,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "census_statistics_multiple_writers_test", 
     "platforms": [
@@ -74,7 +74,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "census_statistics_performance_test", 
     "platforms": [
@@ -83,7 +83,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "census_statistics_quick_test", 
     "platforms": [
@@ -145,15 +145,6 @@
       "posix"
     ]
   }, 
-  {
-    "flaky": false, 
-    "language": "c", 
-    "name": "chttp2_transport_end2end_test", 
-    "platforms": [
-      "windows", 
-      "posix"
-    ]
-  }, 
   {
     "flaky": false, 
     "language": "c", 
@@ -468,15 +459,6 @@
       "posix"
     ]
   }, 
-  {
-    "flaky": false, 
-    "language": "c", 
-    "name": "metadata_buffer_test", 
-    "platforms": [
-      "windows", 
-      "posix"
-    ]
-  }, 
   {
     "flaky": false, 
     "language": "c", 
@@ -721,7 +703,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_fake_security_cancel_after_accept_test", 
     "platforms": [
@@ -748,7 +730,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_fake_security_cancel_after_accept_legacy_test", 
     "platforms": [
@@ -910,7 +892,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_fake_security_invoke_large_request_test", 
     "platforms": [
@@ -919,7 +901,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_fake_security_invoke_large_request_legacy_test", 
     "platforms": [
@@ -1171,7 +1153,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_fullstack_cancel_after_accept_test", 
     "platforms": [
@@ -1198,7 +1180,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_fullstack_cancel_after_accept_legacy_test", 
     "platforms": [
@@ -1360,7 +1342,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_fullstack_invoke_large_request_test", 
     "platforms": [
@@ -1369,7 +1351,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_fullstack_invoke_large_request_legacy_test", 
     "platforms": [
@@ -1621,7 +1603,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_fullstack_uds_cancel_after_accept_test", 
     "platforms": [
@@ -1648,7 +1630,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_fullstack_uds_cancel_after_accept_legacy_test", 
     "platforms": [
@@ -1810,7 +1792,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_fullstack_uds_invoke_large_request_test", 
     "platforms": [
@@ -1819,7 +1801,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_fullstack_uds_invoke_large_request_legacy_test", 
     "platforms": [
@@ -2071,7 +2053,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_simple_ssl_fullstack_cancel_after_accept_test", 
     "platforms": [
@@ -2098,7 +2080,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_simple_ssl_fullstack_cancel_after_accept_legacy_test", 
     "platforms": [
@@ -2260,7 +2242,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_simple_ssl_fullstack_invoke_large_request_test", 
     "platforms": [
@@ -2269,7 +2251,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_simple_ssl_fullstack_invoke_large_request_legacy_test", 
     "platforms": [
@@ -2521,7 +2503,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_simple_ssl_with_oauth2_fullstack_cancel_after_accept_test", 
     "platforms": [
@@ -2548,7 +2530,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_simple_ssl_with_oauth2_fullstack_cancel_after_accept_legacy_test", 
     "platforms": [
@@ -2710,7 +2692,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_simple_ssl_with_oauth2_fullstack_invoke_large_request_test", 
     "platforms": [
@@ -2719,7 +2701,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_simple_ssl_with_oauth2_fullstack_invoke_large_request_legacy_test", 
     "platforms": [
@@ -2971,7 +2953,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_socket_pair_cancel_after_accept_test", 
     "platforms": [
@@ -2998,7 +2980,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_socket_pair_cancel_after_accept_legacy_test", 
     "platforms": [
@@ -3160,7 +3142,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_socket_pair_invoke_large_request_test", 
     "platforms": [
@@ -3169,7 +3151,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_socket_pair_invoke_large_request_legacy_test", 
     "platforms": [
@@ -3421,7 +3403,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_test", 
     "platforms": [
@@ -3448,7 +3430,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_socket_pair_one_byte_at_a_time_cancel_after_accept_legacy_test", 
     "platforms": [
@@ -3610,7 +3592,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_test", 
     "platforms": [
@@ -3619,7 +3601,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_legacy_test", 
     "platforms": [
@@ -4060,7 +4042,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_fullstack_invoke_large_request_unsecure_test", 
     "platforms": [
@@ -4069,7 +4051,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_fullstack_invoke_large_request_legacy_unsecure_test", 
     "platforms": [
@@ -4510,7 +4492,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_fullstack_uds_invoke_large_request_unsecure_test", 
     "platforms": [
@@ -4519,7 +4501,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_fullstack_uds_invoke_large_request_legacy_unsecure_test", 
     "platforms": [
@@ -4960,7 +4942,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_socket_pair_invoke_large_request_unsecure_test", 
     "platforms": [
@@ -4969,7 +4951,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_socket_pair_invoke_large_request_legacy_unsecure_test", 
     "platforms": [
@@ -5410,7 +5392,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_unsecure_test", 
     "platforms": [
@@ -5419,7 +5401,7 @@
     ]
   }, 
   {
-    "flaky": false, 
+    "flaky": true, 
     "language": "c", 
     "name": "chttp2_socket_pair_one_byte_at_a_time_invoke_large_request_legacy_unsecure_test", 
     "platforms": [
diff --git a/vsprojects/Grpc.mak b/vsprojects/Grpc.mak
index 6a2da915a4289b54881d66b93fd3c6fc554d5833..9f304ad51af565f1a97b780e9d62ef3341b61e87 100644
--- a/vsprojects/Grpc.mak
+++ b/vsprojects/Grpc.mak
@@ -58,7 +58,7 @@ $(OUT_DIR):
 
 buildtests: buildtests_c buildtests_cxx
 
-buildtests_c: alarm_heap_test.exe alarm_list_test.exe alarm_test.exe alpn_test.exe bin_encoder_test.exe census_hash_table_test.exe census_statistics_multiple_writers_circular_buffer_test.exe census_statistics_multiple_writers_test.exe census_statistics_performance_test.exe census_statistics_quick_test.exe census_statistics_small_log_test.exe census_stub_test.exe census_window_stats_test.exe chttp2_status_conversion_test.exe chttp2_stream_encoder_test.exe chttp2_stream_map_test.exe chttp2_transport_end2end_test.exe echo_client.exe echo_server.exe echo_test.exe fd_posix_test.exe fling_client.exe fling_server.exe fling_stream_test.exe fling_test.exe gpr_cancellable_test.exe gpr_cmdline_test.exe gpr_env_test.exe gpr_file_test.exe gpr_histogram_test.exe gpr_host_port_test.exe gpr_log_test.exe gpr_slice_buffer_test.exe gpr_slice_test.exe gpr_string_test.exe gpr_sync_test.exe gpr_thd_test.exe gpr_time_test.exe gpr_tls_test.exe gpr_useful_test.exe grpc_base64_test.exe grpc_byte_buffer_reader_test.exe grpc_channel_stack_test.exe grpc_completion_queue_test.exe grpc_credentials_test.exe grpc_json_token_test.exe grpc_stream_op_test.exe hpack_parser_test.exe hpack_table_test.exe httpcli_format_request_test.exe httpcli_parser_test.exe httpcli_test.exe json_rewrite.exe json_rewrite_test.exe json_test.exe lame_client_test.exe message_compress_test.exe metadata_buffer_test.exe multi_init_test.exe murmur_hash_test.exe no_server_test.exe poll_kick_posix_test.exe resolve_address_test.exe secure_endpoint_test.exe sockaddr_utils_test.exe tcp_client_posix_test.exe tcp_posix_test.exe tcp_server_posix_test.exe time_averaged_stats_test.exe time_test.exe timeout_encoding_test.exe timers_test.exe transport_metadata_test.exe transport_security_test.exe 
+buildtests_c: alarm_heap_test.exe alarm_list_test.exe alarm_test.exe alpn_test.exe bin_encoder_test.exe census_hash_table_test.exe census_statistics_multiple_writers_circular_buffer_test.exe census_statistics_multiple_writers_test.exe census_statistics_performance_test.exe census_statistics_quick_test.exe census_statistics_small_log_test.exe census_stub_test.exe census_window_stats_test.exe chttp2_status_conversion_test.exe chttp2_stream_encoder_test.exe chttp2_stream_map_test.exe echo_client.exe echo_server.exe echo_test.exe fd_posix_test.exe fling_client.exe fling_server.exe fling_stream_test.exe fling_test.exe gpr_cancellable_test.exe gpr_cmdline_test.exe gpr_env_test.exe gpr_file_test.exe gpr_histogram_test.exe gpr_host_port_test.exe gpr_log_test.exe gpr_slice_buffer_test.exe gpr_slice_test.exe gpr_string_test.exe gpr_sync_test.exe gpr_thd_test.exe gpr_time_test.exe gpr_tls_test.exe gpr_useful_test.exe grpc_base64_test.exe grpc_byte_buffer_reader_test.exe grpc_channel_stack_test.exe grpc_completion_queue_test.exe grpc_credentials_test.exe grpc_json_token_test.exe grpc_stream_op_test.exe hpack_parser_test.exe hpack_table_test.exe httpcli_format_request_test.exe httpcli_parser_test.exe httpcli_test.exe json_rewrite.exe json_rewrite_test.exe json_test.exe lame_client_test.exe message_compress_test.exe multi_init_test.exe murmur_hash_test.exe no_server_test.exe poll_kick_posix_test.exe resolve_address_test.exe secure_endpoint_test.exe sockaddr_utils_test.exe tcp_client_posix_test.exe tcp_posix_test.exe tcp_server_posix_test.exe time_averaged_stats_test.exe time_test.exe timeout_encoding_test.exe timers_test.exe transport_metadata_test.exe transport_security_test.exe 
 	echo All tests built.
 
 buildtests_cxx: 
@@ -208,14 +208,6 @@ chttp2_stream_map_test: chttp2_stream_map_test.exe
 	echo Running chttp2_stream_map_test
 	$(OUT_DIR)\chttp2_stream_map_test.exe
 
-chttp2_transport_end2end_test.exe: build_grpc_test_util $(OUT_DIR)
-	echo Building chttp2_transport_end2end_test
-	$(CC) $(CFLAGS) /Fo:$(OUT_DIR)\ $(REPO_ROOT)\test\core\transport\chttp2_transport_end2end_test.c 
-	$(LINK) $(LFLAGS) /OUT:"$(OUT_DIR)\chttp2_transport_end2end_test.exe" Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib $(LIBS) $(OUT_DIR)\chttp2_transport_end2end_test.obj 
-chttp2_transport_end2end_test: chttp2_transport_end2end_test.exe
-	echo Running chttp2_transport_end2end_test
-	$(OUT_DIR)\chttp2_transport_end2end_test.exe
-
 echo_client.exe: build_grpc_test_util $(OUT_DIR)
 	echo Building echo_client
 	$(CC) $(CFLAGS) /Fo:$(OUT_DIR)\ $(REPO_ROOT)\test\core\echo\client.c 
@@ -584,14 +576,6 @@ message_compress_test: message_compress_test.exe
 	echo Running message_compress_test
 	$(OUT_DIR)\message_compress_test.exe
 
-metadata_buffer_test.exe: build_grpc_test_util $(OUT_DIR)
-	echo Building metadata_buffer_test
-	$(CC) $(CFLAGS) /Fo:$(OUT_DIR)\ $(REPO_ROOT)\test\core\channel\metadata_buffer_test.c 
-	$(LINK) $(LFLAGS) /OUT:"$(OUT_DIR)\metadata_buffer_test.exe" Debug\grpc_test_util.lib Debug\grpc.lib Debug\gpr_test_util.lib Debug\gpr.lib $(LIBS) $(OUT_DIR)\metadata_buffer_test.obj 
-metadata_buffer_test: metadata_buffer_test.exe
-	echo Running metadata_buffer_test
-	$(OUT_DIR)\metadata_buffer_test.exe
-
 multi_init_test.exe: build_grpc_test_util $(OUT_DIR)
 	echo Building multi_init_test
 	$(CC) $(CFLAGS) /Fo:$(OUT_DIR)\ $(REPO_ROOT)\test\core\surface\multi_init_test.c 
diff --git a/vsprojects/grpc++/grpc++.vcxproj b/vsprojects/grpc++/grpc++.vcxproj
index 38eca1a14e540e7af467ad3732db32a18c52e4f1..ac3191a8b2d0b1bca169b3a11657f22194f1b266 100644
--- a/vsprojects/grpc++/grpc++.vcxproj
+++ b/vsprojects/grpc++/grpc++.vcxproj
@@ -96,6 +96,7 @@
     <ClInclude Include="..\..\include\grpc++\generic_stub.h" />
     <ClInclude Include="..\..\include\grpc++\impl\call.h" />
     <ClInclude Include="..\..\include\grpc++\impl\client_unary_call.h" />
+    <ClInclude Include="..\..\include\grpc++\impl\grpc_library.h" />
     <ClInclude Include="..\..\include\grpc++\impl\internal_stub.h" />
     <ClInclude Include="..\..\include\grpc++\impl\rpc_method.h" />
     <ClInclude Include="..\..\include\grpc++\impl\rpc_service_method.h" />
@@ -115,6 +116,7 @@
     <ClInclude Include="..\..\include\grpc++\status_code_enum.h" />
     <ClInclude Include="..\..\include\grpc++\stream.h" />
     <ClInclude Include="..\..\include\grpc++\thread_pool_interface.h" />
+    <ClInclude Include="..\..\include\grpc++\time.h" />
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\..\src\cpp\client\secure_credentials.h" />
@@ -122,7 +124,6 @@
     <ClInclude Include="..\..\src\cpp\client\channel.h" />
     <ClInclude Include="..\..\src\cpp\proto\proto_utils.h" />
     <ClInclude Include="..\..\src\cpp\server\thread_pool.h" />
-    <ClInclude Include="..\..\src\cpp\util\time.h" />
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\..\src\cpp\client\secure_credentials.cc">
diff --git a/vsprojects/grpc++/grpc++.vcxproj.filters b/vsprojects/grpc++/grpc++.vcxproj.filters
index 6466a0fa26e523fe65de1185fb678edabc8e8432..d5eeb7179074badce1ff38f0f4c2cfb0a1eea5ad 100644
--- a/vsprojects/grpc++/grpc++.vcxproj.filters
+++ b/vsprojects/grpc++/grpc++.vcxproj.filters
@@ -120,6 +120,9 @@
     <ClInclude Include="..\..\include\grpc++\impl\client_unary_call.h">
       <Filter>include\grpc++\impl</Filter>
     </ClInclude>
+    <ClInclude Include="..\..\include\grpc++\impl\grpc_library.h">
+      <Filter>include\grpc++\impl</Filter>
+    </ClInclude>
     <ClInclude Include="..\..\include\grpc++\impl\internal_stub.h">
       <Filter>include\grpc++\impl</Filter>
     </ClInclude>
@@ -177,6 +180,9 @@
     <ClInclude Include="..\..\include\grpc++\thread_pool_interface.h">
       <Filter>include\grpc++</Filter>
     </ClInclude>
+    <ClInclude Include="..\..\include\grpc++\time.h">
+      <Filter>include\grpc++</Filter>
+    </ClInclude>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\..\src\cpp\client\secure_credentials.h">
@@ -194,9 +200,6 @@
     <ClInclude Include="..\..\src\cpp\server\thread_pool.h">
       <Filter>src\cpp\server</Filter>
     </ClInclude>
-    <ClInclude Include="..\..\src\cpp\util\time.h">
-      <Filter>src\cpp\util</Filter>
-    </ClInclude>
   </ItemGroup>
 
   <ItemGroup>
diff --git a/vsprojects/grpc.sln b/vsprojects/grpc.sln
index 64a3f2674c7b871742d9fc16e2f0c90678ae8467..1f286f51b2258750284dd0dc917b46c75ea29117 100644
--- a/vsprojects/grpc.sln
+++ b/vsprojects/grpc.sln
@@ -22,6 +22,13 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "grpc_test_util", "grpc_test
 		{29D16885-7228-4C31-81ED-5F9187C7F2A9} = {29D16885-7228-4C31-81ED-5F9187C7F2A9}
 	EndProjectSection
 EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "grpc_test_util_unsecure", "grpc_test_util_unsecure\grpc_test_util_unsecure.vcxproj", "{0A7E7F92-FDEA-40F1-A9EC-3BA484F98BBF}"
+	ProjectSection(ProjectDependencies) = postProject
+		{B23D3D1A-9438-4EDA-BEB6-9A0A03D17792} = {B23D3D1A-9438-4EDA-BEB6-9A0A03D17792}
+		{EAB0A629-17A9-44DB-B5FF-E91A721FE037} = {EAB0A629-17A9-44DB-B5FF-E91A721FE037}
+		{29D16885-7228-4C31-81ED-5F9187C7F2A9} = {29D16885-7228-4C31-81ED-5F9187C7F2A9}
+	EndProjectSection
+EndProject
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "grpc_unsecure", "grpc_unsecure\grpc_unsecure.vcxproj", "{46CEDFFF-9692-456A-AA24-38B5D6BCF4C5}"
 	ProjectSection(ProjectDependencies) = postProject
 		{B23D3D1A-9438-4EDA-BEB6-9A0A03D17792} = {B23D3D1A-9438-4EDA-BEB6-9A0A03D17792}
@@ -61,6 +68,10 @@ Global
 		{17BCAFC0-5FDC-4C94-AEB9-95F3E220614B}.Debug|Win32.Build.0 = Debug|Win32
 		{17BCAFC0-5FDC-4C94-AEB9-95F3E220614B}.Release|Win32.ActiveCfg = Release|Win32
 		{17BCAFC0-5FDC-4C94-AEB9-95F3E220614B}.Release|Win32.Build.0 = Release|Win32
+		{0A7E7F92-FDEA-40F1-A9EC-3BA484F98BBF}.Debug|Win32.ActiveCfg = Debug|Win32
+		{0A7E7F92-FDEA-40F1-A9EC-3BA484F98BBF}.Debug|Win32.Build.0 = Debug|Win32
+		{0A7E7F92-FDEA-40F1-A9EC-3BA484F98BBF}.Release|Win32.ActiveCfg = Release|Win32
+		{0A7E7F92-FDEA-40F1-A9EC-3BA484F98BBF}.Release|Win32.Build.0 = Release|Win32
 		{46CEDFFF-9692-456A-AA24-38B5D6BCF4C5}.Debug|Win32.ActiveCfg = Debug|Win32
 		{46CEDFFF-9692-456A-AA24-38B5D6BCF4C5}.Debug|Win32.Build.0 = Debug|Win32
 		{46CEDFFF-9692-456A-AA24-38B5D6BCF4C5}.Release|Win32.ActiveCfg = Release|Win32
diff --git a/vsprojects/grpc/grpc.vcxproj b/vsprojects/grpc/grpc.vcxproj
index b77350670c1209af784f7096fb4c528b88f56a11..fc7744f2b7be7ff881cfe96f8e378ad1e53f0310 100644
--- a/vsprojects/grpc/grpc.vcxproj
+++ b/vsprojects/grpc/grpc.vcxproj
@@ -117,7 +117,6 @@
     <ClInclude Include="..\..\src\core\channel\http_client_filter.h" />
     <ClInclude Include="..\..\src\core\channel\http_filter.h" />
     <ClInclude Include="..\..\src\core\channel\http_server_filter.h" />
-    <ClInclude Include="..\..\src\core\channel\metadata_buffer.h" />
     <ClInclude Include="..\..\src\core\channel\noop_filter.h" />
     <ClInclude Include="..\..\src\core\compression\algorithm.h" />
     <ClInclude Include="..\..\src\core\compression\message_compress.h" />
@@ -260,8 +259,6 @@
     </ClCompile>
     <ClCompile Include="..\..\src\core\channel\http_server_filter.c">
     </ClCompile>
-    <ClCompile Include="..\..\src\core\channel\metadata_buffer.c">
-    </ClCompile>
     <ClCompile Include="..\..\src\core\channel\noop_filter.c">
     </ClCompile>
     <ClCompile Include="..\..\src\core\compression\algorithm.c">
diff --git a/vsprojects/grpc/grpc.vcxproj.filters b/vsprojects/grpc/grpc.vcxproj.filters
index 7619bc1f4f2a7f41bbc247141fa6de43fd46f6c9..1dfca58cb551d74f956140d28dc946b8d8278b72 100644
--- a/vsprojects/grpc/grpc.vcxproj.filters
+++ b/vsprojects/grpc/grpc.vcxproj.filters
@@ -94,9 +94,6 @@
     <ClCompile Include="..\..\src\core\channel\http_server_filter.c">
       <Filter>src\core\channel</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\src\core\channel\metadata_buffer.c">
-      <Filter>src\core\channel</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\src\core\channel\noop_filter.c">
       <Filter>src\core\channel</Filter>
     </ClCompile>
@@ -452,9 +449,6 @@
     <ClInclude Include="..\..\src\core\channel\http_server_filter.h">
       <Filter>src\core\channel</Filter>
     </ClInclude>
-    <ClInclude Include="..\..\src\core\channel\metadata_buffer.h">
-      <Filter>src\core\channel</Filter>
-    </ClInclude>
     <ClInclude Include="..\..\src\core\channel\noop_filter.h">
       <Filter>src\core\channel</Filter>
     </ClInclude>
diff --git a/vsprojects/grpc_test_util/grpc_test_util.vcxproj b/vsprojects/grpc_test_util/grpc_test_util.vcxproj
index 35d11de18b31bab42ccd235bbcea66fc9253db2c..18ed2f25aad6484c8f89bc3e019bb09e82454bb0 100644
--- a/vsprojects/grpc_test_util/grpc_test_util.vcxproj
+++ b/vsprojects/grpc_test_util/grpc_test_util.vcxproj
@@ -83,20 +83,18 @@
     </Link>
   </ItemDefinitionGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\test\core\end2end\cq_verifier.c">
-    </ClCompile>
     <ClCompile Include="..\..\test\core\end2end\data\server1_cert.c">
     </ClCompile>
     <ClCompile Include="..\..\test\core\end2end\data\server1_key.c">
     </ClCompile>
     <ClCompile Include="..\..\test\core\end2end\data\test_root_cert.c">
     </ClCompile>
+    <ClCompile Include="..\..\test\core\end2end\cq_verifier.c">
+    </ClCompile>
     <ClCompile Include="..\..\test\core\iomgr\endpoint_tests.c">
     </ClCompile>
     <ClCompile Include="..\..\test\core\statistics\census_log_tests.c">
     </ClCompile>
-    <ClCompile Include="..\..\test\core\transport\transport_end2end_tests.c">
-    </ClCompile>
     <ClCompile Include="..\..\test\core\util\grpc_profiler.c">
     </ClCompile>
     <ClCompile Include="..\..\test\core\util\parse_hexstring.c">
diff --git a/vsprojects/grpc_test_util_unsecure/grpc_test_util_unsecure.vcxproj b/vsprojects/grpc_test_util_unsecure/grpc_test_util_unsecure.vcxproj
new file mode 100644
index 0000000000000000000000000000000000000000..d42940933acc40deeac90bde99da4805e6f29822
--- /dev/null
+++ b/vsprojects/grpc_test_util_unsecure/grpc_test_util_unsecure.vcxproj
@@ -0,0 +1,117 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{0A7E7F92-FDEA-40F1-A9EC-3BA484F98BBF}</ProjectGuid>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(VisualStudioVersion)' == '10.0'" Label="Configuration">
+    <PlatformToolset>v100</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(VisualStudioVersion)' == '11.0'" Label="Configuration">
+    <PlatformToolset>v110</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(VisualStudioVersion)' == '12.0'" Label="Configuration">
+    <PlatformToolset>v120</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>StaticLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <CharacterSet>Unicode</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>StaticLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>Unicode</CharacterSet>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="..\global.props" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="..\global.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <TargetName>grpc_test_util_unsecure</TargetName>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <TargetName>grpc_test_util_unsecure</TargetName>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <PrecompiledHeader>NotUsing</PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;_USE_32BIT_TIME_T;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <SDLCheck>true</SDLCheck>
+    </ClCompile>
+    <Link>
+      <SubSystem>Windows</SubSystem>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <PrecompiledHeader>NotUsing</PrecompiledHeader>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;_USE_32BIT_TIME_T;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <SDLCheck>true</SDLCheck>
+    </ClCompile>
+    <Link>
+      <SubSystem>Windows</SubSystem>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\test\core\end2end\cq_verifier.c">
+    </ClCompile>
+    <ClCompile Include="..\..\test\core\iomgr\endpoint_tests.c">
+    </ClCompile>
+    <ClCompile Include="..\..\test\core\statistics\census_log_tests.c">
+    </ClCompile>
+    <ClCompile Include="..\..\test\core\util\grpc_profiler.c">
+    </ClCompile>
+    <ClCompile Include="..\..\test\core\util\parse_hexstring.c">
+    </ClCompile>
+    <ClCompile Include="..\..\test\core\util\port_posix.c">
+    </ClCompile>
+    <ClCompile Include="..\..\test\core\util\port_windows.c">
+    </ClCompile>
+    <ClCompile Include="..\..\test\core\util\slice_splitter.c">
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="..\gpr\gpr.vcxproj">
+      <Project>{B23D3D1A-9438-4EDA-BEB6-9A0A03D17792}</Project>
+    </ProjectReference>
+    <ProjectReference Include="..\gpr_test_util\gpr_test_util.vcxproj">
+      <Project>{EAB0A629-17A9-44DB-B5FF-E91A721FE037}</Project>
+    </ProjectReference>
+    <ProjectReference Include="..\grpc\grpc.vcxproj">
+      <Project>{29D16885-7228-4C31-81ED-5F9187C7F2A9}</Project>
+    </ProjectReference>
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
diff --git a/vsprojects/grpc_unsecure/grpc_unsecure.vcxproj b/vsprojects/grpc_unsecure/grpc_unsecure.vcxproj
index 7c9cbcf2688a4416af455384e182cb2427b64489..670b109e6fe2ec6de53b59eb8771596064604d10 100644
--- a/vsprojects/grpc_unsecure/grpc_unsecure.vcxproj
+++ b/vsprojects/grpc_unsecure/grpc_unsecure.vcxproj
@@ -100,7 +100,6 @@
     <ClInclude Include="..\..\src\core\channel\http_client_filter.h" />
     <ClInclude Include="..\..\src\core\channel\http_filter.h" />
     <ClInclude Include="..\..\src\core\channel\http_server_filter.h" />
-    <ClInclude Include="..\..\src\core\channel\metadata_buffer.h" />
     <ClInclude Include="..\..\src\core\channel\noop_filter.h" />
     <ClInclude Include="..\..\src\core\compression\algorithm.h" />
     <ClInclude Include="..\..\src\core\compression\message_compress.h" />
@@ -205,8 +204,6 @@
     </ClCompile>
     <ClCompile Include="..\..\src\core\channel\http_server_filter.c">
     </ClCompile>
-    <ClCompile Include="..\..\src\core\channel\metadata_buffer.c">
-    </ClCompile>
     <ClCompile Include="..\..\src\core\channel\noop_filter.c">
     </ClCompile>
     <ClCompile Include="..\..\src\core\compression\algorithm.c">
diff --git a/vsprojects/grpc_unsecure/grpc_unsecure.vcxproj.filters b/vsprojects/grpc_unsecure/grpc_unsecure.vcxproj.filters
index cec8f78bae629e75bd36e30ece7b844db58f8198..7c94d4d51e3ea6a272b436ce5700a9d130b1c657 100644
--- a/vsprojects/grpc_unsecure/grpc_unsecure.vcxproj.filters
+++ b/vsprojects/grpc_unsecure/grpc_unsecure.vcxproj.filters
@@ -37,9 +37,6 @@
     <ClCompile Include="..\..\src\core\channel\http_server_filter.c">
       <Filter>src\core\channel</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\src\core\channel\metadata_buffer.c">
-      <Filter>src\core\channel</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\src\core\channel\noop_filter.c">
       <Filter>src\core\channel</Filter>
     </ClCompile>
@@ -347,9 +344,6 @@
     <ClInclude Include="..\..\src\core\channel\http_server_filter.h">
       <Filter>src\core\channel</Filter>
     </ClInclude>
-    <ClInclude Include="..\..\src\core\channel\metadata_buffer.h">
-      <Filter>src\core\channel</Filter>
-    </ClInclude>
     <ClInclude Include="..\..\src\core\channel\noop_filter.h">
       <Filter>src\core\channel</Filter>
     </ClInclude>