grpc 1.40.0 → 1.46.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of grpc might be problematic. Click here for more details.
- checksums.yaml +4 -4
 - data/Makefile +462 -267
 - data/etc/roots.pem +335 -326
 - data/include/grpc/byte_buffer.h +1 -1
 - data/include/grpc/byte_buffer_reader.h +1 -1
 - data/include/grpc/event_engine/endpoint_config.h +6 -11
 - data/include/grpc/event_engine/event_engine.h +164 -95
 - data/include/grpc/event_engine/internal/memory_allocator_impl.h +68 -0
 - data/include/grpc/event_engine/memory_allocator.h +226 -0
 - data/include/grpc/event_engine/memory_request.h +57 -0
 - data/include/grpc/event_engine/port.h +1 -3
 - data/include/grpc/fork.h +1 -1
 - data/include/grpc/grpc.h +54 -18
 - data/include/grpc/grpc_posix.h +22 -18
 - data/include/grpc/grpc_security.h +328 -193
 - data/include/grpc/grpc_security_constants.h +2 -14
 - data/include/grpc/impl/codegen/atm.h +5 -3
 - data/include/grpc/impl/codegen/atm_gcc_atomic.h +2 -0
 - data/include/grpc/impl/codegen/atm_gcc_sync.h +2 -0
 - data/include/grpc/impl/codegen/atm_windows.h +2 -0
 - data/include/grpc/impl/codegen/byte_buffer.h +2 -0
 - data/include/grpc/impl/codegen/byte_buffer_reader.h +2 -0
 - data/include/grpc/impl/codegen/compression_types.h +2 -2
 - data/include/grpc/impl/codegen/connectivity_state.h +2 -0
 - data/include/grpc/impl/codegen/fork.h +2 -0
 - data/include/grpc/impl/codegen/gpr_slice.h +2 -0
 - data/include/grpc/impl/codegen/gpr_types.h +2 -0
 - data/include/grpc/impl/codegen/grpc_types.h +28 -26
 - data/include/grpc/impl/codegen/log.h +2 -0
 - data/include/grpc/impl/codegen/port_platform.h +37 -22
 - data/include/grpc/impl/codegen/propagation_bits.h +2 -0
 - data/include/grpc/impl/codegen/slice.h +6 -1
 - data/include/grpc/impl/codegen/status.h +2 -0
 - data/include/grpc/impl/codegen/sync.h +8 -5
 - data/include/grpc/impl/codegen/sync_abseil.h +2 -0
 - data/include/grpc/impl/codegen/sync_custom.h +2 -0
 - data/include/grpc/impl/codegen/sync_generic.h +3 -0
 - data/include/grpc/impl/codegen/sync_posix.h +4 -2
 - data/include/grpc/impl/codegen/sync_windows.h +2 -0
 - data/include/grpc/slice.h +1 -12
 - data/include/grpc/status.h +1 -1
 - data/include/grpc/support/atm.h +1 -1
 - data/include/grpc/support/atm_gcc_atomic.h +1 -1
 - data/include/grpc/support/atm_gcc_sync.h +1 -1
 - data/include/grpc/support/atm_windows.h +1 -1
 - data/include/grpc/support/log.h +1 -1
 - data/include/grpc/support/port_platform.h +1 -1
 - data/include/grpc/support/sync.h +1 -1
 - data/include/grpc/support/sync_abseil.h +1 -1
 - data/include/grpc/support/sync_custom.h +1 -1
 - data/include/grpc/support/sync_generic.h +1 -1
 - data/include/grpc/support/sync_posix.h +1 -1
 - data/include/grpc/support/sync_windows.h +1 -1
 - data/include/grpc/support/time.h +2 -2
 - data/src/core/ext/filters/census/grpc_context.cc +1 -0
 - data/src/core/ext/filters/channel_idle/channel_idle_filter.cc +309 -0
 - data/src/core/ext/filters/channel_idle/channel_idle_filter.h +122 -0
 - data/src/core/ext/filters/channel_idle/idle_filter_state.cc +96 -0
 - data/src/core/ext/filters/channel_idle/idle_filter_state.h +66 -0
 - data/src/core/ext/filters/client_channel/backend_metric.cc +24 -27
 - data/src/core/ext/filters/client_channel/backend_metric.h +4 -3
 - data/src/core/ext/filters/client_channel/backup_poller.cc +14 -9
 - data/src/core/ext/filters/client_channel/backup_poller.h +1 -0
 - data/src/core/ext/filters/client_channel/channel_connectivity.cc +75 -94
 - data/src/core/ext/filters/client_channel/client_channel.cc +532 -501
 - data/src/core/ext/filters/client_channel/client_channel.h +115 -64
 - data/src/core/ext/filters/client_channel/client_channel_channelz.cc +6 -5
 - data/src/core/ext/filters/client_channel/client_channel_channelz.h +1 -1
 - data/src/core/ext/filters/client_channel/client_channel_factory.cc +2 -1
 - data/src/core/ext/filters/client_channel/client_channel_factory.h +17 -19
 - data/src/core/ext/filters/client_channel/client_channel_plugin.cc +18 -24
 - data/src/core/ext/filters/client_channel/config_selector.cc +2 -1
 - data/src/core/ext/filters/client_channel/config_selector.h +5 -6
 - data/src/core/ext/filters/client_channel/connector.h +19 -19
 - data/src/core/ext/filters/client_channel/dynamic_filters.cc +6 -7
 - data/src/core/ext/filters/client_channel/dynamic_filters.h +2 -2
 - data/src/core/ext/filters/client_channel/global_subchannel_pool.cc +2 -22
 - data/src/core/ext/filters/client_channel/global_subchannel_pool.h +3 -16
 - data/src/core/ext/filters/client_channel/health/health_check_client.cc +128 -582
 - data/src/core/ext/filters/client_channel/health/health_check_client.h +24 -159
 - data/src/core/ext/filters/client_channel/http_connect_handshaker.cc +30 -34
 - data/src/core/ext/filters/client_channel/http_connect_handshaker.h +10 -2
 - data/src/core/ext/filters/client_channel/http_proxy.cc +88 -110
 - data/src/core/ext/filters/client_channel/http_proxy.h +17 -0
 - data/src/core/ext/filters/client_channel/lb_policy/address_filtering.cc +4 -3
 - data/src/core/ext/filters/client_channel/lb_policy/address_filtering.h +6 -5
 - data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc +6 -2
 - data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +6 -18
 - data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +247 -150
 - data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h +3 -6
 - data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc +1 -1
 - data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h +1 -1
 - data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc +3 -4
 - data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h +4 -4
 - data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +17 -18
 - data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +4 -4
 - data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +73 -39
 - data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +226 -181
 - data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +126 -79
 - data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +2542 -0
 - data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +68 -62
 - data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +18 -13
 - data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +106 -71
 - data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +119 -159
 - data/src/core/ext/filters/client_channel/lb_policy/xds/xds.h +1 -1
 - data/src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h +1 -1
 - data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +162 -77
 - data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +29 -19
 - data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +331 -488
 - data/src/core/ext/filters/client_channel/lb_policy.cc +15 -14
 - data/src/core/ext/filters/client_channel/lb_policy.h +115 -106
 - data/src/core/ext/filters/client_channel/lb_policy_factory.h +1 -0
 - data/src/core/ext/filters/client_channel/lb_policy_registry.cc +4 -7
 - data/src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc +133 -0
 - data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +296 -324
 - data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +23 -12
 - data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +23 -18
 - data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +37 -55
 - data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +153 -275
 - data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +38 -25
 - data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +1 -1
 - data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +96 -254
 - data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +23 -20
 - data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +2 -1
 - data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +85 -69
 - data/src/core/ext/filters/client_channel/resolver/polling_resolver.cc +201 -0
 - data/src/core/ext/filters/client_channel/resolver/polling_resolver.h +106 -0
 - data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +40 -39
 - data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +509 -439
 - data/src/core/ext/filters/client_channel/resolver_result_parsing.cc +11 -15
 - data/src/core/ext/filters/client_channel/resolver_result_parsing.h +13 -7
 - data/src/core/ext/filters/client_channel/retry_filter.cc +282 -238
 - data/src/core/ext/filters/client_channel/retry_service_config.cc +16 -18
 - data/src/core/ext/filters/client_channel/retry_service_config.h +18 -12
 - data/src/core/ext/filters/client_channel/retry_throttle.cc +14 -59
 - data/src/core/ext/filters/client_channel/retry_throttle.h +11 -5
 - data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +51 -37
 - data/src/core/ext/filters/client_channel/subchannel.cc +132 -197
 - data/src/core/ext/filters/client_channel/subchannel.h +36 -56
 - data/src/core/ext/filters/client_channel/subchannel_pool_interface.cc +22 -7
 - data/src/core/ext/filters/client_channel/subchannel_pool_interface.h +11 -2
 - data/src/core/ext/filters/client_channel/subchannel_stream_client.cc +544 -0
 - data/src/core/ext/filters/client_channel/subchannel_stream_client.h +214 -0
 - data/src/core/ext/filters/deadline/deadline_filter.cc +31 -33
 - data/src/core/ext/filters/deadline/deadline_filter.h +3 -2
 - data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +158 -401
 - data/src/core/ext/filters/fault_injection/fault_injection_filter.h +24 -1
 - data/src/core/ext/filters/fault_injection/service_config_parser.cc +17 -27
 - data/src/core/ext/filters/fault_injection/service_config_parser.h +10 -4
 - data/src/core/ext/filters/http/client/http_client_filter.cc +83 -548
 - data/src/core/ext/filters/http/client/http_client_filter.h +21 -4
 - data/src/core/ext/filters/http/client_authority_filter.cc +39 -103
 - data/src/core/ext/filters/http/client_authority_filter.h +24 -5
 - data/src/core/ext/filters/http/http_filters_plugin.cc +55 -73
 - data/src/core/ext/filters/http/message_compress/message_compress_filter.cc +49 -140
 - data/src/core/ext/filters/http/message_compress/message_decompress_filter.cc +22 -35
 - data/src/core/ext/filters/http/server/http_server_filter.cc +64 -274
 - data/src/core/ext/filters/message_size/message_size_filter.cc +49 -58
 - data/src/core/ext/filters/message_size/message_size_filter.h +10 -3
 - data/src/core/ext/filters/rbac/rbac_filter.cc +162 -0
 - data/src/core/ext/filters/rbac/rbac_filter.h +76 -0
 - data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +606 -0
 - data/src/core/ext/filters/rbac/rbac_service_config_parser.h +75 -0
 - data/src/core/ext/filters/server_config_selector/server_config_selector.cc +61 -0
 - data/src/core/ext/filters/server_config_selector/server_config_selector.h +71 -0
 - data/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc +143 -0
 - data/src/core/ext/filters/{workarounds/workaround_cronet_compression_filter.h → server_config_selector/server_config_selector_filter.h} +11 -6
 - data/src/core/ext/transport/chttp2/alpn/alpn.cc +2 -1
 - data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +245 -12
 - data/src/core/ext/transport/chttp2/server/chttp2_server.cc +294 -95
 - data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +3 -1
 - data/src/core/ext/transport/chttp2/transport/bin_decoder.h +2 -1
 - data/src/core/ext/transport/chttp2/transport/bin_encoder.cc +1 -0
 - data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +368 -349
 - data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +12 -4
 - data/src/core/ext/transport/chttp2/transport/context_list.cc +2 -3
 - data/src/core/ext/transport/chttp2/transport/context_list.h +3 -5
 - data/src/core/ext/transport/chttp2/transport/flow_control.cc +63 -44
 - data/src/core/ext/transport/chttp2/transport/flow_control.h +18 -12
 - data/src/core/ext/transport/chttp2/transport/frame_data.cc +11 -12
 - data/src/core/ext/transport/chttp2/transport/frame_data.h +1 -0
 - data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +6 -4
 - data/src/core/ext/transport/chttp2/transport/frame_goaway.h +1 -0
 - data/src/core/ext/transport/chttp2/transport/frame_ping.cc +10 -9
 - data/src/core/ext/transport/chttp2/transport/frame_ping.h +1 -0
 - data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +10 -8
 - data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +1 -0
 - data/src/core/ext/transport/chttp2/transport/frame_settings.cc +40 -7
 - data/src/core/ext/transport/chttp2/transport/frame_settings.h +1 -0
 - data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +12 -7
 - data/src/core/ext/transport/chttp2/transport/frame_window_update.h +1 -0
 - data/src/core/ext/transport/chttp2/transport/hpack_constants.h +41 -0
 - data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +516 -749
 - data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +183 -71
 - data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc +86 -0
 - data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +71 -0
 - data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +764 -1062
 - data/src/core/ext/transport/chttp2/transport/hpack_parser.h +75 -178
 - data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +239 -0
 - data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +115 -0
 - data/src/core/ext/transport/chttp2/transport/internal.h +22 -48
 - data/src/core/ext/transport/chttp2/transport/parsing.cc +61 -212
 - data/src/core/ext/transport/chttp2/transport/stream_lists.cc +2 -2
 - data/src/core/ext/transport/chttp2/transport/varint.cc +7 -3
 - data/src/core/ext/transport/chttp2/transport/varint.h +39 -28
 - data/src/core/ext/transport/chttp2/transport/writing.cc +125 -169
 - data/src/core/ext/transport/inproc/inproc_plugin.cc +0 -4
 - data/src/core/ext/transport/inproc/inproc_transport.cc +132 -173
 - data/src/core/ext/transport/inproc/inproc_transport.h +1 -4
 - data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.c +117 -0
 - data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.h +482 -0
 - data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c +121 -0
 - data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.h +553 -0
 - data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c +248 -210
 - data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h +1382 -685
 - data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.c +56 -0
 - data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.h +151 -0
 - data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.c +62 -0
 - data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.h +160 -0
 - data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.c +46 -0
 - data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.h +124 -0
 - data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.c +43 -0
 - data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.h +102 -0
 - data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.c +43 -0
 - data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.h +97 -0
 - data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.c +106 -0
 - data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.h +605 -0
 - data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.c +48 -0
 - data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.h +103 -0
 - data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c +44 -1
 - data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +52 -1
 - data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +31 -5
 - data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +57 -18
 - data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +144 -117
 - data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +761 -386
 - data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +240 -200
 - data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +1376 -667
 - data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +50 -29
 - data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +224 -95
 - data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +337 -255
 - data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +1901 -790
 - data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +21 -8
 - data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +50 -24
 - data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +61 -28
 - data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +280 -99
 - data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.c +299 -0
 - data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.h +1381 -0
 - data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +75 -54
 - data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +398 -190
 - data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +22 -8
 - data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +53 -25
 - data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +220 -171
 - data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +1224 -567
 - data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +106 -46
 - data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +561 -171
 - data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +20 -7
 - data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +46 -24
 - data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +17 -23
 - data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +49 -95
 - data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.c +58 -0
 - data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.h +151 -0
 - data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +146 -118
 - data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +853 -415
 - data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +142 -92
 - data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +797 -345
 - data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +22 -9
 - data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +65 -31
 - data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +205 -122
 - data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +1097 -393
 - data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +18 -5
 - data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +36 -17
 - data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +28 -14
 - data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +97 -49
 - data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +23 -10
 - data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +83 -34
 - data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +27 -14
 - data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +101 -49
 - data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +22 -9
 - data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +54 -26
 - data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +52 -36
 - data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +214 -109
 - data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +92 -39
 - data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +449 -131
 - data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +71 -54
 - data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +389 -188
 - data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +20 -7
 - data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +42 -21
 - data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +99 -72
 - data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +541 -259
 - data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +105 -80
 - data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +610 -307
 - data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +32 -17
 - data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +112 -49
 - data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +25 -11
 - data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +79 -40
 - data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.c +53 -0
 - data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.h +136 -0
 - data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c +83 -62
 - data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h +463 -235
 - data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c +93 -60
 - data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h +483 -214
 - data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +130 -100
 - data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +628 -282
 - data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +54 -35
 - data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +291 -142
 - data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +665 -567
 - data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +3977 -1883
 - data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +39 -20
 - data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +168 -72
 - data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.c +222 -0
 - data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.h +1052 -0
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.c +44 -0
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.h +88 -0
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.c +49 -0
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.h +103 -0
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +28 -14
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +91 -46
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.c +52 -0
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.h +134 -0
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.c +63 -0
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.h +250 -0
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.c +47 -0
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.h +94 -0
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.c +69 -0
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.h +213 -0
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.c +32 -0
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.h +42 -0
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.c +71 -0
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.h +218 -0
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.c +54 -0
 - data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.h +146 -0
 - data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c +18 -5
 - data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +42 -24
 - data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c +46 -29
 - data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h +219 -112
 - data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +52 -37
 - data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +282 -134
 - data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.c +64 -0
 - data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +183 -0
 - data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +27 -14
 - data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +94 -43
 - data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +284 -225
 - data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +1673 -738
 - data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.c +10 -1
 - data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +7 -4
 - data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +113 -54
 - data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +621 -216
 - data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +42 -27
 - data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +176 -87
 - data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +128 -83
 - data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +673 -259
 - data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.c +62 -0
 - data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +160 -0
 - data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +16 -3
 - data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +29 -15
 - data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +92 -73
 - data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +516 -260
 - data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +32 -18
 - data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +121 -62
 - data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +74 -57
 - data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +379 -186
 - data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.c +48 -0
 - data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.h +112 -0
 - data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +35 -19
 - data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +149 -81
 - data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.c +74 -0
 - data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.h +214 -0
 - data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +29 -14
 - data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +116 -56
 - data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c +22 -9
 - data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h +58 -31
 - data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +21 -8
 - data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +56 -27
 - data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +20 -7
 - data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +46 -24
 - data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +36 -21
 - data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +137 -69
 - data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +32 -18
 - data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +137 -65
 - data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c +27 -13
 - data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h +99 -53
 - data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +38 -23
 - data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +170 -83
 - data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +51 -32
 - data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +273 -145
 - data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +54 -37
 - data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +268 -132
 - data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.c +66 -0
 - data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.h +201 -0
 - data/src/core/ext/upb-generated/envoy/type/v3/http.upb.c +10 -1
 - data/src/core/ext/upb-generated/envoy/type/v3/http.upb.h +4 -1
 - data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.c +42 -0
 - data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.h +139 -0
 - data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +24 -10
 - data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +76 -36
 - data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +31 -16
 - data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +118 -52
 - data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.c +26 -0
 - data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.h +41 -0
 - data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +20 -7
 - data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +48 -19
 - data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.c +51 -0
 - data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.h +127 -0
 - data/src/core/ext/upb-generated/google/api/annotations.upb.c +23 -1
 - data/src/core/ext/upb-generated/google/api/annotations.upb.h +24 -1
 - data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +155 -126
 - data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +791 -385
 - data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +159 -127
 - data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +869 -402
 - data/src/core/ext/upb-generated/google/api/http.upb.c +44 -29
 - data/src/core/ext/upb-generated/google/api/http.upb.h +236 -115
 - data/src/core/ext/upb-generated/google/api/httpbody.upb.c +46 -0
 - data/src/core/ext/upb-generated/google/api/httpbody.upb.h +111 -0
 - data/src/core/ext/upb-generated/google/protobuf/any.upb.c +19 -6
 - data/src/core/ext/upb-generated/google/protobuf/any.upb.h +46 -22
 - data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +374 -283
 - data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +2263 -1053
 - data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +19 -6
 - data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +44 -20
 - data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +16 -3
 - data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +29 -15
 - data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +48 -32
 - data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +197 -93
 - data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +19 -6
 - data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +44 -20
 - data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +58 -37
 - data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +296 -149
 - data/src/core/ext/upb-generated/google/rpc/status.upb.c +22 -9
 - data/src/core/ext/upb-generated/google/rpc/status.upb.h +60 -30
 - data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.c +84 -0
 - data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.h +319 -0
 - data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +33 -19
 - data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +111 -48
 - data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +136 -108
 - data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +753 -365
 - data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +28 -13
 - data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +90 -41
 - data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +23 -9
 - data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +70 -35
 - data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +82 -62
 - data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +448 -232
 - data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c +70 -0
 - data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h +208 -0
 - data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.c +175 -0
 - data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.h +764 -0
 - data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +76 -14
 - data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +213 -57
 - data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +32 -8
 - data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +62 -18
 - data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c +22 -1
 - data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +17 -1
 - data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +32 -6
 - data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +64 -20
 - data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +31 -5
 - data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +57 -18
 - data/src/core/ext/upb-generated/validate/validate.upb.c +407 -311
 - data/src/core/ext/upb-generated/validate/validate.upb.h +2904 -1200
 - data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.c +110 -0
 - data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.h +278 -0
 - data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.c +55 -0
 - data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.h +108 -0
 - data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.c +38 -0
 - data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.h +46 -0
 - data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.c +105 -0
 - data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.h +290 -0
 - data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.c +53 -0
 - data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.h +99 -0
 - data/src/core/ext/upb-generated/xds/core/v3/authority.upb.c +19 -6
 - data/src/core/ext/upb-generated/xds/core/v3/authority.upb.h +38 -19
 - data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c +32 -18
 - data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h +112 -55
 - data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c +27 -13
 - data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.h +61 -30
 - data/src/core/ext/upb-generated/xds/core/v3/extension.upb.c +46 -0
 - data/src/core/ext/upb-generated/xds/core/v3/extension.upb.h +103 -0
 - data/src/core/ext/upb-generated/xds/core/v3/resource.upb.c +24 -11
 - data/src/core/ext/upb-generated/xds/core/v3/resource.upb.h +63 -30
 - data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c +35 -21
 - data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h +144 -70
 - data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c +24 -11
 - data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h +66 -30
 - data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +73 -0
 - data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +187 -0
 - data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.c +207 -0
 - data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.h +878 -0
 - data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.c +52 -0
 - data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.h +143 -0
 - data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.c +65 -0
 - data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.h +218 -0
 - data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +46 -0
 - data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.h +103 -0
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.c +84 -0
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.h +55 -0
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.c +127 -0
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.h +50 -0
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c +16 -61
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h +67 -67
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.c +43 -0
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.h +40 -0
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.c +53 -0
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.h +40 -0
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.c +49 -0
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.h +35 -0
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.c +46 -0
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.h +35 -0
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.c +46 -0
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.h +35 -0
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.c +142 -0
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.h +40 -0
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.c +51 -0
 - data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.h +35 -0
 - data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c +10 -8
 - data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h +1 -1
 - data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c +10 -13
 - data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +22 -52
 - data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h +46 -46
 - data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +250 -281
 - data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +55 -55
 - data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +60 -62
 - data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +10 -10
 - data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +445 -458
 - data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h +80 -70
 - data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c +16 -18
 - data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c +25 -23
 - data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.c +206 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.h +105 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +17 -32
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h +22 -22
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.c +17 -19
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +121 -154
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.h +75 -70
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +140 -116
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.h +26 -16
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.c +16 -19
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c +24 -43
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.h +4 -9
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.c +53 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.h +40 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.c +23 -51
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.h +43 -43
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +179 -184
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.h +30 -25
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c +16 -19
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +263 -252
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.h +53 -43
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c +14 -16
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.c +16 -20
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.h +7 -7
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +16 -18
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +20 -22
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.c +15 -18
 - data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c +20 -28
 - data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.h +13 -13
 - data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +98 -83
 - data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +23 -13
 - data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c +20 -30
 - data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.h +16 -16
 - data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c +16 -18
 - data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +54 -62
 - data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h +19 -19
 - data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +155 -166
 - data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h +22 -22
 - data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +21 -23
 - data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +17 -21
 - data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h +7 -7
 - data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.c +69 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.h +35 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c +19 -35
 - data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h +25 -25
 - data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c +40 -47
 - data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h +30 -25
 - data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.c +190 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.h +70 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +38 -38
 - data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +10 -10
 - data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +845 -913
 - data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +160 -160
 - data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c +54 -48
 - data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h +10 -10
 - data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.c +188 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.h +85 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.c +54 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.h +35 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.c +57 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.h +35 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c +17 -21
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.h +7 -7
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.c +72 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.h +35 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.c +99 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.h +35 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.c +52 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.h +35 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.c +71 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.h +40 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.c +57 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.h +30 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.c +75 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.h +40 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.c +77 -0
 - data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.h +35 -0
 - data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +17 -18
 - data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +19 -29
 - data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +16 -16
 - data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +20 -26
 - data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +10 -10
 - data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +59 -0
 - data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +40 -0
 - data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +19 -20
 - data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +291 -311
 - data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +63 -58
 - data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +17 -13
 - data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +1 -1
 - data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +173 -141
 - data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +26 -16
 - data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +21 -27
 - data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +10 -10
 - data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +219 -211
 - data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +24 -19
 - data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.c +58 -0
 - data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +40 -0
 - data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.c +16 -18
 - data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +19 -33
 - data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.h +22 -22
 - data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c +18 -22
 - data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h +7 -7
 - data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c +22 -32
 - data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h +16 -16
 - data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.c +46 -0
 - data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.h +35 -0
 - data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.c +15 -23
 - data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.h +13 -13
 - data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.c +52 -0
 - data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.h +50 -0
 - data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c +24 -27
 - data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h +7 -7
 - data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c +17 -19
 - data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c +17 -19
 - data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c +17 -19
 - data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +17 -23
 - data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h +10 -10
 - data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c +17 -21
 - data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h +7 -7
 - data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c +16 -21
 - data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h +7 -7
 - data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c +18 -24
 - data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h +10 -10
 - data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c +15 -29
 - data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h +22 -22
 - data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c +16 -26
 - data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h +16 -16
 - data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.c +53 -0
 - data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.h +45 -0
 - data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.c +12 -10
 - data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.h +1 -1
 - data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.c +94 -0
 - data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.h +35 -0
 - data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c +14 -19
 - data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.h +7 -7
 - data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c +13 -19
 - data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.h +10 -10
 - data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.c +38 -0
 - data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.h +30 -0
 - data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c +13 -16
 - data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.c +57 -0
 - data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.h +35 -0
 - data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.c +7 -7
 - data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.h +1 -1
 - data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.c +154 -0
 - data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.h +95 -0
 - data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.c +153 -0
 - data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.h +100 -0
 - data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.c +5 -14
 - data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.h +10 -10
 - data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.c +39 -0
 - data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.h +35 -0
 - data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.c +5 -10
 - data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.c +107 -164
 - data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.h +82 -82
 - data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.c +5 -10
 - data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.c +5 -10
 - data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.c +5 -16
 - data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.h +13 -13
 - data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.c +5 -10
 - data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.c +5 -26
 - data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.h +28 -28
 - data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c +6 -11
 - data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.c +67 -0
 - data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.h +50 -0
 - data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +99 -0
 - data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +75 -0
 - data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.c +10 -18
 - data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.h +10 -10
 - data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.c +24 -33
 - data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.c +9 -8
 - data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.h +1 -1
 - data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.c +10 -13
 - data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.c +10 -14
 - data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.c +8 -57
 - data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.h +70 -70
 - data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.c +63 -0
 - data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.h +45 -0
 - data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.c +47 -0
 - data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.h +35 -0
 - data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.c +35 -0
 - data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.h +30 -0
 - data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.c +64 -0
 - data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.h +50 -0
 - data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.c +40 -0
 - data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.h +35 -0
 - data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.c +18 -22
 - data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.c +32 -38
 - data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.h +7 -7
 - data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.c +20 -26
 - data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.h +7 -7
 - data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.c +41 -0
 - data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.h +35 -0
 - data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.c +23 -27
 - data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.c +39 -45
 - data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.h +7 -7
 - data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.c +25 -29
 - data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.h +4 -4
 - data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.c +126 -0
 - data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.h +80 -0
 - data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.c +40 -0
 - data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.h +40 -0
 - data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.c +52 -0
 - data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.h +40 -0
 - data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.c +40 -0
 - data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.h +35 -0
 - data/src/core/ext/xds/certificate_provider_registry.cc +3 -3
 - data/src/core/ext/xds/certificate_provider_store.cc +8 -0
 - data/src/core/ext/xds/certificate_provider_store.h +10 -1
 - data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +4 -4
 - data/src/core/ext/xds/file_watcher_certificate_provider_factory.h +2 -2
 - data/src/core/ext/xds/upb_utils.h +67 -0
 - data/src/core/ext/xds/xds_api.cc +214 -3608
 - data/src/core/ext/xds/xds_api.h +62 -580
 - data/src/core/ext/xds/xds_bootstrap.cc +241 -167
 - data/src/core/ext/xds/xds_bootstrap.h +43 -15
 - data/src/core/ext/xds/xds_certificate_provider.cc +5 -3
 - data/src/core/ext/xds/xds_certificate_provider.h +10 -2
 - data/src/core/ext/xds/xds_channel_stack_modifier.cc +109 -0
 - data/src/core/ext/xds/xds_channel_stack_modifier.h +53 -0
 - data/src/core/ext/xds/xds_client.cc +872 -899
 - data/src/core/ext/xds/xds_client.h +132 -159
 - data/src/core/ext/xds/xds_client_stats.cc +31 -30
 - data/src/core/ext/xds/xds_client_stats.h +12 -11
 - data/src/core/ext/xds/xds_cluster.cc +453 -0
 - data/src/core/ext/xds/xds_cluster.h +108 -0
 - data/src/core/ext/xds/xds_cluster_specifier_plugin.cc +142 -0
 - data/src/core/ext/xds/xds_cluster_specifier_plugin.h +79 -0
 - data/src/core/ext/xds/xds_common_types.cc +388 -0
 - data/src/core/ext/xds/xds_common_types.h +95 -0
 - data/src/core/ext/xds/xds_endpoint.cc +371 -0
 - data/src/core/ext/xds/xds_endpoint.h +135 -0
 - data/src/core/ext/xds/xds_http_fault_filter.cc +11 -10
 - data/src/core/ext/xds/xds_http_fault_filter.h +6 -5
 - data/src/core/ext/xds/xds_http_filters.cc +12 -5
 - data/src/core/ext/xds/xds_http_filters.h +4 -4
 - data/src/core/ext/xds/xds_http_rbac_filter.cc +563 -0
 - data/src/core/ext/xds/xds_http_rbac_filter.h +54 -0
 - data/src/core/ext/xds/xds_listener.cc +1039 -0
 - data/src/core/ext/xds/xds_listener.h +220 -0
 - data/src/core/{lib/transport/authority_override.h → ext/xds/xds_resource_type.cc} +11 -15
 - data/src/core/ext/xds/xds_resource_type.h +98 -0
 - data/src/core/ext/xds/xds_resource_type_impl.h +87 -0
 - data/src/core/ext/xds/xds_route_config.cc +1122 -0
 - data/src/core/ext/xds/xds_route_config.h +218 -0
 - data/src/core/ext/xds/xds_routing.cc +250 -0
 - data/src/core/ext/xds/xds_routing.h +101 -0
 - data/src/core/ext/xds/xds_server_config_fetcher.cc +1057 -289
 - data/src/core/lib/address_utils/parse_address.cc +26 -8
 - data/src/core/lib/address_utils/parse_address.h +5 -0
 - data/src/core/lib/address_utils/sockaddr_utils.cc +33 -36
 - data/src/core/lib/address_utils/sockaddr_utils.h +1 -16
 - data/src/core/lib/avl/avl.h +452 -88
 - data/src/core/lib/backoff/backoff.cc +9 -38
 - data/src/core/lib/backoff/backoff.h +11 -11
 - data/src/core/lib/channel/call_finalization.h +86 -0
 - data/src/core/lib/channel/call_tracer.h +4 -1
 - data/src/core/lib/channel/channel_args.cc +173 -16
 - data/src/core/lib/channel/channel_args.h +214 -1
 - data/src/core/lib/channel/channel_args_preconditioning.cc +42 -0
 - data/src/core/lib/channel/channel_args_preconditioning.h +61 -0
 - data/src/core/lib/channel/channel_stack.cc +15 -6
 - data/src/core/lib/channel/channel_stack.h +39 -6
 - data/src/core/lib/channel/channel_stack_builder.cc +24 -283
 - data/src/core/lib/channel/channel_stack_builder.h +118 -157
 - data/src/core/lib/channel/channel_stack_builder_impl.cc +102 -0
 - data/src/core/lib/channel/channel_stack_builder_impl.h +48 -0
 - data/src/core/lib/channel/channel_trace.cc +8 -10
 - data/src/core/lib/channel/channel_trace.h +2 -1
 - data/src/core/lib/channel/channelz.cc +44 -39
 - data/src/core/lib/channel/channelz.h +29 -29
 - data/src/core/lib/channel/channelz_registry.cc +8 -7
 - data/src/core/lib/channel/channelz_registry.h +1 -1
 - data/src/core/lib/channel/connected_channel.cc +10 -6
 - data/src/core/lib/channel/connected_channel.h +2 -2
 - data/src/core/lib/channel/context.h +11 -0
 - data/src/core/lib/channel/handshaker.cc +3 -2
 - data/src/core/lib/channel/handshaker.h +2 -3
 - data/src/core/lib/channel/handshaker_factory.h +10 -2
 - data/src/core/lib/channel/handshaker_registry.cc +15 -70
 - data/src/core/lib/channel/handshaker_registry.h +29 -12
 - data/src/core/lib/channel/promise_based_filter.cc +1002 -0
 - data/src/core/lib/channel/promise_based_filter.h +437 -0
 - data/src/core/lib/channel/status_util.h +2 -2
 - data/src/core/lib/compression/compression.cc +22 -114
 - data/src/core/lib/compression/compression_internal.cc +139 -207
 - data/src/core/lib/compression/compression_internal.h +64 -69
 - data/src/core/lib/compression/message_compress.cc +13 -13
 - data/src/core/lib/compression/message_compress.h +2 -2
 - data/src/core/lib/config/core_configuration.cc +104 -0
 - data/src/core/lib/config/core_configuration.h +196 -0
 - data/src/core/lib/debug/stats.cc +1 -1
 - data/src/core/lib/debug/stats.h +1 -0
 - data/src/core/lib/debug/stats_data.cc +17 -20
 - data/src/core/lib/debug/stats_data.h +19 -21
 - data/src/core/lib/debug/trace.cc +1 -0
 - data/src/core/lib/debug/trace.h +4 -3
 - data/src/core/lib/event_engine/{endpoint_config.cc → channel_args_endpoint_config.cc} +2 -2
 - data/src/core/lib/event_engine/{endpoint_config_internal.h → channel_args_endpoint_config.h} +3 -3
 - data/src/core/lib/{iomgr/event_engine/iomgr.h → event_engine/default_event_engine_factory.cc} +11 -8
 - data/src/core/lib/event_engine/event_engine.cc +21 -19
 - data/src/core/lib/event_engine/event_engine_factory.h +36 -0
 - data/src/core/lib/event_engine/memory_allocator.cc +66 -0
 - data/src/core/lib/event_engine/resolved_address.cc +39 -0
 - data/src/core/lib/event_engine/sockaddr.cc +3 -3
 - data/src/core/lib/gpr/alloc.cc +4 -3
 - data/src/core/lib/gpr/atm.cc +1 -1
 - data/src/core/lib/gpr/cpu_posix.cc +1 -1
 - data/src/core/lib/gpr/env_linux.cc +1 -2
 - data/src/core/lib/gpr/env_posix.cc +2 -3
 - data/src/core/lib/gpr/log.cc +3 -3
 - data/src/core/lib/gpr/log_android.cc +3 -2
 - data/src/core/lib/gpr/log_linux.cc +7 -4
 - data/src/core/lib/gpr/log_posix.cc +6 -3
 - data/src/core/lib/gpr/string.cc +2 -2
 - data/src/core/lib/gpr/string.h +2 -2
 - data/src/core/lib/gpr/sync.cc +2 -2
 - data/src/core/lib/gpr/sync_abseil.cc +7 -6
 - data/src/core/lib/gpr/sync_posix.cc +4 -3
 - data/src/core/lib/gpr/time.cc +5 -3
 - data/src/core/lib/gpr/time_windows.cc +3 -2
 - data/src/core/lib/gpr/tls.h +126 -40
 - data/src/core/lib/gpr/tmpfile_posix.cc +1 -2
 - data/src/core/lib/gpr/useful.h +97 -32
 - data/src/core/lib/gprpp/atomic_utils.h +47 -0
 - data/src/core/lib/gprpp/bitset.h +207 -0
 - data/src/core/lib/gprpp/capture.h +76 -0
 - data/src/core/lib/gprpp/chunked_vector.h +253 -0
 - data/src/core/lib/{transport/authority_override.cc → gprpp/construct_destruct.h} +16 -17
 - data/src/core/lib/gprpp/cpp_impl_of.h +49 -0
 - data/src/core/lib/gprpp/debug_location.h +2 -0
 - data/src/core/lib/gprpp/dual_ref_counted.h +25 -26
 - data/src/core/lib/gprpp/fork.cc +14 -12
 - data/src/core/lib/gprpp/fork.h +4 -4
 - data/src/core/lib/gprpp/global_config.h +1 -2
 - data/src/core/lib/gprpp/global_config_env.cc +14 -14
 - data/src/core/lib/gprpp/global_config_env.h +2 -2
 - data/src/core/lib/gprpp/global_config_generic.h +2 -2
 - data/src/core/lib/gprpp/manual_constructor.h +10 -8
 - data/src/core/lib/gprpp/match.h +73 -0
 - data/src/core/lib/gprpp/memory.h +9 -3
 - data/src/core/lib/gprpp/mpscq.cc +7 -7
 - data/src/core/lib/gprpp/mpscq.h +6 -5
 - data/src/core/lib/gprpp/orphanable.h +4 -4
 - data/src/core/lib/gprpp/overload.h +59 -0
 - data/src/core/lib/gprpp/ref_counted.h +21 -19
 - data/src/core/lib/gprpp/ref_counted_ptr.h +2 -4
 - data/src/core/lib/gprpp/single_set_ptr.h +87 -0
 - data/src/core/lib/gprpp/status_helper.cc +65 -37
 - data/src/core/lib/gprpp/status_helper.h +14 -16
 - data/src/core/lib/gprpp/sync.h +3 -1
 - data/src/core/lib/gprpp/table.h +434 -0
 - data/src/core/lib/gprpp/thd_posix.cc +5 -5
 - data/src/core/lib/gprpp/thd_windows.cc +4 -11
 - data/src/core/lib/gprpp/time.cc +198 -0
 - data/src/core/lib/gprpp/time.h +292 -0
 - data/src/core/lib/gprpp/time_util.cc +2 -2
 - data/src/core/lib/gprpp/time_util.h +2 -2
 - data/src/core/lib/http/format_request.cc +29 -25
 - data/src/core/lib/http/format_request.h +8 -6
 - data/src/core/lib/http/httpcli.cc +298 -208
 - data/src/core/lib/http/httpcli.h +183 -85
 - data/src/core/lib/http/httpcli_security_connector.cc +67 -81
 - data/src/core/lib/http/httpcli_ssl_credentials.h +37 -0
 - data/src/core/lib/http/parser.cc +82 -11
 - data/src/core/lib/http/parser.h +16 -2
 - data/src/core/lib/iomgr/buffer_list.cc +11 -10
 - data/src/core/lib/iomgr/buffer_list.h +19 -20
 - data/src/core/lib/iomgr/call_combiner.cc +45 -16
 - data/src/core/lib/iomgr/cfstream_handle.cc +1 -1
 - data/src/core/lib/iomgr/closure.h +29 -9
 - data/src/core/lib/iomgr/combiner.cc +34 -26
 - data/src/core/lib/iomgr/combiner.h +1 -0
 - data/src/core/lib/iomgr/dualstack_socket_posix.cc +1 -0
 - data/src/core/lib/iomgr/endpoint.cc +0 -4
 - data/src/core/lib/iomgr/endpoint.h +1 -4
 - data/src/core/lib/iomgr/endpoint_cfstream.cc +15 -42
 - data/src/core/lib/iomgr/endpoint_cfstream.h +4 -4
 - data/src/core/lib/iomgr/endpoint_pair.h +1 -0
 - data/src/core/lib/iomgr/endpoint_pair_event_engine.cc +1 -2
 - data/src/core/lib/iomgr/endpoint_pair_posix.cc +11 -9
 - data/src/core/lib/iomgr/endpoint_pair_windows.cc +5 -6
 - data/src/core/lib/iomgr/error.cc +123 -59
 - data/src/core/lib/iomgr/error.h +73 -20
 - data/src/core/lib/iomgr/error_cfstream.cc +7 -2
 - data/src/core/lib/iomgr/error_internal.h +1 -0
 - data/src/core/lib/iomgr/ev_apple.cc +6 -5
 - data/src/core/lib/iomgr/ev_epoll1_linux.cc +25 -31
 - data/src/core/lib/iomgr/ev_poll_posix.cc +49 -52
 - data/src/core/lib/iomgr/ev_posix.cc +10 -12
 - data/src/core/lib/iomgr/ev_posix.h +1 -1
 - data/src/core/lib/iomgr/event_engine/closure.cc +41 -18
 - data/src/core/lib/iomgr/event_engine/closure.h +10 -1
 - data/src/core/lib/iomgr/event_engine/endpoint.cc +7 -27
 - data/src/core/lib/iomgr/event_engine/endpoint.h +1 -2
 - data/src/core/lib/iomgr/event_engine/iomgr.cc +10 -30
 - data/src/core/lib/iomgr/event_engine/pollset.cc +6 -6
 - data/src/core/lib/iomgr/event_engine/resolved_address_internal.cc +6 -0
 - data/src/core/lib/iomgr/event_engine/resolved_address_internal.h +2 -0
 - data/src/core/lib/iomgr/event_engine/resolver.cc +70 -47
 - data/src/core/lib/iomgr/event_engine/resolver.h +56 -0
 - data/src/core/lib/iomgr/event_engine/tcp.cc +70 -37
 - data/src/core/lib/iomgr/event_engine/timer.cc +13 -8
 - data/src/core/lib/iomgr/exec_ctx.cc +28 -109
 - data/src/core/lib/iomgr/exec_ctx.h +28 -52
 - data/src/core/lib/iomgr/executor/mpmcqueue.cc +15 -16
 - data/src/core/lib/iomgr/executor/mpmcqueue.h +7 -11
 - data/src/core/lib/iomgr/executor/threadpool.cc +2 -2
 - data/src/core/lib/iomgr/executor/threadpool.h +2 -1
 - data/src/core/lib/iomgr/executor.cc +30 -39
 - data/src/core/lib/iomgr/executor.h +1 -1
 - data/src/core/lib/iomgr/fork_posix.cc +2 -1
 - data/src/core/lib/iomgr/grpc_if_nametoindex_posix.cc +2 -2
 - data/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc +2 -2
 - data/src/core/lib/iomgr/internal_errqueue.cc +3 -2
 - data/src/core/lib/iomgr/iocp_windows.cc +10 -9
 - data/src/core/lib/iomgr/iocp_windows.h +1 -1
 - data/src/core/lib/iomgr/iomgr.cc +3 -1
 - data/src/core/lib/iomgr/iomgr.h +2 -2
 - data/src/core/lib/iomgr/iomgr_internal.cc +6 -10
 - data/src/core/lib/iomgr/iomgr_internal.h +3 -2
 - data/src/core/lib/iomgr/iomgr_posix.cc +2 -2
 - data/src/core/lib/iomgr/iomgr_posix_cfstream.cc +2 -2
 - data/src/core/lib/iomgr/iomgr_windows.cc +3 -4
 - data/src/core/lib/iomgr/load_file.cc +2 -2
 - data/src/core/lib/iomgr/lockfree_event.cc +18 -0
 - data/src/core/lib/iomgr/polling_entity.cc +2 -2
 - data/src/core/lib/iomgr/polling_entity.h +6 -0
 - data/src/core/lib/iomgr/pollset.cc +1 -1
 - data/src/core/lib/iomgr/pollset.h +4 -4
 - data/src/core/lib/iomgr/pollset_set_windows.cc +1 -0
 - data/src/core/lib/iomgr/pollset_windows.cc +2 -2
 - data/src/core/lib/iomgr/port.h +6 -16
 - data/src/core/lib/iomgr/python_util.h +1 -0
 - data/src/core/lib/iomgr/resolve_address.cc +7 -25
 - data/src/core/lib/iomgr/resolve_address.h +47 -48
 - data/src/core/lib/iomgr/resolve_address_impl.h +59 -0
 - data/src/core/lib/iomgr/resolve_address_posix.cc +90 -78
 - data/src/core/lib/iomgr/resolve_address_posix.h +47 -0
 - data/src/core/lib/iomgr/resolve_address_windows.cc +99 -82
 - data/src/core/lib/iomgr/resolve_address_windows.h +47 -0
 - data/src/core/lib/iomgr/resolved_address.h +39 -0
 - data/src/core/lib/iomgr/sockaddr.h +1 -1
 - data/src/core/lib/iomgr/{socket_utils_uv.cc → sockaddr_utils_posix.cc} +21 -8
 - data/src/core/lib/iomgr/socket_factory_posix.cc +5 -5
 - data/src/core/lib/iomgr/socket_factory_posix.h +1 -0
 - data/src/core/lib/iomgr/socket_mutator.cc +2 -2
 - data/src/core/lib/iomgr/socket_mutator.h +2 -2
 - data/src/core/lib/iomgr/socket_utils_common_posix.cc +4 -22
 - data/src/core/lib/iomgr/socket_utils_linux.cc +4 -4
 - data/src/core/lib/iomgr/socket_utils_posix.cc +2 -2
 - data/src/core/lib/iomgr/socket_utils_posix.h +2 -2
 - data/src/core/lib/iomgr/socket_utils_windows.cc +2 -2
 - data/src/core/lib/iomgr/tcp_client.cc +1 -1
 - data/src/core/lib/iomgr/tcp_client.h +5 -2
 - data/src/core/lib/iomgr/tcp_client_cfstream.cc +8 -24
 - data/src/core/lib/iomgr/tcp_client_posix.cc +17 -27
 - data/src/core/lib/iomgr/tcp_client_posix.h +4 -2
 - data/src/core/lib/iomgr/tcp_client_windows.cc +8 -10
 - data/src/core/lib/iomgr/tcp_posix.cc +143 -120
 - data/src/core/lib/iomgr/tcp_posix.h +9 -12
 - data/src/core/lib/iomgr/tcp_server.h +4 -3
 - data/src/core/lib/iomgr/tcp_server_posix.cc +40 -29
 - data/src/core/lib/iomgr/tcp_server_utils_posix.h +21 -17
 - data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +2 -2
 - data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +4 -4
 - data/src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc +4 -4
 - data/src/core/lib/iomgr/tcp_server_windows.cc +6 -10
 - data/src/core/lib/iomgr/tcp_windows.cc +22 -39
 - data/src/core/lib/iomgr/tcp_windows.h +1 -1
 - data/src/core/lib/iomgr/timer.cc +3 -2
 - data/src/core/lib/iomgr/timer.h +11 -7
 - data/src/core/lib/iomgr/timer_generic.cc +113 -124
 - data/src/core/lib/iomgr/timer_generic.h +1 -0
 - data/src/core/lib/iomgr/timer_heap.cc +2 -3
 - data/src/core/lib/iomgr/timer_manager.cc +15 -14
 - data/src/core/lib/iomgr/unix_sockets_posix.cc +25 -39
 - data/src/core/lib/iomgr/unix_sockets_posix.h +6 -10
 - data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +6 -15
 - data/src/core/lib/iomgr/wakeup_fd_nospecial.cc +1 -0
 - data/src/core/lib/iomgr/wakeup_fd_pipe.cc +2 -3
 - data/src/core/lib/iomgr/wakeup_fd_posix.cc +1 -0
 - data/src/core/lib/iomgr/work_serializer.cc +120 -44
 - data/src/core/lib/iomgr/work_serializer.h +17 -5
 - data/src/core/lib/json/json_reader.cc +92 -52
 - data/src/core/lib/json/json_util.cc +71 -3
 - data/src/core/lib/json/json_util.h +67 -117
 - data/src/core/lib/json/json_writer.cc +0 -3
 - data/src/core/lib/matchers/matchers.cc +1 -1
 - data/src/core/lib/matchers/matchers.h +0 -1
 - data/src/core/lib/profiling/basic_timers.cc +8 -6
 - data/src/core/lib/profiling/stap_timers.cc +2 -2
 - data/src/core/lib/promise/activity.cc +121 -0
 - data/src/core/lib/promise/activity.h +540 -0
 - data/src/core/lib/promise/arena_promise.h +188 -0
 - data/src/core/lib/promise/call_push_pull.h +144 -0
 - data/src/core/lib/promise/context.h +86 -0
 - data/src/core/lib/promise/detail/basic_seq.h +496 -0
 - data/src/core/lib/promise/detail/promise_factory.h +189 -0
 - data/src/core/lib/promise/detail/promise_like.h +85 -0
 - data/src/core/lib/promise/detail/status.h +50 -0
 - data/src/core/lib/promise/detail/switch.h +1455 -0
 - data/src/core/lib/promise/exec_ctx_wakeup_scheduler.h +48 -0
 - data/src/core/lib/promise/intra_activity_waiter.h +49 -0
 - data/src/core/lib/promise/latch.h +104 -0
 - data/src/core/lib/promise/loop.h +134 -0
 - data/src/core/lib/promise/map.h +88 -0
 - data/src/core/lib/promise/poll.h +66 -0
 - data/src/core/lib/promise/promise.h +95 -0
 - data/src/core/lib/promise/race.h +84 -0
 - data/src/core/lib/promise/seq.h +89 -0
 - data/src/core/lib/promise/sleep.cc +74 -0
 - data/src/core/lib/promise/sleep.h +66 -0
 - data/src/core/lib/promise/try_seq.h +157 -0
 - data/src/core/{ext/filters/client_channel → lib/resolver}/resolver.cc +17 -25
 - data/src/core/{ext/filters/client_channel → lib/resolver}/resolver.h +43 -44
 - data/src/core/{ext/filters/client_channel → lib/resolver}/resolver_factory.h +32 -29
 - data/src/core/lib/resolver/resolver_registry.cc +156 -0
 - data/src/core/lib/resolver/resolver_registry.h +113 -0
 - data/src/core/{ext/filters/client_channel → lib/resolver}/server_address.cc +1 -1
 - data/src/core/{ext/filters/client_channel → lib/resolver}/server_address.h +5 -5
 - data/src/core/lib/resource_quota/api.cc +83 -0
 - data/src/core/lib/resource_quota/api.h +40 -0
 - data/src/core/lib/{gprpp → resource_quota}/arena.cc +18 -14
 - data/src/core/lib/{gprpp → resource_quota}/arena.h +37 -16
 - data/src/core/lib/resource_quota/memory_quota.cc +478 -0
 - data/src/core/lib/resource_quota/memory_quota.h +457 -0
 - data/src/core/lib/resource_quota/resource_quota.cc +33 -0
 - data/src/core/lib/resource_quota/resource_quota.h +66 -0
 - data/src/core/lib/resource_quota/thread_quota.cc +43 -0
 - data/src/core/lib/resource_quota/thread_quota.h +57 -0
 - data/src/core/lib/resource_quota/trace.cc +19 -0
 - data/src/core/{ext/filters/max_age/max_age_filter.h → lib/resource_quota/trace.h} +6 -8
 - data/src/core/lib/security/authorization/authorization_policy_provider.h +12 -4
 - data/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc +1 -1
 - data/src/core/lib/security/authorization/evaluate_args.cc +39 -36
 - data/src/core/lib/security/authorization/evaluate_args.h +3 -2
 - data/src/core/lib/security/authorization/grpc_authorization_engine.cc +60 -0
 - data/src/core/lib/security/authorization/grpc_authorization_engine.h +62 -0
 - data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +106 -0
 - data/src/core/lib/security/authorization/grpc_server_authz_filter.h +50 -0
 - data/src/core/lib/security/authorization/matchers.cc +227 -0
 - data/src/core/lib/security/authorization/matchers.h +211 -0
 - data/src/core/lib/security/authorization/rbac_policy.cc +442 -0
 - data/src/core/lib/security/authorization/rbac_policy.h +171 -0
 - data/src/core/lib/security/context/security_context.cc +15 -10
 - data/src/core/lib/security/context/security_context.h +9 -2
 - data/src/core/lib/security/credentials/alts/alts_credentials.cc +6 -5
 - data/src/core/lib/security/credentials/alts/alts_credentials.h +10 -0
 - data/src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc +2 -2
 - data/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc +2 -2
 - data/src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc +2 -2
 - data/src/core/lib/security/credentials/call_creds_util.cc +87 -0
 - data/src/core/lib/security/credentials/call_creds_util.h +42 -0
 - data/src/core/lib/security/credentials/channel_creds_registry.h +97 -0
 - data/src/core/lib/security/credentials/channel_creds_registry_init.cc +70 -0
 - data/src/core/lib/security/credentials/composite/composite_credentials.cc +28 -86
 - data/src/core/lib/security/credentials/composite/composite_credentials.h +23 -10
 - data/src/core/lib/security/credentials/credentials.cc +11 -10
 - data/src/core/lib/security/credentials/credentials.h +81 -82
 - data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +61 -59
 - data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +2 -2
 - data/src/core/lib/security/credentials/external/aws_request_signer.cc +3 -3
 - data/src/core/lib/security/credentials/external/external_account_credentials.cc +112 -68
 - data/src/core/lib/security/credentials/external/external_account_credentials.h +6 -9
 - data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +0 -1
 - data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +35 -18
 - data/src/core/lib/security/credentials/external/url_external_account_credentials.h +1 -0
 - data/src/core/lib/security/credentials/fake/fake_credentials.cc +23 -27
 - data/src/core/lib/security/credentials/fake/fake_credentials.h +22 -21
 - data/src/core/lib/security/credentials/google_default/credentials_generic.cc +1 -2
 - data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +77 -20
 - data/src/core/lib/security/credentials/google_default/google_default_credentials.h +9 -3
 - data/src/core/lib/security/credentials/iam/iam_credentials.cc +23 -29
 - data/src/core/lib/security/credentials/iam/iam_credentials.h +15 -9
 - data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +25 -26
 - data/src/core/lib/security/credentials/insecure/insecure_credentials.h +57 -0
 - data/src/core/lib/security/credentials/jwt/json_token.cc +5 -7
 - data/src/core/lib/security/credentials/jwt/json_token.h +2 -1
 - data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +56 -51
 - data/src/core/lib/security/credentials/jwt/jwt_credentials.h +27 -15
 - data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +59 -54
 - data/src/core/lib/security/credentials/jwt/jwt_verifier.h +4 -4
 - data/src/core/lib/security/credentials/local/local_credentials.cc +6 -6
 - data/src/core/lib/security/credentials/local/local_credentials.h +10 -0
 - data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +160 -181
 - data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +61 -33
 - data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +98 -156
 - data/src/core/lib/security/credentials/plugin/plugin_credentials.h +56 -27
 - data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +11 -18
 - data/src/core/lib/security/credentials/ssl/ssl_credentials.h +14 -4
 - data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +3 -2
 - data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h +10 -6
 - data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +13 -13
 - data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +62 -12
 - data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.cc +209 -0
 - data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +145 -0
 - data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +33 -87
 - data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +75 -151
 - data/src/core/lib/security/credentials/tls/tls_credentials.cc +30 -16
 - data/src/core/lib/security/credentials/tls/tls_credentials.h +6 -0
 - data/src/core/lib/security/credentials/xds/xds_credentials.cc +51 -58
 - data/src/core/lib/security/credentials/xds/xds_credentials.h +37 -6
 - data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +11 -17
 - data/src/core/lib/security/security_connector/alts/alts_security_connector.h +3 -3
 - data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +13 -24
 - data/src/core/lib/security/security_connector/fake/fake_security_connector.h +0 -2
 - data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +8 -18
 - data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +11 -16
 - data/src/core/lib/security/security_connector/load_system_roots_fallback.cc +1 -0
 - data/src/core/lib/security/security_connector/load_system_roots_linux.cc +4 -5
 - data/src/core/lib/security/security_connector/local/local_security_connector.cc +14 -19
 - data/src/core/lib/security/security_connector/security_connector.cc +8 -15
 - data/src/core/lib/security/security_connector/security_connector.h +26 -22
 - data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +14 -20
 - data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +1 -2
 - data/src/core/lib/security/security_connector/ssl_utils.cc +41 -36
 - data/src/core/lib/security/security_connector/ssl_utils.h +14 -18
 - data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +366 -211
 - data/src/core/lib/security/security_connector/tls/tls_security_connector.h +69 -48
 - data/src/core/lib/security/transport/auth_filters.h +39 -5
 - data/src/core/lib/security/transport/client_auth_filter.cc +98 -363
 - data/src/core/lib/security/transport/secure_endpoint.cc +202 -143
 - data/src/core/lib/security/transport/secure_endpoint.h +2 -1
 - data/src/core/lib/security/transport/security_handshaker.cc +95 -54
 - data/src/core/lib/security/transport/security_handshaker.h +2 -1
 - data/src/core/lib/security/transport/server_auth_filter.cc +41 -37
 - data/src/core/lib/security/transport/tsi_error.cc +3 -5
 - data/src/core/lib/security/util/json_util.cc +6 -8
 - data/src/core/lib/service_config/service_config.h +82 -0
 - data/src/core/lib/service_config/service_config_call_data.h +72 -0
 - data/src/core/{ext/filters/client_channel/service_config.cc → lib/service_config/service_config_impl.cc} +20 -17
 - data/src/core/{ext/filters/client_channel/service_config.h → lib/service_config/service_config_impl.h} +16 -18
 - data/src/core/{ext/filters/client_channel → lib/service_config}/service_config_parser.cc +31 -27
 - data/src/core/{ext/filters/client_channel → lib/service_config}/service_config_parser.h +39 -28
 - data/src/core/lib/slice/percent_encoding.cc +84 -97
 - data/src/core/lib/slice/percent_encoding.h +23 -28
 - data/src/core/lib/slice/slice.cc +80 -200
 - data/src/core/lib/slice/slice.h +384 -0
 - data/src/core/lib/{iomgr/is_epollexclusive_available.h → slice/slice_api.cc} +15 -12
 - data/src/core/lib/slice/slice_buffer.cc +10 -7
 - data/src/core/lib/slice/slice_internal.h +15 -277
 - data/src/core/lib/slice/slice_refcount.cc +35 -0
 - data/src/core/lib/slice/slice_refcount.h +46 -0
 - data/src/core/lib/slice/slice_refcount_base.h +61 -0
 - data/src/core/lib/slice/slice_split.cc +100 -0
 - data/src/core/lib/slice/slice_split.h +40 -0
 - data/src/core/lib/slice/slice_string_helpers.cc +0 -83
 - data/src/core/lib/slice/slice_string_helpers.h +0 -11
 - data/src/core/lib/surface/api_trace.cc +2 -1
 - data/src/core/lib/surface/api_trace.h +1 -0
 - data/src/core/lib/surface/builtins.cc +49 -0
 - data/src/core/lib/surface/builtins.h +26 -0
 - data/src/core/lib/surface/byte_buffer_reader.cc +1 -1
 - data/src/core/lib/surface/call.cc +1142 -1247
 - data/src/core/lib/surface/call.h +8 -28
 - data/src/core/lib/surface/call_details.cc +2 -2
 - data/src/core/lib/surface/call_log_batch.cc +2 -2
 - data/src/core/lib/surface/channel.cc +72 -103
 - data/src/core/lib/surface/channel.h +15 -23
 - data/src/core/lib/surface/channel_init.cc +22 -76
 - data/src/core/lib/surface/channel_init.h +44 -40
 - data/src/core/lib/surface/channel_ping.cc +1 -2
 - data/src/core/lib/surface/channel_stack_type.cc +2 -1
 - data/src/core/lib/surface/completion_queue.cc +70 -78
 - data/src/core/lib/surface/completion_queue_factory.cc +2 -1
 - data/src/core/lib/surface/completion_queue_factory.h +1 -0
 - data/src/core/lib/surface/event_string.cc +1 -0
 - data/src/core/lib/surface/init.cc +81 -57
 - data/src/core/lib/surface/init.h +0 -3
 - data/src/core/lib/surface/lame_client.cc +47 -32
 - data/src/core/lib/surface/lame_client.h +1 -1
 - data/src/core/lib/surface/metadata_array.cc +2 -2
 - data/src/core/lib/surface/server.cc +71 -118
 - data/src/core/lib/surface/server.h +40 -37
 - data/src/core/lib/surface/validate_metadata.cc +49 -18
 - data/src/core/lib/surface/version.cc +2 -2
 - data/src/core/lib/transport/bdp_estimator.cc +11 -12
 - data/src/core/lib/transport/bdp_estimator.h +2 -2
 - data/src/core/lib/transport/byte_stream.cc +6 -0
 - data/src/core/lib/transport/byte_stream.h +1 -0
 - data/src/core/lib/transport/connectivity_state.cc +8 -5
 - data/src/core/lib/transport/connectivity_state.h +2 -2
 - data/src/core/lib/transport/error_utils.cc +48 -20
 - data/src/core/lib/transport/error_utils.h +3 -2
 - data/src/core/lib/transport/metadata_batch.h +1352 -171
 - data/src/core/lib/transport/parsed_metadata.cc +37 -0
 - data/src/core/lib/transport/parsed_metadata.h +401 -0
 - data/src/core/lib/transport/pid_controller.cc +4 -4
 - data/src/core/lib/transport/status_conversion.cc +2 -2
 - data/src/core/lib/transport/status_conversion.h +1 -1
 - data/src/core/lib/transport/timeout_encoding.cc +204 -67
 - data/src/core/lib/transport/timeout_encoding.h +40 -10
 - data/src/core/lib/transport/transport.cc +11 -32
 - data/src/core/lib/transport/transport.h +103 -4
 - data/src/core/lib/transport/transport_impl.h +14 -0
 - data/src/core/lib/transport/transport_op_string.cc +7 -29
 - data/src/core/lib/uri/uri_parser.cc +237 -63
 - data/src/core/lib/uri/uri_parser.h +39 -23
 - data/src/core/plugin_registry/grpc_plugin_registry.cc +69 -102
 - data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +85 -0
 - data/src/core/tsi/alts/crypt/aes_gcm.cc +6 -3
 - data/src/core/tsi/alts/crypt/gsec.h +2 -3
 - data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +13 -12
 - data/src/core/tsi/alts/frame_protector/frame_handler.cc +10 -11
 - data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +31 -27
 - data/src/core/tsi/alts/handshaker/alts_handshaker_client.h +2 -3
 - data/src/core/tsi/alts/handshaker/alts_shared_resource.cc +9 -1
 - data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +33 -15
 - data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +2 -2
 - data/src/core/tsi/alts/handshaker/alts_tsi_utils.h +1 -1
 - data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +2 -2
 - data/src/core/tsi/alts/handshaker/transport_security_common_api.h +2 -2
 - data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc +2 -2
 - data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +1 -1
 - data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +2 -2
 - data/src/core/tsi/fake_transport_security.cc +15 -7
 - data/src/core/tsi/local_transport_security.cc +42 -87
 - data/src/core/tsi/local_transport_security.h +1 -4
 - data/src/core/tsi/ssl/key_logging/ssl_key_logging.cc +141 -0
 - data/src/core/tsi/ssl/key_logging/ssl_key_logging.h +81 -0
 - data/src/core/tsi/ssl/session_cache/ssl_session.h +2 -4
 - data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +20 -53
 - data/src/core/tsi/ssl/session_cache/ssl_session_cache.h +6 -7
 - data/src/core/tsi/ssl/session_cache/ssl_session_openssl.cc +2 -2
 - data/src/core/tsi/ssl_transport_security.cc +229 -62
 - data/src/core/tsi/ssl_transport_security.h +50 -9
 - data/src/core/tsi/transport_security.cc +15 -3
 - data/src/core/tsi/transport_security.h +16 -1
 - data/src/core/tsi/transport_security_grpc.h +1 -0
 - data/src/core/tsi/transport_security_interface.h +28 -0
 - data/src/ruby/ext/grpc/extconf.rb +21 -11
 - data/src/ruby/ext/grpc/rb_byte_buffer.c +2 -1
 - data/src/ruby/ext/grpc/rb_call.c +5 -5
 - data/src/ruby/ext/grpc/rb_call_credentials.c +5 -5
 - data/src/ruby/ext/grpc/rb_channel.c +15 -10
 - data/src/ruby/ext/grpc/rb_channel_args.c +2 -2
 - data/src/ruby/ext/grpc/rb_channel_credentials.c +4 -4
 - data/src/ruby/ext/grpc/rb_channel_credentials.h +1 -0
 - data/src/ruby/ext/grpc/rb_completion_queue.c +3 -2
 - data/src/ruby/ext/grpc/rb_compression_options.c +5 -4
 - data/src/ruby/ext/grpc/rb_event_thread.c +4 -4
 - data/src/ruby/ext/grpc/rb_grpc.c +5 -4
 - data/src/ruby/ext/grpc/rb_grpc.h +1 -0
 - data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +30 -34
 - data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +45 -51
 - data/src/ruby/ext/grpc/rb_server.c +13 -9
 - data/src/ruby/ext/grpc/rb_server_credentials.c +3 -3
 - data/src/ruby/ext/grpc/rb_server_credentials.h +1 -0
 - data/src/ruby/ext/grpc/rb_xds_channel_credentials.c +8 -5
 - data/src/ruby/ext/grpc/rb_xds_channel_credentials.h +3 -1
 - data/src/ruby/ext/grpc/rb_xds_server_credentials.c +6 -5
 - data/src/ruby/ext/grpc/rb_xds_server_credentials.h +3 -1
 - data/src/ruby/lib/grpc/generic/active_call.rb +7 -1
 - data/src/ruby/lib/grpc/grpc.rb +1 -1
 - data/src/ruby/lib/grpc/version.rb +1 -1
 - data/src/ruby/pb/generate_proto_ruby.sh +1 -0
 - data/src/ruby/pb/src/proto/grpc/testing/test_pb.rb +1 -0
 - data/src/ruby/pb/test/client.rb +769 -0
 - data/src/ruby/pb/test/server.rb +252 -0
 - data/src/ruby/pb/test/xds_client.rb +415 -0
 - data/src/ruby/spec/client_server_spec.rb +1 -1
 - data/third_party/abseil-cpp/absl/algorithm/container.h +101 -91
 - data/third_party/abseil-cpp/absl/base/attributes.h +64 -31
 - data/third_party/abseil-cpp/absl/base/config.h +67 -37
 - data/third_party/abseil-cpp/absl/base/dynamic_annotations.h +1 -26
 - data/third_party/abseil-cpp/absl/base/internal/fast_type_id.h +48 -0
 - data/third_party/abseil-cpp/absl/base/internal/spinlock.h +3 -1
 - data/third_party/abseil-cpp/absl/base/internal/spinlock_wait.h +2 -0
 - data/third_party/abseil-cpp/absl/base/internal/sysinfo.cc +69 -0
 - data/third_party/abseil-cpp/absl/base/internal/thread_identity.cc +4 -4
 - data/third_party/abseil-cpp/absl/base/internal/thread_identity.h +15 -10
 - data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +16 -0
 - data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h +4 -4
 - data/third_party/abseil-cpp/absl/base/options.h +1 -1
 - data/third_party/abseil-cpp/absl/container/fixed_array.h +0 -5
 - data/third_party/abseil-cpp/absl/container/inlined_vector.h +105 -97
 - data/third_party/abseil-cpp/absl/container/internal/hash_function_defaults.h +17 -15
 - data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +18 -102
 - data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h +37 -78
 - data/third_party/abseil-cpp/absl/container/internal/inlined_vector.h +388 -423
 - data/third_party/abseil-cpp/absl/container/internal/raw_hash_map.h +3 -2
 - data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +14 -8
 - data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +251 -120
 - data/third_party/abseil-cpp/absl/debugging/internal/demangle.cc +11 -1
 - data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.cc +12 -11
 - data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h +6 -2
 - data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_config.h +12 -5
 - data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_emscripten-inl.inc +110 -0
 - data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_riscv-inl.inc +234 -0
 - data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +25 -7
 - data/third_party/abseil-cpp/absl/debugging/internal/symbolize.h +8 -2
 - data/third_party/abseil-cpp/absl/debugging/internal/vdso_support.cc +21 -3
 - data/third_party/abseil-cpp/absl/debugging/stacktrace.cc +2 -0
 - data/third_party/abseil-cpp/absl/debugging/symbolize.cc +2 -0
 - data/third_party/abseil-cpp/absl/debugging/symbolize_elf.inc +14 -0
 - data/third_party/abseil-cpp/absl/debugging/symbolize_emscripten.inc +72 -0
 - data/third_party/abseil-cpp/absl/functional/function_ref.h +4 -1
 - data/third_party/abseil-cpp/absl/hash/hash.h +22 -0
 - data/third_party/abseil-cpp/absl/hash/internal/hash.cc +15 -16
 - data/third_party/abseil-cpp/absl/hash/internal/hash.h +88 -37
 - data/third_party/abseil-cpp/absl/hash/internal/{wyhash.cc → low_level_hash.cc} +23 -11
 - data/third_party/abseil-cpp/absl/hash/internal/{wyhash.h → low_level_hash.h} +14 -12
 - data/third_party/abseil-cpp/absl/memory/memory.h +1 -1
 - data/third_party/abseil-cpp/absl/meta/type_traits.h +32 -2
 - data/third_party/abseil-cpp/absl/numeric/int128.cc +3 -10
 - data/third_party/abseil-cpp/absl/numeric/int128.h +146 -73
 - data/third_party/abseil-cpp/absl/numeric/int128_have_intrinsic.inc +19 -25
 - data/third_party/abseil-cpp/absl/numeric/int128_no_intrinsic.inc +73 -70
 - data/third_party/abseil-cpp/absl/{base → profiling}/internal/exponential_biased.cc +4 -4
 - data/third_party/abseil-cpp/absl/{base → profiling}/internal/exponential_biased.h +6 -6
 - data/third_party/abseil-cpp/absl/profiling/internal/sample_recorder.h +230 -0
 - data/third_party/abseil-cpp/absl/random/bernoulli_distribution.h +200 -0
 - data/third_party/abseil-cpp/absl/random/beta_distribution.h +427 -0
 - data/third_party/abseil-cpp/absl/random/discrete_distribution.cc +98 -0
 - data/third_party/abseil-cpp/absl/random/discrete_distribution.h +247 -0
 - data/third_party/abseil-cpp/absl/random/distributions.h +452 -0
 - data/third_party/abseil-cpp/absl/random/exponential_distribution.h +165 -0
 - data/third_party/abseil-cpp/absl/random/gaussian_distribution.cc +104 -0
 - data/third_party/abseil-cpp/absl/random/gaussian_distribution.h +275 -0
 - data/third_party/abseil-cpp/absl/random/internal/distribution_caller.h +92 -0
 - data/third_party/abseil-cpp/absl/random/internal/fast_uniform_bits.h +268 -0
 - data/third_party/abseil-cpp/absl/random/internal/fastmath.h +57 -0
 - data/third_party/abseil-cpp/absl/random/internal/generate_real.h +144 -0
 - data/third_party/abseil-cpp/absl/random/internal/iostream_state_saver.h +245 -0
 - data/third_party/abseil-cpp/absl/random/internal/nonsecure_base.h +150 -0
 - data/third_party/abseil-cpp/absl/random/internal/pcg_engine.h +308 -0
 - data/third_party/abseil-cpp/absl/random/internal/platform.h +171 -0
 - data/third_party/abseil-cpp/absl/random/internal/pool_urbg.cc +253 -0
 - data/third_party/abseil-cpp/absl/random/internal/pool_urbg.h +131 -0
 - data/third_party/abseil-cpp/absl/random/internal/randen.cc +91 -0
 - data/third_party/abseil-cpp/absl/random/internal/randen.h +102 -0
 - data/third_party/abseil-cpp/absl/random/internal/randen_detect.cc +221 -0
 - data/third_party/abseil-cpp/absl/random/internal/randen_detect.h +33 -0
 - data/third_party/abseil-cpp/absl/random/internal/randen_engine.h +239 -0
 - data/third_party/abseil-cpp/absl/random/internal/randen_hwaes.cc +526 -0
 - data/third_party/abseil-cpp/absl/random/internal/randen_hwaes.h +50 -0
 - data/third_party/abseil-cpp/absl/random/internal/randen_round_keys.cc +462 -0
 - data/third_party/abseil-cpp/absl/random/internal/randen_slow.cc +471 -0
 - data/third_party/abseil-cpp/absl/random/internal/randen_slow.h +40 -0
 - data/third_party/abseil-cpp/absl/random/internal/randen_traits.h +88 -0
 - data/third_party/abseil-cpp/absl/random/internal/salted_seed_seq.h +167 -0
 - data/third_party/abseil-cpp/absl/random/internal/seed_material.cc +267 -0
 - data/third_party/abseil-cpp/absl/random/internal/seed_material.h +104 -0
 - data/third_party/abseil-cpp/absl/random/internal/traits.h +101 -0
 - data/third_party/abseil-cpp/absl/random/internal/uniform_helper.h +244 -0
 - data/third_party/abseil-cpp/absl/random/internal/wide_multiply.h +111 -0
 - data/third_party/abseil-cpp/absl/random/log_uniform_int_distribution.h +257 -0
 - data/third_party/abseil-cpp/absl/random/poisson_distribution.h +258 -0
 - data/third_party/abseil-cpp/absl/random/random.h +189 -0
 - data/third_party/abseil-cpp/absl/random/seed_gen_exception.cc +46 -0
 - data/third_party/abseil-cpp/absl/random/seed_gen_exception.h +55 -0
 - data/third_party/abseil-cpp/absl/random/seed_sequences.cc +29 -0
 - data/third_party/abseil-cpp/absl/random/seed_sequences.h +110 -0
 - data/third_party/abseil-cpp/absl/random/uniform_int_distribution.h +275 -0
 - data/third_party/abseil-cpp/absl/random/uniform_real_distribution.h +202 -0
 - data/third_party/abseil-cpp/absl/random/zipf_distribution.h +271 -0
 - data/third_party/abseil-cpp/absl/status/internal/status_internal.h +5 -5
 - data/third_party/abseil-cpp/absl/status/status.cc +9 -17
 - data/third_party/abseil-cpp/absl/status/status.h +19 -15
 - data/third_party/abseil-cpp/absl/status/statusor.cc +34 -2
 - data/third_party/abseil-cpp/absl/status/statusor.h +31 -21
 - data/third_party/abseil-cpp/absl/strings/charconv.cc +3 -3
 - data/third_party/abseil-cpp/absl/strings/charconv.h +3 -2
 - data/third_party/abseil-cpp/absl/strings/cord.cc +453 -359
 - data/third_party/abseil-cpp/absl/strings/cord.h +197 -70
 - data/third_party/abseil-cpp/absl/strings/internal/charconv_parse.cc +1 -1
 - data/third_party/abseil-cpp/absl/strings/internal/cord_internal.cc +6 -0
 - data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +140 -63
 - data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.cc +1128 -0
 - data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h +939 -0
 - data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.cc +185 -0
 - data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.h +265 -0
 - data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_reader.cc +68 -0
 - data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_reader.h +211 -0
 - data/third_party/abseil-cpp/absl/strings/internal/cord_rep_consume.cc +129 -0
 - data/third_party/abseil-cpp/absl/strings/internal/cord_rep_consume.h +50 -0
 - data/third_party/abseil-cpp/absl/strings/internal/cord_rep_flat.h +7 -7
 - data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.cc +55 -181
 - data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.h +42 -24
 - data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring_reader.h +4 -0
 - data/third_party/abseil-cpp/absl/strings/internal/cordz_functions.cc +96 -0
 - data/third_party/abseil-cpp/absl/strings/internal/cordz_functions.h +85 -0
 - data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.cc +139 -0
 - data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.h +131 -0
 - data/third_party/abseil-cpp/absl/strings/internal/cordz_info.cc +445 -0
 - data/third_party/abseil-cpp/absl/strings/internal/cordz_info.h +298 -0
 - data/third_party/abseil-cpp/absl/strings/internal/cordz_statistics.h +87 -0
 - data/third_party/abseil-cpp/absl/strings/internal/cordz_update_scope.h +71 -0
 - data/third_party/abseil-cpp/absl/strings/internal/cordz_update_tracker.h +121 -0
 - data/third_party/abseil-cpp/absl/strings/internal/resize_uninitialized.h +48 -2
 - data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.h +8 -0
 - data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.cc +3 -4
 - data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h +1 -1
 - data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.cc +6 -6
 - data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h +36 -18
 - data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.cc +62 -73
 - data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.h +24 -16
 - data/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +35 -35
 - data/third_party/abseil-cpp/absl/strings/numbers.cc +1 -1
 - data/third_party/abseil-cpp/absl/strings/numbers.h +34 -0
 - data/third_party/abseil-cpp/absl/strings/str_cat.cc +4 -4
 - data/third_party/abseil-cpp/absl/strings/str_format.h +1 -2
 - data/third_party/abseil-cpp/absl/strings/string_view.cc +16 -21
 - data/third_party/abseil-cpp/absl/strings/string_view.h +120 -39
 - data/third_party/abseil-cpp/absl/strings/substitute.cc +2 -1
 - data/third_party/abseil-cpp/absl/strings/substitute.h +99 -74
 - data/third_party/abseil-cpp/absl/synchronization/blocking_counter.cc +25 -15
 - data/third_party/abseil-cpp/absl/synchronization/blocking_counter.h +5 -3
 - data/third_party/abseil-cpp/absl/synchronization/internal/waiter.cc +1 -1
 - data/third_party/abseil-cpp/absl/synchronization/mutex.h +3 -3
 - data/third_party/abseil-cpp/absl/time/civil_time.cc +1 -3
 - data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/time_zone.h +93 -20
 - data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_fixed.cc +1 -1
 - data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.h +2 -1
 - data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.cc +83 -21
 - data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +49 -0
 - data/third_party/abseil-cpp/absl/time/internal/cctz/src/tzfile.h +1 -1
 - data/third_party/abseil-cpp/absl/time/internal/cctz/src/zone_info_source.cc +2 -3
 - data/third_party/abseil-cpp/absl/time/time.h +67 -36
 - data/third_party/abseil-cpp/absl/types/bad_optional_access.h +1 -1
 - data/third_party/abseil-cpp/absl/types/bad_variant_access.h +2 -2
 - data/third_party/abseil-cpp/absl/types/span.h +3 -3
 - data/third_party/address_sorting/address_sorting_posix.c +1 -0
 - data/third_party/boringssl-with-bazel/err_data.c +685 -673
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bitstr.c +67 -54
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bool.c +21 -22
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/a_d2i_fp.c +0 -2
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/a_gentm.c +6 -1
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/a_mbstr.c +16 -23
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c +55 -37
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/a_print.c +19 -29
 - data/third_party/boringssl-with-bazel/src/crypto/{x509 → asn1}/a_strex.c +269 -272
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.c +106 -153
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c +4 -4
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/a_type.c +1 -1
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utctm.c +1 -40
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utf8.c +1 -1
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.c +59 -47
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_par.c +1 -1
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/asn_pack.c +24 -28
 - data/third_party/boringssl-with-bazel/src/crypto/{x509 → asn1}/charmap.h +0 -0
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/f_int.c +5 -0
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/{asn1_locl.h → internal.h} +86 -1
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_dec.c +57 -281
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_enc.c +291 -199
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_fre.c +9 -9
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_new.c +10 -14
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_typ.c +8 -6
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_utl.c +2 -1
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/time_support.c +1 -1
 - data/third_party/boringssl-with-bazel/src/crypto/base64/base64.c +24 -8
 - data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.c +1 -7
 - data/third_party/boringssl-with-bazel/src/crypto/bio/connect.c +1 -5
 - data/third_party/boringssl-with-bazel/src/crypto/bio/fd.c +0 -4
 - data/third_party/boringssl-with-bazel/src/crypto/bio/file.c +1 -7
 - data/third_party/boringssl-with-bazel/src/crypto/bio/pair.c +1 -6
 - data/third_party/boringssl-with-bazel/src/crypto/bio/socket.c +3 -17
 - data/third_party/boringssl-with-bazel/src/crypto/blake2/blake2.c +4 -6
 - data/third_party/boringssl-with-bazel/src/crypto/bytestring/ber.c +3 -1
 - data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbb.c +9 -0
 - data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbs.c +8 -0
 - data/third_party/boringssl-with-bazel/src/crypto/chacha/chacha.c +38 -47
 - data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/cipher_extra.c +45 -65
 - data/third_party/boringssl-with-bazel/src/crypto/conf/conf.c +14 -3
 - data/third_party/boringssl-with-bazel/src/crypto/digest_extra/digest_extra.c +6 -3
 - data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +21 -0
 - data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.c +2 -2
 - data/third_party/boringssl-with-bazel/src/crypto/evp/scrypt.c +32 -34
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div.c +26 -9
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd_extra.c +3 -2
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +5 -2
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/sqrt.c +5 -9
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/cipher.c +12 -0
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aes.c +10 -0
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/des/des.c +10 -11
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/des/internal.h +1 -3
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digest.c +2 -0
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.c +1 -2
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md4/md4.c +4 -7
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md5/md5.c +4 -7
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm_nohw.c +1 -1
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/internal.h +5 -9
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/rand.c +2 -2
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/urandom.c +4 -6
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.c +24 -9
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.c +4 -2
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.c +7 -7
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1.c +35 -35
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha256.c +11 -10
 - data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.c +10 -37
 - data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +36 -2
 - data/third_party/boringssl-with-bazel/src/crypto/hrss/hrss.c +219 -121
 - data/third_party/boringssl-with-bazel/src/crypto/hrss/internal.h +9 -2
 - data/third_party/boringssl-with-bazel/src/crypto/internal.h +62 -2
 - data/third_party/boringssl-with-bazel/src/crypto/lhash/internal.h +253 -0
 - data/third_party/boringssl-with-bazel/src/crypto/lhash/lhash.c +28 -23
 - data/third_party/boringssl-with-bazel/src/crypto/mem.c +32 -9
 - data/third_party/boringssl-with-bazel/src/crypto/obj/obj.c +7 -3
 - data/third_party/boringssl-with-bazel/src/crypto/pem/pem_all.c +0 -9
 - data/third_party/boringssl-with-bazel/src/crypto/pem/pem_info.c +0 -2
 - data/third_party/boringssl-with-bazel/src/crypto/pem/pem_lib.c +0 -8
 - data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pk8.c +0 -2
 - data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pkey.c +0 -4
 - data/third_party/boringssl-with-bazel/src/crypto/pkcs7/internal.h +16 -7
 - data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7.c +38 -4
 - data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7_x509.c +151 -12
 - data/third_party/boringssl-with-bazel/src/crypto/pkcs8/internal.h +0 -1
 - data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8.c +1 -1
 - data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.c +2 -2
 - data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305.c +1 -1
 - data/third_party/boringssl-with-bazel/src/crypto/pool/internal.h +5 -1
 - data/third_party/boringssl-with-bazel/src/crypto/pool/pool.c +59 -22
 - data/third_party/boringssl-with-bazel/src/crypto/rand_extra/deterministic.c +4 -0
 - data/third_party/boringssl-with-bazel/src/crypto/rand_extra/fuchsia.c +4 -0
 - data/third_party/boringssl-with-bazel/src/crypto/rand_extra/windows.c +4 -0
 - data/third_party/boringssl-with-bazel/src/crypto/siphash/siphash.c +6 -6
 - data/third_party/boringssl-with-bazel/src/crypto/x509/a_verify.c +15 -11
 - data/third_party/boringssl-with-bazel/src/crypto/x509/algorithm.c +1 -1
 - data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c +2 -18
 - data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c +1 -0
 - data/third_party/boringssl-with-bazel/src/crypto/x509/by_file.c +2 -0
 - data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +233 -4
 - data/third_party/boringssl-with-bazel/src/crypto/x509/name_print.c +246 -0
 - data/third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.c +15 -4
 - data/third_party/boringssl-with-bazel/src/crypto/x509/t_crl.c +10 -5
 - data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509.c +0 -179
 - data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.c +4 -2
 - data/third_party/boringssl-with-bazel/src/crypto/x509/x509_att.c +6 -23
 - data/third_party/boringssl-with-bazel/src/crypto/x509/x509_ext.c +2 -2
 - data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +1 -5
 - data/third_party/boringssl-with-bazel/src/crypto/x509/x509_obj.c +1 -0
 - data/third_party/boringssl-with-bazel/src/crypto/x509/x509_v3.c +25 -22
 - data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +11 -54
 - data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.c +1 -1
 - data/third_party/boringssl-with-bazel/src/crypto/x509/x509cset.c +1 -0
 - data/third_party/boringssl-with-bazel/src/crypto/x509/x509name.c +2 -4
 - data/third_party/boringssl-with-bazel/src/crypto/x509/x_algor.c +1 -3
 - data/third_party/boringssl-with-bazel/src/crypto/x509/x_all.c +0 -16
 - data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c +9 -11
 - data/third_party/boringssl-with-bazel/src/crypto/x509/x_exten.c +2 -0
 - data/third_party/boringssl-with-bazel/src/crypto/x509/x_name.c +23 -21
 - data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509.c +12 -11
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/internal.h +232 -11
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_cache.c +2 -1
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_data.c +2 -2
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_lib.c +1 -1
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_map.c +2 -1
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_node.c +1 -1
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_tree.c +5 -4
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_akey.c +24 -5
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_alt.c +18 -8
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_bitst.c +3 -0
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_conf.c +1 -0
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_cpols.c +6 -7
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_crld.c +4 -2
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_enum.c +5 -0
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_lib.c +23 -4
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ncons.c +112 -55
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pci.c +2 -1
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_prn.c +14 -13
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c +1 -1
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_utl.c +76 -31
 - data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +1504 -561
 - data/third_party/boringssl-with-bazel/src/include/openssl/asn1t.h +5 -12
 - data/third_party/boringssl-with-bazel/src/include/openssl/base.h +10 -6
 - data/third_party/boringssl-with-bazel/src/include/openssl/base64.h +8 -0
 - data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +3 -1
 - data/third_party/boringssl-with-bazel/src/include/openssl/bn.h +3 -3
 - data/third_party/boringssl-with-bazel/src/include/openssl/bytestring.h +9 -0
 - data/third_party/boringssl-with-bazel/src/include/openssl/cipher.h +21 -3
 - data/third_party/boringssl-with-bazel/src/include/openssl/conf.h +8 -5
 - data/third_party/boringssl-with-bazel/src/include/openssl/dh.h +4 -12
 - data/third_party/boringssl-with-bazel/src/include/openssl/digest.h +3 -0
 - data/third_party/boringssl-with-bazel/src/include/openssl/dsa.h +27 -41
 - data/third_party/boringssl-with-bazel/src/include/openssl/ec_key.h +12 -27
 - data/third_party/boringssl-with-bazel/src/include/openssl/ecdsa.h +8 -10
 - data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +35 -55
 - data/third_party/boringssl-with-bazel/src/include/openssl/hkdf.h +4 -0
 - data/third_party/boringssl-with-bazel/src/include/openssl/hpke.h +26 -1
 - data/third_party/boringssl-with-bazel/src/include/openssl/hrss.h +14 -12
 - data/third_party/boringssl-with-bazel/src/include/openssl/lhash.h +4 -205
 - data/third_party/boringssl-with-bazel/src/include/openssl/mem.h +12 -3
 - data/third_party/boringssl-with-bazel/src/include/openssl/obj.h +5 -4
 - data/third_party/boringssl-with-bazel/src/include/openssl/pem.h +0 -20
 - data/third_party/boringssl-with-bazel/src/include/openssl/pkcs7.h +24 -18
 - data/third_party/boringssl-with-bazel/src/include/openssl/pkcs8.h +6 -1
 - data/third_party/boringssl-with-bazel/src/include/openssl/pool.h +7 -1
 - data/third_party/boringssl-with-bazel/src/include/openssl/rsa.h +29 -28
 - data/third_party/boringssl-with-bazel/src/include/openssl/span.h +37 -15
 - data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +110 -26
 - data/third_party/boringssl-with-bazel/src/include/openssl/tls1.h +31 -32
 - data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +725 -189
 - data/third_party/boringssl-with-bazel/src/include/openssl/x509_vfy.h +16 -695
 - data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +52 -16
 - data/third_party/boringssl-with-bazel/src/ssl/d1_both.cc +9 -16
 - data/third_party/boringssl-with-bazel/src/ssl/encrypted_client_hello.cc +310 -359
 - data/third_party/boringssl-with-bazel/src/ssl/{t1_lib.cc → extensions.cc} +110 -159
 - data/third_party/boringssl-with-bazel/src/ssl/handshake.cc +24 -13
 - data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +145 -142
 - data/third_party/boringssl-with-bazel/src/ssl/handshake_server.cc +106 -99
 - data/third_party/boringssl-with-bazel/src/ssl/internal.h +90 -51
 - data/third_party/boringssl-with-bazel/src/ssl/s3_lib.cc +1 -2
 - data/third_party/boringssl-with-bazel/src/ssl/ssl_cipher.cc +2 -2
 - data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +11 -5
 - data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +6 -51
 - data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +121 -65
 - data/third_party/boringssl-with-bazel/src/ssl/ssl_transcript.cc +6 -12
 - data/third_party/boringssl-with-bazel/src/ssl/ssl_versions.cc +4 -0
 - data/third_party/boringssl-with-bazel/src/ssl/ssl_x509.cc +28 -23
 - data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +14 -27
 - data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +210 -212
 - data/third_party/boringssl-with-bazel/src/ssl/tls13_enc.cc +30 -41
 - data/third_party/boringssl-with-bazel/src/ssl/tls13_server.cc +48 -34
 - data/third_party/cares/cares/{ares.h → include/ares.h} +73 -1
 - data/third_party/cares/cares/{ares_dns.h → include/ares_dns.h} +9 -0
 - data/third_party/cares/cares/{ares_rules.h → include/ares_rules.h} +0 -0
 - data/third_party/cares/cares/{ares_version.h → include/ares_version.h} +3 -3
 - data/third_party/cares/cares/{ares__close_sockets.c → src/lib/ares__close_sockets.c} +2 -2
 - data/third_party/cares/cares/{ares__get_hostent.c → src/lib/ares__get_hostent.c} +1 -2
 - data/third_party/cares/cares/src/lib/ares__parse_into_addrinfo.c +260 -0
 - data/third_party/cares/cares/{ares__read_line.c → src/lib/ares__read_line.c} +0 -0
 - data/third_party/cares/cares/src/lib/ares__readaddrinfo.c +264 -0
 - data/third_party/cares/cares/src/lib/ares__sortaddrinfo.c +499 -0
 - data/third_party/cares/cares/{ares__timeval.c → src/lib/ares__timeval.c} +0 -0
 - data/third_party/cares/cares/src/lib/ares_android.c +444 -0
 - data/third_party/cares/cares/src/lib/ares_android.h +27 -0
 - data/third_party/cares/cares/{ares_cancel.c → src/lib/ares_cancel.c} +0 -0
 - data/third_party/cares/cares/{ares_create_query.c → src/lib/ares_create_query.c} +8 -17
 - data/third_party/cares/cares/{ares_data.c → src/lib/ares_data.c} +18 -0
 - data/third_party/cares/cares/{ares_data.h → src/lib/ares_data.h} +2 -0
 - data/third_party/cares/cares/{ares_destroy.c → src/lib/ares_destroy.c} +0 -0
 - data/third_party/cares/cares/{ares_expand_name.c → src/lib/ares_expand_name.c} +114 -23
 - data/third_party/cares/cares/{ares_expand_string.c → src/lib/ares_expand_string.c} +2 -5
 - data/third_party/cares/cares/{ares_fds.c → src/lib/ares_fds.c} +0 -0
 - data/third_party/cares/cares/{ares_free_hostent.c → src/lib/ares_free_hostent.c} +6 -4
 - data/third_party/cares/cares/{ares_free_string.c → src/lib/ares_free_string.c} +0 -0
 - data/third_party/cares/cares/src/lib/ares_freeaddrinfo.c +59 -0
 - data/third_party/cares/cares/src/lib/ares_getaddrinfo.c +772 -0
 - data/third_party/cares/cares/{ares_getenv.c → src/lib/ares_getenv.c} +0 -2
 - data/third_party/cares/cares/{ares_getenv.h → src/lib/ares_getenv.h} +0 -0
 - data/third_party/cares/cares/{ares_gethostbyaddr.c → src/lib/ares_gethostbyaddr.c} +2 -9
 - data/third_party/cares/cares/{ares_gethostbyname.c → src/lib/ares_gethostbyname.c} +25 -20
 - data/third_party/cares/cares/{ares_getnameinfo.c → src/lib/ares_getnameinfo.c} +4 -10
 - data/third_party/cares/cares/{ares_getsock.c → src/lib/ares_getsock.c} +0 -0
 - data/third_party/cares/cares/{ares_inet_net_pton.h → src/lib/ares_inet_net_pton.h} +0 -0
 - data/third_party/cares/cares/{ares_init.c → src/lib/ares_init.c} +79 -40
 - data/third_party/cares/cares/{ares_iphlpapi.h → src/lib/ares_iphlpapi.h} +0 -0
 - data/third_party/cares/cares/{ares_ipv6.h → src/lib/ares_ipv6.h} +7 -0
 - data/third_party/cares/cares/{ares_library_init.c → src/lib/ares_library_init.c} +7 -2
 - data/third_party/cares/cares/{ares_library_init.h → src/lib/ares_library_init.h} +1 -1
 - data/third_party/cares/cares/{ares_llist.c → src/lib/ares_llist.c} +0 -0
 - data/third_party/cares/cares/{ares_llist.h → src/lib/ares_llist.h} +0 -0
 - data/third_party/cares/cares/{ares_mkquery.c → src/lib/ares_mkquery.c} +0 -0
 - data/third_party/cares/cares/src/lib/ares_nameser.h +482 -0
 - data/third_party/cares/cares/{ares_nowarn.c → src/lib/ares_nowarn.c} +0 -0
 - data/third_party/cares/cares/{ares_nowarn.h → src/lib/ares_nowarn.h} +0 -0
 - data/third_party/cares/cares/{ares_options.c → src/lib/ares_options.c} +0 -0
 - data/third_party/cares/cares/src/lib/ares_parse_a_reply.c +209 -0
 - data/third_party/cares/cares/src/lib/ares_parse_aaaa_reply.c +212 -0
 - data/third_party/cares/cares/src/lib/ares_parse_caa_reply.c +199 -0
 - data/third_party/cares/cares/{ares_parse_mx_reply.c → src/lib/ares_parse_mx_reply.c} +2 -8
 - data/third_party/cares/cares/{ares_parse_naptr_reply.c → src/lib/ares_parse_naptr_reply.c} +2 -13
 - data/third_party/cares/cares/{ares_parse_ns_reply.c → src/lib/ares_parse_ns_reply.c} +5 -11
 - data/third_party/cares/cares/{ares_parse_ptr_reply.c → src/lib/ares_parse_ptr_reply.c} +53 -46
 - data/third_party/cares/cares/src/lib/ares_parse_soa_reply.c +179 -0
 - data/third_party/cares/cares/{ares_parse_srv_reply.c → src/lib/ares_parse_srv_reply.c} +2 -13
 - data/third_party/cares/cares/{ares_parse_txt_reply.c → src/lib/ares_parse_txt_reply.c} +3 -9
 - data/third_party/cares/cares/{ares_platform.c → src/lib/ares_platform.c} +0 -0
 - data/third_party/cares/cares/{ares_platform.h → src/lib/ares_platform.h} +0 -0
 - data/third_party/cares/cares/{ares_private.h → src/lib/ares_private.h} +52 -11
 - data/third_party/cares/cares/{ares_process.c → src/lib/ares_process.c} +127 -52
 - data/third_party/cares/cares/{ares_query.c → src/lib/ares_query.c} +3 -9
 - data/third_party/cares/cares/{ares_search.c → src/lib/ares_search.c} +5 -7
 - data/third_party/cares/cares/{ares_send.c → src/lib/ares_send.c} +2 -8
 - data/third_party/cares/cares/{ares_setup.h → src/lib/ares_setup.h} +4 -1
 - data/third_party/cares/cares/{ares_strcasecmp.c → src/lib/ares_strcasecmp.c} +0 -0
 - data/third_party/cares/cares/{ares_strcasecmp.h → src/lib/ares_strcasecmp.h} +0 -0
 - data/third_party/cares/cares/{ares_strdup.c → src/lib/ares_strdup.c} +0 -0
 - data/third_party/cares/cares/{ares_strdup.h → src/lib/ares_strdup.h} +0 -0
 - data/third_party/cares/cares/{ares_strerror.c → src/lib/ares_strerror.c} +0 -0
 - data/third_party/cares/cares/{ares_strsplit.c → src/lib/ares_strsplit.c} +4 -0
 - data/third_party/cares/cares/{ares_strsplit.h → src/lib/ares_strsplit.h} +0 -0
 - data/third_party/cares/cares/{ares_timeout.c → src/lib/ares_timeout.c} +0 -0
 - data/third_party/cares/cares/{ares_version.c → src/lib/ares_version.c} +0 -0
 - data/third_party/cares/cares/{ares_writev.c → src/lib/ares_writev.c} +0 -0
 - data/third_party/cares/cares/src/lib/ares_writev.h +36 -0
 - data/third_party/cares/cares/{bitncmp.c → src/lib/bitncmp.c} +0 -0
 - data/third_party/cares/cares/{bitncmp.h → src/lib/bitncmp.h} +0 -0
 - data/third_party/cares/cares/src/lib/config-dos.h +115 -0
 - data/third_party/cares/cares/{config-win32.h → src/lib/config-win32.h} +0 -0
 - data/third_party/cares/cares/{inet_net_pton.c → src/lib/inet_net_pton.c} +2 -8
 - data/third_party/cares/cares/{inet_ntop.c → src/lib/inet_ntop.c} +2 -8
 - data/third_party/cares/cares/{setup_once.h → src/lib/setup_once.h} +0 -0
 - data/third_party/cares/cares/{windows_port.c → src/lib/windows_port.c} +0 -0
 - data/third_party/re2/re2/compile.cc +91 -109
 - data/third_party/re2/re2/dfa.cc +27 -39
 - data/third_party/re2/re2/filtered_re2.cc +18 -2
 - data/third_party/re2/re2/filtered_re2.h +10 -5
 - data/third_party/re2/re2/nfa.cc +1 -1
 - data/third_party/re2/re2/parse.cc +42 -23
 - data/third_party/re2/re2/perl_groups.cc +34 -34
 - data/third_party/re2/re2/prefilter.cc +3 -2
 - data/third_party/re2/re2/prog.cc +182 -4
 - data/third_party/re2/re2/prog.h +28 -9
 - data/third_party/re2/re2/re2.cc +87 -118
 - data/third_party/re2/re2/re2.h +156 -141
 - data/third_party/re2/re2/regexp.cc +12 -5
 - data/third_party/re2/re2/regexp.h +8 -2
 - data/third_party/re2/re2/set.cc +31 -9
 - data/third_party/re2/re2/set.h +9 -4
 - data/third_party/re2/re2/simplify.cc +11 -3
 - data/third_party/re2/re2/tostring.cc +1 -1
 - data/third_party/re2/re2/walker-inl.h +1 -1
 - data/third_party/re2/util/mutex.h +2 -2
 - data/third_party/re2/util/pcre.h +3 -3
 - data/third_party/upb/third_party/utf8_range/naive.c +92 -0
 - data/third_party/upb/third_party/utf8_range/range2-neon.c +157 -0
 - data/third_party/upb/third_party/utf8_range/range2-sse.c +170 -0
 - data/third_party/upb/third_party/utf8_range/utf8_range.h +9 -0
 - data/third_party/upb/upb/decode.c +774 -351
 - data/third_party/upb/upb/decode.h +66 -12
 - data/third_party/upb/upb/decode_fast.c +596 -581
 - data/third_party/upb/upb/decode_fast.h +40 -13
 - data/third_party/upb/upb/decode_internal.h +211 -0
 - data/third_party/upb/upb/def.c +2151 -1068
 - data/third_party/upb/upb/def.h +352 -258
 - data/third_party/upb/upb/def.hpp +160 -161
 - data/third_party/upb/upb/encode.c +291 -165
 - data/third_party/upb/upb/encode.h +38 -13
 - data/third_party/upb/upb/json_encode.c +776 -0
 - data/third_party/upb/upb/json_encode.h +62 -0
 - data/third_party/upb/upb/msg.c +274 -102
 - data/third_party/upb/upb/msg.h +83 -582
 - data/third_party/upb/upb/msg_internal.h +831 -0
 - data/third_party/upb/upb/port_def.inc +93 -24
 - data/third_party/upb/upb/port_undef.inc +39 -1
 - data/third_party/upb/upb/reflection.c +312 -240
 - data/third_party/upb/upb/reflection.h +119 -67
 - data/third_party/upb/upb/reflection.hpp +37 -0
 - data/third_party/upb/upb/table.c +406 -197
 - data/third_party/upb/upb/table_internal.h +385 -0
 - data/third_party/upb/upb/text_encode.c +141 -90
 - data/third_party/upb/upb/text_encode.h +31 -5
 - data/third_party/upb/upb/upb.c +164 -66
 - data/third_party/upb/upb/upb.h +182 -146
 - data/third_party/upb/upb/upb.hpp +50 -23
 - data/third_party/upb/upb/upb_internal.h +68 -0
 - data/third_party/xxhash/xxhash.h +607 -352
 - data/third_party/zlib/crc32.c +966 -292
 - data/third_party/zlib/crc32.h +9441 -436
 - data/third_party/zlib/deflate.c +78 -30
 - data/third_party/zlib/deflate.h +12 -15
 - data/third_party/zlib/gzguts.h +3 -2
 - data/third_party/zlib/gzlib.c +5 -3
 - data/third_party/zlib/gzread.c +5 -7
 - data/third_party/zlib/gzwrite.c +25 -13
 - data/third_party/zlib/infback.c +2 -1
 - data/third_party/zlib/inffast.c +14 -14
 - data/third_party/zlib/inflate.c +39 -8
 - data/third_party/zlib/inflate.h +3 -2
 - data/third_party/zlib/inftrees.c +3 -3
 - data/third_party/zlib/trees.c +27 -48
 - data/third_party/zlib/zlib.h +123 -100
 - data/third_party/zlib/zutil.c +2 -2
 - data/third_party/zlib/zutil.h +12 -9
 - metadata +559 -260
 - data/include/grpc/event_engine/slice_allocator.h +0 -66
 - data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.h +0 -44
 - data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc +0 -84
 - data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc +0 -179
 - data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc +0 -38
 - data/src/core/ext/filters/client_channel/resolver_registry.cc +0 -197
 - data/src/core/ext/filters/client_channel/resolver_registry.h +0 -89
 - data/src/core/ext/filters/client_channel/service_config_call_data.h +0 -126
 - data/src/core/ext/filters/client_idle/client_idle_filter.cc +0 -441
 - data/src/core/ext/filters/max_age/max_age_filter.cc +0 -562
 - data/src/core/ext/filters/workarounds/workaround_cronet_compression_filter.cc +0 -211
 - data/src/core/ext/filters/workarounds/workaround_utils.cc +0 -53
 - data/src/core/ext/filters/workarounds/workaround_utils.h +0 -39
 - data/src/core/ext/transport/chttp2/client/authority.cc +0 -42
 - data/src/core/ext/transport/chttp2/client/authority.h +0 -36
 - data/src/core/ext/transport/chttp2/client/insecure/channel_create.cc +0 -125
 - data/src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc +0 -91
 - data/src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc +0 -213
 - data/src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc +0 -54
 - data/src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc +0 -77
 - data/src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc +0 -129
 - data/src/core/ext/transport/chttp2/transport/chttp2_plugin.cc +0 -37
 - data/src/core/ext/transport/chttp2/transport/chttp2_slice_allocator.cc +0 -66
 - data/src/core/ext/transport/chttp2/transport/chttp2_slice_allocator.h +0 -74
 - data/src/core/ext/transport/chttp2/transport/hpack_table.cc +0 -243
 - data/src/core/ext/transport/chttp2/transport/hpack_table.h +0 -148
 - data/src/core/ext/transport/chttp2/transport/incoming_metadata.cc +0 -66
 - data/src/core/ext/transport/chttp2/transport/incoming_metadata.h +0 -58
 - data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.c +0 -27
 - data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.h +0 -56
 - data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.c +0 -27
 - data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.h +0 -56
 - data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.c +0 -27
 - data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.h +0 -56
 - data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c +0 -27
 - data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h +0 -56
 - data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c +0 -27
 - data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h +0 -56
 - data/src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c +0 -58
 - data/src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.h +0 -124
 - data/src/core/ext/upb-generated/udpa/type/v1/typed_struct.upb.c +0 -33
 - data/src/core/ext/upb-generated/udpa/type/v1/typed_struct.upb.h +0 -77
 - data/src/core/ext/upbdefs-generated/envoy/service/cluster/v3/cds.upbdefs.c +0 -72
 - data/src/core/ext/upbdefs-generated/envoy/service/cluster/v3/cds.upbdefs.h +0 -35
 - data/src/core/ext/upbdefs-generated/envoy/service/endpoint/v3/eds.upbdefs.c +0 -73
 - data/src/core/ext/upbdefs-generated/envoy/service/endpoint/v3/eds.upbdefs.h +0 -35
 - data/src/core/ext/upbdefs-generated/envoy/service/listener/v3/lds.upbdefs.c +0 -72
 - data/src/core/ext/upbdefs-generated/envoy/service/listener/v3/lds.upbdefs.h +0 -35
 - data/src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c +0 -80
 - data/src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h +0 -35
 - data/src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c +0 -74
 - data/src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h +0 -35
 - data/src/core/ext/upbdefs-generated/udpa/type/v1/typed_struct.upbdefs.c +0 -44
 - data/src/core/ext/upbdefs-generated/udpa/type/v1/typed_struct.upbdefs.h +0 -35
 - data/src/core/lib/avl/avl.cc +0 -306
 - data/src/core/lib/compression/algorithm_metadata.h +0 -61
 - data/src/core/lib/compression/compression_args.cc +0 -135
 - data/src/core/lib/compression/compression_args.h +0 -56
 - data/src/core/lib/compression/stream_compression.cc +0 -80
 - data/src/core/lib/compression/stream_compression.h +0 -116
 - data/src/core/lib/compression/stream_compression_gzip.cc +0 -230
 - data/src/core/lib/compression/stream_compression_gzip.h +0 -28
 - data/src/core/lib/compression/stream_compression_identity.cc +0 -90
 - data/src/core/lib/compression/stream_compression_identity.h +0 -29
 - data/src/core/lib/gpr/tls_gcc.h +0 -52
 - data/src/core/lib/gpr/tls_msvc.h +0 -54
 - data/src/core/lib/gpr/tls_pthread.cc +0 -30
 - data/src/core/lib/gpr/tls_pthread.h +0 -56
 - data/src/core/lib/gpr/tls_stdcpp.h +0 -48
 - data/src/core/lib/gprpp/atomic.h +0 -104
 - data/src/core/lib/iomgr/endpoint_pair_uv.cc +0 -40
 - data/src/core/lib/iomgr/ev_epollex_linux.cc +0 -1661
 - data/src/core/lib/iomgr/ev_epollex_linux.h +0 -30
 - data/src/core/lib/iomgr/iomgr_custom.cc +0 -79
 - data/src/core/lib/iomgr/iomgr_custom.h +0 -49
 - data/src/core/lib/iomgr/iomgr_uv.cc +0 -43
 - data/src/core/lib/iomgr/is_epollexclusive_available.cc +0 -119
 - data/src/core/lib/iomgr/pollset_custom.cc +0 -106
 - data/src/core/lib/iomgr/pollset_custom.h +0 -37
 - data/src/core/lib/iomgr/pollset_set_custom.cc +0 -48
 - data/src/core/lib/iomgr/pollset_set_custom.h +0 -26
 - data/src/core/lib/iomgr/pollset_uv.cc +0 -95
 - data/src/core/lib/iomgr/pollset_uv.h +0 -36
 - data/src/core/lib/iomgr/resolve_address_custom.cc +0 -169
 - data/src/core/lib/iomgr/resolve_address_custom.h +0 -45
 - data/src/core/lib/iomgr/resource_quota.cc +0 -1019
 - data/src/core/lib/iomgr/resource_quota.h +0 -177
 - data/src/core/lib/iomgr/sockaddr_custom.h +0 -54
 - data/src/core/lib/iomgr/sys_epoll_wrapper.h +0 -30
 - data/src/core/lib/iomgr/tcp_client_custom.cc +0 -160
 - data/src/core/lib/iomgr/tcp_custom.cc +0 -389
 - data/src/core/lib/iomgr/tcp_custom.h +0 -85
 - data/src/core/lib/iomgr/tcp_server_custom.cc +0 -484
 - data/src/core/lib/iomgr/tcp_uv.cc +0 -421
 - data/src/core/lib/iomgr/timer_custom.cc +0 -96
 - data/src/core/lib/iomgr/timer_custom.h +0 -43
 - data/src/core/lib/iomgr/timer_uv.cc +0 -66
 - data/src/core/lib/iomgr/udp_server.cc +0 -748
 - data/src/core/lib/iomgr/udp_server.h +0 -103
 - data/src/core/lib/security/credentials/credentials_metadata.cc +0 -62
 - data/src/core/lib/slice/slice_intern.cc +0 -373
 - data/src/core/lib/slice/slice_utils.h +0 -200
 - data/src/core/lib/surface/init_secure.cc +0 -81
 - data/src/core/lib/transport/metadata.cc +0 -693
 - data/src/core/lib/transport/metadata.h +0 -446
 - data/src/core/lib/transport/metadata_batch.cc +0 -430
 - data/src/core/lib/transport/static_metadata.cc +0 -1249
 - data/src/core/lib/transport/static_metadata.h +0 -604
 - data/src/core/lib/transport/status_metadata.cc +0 -62
 - data/src/core/lib/transport/status_metadata.h +0 -48
 - data/third_party/boringssl-with-bazel/src/crypto/asn1/f_enum.c +0 -93
 - data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_int.h +0 -217
 - data/third_party/cares/cares/ares_getopt.c +0 -122
 - data/third_party/cares/cares/ares_getopt.h +0 -53
 - data/third_party/cares/cares/ares_parse_a_reply.c +0 -264
 - data/third_party/cares/cares/ares_parse_aaaa_reply.c +0 -264
 - data/third_party/cares/cares/ares_parse_soa_reply.c +0 -133
 - data/third_party/upb/third_party/wyhash/wyhash.h +0 -145
 - data/third_party/upb/upb/decode.int.h +0 -163
 - data/third_party/upb/upb/table.int.h +0 -475
 - data/third_party/upb/upb/upb.int.h +0 -29
 
| 
         @@ -9,7 +9,7 @@ 
     | 
|
| 
       9 
9 
     | 
    
         
             
            #ifndef ENVOY_CONFIG_CLUSTER_V3_CLUSTER_PROTO_UPB_H_
         
     | 
| 
       10 
10 
     | 
    
         
             
            #define ENVOY_CONFIG_CLUSTER_V3_CLUSTER_PROTO_UPB_H_
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
     | 
    
         
            -
            #include "upb/ 
     | 
| 
      
 12 
     | 
    
         
            +
            #include "upb/msg_internal.h"
         
     | 
| 
       13 
13 
     | 
    
         
             
            #include "upb/decode.h"
         
     | 
| 
       14 
14 
     | 
    
         
             
            #include "upb/decode_fast.h"
         
     | 
| 
       15 
15 
     | 
    
         
             
            #include "upb/encode.h"
         
     | 
| 
         @@ -27,6 +27,8 @@ struct envoy_config_cluster_v3_Cluster_CustomClusterType; 
     | 
|
| 
       27 
27 
     | 
    
         
             
            struct envoy_config_cluster_v3_Cluster_EdsClusterConfig;
         
     | 
| 
       28 
28 
     | 
    
         
             
            struct envoy_config_cluster_v3_Cluster_LbSubsetConfig;
         
     | 
| 
       29 
29 
     | 
    
         
             
            struct envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector;
         
     | 
| 
      
 30 
     | 
    
         
            +
            struct envoy_config_cluster_v3_Cluster_SlowStartConfig;
         
     | 
| 
      
 31 
     | 
    
         
            +
            struct envoy_config_cluster_v3_Cluster_RoundRobinLbConfig;
         
     | 
| 
       30 
32 
     | 
    
         
             
            struct envoy_config_cluster_v3_Cluster_LeastRequestLbConfig;
         
     | 
| 
       31 
33 
     | 
    
         
             
            struct envoy_config_cluster_v3_Cluster_RingHashLbConfig;
         
     | 
| 
       32 
34 
     | 
    
         
             
            struct envoy_config_cluster_v3_Cluster_MaglevLbConfig;
         
     | 
| 
         @@ -50,6 +52,8 @@ typedef struct envoy_config_cluster_v3_Cluster_CustomClusterType envoy_config_cl 
     | 
|
| 
       50 
52 
     | 
    
         
             
            typedef struct envoy_config_cluster_v3_Cluster_EdsClusterConfig envoy_config_cluster_v3_Cluster_EdsClusterConfig;
         
     | 
| 
       51 
53 
     | 
    
         
             
            typedef struct envoy_config_cluster_v3_Cluster_LbSubsetConfig envoy_config_cluster_v3_Cluster_LbSubsetConfig;
         
     | 
| 
       52 
54 
     | 
    
         
             
            typedef struct envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector;
         
     | 
| 
      
 55 
     | 
    
         
            +
            typedef struct envoy_config_cluster_v3_Cluster_SlowStartConfig envoy_config_cluster_v3_Cluster_SlowStartConfig;
         
     | 
| 
      
 56 
     | 
    
         
            +
            typedef struct envoy_config_cluster_v3_Cluster_RoundRobinLbConfig envoy_config_cluster_v3_Cluster_RoundRobinLbConfig;
         
     | 
| 
       53 
57 
     | 
    
         
             
            typedef struct envoy_config_cluster_v3_Cluster_LeastRequestLbConfig envoy_config_cluster_v3_Cluster_LeastRequestLbConfig;
         
     | 
| 
       54 
58 
     | 
    
         
             
            typedef struct envoy_config_cluster_v3_Cluster_RingHashLbConfig envoy_config_cluster_v3_Cluster_RingHashLbConfig;
         
     | 
| 
       55 
59 
     | 
    
         
             
            typedef struct envoy_config_cluster_v3_Cluster_MaglevLbConfig envoy_config_cluster_v3_Cluster_MaglevLbConfig;
         
     | 
| 
         @@ -66,29 +70,31 @@ typedef struct envoy_config_cluster_v3_LoadBalancingPolicy_Policy envoy_config_c 
     | 
|
| 
       66 
70 
     | 
    
         
             
            typedef struct envoy_config_cluster_v3_UpstreamBindConfig envoy_config_cluster_v3_UpstreamBindConfig;
         
     | 
| 
       67 
71 
     | 
    
         
             
            typedef struct envoy_config_cluster_v3_UpstreamConnectionOptions envoy_config_cluster_v3_UpstreamConnectionOptions;
         
     | 
| 
       68 
72 
     | 
    
         
             
            typedef struct envoy_config_cluster_v3_TrackClusterStats envoy_config_cluster_v3_TrackClusterStats;
         
     | 
| 
       69 
     | 
    
         
            -
            extern const  
     | 
| 
       70 
     | 
    
         
            -
            extern const  
     | 
| 
       71 
     | 
    
         
            -
            extern const  
     | 
| 
       72 
     | 
    
         
            -
            extern const  
     | 
| 
       73 
     | 
    
         
            -
            extern const  
     | 
| 
       74 
     | 
    
         
            -
            extern const  
     | 
| 
       75 
     | 
    
         
            -
            extern const  
     | 
| 
       76 
     | 
    
         
            -
            extern const  
     | 
| 
       77 
     | 
    
         
            -
            extern const  
     | 
| 
       78 
     | 
    
         
            -
            extern const  
     | 
| 
       79 
     | 
    
         
            -
            extern const  
     | 
| 
       80 
     | 
    
         
            -
            extern const  
     | 
| 
       81 
     | 
    
         
            -
            extern const  
     | 
| 
       82 
     | 
    
         
            -
            extern const  
     | 
| 
       83 
     | 
    
         
            -
            extern const  
     | 
| 
       84 
     | 
    
         
            -
            extern const  
     | 
| 
       85 
     | 
    
         
            -
            extern const  
     | 
| 
       86 
     | 
    
         
            -
            extern const  
     | 
| 
       87 
     | 
    
         
            -
            extern const  
     | 
| 
       88 
     | 
    
         
            -
            extern const  
     | 
| 
       89 
     | 
    
         
            -
            extern const  
     | 
| 
       90 
     | 
    
         
            -
            extern const  
     | 
| 
       91 
     | 
    
         
            -
            extern const  
     | 
| 
      
 73 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_ClusterCollection_msginit;
         
     | 
| 
      
 74 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Cluster_msginit;
         
     | 
| 
      
 75 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Cluster_TransportSocketMatch_msginit;
         
     | 
| 
      
 76 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Cluster_CustomClusterType_msginit;
         
     | 
| 
      
 77 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Cluster_EdsClusterConfig_msginit;
         
     | 
| 
      
 78 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Cluster_LbSubsetConfig_msginit;
         
     | 
| 
      
 79 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_msginit;
         
     | 
| 
      
 80 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Cluster_SlowStartConfig_msginit;
         
     | 
| 
      
 81 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_msginit;
         
     | 
| 
      
 82 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_msginit;
         
     | 
| 
      
 83 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Cluster_RingHashLbConfig_msginit;
         
     | 
| 
      
 84 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Cluster_MaglevLbConfig_msginit;
         
     | 
| 
      
 85 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_msginit;
         
     | 
| 
      
 86 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Cluster_CommonLbConfig_msginit;
         
     | 
| 
      
 87 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_msginit;
         
     | 
| 
      
 88 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig_msginit;
         
     | 
| 
      
 89 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_msginit;
         
     | 
| 
      
 90 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Cluster_RefreshRate_msginit;
         
     | 
| 
      
 91 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Cluster_PreconnectPolicy_msginit;
         
     | 
| 
      
 92 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Cluster_TypedExtensionProtocolOptionsEntry_msginit;
         
     | 
| 
      
 93 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_LoadBalancingPolicy_msginit;
         
     | 
| 
      
 94 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_LoadBalancingPolicy_Policy_msginit;
         
     | 
| 
      
 95 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_UpstreamBindConfig_msginit;
         
     | 
| 
      
 96 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_UpstreamConnectionOptions_msginit;
         
     | 
| 
      
 97 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_TrackClusterStats_msginit;
         
     | 
| 
       92 
98 
     | 
    
         
             
            struct envoy_config_cluster_v3_CircuitBreakers;
         
     | 
| 
       93 
99 
     | 
    
         
             
            struct envoy_config_cluster_v3_Filter;
         
     | 
| 
       94 
100 
     | 
    
         
             
            struct envoy_config_cluster_v3_OutlierDetection;
         
     | 
| 
         @@ -97,6 +103,7 @@ struct envoy_config_core_v3_BindConfig; 
     | 
|
| 
       97 
103 
     | 
    
         
             
            struct envoy_config_core_v3_ConfigSource;
         
     | 
| 
       98 
104 
     | 
    
         
             
            struct envoy_config_core_v3_DnsResolutionConfig;
         
     | 
| 
       99 
105 
     | 
    
         
             
            struct envoy_config_core_v3_HealthCheck;
         
     | 
| 
      
 106 
     | 
    
         
            +
            struct envoy_config_core_v3_HealthStatusSet;
         
     | 
| 
       100 
107 
     | 
    
         
             
            struct envoy_config_core_v3_Http1ProtocolOptions;
         
     | 
| 
       101 
108 
     | 
    
         
             
            struct envoy_config_core_v3_Http2ProtocolOptions;
         
     | 
| 
       102 
109 
     | 
    
         
             
            struct envoy_config_core_v3_HttpProtocolOptions;
         
     | 
| 
         @@ -116,33 +123,34 @@ struct google_protobuf_Struct; 
     | 
|
| 
       116 
123 
     | 
    
         
             
            struct google_protobuf_UInt32Value;
         
     | 
| 
       117 
124 
     | 
    
         
             
            struct google_protobuf_UInt64Value;
         
     | 
| 
       118 
125 
     | 
    
         
             
            struct xds_core_v3_CollectionEntry;
         
     | 
| 
       119 
     | 
    
         
            -
            extern const  
     | 
| 
       120 
     | 
    
         
            -
            extern const  
     | 
| 
       121 
     | 
    
         
            -
            extern const  
     | 
| 
       122 
     | 
    
         
            -
            extern const  
     | 
| 
       123 
     | 
    
         
            -
            extern const  
     | 
| 
       124 
     | 
    
         
            -
            extern const  
     | 
| 
       125 
     | 
    
         
            -
            extern const  
     | 
| 
       126 
     | 
    
         
            -
            extern const  
     | 
| 
       127 
     | 
    
         
            -
            extern const  
     | 
| 
       128 
     | 
    
         
            -
            extern const  
     | 
| 
       129 
     | 
    
         
            -
            extern const  
     | 
| 
       130 
     | 
    
         
            -
            extern const  
     | 
| 
       131 
     | 
    
         
            -
            extern const  
     | 
| 
       132 
     | 
    
         
            -
            extern const  
     | 
| 
       133 
     | 
    
         
            -
            extern const  
     | 
| 
       134 
     | 
    
         
            -
            extern const  
     | 
| 
       135 
     | 
    
         
            -
            extern const  
     | 
| 
       136 
     | 
    
         
            -
            extern const  
     | 
| 
       137 
     | 
    
         
            -
            extern const  
     | 
| 
       138 
     | 
    
         
            -
            extern const  
     | 
| 
       139 
     | 
    
         
            -
            extern const  
     | 
| 
       140 
     | 
    
         
            -
            extern const  
     | 
| 
       141 
     | 
    
         
            -
            extern const  
     | 
| 
       142 
     | 
    
         
            -
            extern const  
     | 
| 
       143 
     | 
    
         
            -
            extern const  
     | 
| 
       144 
     | 
    
         
            -
            extern const  
     | 
| 
       145 
     | 
    
         
            -
            extern const  
     | 
| 
      
 126 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_CircuitBreakers_msginit;
         
     | 
| 
      
 127 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_Filter_msginit;
         
     | 
| 
      
 128 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_cluster_v3_OutlierDetection_msginit;
         
     | 
| 
      
 129 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_core_v3_Address_msginit;
         
     | 
| 
      
 130 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_core_v3_BindConfig_msginit;
         
     | 
| 
      
 131 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_core_v3_ConfigSource_msginit;
         
     | 
| 
      
 132 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_core_v3_DnsResolutionConfig_msginit;
         
     | 
| 
      
 133 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_core_v3_HealthCheck_msginit;
         
     | 
| 
      
 134 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_core_v3_HealthStatusSet_msginit;
         
     | 
| 
      
 135 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_core_v3_Http1ProtocolOptions_msginit;
         
     | 
| 
      
 136 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_core_v3_Http2ProtocolOptions_msginit;
         
     | 
| 
      
 137 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_core_v3_HttpProtocolOptions_msginit;
         
     | 
| 
      
 138 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_core_v3_Metadata_msginit;
         
     | 
| 
      
 139 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_core_v3_RuntimeDouble_msginit;
         
     | 
| 
      
 140 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_core_v3_TcpKeepalive_msginit;
         
     | 
| 
      
 141 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_core_v3_TransportSocket_msginit;
         
     | 
| 
      
 142 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_core_v3_TypedExtensionConfig_msginit;
         
     | 
| 
      
 143 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_core_v3_UpstreamHttpProtocolOptions_msginit;
         
     | 
| 
      
 144 
     | 
    
         
            +
            extern const upb_MiniTable envoy_config_endpoint_v3_ClusterLoadAssignment_msginit;
         
     | 
| 
      
 145 
     | 
    
         
            +
            extern const upb_MiniTable envoy_type_v3_Percent_msginit;
         
     | 
| 
      
 146 
     | 
    
         
            +
            extern const upb_MiniTable google_protobuf_Any_msginit;
         
     | 
| 
      
 147 
     | 
    
         
            +
            extern const upb_MiniTable google_protobuf_BoolValue_msginit;
         
     | 
| 
      
 148 
     | 
    
         
            +
            extern const upb_MiniTable google_protobuf_DoubleValue_msginit;
         
     | 
| 
      
 149 
     | 
    
         
            +
            extern const upb_MiniTable google_protobuf_Duration_msginit;
         
     | 
| 
      
 150 
     | 
    
         
            +
            extern const upb_MiniTable google_protobuf_Struct_msginit;
         
     | 
| 
      
 151 
     | 
    
         
            +
            extern const upb_MiniTable google_protobuf_UInt32Value_msginit;
         
     | 
| 
      
 152 
     | 
    
         
            +
            extern const upb_MiniTable google_protobuf_UInt64Value_msginit;
         
     | 
| 
      
 153 
     | 
    
         
            +
            extern const upb_MiniTable xds_core_v3_CollectionEntry_msginit;
         
     | 
| 
       146 
154 
     | 
    
         | 
| 
       147 
155 
     | 
    
         
             
            typedef enum {
         
     | 
| 
       148 
156 
     | 
    
         
             
              envoy_config_cluster_v3_Cluster_USE_CONFIGURED_PROTOCOL = 0,
         
     | 
| 
         @@ -160,7 +168,9 @@ typedef enum { 
     | 
|
| 
       160 
168 
     | 
    
         
             
            typedef enum {
         
     | 
| 
       161 
169 
     | 
    
         
             
              envoy_config_cluster_v3_Cluster_AUTO = 0,
         
     | 
| 
       162 
170 
     | 
    
         
             
              envoy_config_cluster_v3_Cluster_V4_ONLY = 1,
         
     | 
| 
       163 
     | 
    
         
            -
              envoy_config_cluster_v3_Cluster_V6_ONLY = 2
         
     | 
| 
      
 171 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_V6_ONLY = 2,
         
     | 
| 
      
 172 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_V4_PREFERRED = 3,
         
     | 
| 
      
 173 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_ALL = 4
         
     | 
| 
       164 
174 
     | 
    
         
             
            } envoy_config_cluster_v3_Cluster_DnsLookupFamily;
         
     | 
| 
       165 
175 
     | 
    
         | 
| 
       166 
176 
     | 
    
         
             
            typedef enum {
         
     | 
| 
         @@ -193,37 +203,56 @@ typedef enum { 
     | 
|
| 
       193 
203 
     | 
    
         
             
            } envoy_config_cluster_v3_Cluster_RingHashLbConfig_HashFunction;
         
     | 
| 
       194 
204 
     | 
    
         | 
| 
       195 
205 
     | 
    
         | 
| 
      
 206 
     | 
    
         
            +
             
     | 
| 
       196 
207 
     | 
    
         
             
            /* envoy.config.cluster.v3.ClusterCollection */
         
     | 
| 
       197 
208 
     | 
    
         | 
| 
       198 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_ClusterCollection  
     | 
| 
       199 
     | 
    
         
            -
              return (envoy_config_cluster_v3_ClusterCollection 
     | 
| 
      
 209 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_ClusterCollection* envoy_config_cluster_v3_ClusterCollection_new(upb_Arena* arena) {
         
     | 
| 
      
 210 
     | 
    
         
            +
              return (envoy_config_cluster_v3_ClusterCollection*)_upb_Message_New(&envoy_config_cluster_v3_ClusterCollection_msginit, arena);
         
     | 
| 
      
 211 
     | 
    
         
            +
            }
         
     | 
| 
      
 212 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_ClusterCollection* envoy_config_cluster_v3_ClusterCollection_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 213 
     | 
    
         
            +
              envoy_config_cluster_v3_ClusterCollection* ret = envoy_config_cluster_v3_ClusterCollection_new(arena);
         
     | 
| 
      
 214 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 215 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_ClusterCollection_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 216 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 217 
     | 
    
         
            +
              }
         
     | 
| 
      
 218 
     | 
    
         
            +
              return ret;
         
     | 
| 
       200 
219 
     | 
    
         
             
            }
         
     | 
| 
       201 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_ClusterCollection  
     | 
| 
       202 
     | 
    
         
            -
             
     | 
| 
       203 
     | 
    
         
            -
             
     | 
| 
       204 
     | 
    
         
            -
               
     | 
| 
      
 220 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_ClusterCollection* envoy_config_cluster_v3_ClusterCollection_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 221 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 222 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 223 
     | 
    
         
            +
              envoy_config_cluster_v3_ClusterCollection* ret = envoy_config_cluster_v3_ClusterCollection_new(arena);
         
     | 
| 
      
 224 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 225 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_ClusterCollection_msginit, extreg, options, arena) !=
         
     | 
| 
      
 226 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 227 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 228 
     | 
    
         
            +
              }
         
     | 
| 
      
 229 
     | 
    
         
            +
              return ret;
         
     | 
| 
       205 
230 
     | 
    
         
             
            }
         
     | 
| 
       206 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       207 
     | 
    
         
            -
             
     | 
| 
       208 
     | 
    
         
            -
              envoy_config_cluster_v3_ClusterCollection *ret = envoy_config_cluster_v3_ClusterCollection_new(arena);
         
     | 
| 
       209 
     | 
    
         
            -
              return (ret && _upb_decode(buf, size, ret, &envoy_config_cluster_v3_ClusterCollection_msginit, arena, options))
         
     | 
| 
       210 
     | 
    
         
            -
                  ? ret : NULL;
         
     | 
| 
      
 231 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_ClusterCollection_serialize(const envoy_config_cluster_v3_ClusterCollection* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 232 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_ClusterCollection_msginit, 0, arena, len);
         
     | 
| 
       211 
233 
     | 
    
         
             
            }
         
     | 
| 
       212 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       213 
     | 
    
         
            -
             
     | 
| 
      
 234 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_ClusterCollection_serialize_ex(const envoy_config_cluster_v3_ClusterCollection* msg, int options,
         
     | 
| 
      
 235 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 236 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_ClusterCollection_msginit, options, arena, len);
         
     | 
| 
      
 237 
     | 
    
         
            +
            }
         
     | 
| 
      
 238 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_ClusterCollection_has_entries(const envoy_config_cluster_v3_ClusterCollection* msg) {
         
     | 
| 
      
 239 
     | 
    
         
            +
              return _upb_hasbit(msg, 1);
         
     | 
| 
      
 240 
     | 
    
         
            +
            }
         
     | 
| 
      
 241 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_ClusterCollection_clear_entries(const envoy_config_cluster_v3_ClusterCollection* msg) {
         
     | 
| 
      
 242 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const upb_Message*) = NULL;
         
     | 
| 
      
 243 
     | 
    
         
            +
            }
         
     | 
| 
      
 244 
     | 
    
         
            +
            UPB_INLINE const struct xds_core_v3_CollectionEntry* envoy_config_cluster_v3_ClusterCollection_entries(const envoy_config_cluster_v3_ClusterCollection* msg) {
         
     | 
| 
      
 245 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct xds_core_v3_CollectionEntry*);
         
     | 
| 
       214 
246 
     | 
    
         
             
            }
         
     | 
| 
       215 
     | 
    
         
            -
             
     | 
| 
       216 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_ClusterCollection_has_entries(const envoy_config_cluster_v3_ClusterCollection *msg) { return _upb_hasbit(msg, 1); }
         
     | 
| 
       217 
     | 
    
         
            -
            UPB_INLINE const struct xds_core_v3_CollectionEntry* envoy_config_cluster_v3_ClusterCollection_entries(const envoy_config_cluster_v3_ClusterCollection *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct xds_core_v3_CollectionEntry*); }
         
     | 
| 
       218 
247 
     | 
    
         | 
| 
       219 
248 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_ClusterCollection_set_entries(envoy_config_cluster_v3_ClusterCollection *msg, struct xds_core_v3_CollectionEntry* value) {
         
     | 
| 
       220 
249 
     | 
    
         
             
              _upb_sethas(msg, 1);
         
     | 
| 
       221 
250 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct xds_core_v3_CollectionEntry*) = value;
         
     | 
| 
       222 
251 
     | 
    
         
             
            }
         
     | 
| 
       223 
     | 
    
         
            -
            UPB_INLINE struct xds_core_v3_CollectionEntry* envoy_config_cluster_v3_ClusterCollection_mutable_entries(envoy_config_cluster_v3_ClusterCollection  
     | 
| 
      
 252 
     | 
    
         
            +
            UPB_INLINE struct xds_core_v3_CollectionEntry* envoy_config_cluster_v3_ClusterCollection_mutable_entries(envoy_config_cluster_v3_ClusterCollection* msg, upb_Arena* arena) {
         
     | 
| 
       224 
253 
     | 
    
         
             
              struct xds_core_v3_CollectionEntry* sub = (struct xds_core_v3_CollectionEntry*)envoy_config_cluster_v3_ClusterCollection_entries(msg);
         
     | 
| 
       225 
254 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       226 
     | 
    
         
            -
                sub = (struct xds_core_v3_CollectionEntry*) 
     | 
| 
      
 255 
     | 
    
         
            +
                sub = (struct xds_core_v3_CollectionEntry*)_upb_Message_New(&xds_core_v3_CollectionEntry_msginit, arena);
         
     | 
| 
       227 
256 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       228 
257 
     | 
    
         
             
                envoy_config_cluster_v3_ClusterCollection_set_entries(msg, sub);
         
     | 
| 
       229 
258 
     | 
    
         
             
              }
         
     | 
| 
         @@ -232,146 +261,501 @@ UPB_INLINE struct xds_core_v3_CollectionEntry* envoy_config_cluster_v3_ClusterCo 
     | 
|
| 
       232 
261 
     | 
    
         | 
| 
       233 
262 
     | 
    
         
             
            /* envoy.config.cluster.v3.Cluster */
         
     | 
| 
       234 
263 
     | 
    
         | 
| 
       235 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster  
     | 
| 
       236 
     | 
    
         
            -
              return (envoy_config_cluster_v3_Cluster 
     | 
| 
      
 264 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster* envoy_config_cluster_v3_Cluster_new(upb_Arena* arena) {
         
     | 
| 
      
 265 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_msginit, arena);
         
     | 
| 
      
 266 
     | 
    
         
            +
            }
         
     | 
| 
      
 267 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster* envoy_config_cluster_v3_Cluster_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 268 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster* ret = envoy_config_cluster_v3_Cluster_new(arena);
         
     | 
| 
      
 269 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 270 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 271 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 272 
     | 
    
         
            +
              }
         
     | 
| 
      
 273 
     | 
    
         
            +
              return ret;
         
     | 
| 
       237 
274 
     | 
    
         
             
            }
         
     | 
| 
       238 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster  
     | 
| 
       239 
     | 
    
         
            -
             
     | 
| 
       240 
     | 
    
         
            -
             
     | 
| 
       241 
     | 
    
         
            -
               
     | 
| 
      
 275 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster* envoy_config_cluster_v3_Cluster_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 276 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 277 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 278 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster* ret = envoy_config_cluster_v3_Cluster_new(arena);
         
     | 
| 
      
 279 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 280 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_msginit, extreg, options, arena) !=
         
     | 
| 
      
 281 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 282 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 283 
     | 
    
         
            +
              }
         
     | 
| 
      
 284 
     | 
    
         
            +
              return ret;
         
     | 
| 
       242 
285 
     | 
    
         
             
            }
         
     | 
| 
       243 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       244 
     | 
    
         
            -
             
     | 
| 
       245 
     | 
    
         
            -
              envoy_config_cluster_v3_Cluster *ret = envoy_config_cluster_v3_Cluster_new(arena);
         
     | 
| 
       246 
     | 
    
         
            -
              return (ret && _upb_decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_msginit, arena, options))
         
     | 
| 
       247 
     | 
    
         
            -
                  ? ret : NULL;
         
     | 
| 
      
 286 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_serialize(const envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 287 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_msginit, 0, arena, len);
         
     | 
| 
       248 
288 
     | 
    
         
             
            }
         
     | 
| 
       249 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       250 
     | 
    
         
            -
             
     | 
| 
      
 289 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_serialize_ex(const envoy_config_cluster_v3_Cluster* msg, int options,
         
     | 
| 
      
 290 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 291 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_msginit, options, arena, len);
         
     | 
| 
       251 
292 
     | 
    
         
             
            }
         
     | 
| 
       252 
     | 
    
         
            -
             
     | 
| 
       253 
293 
     | 
    
         
             
            typedef enum {
         
     | 
| 
       254 
294 
     | 
    
         
             
              envoy_config_cluster_v3_Cluster_cluster_discovery_type_type = 2,
         
     | 
| 
       255 
295 
     | 
    
         
             
              envoy_config_cluster_v3_Cluster_cluster_discovery_type_cluster_type = 38,
         
     | 
| 
       256 
296 
     | 
    
         
             
              envoy_config_cluster_v3_Cluster_cluster_discovery_type_NOT_SET = 0
         
     | 
| 
       257 
297 
     | 
    
         
             
            } envoy_config_cluster_v3_Cluster_cluster_discovery_type_oneofcases;
         
     | 
| 
       258 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_cluster_discovery_type_oneofcases envoy_config_cluster_v3_Cluster_cluster_discovery_type_case(const envoy_config_cluster_v3_Cluster* msg) { 
     | 
| 
       259 
     | 
    
         
            -
             
     | 
| 
      
 298 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_cluster_discovery_type_oneofcases envoy_config_cluster_v3_Cluster_cluster_discovery_type_case(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 299 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_cluster_discovery_type_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(20, 20), int32_t);
         
     | 
| 
      
 300 
     | 
    
         
            +
            }
         
     | 
| 
       260 
301 
     | 
    
         
             
            typedef enum {
         
     | 
| 
       261 
302 
     | 
    
         
             
              envoy_config_cluster_v3_Cluster_lb_config_ring_hash_lb_config = 23,
         
     | 
| 
       262 
303 
     | 
    
         
             
              envoy_config_cluster_v3_Cluster_lb_config_maglev_lb_config = 52,
         
     | 
| 
       263 
304 
     | 
    
         
             
              envoy_config_cluster_v3_Cluster_lb_config_original_dst_lb_config = 34,
         
     | 
| 
       264 
305 
     | 
    
         
             
              envoy_config_cluster_v3_Cluster_lb_config_least_request_lb_config = 37,
         
     | 
| 
      
 306 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_lb_config_round_robin_lb_config = 56,
         
     | 
| 
       265 
307 
     | 
    
         
             
              envoy_config_cluster_v3_Cluster_lb_config_NOT_SET = 0
         
     | 
| 
       266 
308 
     | 
    
         
             
            } envoy_config_cluster_v3_Cluster_lb_config_oneofcases;
         
     | 
| 
       267 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_lb_config_oneofcases envoy_config_cluster_v3_Cluster_lb_config_case(const envoy_config_cluster_v3_Cluster* msg) { 
     | 
| 
       268 
     | 
    
         
            -
             
     | 
| 
       269 
     | 
    
         
            -
             
     | 
| 
       270 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       271 
     | 
    
         
            -
             
     | 
| 
       272 
     | 
    
         
            -
             
     | 
| 
       273 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       274 
     | 
    
         
            -
             
     | 
| 
       275 
     | 
    
         
            -
             
     | 
| 
       276 
     | 
    
         
            -
            UPB_INLINE bool  
     | 
| 
       277 
     | 
    
         
            -
             
     | 
| 
       278 
     | 
    
         
            -
             
     | 
| 
       279 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       280 
     | 
    
         
            -
             
     | 
| 
       281 
     | 
    
         
            -
             
     | 
| 
       282 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       283 
     | 
    
         
            -
             
     | 
| 
       284 
     | 
    
         
            -
             
     | 
| 
       285 
     | 
    
         
            -
            UPB_INLINE bool  
     | 
| 
       286 
     | 
    
         
            -
             
     | 
| 
       287 
     | 
    
         
            -
             
     | 
| 
       288 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       289 
     | 
    
         
            -
             
     | 
| 
       290 
     | 
    
         
            -
             
     | 
| 
       291 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       292 
     | 
    
         
            -
             
     | 
| 
       293 
     | 
    
         
            -
             
     | 
| 
       294 
     | 
    
         
            -
            UPB_INLINE bool  
     | 
| 
       295 
     | 
    
         
            -
             
     | 
| 
       296 
     | 
    
         
            -
             
     | 
| 
       297 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       298 
     | 
    
         
            -
             
     | 
| 
       299 
     | 
    
         
            -
             
     | 
| 
       300 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       301 
     | 
    
         
            -
             
     | 
| 
       302 
     | 
    
         
            -
             
     | 
| 
       303 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       304 
     | 
    
         
            -
             
     | 
| 
       305 
     | 
    
         
            -
             
     | 
| 
       306 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       307 
     | 
    
         
            -
             
     | 
| 
       308 
     | 
    
         
            -
             
     | 
| 
       309 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       310 
     | 
    
         
            -
             
     | 
| 
       311 
     | 
    
         
            -
             
     | 
| 
       312 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       313 
     | 
    
         
            -
             
     | 
| 
       314 
     | 
    
         
            -
             
     | 
| 
       315 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       316 
     | 
    
         
            -
             
     | 
| 
       317 
     | 
    
         
            -
             
     | 
| 
       318 
     | 
    
         
            -
            UPB_INLINE bool  
     | 
| 
       319 
     | 
    
         
            -
             
     | 
| 
       320 
     | 
    
         
            -
             
     | 
| 
       321 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       322 
     | 
    
         
            -
             
     | 
| 
       323 
     | 
    
         
            -
             
     | 
| 
       324 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       325 
     | 
    
         
            -
             
     | 
| 
       326 
     | 
    
         
            -
             
     | 
| 
       327 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       328 
     | 
    
         
            -
             
     | 
| 
       329 
     | 
    
         
            -
             
     | 
| 
       330 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       331 
     | 
    
         
            -
             
     | 
| 
       332 
     | 
    
         
            -
             
     | 
| 
       333 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       334 
     | 
    
         
            -
             
     | 
| 
       335 
     | 
    
         
            -
             
     | 
| 
       336 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       337 
     | 
    
         
            -
             
     | 
| 
       338 
     | 
    
         
            -
             
     | 
| 
       339 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       340 
     | 
    
         
            -
             
     | 
| 
       341 
     | 
    
         
            -
             
     | 
| 
       342 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       343 
     | 
    
         
            -
             
     | 
| 
       344 
     | 
    
         
            -
             
     | 
| 
       345 
     | 
    
         
            -
            UPB_INLINE bool  
     | 
| 
       346 
     | 
    
         
            -
             
     | 
| 
       347 
     | 
    
         
            -
             
     | 
| 
       348 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       349 
     | 
    
         
            -
             
     | 
| 
       350 
     | 
    
         
            -
             
     | 
| 
       351 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       352 
     | 
    
         
            -
             
     | 
| 
       353 
     | 
    
         
            -
             
     | 
| 
       354 
     | 
    
         
            -
            UPB_INLINE bool  
     | 
| 
       355 
     | 
    
         
            -
             
     | 
| 
       356 
     | 
    
         
            -
             
     | 
| 
       357 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       358 
     | 
    
         
            -
             
     | 
| 
       359 
     | 
    
         
            -
             
     | 
| 
       360 
     | 
    
         
            -
             
     | 
| 
       361 
     | 
    
         
            -
             
     | 
| 
       362 
     | 
    
         
            -
             
     | 
| 
      
 309 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_lb_config_oneofcases envoy_config_cluster_v3_Cluster_lb_config_case(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 310 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_lb_config_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(28, 28), int32_t);
         
     | 
| 
      
 311 
     | 
    
         
            +
            }
         
     | 
| 
      
 312 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_name(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 313 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(40, 32), upb_StringView) = upb_StringView_FromDataAndSize(NULL, 0);
         
     | 
| 
      
 314 
     | 
    
         
            +
            }
         
     | 
| 
      
 315 
     | 
    
         
            +
            UPB_INLINE upb_StringView envoy_config_cluster_v3_Cluster_name(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 316 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(40, 32), upb_StringView);
         
     | 
| 
      
 317 
     | 
    
         
            +
            }
         
     | 
| 
      
 318 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_type(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 319 
     | 
    
         
            +
              return _upb_getoneofcase(msg, UPB_SIZE(20, 20)) == 2;
         
     | 
| 
      
 320 
     | 
    
         
            +
            }
         
     | 
| 
      
 321 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_type(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 322 
     | 
    
         
            +
              UPB_WRITE_ONEOF(msg, int32_t, UPB_SIZE(32, 328), 0, UPB_SIZE(20, 20), envoy_config_cluster_v3_Cluster_cluster_discovery_type_NOT_SET);
         
     | 
| 
      
 323 
     | 
    
         
            +
            }
         
     | 
| 
      
 324 
     | 
    
         
            +
            UPB_INLINE int32_t envoy_config_cluster_v3_Cluster_type(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 325 
     | 
    
         
            +
              return UPB_READ_ONEOF(msg, int32_t, UPB_SIZE(32, 328), UPB_SIZE(20, 20), 2, 0);
         
     | 
| 
      
 326 
     | 
    
         
            +
            }
         
     | 
| 
      
 327 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_eds_cluster_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 328 
     | 
    
         
            +
              return _upb_hasbit(msg, 1);
         
     | 
| 
      
 329 
     | 
    
         
            +
            }
         
     | 
| 
      
 330 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_eds_cluster_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 331 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(48, 48), const upb_Message*) = NULL;
         
     | 
| 
      
 332 
     | 
    
         
            +
            }
         
     | 
| 
      
 333 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_Cluster_EdsClusterConfig* envoy_config_cluster_v3_Cluster_eds_cluster_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 334 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(48, 48), const envoy_config_cluster_v3_Cluster_EdsClusterConfig*);
         
     | 
| 
      
 335 
     | 
    
         
            +
            }
         
     | 
| 
      
 336 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_connect_timeout(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 337 
     | 
    
         
            +
              return _upb_hasbit(msg, 2);
         
     | 
| 
      
 338 
     | 
    
         
            +
            }
         
     | 
| 
      
 339 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_connect_timeout(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 340 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(52, 56), const upb_Message*) = NULL;
         
     | 
| 
      
 341 
     | 
    
         
            +
            }
         
     | 
| 
      
 342 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_connect_timeout(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 343 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(52, 56), const struct google_protobuf_Duration*);
         
     | 
| 
      
 344 
     | 
    
         
            +
            }
         
     | 
| 
      
 345 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_per_connection_buffer_limit_bytes(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 346 
     | 
    
         
            +
              return _upb_hasbit(msg, 3);
         
     | 
| 
      
 347 
     | 
    
         
            +
            }
         
     | 
| 
      
 348 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_per_connection_buffer_limit_bytes(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 349 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(56, 64), const upb_Message*) = NULL;
         
     | 
| 
      
 350 
     | 
    
         
            +
            }
         
     | 
| 
      
 351 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_UInt32Value* envoy_config_cluster_v3_Cluster_per_connection_buffer_limit_bytes(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 352 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(56, 64), const struct google_protobuf_UInt32Value*);
         
     | 
| 
      
 353 
     | 
    
         
            +
            }
         
     | 
| 
      
 354 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_lb_policy(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 355 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t) = 0;
         
     | 
| 
      
 356 
     | 
    
         
            +
            }
         
     | 
| 
      
 357 
     | 
    
         
            +
            UPB_INLINE int32_t envoy_config_cluster_v3_Cluster_lb_policy(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 358 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t);
         
     | 
| 
      
 359 
     | 
    
         
            +
            }
         
     | 
| 
      
 360 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_health_checks(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 361 
     | 
    
         
            +
              return _upb_has_submsg_nohasbit(msg, UPB_SIZE(60, 72));
         
     | 
| 
      
 362 
     | 
    
         
            +
            }
         
     | 
| 
      
 363 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_health_checks(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 364 
     | 
    
         
            +
              _upb_array_detach(msg, UPB_SIZE(60, 72));
         
     | 
| 
      
 365 
     | 
    
         
            +
            }
         
     | 
| 
      
 366 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_HealthCheck* const* envoy_config_cluster_v3_Cluster_health_checks(const envoy_config_cluster_v3_Cluster* msg, size_t* len) {
         
     | 
| 
      
 367 
     | 
    
         
            +
              return (const struct envoy_config_core_v3_HealthCheck* const*)_upb_array_accessor(msg, UPB_SIZE(60, 72), len);
         
     | 
| 
      
 368 
     | 
    
         
            +
            }
         
     | 
| 
      
 369 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_max_requests_per_connection(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 370 
     | 
    
         
            +
              return _upb_hasbit(msg, 4);
         
     | 
| 
      
 371 
     | 
    
         
            +
            }
         
     | 
| 
      
 372 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_max_requests_per_connection(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 373 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(64, 80), const upb_Message*) = NULL;
         
     | 
| 
      
 374 
     | 
    
         
            +
            }
         
     | 
| 
      
 375 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_UInt32Value* envoy_config_cluster_v3_Cluster_max_requests_per_connection(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 376 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(64, 80), const struct google_protobuf_UInt32Value*);
         
     | 
| 
      
 377 
     | 
    
         
            +
            }
         
     | 
| 
      
 378 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_circuit_breakers(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 379 
     | 
    
         
            +
              return _upb_hasbit(msg, 5);
         
     | 
| 
      
 380 
     | 
    
         
            +
            }
         
     | 
| 
      
 381 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_circuit_breakers(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 382 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(68, 88), const upb_Message*) = NULL;
         
     | 
| 
      
 383 
     | 
    
         
            +
            }
         
     | 
| 
      
 384 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_cluster_v3_CircuitBreakers* envoy_config_cluster_v3_Cluster_circuit_breakers(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 385 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(68, 88), const struct envoy_config_cluster_v3_CircuitBreakers*);
         
     | 
| 
      
 386 
     | 
    
         
            +
            }
         
     | 
| 
      
 387 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_http_protocol_options(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 388 
     | 
    
         
            +
              return _upb_hasbit(msg, 6);
         
     | 
| 
      
 389 
     | 
    
         
            +
            }
         
     | 
| 
      
 390 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_http_protocol_options(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 391 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(72, 96), const upb_Message*) = NULL;
         
     | 
| 
      
 392 
     | 
    
         
            +
            }
         
     | 
| 
      
 393 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_Http1ProtocolOptions* envoy_config_cluster_v3_Cluster_http_protocol_options(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 394 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(72, 96), const struct envoy_config_core_v3_Http1ProtocolOptions*);
         
     | 
| 
      
 395 
     | 
    
         
            +
            }
         
     | 
| 
      
 396 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_http2_protocol_options(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 397 
     | 
    
         
            +
              return _upb_hasbit(msg, 7);
         
     | 
| 
      
 398 
     | 
    
         
            +
            }
         
     | 
| 
      
 399 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_http2_protocol_options(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 400 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(76, 104), const upb_Message*) = NULL;
         
     | 
| 
      
 401 
     | 
    
         
            +
            }
         
     | 
| 
      
 402 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_Http2ProtocolOptions* envoy_config_cluster_v3_Cluster_http2_protocol_options(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 403 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(76, 104), const struct envoy_config_core_v3_Http2ProtocolOptions*);
         
     | 
| 
      
 404 
     | 
    
         
            +
            }
         
     | 
| 
      
 405 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_dns_refresh_rate(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 406 
     | 
    
         
            +
              return _upb_hasbit(msg, 8);
         
     | 
| 
      
 407 
     | 
    
         
            +
            }
         
     | 
| 
      
 408 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_dns_refresh_rate(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 409 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(80, 112), const upb_Message*) = NULL;
         
     | 
| 
      
 410 
     | 
    
         
            +
            }
         
     | 
| 
      
 411 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_dns_refresh_rate(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 412 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(80, 112), const struct google_protobuf_Duration*);
         
     | 
| 
      
 413 
     | 
    
         
            +
            }
         
     | 
| 
      
 414 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_dns_lookup_family(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 415 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(8, 8), int32_t) = 0;
         
     | 
| 
      
 416 
     | 
    
         
            +
            }
         
     | 
| 
      
 417 
     | 
    
         
            +
            UPB_INLINE int32_t envoy_config_cluster_v3_Cluster_dns_lookup_family(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 418 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), int32_t);
         
     | 
| 
      
 419 
     | 
    
         
            +
            }
         
     | 
| 
      
 420 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_dns_resolvers(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 421 
     | 
    
         
            +
              return _upb_has_submsg_nohasbit(msg, UPB_SIZE(84, 120));
         
     | 
| 
      
 422 
     | 
    
         
            +
            }
         
     | 
| 
      
 423 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_dns_resolvers(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 424 
     | 
    
         
            +
              _upb_array_detach(msg, UPB_SIZE(84, 120));
         
     | 
| 
      
 425 
     | 
    
         
            +
            }
         
     | 
| 
      
 426 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_Address* const* envoy_config_cluster_v3_Cluster_dns_resolvers(const envoy_config_cluster_v3_Cluster* msg, size_t* len) {
         
     | 
| 
      
 427 
     | 
    
         
            +
              return (const struct envoy_config_core_v3_Address* const*)_upb_array_accessor(msg, UPB_SIZE(84, 120), len);
         
     | 
| 
      
 428 
     | 
    
         
            +
            }
         
     | 
| 
      
 429 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_outlier_detection(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 430 
     | 
    
         
            +
              return _upb_hasbit(msg, 9);
         
     | 
| 
      
 431 
     | 
    
         
            +
            }
         
     | 
| 
      
 432 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_outlier_detection(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 433 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(88, 128), const upb_Message*) = NULL;
         
     | 
| 
      
 434 
     | 
    
         
            +
            }
         
     | 
| 
      
 435 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_cluster_v3_OutlierDetection* envoy_config_cluster_v3_Cluster_outlier_detection(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 436 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(88, 128), const struct envoy_config_cluster_v3_OutlierDetection*);
         
     | 
| 
      
 437 
     | 
    
         
            +
            }
         
     | 
| 
      
 438 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_cleanup_interval(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 439 
     | 
    
         
            +
              return _upb_hasbit(msg, 10);
         
     | 
| 
      
 440 
     | 
    
         
            +
            }
         
     | 
| 
      
 441 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_cleanup_interval(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 442 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(92, 136), const upb_Message*) = NULL;
         
     | 
| 
      
 443 
     | 
    
         
            +
            }
         
     | 
| 
      
 444 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_cleanup_interval(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 445 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(92, 136), const struct google_protobuf_Duration*);
         
     | 
| 
      
 446 
     | 
    
         
            +
            }
         
     | 
| 
      
 447 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_upstream_bind_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 448 
     | 
    
         
            +
              return _upb_hasbit(msg, 11);
         
     | 
| 
      
 449 
     | 
    
         
            +
            }
         
     | 
| 
      
 450 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_upstream_bind_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 451 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(96, 144), const upb_Message*) = NULL;
         
     | 
| 
      
 452 
     | 
    
         
            +
            }
         
     | 
| 
      
 453 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_BindConfig* envoy_config_cluster_v3_Cluster_upstream_bind_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 454 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(96, 144), const struct envoy_config_core_v3_BindConfig*);
         
     | 
| 
      
 455 
     | 
    
         
            +
            }
         
     | 
| 
      
 456 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_lb_subset_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 457 
     | 
    
         
            +
              return _upb_hasbit(msg, 12);
         
     | 
| 
      
 458 
     | 
    
         
            +
            }
         
     | 
| 
      
 459 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_lb_subset_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 460 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(100, 152), const upb_Message*) = NULL;
         
     | 
| 
      
 461 
     | 
    
         
            +
            }
         
     | 
| 
      
 462 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_Cluster_LbSubsetConfig* envoy_config_cluster_v3_Cluster_lb_subset_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 463 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(100, 152), const envoy_config_cluster_v3_Cluster_LbSubsetConfig*);
         
     | 
| 
      
 464 
     | 
    
         
            +
            }
         
     | 
| 
      
 465 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_ring_hash_lb_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 466 
     | 
    
         
            +
              return _upb_getoneofcase(msg, UPB_SIZE(28, 28)) == 23;
         
     | 
| 
      
 467 
     | 
    
         
            +
            }
         
     | 
| 
      
 468 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_ring_hash_lb_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 469 
     | 
    
         
            +
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_RingHashLbConfig*, UPB_SIZE(36, 336), 0, UPB_SIZE(28, 28), envoy_config_cluster_v3_Cluster_lb_config_NOT_SET);
         
     | 
| 
      
 470 
     | 
    
         
            +
            }
         
     | 
| 
      
 471 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_Cluster_RingHashLbConfig* envoy_config_cluster_v3_Cluster_ring_hash_lb_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 472 
     | 
    
         
            +
              return UPB_READ_ONEOF(msg, const envoy_config_cluster_v3_Cluster_RingHashLbConfig*, UPB_SIZE(36, 336), UPB_SIZE(28, 28), 23, NULL);
         
     | 
| 
      
 473 
     | 
    
         
            +
            }
         
     | 
| 
      
 474 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_transport_socket(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 475 
     | 
    
         
            +
              return _upb_hasbit(msg, 13);
         
     | 
| 
      
 476 
     | 
    
         
            +
            }
         
     | 
| 
      
 477 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_transport_socket(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 478 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(104, 160), const upb_Message*) = NULL;
         
     | 
| 
      
 479 
     | 
    
         
            +
            }
         
     | 
| 
      
 480 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_TransportSocket* envoy_config_cluster_v3_Cluster_transport_socket(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 481 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(104, 160), const struct envoy_config_core_v3_TransportSocket*);
         
     | 
| 
      
 482 
     | 
    
         
            +
            }
         
     | 
| 
      
 483 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_metadata(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 484 
     | 
    
         
            +
              return _upb_hasbit(msg, 14);
         
     | 
| 
      
 485 
     | 
    
         
            +
            }
         
     | 
| 
      
 486 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_metadata(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 487 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(108, 168), const upb_Message*) = NULL;
         
     | 
| 
      
 488 
     | 
    
         
            +
            }
         
     | 
| 
      
 489 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_Metadata* envoy_config_cluster_v3_Cluster_metadata(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 490 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(108, 168), const struct envoy_config_core_v3_Metadata*);
         
     | 
| 
      
 491 
     | 
    
         
            +
            }
         
     | 
| 
      
 492 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_protocol_selection(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 493 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(12, 12), int32_t) = 0;
         
     | 
| 
      
 494 
     | 
    
         
            +
            }
         
     | 
| 
      
 495 
     | 
    
         
            +
            UPB_INLINE int32_t envoy_config_cluster_v3_Cluster_protocol_selection(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 496 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(12, 12), int32_t);
         
     | 
| 
      
 497 
     | 
    
         
            +
            }
         
     | 
| 
      
 498 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_common_lb_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 499 
     | 
    
         
            +
              return _upb_hasbit(msg, 15);
         
     | 
| 
      
 500 
     | 
    
         
            +
            }
         
     | 
| 
      
 501 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_common_lb_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 502 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(112, 176), const upb_Message*) = NULL;
         
     | 
| 
      
 503 
     | 
    
         
            +
            }
         
     | 
| 
      
 504 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_Cluster_CommonLbConfig* envoy_config_cluster_v3_Cluster_common_lb_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 505 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(112, 176), const envoy_config_cluster_v3_Cluster_CommonLbConfig*);
         
     | 
| 
      
 506 
     | 
    
         
            +
            }
         
     | 
| 
      
 507 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_alt_stat_name(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 508 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(116, 184), upb_StringView) = upb_StringView_FromDataAndSize(NULL, 0);
         
     | 
| 
      
 509 
     | 
    
         
            +
            }
         
     | 
| 
      
 510 
     | 
    
         
            +
            UPB_INLINE upb_StringView envoy_config_cluster_v3_Cluster_alt_stat_name(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 511 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(116, 184), upb_StringView);
         
     | 
| 
      
 512 
     | 
    
         
            +
            }
         
     | 
| 
      
 513 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_common_http_protocol_options(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 514 
     | 
    
         
            +
              return _upb_hasbit(msg, 16);
         
     | 
| 
      
 515 
     | 
    
         
            +
            }
         
     | 
| 
      
 516 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_common_http_protocol_options(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 517 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(124, 200), const upb_Message*) = NULL;
         
     | 
| 
      
 518 
     | 
    
         
            +
            }
         
     | 
| 
      
 519 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_HttpProtocolOptions* envoy_config_cluster_v3_Cluster_common_http_protocol_options(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 520 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(124, 200), const struct envoy_config_core_v3_HttpProtocolOptions*);
         
     | 
| 
      
 521 
     | 
    
         
            +
            }
         
     | 
| 
      
 522 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_upstream_connection_options(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 523 
     | 
    
         
            +
              return _upb_hasbit(msg, 17);
         
     | 
| 
      
 524 
     | 
    
         
            +
            }
         
     | 
| 
      
 525 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_upstream_connection_options(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 526 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(128, 208), const upb_Message*) = NULL;
         
     | 
| 
      
 527 
     | 
    
         
            +
            }
         
     | 
| 
      
 528 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_UpstreamConnectionOptions* envoy_config_cluster_v3_Cluster_upstream_connection_options(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 529 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(128, 208), const envoy_config_cluster_v3_UpstreamConnectionOptions*);
         
     | 
| 
      
 530 
     | 
    
         
            +
            }
         
     | 
| 
      
 531 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_close_connections_on_host_health_failure(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 532 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(16, 16), bool) = 0;
         
     | 
| 
      
 533 
     | 
    
         
            +
            }
         
     | 
| 
      
 534 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_close_connections_on_host_health_failure(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 535 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(16, 16), bool);
         
     | 
| 
      
 536 
     | 
    
         
            +
            }
         
     | 
| 
      
 537 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_ignore_health_on_host_removal(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 538 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(17, 17), bool) = 0;
         
     | 
| 
      
 539 
     | 
    
         
            +
            }
         
     | 
| 
      
 540 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_ignore_health_on_host_removal(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 541 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(17, 17), bool);
         
     | 
| 
      
 542 
     | 
    
         
            +
            }
         
     | 
| 
      
 543 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_load_assignment(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 544 
     | 
    
         
            +
              return _upb_hasbit(msg, 18);
         
     | 
| 
      
 545 
     | 
    
         
            +
            }
         
     | 
| 
      
 546 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_load_assignment(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 547 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(132, 216), const upb_Message*) = NULL;
         
     | 
| 
      
 548 
     | 
    
         
            +
            }
         
     | 
| 
      
 549 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_endpoint_v3_ClusterLoadAssignment* envoy_config_cluster_v3_Cluster_load_assignment(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 550 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(132, 216), const struct envoy_config_endpoint_v3_ClusterLoadAssignment*);
         
     | 
| 
      
 551 
     | 
    
         
            +
            }
         
     | 
| 
      
 552 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_original_dst_lb_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 553 
     | 
    
         
            +
              return _upb_getoneofcase(msg, UPB_SIZE(28, 28)) == 34;
         
     | 
| 
      
 554 
     | 
    
         
            +
            }
         
     | 
| 
      
 555 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_original_dst_lb_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 556 
     | 
    
         
            +
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_OriginalDstLbConfig*, UPB_SIZE(36, 336), 0, UPB_SIZE(28, 28), envoy_config_cluster_v3_Cluster_lb_config_NOT_SET);
         
     | 
| 
      
 557 
     | 
    
         
            +
            }
         
     | 
| 
      
 558 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_Cluster_OriginalDstLbConfig* envoy_config_cluster_v3_Cluster_original_dst_lb_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 559 
     | 
    
         
            +
              return UPB_READ_ONEOF(msg, const envoy_config_cluster_v3_Cluster_OriginalDstLbConfig*, UPB_SIZE(36, 336), UPB_SIZE(28, 28), 34, NULL);
         
     | 
| 
      
 560 
     | 
    
         
            +
            }
         
     | 
| 
      
 561 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_typed_extension_protocol_options(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 562 
     | 
    
         
            +
              return _upb_has_submsg_nohasbit(msg, UPB_SIZE(136, 224));
         
     | 
| 
      
 563 
     | 
    
         
            +
            }
         
     | 
| 
      
 564 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_typed_extension_protocol_options(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 565 
     | 
    
         
            +
              _upb_array_detach(msg, UPB_SIZE(136, 224));
         
     | 
| 
      
 566 
     | 
    
         
            +
            }
         
     | 
| 
      
 567 
     | 
    
         
            +
            UPB_INLINE size_t envoy_config_cluster_v3_Cluster_typed_extension_protocol_options_size(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 568 
     | 
    
         
            +
              return _upb_msg_map_size(msg, UPB_SIZE(136, 224));
         
     | 
| 
      
 569 
     | 
    
         
            +
            }
         
     | 
| 
      
 570 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_typed_extension_protocol_options_get(const envoy_config_cluster_v3_Cluster* msg, upb_StringView key, struct google_protobuf_Any** val) {
         
     | 
| 
      
 571 
     | 
    
         
            +
              return _upb_msg_map_get(msg, UPB_SIZE(136, 224), &key, 0, val, sizeof(*val));
         
     | 
| 
      
 572 
     | 
    
         
            +
            }
         
     | 
| 
      
 573 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_Cluster_TypedExtensionProtocolOptionsEntry* envoy_config_cluster_v3_Cluster_typed_extension_protocol_options_next(const envoy_config_cluster_v3_Cluster* msg, size_t* iter) {
         
     | 
| 
      
 574 
     | 
    
         
            +
              return (const envoy_config_cluster_v3_Cluster_TypedExtensionProtocolOptionsEntry*)_upb_msg_map_next(msg, UPB_SIZE(136, 224), iter);
         
     | 
| 
      
 575 
     | 
    
         
            +
            }
         
     | 
| 
      
 576 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_least_request_lb_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 577 
     | 
    
         
            +
              return _upb_getoneofcase(msg, UPB_SIZE(28, 28)) == 37;
         
     | 
| 
      
 578 
     | 
    
         
            +
            }
         
     | 
| 
      
 579 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_least_request_lb_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 580 
     | 
    
         
            +
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_LeastRequestLbConfig*, UPB_SIZE(36, 336), 0, UPB_SIZE(28, 28), envoy_config_cluster_v3_Cluster_lb_config_NOT_SET);
         
     | 
| 
      
 581 
     | 
    
         
            +
            }
         
     | 
| 
      
 582 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* envoy_config_cluster_v3_Cluster_least_request_lb_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 583 
     | 
    
         
            +
              return UPB_READ_ONEOF(msg, const envoy_config_cluster_v3_Cluster_LeastRequestLbConfig*, UPB_SIZE(36, 336), UPB_SIZE(28, 28), 37, NULL);
         
     | 
| 
      
 584 
     | 
    
         
            +
            }
         
     | 
| 
      
 585 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_cluster_type(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 586 
     | 
    
         
            +
              return _upb_getoneofcase(msg, UPB_SIZE(20, 20)) == 38;
         
     | 
| 
      
 587 
     | 
    
         
            +
            }
         
     | 
| 
      
 588 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_cluster_type(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 589 
     | 
    
         
            +
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_CustomClusterType*, UPB_SIZE(32, 328), 0, UPB_SIZE(20, 20), envoy_config_cluster_v3_Cluster_cluster_discovery_type_NOT_SET);
         
     | 
| 
      
 590 
     | 
    
         
            +
            }
         
     | 
| 
      
 591 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_Cluster_CustomClusterType* envoy_config_cluster_v3_Cluster_cluster_type(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 592 
     | 
    
         
            +
              return UPB_READ_ONEOF(msg, const envoy_config_cluster_v3_Cluster_CustomClusterType*, UPB_SIZE(32, 328), UPB_SIZE(20, 20), 38, NULL);
         
     | 
| 
      
 593 
     | 
    
         
            +
            }
         
     | 
| 
      
 594 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_respect_dns_ttl(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 595 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(24, 24), bool) = 0;
         
     | 
| 
      
 596 
     | 
    
         
            +
            }
         
     | 
| 
      
 597 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_respect_dns_ttl(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 598 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(24, 24), bool);
         
     | 
| 
      
 599 
     | 
    
         
            +
            }
         
     | 
| 
      
 600 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_filters(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 601 
     | 
    
         
            +
              return _upb_has_submsg_nohasbit(msg, UPB_SIZE(140, 232));
         
     | 
| 
      
 602 
     | 
    
         
            +
            }
         
     | 
| 
      
 603 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_filters(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 604 
     | 
    
         
            +
              _upb_array_detach(msg, UPB_SIZE(140, 232));
         
     | 
| 
      
 605 
     | 
    
         
            +
            }
         
     | 
| 
      
 606 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_cluster_v3_Filter* const* envoy_config_cluster_v3_Cluster_filters(const envoy_config_cluster_v3_Cluster* msg, size_t* len) {
         
     | 
| 
      
 607 
     | 
    
         
            +
              return (const struct envoy_config_cluster_v3_Filter* const*)_upb_array_accessor(msg, UPB_SIZE(140, 232), len);
         
     | 
| 
      
 608 
     | 
    
         
            +
            }
         
     | 
| 
      
 609 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_load_balancing_policy(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 610 
     | 
    
         
            +
              return _upb_hasbit(msg, 19);
         
     | 
| 
      
 611 
     | 
    
         
            +
            }
         
     | 
| 
      
 612 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_load_balancing_policy(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 613 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(144, 240), const upb_Message*) = NULL;
         
     | 
| 
      
 614 
     | 
    
         
            +
            }
         
     | 
| 
      
 615 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_LoadBalancingPolicy* envoy_config_cluster_v3_Cluster_load_balancing_policy(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 616 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(144, 240), const envoy_config_cluster_v3_LoadBalancingPolicy*);
         
     | 
| 
      
 617 
     | 
    
         
            +
            }
         
     | 
| 
      
 618 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_lrs_server(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 619 
     | 
    
         
            +
              return _upb_hasbit(msg, 20);
         
     | 
| 
      
 620 
     | 
    
         
            +
            }
         
     | 
| 
      
 621 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_lrs_server(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 622 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(148, 248), const upb_Message*) = NULL;
         
     | 
| 
      
 623 
     | 
    
         
            +
            }
         
     | 
| 
      
 624 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_ConfigSource* envoy_config_cluster_v3_Cluster_lrs_server(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 625 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(148, 248), const struct envoy_config_core_v3_ConfigSource*);
         
     | 
| 
      
 626 
     | 
    
         
            +
            }
         
     | 
| 
      
 627 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_transport_socket_matches(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 628 
     | 
    
         
            +
              return _upb_has_submsg_nohasbit(msg, UPB_SIZE(152, 256));
         
     | 
| 
      
 629 
     | 
    
         
            +
            }
         
     | 
| 
      
 630 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_transport_socket_matches(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 631 
     | 
    
         
            +
              _upb_array_detach(msg, UPB_SIZE(152, 256));
         
     | 
| 
      
 632 
     | 
    
         
            +
            }
         
     | 
| 
      
 633 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_Cluster_TransportSocketMatch* const* envoy_config_cluster_v3_Cluster_transport_socket_matches(const envoy_config_cluster_v3_Cluster* msg, size_t* len) {
         
     | 
| 
      
 634 
     | 
    
         
            +
              return (const envoy_config_cluster_v3_Cluster_TransportSocketMatch* const*)_upb_array_accessor(msg, UPB_SIZE(152, 256), len);
         
     | 
| 
      
 635 
     | 
    
         
            +
            }
         
     | 
| 
      
 636 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_dns_failure_refresh_rate(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 637 
     | 
    
         
            +
              return _upb_hasbit(msg, 21);
         
     | 
| 
      
 638 
     | 
    
         
            +
            }
         
     | 
| 
      
 639 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_dns_failure_refresh_rate(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 640 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(156, 264), const upb_Message*) = NULL;
         
     | 
| 
      
 641 
     | 
    
         
            +
            }
         
     | 
| 
      
 642 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_Cluster_RefreshRate* envoy_config_cluster_v3_Cluster_dns_failure_refresh_rate(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 643 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(156, 264), const envoy_config_cluster_v3_Cluster_RefreshRate*);
         
     | 
| 
      
 644 
     | 
    
         
            +
            }
         
     | 
| 
      
 645 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_use_tcp_for_dns_lookups(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 646 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(25, 25), bool) = 0;
         
     | 
| 
      
 647 
     | 
    
         
            +
            }
         
     | 
| 
      
 648 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_use_tcp_for_dns_lookups(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 649 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(25, 25), bool);
         
     | 
| 
      
 650 
     | 
    
         
            +
            }
         
     | 
| 
      
 651 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_upstream_http_protocol_options(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 652 
     | 
    
         
            +
              return _upb_hasbit(msg, 22);
         
     | 
| 
      
 653 
     | 
    
         
            +
            }
         
     | 
| 
      
 654 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_upstream_http_protocol_options(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 655 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(160, 272), const upb_Message*) = NULL;
         
     | 
| 
      
 656 
     | 
    
         
            +
            }
         
     | 
| 
      
 657 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_UpstreamHttpProtocolOptions* envoy_config_cluster_v3_Cluster_upstream_http_protocol_options(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 658 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(160, 272), const struct envoy_config_core_v3_UpstreamHttpProtocolOptions*);
         
     | 
| 
      
 659 
     | 
    
         
            +
            }
         
     | 
| 
      
 660 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_track_timeout_budgets(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 661 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(26, 26), bool) = 0;
         
     | 
| 
      
 662 
     | 
    
         
            +
            }
         
     | 
| 
      
 663 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_track_timeout_budgets(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 664 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(26, 26), bool);
         
     | 
| 
      
 665 
     | 
    
         
            +
            }
         
     | 
| 
      
 666 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_upstream_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 667 
     | 
    
         
            +
              return _upb_hasbit(msg, 23);
         
     | 
| 
      
 668 
     | 
    
         
            +
            }
         
     | 
| 
      
 669 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_upstream_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 670 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(164, 280), const upb_Message*) = NULL;
         
     | 
| 
      
 671 
     | 
    
         
            +
            }
         
     | 
| 
      
 672 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_TypedExtensionConfig* envoy_config_cluster_v3_Cluster_upstream_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 673 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(164, 280), const struct envoy_config_core_v3_TypedExtensionConfig*);
         
     | 
| 
      
 674 
     | 
    
         
            +
            }
         
     | 
| 
      
 675 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_track_cluster_stats(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 676 
     | 
    
         
            +
              return _upb_hasbit(msg, 24);
         
     | 
| 
      
 677 
     | 
    
         
            +
            }
         
     | 
| 
      
 678 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_track_cluster_stats(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 679 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(168, 288), const upb_Message*) = NULL;
         
     | 
| 
      
 680 
     | 
    
         
            +
            }
         
     | 
| 
      
 681 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_TrackClusterStats* envoy_config_cluster_v3_Cluster_track_cluster_stats(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 682 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(168, 288), const envoy_config_cluster_v3_TrackClusterStats*);
         
     | 
| 
      
 683 
     | 
    
         
            +
            }
         
     | 
| 
      
 684 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_preconnect_policy(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 685 
     | 
    
         
            +
              return _upb_hasbit(msg, 25);
         
     | 
| 
      
 686 
     | 
    
         
            +
            }
         
     | 
| 
      
 687 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_preconnect_policy(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 688 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(172, 296), const upb_Message*) = NULL;
         
     | 
| 
      
 689 
     | 
    
         
            +
            }
         
     | 
| 
      
 690 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_Cluster_PreconnectPolicy* envoy_config_cluster_v3_Cluster_preconnect_policy(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 691 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(172, 296), const envoy_config_cluster_v3_Cluster_PreconnectPolicy*);
         
     | 
| 
      
 692 
     | 
    
         
            +
            }
         
     | 
| 
      
 693 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_connection_pool_per_downstream_connection(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 694 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(27, 27), bool) = 0;
         
     | 
| 
      
 695 
     | 
    
         
            +
            }
         
     | 
| 
      
 696 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_connection_pool_per_downstream_connection(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 697 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(27, 27), bool);
         
     | 
| 
      
 698 
     | 
    
         
            +
            }
         
     | 
| 
      
 699 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_maglev_lb_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 700 
     | 
    
         
            +
              return _upb_getoneofcase(msg, UPB_SIZE(28, 28)) == 52;
         
     | 
| 
      
 701 
     | 
    
         
            +
            }
         
     | 
| 
      
 702 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_maglev_lb_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 703 
     | 
    
         
            +
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_MaglevLbConfig*, UPB_SIZE(36, 336), 0, UPB_SIZE(28, 28), envoy_config_cluster_v3_Cluster_lb_config_NOT_SET);
         
     | 
| 
      
 704 
     | 
    
         
            +
            }
         
     | 
| 
      
 705 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_Cluster_MaglevLbConfig* envoy_config_cluster_v3_Cluster_maglev_lb_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 706 
     | 
    
         
            +
              return UPB_READ_ONEOF(msg, const envoy_config_cluster_v3_Cluster_MaglevLbConfig*, UPB_SIZE(36, 336), UPB_SIZE(28, 28), 52, NULL);
         
     | 
| 
      
 707 
     | 
    
         
            +
            }
         
     | 
| 
      
 708 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_dns_resolution_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 709 
     | 
    
         
            +
              return _upb_hasbit(msg, 26);
         
     | 
| 
      
 710 
     | 
    
         
            +
            }
         
     | 
| 
      
 711 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_dns_resolution_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 712 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(176, 304), const upb_Message*) = NULL;
         
     | 
| 
      
 713 
     | 
    
         
            +
            }
         
     | 
| 
      
 714 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_DnsResolutionConfig* envoy_config_cluster_v3_Cluster_dns_resolution_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 715 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(176, 304), const struct envoy_config_core_v3_DnsResolutionConfig*);
         
     | 
| 
      
 716 
     | 
    
         
            +
            }
         
     | 
| 
      
 717 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_wait_for_warm_on_init(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 718 
     | 
    
         
            +
              return _upb_hasbit(msg, 27);
         
     | 
| 
      
 719 
     | 
    
         
            +
            }
         
     | 
| 
      
 720 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_wait_for_warm_on_init(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 721 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(180, 312), const upb_Message*) = NULL;
         
     | 
| 
      
 722 
     | 
    
         
            +
            }
         
     | 
| 
      
 723 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_BoolValue* envoy_config_cluster_v3_Cluster_wait_for_warm_on_init(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 724 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(180, 312), const struct google_protobuf_BoolValue*);
         
     | 
| 
      
 725 
     | 
    
         
            +
            }
         
     | 
| 
      
 726 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_typed_dns_resolver_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 727 
     | 
    
         
            +
              return _upb_hasbit(msg, 28);
         
     | 
| 
      
 728 
     | 
    
         
            +
            }
         
     | 
| 
      
 729 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_typed_dns_resolver_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 730 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(184, 320), const upb_Message*) = NULL;
         
     | 
| 
      
 731 
     | 
    
         
            +
            }
         
     | 
| 
      
 732 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_TypedExtensionConfig* envoy_config_cluster_v3_Cluster_typed_dns_resolver_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 733 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(184, 320), const struct envoy_config_core_v3_TypedExtensionConfig*);
         
     | 
| 
      
 734 
     | 
    
         
            +
            }
         
     | 
| 
      
 735 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_has_round_robin_lb_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 736 
     | 
    
         
            +
              return _upb_getoneofcase(msg, UPB_SIZE(28, 28)) == 56;
         
     | 
| 
      
 737 
     | 
    
         
            +
            }
         
     | 
| 
      
 738 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_clear_round_robin_lb_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 739 
     | 
    
         
            +
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_RoundRobinLbConfig*, UPB_SIZE(36, 336), 0, UPB_SIZE(28, 28), envoy_config_cluster_v3_Cluster_lb_config_NOT_SET);
         
     | 
| 
      
 740 
     | 
    
         
            +
            }
         
     | 
| 
      
 741 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_Cluster_RoundRobinLbConfig* envoy_config_cluster_v3_Cluster_round_robin_lb_config(const envoy_config_cluster_v3_Cluster* msg) {
         
     | 
| 
      
 742 
     | 
    
         
            +
              return UPB_READ_ONEOF(msg, const envoy_config_cluster_v3_Cluster_RoundRobinLbConfig*, UPB_SIZE(36, 336), UPB_SIZE(28, 28), 56, NULL);
         
     | 
| 
      
 743 
     | 
    
         
            +
            }
         
     | 
| 
      
 744 
     | 
    
         
            +
             
     | 
| 
      
 745 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_name(envoy_config_cluster_v3_Cluster *msg, upb_StringView value) {
         
     | 
| 
      
 746 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(40, 32), upb_StringView) = value;
         
     | 
| 
       363 
747 
     | 
    
         
             
            }
         
     | 
| 
       364 
748 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_type(envoy_config_cluster_v3_Cluster *msg, int32_t value) {
         
     | 
| 
       365 
     | 
    
         
            -
              UPB_WRITE_ONEOF(msg, int32_t, UPB_SIZE( 
     | 
| 
      
 749 
     | 
    
         
            +
              UPB_WRITE_ONEOF(msg, int32_t, UPB_SIZE(32, 328), value, UPB_SIZE(20, 20), 2);
         
     | 
| 
       366 
750 
     | 
    
         
             
            }
         
     | 
| 
       367 
751 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_eds_cluster_config(envoy_config_cluster_v3_Cluster *msg, envoy_config_cluster_v3_Cluster_EdsClusterConfig* value) {
         
     | 
| 
       368 
752 
     | 
    
         
             
              _upb_sethas(msg, 1);
         
     | 
| 
       369 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 753 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(48, 48), envoy_config_cluster_v3_Cluster_EdsClusterConfig*) = value;
         
     | 
| 
       370 
754 
     | 
    
         
             
            }
         
     | 
| 
       371 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_EdsClusterConfig* envoy_config_cluster_v3_Cluster_mutable_eds_cluster_config(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 755 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_EdsClusterConfig* envoy_config_cluster_v3_Cluster_mutable_eds_cluster_config(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       372 
756 
     | 
    
         
             
              struct envoy_config_cluster_v3_Cluster_EdsClusterConfig* sub = (struct envoy_config_cluster_v3_Cluster_EdsClusterConfig*)envoy_config_cluster_v3_Cluster_eds_cluster_config(msg);
         
     | 
| 
       373 
757 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       374 
     | 
    
         
            -
                sub = (struct envoy_config_cluster_v3_Cluster_EdsClusterConfig*) 
     | 
| 
      
 758 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_Cluster_EdsClusterConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_EdsClusterConfig_msginit, arena);
         
     | 
| 
       375 
759 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       376 
760 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_eds_cluster_config(msg, sub);
         
     | 
| 
       377 
761 
     | 
    
         
             
              }
         
     | 
| 
         @@ -379,12 +763,12 @@ UPB_INLINE struct envoy_config_cluster_v3_Cluster_EdsClusterConfig* envoy_config 
     | 
|
| 
       379 
763 
     | 
    
         
             
            }
         
     | 
| 
       380 
764 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_connect_timeout(envoy_config_cluster_v3_Cluster *msg, struct google_protobuf_Duration* value) {
         
     | 
| 
       381 
765 
     | 
    
         
             
              _upb_sethas(msg, 2);
         
     | 
| 
       382 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 766 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(52, 56), struct google_protobuf_Duration*) = value;
         
     | 
| 
       383 
767 
     | 
    
         
             
            }
         
     | 
| 
       384 
     | 
    
         
            -
            UPB_INLINE struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_mutable_connect_timeout(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 768 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_mutable_connect_timeout(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       385 
769 
     | 
    
         
             
              struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_cluster_v3_Cluster_connect_timeout(msg);
         
     | 
| 
       386 
770 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       387 
     | 
    
         
            -
                sub = (struct google_protobuf_Duration*) 
     | 
| 
      
 771 
     | 
    
         
            +
                sub = (struct google_protobuf_Duration*)_upb_Message_New(&google_protobuf_Duration_msginit, arena);
         
     | 
| 
       388 
772 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       389 
773 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_connect_timeout(msg, sub);
         
     | 
| 
       390 
774 
     | 
    
         
             
              }
         
     | 
| 
         @@ -392,12 +776,12 @@ UPB_INLINE struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_muta 
     | 
|
| 
       392 
776 
     | 
    
         
             
            }
         
     | 
| 
       393 
777 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_per_connection_buffer_limit_bytes(envoy_config_cluster_v3_Cluster *msg, struct google_protobuf_UInt32Value* value) {
         
     | 
| 
       394 
778 
     | 
    
         
             
              _upb_sethas(msg, 3);
         
     | 
| 
       395 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 779 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(56, 64), struct google_protobuf_UInt32Value*) = value;
         
     | 
| 
       396 
780 
     | 
    
         
             
            }
         
     | 
| 
       397 
     | 
    
         
            -
            UPB_INLINE struct google_protobuf_UInt32Value* envoy_config_cluster_v3_Cluster_mutable_per_connection_buffer_limit_bytes(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 781 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_UInt32Value* envoy_config_cluster_v3_Cluster_mutable_per_connection_buffer_limit_bytes(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       398 
782 
     | 
    
         
             
              struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_config_cluster_v3_Cluster_per_connection_buffer_limit_bytes(msg);
         
     | 
| 
       399 
783 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       400 
     | 
    
         
            -
                sub = (struct google_protobuf_UInt32Value*) 
     | 
| 
      
 784 
     | 
    
         
            +
                sub = (struct google_protobuf_UInt32Value*)_upb_Message_New(&google_protobuf_UInt32Value_msginit, arena);
         
     | 
| 
       401 
785 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       402 
786 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_per_connection_buffer_limit_bytes(msg, sub);
         
     | 
| 
       403 
787 
     | 
    
         
             
              }
         
     | 
| 
         @@ -406,27 +790,26 @@ UPB_INLINE struct google_protobuf_UInt32Value* envoy_config_cluster_v3_Cluster_m 
     | 
|
| 
       406 
790 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_lb_policy(envoy_config_cluster_v3_Cluster *msg, int32_t value) {
         
     | 
| 
       407 
791 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t) = value;
         
     | 
| 
       408 
792 
     | 
    
         
             
            }
         
     | 
| 
       409 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_HealthCheck** envoy_config_cluster_v3_Cluster_mutable_health_checks(envoy_config_cluster_v3_Cluster  
     | 
| 
       410 
     | 
    
         
            -
              return (struct envoy_config_core_v3_HealthCheck**)_upb_array_mutable_accessor(msg, UPB_SIZE( 
     | 
| 
      
 793 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_HealthCheck** envoy_config_cluster_v3_Cluster_mutable_health_checks(envoy_config_cluster_v3_Cluster* msg, size_t* len) {
         
     | 
| 
      
 794 
     | 
    
         
            +
              return (struct envoy_config_core_v3_HealthCheck**)_upb_array_mutable_accessor(msg, UPB_SIZE(60, 72), len);
         
     | 
| 
       411 
795 
     | 
    
         
             
            }
         
     | 
| 
       412 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_HealthCheck** envoy_config_cluster_v3_Cluster_resize_health_checks(envoy_config_cluster_v3_Cluster  
     | 
| 
       413 
     | 
    
         
            -
              return (struct envoy_config_core_v3_HealthCheck**) 
     | 
| 
      
 796 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_HealthCheck** envoy_config_cluster_v3_Cluster_resize_health_checks(envoy_config_cluster_v3_Cluster* msg, size_t len, upb_Arena* arena) {
         
     | 
| 
      
 797 
     | 
    
         
            +
              return (struct envoy_config_core_v3_HealthCheck**)_upb_Array_Resize_accessor2(msg, UPB_SIZE(60, 72), len, UPB_SIZE(2, 3), arena);
         
     | 
| 
       414 
798 
     | 
    
         
             
            }
         
     | 
| 
       415 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_HealthCheck* envoy_config_cluster_v3_Cluster_add_health_checks(envoy_config_cluster_v3_Cluster  
     | 
| 
       416 
     | 
    
         
            -
              struct envoy_config_core_v3_HealthCheck* sub = (struct envoy_config_core_v3_HealthCheck*) 
     | 
| 
       417 
     | 
    
         
            -
              bool ok =  
     | 
| 
       418 
     | 
    
         
            -
                  msg, UPB_SIZE(152, 280), UPB_SIZE(2, 3), &sub, arena);
         
     | 
| 
      
 799 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_HealthCheck* envoy_config_cluster_v3_Cluster_add_health_checks(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
      
 800 
     | 
    
         
            +
              struct envoy_config_core_v3_HealthCheck* sub = (struct envoy_config_core_v3_HealthCheck*)_upb_Message_New(&envoy_config_core_v3_HealthCheck_msginit, arena);
         
     | 
| 
      
 801 
     | 
    
         
            +
              bool ok = _upb_Array_Append_accessor2(msg, UPB_SIZE(60, 72), UPB_SIZE(2, 3), &sub, arena);
         
     | 
| 
       419 
802 
     | 
    
         
             
              if (!ok) return NULL;
         
     | 
| 
       420 
803 
     | 
    
         
             
              return sub;
         
     | 
| 
       421 
804 
     | 
    
         
             
            }
         
     | 
| 
       422 
805 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_max_requests_per_connection(envoy_config_cluster_v3_Cluster *msg, struct google_protobuf_UInt32Value* value) {
         
     | 
| 
       423 
806 
     | 
    
         
             
              _upb_sethas(msg, 4);
         
     | 
| 
       424 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 807 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(64, 80), struct google_protobuf_UInt32Value*) = value;
         
     | 
| 
       425 
808 
     | 
    
         
             
            }
         
     | 
| 
       426 
     | 
    
         
            -
            UPB_INLINE struct google_protobuf_UInt32Value* envoy_config_cluster_v3_Cluster_mutable_max_requests_per_connection(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 809 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_UInt32Value* envoy_config_cluster_v3_Cluster_mutable_max_requests_per_connection(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       427 
810 
     | 
    
         
             
              struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_config_cluster_v3_Cluster_max_requests_per_connection(msg);
         
     | 
| 
       428 
811 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       429 
     | 
    
         
            -
                sub = (struct google_protobuf_UInt32Value*) 
     | 
| 
      
 812 
     | 
    
         
            +
                sub = (struct google_protobuf_UInt32Value*)_upb_Message_New(&google_protobuf_UInt32Value_msginit, arena);
         
     | 
| 
       430 
813 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       431 
814 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_max_requests_per_connection(msg, sub);
         
     | 
| 
       432 
815 
     | 
    
         
             
              }
         
     | 
| 
         @@ -434,12 +817,12 @@ UPB_INLINE struct google_protobuf_UInt32Value* envoy_config_cluster_v3_Cluster_m 
     | 
|
| 
       434 
817 
     | 
    
         
             
            }
         
     | 
| 
       435 
818 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_circuit_breakers(envoy_config_cluster_v3_Cluster *msg, struct envoy_config_cluster_v3_CircuitBreakers* value) {
         
     | 
| 
       436 
819 
     | 
    
         
             
              _upb_sethas(msg, 5);
         
     | 
| 
       437 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 820 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(68, 88), struct envoy_config_cluster_v3_CircuitBreakers*) = value;
         
     | 
| 
       438 
821 
     | 
    
         
             
            }
         
     | 
| 
       439 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_CircuitBreakers* envoy_config_cluster_v3_Cluster_mutable_circuit_breakers(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 822 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_CircuitBreakers* envoy_config_cluster_v3_Cluster_mutable_circuit_breakers(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       440 
823 
     | 
    
         
             
              struct envoy_config_cluster_v3_CircuitBreakers* sub = (struct envoy_config_cluster_v3_CircuitBreakers*)envoy_config_cluster_v3_Cluster_circuit_breakers(msg);
         
     | 
| 
       441 
824 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       442 
     | 
    
         
            -
                sub = (struct envoy_config_cluster_v3_CircuitBreakers*) 
     | 
| 
      
 825 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_CircuitBreakers*)_upb_Message_New(&envoy_config_cluster_v3_CircuitBreakers_msginit, arena);
         
     | 
| 
       443 
826 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       444 
827 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_circuit_breakers(msg, sub);
         
     | 
| 
       445 
828 
     | 
    
         
             
              }
         
     | 
| 
         @@ -447,12 +830,12 @@ UPB_INLINE struct envoy_config_cluster_v3_CircuitBreakers* envoy_config_cluster_ 
     | 
|
| 
       447 
830 
     | 
    
         
             
            }
         
     | 
| 
       448 
831 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_http_protocol_options(envoy_config_cluster_v3_Cluster *msg, struct envoy_config_core_v3_Http1ProtocolOptions* value) {
         
     | 
| 
       449 
832 
     | 
    
         
             
              _upb_sethas(msg, 6);
         
     | 
| 
       450 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 833 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(72, 96), struct envoy_config_core_v3_Http1ProtocolOptions*) = value;
         
     | 
| 
       451 
834 
     | 
    
         
             
            }
         
     | 
| 
       452 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_Http1ProtocolOptions* envoy_config_cluster_v3_Cluster_mutable_http_protocol_options(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 835 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_Http1ProtocolOptions* envoy_config_cluster_v3_Cluster_mutable_http_protocol_options(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       453 
836 
     | 
    
         
             
              struct envoy_config_core_v3_Http1ProtocolOptions* sub = (struct envoy_config_core_v3_Http1ProtocolOptions*)envoy_config_cluster_v3_Cluster_http_protocol_options(msg);
         
     | 
| 
       454 
837 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       455 
     | 
    
         
            -
                sub = (struct envoy_config_core_v3_Http1ProtocolOptions*) 
     | 
| 
      
 838 
     | 
    
         
            +
                sub = (struct envoy_config_core_v3_Http1ProtocolOptions*)_upb_Message_New(&envoy_config_core_v3_Http1ProtocolOptions_msginit, arena);
         
     | 
| 
       456 
839 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       457 
840 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_http_protocol_options(msg, sub);
         
     | 
| 
       458 
841 
     | 
    
         
             
              }
         
     | 
| 
         @@ -460,12 +843,12 @@ UPB_INLINE struct envoy_config_core_v3_Http1ProtocolOptions* envoy_config_cluste 
     | 
|
| 
       460 
843 
     | 
    
         
             
            }
         
     | 
| 
       461 
844 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_http2_protocol_options(envoy_config_cluster_v3_Cluster *msg, struct envoy_config_core_v3_Http2ProtocolOptions* value) {
         
     | 
| 
       462 
845 
     | 
    
         
             
              _upb_sethas(msg, 7);
         
     | 
| 
       463 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 846 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(76, 104), struct envoy_config_core_v3_Http2ProtocolOptions*) = value;
         
     | 
| 
       464 
847 
     | 
    
         
             
            }
         
     | 
| 
       465 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_Http2ProtocolOptions* envoy_config_cluster_v3_Cluster_mutable_http2_protocol_options(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 848 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_Http2ProtocolOptions* envoy_config_cluster_v3_Cluster_mutable_http2_protocol_options(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       466 
849 
     | 
    
         
             
              struct envoy_config_core_v3_Http2ProtocolOptions* sub = (struct envoy_config_core_v3_Http2ProtocolOptions*)envoy_config_cluster_v3_Cluster_http2_protocol_options(msg);
         
     | 
| 
       467 
850 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       468 
     | 
    
         
            -
                sub = (struct envoy_config_core_v3_Http2ProtocolOptions*) 
     | 
| 
      
 851 
     | 
    
         
            +
                sub = (struct envoy_config_core_v3_Http2ProtocolOptions*)_upb_Message_New(&envoy_config_core_v3_Http2ProtocolOptions_msginit, arena);
         
     | 
| 
       469 
852 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       470 
853 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_http2_protocol_options(msg, sub);
         
     | 
| 
       471 
854 
     | 
    
         
             
              }
         
     | 
| 
         @@ -473,12 +856,12 @@ UPB_INLINE struct envoy_config_core_v3_Http2ProtocolOptions* envoy_config_cluste 
     | 
|
| 
       473 
856 
     | 
    
         
             
            }
         
     | 
| 
       474 
857 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_dns_refresh_rate(envoy_config_cluster_v3_Cluster *msg, struct google_protobuf_Duration* value) {
         
     | 
| 
       475 
858 
     | 
    
         
             
              _upb_sethas(msg, 8);
         
     | 
| 
       476 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 859 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(80, 112), struct google_protobuf_Duration*) = value;
         
     | 
| 
       477 
860 
     | 
    
         
             
            }
         
     | 
| 
       478 
     | 
    
         
            -
            UPB_INLINE struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_mutable_dns_refresh_rate(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 861 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_mutable_dns_refresh_rate(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       479 
862 
     | 
    
         
             
              struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_cluster_v3_Cluster_dns_refresh_rate(msg);
         
     | 
| 
       480 
863 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       481 
     | 
    
         
            -
                sub = (struct google_protobuf_Duration*) 
     | 
| 
      
 864 
     | 
    
         
            +
                sub = (struct google_protobuf_Duration*)_upb_Message_New(&google_protobuf_Duration_msginit, arena);
         
     | 
| 
       482 
865 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       483 
866 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_dns_refresh_rate(msg, sub);
         
     | 
| 
       484 
867 
     | 
    
         
             
              }
         
     | 
| 
         @@ -487,27 +870,26 @@ UPB_INLINE struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_muta 
     | 
|
| 
       487 
870 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_dns_lookup_family(envoy_config_cluster_v3_Cluster *msg, int32_t value) {
         
     | 
| 
       488 
871 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(8, 8), int32_t) = value;
         
     | 
| 
       489 
872 
     | 
    
         
             
            }
         
     | 
| 
       490 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_Address** envoy_config_cluster_v3_Cluster_mutable_dns_resolvers(envoy_config_cluster_v3_Cluster  
     | 
| 
       491 
     | 
    
         
            -
              return (struct envoy_config_core_v3_Address**)_upb_array_mutable_accessor(msg, UPB_SIZE( 
     | 
| 
      
 873 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_Address** envoy_config_cluster_v3_Cluster_mutable_dns_resolvers(envoy_config_cluster_v3_Cluster* msg, size_t* len) {
         
     | 
| 
      
 874 
     | 
    
         
            +
              return (struct envoy_config_core_v3_Address**)_upb_array_mutable_accessor(msg, UPB_SIZE(84, 120), len);
         
     | 
| 
       492 
875 
     | 
    
         
             
            }
         
     | 
| 
       493 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_Address** envoy_config_cluster_v3_Cluster_resize_dns_resolvers(envoy_config_cluster_v3_Cluster  
     | 
| 
       494 
     | 
    
         
            -
              return (struct envoy_config_core_v3_Address**) 
     | 
| 
      
 876 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_Address** envoy_config_cluster_v3_Cluster_resize_dns_resolvers(envoy_config_cluster_v3_Cluster* msg, size_t len, upb_Arena* arena) {
         
     | 
| 
      
 877 
     | 
    
         
            +
              return (struct envoy_config_core_v3_Address**)_upb_Array_Resize_accessor2(msg, UPB_SIZE(84, 120), len, UPB_SIZE(2, 3), arena);
         
     | 
| 
       495 
878 
     | 
    
         
             
            }
         
     | 
| 
       496 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_Address* envoy_config_cluster_v3_Cluster_add_dns_resolvers(envoy_config_cluster_v3_Cluster  
     | 
| 
       497 
     | 
    
         
            -
              struct envoy_config_core_v3_Address* sub = (struct envoy_config_core_v3_Address*) 
     | 
| 
       498 
     | 
    
         
            -
              bool ok =  
     | 
| 
       499 
     | 
    
         
            -
                  msg, UPB_SIZE(156, 288), UPB_SIZE(2, 3), &sub, arena);
         
     | 
| 
      
 879 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_Address* envoy_config_cluster_v3_Cluster_add_dns_resolvers(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
      
 880 
     | 
    
         
            +
              struct envoy_config_core_v3_Address* sub = (struct envoy_config_core_v3_Address*)_upb_Message_New(&envoy_config_core_v3_Address_msginit, arena);
         
     | 
| 
      
 881 
     | 
    
         
            +
              bool ok = _upb_Array_Append_accessor2(msg, UPB_SIZE(84, 120), UPB_SIZE(2, 3), &sub, arena);
         
     | 
| 
       500 
882 
     | 
    
         
             
              if (!ok) return NULL;
         
     | 
| 
       501 
883 
     | 
    
         
             
              return sub;
         
     | 
| 
       502 
884 
     | 
    
         
             
            }
         
     | 
| 
       503 
885 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_outlier_detection(envoy_config_cluster_v3_Cluster *msg, struct envoy_config_cluster_v3_OutlierDetection* value) {
         
     | 
| 
       504 
886 
     | 
    
         
             
              _upb_sethas(msg, 9);
         
     | 
| 
       505 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 887 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(88, 128), struct envoy_config_cluster_v3_OutlierDetection*) = value;
         
     | 
| 
       506 
888 
     | 
    
         
             
            }
         
     | 
| 
       507 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_OutlierDetection* envoy_config_cluster_v3_Cluster_mutable_outlier_detection(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 889 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_OutlierDetection* envoy_config_cluster_v3_Cluster_mutable_outlier_detection(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       508 
890 
     | 
    
         
             
              struct envoy_config_cluster_v3_OutlierDetection* sub = (struct envoy_config_cluster_v3_OutlierDetection*)envoy_config_cluster_v3_Cluster_outlier_detection(msg);
         
     | 
| 
       509 
891 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       510 
     | 
    
         
            -
                sub = (struct envoy_config_cluster_v3_OutlierDetection*) 
     | 
| 
      
 892 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_OutlierDetection*)_upb_Message_New(&envoy_config_cluster_v3_OutlierDetection_msginit, arena);
         
     | 
| 
       511 
893 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       512 
894 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_outlier_detection(msg, sub);
         
     | 
| 
       513 
895 
     | 
    
         
             
              }
         
     | 
| 
         @@ -515,12 +897,12 @@ UPB_INLINE struct envoy_config_cluster_v3_OutlierDetection* envoy_config_cluster 
     | 
|
| 
       515 
897 
     | 
    
         
             
            }
         
     | 
| 
       516 
898 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_cleanup_interval(envoy_config_cluster_v3_Cluster *msg, struct google_protobuf_Duration* value) {
         
     | 
| 
       517 
899 
     | 
    
         
             
              _upb_sethas(msg, 10);
         
     | 
| 
       518 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 900 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(92, 136), struct google_protobuf_Duration*) = value;
         
     | 
| 
       519 
901 
     | 
    
         
             
            }
         
     | 
| 
       520 
     | 
    
         
            -
            UPB_INLINE struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_mutable_cleanup_interval(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 902 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_mutable_cleanup_interval(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       521 
903 
     | 
    
         
             
              struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_cluster_v3_Cluster_cleanup_interval(msg);
         
     | 
| 
       522 
904 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       523 
     | 
    
         
            -
                sub = (struct google_protobuf_Duration*) 
     | 
| 
      
 905 
     | 
    
         
            +
                sub = (struct google_protobuf_Duration*)_upb_Message_New(&google_protobuf_Duration_msginit, arena);
         
     | 
| 
       524 
906 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       525 
907 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_cleanup_interval(msg, sub);
         
     | 
| 
       526 
908 
     | 
    
         
             
              }
         
     | 
| 
         @@ -528,12 +910,12 @@ UPB_INLINE struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_muta 
     | 
|
| 
       528 
910 
     | 
    
         
             
            }
         
     | 
| 
       529 
911 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_upstream_bind_config(envoy_config_cluster_v3_Cluster *msg, struct envoy_config_core_v3_BindConfig* value) {
         
     | 
| 
       530 
912 
     | 
    
         
             
              _upb_sethas(msg, 11);
         
     | 
| 
       531 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 913 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(96, 144), struct envoy_config_core_v3_BindConfig*) = value;
         
     | 
| 
       532 
914 
     | 
    
         
             
            }
         
     | 
| 
       533 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_BindConfig* envoy_config_cluster_v3_Cluster_mutable_upstream_bind_config(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 915 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_BindConfig* envoy_config_cluster_v3_Cluster_mutable_upstream_bind_config(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       534 
916 
     | 
    
         
             
              struct envoy_config_core_v3_BindConfig* sub = (struct envoy_config_core_v3_BindConfig*)envoy_config_cluster_v3_Cluster_upstream_bind_config(msg);
         
     | 
| 
       535 
917 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       536 
     | 
    
         
            -
                sub = (struct envoy_config_core_v3_BindConfig*) 
     | 
| 
      
 918 
     | 
    
         
            +
                sub = (struct envoy_config_core_v3_BindConfig*)_upb_Message_New(&envoy_config_core_v3_BindConfig_msginit, arena);
         
     | 
| 
       537 
919 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       538 
920 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_upstream_bind_config(msg, sub);
         
     | 
| 
       539 
921 
     | 
    
         
             
              }
         
     | 
| 
         @@ -541,24 +923,24 @@ UPB_INLINE struct envoy_config_core_v3_BindConfig* envoy_config_cluster_v3_Clust 
     | 
|
| 
       541 
923 
     | 
    
         
             
            }
         
     | 
| 
       542 
924 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_lb_subset_config(envoy_config_cluster_v3_Cluster *msg, envoy_config_cluster_v3_Cluster_LbSubsetConfig* value) {
         
     | 
| 
       543 
925 
     | 
    
         
             
              _upb_sethas(msg, 12);
         
     | 
| 
       544 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 926 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(100, 152), envoy_config_cluster_v3_Cluster_LbSubsetConfig*) = value;
         
     | 
| 
       545 
927 
     | 
    
         
             
            }
         
     | 
| 
       546 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_LbSubsetConfig* envoy_config_cluster_v3_Cluster_mutable_lb_subset_config(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 928 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_LbSubsetConfig* envoy_config_cluster_v3_Cluster_mutable_lb_subset_config(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       547 
929 
     | 
    
         
             
              struct envoy_config_cluster_v3_Cluster_LbSubsetConfig* sub = (struct envoy_config_cluster_v3_Cluster_LbSubsetConfig*)envoy_config_cluster_v3_Cluster_lb_subset_config(msg);
         
     | 
| 
       548 
930 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       549 
     | 
    
         
            -
                sub = (struct envoy_config_cluster_v3_Cluster_LbSubsetConfig*) 
     | 
| 
      
 931 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_Cluster_LbSubsetConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_LbSubsetConfig_msginit, arena);
         
     | 
| 
       550 
932 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       551 
933 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_lb_subset_config(msg, sub);
         
     | 
| 
       552 
934 
     | 
    
         
             
              }
         
     | 
| 
       553 
935 
     | 
    
         
             
              return sub;
         
     | 
| 
       554 
936 
     | 
    
         
             
            }
         
     | 
| 
       555 
937 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_ring_hash_lb_config(envoy_config_cluster_v3_Cluster *msg, envoy_config_cluster_v3_Cluster_RingHashLbConfig* value) {
         
     | 
| 
       556 
     | 
    
         
            -
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_RingHashLbConfig*, UPB_SIZE( 
     | 
| 
      
 938 
     | 
    
         
            +
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_RingHashLbConfig*, UPB_SIZE(36, 336), value, UPB_SIZE(28, 28), 23);
         
     | 
| 
       557 
939 
     | 
    
         
             
            }
         
     | 
| 
       558 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_RingHashLbConfig* envoy_config_cluster_v3_Cluster_mutable_ring_hash_lb_config(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 940 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_RingHashLbConfig* envoy_config_cluster_v3_Cluster_mutable_ring_hash_lb_config(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       559 
941 
     | 
    
         
             
              struct envoy_config_cluster_v3_Cluster_RingHashLbConfig* sub = (struct envoy_config_cluster_v3_Cluster_RingHashLbConfig*)envoy_config_cluster_v3_Cluster_ring_hash_lb_config(msg);
         
     | 
| 
       560 
942 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       561 
     | 
    
         
            -
                sub = (struct envoy_config_cluster_v3_Cluster_RingHashLbConfig*) 
     | 
| 
      
 943 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_Cluster_RingHashLbConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_RingHashLbConfig_msginit, arena);
         
     | 
| 
       562 
944 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       563 
945 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_ring_hash_lb_config(msg, sub);
         
     | 
| 
       564 
946 
     | 
    
         
             
              }
         
     | 
| 
         @@ -566,12 +948,12 @@ UPB_INLINE struct envoy_config_cluster_v3_Cluster_RingHashLbConfig* envoy_config 
     | 
|
| 
       566 
948 
     | 
    
         
             
            }
         
     | 
| 
       567 
949 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_transport_socket(envoy_config_cluster_v3_Cluster *msg, struct envoy_config_core_v3_TransportSocket* value) {
         
     | 
| 
       568 
950 
     | 
    
         
             
              _upb_sethas(msg, 13);
         
     | 
| 
       569 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 951 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(104, 160), struct envoy_config_core_v3_TransportSocket*) = value;
         
     | 
| 
       570 
952 
     | 
    
         
             
            }
         
     | 
| 
       571 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_TransportSocket* envoy_config_cluster_v3_Cluster_mutable_transport_socket(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 953 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_TransportSocket* envoy_config_cluster_v3_Cluster_mutable_transport_socket(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       572 
954 
     | 
    
         
             
              struct envoy_config_core_v3_TransportSocket* sub = (struct envoy_config_core_v3_TransportSocket*)envoy_config_cluster_v3_Cluster_transport_socket(msg);
         
     | 
| 
       573 
955 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       574 
     | 
    
         
            -
                sub = (struct envoy_config_core_v3_TransportSocket*) 
     | 
| 
      
 956 
     | 
    
         
            +
                sub = (struct envoy_config_core_v3_TransportSocket*)_upb_Message_New(&envoy_config_core_v3_TransportSocket_msginit, arena);
         
     | 
| 
       575 
957 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       576 
958 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_transport_socket(msg, sub);
         
     | 
| 
       577 
959 
     | 
    
         
             
              }
         
     | 
| 
         @@ -579,12 +961,12 @@ UPB_INLINE struct envoy_config_core_v3_TransportSocket* envoy_config_cluster_v3_ 
     | 
|
| 
       579 
961 
     | 
    
         
             
            }
         
     | 
| 
       580 
962 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_metadata(envoy_config_cluster_v3_Cluster *msg, struct envoy_config_core_v3_Metadata* value) {
         
     | 
| 
       581 
963 
     | 
    
         
             
              _upb_sethas(msg, 14);
         
     | 
| 
       582 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 964 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(108, 168), struct envoy_config_core_v3_Metadata*) = value;
         
     | 
| 
       583 
965 
     | 
    
         
             
            }
         
     | 
| 
       584 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_Metadata* envoy_config_cluster_v3_Cluster_mutable_metadata(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 966 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_Metadata* envoy_config_cluster_v3_Cluster_mutable_metadata(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       585 
967 
     | 
    
         
             
              struct envoy_config_core_v3_Metadata* sub = (struct envoy_config_core_v3_Metadata*)envoy_config_cluster_v3_Cluster_metadata(msg);
         
     | 
| 
       586 
968 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       587 
     | 
    
         
            -
                sub = (struct envoy_config_core_v3_Metadata*) 
     | 
| 
      
 969 
     | 
    
         
            +
                sub = (struct envoy_config_core_v3_Metadata*)_upb_Message_New(&envoy_config_core_v3_Metadata_msginit, arena);
         
     | 
| 
       588 
970 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       589 
971 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_metadata(msg, sub);
         
     | 
| 
       590 
972 
     | 
    
         
             
              }
         
     | 
| 
         @@ -595,28 +977,28 @@ UPB_INLINE void envoy_config_cluster_v3_Cluster_set_protocol_selection(envoy_con 
     | 
|
| 
       595 
977 
     | 
    
         
             
            }
         
     | 
| 
       596 
978 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_common_lb_config(envoy_config_cluster_v3_Cluster *msg, envoy_config_cluster_v3_Cluster_CommonLbConfig* value) {
         
     | 
| 
       597 
979 
     | 
    
         
             
              _upb_sethas(msg, 15);
         
     | 
| 
       598 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 980 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(112, 176), envoy_config_cluster_v3_Cluster_CommonLbConfig*) = value;
         
     | 
| 
       599 
981 
     | 
    
         
             
            }
         
     | 
| 
       600 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_CommonLbConfig* envoy_config_cluster_v3_Cluster_mutable_common_lb_config(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 982 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_CommonLbConfig* envoy_config_cluster_v3_Cluster_mutable_common_lb_config(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       601 
983 
     | 
    
         
             
              struct envoy_config_cluster_v3_Cluster_CommonLbConfig* sub = (struct envoy_config_cluster_v3_Cluster_CommonLbConfig*)envoy_config_cluster_v3_Cluster_common_lb_config(msg);
         
     | 
| 
       602 
984 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       603 
     | 
    
         
            -
                sub = (struct envoy_config_cluster_v3_Cluster_CommonLbConfig*) 
     | 
| 
      
 985 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_Cluster_CommonLbConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_CommonLbConfig_msginit, arena);
         
     | 
| 
       604 
986 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       605 
987 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_common_lb_config(msg, sub);
         
     | 
| 
       606 
988 
     | 
    
         
             
              }
         
     | 
| 
       607 
989 
     | 
    
         
             
              return sub;
         
     | 
| 
       608 
990 
     | 
    
         
             
            }
         
     | 
| 
       609 
     | 
    
         
            -
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_alt_stat_name(envoy_config_cluster_v3_Cluster *msg,  
     | 
| 
       610 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 991 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_alt_stat_name(envoy_config_cluster_v3_Cluster *msg, upb_StringView value) {
         
     | 
| 
      
 992 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(116, 184), upb_StringView) = value;
         
     | 
| 
       611 
993 
     | 
    
         
             
            }
         
     | 
| 
       612 
994 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_common_http_protocol_options(envoy_config_cluster_v3_Cluster *msg, struct envoy_config_core_v3_HttpProtocolOptions* value) {
         
     | 
| 
       613 
995 
     | 
    
         
             
              _upb_sethas(msg, 16);
         
     | 
| 
       614 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 996 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(124, 200), struct envoy_config_core_v3_HttpProtocolOptions*) = value;
         
     | 
| 
       615 
997 
     | 
    
         
             
            }
         
     | 
| 
       616 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_HttpProtocolOptions* envoy_config_cluster_v3_Cluster_mutable_common_http_protocol_options(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 998 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_HttpProtocolOptions* envoy_config_cluster_v3_Cluster_mutable_common_http_protocol_options(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       617 
999 
     | 
    
         
             
              struct envoy_config_core_v3_HttpProtocolOptions* sub = (struct envoy_config_core_v3_HttpProtocolOptions*)envoy_config_cluster_v3_Cluster_common_http_protocol_options(msg);
         
     | 
| 
       618 
1000 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       619 
     | 
    
         
            -
                sub = (struct envoy_config_core_v3_HttpProtocolOptions*) 
     | 
| 
      
 1001 
     | 
    
         
            +
                sub = (struct envoy_config_core_v3_HttpProtocolOptions*)_upb_Message_New(&envoy_config_core_v3_HttpProtocolOptions_msginit, arena);
         
     | 
| 
       620 
1002 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       621 
1003 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_common_http_protocol_options(msg, sub);
         
     | 
| 
       622 
1004 
     | 
    
         
             
              }
         
     | 
| 
         @@ -624,12 +1006,12 @@ UPB_INLINE struct envoy_config_core_v3_HttpProtocolOptions* envoy_config_cluster 
     | 
|
| 
       624 
1006 
     | 
    
         
             
            }
         
     | 
| 
       625 
1007 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_upstream_connection_options(envoy_config_cluster_v3_Cluster *msg, envoy_config_cluster_v3_UpstreamConnectionOptions* value) {
         
     | 
| 
       626 
1008 
     | 
    
         
             
              _upb_sethas(msg, 17);
         
     | 
| 
       627 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 1009 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(128, 208), envoy_config_cluster_v3_UpstreamConnectionOptions*) = value;
         
     | 
| 
       628 
1010 
     | 
    
         
             
            }
         
     | 
| 
       629 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_UpstreamConnectionOptions* envoy_config_cluster_v3_Cluster_mutable_upstream_connection_options(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 1011 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_UpstreamConnectionOptions* envoy_config_cluster_v3_Cluster_mutable_upstream_connection_options(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       630 
1012 
     | 
    
         
             
              struct envoy_config_cluster_v3_UpstreamConnectionOptions* sub = (struct envoy_config_cluster_v3_UpstreamConnectionOptions*)envoy_config_cluster_v3_Cluster_upstream_connection_options(msg);
         
     | 
| 
       631 
1013 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       632 
     | 
    
         
            -
                sub = (struct envoy_config_cluster_v3_UpstreamConnectionOptions*) 
     | 
| 
      
 1014 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_UpstreamConnectionOptions*)_upb_Message_New(&envoy_config_cluster_v3_UpstreamConnectionOptions_msginit, arena);
         
     | 
| 
       633 
1015 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       634 
1016 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_upstream_connection_options(msg, sub);
         
     | 
| 
       635 
1017 
     | 
    
         
             
              }
         
     | 
| 
         @@ -643,81 +1025,86 @@ UPB_INLINE void envoy_config_cluster_v3_Cluster_set_ignore_health_on_host_remova 
     | 
|
| 
       643 
1025 
     | 
    
         
             
            }
         
     | 
| 
       644 
1026 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_load_assignment(envoy_config_cluster_v3_Cluster *msg, struct envoy_config_endpoint_v3_ClusterLoadAssignment* value) {
         
     | 
| 
       645 
1027 
     | 
    
         
             
              _upb_sethas(msg, 18);
         
     | 
| 
       646 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 1028 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(132, 216), struct envoy_config_endpoint_v3_ClusterLoadAssignment*) = value;
         
     | 
| 
       647 
1029 
     | 
    
         
             
            }
         
     | 
| 
       648 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_endpoint_v3_ClusterLoadAssignment* envoy_config_cluster_v3_Cluster_mutable_load_assignment(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 1030 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_endpoint_v3_ClusterLoadAssignment* envoy_config_cluster_v3_Cluster_mutable_load_assignment(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       649 
1031 
     | 
    
         
             
              struct envoy_config_endpoint_v3_ClusterLoadAssignment* sub = (struct envoy_config_endpoint_v3_ClusterLoadAssignment*)envoy_config_cluster_v3_Cluster_load_assignment(msg);
         
     | 
| 
       650 
1032 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       651 
     | 
    
         
            -
                sub = (struct envoy_config_endpoint_v3_ClusterLoadAssignment*) 
     | 
| 
      
 1033 
     | 
    
         
            +
                sub = (struct envoy_config_endpoint_v3_ClusterLoadAssignment*)_upb_Message_New(&envoy_config_endpoint_v3_ClusterLoadAssignment_msginit, arena);
         
     | 
| 
       652 
1034 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       653 
1035 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_load_assignment(msg, sub);
         
     | 
| 
       654 
1036 
     | 
    
         
             
              }
         
     | 
| 
       655 
1037 
     | 
    
         
             
              return sub;
         
     | 
| 
       656 
1038 
     | 
    
         
             
            }
         
     | 
| 
       657 
1039 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_original_dst_lb_config(envoy_config_cluster_v3_Cluster *msg, envoy_config_cluster_v3_Cluster_OriginalDstLbConfig* value) {
         
     | 
| 
       658 
     | 
    
         
            -
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_OriginalDstLbConfig*, UPB_SIZE( 
     | 
| 
      
 1040 
     | 
    
         
            +
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_OriginalDstLbConfig*, UPB_SIZE(36, 336), value, UPB_SIZE(28, 28), 34);
         
     | 
| 
       659 
1041 
     | 
    
         
             
            }
         
     | 
| 
       660 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_OriginalDstLbConfig* envoy_config_cluster_v3_Cluster_mutable_original_dst_lb_config(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 1042 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_OriginalDstLbConfig* envoy_config_cluster_v3_Cluster_mutable_original_dst_lb_config(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       661 
1043 
     | 
    
         
             
              struct envoy_config_cluster_v3_Cluster_OriginalDstLbConfig* sub = (struct envoy_config_cluster_v3_Cluster_OriginalDstLbConfig*)envoy_config_cluster_v3_Cluster_original_dst_lb_config(msg);
         
     | 
| 
       662 
1044 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       663 
     | 
    
         
            -
                sub = (struct envoy_config_cluster_v3_Cluster_OriginalDstLbConfig*) 
     | 
| 
      
 1045 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_Cluster_OriginalDstLbConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_msginit, arena);
         
     | 
| 
       664 
1046 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       665 
1047 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_original_dst_lb_config(msg, sub);
         
     | 
| 
       666 
1048 
     | 
    
         
             
              }
         
     | 
| 
       667 
1049 
     | 
    
         
             
              return sub;
         
     | 
| 
       668 
1050 
     | 
    
         
             
            }
         
     | 
| 
       669 
     | 
    
         
            -
            UPB_INLINE void envoy_config_cluster_v3_Cluster_typed_extension_protocol_options_clear(envoy_config_cluster_v3_Cluster  
     | 
| 
       670 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_typed_extension_protocol_options_set(envoy_config_cluster_v3_Cluster  
     | 
| 
       671 
     | 
    
         
            -
             
     | 
| 
       672 
     | 
    
         
            -
             
     | 
| 
      
 1051 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_typed_extension_protocol_options_clear(envoy_config_cluster_v3_Cluster* msg) { _upb_msg_map_clear(msg, UPB_SIZE(136, 224)); }
         
     | 
| 
      
 1052 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_typed_extension_protocol_options_set(envoy_config_cluster_v3_Cluster* msg, upb_StringView key, struct google_protobuf_Any* val, upb_Arena* a) {
         
     | 
| 
      
 1053 
     | 
    
         
            +
              return _upb_msg_map_set(msg, UPB_SIZE(136, 224), &key, 0, &val, sizeof(val), a);
         
     | 
| 
      
 1054 
     | 
    
         
            +
            }
         
     | 
| 
      
 1055 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_typed_extension_protocol_options_delete(envoy_config_cluster_v3_Cluster* msg, upb_StringView key) {
         
     | 
| 
      
 1056 
     | 
    
         
            +
              return _upb_msg_map_delete(msg, UPB_SIZE(136, 224), &key, 0);
         
     | 
| 
      
 1057 
     | 
    
         
            +
            }
         
     | 
| 
      
 1058 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_TypedExtensionProtocolOptionsEntry* envoy_config_cluster_v3_Cluster_typed_extension_protocol_options_nextmutable(envoy_config_cluster_v3_Cluster* msg, size_t* iter) {
         
     | 
| 
      
 1059 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_TypedExtensionProtocolOptionsEntry*)_upb_msg_map_next(msg, UPB_SIZE(136, 224), iter);
         
     | 
| 
      
 1060 
     | 
    
         
            +
            }
         
     | 
| 
       673 
1061 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_least_request_lb_config(envoy_config_cluster_v3_Cluster *msg, envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* value) {
         
     | 
| 
       674 
     | 
    
         
            -
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_LeastRequestLbConfig*, UPB_SIZE( 
     | 
| 
      
 1062 
     | 
    
         
            +
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_LeastRequestLbConfig*, UPB_SIZE(36, 336), value, UPB_SIZE(28, 28), 37);
         
     | 
| 
       675 
1063 
     | 
    
         
             
            }
         
     | 
| 
       676 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* envoy_config_cluster_v3_Cluster_mutable_least_request_lb_config(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 1064 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* envoy_config_cluster_v3_Cluster_mutable_least_request_lb_config(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       677 
1065 
     | 
    
         
             
              struct envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* sub = (struct envoy_config_cluster_v3_Cluster_LeastRequestLbConfig*)envoy_config_cluster_v3_Cluster_least_request_lb_config(msg);
         
     | 
| 
       678 
1066 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       679 
     | 
    
         
            -
                sub = (struct envoy_config_cluster_v3_Cluster_LeastRequestLbConfig*) 
     | 
| 
      
 1067 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_Cluster_LeastRequestLbConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_msginit, arena);
         
     | 
| 
       680 
1068 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       681 
1069 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_least_request_lb_config(msg, sub);
         
     | 
| 
       682 
1070 
     | 
    
         
             
              }
         
     | 
| 
       683 
1071 
     | 
    
         
             
              return sub;
         
     | 
| 
       684 
1072 
     | 
    
         
             
            }
         
     | 
| 
       685 
1073 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_cluster_type(envoy_config_cluster_v3_Cluster *msg, envoy_config_cluster_v3_Cluster_CustomClusterType* value) {
         
     | 
| 
       686 
     | 
    
         
            -
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_CustomClusterType*, UPB_SIZE( 
     | 
| 
      
 1074 
     | 
    
         
            +
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_CustomClusterType*, UPB_SIZE(32, 328), value, UPB_SIZE(20, 20), 38);
         
     | 
| 
       687 
1075 
     | 
    
         
             
            }
         
     | 
| 
       688 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_CustomClusterType* envoy_config_cluster_v3_Cluster_mutable_cluster_type(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 1076 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_CustomClusterType* envoy_config_cluster_v3_Cluster_mutable_cluster_type(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       689 
1077 
     | 
    
         
             
              struct envoy_config_cluster_v3_Cluster_CustomClusterType* sub = (struct envoy_config_cluster_v3_Cluster_CustomClusterType*)envoy_config_cluster_v3_Cluster_cluster_type(msg);
         
     | 
| 
       690 
1078 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       691 
     | 
    
         
            -
                sub = (struct envoy_config_cluster_v3_Cluster_CustomClusterType*) 
     | 
| 
      
 1079 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_Cluster_CustomClusterType*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_CustomClusterType_msginit, arena);
         
     | 
| 
       692 
1080 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       693 
1081 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_cluster_type(msg, sub);
         
     | 
| 
       694 
1082 
     | 
    
         
             
              }
         
     | 
| 
       695 
1083 
     | 
    
         
             
              return sub;
         
     | 
| 
       696 
1084 
     | 
    
         
             
            }
         
     | 
| 
       697 
1085 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_respect_dns_ttl(envoy_config_cluster_v3_Cluster *msg, bool value) {
         
     | 
| 
       698 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 1086 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(24, 24), bool) = value;
         
     | 
| 
       699 
1087 
     | 
    
         
             
            }
         
     | 
| 
       700 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_Filter** envoy_config_cluster_v3_Cluster_mutable_filters(envoy_config_cluster_v3_Cluster  
     | 
| 
       701 
     | 
    
         
            -
              return (struct envoy_config_cluster_v3_Filter**)_upb_array_mutable_accessor(msg, UPB_SIZE( 
     | 
| 
      
 1088 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Filter** envoy_config_cluster_v3_Cluster_mutable_filters(envoy_config_cluster_v3_Cluster* msg, size_t* len) {
         
     | 
| 
      
 1089 
     | 
    
         
            +
              return (struct envoy_config_cluster_v3_Filter**)_upb_array_mutable_accessor(msg, UPB_SIZE(140, 232), len);
         
     | 
| 
       702 
1090 
     | 
    
         
             
            }
         
     | 
| 
       703 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_Filter** envoy_config_cluster_v3_Cluster_resize_filters(envoy_config_cluster_v3_Cluster  
     | 
| 
       704 
     | 
    
         
            -
              return (struct envoy_config_cluster_v3_Filter**) 
     | 
| 
      
 1091 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Filter** envoy_config_cluster_v3_Cluster_resize_filters(envoy_config_cluster_v3_Cluster* msg, size_t len, upb_Arena* arena) {
         
     | 
| 
      
 1092 
     | 
    
         
            +
              return (struct envoy_config_cluster_v3_Filter**)_upb_Array_Resize_accessor2(msg, UPB_SIZE(140, 232), len, UPB_SIZE(2, 3), arena);
         
     | 
| 
       705 
1093 
     | 
    
         
             
            }
         
     | 
| 
       706 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_Filter* envoy_config_cluster_v3_Cluster_add_filters(envoy_config_cluster_v3_Cluster  
     | 
| 
       707 
     | 
    
         
            -
              struct envoy_config_cluster_v3_Filter* sub = (struct envoy_config_cluster_v3_Filter*) 
     | 
| 
       708 
     | 
    
         
            -
              bool ok =  
     | 
| 
       709 
     | 
    
         
            -
                  msg, UPB_SIZE(164, 304), UPB_SIZE(2, 3), &sub, arena);
         
     | 
| 
      
 1094 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Filter* envoy_config_cluster_v3_Cluster_add_filters(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
      
 1095 
     | 
    
         
            +
              struct envoy_config_cluster_v3_Filter* sub = (struct envoy_config_cluster_v3_Filter*)_upb_Message_New(&envoy_config_cluster_v3_Filter_msginit, arena);
         
     | 
| 
      
 1096 
     | 
    
         
            +
              bool ok = _upb_Array_Append_accessor2(msg, UPB_SIZE(140, 232), UPB_SIZE(2, 3), &sub, arena);
         
     | 
| 
       710 
1097 
     | 
    
         
             
              if (!ok) return NULL;
         
     | 
| 
       711 
1098 
     | 
    
         
             
              return sub;
         
     | 
| 
       712 
1099 
     | 
    
         
             
            }
         
     | 
| 
       713 
1100 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_load_balancing_policy(envoy_config_cluster_v3_Cluster *msg, envoy_config_cluster_v3_LoadBalancingPolicy* value) {
         
     | 
| 
       714 
1101 
     | 
    
         
             
              _upb_sethas(msg, 19);
         
     | 
| 
       715 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 1102 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(144, 240), envoy_config_cluster_v3_LoadBalancingPolicy*) = value;
         
     | 
| 
       716 
1103 
     | 
    
         
             
            }
         
     | 
| 
       717 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_LoadBalancingPolicy* envoy_config_cluster_v3_Cluster_mutable_load_balancing_policy(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 1104 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_LoadBalancingPolicy* envoy_config_cluster_v3_Cluster_mutable_load_balancing_policy(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       718 
1105 
     | 
    
         
             
              struct envoy_config_cluster_v3_LoadBalancingPolicy* sub = (struct envoy_config_cluster_v3_LoadBalancingPolicy*)envoy_config_cluster_v3_Cluster_load_balancing_policy(msg);
         
     | 
| 
       719 
1106 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       720 
     | 
    
         
            -
                sub = (struct envoy_config_cluster_v3_LoadBalancingPolicy*) 
     | 
| 
      
 1107 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_LoadBalancingPolicy*)_upb_Message_New(&envoy_config_cluster_v3_LoadBalancingPolicy_msginit, arena);
         
     | 
| 
       721 
1108 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       722 
1109 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_load_balancing_policy(msg, sub);
         
     | 
| 
       723 
1110 
     | 
    
         
             
              }
         
     | 
| 
         @@ -725,70 +1112,69 @@ UPB_INLINE struct envoy_config_cluster_v3_LoadBalancingPolicy* envoy_config_clus 
     | 
|
| 
       725 
1112 
     | 
    
         
             
            }
         
     | 
| 
       726 
1113 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_lrs_server(envoy_config_cluster_v3_Cluster *msg, struct envoy_config_core_v3_ConfigSource* value) {
         
     | 
| 
       727 
1114 
     | 
    
         
             
              _upb_sethas(msg, 20);
         
     | 
| 
       728 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 1115 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(148, 248), struct envoy_config_core_v3_ConfigSource*) = value;
         
     | 
| 
       729 
1116 
     | 
    
         
             
            }
         
     | 
| 
       730 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_ConfigSource* envoy_config_cluster_v3_Cluster_mutable_lrs_server(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 1117 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_ConfigSource* envoy_config_cluster_v3_Cluster_mutable_lrs_server(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       731 
1118 
     | 
    
         
             
              struct envoy_config_core_v3_ConfigSource* sub = (struct envoy_config_core_v3_ConfigSource*)envoy_config_cluster_v3_Cluster_lrs_server(msg);
         
     | 
| 
       732 
1119 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       733 
     | 
    
         
            -
                sub = (struct envoy_config_core_v3_ConfigSource*) 
     | 
| 
      
 1120 
     | 
    
         
            +
                sub = (struct envoy_config_core_v3_ConfigSource*)_upb_Message_New(&envoy_config_core_v3_ConfigSource_msginit, arena);
         
     | 
| 
       734 
1121 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       735 
1122 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_lrs_server(msg, sub);
         
     | 
| 
       736 
1123 
     | 
    
         
             
              }
         
     | 
| 
       737 
1124 
     | 
    
         
             
              return sub;
         
     | 
| 
       738 
1125 
     | 
    
         
             
            }
         
     | 
| 
       739 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_TransportSocketMatch** envoy_config_cluster_v3_Cluster_mutable_transport_socket_matches(envoy_config_cluster_v3_Cluster  
     | 
| 
       740 
     | 
    
         
            -
              return (envoy_config_cluster_v3_Cluster_TransportSocketMatch**)_upb_array_mutable_accessor(msg, UPB_SIZE( 
     | 
| 
      
 1126 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_TransportSocketMatch** envoy_config_cluster_v3_Cluster_mutable_transport_socket_matches(envoy_config_cluster_v3_Cluster* msg, size_t* len) {
         
     | 
| 
      
 1127 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_TransportSocketMatch**)_upb_array_mutable_accessor(msg, UPB_SIZE(152, 256), len);
         
     | 
| 
       741 
1128 
     | 
    
         
             
            }
         
     | 
| 
       742 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_TransportSocketMatch** envoy_config_cluster_v3_Cluster_resize_transport_socket_matches(envoy_config_cluster_v3_Cluster  
     | 
| 
       743 
     | 
    
         
            -
              return (envoy_config_cluster_v3_Cluster_TransportSocketMatch**) 
     | 
| 
      
 1129 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_TransportSocketMatch** envoy_config_cluster_v3_Cluster_resize_transport_socket_matches(envoy_config_cluster_v3_Cluster* msg, size_t len, upb_Arena* arena) {
         
     | 
| 
      
 1130 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_TransportSocketMatch**)_upb_Array_Resize_accessor2(msg, UPB_SIZE(152, 256), len, UPB_SIZE(2, 3), arena);
         
     | 
| 
       744 
1131 
     | 
    
         
             
            }
         
     | 
| 
       745 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_TransportSocketMatch* envoy_config_cluster_v3_Cluster_add_transport_socket_matches(envoy_config_cluster_v3_Cluster  
     | 
| 
       746 
     | 
    
         
            -
              struct envoy_config_cluster_v3_Cluster_TransportSocketMatch* sub = (struct envoy_config_cluster_v3_Cluster_TransportSocketMatch*) 
     | 
| 
       747 
     | 
    
         
            -
              bool ok =  
     | 
| 
       748 
     | 
    
         
            -
                  msg, UPB_SIZE(168, 312), UPB_SIZE(2, 3), &sub, arena);
         
     | 
| 
      
 1132 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_TransportSocketMatch* envoy_config_cluster_v3_Cluster_add_transport_socket_matches(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
      
 1133 
     | 
    
         
            +
              struct envoy_config_cluster_v3_Cluster_TransportSocketMatch* sub = (struct envoy_config_cluster_v3_Cluster_TransportSocketMatch*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_TransportSocketMatch_msginit, arena);
         
     | 
| 
      
 1134 
     | 
    
         
            +
              bool ok = _upb_Array_Append_accessor2(msg, UPB_SIZE(152, 256), UPB_SIZE(2, 3), &sub, arena);
         
     | 
| 
       749 
1135 
     | 
    
         
             
              if (!ok) return NULL;
         
     | 
| 
       750 
1136 
     | 
    
         
             
              return sub;
         
     | 
| 
       751 
1137 
     | 
    
         
             
            }
         
     | 
| 
       752 
1138 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_dns_failure_refresh_rate(envoy_config_cluster_v3_Cluster *msg, envoy_config_cluster_v3_Cluster_RefreshRate* value) {
         
     | 
| 
       753 
1139 
     | 
    
         
             
              _upb_sethas(msg, 21);
         
     | 
| 
       754 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 1140 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(156, 264), envoy_config_cluster_v3_Cluster_RefreshRate*) = value;
         
     | 
| 
       755 
1141 
     | 
    
         
             
            }
         
     | 
| 
       756 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_RefreshRate* envoy_config_cluster_v3_Cluster_mutable_dns_failure_refresh_rate(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 1142 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_RefreshRate* envoy_config_cluster_v3_Cluster_mutable_dns_failure_refresh_rate(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       757 
1143 
     | 
    
         
             
              struct envoy_config_cluster_v3_Cluster_RefreshRate* sub = (struct envoy_config_cluster_v3_Cluster_RefreshRate*)envoy_config_cluster_v3_Cluster_dns_failure_refresh_rate(msg);
         
     | 
| 
       758 
1144 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       759 
     | 
    
         
            -
                sub = (struct envoy_config_cluster_v3_Cluster_RefreshRate*) 
     | 
| 
      
 1145 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_Cluster_RefreshRate*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_RefreshRate_msginit, arena);
         
     | 
| 
       760 
1146 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       761 
1147 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_dns_failure_refresh_rate(msg, sub);
         
     | 
| 
       762 
1148 
     | 
    
         
             
              }
         
     | 
| 
       763 
1149 
     | 
    
         
             
              return sub;
         
     | 
| 
       764 
1150 
     | 
    
         
             
            }
         
     | 
| 
       765 
1151 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_use_tcp_for_dns_lookups(envoy_config_cluster_v3_Cluster *msg, bool value) {
         
     | 
| 
       766 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 1152 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(25, 25), bool) = value;
         
     | 
| 
       767 
1153 
     | 
    
         
             
            }
         
     | 
| 
       768 
1154 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_upstream_http_protocol_options(envoy_config_cluster_v3_Cluster *msg, struct envoy_config_core_v3_UpstreamHttpProtocolOptions* value) {
         
     | 
| 
       769 
1155 
     | 
    
         
             
              _upb_sethas(msg, 22);
         
     | 
| 
       770 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 1156 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(160, 272), struct envoy_config_core_v3_UpstreamHttpProtocolOptions*) = value;
         
     | 
| 
       771 
1157 
     | 
    
         
             
            }
         
     | 
| 
       772 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_UpstreamHttpProtocolOptions* envoy_config_cluster_v3_Cluster_mutable_upstream_http_protocol_options(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 1158 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_UpstreamHttpProtocolOptions* envoy_config_cluster_v3_Cluster_mutable_upstream_http_protocol_options(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       773 
1159 
     | 
    
         
             
              struct envoy_config_core_v3_UpstreamHttpProtocolOptions* sub = (struct envoy_config_core_v3_UpstreamHttpProtocolOptions*)envoy_config_cluster_v3_Cluster_upstream_http_protocol_options(msg);
         
     | 
| 
       774 
1160 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       775 
     | 
    
         
            -
                sub = (struct envoy_config_core_v3_UpstreamHttpProtocolOptions*) 
     | 
| 
      
 1161 
     | 
    
         
            +
                sub = (struct envoy_config_core_v3_UpstreamHttpProtocolOptions*)_upb_Message_New(&envoy_config_core_v3_UpstreamHttpProtocolOptions_msginit, arena);
         
     | 
| 
       776 
1162 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       777 
1163 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_upstream_http_protocol_options(msg, sub);
         
     | 
| 
       778 
1164 
     | 
    
         
             
              }
         
     | 
| 
       779 
1165 
     | 
    
         
             
              return sub;
         
     | 
| 
       780 
1166 
     | 
    
         
             
            }
         
     | 
| 
       781 
1167 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_track_timeout_budgets(envoy_config_cluster_v3_Cluster *msg, bool value) {
         
     | 
| 
       782 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 1168 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(26, 26), bool) = value;
         
     | 
| 
       783 
1169 
     | 
    
         
             
            }
         
     | 
| 
       784 
1170 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_upstream_config(envoy_config_cluster_v3_Cluster *msg, struct envoy_config_core_v3_TypedExtensionConfig* value) {
         
     | 
| 
       785 
1171 
     | 
    
         
             
              _upb_sethas(msg, 23);
         
     | 
| 
       786 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 1172 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(164, 280), struct envoy_config_core_v3_TypedExtensionConfig*) = value;
         
     | 
| 
       787 
1173 
     | 
    
         
             
            }
         
     | 
| 
       788 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_TypedExtensionConfig* envoy_config_cluster_v3_Cluster_mutable_upstream_config(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 1174 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_TypedExtensionConfig* envoy_config_cluster_v3_Cluster_mutable_upstream_config(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       789 
1175 
     | 
    
         
             
              struct envoy_config_core_v3_TypedExtensionConfig* sub = (struct envoy_config_core_v3_TypedExtensionConfig*)envoy_config_cluster_v3_Cluster_upstream_config(msg);
         
     | 
| 
       790 
1176 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       791 
     | 
    
         
            -
                sub = (struct envoy_config_core_v3_TypedExtensionConfig*) 
     | 
| 
      
 1177 
     | 
    
         
            +
                sub = (struct envoy_config_core_v3_TypedExtensionConfig*)_upb_Message_New(&envoy_config_core_v3_TypedExtensionConfig_msginit, arena);
         
     | 
| 
       792 
1178 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       793 
1179 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_upstream_config(msg, sub);
         
     | 
| 
       794 
1180 
     | 
    
         
             
              }
         
     | 
| 
         @@ -796,12 +1182,12 @@ UPB_INLINE struct envoy_config_core_v3_TypedExtensionConfig* envoy_config_cluste 
     | 
|
| 
       796 
1182 
     | 
    
         
             
            }
         
     | 
| 
       797 
1183 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_track_cluster_stats(envoy_config_cluster_v3_Cluster *msg, envoy_config_cluster_v3_TrackClusterStats* value) {
         
     | 
| 
       798 
1184 
     | 
    
         
             
              _upb_sethas(msg, 24);
         
     | 
| 
       799 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 1185 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(168, 288), envoy_config_cluster_v3_TrackClusterStats*) = value;
         
     | 
| 
       800 
1186 
     | 
    
         
             
            }
         
     | 
| 
       801 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_TrackClusterStats* envoy_config_cluster_v3_Cluster_mutable_track_cluster_stats(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 1187 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_TrackClusterStats* envoy_config_cluster_v3_Cluster_mutable_track_cluster_stats(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       802 
1188 
     | 
    
         
             
              struct envoy_config_cluster_v3_TrackClusterStats* sub = (struct envoy_config_cluster_v3_TrackClusterStats*)envoy_config_cluster_v3_Cluster_track_cluster_stats(msg);
         
     | 
| 
       803 
1189 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       804 
     | 
    
         
            -
                sub = (struct envoy_config_cluster_v3_TrackClusterStats*) 
     | 
| 
      
 1190 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_TrackClusterStats*)_upb_Message_New(&envoy_config_cluster_v3_TrackClusterStats_msginit, arena);
         
     | 
| 
       805 
1191 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       806 
1192 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_track_cluster_stats(msg, sub);
         
     | 
| 
       807 
1193 
     | 
    
         
             
              }
         
     | 
| 
         @@ -809,27 +1195,27 @@ UPB_INLINE struct envoy_config_cluster_v3_TrackClusterStats* envoy_config_cluste 
     | 
|
| 
       809 
1195 
     | 
    
         
             
            }
         
     | 
| 
       810 
1196 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_preconnect_policy(envoy_config_cluster_v3_Cluster *msg, envoy_config_cluster_v3_Cluster_PreconnectPolicy* value) {
         
     | 
| 
       811 
1197 
     | 
    
         
             
              _upb_sethas(msg, 25);
         
     | 
| 
       812 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 1198 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(172, 296), envoy_config_cluster_v3_Cluster_PreconnectPolicy*) = value;
         
     | 
| 
       813 
1199 
     | 
    
         
             
            }
         
     | 
| 
       814 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_PreconnectPolicy* envoy_config_cluster_v3_Cluster_mutable_preconnect_policy(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 1200 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_PreconnectPolicy* envoy_config_cluster_v3_Cluster_mutable_preconnect_policy(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       815 
1201 
     | 
    
         
             
              struct envoy_config_cluster_v3_Cluster_PreconnectPolicy* sub = (struct envoy_config_cluster_v3_Cluster_PreconnectPolicy*)envoy_config_cluster_v3_Cluster_preconnect_policy(msg);
         
     | 
| 
       816 
1202 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       817 
     | 
    
         
            -
                sub = (struct envoy_config_cluster_v3_Cluster_PreconnectPolicy*) 
     | 
| 
      
 1203 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_Cluster_PreconnectPolicy*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_PreconnectPolicy_msginit, arena);
         
     | 
| 
       818 
1204 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       819 
1205 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_preconnect_policy(msg, sub);
         
     | 
| 
       820 
1206 
     | 
    
         
             
              }
         
     | 
| 
       821 
1207 
     | 
    
         
             
              return sub;
         
     | 
| 
       822 
1208 
     | 
    
         
             
            }
         
     | 
| 
       823 
1209 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_connection_pool_per_downstream_connection(envoy_config_cluster_v3_Cluster *msg, bool value) {
         
     | 
| 
       824 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 1210 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(27, 27), bool) = value;
         
     | 
| 
       825 
1211 
     | 
    
         
             
            }
         
     | 
| 
       826 
1212 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_maglev_lb_config(envoy_config_cluster_v3_Cluster *msg, envoy_config_cluster_v3_Cluster_MaglevLbConfig* value) {
         
     | 
| 
       827 
     | 
    
         
            -
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_MaglevLbConfig*, UPB_SIZE( 
     | 
| 
      
 1213 
     | 
    
         
            +
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_MaglevLbConfig*, UPB_SIZE(36, 336), value, UPB_SIZE(28, 28), 52);
         
     | 
| 
       828 
1214 
     | 
    
         
             
            }
         
     | 
| 
       829 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_MaglevLbConfig* envoy_config_cluster_v3_Cluster_mutable_maglev_lb_config(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 1215 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_MaglevLbConfig* envoy_config_cluster_v3_Cluster_mutable_maglev_lb_config(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       830 
1216 
     | 
    
         
             
              struct envoy_config_cluster_v3_Cluster_MaglevLbConfig* sub = (struct envoy_config_cluster_v3_Cluster_MaglevLbConfig*)envoy_config_cluster_v3_Cluster_maglev_lb_config(msg);
         
     | 
| 
       831 
1217 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       832 
     | 
    
         
            -
                sub = (struct envoy_config_cluster_v3_Cluster_MaglevLbConfig*) 
     | 
| 
      
 1218 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_Cluster_MaglevLbConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_MaglevLbConfig_msginit, arena);
         
     | 
| 
       833 
1219 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       834 
1220 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_maglev_lb_config(msg, sub);
         
     | 
| 
       835 
1221 
     | 
    
         
             
              }
         
     | 
| 
         @@ -837,12 +1223,12 @@ UPB_INLINE struct envoy_config_cluster_v3_Cluster_MaglevLbConfig* envoy_config_c 
     | 
|
| 
       837 
1223 
     | 
    
         
             
            }
         
     | 
| 
       838 
1224 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_dns_resolution_config(envoy_config_cluster_v3_Cluster *msg, struct envoy_config_core_v3_DnsResolutionConfig* value) {
         
     | 
| 
       839 
1225 
     | 
    
         
             
              _upb_sethas(msg, 26);
         
     | 
| 
       840 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 1226 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(176, 304), struct envoy_config_core_v3_DnsResolutionConfig*) = value;
         
     | 
| 
       841 
1227 
     | 
    
         
             
            }
         
     | 
| 
       842 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_DnsResolutionConfig* envoy_config_cluster_v3_Cluster_mutable_dns_resolution_config(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 1228 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_DnsResolutionConfig* envoy_config_cluster_v3_Cluster_mutable_dns_resolution_config(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       843 
1229 
     | 
    
         
             
              struct envoy_config_core_v3_DnsResolutionConfig* sub = (struct envoy_config_core_v3_DnsResolutionConfig*)envoy_config_cluster_v3_Cluster_dns_resolution_config(msg);
         
     | 
| 
       844 
1230 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       845 
     | 
    
         
            -
                sub = (struct envoy_config_core_v3_DnsResolutionConfig*) 
     | 
| 
      
 1231 
     | 
    
         
            +
                sub = (struct envoy_config_core_v3_DnsResolutionConfig*)_upb_Message_New(&envoy_config_core_v3_DnsResolutionConfig_msginit, arena);
         
     | 
| 
       846 
1232 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       847 
1233 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_dns_resolution_config(msg, sub);
         
     | 
| 
       848 
1234 
     | 
    
         
             
              }
         
     | 
| 
         @@ -850,12 +1236,12 @@ UPB_INLINE struct envoy_config_core_v3_DnsResolutionConfig* envoy_config_cluster 
     | 
|
| 
       850 
1236 
     | 
    
         
             
            }
         
     | 
| 
       851 
1237 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_wait_for_warm_on_init(envoy_config_cluster_v3_Cluster *msg, struct google_protobuf_BoolValue* value) {
         
     | 
| 
       852 
1238 
     | 
    
         
             
              _upb_sethas(msg, 27);
         
     | 
| 
       853 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 1239 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(180, 312), struct google_protobuf_BoolValue*) = value;
         
     | 
| 
       854 
1240 
     | 
    
         
             
            }
         
     | 
| 
       855 
     | 
    
         
            -
            UPB_INLINE struct google_protobuf_BoolValue* envoy_config_cluster_v3_Cluster_mutable_wait_for_warm_on_init(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 1241 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_BoolValue* envoy_config_cluster_v3_Cluster_mutable_wait_for_warm_on_init(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       856 
1242 
     | 
    
         
             
              struct google_protobuf_BoolValue* sub = (struct google_protobuf_BoolValue*)envoy_config_cluster_v3_Cluster_wait_for_warm_on_init(msg);
         
     | 
| 
       857 
1243 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       858 
     | 
    
         
            -
                sub = (struct google_protobuf_BoolValue*) 
     | 
| 
      
 1244 
     | 
    
         
            +
                sub = (struct google_protobuf_BoolValue*)_upb_Message_New(&google_protobuf_BoolValue_msginit, arena);
         
     | 
| 
       859 
1245 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       860 
1246 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_wait_for_warm_on_init(msg, sub);
         
     | 
| 
       861 
1247 
     | 
    
         
             
              }
         
     | 
| 
         @@ -863,55 +1249,97 @@ UPB_INLINE struct google_protobuf_BoolValue* envoy_config_cluster_v3_Cluster_mut 
     | 
|
| 
       863 
1249 
     | 
    
         
             
            }
         
     | 
| 
       864 
1250 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_typed_dns_resolver_config(envoy_config_cluster_v3_Cluster *msg, struct envoy_config_core_v3_TypedExtensionConfig* value) {
         
     | 
| 
       865 
1251 
     | 
    
         
             
              _upb_sethas(msg, 28);
         
     | 
| 
       866 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 1252 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(184, 320), struct envoy_config_core_v3_TypedExtensionConfig*) = value;
         
     | 
| 
       867 
1253 
     | 
    
         
             
            }
         
     | 
| 
       868 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_TypedExtensionConfig* envoy_config_cluster_v3_Cluster_mutable_typed_dns_resolver_config(envoy_config_cluster_v3_Cluster  
     | 
| 
      
 1254 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_TypedExtensionConfig* envoy_config_cluster_v3_Cluster_mutable_typed_dns_resolver_config(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
       869 
1255 
     | 
    
         
             
              struct envoy_config_core_v3_TypedExtensionConfig* sub = (struct envoy_config_core_v3_TypedExtensionConfig*)envoy_config_cluster_v3_Cluster_typed_dns_resolver_config(msg);
         
     | 
| 
       870 
1256 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       871 
     | 
    
         
            -
                sub = (struct envoy_config_core_v3_TypedExtensionConfig*) 
     | 
| 
      
 1257 
     | 
    
         
            +
                sub = (struct envoy_config_core_v3_TypedExtensionConfig*)_upb_Message_New(&envoy_config_core_v3_TypedExtensionConfig_msginit, arena);
         
     | 
| 
       872 
1258 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       873 
1259 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_set_typed_dns_resolver_config(msg, sub);
         
     | 
| 
       874 
1260 
     | 
    
         
             
              }
         
     | 
| 
       875 
1261 
     | 
    
         
             
              return sub;
         
     | 
| 
       876 
1262 
     | 
    
         
             
            }
         
     | 
| 
      
 1263 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_set_round_robin_lb_config(envoy_config_cluster_v3_Cluster *msg, envoy_config_cluster_v3_Cluster_RoundRobinLbConfig* value) {
         
     | 
| 
      
 1264 
     | 
    
         
            +
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_RoundRobinLbConfig*, UPB_SIZE(36, 336), value, UPB_SIZE(28, 28), 56);
         
     | 
| 
      
 1265 
     | 
    
         
            +
            }
         
     | 
| 
      
 1266 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_RoundRobinLbConfig* envoy_config_cluster_v3_Cluster_mutable_round_robin_lb_config(envoy_config_cluster_v3_Cluster* msg, upb_Arena* arena) {
         
     | 
| 
      
 1267 
     | 
    
         
            +
              struct envoy_config_cluster_v3_Cluster_RoundRobinLbConfig* sub = (struct envoy_config_cluster_v3_Cluster_RoundRobinLbConfig*)envoy_config_cluster_v3_Cluster_round_robin_lb_config(msg);
         
     | 
| 
      
 1268 
     | 
    
         
            +
              if (sub == NULL) {
         
     | 
| 
      
 1269 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_Cluster_RoundRobinLbConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_msginit, arena);
         
     | 
| 
      
 1270 
     | 
    
         
            +
                if (!sub) return NULL;
         
     | 
| 
      
 1271 
     | 
    
         
            +
                envoy_config_cluster_v3_Cluster_set_round_robin_lb_config(msg, sub);
         
     | 
| 
      
 1272 
     | 
    
         
            +
              }
         
     | 
| 
      
 1273 
     | 
    
         
            +
              return sub;
         
     | 
| 
      
 1274 
     | 
    
         
            +
            }
         
     | 
| 
       877 
1275 
     | 
    
         | 
| 
       878 
1276 
     | 
    
         
             
            /* envoy.config.cluster.v3.Cluster.TransportSocketMatch */
         
     | 
| 
       879 
1277 
     | 
    
         | 
| 
       880 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_TransportSocketMatch  
     | 
| 
       881 
     | 
    
         
            -
              return (envoy_config_cluster_v3_Cluster_TransportSocketMatch 
     | 
| 
      
 1278 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_TransportSocketMatch* envoy_config_cluster_v3_Cluster_TransportSocketMatch_new(upb_Arena* arena) {
         
     | 
| 
      
 1279 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_TransportSocketMatch*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_TransportSocketMatch_msginit, arena);
         
     | 
| 
      
 1280 
     | 
    
         
            +
            }
         
     | 
| 
      
 1281 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_TransportSocketMatch* envoy_config_cluster_v3_Cluster_TransportSocketMatch_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 1282 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_TransportSocketMatch* ret = envoy_config_cluster_v3_Cluster_TransportSocketMatch_new(arena);
         
     | 
| 
      
 1283 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 1284 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_TransportSocketMatch_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 1285 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 1286 
     | 
    
         
            +
              }
         
     | 
| 
      
 1287 
     | 
    
         
            +
              return ret;
         
     | 
| 
       882 
1288 
     | 
    
         
             
            }
         
     | 
| 
       883 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_TransportSocketMatch  
     | 
| 
       884 
     | 
    
         
            -
             
     | 
| 
       885 
     | 
    
         
            -
             
     | 
| 
       886 
     | 
    
         
            -
               
     | 
| 
      
 1289 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_TransportSocketMatch* envoy_config_cluster_v3_Cluster_TransportSocketMatch_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 1290 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 1291 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 1292 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_TransportSocketMatch* ret = envoy_config_cluster_v3_Cluster_TransportSocketMatch_new(arena);
         
     | 
| 
      
 1293 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 1294 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_TransportSocketMatch_msginit, extreg, options, arena) !=
         
     | 
| 
      
 1295 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 1296 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 1297 
     | 
    
         
            +
              }
         
     | 
| 
      
 1298 
     | 
    
         
            +
              return ret;
         
     | 
| 
       887 
1299 
     | 
    
         
             
            }
         
     | 
| 
       888 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       889 
     | 
    
         
            -
             
     | 
| 
       890 
     | 
    
         
            -
              envoy_config_cluster_v3_Cluster_TransportSocketMatch *ret = envoy_config_cluster_v3_Cluster_TransportSocketMatch_new(arena);
         
     | 
| 
       891 
     | 
    
         
            -
              return (ret && _upb_decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_TransportSocketMatch_msginit, arena, options))
         
     | 
| 
       892 
     | 
    
         
            -
                  ? ret : NULL;
         
     | 
| 
      
 1300 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_TransportSocketMatch_serialize(const envoy_config_cluster_v3_Cluster_TransportSocketMatch* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 1301 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_TransportSocketMatch_msginit, 0, arena, len);
         
     | 
| 
       893 
1302 
     | 
    
         
             
            }
         
     | 
| 
       894 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       895 
     | 
    
         
            -
             
     | 
| 
      
 1303 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_TransportSocketMatch_serialize_ex(const envoy_config_cluster_v3_Cluster_TransportSocketMatch* msg, int options,
         
     | 
| 
      
 1304 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 1305 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_TransportSocketMatch_msginit, options, arena, len);
         
     | 
| 
      
 1306 
     | 
    
         
            +
            }
         
     | 
| 
      
 1307 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_TransportSocketMatch_clear_name(const envoy_config_cluster_v3_Cluster_TransportSocketMatch* msg) {
         
     | 
| 
      
 1308 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_StringView) = upb_StringView_FromDataAndSize(NULL, 0);
         
     | 
| 
      
 1309 
     | 
    
         
            +
            }
         
     | 
| 
      
 1310 
     | 
    
         
            +
            UPB_INLINE upb_StringView envoy_config_cluster_v3_Cluster_TransportSocketMatch_name(const envoy_config_cluster_v3_Cluster_TransportSocketMatch* msg) {
         
     | 
| 
      
 1311 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_StringView);
         
     | 
| 
      
 1312 
     | 
    
         
            +
            }
         
     | 
| 
      
 1313 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_TransportSocketMatch_has_match(const envoy_config_cluster_v3_Cluster_TransportSocketMatch* msg) {
         
     | 
| 
      
 1314 
     | 
    
         
            +
              return _upb_hasbit(msg, 1);
         
     | 
| 
      
 1315 
     | 
    
         
            +
            }
         
     | 
| 
      
 1316 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_TransportSocketMatch_clear_match(const envoy_config_cluster_v3_Cluster_TransportSocketMatch* msg) {
         
     | 
| 
      
 1317 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const upb_Message*) = NULL;
         
     | 
| 
      
 1318 
     | 
    
         
            +
            }
         
     | 
| 
      
 1319 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_Struct* envoy_config_cluster_v3_Cluster_TransportSocketMatch_match(const envoy_config_cluster_v3_Cluster_TransportSocketMatch* msg) {
         
     | 
| 
      
 1320 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct google_protobuf_Struct*);
         
     | 
| 
      
 1321 
     | 
    
         
            +
            }
         
     | 
| 
      
 1322 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_TransportSocketMatch_has_transport_socket(const envoy_config_cluster_v3_Cluster_TransportSocketMatch* msg) {
         
     | 
| 
      
 1323 
     | 
    
         
            +
              return _upb_hasbit(msg, 2);
         
     | 
| 
      
 1324 
     | 
    
         
            +
            }
         
     | 
| 
      
 1325 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_TransportSocketMatch_clear_transport_socket(const envoy_config_cluster_v3_Cluster_TransportSocketMatch* msg) {
         
     | 
| 
      
 1326 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(16, 32), const upb_Message*) = NULL;
         
     | 
| 
      
 1327 
     | 
    
         
            +
            }
         
     | 
| 
      
 1328 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_TransportSocket* envoy_config_cluster_v3_Cluster_TransportSocketMatch_transport_socket(const envoy_config_cluster_v3_Cluster_TransportSocketMatch* msg) {
         
     | 
| 
      
 1329 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(16, 32), const struct envoy_config_core_v3_TransportSocket*);
         
     | 
| 
       896 
1330 
     | 
    
         
             
            }
         
     | 
| 
       897 
1331 
     | 
    
         | 
| 
       898 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       899 
     | 
    
         
            -
             
     | 
| 
       900 
     | 
    
         
            -
            UPB_INLINE const struct google_protobuf_Struct* envoy_config_cluster_v3_Cluster_TransportSocketMatch_match(const envoy_config_cluster_v3_Cluster_TransportSocketMatch *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct google_protobuf_Struct*); }
         
     | 
| 
       901 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_TransportSocketMatch_has_transport_socket(const envoy_config_cluster_v3_Cluster_TransportSocketMatch *msg) { return _upb_hasbit(msg, 2); }
         
     | 
| 
       902 
     | 
    
         
            -
            UPB_INLINE const struct envoy_config_core_v3_TransportSocket* envoy_config_cluster_v3_Cluster_TransportSocketMatch_transport_socket(const envoy_config_cluster_v3_Cluster_TransportSocketMatch *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(16, 32), const struct envoy_config_core_v3_TransportSocket*); }
         
     | 
| 
       903 
     | 
    
         
            -
             
     | 
| 
       904 
     | 
    
         
            -
            UPB_INLINE void envoy_config_cluster_v3_Cluster_TransportSocketMatch_set_name(envoy_config_cluster_v3_Cluster_TransportSocketMatch *msg, upb_strview value) {
         
     | 
| 
       905 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
         
     | 
| 
      
 1332 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_TransportSocketMatch_set_name(envoy_config_cluster_v3_Cluster_TransportSocketMatch *msg, upb_StringView value) {
         
     | 
| 
      
 1333 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_StringView) = value;
         
     | 
| 
       906 
1334 
     | 
    
         
             
            }
         
     | 
| 
       907 
1335 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_TransportSocketMatch_set_match(envoy_config_cluster_v3_Cluster_TransportSocketMatch *msg, struct google_protobuf_Struct* value) {
         
     | 
| 
       908 
1336 
     | 
    
         
             
              _upb_sethas(msg, 1);
         
     | 
| 
       909 
1337 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(12, 24), struct google_protobuf_Struct*) = value;
         
     | 
| 
       910 
1338 
     | 
    
         
             
            }
         
     | 
| 
       911 
     | 
    
         
            -
            UPB_INLINE struct google_protobuf_Struct* envoy_config_cluster_v3_Cluster_TransportSocketMatch_mutable_match(envoy_config_cluster_v3_Cluster_TransportSocketMatch  
     | 
| 
      
 1339 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_Struct* envoy_config_cluster_v3_Cluster_TransportSocketMatch_mutable_match(envoy_config_cluster_v3_Cluster_TransportSocketMatch* msg, upb_Arena* arena) {
         
     | 
| 
       912 
1340 
     | 
    
         
             
              struct google_protobuf_Struct* sub = (struct google_protobuf_Struct*)envoy_config_cluster_v3_Cluster_TransportSocketMatch_match(msg);
         
     | 
| 
       913 
1341 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       914 
     | 
    
         
            -
                sub = (struct google_protobuf_Struct*) 
     | 
| 
      
 1342 
     | 
    
         
            +
                sub = (struct google_protobuf_Struct*)_upb_Message_New(&google_protobuf_Struct_msginit, arena);
         
     | 
| 
       915 
1343 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       916 
1344 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_TransportSocketMatch_set_match(msg, sub);
         
     | 
| 
       917 
1345 
     | 
    
         
             
              }
         
     | 
| 
         @@ -921,10 +1349,10 @@ UPB_INLINE void envoy_config_cluster_v3_Cluster_TransportSocketMatch_set_transpo 
     | 
|
| 
       921 
1349 
     | 
    
         
             
              _upb_sethas(msg, 2);
         
     | 
| 
       922 
1350 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(16, 32), struct envoy_config_core_v3_TransportSocket*) = value;
         
     | 
| 
       923 
1351 
     | 
    
         
             
            }
         
     | 
| 
       924 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_TransportSocket* envoy_config_cluster_v3_Cluster_TransportSocketMatch_mutable_transport_socket(envoy_config_cluster_v3_Cluster_TransportSocketMatch  
     | 
| 
      
 1352 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_TransportSocket* envoy_config_cluster_v3_Cluster_TransportSocketMatch_mutable_transport_socket(envoy_config_cluster_v3_Cluster_TransportSocketMatch* msg, upb_Arena* arena) {
         
     | 
| 
       925 
1353 
     | 
    
         
             
              struct envoy_config_core_v3_TransportSocket* sub = (struct envoy_config_core_v3_TransportSocket*)envoy_config_cluster_v3_Cluster_TransportSocketMatch_transport_socket(msg);
         
     | 
| 
       926 
1354 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       927 
     | 
    
         
            -
                sub = (struct envoy_config_core_v3_TransportSocket*) 
     | 
| 
      
 1355 
     | 
    
         
            +
                sub = (struct envoy_config_core_v3_TransportSocket*)_upb_Message_New(&envoy_config_core_v3_TransportSocket_msginit, arena);
         
     | 
| 
       928 
1356 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       929 
1357 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_TransportSocketMatch_set_transport_socket(msg, sub);
         
     | 
| 
       930 
1358 
     | 
    
         
             
              }
         
     | 
| 
         @@ -933,39 +1361,62 @@ UPB_INLINE struct envoy_config_core_v3_TransportSocket* envoy_config_cluster_v3_ 
     | 
|
| 
       933 
1361 
     | 
    
         | 
| 
       934 
1362 
     | 
    
         
             
            /* envoy.config.cluster.v3.Cluster.CustomClusterType */
         
     | 
| 
       935 
1363 
     | 
    
         | 
| 
       936 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_CustomClusterType  
     | 
| 
       937 
     | 
    
         
            -
              return (envoy_config_cluster_v3_Cluster_CustomClusterType 
     | 
| 
      
 1364 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_CustomClusterType* envoy_config_cluster_v3_Cluster_CustomClusterType_new(upb_Arena* arena) {
         
     | 
| 
      
 1365 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_CustomClusterType*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_CustomClusterType_msginit, arena);
         
     | 
| 
       938 
1366 
     | 
    
         
             
            }
         
     | 
| 
       939 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_CustomClusterType  
     | 
| 
       940 
     | 
    
         
            -
             
     | 
| 
       941 
     | 
    
         
            -
               
     | 
| 
       942 
     | 
    
         
            -
               
     | 
| 
      
 1367 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_CustomClusterType* envoy_config_cluster_v3_Cluster_CustomClusterType_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 1368 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_CustomClusterType* ret = envoy_config_cluster_v3_Cluster_CustomClusterType_new(arena);
         
     | 
| 
      
 1369 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 1370 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_CustomClusterType_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 1371 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 1372 
     | 
    
         
            +
              }
         
     | 
| 
      
 1373 
     | 
    
         
            +
              return ret;
         
     | 
| 
       943 
1374 
     | 
    
         
             
            }
         
     | 
| 
       944 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_CustomClusterType  
     | 
| 
       945 
     | 
    
         
            -
                                        
     | 
| 
       946 
     | 
    
         
            -
             
     | 
| 
       947 
     | 
    
         
            -
               
     | 
| 
       948 
     | 
    
         
            -
             
     | 
| 
      
 1375 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_CustomClusterType* envoy_config_cluster_v3_Cluster_CustomClusterType_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 1376 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 1377 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 1378 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_CustomClusterType* ret = envoy_config_cluster_v3_Cluster_CustomClusterType_new(arena);
         
     | 
| 
      
 1379 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 1380 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_CustomClusterType_msginit, extreg, options, arena) !=
         
     | 
| 
      
 1381 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 1382 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 1383 
     | 
    
         
            +
              }
         
     | 
| 
      
 1384 
     | 
    
         
            +
              return ret;
         
     | 
| 
       949 
1385 
     | 
    
         
             
            }
         
     | 
| 
       950 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       951 
     | 
    
         
            -
              return  
     | 
| 
      
 1386 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_CustomClusterType_serialize(const envoy_config_cluster_v3_Cluster_CustomClusterType* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 1387 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_CustomClusterType_msginit, 0, arena, len);
         
     | 
| 
      
 1388 
     | 
    
         
            +
            }
         
     | 
| 
      
 1389 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_CustomClusterType_serialize_ex(const envoy_config_cluster_v3_Cluster_CustomClusterType* msg, int options,
         
     | 
| 
      
 1390 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 1391 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_CustomClusterType_msginit, options, arena, len);
         
     | 
| 
      
 1392 
     | 
    
         
            +
            }
         
     | 
| 
      
 1393 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CustomClusterType_clear_name(const envoy_config_cluster_v3_Cluster_CustomClusterType* msg) {
         
     | 
| 
      
 1394 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_StringView) = upb_StringView_FromDataAndSize(NULL, 0);
         
     | 
| 
      
 1395 
     | 
    
         
            +
            }
         
     | 
| 
      
 1396 
     | 
    
         
            +
            UPB_INLINE upb_StringView envoy_config_cluster_v3_Cluster_CustomClusterType_name(const envoy_config_cluster_v3_Cluster_CustomClusterType* msg) {
         
     | 
| 
      
 1397 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_StringView);
         
     | 
| 
      
 1398 
     | 
    
         
            +
            }
         
     | 
| 
      
 1399 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_CustomClusterType_has_typed_config(const envoy_config_cluster_v3_Cluster_CustomClusterType* msg) {
         
     | 
| 
      
 1400 
     | 
    
         
            +
              return _upb_hasbit(msg, 1);
         
     | 
| 
      
 1401 
     | 
    
         
            +
            }
         
     | 
| 
      
 1402 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CustomClusterType_clear_typed_config(const envoy_config_cluster_v3_Cluster_CustomClusterType* msg) {
         
     | 
| 
      
 1403 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const upb_Message*) = NULL;
         
     | 
| 
      
 1404 
     | 
    
         
            +
            }
         
     | 
| 
      
 1405 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_Any* envoy_config_cluster_v3_Cluster_CustomClusterType_typed_config(const envoy_config_cluster_v3_Cluster_CustomClusterType* msg) {
         
     | 
| 
      
 1406 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct google_protobuf_Any*);
         
     | 
| 
       952 
1407 
     | 
    
         
             
            }
         
     | 
| 
       953 
1408 
     | 
    
         | 
| 
       954 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       955 
     | 
    
         
            -
             
     | 
| 
       956 
     | 
    
         
            -
            UPB_INLINE const struct google_protobuf_Any* envoy_config_cluster_v3_Cluster_CustomClusterType_typed_config(const envoy_config_cluster_v3_Cluster_CustomClusterType *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct google_protobuf_Any*); }
         
     | 
| 
       957 
     | 
    
         
            -
             
     | 
| 
       958 
     | 
    
         
            -
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CustomClusterType_set_name(envoy_config_cluster_v3_Cluster_CustomClusterType *msg, upb_strview value) {
         
     | 
| 
       959 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
         
     | 
| 
      
 1409 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CustomClusterType_set_name(envoy_config_cluster_v3_Cluster_CustomClusterType *msg, upb_StringView value) {
         
     | 
| 
      
 1410 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_StringView) = value;
         
     | 
| 
       960 
1411 
     | 
    
         
             
            }
         
     | 
| 
       961 
1412 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CustomClusterType_set_typed_config(envoy_config_cluster_v3_Cluster_CustomClusterType *msg, struct google_protobuf_Any* value) {
         
     | 
| 
       962 
1413 
     | 
    
         
             
              _upb_sethas(msg, 1);
         
     | 
| 
       963 
1414 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(12, 24), struct google_protobuf_Any*) = value;
         
     | 
| 
       964 
1415 
     | 
    
         
             
            }
         
     | 
| 
       965 
     | 
    
         
            -
            UPB_INLINE struct google_protobuf_Any* envoy_config_cluster_v3_Cluster_CustomClusterType_mutable_typed_config(envoy_config_cluster_v3_Cluster_CustomClusterType  
     | 
| 
      
 1416 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_Any* envoy_config_cluster_v3_Cluster_CustomClusterType_mutable_typed_config(envoy_config_cluster_v3_Cluster_CustomClusterType* msg, upb_Arena* arena) {
         
     | 
| 
       966 
1417 
     | 
    
         
             
              struct google_protobuf_Any* sub = (struct google_protobuf_Any*)envoy_config_cluster_v3_Cluster_CustomClusterType_typed_config(msg);
         
     | 
| 
       967 
1418 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       968 
     | 
    
         
            -
                sub = (struct google_protobuf_Any*) 
     | 
| 
      
 1419 
     | 
    
         
            +
                sub = (struct google_protobuf_Any*)_upb_Message_New(&google_protobuf_Any_msginit, arena);
         
     | 
| 
       969 
1420 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       970 
1421 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_CustomClusterType_set_typed_config(msg, sub);
         
     | 
| 
       971 
1422 
     | 
    
         
             
              }
         
     | 
| 
         @@ -974,74 +1425,147 @@ UPB_INLINE struct google_protobuf_Any* envoy_config_cluster_v3_Cluster_CustomClu 
     | 
|
| 
       974 
1425 
     | 
    
         | 
| 
       975 
1426 
     | 
    
         
             
            /* envoy.config.cluster.v3.Cluster.EdsClusterConfig */
         
     | 
| 
       976 
1427 
     | 
    
         | 
| 
       977 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_EdsClusterConfig  
     | 
| 
       978 
     | 
    
         
            -
              return (envoy_config_cluster_v3_Cluster_EdsClusterConfig 
     | 
| 
      
 1428 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_EdsClusterConfig* envoy_config_cluster_v3_Cluster_EdsClusterConfig_new(upb_Arena* arena) {
         
     | 
| 
      
 1429 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_EdsClusterConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_EdsClusterConfig_msginit, arena);
         
     | 
| 
      
 1430 
     | 
    
         
            +
            }
         
     | 
| 
      
 1431 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_EdsClusterConfig* envoy_config_cluster_v3_Cluster_EdsClusterConfig_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 1432 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_EdsClusterConfig* ret = envoy_config_cluster_v3_Cluster_EdsClusterConfig_new(arena);
         
     | 
| 
      
 1433 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 1434 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_EdsClusterConfig_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 1435 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 1436 
     | 
    
         
            +
              }
         
     | 
| 
      
 1437 
     | 
    
         
            +
              return ret;
         
     | 
| 
       979 
1438 
     | 
    
         
             
            }
         
     | 
| 
       980 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_EdsClusterConfig  
     | 
| 
       981 
     | 
    
         
            -
             
     | 
| 
       982 
     | 
    
         
            -
             
     | 
| 
       983 
     | 
    
         
            -
               
     | 
| 
      
 1439 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_EdsClusterConfig* envoy_config_cluster_v3_Cluster_EdsClusterConfig_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 1440 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 1441 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 1442 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_EdsClusterConfig* ret = envoy_config_cluster_v3_Cluster_EdsClusterConfig_new(arena);
         
     | 
| 
      
 1443 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 1444 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_EdsClusterConfig_msginit, extreg, options, arena) !=
         
     | 
| 
      
 1445 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 1446 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 1447 
     | 
    
         
            +
              }
         
     | 
| 
      
 1448 
     | 
    
         
            +
              return ret;
         
     | 
| 
       984 
1449 
     | 
    
         
             
            }
         
     | 
| 
       985 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       986 
     | 
    
         
            -
             
     | 
| 
       987 
     | 
    
         
            -
              envoy_config_cluster_v3_Cluster_EdsClusterConfig *ret = envoy_config_cluster_v3_Cluster_EdsClusterConfig_new(arena);
         
     | 
| 
       988 
     | 
    
         
            -
              return (ret && _upb_decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_EdsClusterConfig_msginit, arena, options))
         
     | 
| 
       989 
     | 
    
         
            -
                  ? ret : NULL;
         
     | 
| 
      
 1450 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_EdsClusterConfig_serialize(const envoy_config_cluster_v3_Cluster_EdsClusterConfig* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 1451 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_EdsClusterConfig_msginit, 0, arena, len);
         
     | 
| 
       990 
1452 
     | 
    
         
             
            }
         
     | 
| 
       991 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       992 
     | 
    
         
            -
             
     | 
| 
      
 1453 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_EdsClusterConfig_serialize_ex(const envoy_config_cluster_v3_Cluster_EdsClusterConfig* msg, int options,
         
     | 
| 
      
 1454 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 1455 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_EdsClusterConfig_msginit, options, arena, len);
         
     | 
| 
      
 1456 
     | 
    
         
            +
            }
         
     | 
| 
      
 1457 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_EdsClusterConfig_has_eds_config(const envoy_config_cluster_v3_Cluster_EdsClusterConfig* msg) {
         
     | 
| 
      
 1458 
     | 
    
         
            +
              return _upb_hasbit(msg, 1);
         
     | 
| 
      
 1459 
     | 
    
         
            +
            }
         
     | 
| 
      
 1460 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_EdsClusterConfig_clear_eds_config(const envoy_config_cluster_v3_Cluster_EdsClusterConfig* msg) {
         
     | 
| 
      
 1461 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const upb_Message*) = NULL;
         
     | 
| 
      
 1462 
     | 
    
         
            +
            }
         
     | 
| 
      
 1463 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_ConfigSource* envoy_config_cluster_v3_Cluster_EdsClusterConfig_eds_config(const envoy_config_cluster_v3_Cluster_EdsClusterConfig* msg) {
         
     | 
| 
      
 1464 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct envoy_config_core_v3_ConfigSource*);
         
     | 
| 
      
 1465 
     | 
    
         
            +
            }
         
     | 
| 
      
 1466 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_EdsClusterConfig_clear_service_name(const envoy_config_cluster_v3_Cluster_EdsClusterConfig* msg) {
         
     | 
| 
      
 1467 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(8, 16), upb_StringView) = upb_StringView_FromDataAndSize(NULL, 0);
         
     | 
| 
      
 1468 
     | 
    
         
            +
            }
         
     | 
| 
      
 1469 
     | 
    
         
            +
            UPB_INLINE upb_StringView envoy_config_cluster_v3_Cluster_EdsClusterConfig_service_name(const envoy_config_cluster_v3_Cluster_EdsClusterConfig* msg) {
         
     | 
| 
      
 1470 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), upb_StringView);
         
     | 
| 
       993 
1471 
     | 
    
         
             
            }
         
     | 
| 
       994 
     | 
    
         
            -
             
     | 
| 
       995 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_EdsClusterConfig_has_eds_config(const envoy_config_cluster_v3_Cluster_EdsClusterConfig *msg) { return _upb_hasbit(msg, 1); }
         
     | 
| 
       996 
     | 
    
         
            -
            UPB_INLINE const struct envoy_config_core_v3_ConfigSource* envoy_config_cluster_v3_Cluster_EdsClusterConfig_eds_config(const envoy_config_cluster_v3_Cluster_EdsClusterConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct envoy_config_core_v3_ConfigSource*); }
         
     | 
| 
       997 
     | 
    
         
            -
            UPB_INLINE upb_strview envoy_config_cluster_v3_Cluster_EdsClusterConfig_service_name(const envoy_config_cluster_v3_Cluster_EdsClusterConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
         
     | 
| 
       998 
1472 
     | 
    
         | 
| 
       999 
1473 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_EdsClusterConfig_set_eds_config(envoy_config_cluster_v3_Cluster_EdsClusterConfig *msg, struct envoy_config_core_v3_ConfigSource* value) {
         
     | 
| 
       1000 
1474 
     | 
    
         
             
              _upb_sethas(msg, 1);
         
     | 
| 
       1001 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 1475 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct envoy_config_core_v3_ConfigSource*) = value;
         
     | 
| 
       1002 
1476 
     | 
    
         
             
            }
         
     | 
| 
       1003 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_ConfigSource* envoy_config_cluster_v3_Cluster_EdsClusterConfig_mutable_eds_config(envoy_config_cluster_v3_Cluster_EdsClusterConfig  
     | 
| 
      
 1477 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_ConfigSource* envoy_config_cluster_v3_Cluster_EdsClusterConfig_mutable_eds_config(envoy_config_cluster_v3_Cluster_EdsClusterConfig* msg, upb_Arena* arena) {
         
     | 
| 
       1004 
1478 
     | 
    
         
             
              struct envoy_config_core_v3_ConfigSource* sub = (struct envoy_config_core_v3_ConfigSource*)envoy_config_cluster_v3_Cluster_EdsClusterConfig_eds_config(msg);
         
     | 
| 
       1005 
1479 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1006 
     | 
    
         
            -
                sub = (struct envoy_config_core_v3_ConfigSource*) 
     | 
| 
      
 1480 
     | 
    
         
            +
                sub = (struct envoy_config_core_v3_ConfigSource*)_upb_Message_New(&envoy_config_core_v3_ConfigSource_msginit, arena);
         
     | 
| 
       1007 
1481 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1008 
1482 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_EdsClusterConfig_set_eds_config(msg, sub);
         
     | 
| 
       1009 
1483 
     | 
    
         
             
              }
         
     | 
| 
       1010 
1484 
     | 
    
         
             
              return sub;
         
     | 
| 
       1011 
1485 
     | 
    
         
             
            }
         
     | 
| 
       1012 
     | 
    
         
            -
            UPB_INLINE void envoy_config_cluster_v3_Cluster_EdsClusterConfig_set_service_name(envoy_config_cluster_v3_Cluster_EdsClusterConfig *msg,  
     | 
| 
       1013 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 1486 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_EdsClusterConfig_set_service_name(envoy_config_cluster_v3_Cluster_EdsClusterConfig *msg, upb_StringView value) {
         
     | 
| 
      
 1487 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(8, 16), upb_StringView) = value;
         
     | 
| 
       1014 
1488 
     | 
    
         
             
            }
         
     | 
| 
       1015 
1489 
     | 
    
         | 
| 
       1016 
1490 
     | 
    
         
             
            /* envoy.config.cluster.v3.Cluster.LbSubsetConfig */
         
     | 
| 
       1017 
1491 
     | 
    
         | 
| 
       1018 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_LbSubsetConfig  
     | 
| 
       1019 
     | 
    
         
            -
              return (envoy_config_cluster_v3_Cluster_LbSubsetConfig 
     | 
| 
      
 1492 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_LbSubsetConfig* envoy_config_cluster_v3_Cluster_LbSubsetConfig_new(upb_Arena* arena) {
         
     | 
| 
      
 1493 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_LbSubsetConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_LbSubsetConfig_msginit, arena);
         
     | 
| 
      
 1494 
     | 
    
         
            +
            }
         
     | 
| 
      
 1495 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_LbSubsetConfig* envoy_config_cluster_v3_Cluster_LbSubsetConfig_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 1496 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_LbSubsetConfig* ret = envoy_config_cluster_v3_Cluster_LbSubsetConfig_new(arena);
         
     | 
| 
      
 1497 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 1498 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_LbSubsetConfig_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 1499 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 1500 
     | 
    
         
            +
              }
         
     | 
| 
      
 1501 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1020 
1502 
     | 
    
         
             
            }
         
     | 
| 
       1021 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_LbSubsetConfig  
     | 
| 
       1022 
     | 
    
         
            -
             
     | 
| 
       1023 
     | 
    
         
            -
             
     | 
| 
       1024 
     | 
    
         
            -
               
     | 
| 
      
 1503 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_LbSubsetConfig* envoy_config_cluster_v3_Cluster_LbSubsetConfig_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 1504 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 1505 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 1506 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_LbSubsetConfig* ret = envoy_config_cluster_v3_Cluster_LbSubsetConfig_new(arena);
         
     | 
| 
      
 1507 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 1508 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_LbSubsetConfig_msginit, extreg, options, arena) !=
         
     | 
| 
      
 1509 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 1510 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 1511 
     | 
    
         
            +
              }
         
     | 
| 
      
 1512 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1025 
1513 
     | 
    
         
             
            }
         
     | 
| 
       1026 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1027 
     | 
    
         
            -
             
     | 
| 
       1028 
     | 
    
         
            -
              envoy_config_cluster_v3_Cluster_LbSubsetConfig *ret = envoy_config_cluster_v3_Cluster_LbSubsetConfig_new(arena);
         
     | 
| 
       1029 
     | 
    
         
            -
              return (ret && _upb_decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_LbSubsetConfig_msginit, arena, options))
         
     | 
| 
       1030 
     | 
    
         
            -
                  ? ret : NULL;
         
     | 
| 
      
 1514 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_LbSubsetConfig_serialize(const envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 1515 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_LbSubsetConfig_msginit, 0, arena, len);
         
     | 
| 
       1031 
1516 
     | 
    
         
             
            }
         
     | 
| 
       1032 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       1033 
     | 
    
         
            -
             
     | 
| 
      
 1517 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_LbSubsetConfig_serialize_ex(const envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg, int options,
         
     | 
| 
      
 1518 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 1519 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_LbSubsetConfig_msginit, options, arena, len);
         
     | 
| 
      
 1520 
     | 
    
         
            +
            }
         
     | 
| 
      
 1521 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LbSubsetConfig_clear_fallback_policy(const envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg) {
         
     | 
| 
      
 1522 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t) = 0;
         
     | 
| 
      
 1523 
     | 
    
         
            +
            }
         
     | 
| 
      
 1524 
     | 
    
         
            +
            UPB_INLINE int32_t envoy_config_cluster_v3_Cluster_LbSubsetConfig_fallback_policy(const envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg) {
         
     | 
| 
      
 1525 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t);
         
     | 
| 
      
 1526 
     | 
    
         
            +
            }
         
     | 
| 
      
 1527 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LbSubsetConfig_has_default_subset(const envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg) {
         
     | 
| 
      
 1528 
     | 
    
         
            +
              return _upb_hasbit(msg, 1);
         
     | 
| 
      
 1529 
     | 
    
         
            +
            }
         
     | 
| 
      
 1530 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LbSubsetConfig_clear_default_subset(const envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg) {
         
     | 
| 
      
 1531 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(12, 16), const upb_Message*) = NULL;
         
     | 
| 
      
 1532 
     | 
    
         
            +
            }
         
     | 
| 
      
 1533 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_Struct* envoy_config_cluster_v3_Cluster_LbSubsetConfig_default_subset(const envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg) {
         
     | 
| 
      
 1534 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(12, 16), const struct google_protobuf_Struct*);
         
     | 
| 
      
 1535 
     | 
    
         
            +
            }
         
     | 
| 
      
 1536 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LbSubsetConfig_has_subset_selectors(const envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg) {
         
     | 
| 
      
 1537 
     | 
    
         
            +
              return _upb_has_submsg_nohasbit(msg, UPB_SIZE(16, 24));
         
     | 
| 
      
 1538 
     | 
    
         
            +
            }
         
     | 
| 
      
 1539 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LbSubsetConfig_clear_subset_selectors(const envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg) {
         
     | 
| 
      
 1540 
     | 
    
         
            +
              _upb_array_detach(msg, UPB_SIZE(16, 24));
         
     | 
| 
      
 1541 
     | 
    
         
            +
            }
         
     | 
| 
      
 1542 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* const* envoy_config_cluster_v3_Cluster_LbSubsetConfig_subset_selectors(const envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg, size_t* len) {
         
     | 
| 
      
 1543 
     | 
    
         
            +
              return (const envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* const*)_upb_array_accessor(msg, UPB_SIZE(16, 24), len);
         
     | 
| 
      
 1544 
     | 
    
         
            +
            }
         
     | 
| 
      
 1545 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LbSubsetConfig_clear_locality_weight_aware(const envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg) {
         
     | 
| 
      
 1546 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(8, 8), bool) = 0;
         
     | 
| 
      
 1547 
     | 
    
         
            +
            }
         
     | 
| 
      
 1548 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LbSubsetConfig_locality_weight_aware(const envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg) {
         
     | 
| 
      
 1549 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), bool);
         
     | 
| 
      
 1550 
     | 
    
         
            +
            }
         
     | 
| 
      
 1551 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LbSubsetConfig_clear_scale_locality_weight(const envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg) {
         
     | 
| 
      
 1552 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(9, 9), bool) = 0;
         
     | 
| 
      
 1553 
     | 
    
         
            +
            }
         
     | 
| 
      
 1554 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LbSubsetConfig_scale_locality_weight(const envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg) {
         
     | 
| 
      
 1555 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(9, 9), bool);
         
     | 
| 
      
 1556 
     | 
    
         
            +
            }
         
     | 
| 
      
 1557 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LbSubsetConfig_clear_panic_mode_any(const envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg) {
         
     | 
| 
      
 1558 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(10, 10), bool) = 0;
         
     | 
| 
      
 1559 
     | 
    
         
            +
            }
         
     | 
| 
      
 1560 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LbSubsetConfig_panic_mode_any(const envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg) {
         
     | 
| 
      
 1561 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(10, 10), bool);
         
     | 
| 
      
 1562 
     | 
    
         
            +
            }
         
     | 
| 
      
 1563 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LbSubsetConfig_clear_list_as_any(const envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg) {
         
     | 
| 
      
 1564 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(11, 11), bool) = 0;
         
     | 
| 
      
 1565 
     | 
    
         
            +
            }
         
     | 
| 
      
 1566 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LbSubsetConfig_list_as_any(const envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg) {
         
     | 
| 
      
 1567 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(11, 11), bool);
         
     | 
| 
       1034 
1568 
     | 
    
         
             
            }
         
     | 
| 
       1035 
     | 
    
         
            -
             
     | 
| 
       1036 
     | 
    
         
            -
            UPB_INLINE int32_t envoy_config_cluster_v3_Cluster_LbSubsetConfig_fallback_policy(const envoy_config_cluster_v3_Cluster_LbSubsetConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t); }
         
     | 
| 
       1037 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LbSubsetConfig_has_default_subset(const envoy_config_cluster_v3_Cluster_LbSubsetConfig *msg) { return _upb_hasbit(msg, 1); }
         
     | 
| 
       1038 
     | 
    
         
            -
            UPB_INLINE const struct google_protobuf_Struct* envoy_config_cluster_v3_Cluster_LbSubsetConfig_default_subset(const envoy_config_cluster_v3_Cluster_LbSubsetConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 16), const struct google_protobuf_Struct*); }
         
     | 
| 
       1039 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LbSubsetConfig_has_subset_selectors(const envoy_config_cluster_v3_Cluster_LbSubsetConfig *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(16, 24)); }
         
     | 
| 
       1040 
     | 
    
         
            -
            UPB_INLINE const envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* const* envoy_config_cluster_v3_Cluster_LbSubsetConfig_subset_selectors(const envoy_config_cluster_v3_Cluster_LbSubsetConfig *msg, size_t *len) { return (const envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* const*)_upb_array_accessor(msg, UPB_SIZE(16, 24), len); }
         
     | 
| 
       1041 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LbSubsetConfig_locality_weight_aware(const envoy_config_cluster_v3_Cluster_LbSubsetConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), bool); }
         
     | 
| 
       1042 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LbSubsetConfig_scale_locality_weight(const envoy_config_cluster_v3_Cluster_LbSubsetConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(9, 9), bool); }
         
     | 
| 
       1043 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LbSubsetConfig_panic_mode_any(const envoy_config_cluster_v3_Cluster_LbSubsetConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(10, 10), bool); }
         
     | 
| 
       1044 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LbSubsetConfig_list_as_any(const envoy_config_cluster_v3_Cluster_LbSubsetConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(11, 11), bool); }
         
     | 
| 
       1045 
1569 
     | 
    
         | 
| 
       1046 
1570 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LbSubsetConfig_set_fallback_policy(envoy_config_cluster_v3_Cluster_LbSubsetConfig *msg, int32_t value) {
         
     | 
| 
       1047 
1571 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t) = value;
         
     | 
| 
         @@ -1050,25 +1574,24 @@ UPB_INLINE void envoy_config_cluster_v3_Cluster_LbSubsetConfig_set_default_subse 
     | 
|
| 
       1050 
1574 
     | 
    
         
             
              _upb_sethas(msg, 1);
         
     | 
| 
       1051 
1575 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(12, 16), struct google_protobuf_Struct*) = value;
         
     | 
| 
       1052 
1576 
     | 
    
         
             
            }
         
     | 
| 
       1053 
     | 
    
         
            -
            UPB_INLINE struct google_protobuf_Struct* envoy_config_cluster_v3_Cluster_LbSubsetConfig_mutable_default_subset(envoy_config_cluster_v3_Cluster_LbSubsetConfig  
     | 
| 
      
 1577 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_Struct* envoy_config_cluster_v3_Cluster_LbSubsetConfig_mutable_default_subset(envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg, upb_Arena* arena) {
         
     | 
| 
       1054 
1578 
     | 
    
         
             
              struct google_protobuf_Struct* sub = (struct google_protobuf_Struct*)envoy_config_cluster_v3_Cluster_LbSubsetConfig_default_subset(msg);
         
     | 
| 
       1055 
1579 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1056 
     | 
    
         
            -
                sub = (struct google_protobuf_Struct*) 
     | 
| 
      
 1580 
     | 
    
         
            +
                sub = (struct google_protobuf_Struct*)_upb_Message_New(&google_protobuf_Struct_msginit, arena);
         
     | 
| 
       1057 
1581 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1058 
1582 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_LbSubsetConfig_set_default_subset(msg, sub);
         
     | 
| 
       1059 
1583 
     | 
    
         
             
              }
         
     | 
| 
       1060 
1584 
     | 
    
         
             
              return sub;
         
     | 
| 
       1061 
1585 
     | 
    
         
             
            }
         
     | 
| 
       1062 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector** envoy_config_cluster_v3_Cluster_LbSubsetConfig_mutable_subset_selectors(envoy_config_cluster_v3_Cluster_LbSubsetConfig  
     | 
| 
      
 1586 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector** envoy_config_cluster_v3_Cluster_LbSubsetConfig_mutable_subset_selectors(envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg, size_t* len) {
         
     | 
| 
       1063 
1587 
     | 
    
         
             
              return (envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector**)_upb_array_mutable_accessor(msg, UPB_SIZE(16, 24), len);
         
     | 
| 
       1064 
1588 
     | 
    
         
             
            }
         
     | 
| 
       1065 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector** envoy_config_cluster_v3_Cluster_LbSubsetConfig_resize_subset_selectors(envoy_config_cluster_v3_Cluster_LbSubsetConfig  
     | 
| 
       1066 
     | 
    
         
            -
              return (envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector**) 
     | 
| 
      
 1589 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector** envoy_config_cluster_v3_Cluster_LbSubsetConfig_resize_subset_selectors(envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg, size_t len, upb_Arena* arena) {
         
     | 
| 
      
 1590 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector**)_upb_Array_Resize_accessor2(msg, UPB_SIZE(16, 24), len, UPB_SIZE(2, 3), arena);
         
     | 
| 
       1067 
1591 
     | 
    
         
             
            }
         
     | 
| 
       1068 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* envoy_config_cluster_v3_Cluster_LbSubsetConfig_add_subset_selectors(envoy_config_cluster_v3_Cluster_LbSubsetConfig  
     | 
| 
       1069 
     | 
    
         
            -
              struct envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* sub = (struct envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector*) 
     | 
| 
       1070 
     | 
    
         
            -
              bool ok =  
     | 
| 
       1071 
     | 
    
         
            -
                  msg, UPB_SIZE(16, 24), UPB_SIZE(2, 3), &sub, arena);
         
     | 
| 
      
 1592 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* envoy_config_cluster_v3_Cluster_LbSubsetConfig_add_subset_selectors(envoy_config_cluster_v3_Cluster_LbSubsetConfig* msg, upb_Arena* arena) {
         
     | 
| 
      
 1593 
     | 
    
         
            +
              struct envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* sub = (struct envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_msginit, arena);
         
     | 
| 
      
 1594 
     | 
    
         
            +
              bool ok = _upb_Array_Append_accessor2(msg, UPB_SIZE(16, 24), UPB_SIZE(2, 3), &sub, arena);
         
     | 
| 
       1072 
1595 
     | 
    
         
             
              if (!ok) return NULL;
         
     | 
| 
       1073 
1596 
     | 
    
         
             
              return sub;
         
     | 
| 
       1074 
1597 
     | 
    
         
             
            }
         
     | 
| 
         @@ -1087,89 +1610,306 @@ UPB_INLINE void envoy_config_cluster_v3_Cluster_LbSubsetConfig_set_list_as_any(e 
     | 
|
| 
       1087 
1610 
     | 
    
         | 
| 
       1088 
1611 
     | 
    
         
             
            /* envoy.config.cluster.v3.Cluster.LbSubsetConfig.LbSubsetSelector */
         
     | 
| 
       1089 
1612 
     | 
    
         | 
| 
       1090 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector  
     | 
| 
       1091 
     | 
    
         
            -
              return (envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector 
     | 
| 
      
 1613 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_new(upb_Arena* arena) {
         
     | 
| 
      
 1614 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_msginit, arena);
         
     | 
| 
      
 1615 
     | 
    
         
            +
            }
         
     | 
| 
      
 1616 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 1617 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* ret = envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_new(arena);
         
     | 
| 
      
 1618 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 1619 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 1620 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 1621 
     | 
    
         
            +
              }
         
     | 
| 
      
 1622 
     | 
    
         
            +
              return ret;
         
     | 
| 
      
 1623 
     | 
    
         
            +
            }
         
     | 
| 
      
 1624 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 1625 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 1626 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 1627 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* ret = envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_new(arena);
         
     | 
| 
      
 1628 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 1629 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_msginit, extreg, options, arena) !=
         
     | 
| 
      
 1630 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 1631 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 1632 
     | 
    
         
            +
              }
         
     | 
| 
      
 1633 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1092 
1634 
     | 
    
         
             
            }
         
     | 
| 
       1093 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1094 
     | 
    
         
            -
             
     | 
| 
       1095 
     | 
    
         
            -
              envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector *ret = envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_new(arena);
         
     | 
| 
       1096 
     | 
    
         
            -
              return (ret && upb_decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_msginit, arena)) ? ret : NULL;
         
     | 
| 
      
 1635 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_serialize(const envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 1636 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_msginit, 0, arena, len);
         
     | 
| 
       1097 
1637 
     | 
    
         
             
            }
         
     | 
| 
       1098 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1099 
     | 
    
         
            -
             
     | 
| 
       1100 
     | 
    
         
            -
               
     | 
| 
       1101 
     | 
    
         
            -
              return (ret && _upb_decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_msginit, arena, options))
         
     | 
| 
       1102 
     | 
    
         
            -
                  ? ret : NULL;
         
     | 
| 
      
 1638 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_serialize_ex(const envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* msg, int options,
         
     | 
| 
      
 1639 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 1640 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_msginit, options, arena, len);
         
     | 
| 
       1103 
1641 
     | 
    
         
             
            }
         
     | 
| 
       1104 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1105 
     | 
    
         
            -
               
     | 
| 
      
 1642 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_clear_keys(const envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* msg) {
         
     | 
| 
      
 1643 
     | 
    
         
            +
              _upb_array_detach(msg, UPB_SIZE(8, 8));
         
     | 
| 
      
 1644 
     | 
    
         
            +
            }
         
     | 
| 
      
 1645 
     | 
    
         
            +
            UPB_INLINE upb_StringView const* envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_keys(const envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* msg, size_t* len) {
         
     | 
| 
      
 1646 
     | 
    
         
            +
              return (upb_StringView const*)_upb_array_accessor(msg, UPB_SIZE(8, 8), len);
         
     | 
| 
      
 1647 
     | 
    
         
            +
            }
         
     | 
| 
      
 1648 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_clear_fallback_policy(const envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* msg) {
         
     | 
| 
      
 1649 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t) = 0;
         
     | 
| 
      
 1650 
     | 
    
         
            +
            }
         
     | 
| 
      
 1651 
     | 
    
         
            +
            UPB_INLINE int32_t envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_fallback_policy(const envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* msg) {
         
     | 
| 
      
 1652 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t);
         
     | 
| 
      
 1653 
     | 
    
         
            +
            }
         
     | 
| 
      
 1654 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_clear_fallback_keys_subset(const envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* msg) {
         
     | 
| 
      
 1655 
     | 
    
         
            +
              _upb_array_detach(msg, UPB_SIZE(12, 16));
         
     | 
| 
      
 1656 
     | 
    
         
            +
            }
         
     | 
| 
      
 1657 
     | 
    
         
            +
            UPB_INLINE upb_StringView const* envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_fallback_keys_subset(const envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* msg, size_t* len) {
         
     | 
| 
      
 1658 
     | 
    
         
            +
              return (upb_StringView const*)_upb_array_accessor(msg, UPB_SIZE(12, 16), len);
         
     | 
| 
      
 1659 
     | 
    
         
            +
            }
         
     | 
| 
      
 1660 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_clear_single_host_per_subset(const envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* msg) {
         
     | 
| 
      
 1661 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 4), bool) = 0;
         
     | 
| 
      
 1662 
     | 
    
         
            +
            }
         
     | 
| 
      
 1663 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_single_host_per_subset(const envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* msg) {
         
     | 
| 
      
 1664 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(4, 4), bool);
         
     | 
| 
       1106 
1665 
     | 
    
         
             
            }
         
     | 
| 
       1107 
1666 
     | 
    
         | 
| 
       1108 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1109 
     | 
    
         
            -
             
     | 
| 
       1110 
     | 
    
         
            -
            UPB_INLINE upb_strview const* envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_fallback_keys_subset(const envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(12, 16), len); }
         
     | 
| 
       1111 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_single_host_per_subset(const envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 4), bool); }
         
     | 
| 
       1112 
     | 
    
         
            -
             
     | 
| 
       1113 
     | 
    
         
            -
            UPB_INLINE upb_strview* envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_mutable_keys(envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector *msg, size_t *len) {
         
     | 
| 
       1114 
     | 
    
         
            -
              return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(8, 8), len);
         
     | 
| 
      
 1667 
     | 
    
         
            +
            UPB_INLINE upb_StringView* envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_mutable_keys(envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* msg, size_t* len) {
         
     | 
| 
      
 1668 
     | 
    
         
            +
              return (upb_StringView*)_upb_array_mutable_accessor(msg, UPB_SIZE(8, 8), len);
         
     | 
| 
       1115 
1669 
     | 
    
         
             
            }
         
     | 
| 
       1116 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1117 
     | 
    
         
            -
              return ( 
     | 
| 
      
 1670 
     | 
    
         
            +
            UPB_INLINE upb_StringView* envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_resize_keys(envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* msg, size_t len, upb_Arena* arena) {
         
     | 
| 
      
 1671 
     | 
    
         
            +
              return (upb_StringView*)_upb_Array_Resize_accessor2(msg, UPB_SIZE(8, 8), len, UPB_SIZE(3, 4), arena);
         
     | 
| 
       1118 
1672 
     | 
    
         
             
            }
         
     | 
| 
       1119 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_add_keys(envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector  
     | 
| 
       1120 
     | 
    
         
            -
              return  
     | 
| 
       1121 
     | 
    
         
            -
                  arena);
         
     | 
| 
      
 1673 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_add_keys(envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* msg, upb_StringView val, upb_Arena* arena) {
         
     | 
| 
      
 1674 
     | 
    
         
            +
              return _upb_Array_Append_accessor2(msg, UPB_SIZE(8, 8), UPB_SIZE(3, 4), &val, arena);
         
     | 
| 
       1122 
1675 
     | 
    
         
             
            }
         
     | 
| 
       1123 
1676 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_set_fallback_policy(envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector *msg, int32_t value) {
         
     | 
| 
       1124 
1677 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t) = value;
         
     | 
| 
       1125 
1678 
     | 
    
         
             
            }
         
     | 
| 
       1126 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1127 
     | 
    
         
            -
              return ( 
     | 
| 
      
 1679 
     | 
    
         
            +
            UPB_INLINE upb_StringView* envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_mutable_fallback_keys_subset(envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* msg, size_t* len) {
         
     | 
| 
      
 1680 
     | 
    
         
            +
              return (upb_StringView*)_upb_array_mutable_accessor(msg, UPB_SIZE(12, 16), len);
         
     | 
| 
       1128 
1681 
     | 
    
         
             
            }
         
     | 
| 
       1129 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1130 
     | 
    
         
            -
              return ( 
     | 
| 
      
 1682 
     | 
    
         
            +
            UPB_INLINE upb_StringView* envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_resize_fallback_keys_subset(envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* msg, size_t len, upb_Arena* arena) {
         
     | 
| 
      
 1683 
     | 
    
         
            +
              return (upb_StringView*)_upb_Array_Resize_accessor2(msg, UPB_SIZE(12, 16), len, UPB_SIZE(3, 4), arena);
         
     | 
| 
       1131 
1684 
     | 
    
         
             
            }
         
     | 
| 
       1132 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_add_fallback_keys_subset(envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector  
     | 
| 
       1133 
     | 
    
         
            -
              return  
     | 
| 
       1134 
     | 
    
         
            -
                  arena);
         
     | 
| 
      
 1685 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_add_fallback_keys_subset(envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector* msg, upb_StringView val, upb_Arena* arena) {
         
     | 
| 
      
 1686 
     | 
    
         
            +
              return _upb_Array_Append_accessor2(msg, UPB_SIZE(12, 16), UPB_SIZE(3, 4), &val, arena);
         
     | 
| 
       1135 
1687 
     | 
    
         
             
            }
         
     | 
| 
       1136 
1688 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector_set_single_host_per_subset(envoy_config_cluster_v3_Cluster_LbSubsetConfig_LbSubsetSelector *msg, bool value) {
         
     | 
| 
       1137 
1689 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(4, 4), bool) = value;
         
     | 
| 
       1138 
1690 
     | 
    
         
             
            }
         
     | 
| 
       1139 
1691 
     | 
    
         | 
| 
       1140 
     | 
    
         
            -
            /* envoy.config.cluster.v3.Cluster. 
     | 
| 
      
 1692 
     | 
    
         
            +
            /* envoy.config.cluster.v3.Cluster.SlowStartConfig */
         
     | 
| 
       1141 
1693 
     | 
    
         | 
| 
       1142 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1143 
     | 
    
         
            -
              return ( 
     | 
| 
      
 1694 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_SlowStartConfig* envoy_config_cluster_v3_Cluster_SlowStartConfig_new(upb_Arena* arena) {
         
     | 
| 
      
 1695 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_SlowStartConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_SlowStartConfig_msginit, arena);
         
     | 
| 
       1144 
1696 
     | 
    
         
             
            }
         
     | 
| 
       1145 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1146 
     | 
    
         
            -
             
     | 
| 
       1147 
     | 
    
         
            -
               
     | 
| 
       1148 
     | 
    
         
            -
               
     | 
| 
      
 1697 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_SlowStartConfig* envoy_config_cluster_v3_Cluster_SlowStartConfig_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 1698 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_SlowStartConfig* ret = envoy_config_cluster_v3_Cluster_SlowStartConfig_new(arena);
         
     | 
| 
      
 1699 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 1700 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_SlowStartConfig_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 1701 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 1702 
     | 
    
         
            +
              }
         
     | 
| 
      
 1703 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1149 
1704 
     | 
    
         
             
            }
         
     | 
| 
       1150 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1151 
     | 
    
         
            -
                                        
     | 
| 
       1152 
     | 
    
         
            -
             
     | 
| 
       1153 
     | 
    
         
            -
               
     | 
| 
       1154 
     | 
    
         
            -
             
     | 
| 
      
 1705 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_SlowStartConfig* envoy_config_cluster_v3_Cluster_SlowStartConfig_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 1706 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 1707 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 1708 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_SlowStartConfig* ret = envoy_config_cluster_v3_Cluster_SlowStartConfig_new(arena);
         
     | 
| 
      
 1709 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 1710 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_SlowStartConfig_msginit, extreg, options, arena) !=
         
     | 
| 
      
 1711 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 1712 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 1713 
     | 
    
         
            +
              }
         
     | 
| 
      
 1714 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1155 
1715 
     | 
    
         
             
            }
         
     | 
| 
       1156 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       1157 
     | 
    
         
            -
              return  
     | 
| 
      
 1716 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_SlowStartConfig_serialize(const envoy_config_cluster_v3_Cluster_SlowStartConfig* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 1717 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_SlowStartConfig_msginit, 0, arena, len);
         
     | 
| 
       1158 
1718 
     | 
    
         
             
            }
         
     | 
| 
       1159 
     | 
    
         
            -
             
     | 
| 
       1160 
     | 
    
         
            -
             
     | 
| 
       1161 
     | 
    
         
            -
             
     | 
| 
       1162 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_has_active_request_bias(const envoy_config_cluster_v3_Cluster_LeastRequestLbConfig *msg) { return _upb_hasbit(msg, 2); }
         
     | 
| 
       1163 
     | 
    
         
            -
            UPB_INLINE const struct envoy_config_core_v3_RuntimeDouble* envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_active_request_bias(const envoy_config_cluster_v3_Cluster_LeastRequestLbConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const struct envoy_config_core_v3_RuntimeDouble*); }
         
     | 
| 
       1164 
     | 
    
         
            -
             
     | 
| 
       1165 
     | 
    
         
            -
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_set_choice_count(envoy_config_cluster_v3_Cluster_LeastRequestLbConfig *msg, struct google_protobuf_UInt32Value* value) {
         
     | 
| 
       1166 
     | 
    
         
            -
              _upb_sethas(msg, 1);
         
     | 
| 
       1167 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_UInt32Value*) = value;
         
     | 
| 
      
 1719 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_SlowStartConfig_serialize_ex(const envoy_config_cluster_v3_Cluster_SlowStartConfig* msg, int options,
         
     | 
| 
      
 1720 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 1721 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_SlowStartConfig_msginit, options, arena, len);
         
     | 
| 
       1168 
1722 
     | 
    
         
             
            }
         
     | 
| 
       1169 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1170 
     | 
    
         
            -
               
     | 
| 
      
 1723 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_SlowStartConfig_has_slow_start_window(const envoy_config_cluster_v3_Cluster_SlowStartConfig* msg) {
         
     | 
| 
      
 1724 
     | 
    
         
            +
              return _upb_hasbit(msg, 1);
         
     | 
| 
      
 1725 
     | 
    
         
            +
            }
         
     | 
| 
      
 1726 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_SlowStartConfig_clear_slow_start_window(const envoy_config_cluster_v3_Cluster_SlowStartConfig* msg) {
         
     | 
| 
      
 1727 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const upb_Message*) = NULL;
         
     | 
| 
      
 1728 
     | 
    
         
            +
            }
         
     | 
| 
      
 1729 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_SlowStartConfig_slow_start_window(const envoy_config_cluster_v3_Cluster_SlowStartConfig* msg) {
         
     | 
| 
      
 1730 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_Duration*);
         
     | 
| 
      
 1731 
     | 
    
         
            +
            }
         
     | 
| 
      
 1732 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_SlowStartConfig_has_aggression(const envoy_config_cluster_v3_Cluster_SlowStartConfig* msg) {
         
     | 
| 
      
 1733 
     | 
    
         
            +
              return _upb_hasbit(msg, 2);
         
     | 
| 
      
 1734 
     | 
    
         
            +
            }
         
     | 
| 
      
 1735 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_SlowStartConfig_clear_aggression(const envoy_config_cluster_v3_Cluster_SlowStartConfig* msg) {
         
     | 
| 
      
 1736 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const upb_Message*) = NULL;
         
     | 
| 
      
 1737 
     | 
    
         
            +
            }
         
     | 
| 
      
 1738 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_RuntimeDouble* envoy_config_cluster_v3_Cluster_SlowStartConfig_aggression(const envoy_config_cluster_v3_Cluster_SlowStartConfig* msg) {
         
     | 
| 
      
 1739 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const struct envoy_config_core_v3_RuntimeDouble*);
         
     | 
| 
      
 1740 
     | 
    
         
            +
            }
         
     | 
| 
      
 1741 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_SlowStartConfig_has_min_weight_percent(const envoy_config_cluster_v3_Cluster_SlowStartConfig* msg) {
         
     | 
| 
      
 1742 
     | 
    
         
            +
              return _upb_hasbit(msg, 3);
         
     | 
| 
      
 1743 
     | 
    
         
            +
            }
         
     | 
| 
      
 1744 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_SlowStartConfig_clear_min_weight_percent(const envoy_config_cluster_v3_Cluster_SlowStartConfig* msg) {
         
     | 
| 
      
 1745 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const upb_Message*) = NULL;
         
     | 
| 
      
 1746 
     | 
    
         
            +
            }
         
     | 
| 
      
 1747 
     | 
    
         
            +
            UPB_INLINE const struct envoy_type_v3_Percent* envoy_config_cluster_v3_Cluster_SlowStartConfig_min_weight_percent(const envoy_config_cluster_v3_Cluster_SlowStartConfig* msg) {
         
     | 
| 
      
 1748 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct envoy_type_v3_Percent*);
         
     | 
| 
      
 1749 
     | 
    
         
            +
            }
         
     | 
| 
      
 1750 
     | 
    
         
            +
             
     | 
| 
      
 1751 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_SlowStartConfig_set_slow_start_window(envoy_config_cluster_v3_Cluster_SlowStartConfig *msg, struct google_protobuf_Duration* value) {
         
     | 
| 
      
 1752 
     | 
    
         
            +
              _upb_sethas(msg, 1);
         
     | 
| 
      
 1753 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_Duration*) = value;
         
     | 
| 
      
 1754 
     | 
    
         
            +
            }
         
     | 
| 
      
 1755 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_SlowStartConfig_mutable_slow_start_window(envoy_config_cluster_v3_Cluster_SlowStartConfig* msg, upb_Arena* arena) {
         
     | 
| 
      
 1756 
     | 
    
         
            +
              struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_cluster_v3_Cluster_SlowStartConfig_slow_start_window(msg);
         
     | 
| 
      
 1757 
     | 
    
         
            +
              if (sub == NULL) {
         
     | 
| 
      
 1758 
     | 
    
         
            +
                sub = (struct google_protobuf_Duration*)_upb_Message_New(&google_protobuf_Duration_msginit, arena);
         
     | 
| 
      
 1759 
     | 
    
         
            +
                if (!sub) return NULL;
         
     | 
| 
      
 1760 
     | 
    
         
            +
                envoy_config_cluster_v3_Cluster_SlowStartConfig_set_slow_start_window(msg, sub);
         
     | 
| 
      
 1761 
     | 
    
         
            +
              }
         
     | 
| 
      
 1762 
     | 
    
         
            +
              return sub;
         
     | 
| 
      
 1763 
     | 
    
         
            +
            }
         
     | 
| 
      
 1764 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_SlowStartConfig_set_aggression(envoy_config_cluster_v3_Cluster_SlowStartConfig *msg, struct envoy_config_core_v3_RuntimeDouble* value) {
         
     | 
| 
      
 1765 
     | 
    
         
            +
              _upb_sethas(msg, 2);
         
     | 
| 
      
 1766 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(8, 16), struct envoy_config_core_v3_RuntimeDouble*) = value;
         
     | 
| 
      
 1767 
     | 
    
         
            +
            }
         
     | 
| 
      
 1768 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_RuntimeDouble* envoy_config_cluster_v3_Cluster_SlowStartConfig_mutable_aggression(envoy_config_cluster_v3_Cluster_SlowStartConfig* msg, upb_Arena* arena) {
         
     | 
| 
      
 1769 
     | 
    
         
            +
              struct envoy_config_core_v3_RuntimeDouble* sub = (struct envoy_config_core_v3_RuntimeDouble*)envoy_config_cluster_v3_Cluster_SlowStartConfig_aggression(msg);
         
     | 
| 
      
 1770 
     | 
    
         
            +
              if (sub == NULL) {
         
     | 
| 
      
 1771 
     | 
    
         
            +
                sub = (struct envoy_config_core_v3_RuntimeDouble*)_upb_Message_New(&envoy_config_core_v3_RuntimeDouble_msginit, arena);
         
     | 
| 
      
 1772 
     | 
    
         
            +
                if (!sub) return NULL;
         
     | 
| 
      
 1773 
     | 
    
         
            +
                envoy_config_cluster_v3_Cluster_SlowStartConfig_set_aggression(msg, sub);
         
     | 
| 
      
 1774 
     | 
    
         
            +
              }
         
     | 
| 
      
 1775 
     | 
    
         
            +
              return sub;
         
     | 
| 
      
 1776 
     | 
    
         
            +
            }
         
     | 
| 
      
 1777 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_SlowStartConfig_set_min_weight_percent(envoy_config_cluster_v3_Cluster_SlowStartConfig *msg, struct envoy_type_v3_Percent* value) {
         
     | 
| 
      
 1778 
     | 
    
         
            +
              _upb_sethas(msg, 3);
         
     | 
| 
      
 1779 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(12, 24), struct envoy_type_v3_Percent*) = value;
         
     | 
| 
      
 1780 
     | 
    
         
            +
            }
         
     | 
| 
      
 1781 
     | 
    
         
            +
            UPB_INLINE struct envoy_type_v3_Percent* envoy_config_cluster_v3_Cluster_SlowStartConfig_mutable_min_weight_percent(envoy_config_cluster_v3_Cluster_SlowStartConfig* msg, upb_Arena* arena) {
         
     | 
| 
      
 1782 
     | 
    
         
            +
              struct envoy_type_v3_Percent* sub = (struct envoy_type_v3_Percent*)envoy_config_cluster_v3_Cluster_SlowStartConfig_min_weight_percent(msg);
         
     | 
| 
      
 1783 
     | 
    
         
            +
              if (sub == NULL) {
         
     | 
| 
      
 1784 
     | 
    
         
            +
                sub = (struct envoy_type_v3_Percent*)_upb_Message_New(&envoy_type_v3_Percent_msginit, arena);
         
     | 
| 
      
 1785 
     | 
    
         
            +
                if (!sub) return NULL;
         
     | 
| 
      
 1786 
     | 
    
         
            +
                envoy_config_cluster_v3_Cluster_SlowStartConfig_set_min_weight_percent(msg, sub);
         
     | 
| 
      
 1787 
     | 
    
         
            +
              }
         
     | 
| 
      
 1788 
     | 
    
         
            +
              return sub;
         
     | 
| 
      
 1789 
     | 
    
         
            +
            }
         
     | 
| 
      
 1790 
     | 
    
         
            +
             
     | 
| 
      
 1791 
     | 
    
         
            +
            /* envoy.config.cluster.v3.Cluster.RoundRobinLbConfig */
         
     | 
| 
      
 1792 
     | 
    
         
            +
             
     | 
| 
      
 1793 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_RoundRobinLbConfig* envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_new(upb_Arena* arena) {
         
     | 
| 
      
 1794 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_RoundRobinLbConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_msginit, arena);
         
     | 
| 
      
 1795 
     | 
    
         
            +
            }
         
     | 
| 
      
 1796 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_RoundRobinLbConfig* envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 1797 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_RoundRobinLbConfig* ret = envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_new(arena);
         
     | 
| 
      
 1798 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 1799 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 1800 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 1801 
     | 
    
         
            +
              }
         
     | 
| 
      
 1802 
     | 
    
         
            +
              return ret;
         
     | 
| 
      
 1803 
     | 
    
         
            +
            }
         
     | 
| 
      
 1804 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_RoundRobinLbConfig* envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 1805 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 1806 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 1807 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_RoundRobinLbConfig* ret = envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_new(arena);
         
     | 
| 
      
 1808 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 1809 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_msginit, extreg, options, arena) !=
         
     | 
| 
      
 1810 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 1811 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 1812 
     | 
    
         
            +
              }
         
     | 
| 
      
 1813 
     | 
    
         
            +
              return ret;
         
     | 
| 
      
 1814 
     | 
    
         
            +
            }
         
     | 
| 
      
 1815 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_serialize(const envoy_config_cluster_v3_Cluster_RoundRobinLbConfig* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 1816 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_msginit, 0, arena, len);
         
     | 
| 
      
 1817 
     | 
    
         
            +
            }
         
     | 
| 
      
 1818 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_serialize_ex(const envoy_config_cluster_v3_Cluster_RoundRobinLbConfig* msg, int options,
         
     | 
| 
      
 1819 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 1820 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_msginit, options, arena, len);
         
     | 
| 
      
 1821 
     | 
    
         
            +
            }
         
     | 
| 
      
 1822 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_has_slow_start_config(const envoy_config_cluster_v3_Cluster_RoundRobinLbConfig* msg) {
         
     | 
| 
      
 1823 
     | 
    
         
            +
              return _upb_hasbit(msg, 1);
         
     | 
| 
      
 1824 
     | 
    
         
            +
            }
         
     | 
| 
      
 1825 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_clear_slow_start_config(const envoy_config_cluster_v3_Cluster_RoundRobinLbConfig* msg) {
         
     | 
| 
      
 1826 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const upb_Message*) = NULL;
         
     | 
| 
      
 1827 
     | 
    
         
            +
            }
         
     | 
| 
      
 1828 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_Cluster_SlowStartConfig* envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_slow_start_config(const envoy_config_cluster_v3_Cluster_RoundRobinLbConfig* msg) {
         
     | 
| 
      
 1829 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const envoy_config_cluster_v3_Cluster_SlowStartConfig*);
         
     | 
| 
      
 1830 
     | 
    
         
            +
            }
         
     | 
| 
      
 1831 
     | 
    
         
            +
             
     | 
| 
      
 1832 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_set_slow_start_config(envoy_config_cluster_v3_Cluster_RoundRobinLbConfig *msg, envoy_config_cluster_v3_Cluster_SlowStartConfig* value) {
         
     | 
| 
      
 1833 
     | 
    
         
            +
              _upb_sethas(msg, 1);
         
     | 
| 
      
 1834 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), envoy_config_cluster_v3_Cluster_SlowStartConfig*) = value;
         
     | 
| 
      
 1835 
     | 
    
         
            +
            }
         
     | 
| 
      
 1836 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_SlowStartConfig* envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_mutable_slow_start_config(envoy_config_cluster_v3_Cluster_RoundRobinLbConfig* msg, upb_Arena* arena) {
         
     | 
| 
      
 1837 
     | 
    
         
            +
              struct envoy_config_cluster_v3_Cluster_SlowStartConfig* sub = (struct envoy_config_cluster_v3_Cluster_SlowStartConfig*)envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_slow_start_config(msg);
         
     | 
| 
       1171 
1838 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1172 
     | 
    
         
            -
                sub = (struct  
     | 
| 
      
 1839 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_Cluster_SlowStartConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_SlowStartConfig_msginit, arena);
         
     | 
| 
      
 1840 
     | 
    
         
            +
                if (!sub) return NULL;
         
     | 
| 
      
 1841 
     | 
    
         
            +
                envoy_config_cluster_v3_Cluster_RoundRobinLbConfig_set_slow_start_config(msg, sub);
         
     | 
| 
      
 1842 
     | 
    
         
            +
              }
         
     | 
| 
      
 1843 
     | 
    
         
            +
              return sub;
         
     | 
| 
      
 1844 
     | 
    
         
            +
            }
         
     | 
| 
      
 1845 
     | 
    
         
            +
             
     | 
| 
      
 1846 
     | 
    
         
            +
            /* envoy.config.cluster.v3.Cluster.LeastRequestLbConfig */
         
     | 
| 
      
 1847 
     | 
    
         
            +
             
     | 
| 
      
 1848 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_new(upb_Arena* arena) {
         
     | 
| 
      
 1849 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_LeastRequestLbConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_msginit, arena);
         
     | 
| 
      
 1850 
     | 
    
         
            +
            }
         
     | 
| 
      
 1851 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 1852 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* ret = envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_new(arena);
         
     | 
| 
      
 1853 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 1854 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 1855 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 1856 
     | 
    
         
            +
              }
         
     | 
| 
      
 1857 
     | 
    
         
            +
              return ret;
         
     | 
| 
      
 1858 
     | 
    
         
            +
            }
         
     | 
| 
      
 1859 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 1860 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 1861 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 1862 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* ret = envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_new(arena);
         
     | 
| 
      
 1863 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 1864 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_msginit, extreg, options, arena) !=
         
     | 
| 
      
 1865 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 1866 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 1867 
     | 
    
         
            +
              }
         
     | 
| 
      
 1868 
     | 
    
         
            +
              return ret;
         
     | 
| 
      
 1869 
     | 
    
         
            +
            }
         
     | 
| 
      
 1870 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_serialize(const envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 1871 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_msginit, 0, arena, len);
         
     | 
| 
      
 1872 
     | 
    
         
            +
            }
         
     | 
| 
      
 1873 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_serialize_ex(const envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* msg, int options,
         
     | 
| 
      
 1874 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 1875 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_msginit, options, arena, len);
         
     | 
| 
      
 1876 
     | 
    
         
            +
            }
         
     | 
| 
      
 1877 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_has_choice_count(const envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* msg) {
         
     | 
| 
      
 1878 
     | 
    
         
            +
              return _upb_hasbit(msg, 1);
         
     | 
| 
      
 1879 
     | 
    
         
            +
            }
         
     | 
| 
      
 1880 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_clear_choice_count(const envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* msg) {
         
     | 
| 
      
 1881 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const upb_Message*) = NULL;
         
     | 
| 
      
 1882 
     | 
    
         
            +
            }
         
     | 
| 
      
 1883 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_UInt32Value* envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_choice_count(const envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* msg) {
         
     | 
| 
      
 1884 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_UInt32Value*);
         
     | 
| 
      
 1885 
     | 
    
         
            +
            }
         
     | 
| 
      
 1886 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_has_active_request_bias(const envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* msg) {
         
     | 
| 
      
 1887 
     | 
    
         
            +
              return _upb_hasbit(msg, 2);
         
     | 
| 
      
 1888 
     | 
    
         
            +
            }
         
     | 
| 
      
 1889 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_clear_active_request_bias(const envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* msg) {
         
     | 
| 
      
 1890 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const upb_Message*) = NULL;
         
     | 
| 
      
 1891 
     | 
    
         
            +
            }
         
     | 
| 
      
 1892 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_RuntimeDouble* envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_active_request_bias(const envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* msg) {
         
     | 
| 
      
 1893 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const struct envoy_config_core_v3_RuntimeDouble*);
         
     | 
| 
      
 1894 
     | 
    
         
            +
            }
         
     | 
| 
      
 1895 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_has_slow_start_config(const envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* msg) {
         
     | 
| 
      
 1896 
     | 
    
         
            +
              return _upb_hasbit(msg, 3);
         
     | 
| 
      
 1897 
     | 
    
         
            +
            }
         
     | 
| 
      
 1898 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_clear_slow_start_config(const envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* msg) {
         
     | 
| 
      
 1899 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const upb_Message*) = NULL;
         
     | 
| 
      
 1900 
     | 
    
         
            +
            }
         
     | 
| 
      
 1901 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_Cluster_SlowStartConfig* envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_slow_start_config(const envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* msg) {
         
     | 
| 
      
 1902 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const envoy_config_cluster_v3_Cluster_SlowStartConfig*);
         
     | 
| 
      
 1903 
     | 
    
         
            +
            }
         
     | 
| 
      
 1904 
     | 
    
         
            +
             
     | 
| 
      
 1905 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_set_choice_count(envoy_config_cluster_v3_Cluster_LeastRequestLbConfig *msg, struct google_protobuf_UInt32Value* value) {
         
     | 
| 
      
 1906 
     | 
    
         
            +
              _upb_sethas(msg, 1);
         
     | 
| 
      
 1907 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_UInt32Value*) = value;
         
     | 
| 
      
 1908 
     | 
    
         
            +
            }
         
     | 
| 
      
 1909 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_UInt32Value* envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_mutable_choice_count(envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* msg, upb_Arena* arena) {
         
     | 
| 
      
 1910 
     | 
    
         
            +
              struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_choice_count(msg);
         
     | 
| 
      
 1911 
     | 
    
         
            +
              if (sub == NULL) {
         
     | 
| 
      
 1912 
     | 
    
         
            +
                sub = (struct google_protobuf_UInt32Value*)_upb_Message_New(&google_protobuf_UInt32Value_msginit, arena);
         
     | 
| 
       1173 
1913 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1174 
1914 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_set_choice_count(msg, sub);
         
     | 
| 
       1175 
1915 
     | 
    
         
             
              }
         
     | 
| 
         @@ -1179,50 +1919,93 @@ UPB_INLINE void envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_set_active_ 
     | 
|
| 
       1179 
1919 
     | 
    
         
             
              _upb_sethas(msg, 2);
         
     | 
| 
       1180 
1920 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(8, 16), struct envoy_config_core_v3_RuntimeDouble*) = value;
         
     | 
| 
       1181 
1921 
     | 
    
         
             
            }
         
     | 
| 
       1182 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_RuntimeDouble* envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_mutable_active_request_bias(envoy_config_cluster_v3_Cluster_LeastRequestLbConfig  
     | 
| 
      
 1922 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_RuntimeDouble* envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_mutable_active_request_bias(envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* msg, upb_Arena* arena) {
         
     | 
| 
       1183 
1923 
     | 
    
         
             
              struct envoy_config_core_v3_RuntimeDouble* sub = (struct envoy_config_core_v3_RuntimeDouble*)envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_active_request_bias(msg);
         
     | 
| 
       1184 
1924 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1185 
     | 
    
         
            -
                sub = (struct envoy_config_core_v3_RuntimeDouble*) 
     | 
| 
      
 1925 
     | 
    
         
            +
                sub = (struct envoy_config_core_v3_RuntimeDouble*)_upb_Message_New(&envoy_config_core_v3_RuntimeDouble_msginit, arena);
         
     | 
| 
       1186 
1926 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1187 
1927 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_set_active_request_bias(msg, sub);
         
     | 
| 
       1188 
1928 
     | 
    
         
             
              }
         
     | 
| 
       1189 
1929 
     | 
    
         
             
              return sub;
         
     | 
| 
       1190 
1930 
     | 
    
         
             
            }
         
     | 
| 
      
 1931 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_set_slow_start_config(envoy_config_cluster_v3_Cluster_LeastRequestLbConfig *msg, envoy_config_cluster_v3_Cluster_SlowStartConfig* value) {
         
     | 
| 
      
 1932 
     | 
    
         
            +
              _upb_sethas(msg, 3);
         
     | 
| 
      
 1933 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(12, 24), envoy_config_cluster_v3_Cluster_SlowStartConfig*) = value;
         
     | 
| 
      
 1934 
     | 
    
         
            +
            }
         
     | 
| 
      
 1935 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_SlowStartConfig* envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_mutable_slow_start_config(envoy_config_cluster_v3_Cluster_LeastRequestLbConfig* msg, upb_Arena* arena) {
         
     | 
| 
      
 1936 
     | 
    
         
            +
              struct envoy_config_cluster_v3_Cluster_SlowStartConfig* sub = (struct envoy_config_cluster_v3_Cluster_SlowStartConfig*)envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_slow_start_config(msg);
         
     | 
| 
      
 1937 
     | 
    
         
            +
              if (sub == NULL) {
         
     | 
| 
      
 1938 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_Cluster_SlowStartConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_SlowStartConfig_msginit, arena);
         
     | 
| 
      
 1939 
     | 
    
         
            +
                if (!sub) return NULL;
         
     | 
| 
      
 1940 
     | 
    
         
            +
                envoy_config_cluster_v3_Cluster_LeastRequestLbConfig_set_slow_start_config(msg, sub);
         
     | 
| 
      
 1941 
     | 
    
         
            +
              }
         
     | 
| 
      
 1942 
     | 
    
         
            +
              return sub;
         
     | 
| 
      
 1943 
     | 
    
         
            +
            }
         
     | 
| 
       1191 
1944 
     | 
    
         | 
| 
       1192 
1945 
     | 
    
         
             
            /* envoy.config.cluster.v3.Cluster.RingHashLbConfig */
         
     | 
| 
       1193 
1946 
     | 
    
         | 
| 
       1194 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_RingHashLbConfig  
     | 
| 
       1195 
     | 
    
         
            -
              return (envoy_config_cluster_v3_Cluster_RingHashLbConfig 
     | 
| 
      
 1947 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_RingHashLbConfig* envoy_config_cluster_v3_Cluster_RingHashLbConfig_new(upb_Arena* arena) {
         
     | 
| 
      
 1948 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_RingHashLbConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_RingHashLbConfig_msginit, arena);
         
     | 
| 
       1196 
1949 
     | 
    
         
             
            }
         
     | 
| 
       1197 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_RingHashLbConfig  
     | 
| 
       1198 
     | 
    
         
            -
             
     | 
| 
       1199 
     | 
    
         
            -
               
     | 
| 
       1200 
     | 
    
         
            -
               
     | 
| 
      
 1950 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_RingHashLbConfig* envoy_config_cluster_v3_Cluster_RingHashLbConfig_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 1951 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_RingHashLbConfig* ret = envoy_config_cluster_v3_Cluster_RingHashLbConfig_new(arena);
         
     | 
| 
      
 1952 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 1953 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_RingHashLbConfig_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 1954 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 1955 
     | 
    
         
            +
              }
         
     | 
| 
      
 1956 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1201 
1957 
     | 
    
         
             
            }
         
     | 
| 
       1202 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_RingHashLbConfig  
     | 
| 
       1203 
     | 
    
         
            -
                                        
     | 
| 
       1204 
     | 
    
         
            -
             
     | 
| 
       1205 
     | 
    
         
            -
               
     | 
| 
       1206 
     | 
    
         
            -
             
     | 
| 
      
 1958 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_RingHashLbConfig* envoy_config_cluster_v3_Cluster_RingHashLbConfig_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 1959 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 1960 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 1961 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_RingHashLbConfig* ret = envoy_config_cluster_v3_Cluster_RingHashLbConfig_new(arena);
         
     | 
| 
      
 1962 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 1963 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_RingHashLbConfig_msginit, extreg, options, arena) !=
         
     | 
| 
      
 1964 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 1965 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 1966 
     | 
    
         
            +
              }
         
     | 
| 
      
 1967 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1207 
1968 
     | 
    
         
             
            }
         
     | 
| 
       1208 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       1209 
     | 
    
         
            -
              return  
     | 
| 
      
 1969 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_RingHashLbConfig_serialize(const envoy_config_cluster_v3_Cluster_RingHashLbConfig* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 1970 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_RingHashLbConfig_msginit, 0, arena, len);
         
     | 
| 
      
 1971 
     | 
    
         
            +
            }
         
     | 
| 
      
 1972 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_RingHashLbConfig_serialize_ex(const envoy_config_cluster_v3_Cluster_RingHashLbConfig* msg, int options,
         
     | 
| 
      
 1973 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 1974 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_RingHashLbConfig_msginit, options, arena, len);
         
     | 
| 
      
 1975 
     | 
    
         
            +
            }
         
     | 
| 
      
 1976 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_RingHashLbConfig_has_minimum_ring_size(const envoy_config_cluster_v3_Cluster_RingHashLbConfig* msg) {
         
     | 
| 
      
 1977 
     | 
    
         
            +
              return _upb_hasbit(msg, 1);
         
     | 
| 
      
 1978 
     | 
    
         
            +
            }
         
     | 
| 
      
 1979 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_RingHashLbConfig_clear_minimum_ring_size(const envoy_config_cluster_v3_Cluster_RingHashLbConfig* msg) {
         
     | 
| 
      
 1980 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(8, 8), const upb_Message*) = NULL;
         
     | 
| 
      
 1981 
     | 
    
         
            +
            }
         
     | 
| 
      
 1982 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_UInt64Value* envoy_config_cluster_v3_Cluster_RingHashLbConfig_minimum_ring_size(const envoy_config_cluster_v3_Cluster_RingHashLbConfig* msg) {
         
     | 
| 
      
 1983 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), const struct google_protobuf_UInt64Value*);
         
     | 
| 
      
 1984 
     | 
    
         
            +
            }
         
     | 
| 
      
 1985 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_RingHashLbConfig_clear_hash_function(const envoy_config_cluster_v3_Cluster_RingHashLbConfig* msg) {
         
     | 
| 
      
 1986 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t) = 0;
         
     | 
| 
      
 1987 
     | 
    
         
            +
            }
         
     | 
| 
      
 1988 
     | 
    
         
            +
            UPB_INLINE int32_t envoy_config_cluster_v3_Cluster_RingHashLbConfig_hash_function(const envoy_config_cluster_v3_Cluster_RingHashLbConfig* msg) {
         
     | 
| 
      
 1989 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t);
         
     | 
| 
      
 1990 
     | 
    
         
            +
            }
         
     | 
| 
      
 1991 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_RingHashLbConfig_has_maximum_ring_size(const envoy_config_cluster_v3_Cluster_RingHashLbConfig* msg) {
         
     | 
| 
      
 1992 
     | 
    
         
            +
              return _upb_hasbit(msg, 2);
         
     | 
| 
      
 1993 
     | 
    
         
            +
            }
         
     | 
| 
      
 1994 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_RingHashLbConfig_clear_maximum_ring_size(const envoy_config_cluster_v3_Cluster_RingHashLbConfig* msg) {
         
     | 
| 
      
 1995 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(12, 16), const upb_Message*) = NULL;
         
     | 
| 
      
 1996 
     | 
    
         
            +
            }
         
     | 
| 
      
 1997 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_UInt64Value* envoy_config_cluster_v3_Cluster_RingHashLbConfig_maximum_ring_size(const envoy_config_cluster_v3_Cluster_RingHashLbConfig* msg) {
         
     | 
| 
      
 1998 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(12, 16), const struct google_protobuf_UInt64Value*);
         
     | 
| 
       1210 
1999 
     | 
    
         
             
            }
         
     | 
| 
       1211 
     | 
    
         
            -
             
     | 
| 
       1212 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_RingHashLbConfig_has_minimum_ring_size(const envoy_config_cluster_v3_Cluster_RingHashLbConfig *msg) { return _upb_hasbit(msg, 1); }
         
     | 
| 
       1213 
     | 
    
         
            -
            UPB_INLINE const struct google_protobuf_UInt64Value* envoy_config_cluster_v3_Cluster_RingHashLbConfig_minimum_ring_size(const envoy_config_cluster_v3_Cluster_RingHashLbConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), const struct google_protobuf_UInt64Value*); }
         
     | 
| 
       1214 
     | 
    
         
            -
            UPB_INLINE int32_t envoy_config_cluster_v3_Cluster_RingHashLbConfig_hash_function(const envoy_config_cluster_v3_Cluster_RingHashLbConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t); }
         
     | 
| 
       1215 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_RingHashLbConfig_has_maximum_ring_size(const envoy_config_cluster_v3_Cluster_RingHashLbConfig *msg) { return _upb_hasbit(msg, 2); }
         
     | 
| 
       1216 
     | 
    
         
            -
            UPB_INLINE const struct google_protobuf_UInt64Value* envoy_config_cluster_v3_Cluster_RingHashLbConfig_maximum_ring_size(const envoy_config_cluster_v3_Cluster_RingHashLbConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 16), const struct google_protobuf_UInt64Value*); }
         
     | 
| 
       1217 
2000 
     | 
    
         | 
| 
       1218 
2001 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_RingHashLbConfig_set_minimum_ring_size(envoy_config_cluster_v3_Cluster_RingHashLbConfig *msg, struct google_protobuf_UInt64Value* value) {
         
     | 
| 
       1219 
2002 
     | 
    
         
             
              _upb_sethas(msg, 1);
         
     | 
| 
       1220 
2003 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(8, 8), struct google_protobuf_UInt64Value*) = value;
         
     | 
| 
       1221 
2004 
     | 
    
         
             
            }
         
     | 
| 
       1222 
     | 
    
         
            -
            UPB_INLINE struct google_protobuf_UInt64Value* envoy_config_cluster_v3_Cluster_RingHashLbConfig_mutable_minimum_ring_size(envoy_config_cluster_v3_Cluster_RingHashLbConfig  
     | 
| 
      
 2005 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_UInt64Value* envoy_config_cluster_v3_Cluster_RingHashLbConfig_mutable_minimum_ring_size(envoy_config_cluster_v3_Cluster_RingHashLbConfig* msg, upb_Arena* arena) {
         
     | 
| 
       1223 
2006 
     | 
    
         
             
              struct google_protobuf_UInt64Value* sub = (struct google_protobuf_UInt64Value*)envoy_config_cluster_v3_Cluster_RingHashLbConfig_minimum_ring_size(msg);
         
     | 
| 
       1224 
2007 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1225 
     | 
    
         
            -
                sub = (struct google_protobuf_UInt64Value*) 
     | 
| 
      
 2008 
     | 
    
         
            +
                sub = (struct google_protobuf_UInt64Value*)_upb_Message_New(&google_protobuf_UInt64Value_msginit, arena);
         
     | 
| 
       1226 
2009 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1227 
2010 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_RingHashLbConfig_set_minimum_ring_size(msg, sub);
         
     | 
| 
       1228 
2011 
     | 
    
         
             
              }
         
     | 
| 
         @@ -1235,10 +2018,10 @@ UPB_INLINE void envoy_config_cluster_v3_Cluster_RingHashLbConfig_set_maximum_rin 
     | 
|
| 
       1235 
2018 
     | 
    
         
             
              _upb_sethas(msg, 2);
         
     | 
| 
       1236 
2019 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(12, 16), struct google_protobuf_UInt64Value*) = value;
         
     | 
| 
       1237 
2020 
     | 
    
         
             
            }
         
     | 
| 
       1238 
     | 
    
         
            -
            UPB_INLINE struct google_protobuf_UInt64Value* envoy_config_cluster_v3_Cluster_RingHashLbConfig_mutable_maximum_ring_size(envoy_config_cluster_v3_Cluster_RingHashLbConfig  
     | 
| 
      
 2021 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_UInt64Value* envoy_config_cluster_v3_Cluster_RingHashLbConfig_mutable_maximum_ring_size(envoy_config_cluster_v3_Cluster_RingHashLbConfig* msg, upb_Arena* arena) {
         
     | 
| 
       1239 
2022 
     | 
    
         
             
              struct google_protobuf_UInt64Value* sub = (struct google_protobuf_UInt64Value*)envoy_config_cluster_v3_Cluster_RingHashLbConfig_maximum_ring_size(msg);
         
     | 
| 
       1240 
2023 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1241 
     | 
    
         
            -
                sub = (struct google_protobuf_UInt64Value*) 
     | 
| 
      
 2024 
     | 
    
         
            +
                sub = (struct google_protobuf_UInt64Value*)_upb_Message_New(&google_protobuf_UInt64Value_msginit, arena);
         
     | 
| 
       1242 
2025 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1243 
2026 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_RingHashLbConfig_set_maximum_ring_size(msg, sub);
         
     | 
| 
       1244 
2027 
     | 
    
         
             
              }
         
     | 
| 
         @@ -1247,35 +2030,53 @@ UPB_INLINE struct google_protobuf_UInt64Value* envoy_config_cluster_v3_Cluster_R 
     | 
|
| 
       1247 
2030 
     | 
    
         | 
| 
       1248 
2031 
     | 
    
         
             
            /* envoy.config.cluster.v3.Cluster.MaglevLbConfig */
         
     | 
| 
       1249 
2032 
     | 
    
         | 
| 
       1250 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_MaglevLbConfig  
     | 
| 
       1251 
     | 
    
         
            -
              return (envoy_config_cluster_v3_Cluster_MaglevLbConfig 
     | 
| 
      
 2033 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_MaglevLbConfig* envoy_config_cluster_v3_Cluster_MaglevLbConfig_new(upb_Arena* arena) {
         
     | 
| 
      
 2034 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_MaglevLbConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_MaglevLbConfig_msginit, arena);
         
     | 
| 
       1252 
2035 
     | 
    
         
             
            }
         
     | 
| 
       1253 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_MaglevLbConfig  
     | 
| 
       1254 
     | 
    
         
            -
             
     | 
| 
       1255 
     | 
    
         
            -
               
     | 
| 
       1256 
     | 
    
         
            -
               
     | 
| 
      
 2036 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_MaglevLbConfig* envoy_config_cluster_v3_Cluster_MaglevLbConfig_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 2037 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_MaglevLbConfig* ret = envoy_config_cluster_v3_Cluster_MaglevLbConfig_new(arena);
         
     | 
| 
      
 2038 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2039 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_MaglevLbConfig_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2040 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2041 
     | 
    
         
            +
              }
         
     | 
| 
      
 2042 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1257 
2043 
     | 
    
         
             
            }
         
     | 
| 
       1258 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_MaglevLbConfig  
     | 
| 
       1259 
     | 
    
         
            -
                                        
     | 
| 
       1260 
     | 
    
         
            -
             
     | 
| 
       1261 
     | 
    
         
            -
               
     | 
| 
       1262 
     | 
    
         
            -
             
     | 
| 
      
 2044 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_MaglevLbConfig* envoy_config_cluster_v3_Cluster_MaglevLbConfig_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 2045 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 2046 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 2047 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_MaglevLbConfig* ret = envoy_config_cluster_v3_Cluster_MaglevLbConfig_new(arena);
         
     | 
| 
      
 2048 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2049 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_MaglevLbConfig_msginit, extreg, options, arena) !=
         
     | 
| 
      
 2050 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2051 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2052 
     | 
    
         
            +
              }
         
     | 
| 
      
 2053 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1263 
2054 
     | 
    
         
             
            }
         
     | 
| 
       1264 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       1265 
     | 
    
         
            -
              return  
     | 
| 
      
 2055 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_MaglevLbConfig_serialize(const envoy_config_cluster_v3_Cluster_MaglevLbConfig* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2056 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_MaglevLbConfig_msginit, 0, arena, len);
         
     | 
| 
      
 2057 
     | 
    
         
            +
            }
         
     | 
| 
      
 2058 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_MaglevLbConfig_serialize_ex(const envoy_config_cluster_v3_Cluster_MaglevLbConfig* msg, int options,
         
     | 
| 
      
 2059 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2060 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_MaglevLbConfig_msginit, options, arena, len);
         
     | 
| 
      
 2061 
     | 
    
         
            +
            }
         
     | 
| 
      
 2062 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_MaglevLbConfig_has_table_size(const envoy_config_cluster_v3_Cluster_MaglevLbConfig* msg) {
         
     | 
| 
      
 2063 
     | 
    
         
            +
              return _upb_hasbit(msg, 1);
         
     | 
| 
      
 2064 
     | 
    
         
            +
            }
         
     | 
| 
      
 2065 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_MaglevLbConfig_clear_table_size(const envoy_config_cluster_v3_Cluster_MaglevLbConfig* msg) {
         
     | 
| 
      
 2066 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const upb_Message*) = NULL;
         
     | 
| 
      
 2067 
     | 
    
         
            +
            }
         
     | 
| 
      
 2068 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_UInt64Value* envoy_config_cluster_v3_Cluster_MaglevLbConfig_table_size(const envoy_config_cluster_v3_Cluster_MaglevLbConfig* msg) {
         
     | 
| 
      
 2069 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_UInt64Value*);
         
     | 
| 
       1266 
2070 
     | 
    
         
             
            }
         
     | 
| 
       1267 
     | 
    
         
            -
             
     | 
| 
       1268 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_MaglevLbConfig_has_table_size(const envoy_config_cluster_v3_Cluster_MaglevLbConfig *msg) { return _upb_hasbit(msg, 1); }
         
     | 
| 
       1269 
     | 
    
         
            -
            UPB_INLINE const struct google_protobuf_UInt64Value* envoy_config_cluster_v3_Cluster_MaglevLbConfig_table_size(const envoy_config_cluster_v3_Cluster_MaglevLbConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_UInt64Value*); }
         
     | 
| 
       1270 
2071 
     | 
    
         | 
| 
       1271 
2072 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_MaglevLbConfig_set_table_size(envoy_config_cluster_v3_Cluster_MaglevLbConfig *msg, struct google_protobuf_UInt64Value* value) {
         
     | 
| 
       1272 
2073 
     | 
    
         
             
              _upb_sethas(msg, 1);
         
     | 
| 
       1273 
2074 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_UInt64Value*) = value;
         
     | 
| 
       1274 
2075 
     | 
    
         
             
            }
         
     | 
| 
       1275 
     | 
    
         
            -
            UPB_INLINE struct google_protobuf_UInt64Value* envoy_config_cluster_v3_Cluster_MaglevLbConfig_mutable_table_size(envoy_config_cluster_v3_Cluster_MaglevLbConfig  
     | 
| 
      
 2076 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_UInt64Value* envoy_config_cluster_v3_Cluster_MaglevLbConfig_mutable_table_size(envoy_config_cluster_v3_Cluster_MaglevLbConfig* msg, upb_Arena* arena) {
         
     | 
| 
       1276 
2077 
     | 
    
         
             
              struct google_protobuf_UInt64Value* sub = (struct google_protobuf_UInt64Value*)envoy_config_cluster_v3_Cluster_MaglevLbConfig_table_size(msg);
         
     | 
| 
       1277 
2078 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1278 
     | 
    
         
            -
                sub = (struct google_protobuf_UInt64Value*) 
     | 
| 
      
 2079 
     | 
    
         
            +
                sub = (struct google_protobuf_UInt64Value*)_upb_Message_New(&google_protobuf_UInt64Value_msginit, arena);
         
     | 
| 
       1279 
2080 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1280 
2081 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_MaglevLbConfig_set_table_size(msg, sub);
         
     | 
| 
       1281 
2082 
     | 
    
         
             
              }
         
     | 
| 
         @@ -1284,25 +2085,41 @@ UPB_INLINE struct google_protobuf_UInt64Value* envoy_config_cluster_v3_Cluster_M 
     | 
|
| 
       1284 
2085 
     | 
    
         | 
| 
       1285 
2086 
     | 
    
         
             
            /* envoy.config.cluster.v3.Cluster.OriginalDstLbConfig */
         
     | 
| 
       1286 
2087 
     | 
    
         | 
| 
       1287 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_OriginalDstLbConfig  
     | 
| 
       1288 
     | 
    
         
            -
              return (envoy_config_cluster_v3_Cluster_OriginalDstLbConfig 
     | 
| 
      
 2088 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_OriginalDstLbConfig* envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_new(upb_Arena* arena) {
         
     | 
| 
      
 2089 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_OriginalDstLbConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_msginit, arena);
         
     | 
| 
      
 2090 
     | 
    
         
            +
            }
         
     | 
| 
      
 2091 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_OriginalDstLbConfig* envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 2092 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_OriginalDstLbConfig* ret = envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_new(arena);
         
     | 
| 
      
 2093 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2094 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2095 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2096 
     | 
    
         
            +
              }
         
     | 
| 
      
 2097 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1289 
2098 
     | 
    
         
             
            }
         
     | 
| 
       1290 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_OriginalDstLbConfig  
     | 
| 
       1291 
     | 
    
         
            -
             
     | 
| 
       1292 
     | 
    
         
            -
             
     | 
| 
       1293 
     | 
    
         
            -
               
     | 
| 
      
 2099 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_OriginalDstLbConfig* envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 2100 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 2101 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 2102 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_OriginalDstLbConfig* ret = envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_new(arena);
         
     | 
| 
      
 2103 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2104 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_msginit, extreg, options, arena) !=
         
     | 
| 
      
 2105 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2106 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2107 
     | 
    
         
            +
              }
         
     | 
| 
      
 2108 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1294 
2109 
     | 
    
         
             
            }
         
     | 
| 
       1295 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1296 
     | 
    
         
            -
             
     | 
| 
       1297 
     | 
    
         
            -
              envoy_config_cluster_v3_Cluster_OriginalDstLbConfig *ret = envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_new(arena);
         
     | 
| 
       1298 
     | 
    
         
            -
              return (ret && _upb_decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_msginit, arena, options))
         
     | 
| 
       1299 
     | 
    
         
            -
                  ? ret : NULL;
         
     | 
| 
      
 2110 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_serialize(const envoy_config_cluster_v3_Cluster_OriginalDstLbConfig* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2111 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_msginit, 0, arena, len);
         
     | 
| 
       1300 
2112 
     | 
    
         
             
            }
         
     | 
| 
       1301 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       1302 
     | 
    
         
            -
             
     | 
| 
      
 2113 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_serialize_ex(const envoy_config_cluster_v3_Cluster_OriginalDstLbConfig* msg, int options,
         
     | 
| 
      
 2114 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2115 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_msginit, options, arena, len);
         
     | 
| 
      
 2116 
     | 
    
         
            +
            }
         
     | 
| 
      
 2117 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_clear_use_http_header(const envoy_config_cluster_v3_Cluster_OriginalDstLbConfig* msg) {
         
     | 
| 
      
 2118 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(0, 0), bool) = 0;
         
     | 
| 
      
 2119 
     | 
    
         
            +
            }
         
     | 
| 
      
 2120 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_use_http_header(const envoy_config_cluster_v3_Cluster_OriginalDstLbConfig* msg) {
         
     | 
| 
      
 2121 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), bool);
         
     | 
| 
       1303 
2122 
     | 
    
         
             
            }
         
     | 
| 
       1304 
     | 
    
         
            -
             
     | 
| 
       1305 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_use_http_header(const envoy_config_cluster_v3_Cluster_OriginalDstLbConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), bool); }
         
     | 
| 
       1306 
2123 
     | 
    
         | 
| 
       1307 
2124 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_set_use_http_header(envoy_config_cluster_v3_Cluster_OriginalDstLbConfig *msg, bool value) {
         
     | 
| 
       1308 
2125 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(0, 0), bool) = value;
         
     | 
| 
         @@ -1310,76 +2127,142 @@ UPB_INLINE void envoy_config_cluster_v3_Cluster_OriginalDstLbConfig_set_use_http 
     | 
|
| 
       1310 
2127 
     | 
    
         | 
| 
       1311 
2128 
     | 
    
         
             
            /* envoy.config.cluster.v3.Cluster.CommonLbConfig */
         
     | 
| 
       1312 
2129 
     | 
    
         | 
| 
       1313 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig  
     | 
| 
       1314 
     | 
    
         
            -
              return (envoy_config_cluster_v3_Cluster_CommonLbConfig 
     | 
| 
      
 2130 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_new(upb_Arena* arena) {
         
     | 
| 
      
 2131 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_CommonLbConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_CommonLbConfig_msginit, arena);
         
     | 
| 
      
 2132 
     | 
    
         
            +
            }
         
     | 
| 
      
 2133 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 2134 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_CommonLbConfig* ret = envoy_config_cluster_v3_Cluster_CommonLbConfig_new(arena);
         
     | 
| 
      
 2135 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2136 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_CommonLbConfig_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2137 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2138 
     | 
    
         
            +
              }
         
     | 
| 
      
 2139 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1315 
2140 
     | 
    
         
             
            }
         
     | 
| 
       1316 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig  
     | 
| 
       1317 
     | 
    
         
            -
             
     | 
| 
       1318 
     | 
    
         
            -
             
     | 
| 
       1319 
     | 
    
         
            -
               
     | 
| 
      
 2141 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 2142 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 2143 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 2144 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_CommonLbConfig* ret = envoy_config_cluster_v3_Cluster_CommonLbConfig_new(arena);
         
     | 
| 
      
 2145 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2146 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_CommonLbConfig_msginit, extreg, options, arena) !=
         
     | 
| 
      
 2147 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2148 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2149 
     | 
    
         
            +
              }
         
     | 
| 
      
 2150 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1320 
2151 
     | 
    
         
             
            }
         
     | 
| 
       1321 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1322 
     | 
    
         
            -
             
     | 
| 
       1323 
     | 
    
         
            -
              envoy_config_cluster_v3_Cluster_CommonLbConfig *ret = envoy_config_cluster_v3_Cluster_CommonLbConfig_new(arena);
         
     | 
| 
       1324 
     | 
    
         
            -
              return (ret && _upb_decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_CommonLbConfig_msginit, arena, options))
         
     | 
| 
       1325 
     | 
    
         
            -
                  ? ret : NULL;
         
     | 
| 
      
 2152 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_CommonLbConfig_serialize(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2153 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_CommonLbConfig_msginit, 0, arena, len);
         
     | 
| 
       1326 
2154 
     | 
    
         
             
            }
         
     | 
| 
       1327 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       1328 
     | 
    
         
            -
             
     | 
| 
      
 2155 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_CommonLbConfig_serialize_ex(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg, int options,
         
     | 
| 
      
 2156 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2157 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_CommonLbConfig_msginit, options, arena, len);
         
     | 
| 
       1329 
2158 
     | 
    
         
             
            }
         
     | 
| 
       1330 
     | 
    
         
            -
             
     | 
| 
       1331 
2159 
     | 
    
         
             
            typedef enum {
         
     | 
| 
       1332 
2160 
     | 
    
         
             
              envoy_config_cluster_v3_Cluster_CommonLbConfig_locality_config_specifier_zone_aware_lb_config = 2,
         
     | 
| 
       1333 
2161 
     | 
    
         
             
              envoy_config_cluster_v3_Cluster_CommonLbConfig_locality_config_specifier_locality_weighted_lb_config = 3,
         
     | 
| 
       1334 
2162 
     | 
    
         
             
              envoy_config_cluster_v3_Cluster_CommonLbConfig_locality_config_specifier_NOT_SET = 0
         
     | 
| 
       1335 
2163 
     | 
    
         
             
            } envoy_config_cluster_v3_Cluster_CommonLbConfig_locality_config_specifier_oneofcases;
         
     | 
| 
       1336 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig_locality_config_specifier_oneofcases envoy_config_cluster_v3_Cluster_CommonLbConfig_locality_config_specifier_case(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) { 
     | 
| 
       1337 
     | 
    
         
            -
             
     | 
| 
       1338 
     | 
    
         
            -
             
     | 
| 
       1339 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1340 
     | 
    
         
            -
             
     | 
| 
       1341 
     | 
    
         
            -
             
     | 
| 
       1342 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1343 
     | 
    
         
            -
             
     | 
| 
       1344 
     | 
    
         
            -
             
     | 
| 
       1345 
     | 
    
         
            -
            UPB_INLINE const struct  
     | 
| 
       1346 
     | 
    
         
            -
             
     | 
| 
       1347 
     | 
    
         
            -
             
     | 
| 
       1348 
     | 
    
         
            -
            UPB_INLINE bool  
     | 
| 
       1349 
     | 
    
         
            -
             
     | 
| 
      
 2164 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig_locality_config_specifier_oneofcases envoy_config_cluster_v3_Cluster_CommonLbConfig_locality_config_specifier_case(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2165 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_CommonLbConfig_locality_config_specifier_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t);
         
     | 
| 
      
 2166 
     | 
    
         
            +
            }
         
     | 
| 
      
 2167 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_CommonLbConfig_has_healthy_panic_threshold(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2168 
     | 
    
         
            +
              return _upb_hasbit(msg, 1);
         
     | 
| 
      
 2169 
     | 
    
         
            +
            }
         
     | 
| 
      
 2170 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_clear_healthy_panic_threshold(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2171 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(12, 16), const upb_Message*) = NULL;
         
     | 
| 
      
 2172 
     | 
    
         
            +
            }
         
     | 
| 
      
 2173 
     | 
    
         
            +
            UPB_INLINE const struct envoy_type_v3_Percent* envoy_config_cluster_v3_Cluster_CommonLbConfig_healthy_panic_threshold(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2174 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(12, 16), const struct envoy_type_v3_Percent*);
         
     | 
| 
      
 2175 
     | 
    
         
            +
            }
         
     | 
| 
      
 2176 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_CommonLbConfig_has_zone_aware_lb_config(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2177 
     | 
    
         
            +
              return _upb_getoneofcase(msg, UPB_SIZE(4, 4)) == 2;
         
     | 
| 
      
 2178 
     | 
    
         
            +
            }
         
     | 
| 
      
 2179 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_clear_zone_aware_lb_config(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2180 
     | 
    
         
            +
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig*, UPB_SIZE(28, 48), 0, UPB_SIZE(4, 4), envoy_config_cluster_v3_Cluster_CommonLbConfig_locality_config_specifier_NOT_SET);
         
     | 
| 
      
 2181 
     | 
    
         
            +
            }
         
     | 
| 
      
 2182 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_zone_aware_lb_config(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2183 
     | 
    
         
            +
              return UPB_READ_ONEOF(msg, const envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig*, UPB_SIZE(28, 48), UPB_SIZE(4, 4), 2, NULL);
         
     | 
| 
      
 2184 
     | 
    
         
            +
            }
         
     | 
| 
      
 2185 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_CommonLbConfig_has_locality_weighted_lb_config(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2186 
     | 
    
         
            +
              return _upb_getoneofcase(msg, UPB_SIZE(4, 4)) == 3;
         
     | 
| 
      
 2187 
     | 
    
         
            +
            }
         
     | 
| 
      
 2188 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_clear_locality_weighted_lb_config(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2189 
     | 
    
         
            +
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig*, UPB_SIZE(28, 48), 0, UPB_SIZE(4, 4), envoy_config_cluster_v3_Cluster_CommonLbConfig_locality_config_specifier_NOT_SET);
         
     | 
| 
      
 2190 
     | 
    
         
            +
            }
         
     | 
| 
      
 2191 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_locality_weighted_lb_config(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2192 
     | 
    
         
            +
              return UPB_READ_ONEOF(msg, const envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig*, UPB_SIZE(28, 48), UPB_SIZE(4, 4), 3, NULL);
         
     | 
| 
      
 2193 
     | 
    
         
            +
            }
         
     | 
| 
      
 2194 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_CommonLbConfig_has_update_merge_window(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2195 
     | 
    
         
            +
              return _upb_hasbit(msg, 2);
         
     | 
| 
      
 2196 
     | 
    
         
            +
            }
         
     | 
| 
      
 2197 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_clear_update_merge_window(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2198 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(16, 24), const upb_Message*) = NULL;
         
     | 
| 
      
 2199 
     | 
    
         
            +
            }
         
     | 
| 
      
 2200 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_CommonLbConfig_update_merge_window(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2201 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(16, 24), const struct google_protobuf_Duration*);
         
     | 
| 
      
 2202 
     | 
    
         
            +
            }
         
     | 
| 
      
 2203 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_clear_ignore_new_hosts_until_first_hc(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2204 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(8, 8), bool) = 0;
         
     | 
| 
      
 2205 
     | 
    
         
            +
            }
         
     | 
| 
      
 2206 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_CommonLbConfig_ignore_new_hosts_until_first_hc(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2207 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), bool);
         
     | 
| 
      
 2208 
     | 
    
         
            +
            }
         
     | 
| 
      
 2209 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_clear_close_connections_on_host_set_change(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2210 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(9, 9), bool) = 0;
         
     | 
| 
      
 2211 
     | 
    
         
            +
            }
         
     | 
| 
      
 2212 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_CommonLbConfig_close_connections_on_host_set_change(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2213 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(9, 9), bool);
         
     | 
| 
      
 2214 
     | 
    
         
            +
            }
         
     | 
| 
      
 2215 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_CommonLbConfig_has_consistent_hashing_lb_config(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2216 
     | 
    
         
            +
              return _upb_hasbit(msg, 3);
         
     | 
| 
      
 2217 
     | 
    
         
            +
            }
         
     | 
| 
      
 2218 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_clear_consistent_hashing_lb_config(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2219 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(20, 32), const upb_Message*) = NULL;
         
     | 
| 
      
 2220 
     | 
    
         
            +
            }
         
     | 
| 
      
 2221 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_consistent_hashing_lb_config(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2222 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(20, 32), const envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig*);
         
     | 
| 
      
 2223 
     | 
    
         
            +
            }
         
     | 
| 
      
 2224 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_CommonLbConfig_has_override_host_status(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2225 
     | 
    
         
            +
              return _upb_hasbit(msg, 4);
         
     | 
| 
      
 2226 
     | 
    
         
            +
            }
         
     | 
| 
      
 2227 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_clear_override_host_status(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2228 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(24, 40), const upb_Message*) = NULL;
         
     | 
| 
      
 2229 
     | 
    
         
            +
            }
         
     | 
| 
      
 2230 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_HealthStatusSet* envoy_config_cluster_v3_Cluster_CommonLbConfig_override_host_status(const envoy_config_cluster_v3_Cluster_CommonLbConfig* msg) {
         
     | 
| 
      
 2231 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(24, 40), const struct envoy_config_core_v3_HealthStatusSet*);
         
     | 
| 
      
 2232 
     | 
    
         
            +
            }
         
     | 
| 
       1350 
2233 
     | 
    
         | 
| 
       1351 
2234 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_set_healthy_panic_threshold(envoy_config_cluster_v3_Cluster_CommonLbConfig *msg, struct envoy_type_v3_Percent* value) {
         
     | 
| 
       1352 
2235 
     | 
    
         
             
              _upb_sethas(msg, 1);
         
     | 
| 
       1353 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 2236 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(12, 16), struct envoy_type_v3_Percent*) = value;
         
     | 
| 
       1354 
2237 
     | 
    
         
             
            }
         
     | 
| 
       1355 
     | 
    
         
            -
            UPB_INLINE struct envoy_type_v3_Percent* envoy_config_cluster_v3_Cluster_CommonLbConfig_mutable_healthy_panic_threshold(envoy_config_cluster_v3_Cluster_CommonLbConfig  
     | 
| 
      
 2238 
     | 
    
         
            +
            UPB_INLINE struct envoy_type_v3_Percent* envoy_config_cluster_v3_Cluster_CommonLbConfig_mutable_healthy_panic_threshold(envoy_config_cluster_v3_Cluster_CommonLbConfig* msg, upb_Arena* arena) {
         
     | 
| 
       1356 
2239 
     | 
    
         
             
              struct envoy_type_v3_Percent* sub = (struct envoy_type_v3_Percent*)envoy_config_cluster_v3_Cluster_CommonLbConfig_healthy_panic_threshold(msg);
         
     | 
| 
       1357 
2240 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1358 
     | 
    
         
            -
                sub = (struct envoy_type_v3_Percent*) 
     | 
| 
      
 2241 
     | 
    
         
            +
                sub = (struct envoy_type_v3_Percent*)_upb_Message_New(&envoy_type_v3_Percent_msginit, arena);
         
     | 
| 
       1359 
2242 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1360 
2243 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_CommonLbConfig_set_healthy_panic_threshold(msg, sub);
         
     | 
| 
       1361 
2244 
     | 
    
         
             
              }
         
     | 
| 
       1362 
2245 
     | 
    
         
             
              return sub;
         
     | 
| 
       1363 
2246 
     | 
    
         
             
            }
         
     | 
| 
       1364 
2247 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_set_zone_aware_lb_config(envoy_config_cluster_v3_Cluster_CommonLbConfig *msg, envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* value) {
         
     | 
| 
       1365 
     | 
    
         
            -
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig*, UPB_SIZE( 
     | 
| 
      
 2248 
     | 
    
         
            +
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig*, UPB_SIZE(28, 48), value, UPB_SIZE(4, 4), 2);
         
     | 
| 
       1366 
2249 
     | 
    
         
             
            }
         
     | 
| 
       1367 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_mutable_zone_aware_lb_config(envoy_config_cluster_v3_Cluster_CommonLbConfig  
     | 
| 
      
 2250 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_mutable_zone_aware_lb_config(envoy_config_cluster_v3_Cluster_CommonLbConfig* msg, upb_Arena* arena) {
         
     | 
| 
       1368 
2251 
     | 
    
         
             
              struct envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* sub = (struct envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig*)envoy_config_cluster_v3_Cluster_CommonLbConfig_zone_aware_lb_config(msg);
         
     | 
| 
       1369 
2252 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1370 
     | 
    
         
            -
                sub = (struct envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig*) 
     | 
| 
      
 2253 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_msginit, arena);
         
     | 
| 
       1371 
2254 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1372 
2255 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_CommonLbConfig_set_zone_aware_lb_config(msg, sub);
         
     | 
| 
       1373 
2256 
     | 
    
         
             
              }
         
     | 
| 
       1374 
2257 
     | 
    
         
             
              return sub;
         
     | 
| 
       1375 
2258 
     | 
    
         
             
            }
         
     | 
| 
       1376 
2259 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_set_locality_weighted_lb_config(envoy_config_cluster_v3_Cluster_CommonLbConfig *msg, envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig* value) {
         
     | 
| 
       1377 
     | 
    
         
            -
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig*, UPB_SIZE( 
     | 
| 
      
 2260 
     | 
    
         
            +
              UPB_WRITE_ONEOF(msg, envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig*, UPB_SIZE(28, 48), value, UPB_SIZE(4, 4), 3);
         
     | 
| 
       1378 
2261 
     | 
    
         
             
            }
         
     | 
| 
       1379 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_mutable_locality_weighted_lb_config(envoy_config_cluster_v3_Cluster_CommonLbConfig  
     | 
| 
      
 2262 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_mutable_locality_weighted_lb_config(envoy_config_cluster_v3_Cluster_CommonLbConfig* msg, upb_Arena* arena) {
         
     | 
| 
       1380 
2263 
     | 
    
         
             
              struct envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig* sub = (struct envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig*)envoy_config_cluster_v3_Cluster_CommonLbConfig_locality_weighted_lb_config(msg);
         
     | 
| 
       1381 
2264 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1382 
     | 
    
         
            -
                sub = (struct envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig*) 
     | 
| 
      
 2265 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig_msginit, arena);
         
     | 
| 
       1383 
2266 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1384 
2267 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_CommonLbConfig_set_locality_weighted_lb_config(msg, sub);
         
     | 
| 
       1385 
2268 
     | 
    
         
             
              }
         
     | 
| 
         @@ -1387,71 +2270,114 @@ UPB_INLINE struct envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeighte 
     | 
|
| 
       1387 
2270 
     | 
    
         
             
            }
         
     | 
| 
       1388 
2271 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_set_update_merge_window(envoy_config_cluster_v3_Cluster_CommonLbConfig *msg, struct google_protobuf_Duration* value) {
         
     | 
| 
       1389 
2272 
     | 
    
         
             
              _upb_sethas(msg, 2);
         
     | 
| 
       1390 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 2273 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(16, 24), struct google_protobuf_Duration*) = value;
         
     | 
| 
       1391 
2274 
     | 
    
         
             
            }
         
     | 
| 
       1392 
     | 
    
         
            -
            UPB_INLINE struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_CommonLbConfig_mutable_update_merge_window(envoy_config_cluster_v3_Cluster_CommonLbConfig  
     | 
| 
      
 2275 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_CommonLbConfig_mutable_update_merge_window(envoy_config_cluster_v3_Cluster_CommonLbConfig* msg, upb_Arena* arena) {
         
     | 
| 
       1393 
2276 
     | 
    
         
             
              struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_cluster_v3_Cluster_CommonLbConfig_update_merge_window(msg);
         
     | 
| 
       1394 
2277 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1395 
     | 
    
         
            -
                sub = (struct google_protobuf_Duration*) 
     | 
| 
      
 2278 
     | 
    
         
            +
                sub = (struct google_protobuf_Duration*)_upb_Message_New(&google_protobuf_Duration_msginit, arena);
         
     | 
| 
       1396 
2279 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1397 
2280 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_CommonLbConfig_set_update_merge_window(msg, sub);
         
     | 
| 
       1398 
2281 
     | 
    
         
             
              }
         
     | 
| 
       1399 
2282 
     | 
    
         
             
              return sub;
         
     | 
| 
       1400 
2283 
     | 
    
         
             
            }
         
     | 
| 
       1401 
2284 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_set_ignore_new_hosts_until_first_hc(envoy_config_cluster_v3_Cluster_CommonLbConfig *msg, bool value) {
         
     | 
| 
       1402 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 2285 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(8, 8), bool) = value;
         
     | 
| 
       1403 
2286 
     | 
    
         
             
            }
         
     | 
| 
       1404 
2287 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_set_close_connections_on_host_set_change(envoy_config_cluster_v3_Cluster_CommonLbConfig *msg, bool value) {
         
     | 
| 
       1405 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 2288 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(9, 9), bool) = value;
         
     | 
| 
       1406 
2289 
     | 
    
         
             
            }
         
     | 
| 
       1407 
2290 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_set_consistent_hashing_lb_config(envoy_config_cluster_v3_Cluster_CommonLbConfig *msg, envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig* value) {
         
     | 
| 
       1408 
2291 
     | 
    
         
             
              _upb_sethas(msg, 3);
         
     | 
| 
       1409 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 2292 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(20, 32), envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig*) = value;
         
     | 
| 
       1410 
2293 
     | 
    
         
             
            }
         
     | 
| 
       1411 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_mutable_consistent_hashing_lb_config(envoy_config_cluster_v3_Cluster_CommonLbConfig  
     | 
| 
      
 2294 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_mutable_consistent_hashing_lb_config(envoy_config_cluster_v3_Cluster_CommonLbConfig* msg, upb_Arena* arena) {
         
     | 
| 
       1412 
2295 
     | 
    
         
             
              struct envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig* sub = (struct envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig*)envoy_config_cluster_v3_Cluster_CommonLbConfig_consistent_hashing_lb_config(msg);
         
     | 
| 
       1413 
2296 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1414 
     | 
    
         
            -
                sub = (struct envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig*) 
     | 
| 
      
 2297 
     | 
    
         
            +
                sub = (struct envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_msginit, arena);
         
     | 
| 
       1415 
2298 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1416 
2299 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_CommonLbConfig_set_consistent_hashing_lb_config(msg, sub);
         
     | 
| 
       1417 
2300 
     | 
    
         
             
              }
         
     | 
| 
       1418 
2301 
     | 
    
         
             
              return sub;
         
     | 
| 
       1419 
2302 
     | 
    
         
             
            }
         
     | 
| 
      
 2303 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_set_override_host_status(envoy_config_cluster_v3_Cluster_CommonLbConfig *msg, struct envoy_config_core_v3_HealthStatusSet* value) {
         
     | 
| 
      
 2304 
     | 
    
         
            +
              _upb_sethas(msg, 4);
         
     | 
| 
      
 2305 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(24, 40), struct envoy_config_core_v3_HealthStatusSet*) = value;
         
     | 
| 
      
 2306 
     | 
    
         
            +
            }
         
     | 
| 
      
 2307 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_HealthStatusSet* envoy_config_cluster_v3_Cluster_CommonLbConfig_mutable_override_host_status(envoy_config_cluster_v3_Cluster_CommonLbConfig* msg, upb_Arena* arena) {
         
     | 
| 
      
 2308 
     | 
    
         
            +
              struct envoy_config_core_v3_HealthStatusSet* sub = (struct envoy_config_core_v3_HealthStatusSet*)envoy_config_cluster_v3_Cluster_CommonLbConfig_override_host_status(msg);
         
     | 
| 
      
 2309 
     | 
    
         
            +
              if (sub == NULL) {
         
     | 
| 
      
 2310 
     | 
    
         
            +
                sub = (struct envoy_config_core_v3_HealthStatusSet*)_upb_Message_New(&envoy_config_core_v3_HealthStatusSet_msginit, arena);
         
     | 
| 
      
 2311 
     | 
    
         
            +
                if (!sub) return NULL;
         
     | 
| 
      
 2312 
     | 
    
         
            +
                envoy_config_cluster_v3_Cluster_CommonLbConfig_set_override_host_status(msg, sub);
         
     | 
| 
      
 2313 
     | 
    
         
            +
              }
         
     | 
| 
      
 2314 
     | 
    
         
            +
              return sub;
         
     | 
| 
      
 2315 
     | 
    
         
            +
            }
         
     | 
| 
       1420 
2316 
     | 
    
         | 
| 
       1421 
2317 
     | 
    
         
             
            /* envoy.config.cluster.v3.Cluster.CommonLbConfig.ZoneAwareLbConfig */
         
     | 
| 
       1422 
2318 
     | 
    
         | 
| 
       1423 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig  
     | 
| 
       1424 
     | 
    
         
            -
              return (envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig 
     | 
| 
      
 2319 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_new(upb_Arena* arena) {
         
     | 
| 
      
 2320 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_msginit, arena);
         
     | 
| 
       1425 
2321 
     | 
    
         
             
            }
         
     | 
| 
       1426 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig  
     | 
| 
       1427 
     | 
    
         
            -
             
     | 
| 
       1428 
     | 
    
         
            -
               
     | 
| 
       1429 
     | 
    
         
            -
               
     | 
| 
      
 2322 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 2323 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* ret = envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_new(arena);
         
     | 
| 
      
 2324 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2325 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2326 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2327 
     | 
    
         
            +
              }
         
     | 
| 
      
 2328 
     | 
    
         
            +
              return ret;
         
     | 
| 
      
 2329 
     | 
    
         
            +
            }
         
     | 
| 
      
 2330 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 2331 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 2332 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 2333 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* ret = envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_new(arena);
         
     | 
| 
      
 2334 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2335 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_msginit, extreg, options, arena) !=
         
     | 
| 
      
 2336 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2337 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2338 
     | 
    
         
            +
              }
         
     | 
| 
      
 2339 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1430 
2340 
     | 
    
         
             
            }
         
     | 
| 
       1431 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1432 
     | 
    
         
            -
             
     | 
| 
       1433 
     | 
    
         
            -
              envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig *ret = envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_new(arena);
         
     | 
| 
       1434 
     | 
    
         
            -
              return (ret && _upb_decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_msginit, arena, options))
         
     | 
| 
       1435 
     | 
    
         
            -
                  ? ret : NULL;
         
     | 
| 
      
 2341 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_serialize(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2342 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_msginit, 0, arena, len);
         
     | 
| 
       1436 
2343 
     | 
    
         
             
            }
         
     | 
| 
       1437 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       1438 
     | 
    
         
            -
             
     | 
| 
      
 2344 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_serialize_ex(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* msg, int options,
         
     | 
| 
      
 2345 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2346 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_msginit, options, arena, len);
         
     | 
| 
      
 2347 
     | 
    
         
            +
            }
         
     | 
| 
      
 2348 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_has_routing_enabled(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* msg) {
         
     | 
| 
      
 2349 
     | 
    
         
            +
              return _upb_hasbit(msg, 1);
         
     | 
| 
      
 2350 
     | 
    
         
            +
            }
         
     | 
| 
      
 2351 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_clear_routing_enabled(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* msg) {
         
     | 
| 
      
 2352 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const upb_Message*) = NULL;
         
     | 
| 
      
 2353 
     | 
    
         
            +
            }
         
     | 
| 
      
 2354 
     | 
    
         
            +
            UPB_INLINE const struct envoy_type_v3_Percent* envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_routing_enabled(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* msg) {
         
     | 
| 
      
 2355 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct envoy_type_v3_Percent*);
         
     | 
| 
      
 2356 
     | 
    
         
            +
            }
         
     | 
| 
      
 2357 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_has_min_cluster_size(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* msg) {
         
     | 
| 
      
 2358 
     | 
    
         
            +
              return _upb_hasbit(msg, 2);
         
     | 
| 
      
 2359 
     | 
    
         
            +
            }
         
     | 
| 
      
 2360 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_clear_min_cluster_size(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* msg) {
         
     | 
| 
      
 2361 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const upb_Message*) = NULL;
         
     | 
| 
      
 2362 
     | 
    
         
            +
            }
         
     | 
| 
      
 2363 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_UInt64Value* envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_min_cluster_size(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* msg) {
         
     | 
| 
      
 2364 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const struct google_protobuf_UInt64Value*);
         
     | 
| 
      
 2365 
     | 
    
         
            +
            }
         
     | 
| 
      
 2366 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_clear_fail_traffic_on_panic(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* msg) {
         
     | 
| 
      
 2367 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = 0;
         
     | 
| 
      
 2368 
     | 
    
         
            +
            }
         
     | 
| 
      
 2369 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_fail_traffic_on_panic(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* msg) {
         
     | 
| 
      
 2370 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool);
         
     | 
| 
       1439 
2371 
     | 
    
         
             
            }
         
     | 
| 
       1440 
     | 
    
         
            -
             
     | 
| 
       1441 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_has_routing_enabled(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig *msg) { return _upb_hasbit(msg, 1); }
         
     | 
| 
       1442 
     | 
    
         
            -
            UPB_INLINE const struct envoy_type_v3_Percent* envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_routing_enabled(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct envoy_type_v3_Percent*); }
         
     | 
| 
       1443 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_has_min_cluster_size(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig *msg) { return _upb_hasbit(msg, 2); }
         
     | 
| 
       1444 
     | 
    
         
            -
            UPB_INLINE const struct google_protobuf_UInt64Value* envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_min_cluster_size(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const struct google_protobuf_UInt64Value*); }
         
     | 
| 
       1445 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_fail_traffic_on_panic(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool); }
         
     | 
| 
       1446 
2372 
     | 
    
         | 
| 
       1447 
2373 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_set_routing_enabled(envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig *msg, struct envoy_type_v3_Percent* value) {
         
     | 
| 
       1448 
2374 
     | 
    
         
             
              _upb_sethas(msg, 1);
         
     | 
| 
       1449 
2375 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct envoy_type_v3_Percent*) = value;
         
     | 
| 
       1450 
2376 
     | 
    
         
             
            }
         
     | 
| 
       1451 
     | 
    
         
            -
            UPB_INLINE struct envoy_type_v3_Percent* envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_mutable_routing_enabled(envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig  
     | 
| 
      
 2377 
     | 
    
         
            +
            UPB_INLINE struct envoy_type_v3_Percent* envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_mutable_routing_enabled(envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* msg, upb_Arena* arena) {
         
     | 
| 
       1452 
2378 
     | 
    
         
             
              struct envoy_type_v3_Percent* sub = (struct envoy_type_v3_Percent*)envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_routing_enabled(msg);
         
     | 
| 
       1453 
2379 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1454 
     | 
    
         
            -
                sub = (struct envoy_type_v3_Percent*) 
     | 
| 
      
 2380 
     | 
    
         
            +
                sub = (struct envoy_type_v3_Percent*)_upb_Message_New(&envoy_type_v3_Percent_msginit, arena);
         
     | 
| 
       1455 
2381 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1456 
2382 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_set_routing_enabled(msg, sub);
         
     | 
| 
       1457 
2383 
     | 
    
         
             
              }
         
     | 
| 
         @@ -1461,10 +2387,10 @@ UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig 
     | 
|
| 
       1461 
2387 
     | 
    
         
             
              _upb_sethas(msg, 2);
         
     | 
| 
       1462 
2388 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(8, 16), struct google_protobuf_UInt64Value*) = value;
         
     | 
| 
       1463 
2389 
     | 
    
         
             
            }
         
     | 
| 
       1464 
     | 
    
         
            -
            UPB_INLINE struct google_protobuf_UInt64Value* envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_mutable_min_cluster_size(envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig  
     | 
| 
      
 2390 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_UInt64Value* envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_mutable_min_cluster_size(envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig* msg, upb_Arena* arena) {
         
     | 
| 
       1465 
2391 
     | 
    
         
             
              struct google_protobuf_UInt64Value* sub = (struct google_protobuf_UInt64Value*)envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_min_cluster_size(msg);
         
     | 
| 
       1466 
2392 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1467 
     | 
    
         
            -
                sub = (struct google_protobuf_UInt64Value*) 
     | 
| 
      
 2393 
     | 
    
         
            +
                sub = (struct google_protobuf_UInt64Value*)_upb_Message_New(&google_protobuf_UInt64Value_msginit, arena);
         
     | 
| 
       1468 
2394 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1469 
2395 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig_set_min_cluster_size(msg, sub);
         
     | 
| 
       1470 
2396 
     | 
    
         
             
              }
         
     | 
| 
         @@ -1476,49 +2402,83 @@ UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_ZoneAwareLbConfig 
     | 
|
| 
       1476 
2402 
     | 
    
         | 
| 
       1477 
2403 
     | 
    
         
             
            /* envoy.config.cluster.v3.Cluster.CommonLbConfig.LocalityWeightedLbConfig */
         
     | 
| 
       1478 
2404 
     | 
    
         | 
| 
       1479 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig  
     | 
| 
       1480 
     | 
    
         
            -
              return (envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig 
     | 
| 
      
 2405 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig_new(upb_Arena* arena) {
         
     | 
| 
      
 2406 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig_msginit, arena);
         
     | 
| 
       1481 
2407 
     | 
    
         
             
            }
         
     | 
| 
       1482 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig  
     | 
| 
       1483 
     | 
    
         
            -
             
     | 
| 
       1484 
     | 
    
         
            -
               
     | 
| 
       1485 
     | 
    
         
            -
               
     | 
| 
      
 2408 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 2409 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig* ret = envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig_new(arena);
         
     | 
| 
      
 2410 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2411 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2412 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2413 
     | 
    
         
            +
              }
         
     | 
| 
      
 2414 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1486 
2415 
     | 
    
         
             
            }
         
     | 
| 
       1487 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig  
     | 
| 
       1488 
     | 
    
         
            -
                                        
     | 
| 
       1489 
     | 
    
         
            -
             
     | 
| 
       1490 
     | 
    
         
            -
               
     | 
| 
       1491 
     | 
    
         
            -
             
     | 
| 
      
 2416 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 2417 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 2418 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 2419 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig* ret = envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig_new(arena);
         
     | 
| 
      
 2420 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2421 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig_msginit, extreg, options, arena) !=
         
     | 
| 
      
 2422 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2423 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2424 
     | 
    
         
            +
              }
         
     | 
| 
      
 2425 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1492 
2426 
     | 
    
         
             
            }
         
     | 
| 
       1493 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       1494 
     | 
    
         
            -
              return  
     | 
| 
      
 2427 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig_serialize(const envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2428 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig_msginit, 0, arena, len);
         
     | 
| 
      
 2429 
     | 
    
         
            +
            }
         
     | 
| 
      
 2430 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig_serialize_ex(const envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig* msg, int options,
         
     | 
| 
      
 2431 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2432 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_CommonLbConfig_LocalityWeightedLbConfig_msginit, options, arena, len);
         
     | 
| 
       1495 
2433 
     | 
    
         
             
            }
         
     | 
| 
       1496 
     | 
    
         
            -
             
     | 
| 
       1497 
2434 
     | 
    
         | 
| 
       1498 
2435 
     | 
    
         | 
| 
       1499 
2436 
     | 
    
         
             
            /* envoy.config.cluster.v3.Cluster.CommonLbConfig.ConsistentHashingLbConfig */
         
     | 
| 
       1500 
2437 
     | 
    
         | 
| 
       1501 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig  
     | 
| 
       1502 
     | 
    
         
            -
              return (envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig 
     | 
| 
      
 2438 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_new(upb_Arena* arena) {
         
     | 
| 
      
 2439 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_msginit, arena);
         
     | 
| 
       1503 
2440 
     | 
    
         
             
            }
         
     | 
| 
       1504 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig  
     | 
| 
       1505 
     | 
    
         
            -
             
     | 
| 
       1506 
     | 
    
         
            -
               
     | 
| 
       1507 
     | 
    
         
            -
               
     | 
| 
      
 2441 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 2442 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig* ret = envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_new(arena);
         
     | 
| 
      
 2443 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2444 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2445 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2446 
     | 
    
         
            +
              }
         
     | 
| 
      
 2447 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1508 
2448 
     | 
    
         
             
            }
         
     | 
| 
       1509 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig  
     | 
| 
       1510 
     | 
    
         
            -
                                        
     | 
| 
       1511 
     | 
    
         
            -
             
     | 
| 
       1512 
     | 
    
         
            -
               
     | 
| 
       1513 
     | 
    
         
            -
             
     | 
| 
      
 2449 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig* envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 2450 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 2451 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 2452 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig* ret = envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_new(arena);
         
     | 
| 
      
 2453 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2454 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_msginit, extreg, options, arena) !=
         
     | 
| 
      
 2455 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2456 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2457 
     | 
    
         
            +
              }
         
     | 
| 
      
 2458 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1514 
2459 
     | 
    
         
             
            }
         
     | 
| 
       1515 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       1516 
     | 
    
         
            -
              return  
     | 
| 
      
 2460 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_serialize(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2461 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_msginit, 0, arena, len);
         
     | 
| 
      
 2462 
     | 
    
         
            +
            }
         
     | 
| 
      
 2463 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_serialize_ex(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig* msg, int options,
         
     | 
| 
      
 2464 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2465 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_msginit, options, arena, len);
         
     | 
| 
      
 2466 
     | 
    
         
            +
            }
         
     | 
| 
      
 2467 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_clear_use_hostname_for_hashing(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig* msg) {
         
     | 
| 
      
 2468 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = 0;
         
     | 
| 
      
 2469 
     | 
    
         
            +
            }
         
     | 
| 
      
 2470 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_use_hostname_for_hashing(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig* msg) {
         
     | 
| 
      
 2471 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool);
         
     | 
| 
      
 2472 
     | 
    
         
            +
            }
         
     | 
| 
      
 2473 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_has_hash_balance_factor(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig* msg) {
         
     | 
| 
      
 2474 
     | 
    
         
            +
              return _upb_hasbit(msg, 1);
         
     | 
| 
      
 2475 
     | 
    
         
            +
            }
         
     | 
| 
      
 2476 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_clear_hash_balance_factor(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig* msg) {
         
     | 
| 
      
 2477 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const upb_Message*) = NULL;
         
     | 
| 
      
 2478 
     | 
    
         
            +
            }
         
     | 
| 
      
 2479 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_UInt32Value* envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_hash_balance_factor(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig* msg) {
         
     | 
| 
      
 2480 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_UInt32Value*);
         
     | 
| 
       1517 
2481 
     | 
    
         
             
            }
         
     | 
| 
       1518 
     | 
    
         
            -
             
     | 
| 
       1519 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_use_hostname_for_hashing(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool); }
         
     | 
| 
       1520 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_has_hash_balance_factor(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig *msg) { return _upb_hasbit(msg, 1); }
         
     | 
| 
       1521 
     | 
    
         
            -
            UPB_INLINE const struct google_protobuf_UInt32Value* envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_hash_balance_factor(const envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_UInt32Value*); }
         
     | 
| 
       1522 
2482 
     | 
    
         | 
| 
       1523 
2483 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_set_use_hostname_for_hashing(envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig *msg, bool value) {
         
     | 
| 
       1524 
2484 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = value;
         
     | 
| 
         @@ -1527,10 +2487,10 @@ UPB_INLINE void envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashing 
     | 
|
| 
       1527 
2487 
     | 
    
         
             
              _upb_sethas(msg, 1);
         
     | 
| 
       1528 
2488 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_UInt32Value*) = value;
         
     | 
| 
       1529 
2489 
     | 
    
         
             
            }
         
     | 
| 
       1530 
     | 
    
         
            -
            UPB_INLINE struct google_protobuf_UInt32Value* envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_mutable_hash_balance_factor(envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig  
     | 
| 
      
 2490 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_UInt32Value* envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_mutable_hash_balance_factor(envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig* msg, upb_Arena* arena) {
         
     | 
| 
       1531 
2491 
     | 
    
         
             
              struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_hash_balance_factor(msg);
         
     | 
| 
       1532 
2492 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1533 
     | 
    
         
            -
                sub = (struct google_protobuf_UInt32Value*) 
     | 
| 
      
 2493 
     | 
    
         
            +
                sub = (struct google_protobuf_UInt32Value*)_upb_Message_New(&google_protobuf_UInt32Value_msginit, arena);
         
     | 
| 
       1534 
2494 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1535 
2495 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_CommonLbConfig_ConsistentHashingLbConfig_set_hash_balance_factor(msg, sub);
         
     | 
| 
       1536 
2496 
     | 
    
         
             
              }
         
     | 
| 
         @@ -1539,37 +2499,62 @@ UPB_INLINE struct google_protobuf_UInt32Value* envoy_config_cluster_v3_Cluster_C 
     | 
|
| 
       1539 
2499 
     | 
    
         | 
| 
       1540 
2500 
     | 
    
         
             
            /* envoy.config.cluster.v3.Cluster.RefreshRate */
         
     | 
| 
       1541 
2501 
     | 
    
         | 
| 
       1542 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_RefreshRate  
     | 
| 
       1543 
     | 
    
         
            -
              return (envoy_config_cluster_v3_Cluster_RefreshRate 
     | 
| 
      
 2502 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_RefreshRate* envoy_config_cluster_v3_Cluster_RefreshRate_new(upb_Arena* arena) {
         
     | 
| 
      
 2503 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_RefreshRate*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_RefreshRate_msginit, arena);
         
     | 
| 
       1544 
2504 
     | 
    
         
             
            }
         
     | 
| 
       1545 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_RefreshRate  
     | 
| 
       1546 
     | 
    
         
            -
             
     | 
| 
       1547 
     | 
    
         
            -
               
     | 
| 
       1548 
     | 
    
         
            -
               
     | 
| 
      
 2505 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_RefreshRate* envoy_config_cluster_v3_Cluster_RefreshRate_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 2506 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_RefreshRate* ret = envoy_config_cluster_v3_Cluster_RefreshRate_new(arena);
         
     | 
| 
      
 2507 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2508 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_RefreshRate_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2509 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2510 
     | 
    
         
            +
              }
         
     | 
| 
      
 2511 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1549 
2512 
     | 
    
         
             
            }
         
     | 
| 
       1550 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_RefreshRate  
     | 
| 
       1551 
     | 
    
         
            -
                                        
     | 
| 
       1552 
     | 
    
         
            -
             
     | 
| 
       1553 
     | 
    
         
            -
               
     | 
| 
       1554 
     | 
    
         
            -
             
     | 
| 
      
 2513 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_RefreshRate* envoy_config_cluster_v3_Cluster_RefreshRate_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 2514 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 2515 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 2516 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_RefreshRate* ret = envoy_config_cluster_v3_Cluster_RefreshRate_new(arena);
         
     | 
| 
      
 2517 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2518 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_RefreshRate_msginit, extreg, options, arena) !=
         
     | 
| 
      
 2519 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2520 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2521 
     | 
    
         
            +
              }
         
     | 
| 
      
 2522 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1555 
2523 
     | 
    
         
             
            }
         
     | 
| 
       1556 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       1557 
     | 
    
         
            -
              return  
     | 
| 
      
 2524 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_RefreshRate_serialize(const envoy_config_cluster_v3_Cluster_RefreshRate* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2525 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_RefreshRate_msginit, 0, arena, len);
         
     | 
| 
      
 2526 
     | 
    
         
            +
            }
         
     | 
| 
      
 2527 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_RefreshRate_serialize_ex(const envoy_config_cluster_v3_Cluster_RefreshRate* msg, int options,
         
     | 
| 
      
 2528 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2529 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_RefreshRate_msginit, options, arena, len);
         
     | 
| 
      
 2530 
     | 
    
         
            +
            }
         
     | 
| 
      
 2531 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_RefreshRate_has_base_interval(const envoy_config_cluster_v3_Cluster_RefreshRate* msg) {
         
     | 
| 
      
 2532 
     | 
    
         
            +
              return _upb_hasbit(msg, 1);
         
     | 
| 
      
 2533 
     | 
    
         
            +
            }
         
     | 
| 
      
 2534 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_RefreshRate_clear_base_interval(const envoy_config_cluster_v3_Cluster_RefreshRate* msg) {
         
     | 
| 
      
 2535 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const upb_Message*) = NULL;
         
     | 
| 
      
 2536 
     | 
    
         
            +
            }
         
     | 
| 
      
 2537 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_RefreshRate_base_interval(const envoy_config_cluster_v3_Cluster_RefreshRate* msg) {
         
     | 
| 
      
 2538 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_Duration*);
         
     | 
| 
      
 2539 
     | 
    
         
            +
            }
         
     | 
| 
      
 2540 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_RefreshRate_has_max_interval(const envoy_config_cluster_v3_Cluster_RefreshRate* msg) {
         
     | 
| 
      
 2541 
     | 
    
         
            +
              return _upb_hasbit(msg, 2);
         
     | 
| 
      
 2542 
     | 
    
         
            +
            }
         
     | 
| 
      
 2543 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_RefreshRate_clear_max_interval(const envoy_config_cluster_v3_Cluster_RefreshRate* msg) {
         
     | 
| 
      
 2544 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const upb_Message*) = NULL;
         
     | 
| 
      
 2545 
     | 
    
         
            +
            }
         
     | 
| 
      
 2546 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_RefreshRate_max_interval(const envoy_config_cluster_v3_Cluster_RefreshRate* msg) {
         
     | 
| 
      
 2547 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const struct google_protobuf_Duration*);
         
     | 
| 
       1558 
2548 
     | 
    
         
             
            }
         
     | 
| 
       1559 
     | 
    
         
            -
             
     | 
| 
       1560 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_RefreshRate_has_base_interval(const envoy_config_cluster_v3_Cluster_RefreshRate *msg) { return _upb_hasbit(msg, 1); }
         
     | 
| 
       1561 
     | 
    
         
            -
            UPB_INLINE const struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_RefreshRate_base_interval(const envoy_config_cluster_v3_Cluster_RefreshRate *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_Duration*); }
         
     | 
| 
       1562 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_RefreshRate_has_max_interval(const envoy_config_cluster_v3_Cluster_RefreshRate *msg) { return _upb_hasbit(msg, 2); }
         
     | 
| 
       1563 
     | 
    
         
            -
            UPB_INLINE const struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_RefreshRate_max_interval(const envoy_config_cluster_v3_Cluster_RefreshRate *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const struct google_protobuf_Duration*); }
         
     | 
| 
       1564 
2549 
     | 
    
         | 
| 
       1565 
2550 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_RefreshRate_set_base_interval(envoy_config_cluster_v3_Cluster_RefreshRate *msg, struct google_protobuf_Duration* value) {
         
     | 
| 
       1566 
2551 
     | 
    
         
             
              _upb_sethas(msg, 1);
         
     | 
| 
       1567 
2552 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_Duration*) = value;
         
     | 
| 
       1568 
2553 
     | 
    
         
             
            }
         
     | 
| 
       1569 
     | 
    
         
            -
            UPB_INLINE struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_RefreshRate_mutable_base_interval(envoy_config_cluster_v3_Cluster_RefreshRate  
     | 
| 
      
 2554 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_RefreshRate_mutable_base_interval(envoy_config_cluster_v3_Cluster_RefreshRate* msg, upb_Arena* arena) {
         
     | 
| 
       1570 
2555 
     | 
    
         
             
              struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_cluster_v3_Cluster_RefreshRate_base_interval(msg);
         
     | 
| 
       1571 
2556 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1572 
     | 
    
         
            -
                sub = (struct google_protobuf_Duration*) 
     | 
| 
      
 2557 
     | 
    
         
            +
                sub = (struct google_protobuf_Duration*)_upb_Message_New(&google_protobuf_Duration_msginit, arena);
         
     | 
| 
       1573 
2558 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1574 
2559 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_RefreshRate_set_base_interval(msg, sub);
         
     | 
| 
       1575 
2560 
     | 
    
         
             
              }
         
     | 
| 
         @@ -1579,10 +2564,10 @@ UPB_INLINE void envoy_config_cluster_v3_Cluster_RefreshRate_set_max_interval(env 
     | 
|
| 
       1579 
2564 
     | 
    
         
             
              _upb_sethas(msg, 2);
         
     | 
| 
       1580 
2565 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(8, 16), struct google_protobuf_Duration*) = value;
         
     | 
| 
       1581 
2566 
     | 
    
         
             
            }
         
     | 
| 
       1582 
     | 
    
         
            -
            UPB_INLINE struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_RefreshRate_mutable_max_interval(envoy_config_cluster_v3_Cluster_RefreshRate  
     | 
| 
      
 2567 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_RefreshRate_mutable_max_interval(envoy_config_cluster_v3_Cluster_RefreshRate* msg, upb_Arena* arena) {
         
     | 
| 
       1583 
2568 
     | 
    
         
             
              struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_config_cluster_v3_Cluster_RefreshRate_max_interval(msg);
         
     | 
| 
       1584 
2569 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1585 
     | 
    
         
            -
                sub = (struct google_protobuf_Duration*) 
     | 
| 
      
 2570 
     | 
    
         
            +
                sub = (struct google_protobuf_Duration*)_upb_Message_New(&google_protobuf_Duration_msginit, arena);
         
     | 
| 
       1586 
2571 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1587 
2572 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_RefreshRate_set_max_interval(msg, sub);
         
     | 
| 
       1588 
2573 
     | 
    
         
             
              }
         
     | 
| 
         @@ -1591,37 +2576,62 @@ UPB_INLINE struct google_protobuf_Duration* envoy_config_cluster_v3_Cluster_Refr 
     | 
|
| 
       1591 
2576 
     | 
    
         | 
| 
       1592 
2577 
     | 
    
         
             
            /* envoy.config.cluster.v3.Cluster.PreconnectPolicy */
         
     | 
| 
       1593 
2578 
     | 
    
         | 
| 
       1594 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_PreconnectPolicy  
     | 
| 
       1595 
     | 
    
         
            -
              return (envoy_config_cluster_v3_Cluster_PreconnectPolicy 
     | 
| 
      
 2579 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_PreconnectPolicy* envoy_config_cluster_v3_Cluster_PreconnectPolicy_new(upb_Arena* arena) {
         
     | 
| 
      
 2580 
     | 
    
         
            +
              return (envoy_config_cluster_v3_Cluster_PreconnectPolicy*)_upb_Message_New(&envoy_config_cluster_v3_Cluster_PreconnectPolicy_msginit, arena);
         
     | 
| 
       1596 
2581 
     | 
    
         
             
            }
         
     | 
| 
       1597 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_PreconnectPolicy  
     | 
| 
       1598 
     | 
    
         
            -
             
     | 
| 
       1599 
     | 
    
         
            -
               
     | 
| 
       1600 
     | 
    
         
            -
               
     | 
| 
      
 2582 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_PreconnectPolicy* envoy_config_cluster_v3_Cluster_PreconnectPolicy_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 2583 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_PreconnectPolicy* ret = envoy_config_cluster_v3_Cluster_PreconnectPolicy_new(arena);
         
     | 
| 
      
 2584 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2585 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_PreconnectPolicy_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2586 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2587 
     | 
    
         
            +
              }
         
     | 
| 
      
 2588 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1601 
2589 
     | 
    
         
             
            }
         
     | 
| 
       1602 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_Cluster_PreconnectPolicy  
     | 
| 
       1603 
     | 
    
         
            -
                                        
     | 
| 
       1604 
     | 
    
         
            -
             
     | 
| 
       1605 
     | 
    
         
            -
               
     | 
| 
       1606 
     | 
    
         
            -
             
     | 
| 
      
 2590 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_Cluster_PreconnectPolicy* envoy_config_cluster_v3_Cluster_PreconnectPolicy_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 2591 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 2592 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 2593 
     | 
    
         
            +
              envoy_config_cluster_v3_Cluster_PreconnectPolicy* ret = envoy_config_cluster_v3_Cluster_PreconnectPolicy_new(arena);
         
     | 
| 
      
 2594 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2595 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_Cluster_PreconnectPolicy_msginit, extreg, options, arena) !=
         
     | 
| 
      
 2596 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2597 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2598 
     | 
    
         
            +
              }
         
     | 
| 
      
 2599 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1607 
2600 
     | 
    
         
             
            }
         
     | 
| 
       1608 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       1609 
     | 
    
         
            -
              return  
     | 
| 
      
 2601 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_PreconnectPolicy_serialize(const envoy_config_cluster_v3_Cluster_PreconnectPolicy* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2602 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_PreconnectPolicy_msginit, 0, arena, len);
         
     | 
| 
      
 2603 
     | 
    
         
            +
            }
         
     | 
| 
      
 2604 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_Cluster_PreconnectPolicy_serialize_ex(const envoy_config_cluster_v3_Cluster_PreconnectPolicy* msg, int options,
         
     | 
| 
      
 2605 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2606 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_Cluster_PreconnectPolicy_msginit, options, arena, len);
         
     | 
| 
      
 2607 
     | 
    
         
            +
            }
         
     | 
| 
      
 2608 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_PreconnectPolicy_has_per_upstream_preconnect_ratio(const envoy_config_cluster_v3_Cluster_PreconnectPolicy* msg) {
         
     | 
| 
      
 2609 
     | 
    
         
            +
              return _upb_hasbit(msg, 1);
         
     | 
| 
      
 2610 
     | 
    
         
            +
            }
         
     | 
| 
      
 2611 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_PreconnectPolicy_clear_per_upstream_preconnect_ratio(const envoy_config_cluster_v3_Cluster_PreconnectPolicy* msg) {
         
     | 
| 
      
 2612 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const upb_Message*) = NULL;
         
     | 
| 
      
 2613 
     | 
    
         
            +
            }
         
     | 
| 
      
 2614 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_DoubleValue* envoy_config_cluster_v3_Cluster_PreconnectPolicy_per_upstream_preconnect_ratio(const envoy_config_cluster_v3_Cluster_PreconnectPolicy* msg) {
         
     | 
| 
      
 2615 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_DoubleValue*);
         
     | 
| 
      
 2616 
     | 
    
         
            +
            }
         
     | 
| 
      
 2617 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_PreconnectPolicy_has_predictive_preconnect_ratio(const envoy_config_cluster_v3_Cluster_PreconnectPolicy* msg) {
         
     | 
| 
      
 2618 
     | 
    
         
            +
              return _upb_hasbit(msg, 2);
         
     | 
| 
      
 2619 
     | 
    
         
            +
            }
         
     | 
| 
      
 2620 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_Cluster_PreconnectPolicy_clear_predictive_preconnect_ratio(const envoy_config_cluster_v3_Cluster_PreconnectPolicy* msg) {
         
     | 
| 
      
 2621 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const upb_Message*) = NULL;
         
     | 
| 
      
 2622 
     | 
    
         
            +
            }
         
     | 
| 
      
 2623 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_DoubleValue* envoy_config_cluster_v3_Cluster_PreconnectPolicy_predictive_preconnect_ratio(const envoy_config_cluster_v3_Cluster_PreconnectPolicy* msg) {
         
     | 
| 
      
 2624 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const struct google_protobuf_DoubleValue*);
         
     | 
| 
       1610 
2625 
     | 
    
         
             
            }
         
     | 
| 
       1611 
     | 
    
         
            -
             
     | 
| 
       1612 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_PreconnectPolicy_has_per_upstream_preconnect_ratio(const envoy_config_cluster_v3_Cluster_PreconnectPolicy *msg) { return _upb_hasbit(msg, 1); }
         
     | 
| 
       1613 
     | 
    
         
            -
            UPB_INLINE const struct google_protobuf_DoubleValue* envoy_config_cluster_v3_Cluster_PreconnectPolicy_per_upstream_preconnect_ratio(const envoy_config_cluster_v3_Cluster_PreconnectPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_DoubleValue*); }
         
     | 
| 
       1614 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_PreconnectPolicy_has_predictive_preconnect_ratio(const envoy_config_cluster_v3_Cluster_PreconnectPolicy *msg) { return _upb_hasbit(msg, 2); }
         
     | 
| 
       1615 
     | 
    
         
            -
            UPB_INLINE const struct google_protobuf_DoubleValue* envoy_config_cluster_v3_Cluster_PreconnectPolicy_predictive_preconnect_ratio(const envoy_config_cluster_v3_Cluster_PreconnectPolicy *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const struct google_protobuf_DoubleValue*); }
         
     | 
| 
       1616 
2626 
     | 
    
         | 
| 
       1617 
2627 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_Cluster_PreconnectPolicy_set_per_upstream_preconnect_ratio(envoy_config_cluster_v3_Cluster_PreconnectPolicy *msg, struct google_protobuf_DoubleValue* value) {
         
     | 
| 
       1618 
2628 
     | 
    
         
             
              _upb_sethas(msg, 1);
         
     | 
| 
       1619 
2629 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_DoubleValue*) = value;
         
     | 
| 
       1620 
2630 
     | 
    
         
             
            }
         
     | 
| 
       1621 
     | 
    
         
            -
            UPB_INLINE struct google_protobuf_DoubleValue* envoy_config_cluster_v3_Cluster_PreconnectPolicy_mutable_per_upstream_preconnect_ratio(envoy_config_cluster_v3_Cluster_PreconnectPolicy  
     | 
| 
      
 2631 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_DoubleValue* envoy_config_cluster_v3_Cluster_PreconnectPolicy_mutable_per_upstream_preconnect_ratio(envoy_config_cluster_v3_Cluster_PreconnectPolicy* msg, upb_Arena* arena) {
         
     | 
| 
       1622 
2632 
     | 
    
         
             
              struct google_protobuf_DoubleValue* sub = (struct google_protobuf_DoubleValue*)envoy_config_cluster_v3_Cluster_PreconnectPolicy_per_upstream_preconnect_ratio(msg);
         
     | 
| 
       1623 
2633 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1624 
     | 
    
         
            -
                sub = (struct google_protobuf_DoubleValue*) 
     | 
| 
      
 2634 
     | 
    
         
            +
                sub = (struct google_protobuf_DoubleValue*)_upb_Message_New(&google_protobuf_DoubleValue_msginit, arena);
         
     | 
| 
       1625 
2635 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1626 
2636 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_PreconnectPolicy_set_per_upstream_preconnect_ratio(msg, sub);
         
     | 
| 
       1627 
2637 
     | 
    
         
             
              }
         
     | 
| 
         @@ -1631,10 +2641,10 @@ UPB_INLINE void envoy_config_cluster_v3_Cluster_PreconnectPolicy_set_predictive_ 
     | 
|
| 
       1631 
2641 
     | 
    
         
             
              _upb_sethas(msg, 2);
         
     | 
| 
       1632 
2642 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(8, 16), struct google_protobuf_DoubleValue*) = value;
         
     | 
| 
       1633 
2643 
     | 
    
         
             
            }
         
     | 
| 
       1634 
     | 
    
         
            -
            UPB_INLINE struct google_protobuf_DoubleValue* envoy_config_cluster_v3_Cluster_PreconnectPolicy_mutable_predictive_preconnect_ratio(envoy_config_cluster_v3_Cluster_PreconnectPolicy  
     | 
| 
      
 2644 
     | 
    
         
            +
            UPB_INLINE struct google_protobuf_DoubleValue* envoy_config_cluster_v3_Cluster_PreconnectPolicy_mutable_predictive_preconnect_ratio(envoy_config_cluster_v3_Cluster_PreconnectPolicy* msg, upb_Arena* arena) {
         
     | 
| 
       1635 
2645 
     | 
    
         
             
              struct google_protobuf_DoubleValue* sub = (struct google_protobuf_DoubleValue*)envoy_config_cluster_v3_Cluster_PreconnectPolicy_predictive_preconnect_ratio(msg);
         
     | 
| 
       1636 
2646 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1637 
     | 
    
         
            -
                sub = (struct google_protobuf_DoubleValue*) 
     | 
| 
      
 2647 
     | 
    
         
            +
                sub = (struct google_protobuf_DoubleValue*)_upb_Message_New(&google_protobuf_DoubleValue_msginit, arena);
         
     | 
| 
       1638 
2648 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1639 
2649 
     | 
    
         
             
                envoy_config_cluster_v3_Cluster_PreconnectPolicy_set_predictive_preconnect_ratio(msg, sub);
         
     | 
| 
       1640 
2650 
     | 
    
         
             
              }
         
     | 
| 
         @@ -1643,13 +2653,15 @@ UPB_INLINE struct google_protobuf_DoubleValue* envoy_config_cluster_v3_Cluster_P 
     | 
|
| 
       1643 
2653 
     | 
    
         | 
| 
       1644 
2654 
     | 
    
         
             
            /* envoy.config.cluster.v3.Cluster.TypedExtensionProtocolOptionsEntry */
         
     | 
| 
       1645 
2655 
     | 
    
         | 
| 
       1646 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1647 
     | 
    
         
            -
               
     | 
| 
      
 2656 
     | 
    
         
            +
            UPB_INLINE upb_StringView envoy_config_cluster_v3_Cluster_TypedExtensionProtocolOptionsEntry_key(const envoy_config_cluster_v3_Cluster_TypedExtensionProtocolOptionsEntry* msg) {
         
     | 
| 
      
 2657 
     | 
    
         
            +
              upb_StringView ret;
         
     | 
| 
       1648 
2658 
     | 
    
         
             
              _upb_msg_map_key(msg, &ret, 0);
         
     | 
| 
       1649 
2659 
     | 
    
         
             
              return ret;
         
     | 
| 
       1650 
2660 
     | 
    
         
             
            }
         
     | 
| 
       1651 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_TypedExtensionProtocolOptionsEntry_has_value(const envoy_config_cluster_v3_Cluster_TypedExtensionProtocolOptionsEntry  
     | 
| 
       1652 
     | 
    
         
            -
             
     | 
| 
      
 2661 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_Cluster_TypedExtensionProtocolOptionsEntry_has_value(const envoy_config_cluster_v3_Cluster_TypedExtensionProtocolOptionsEntry* msg) {
         
     | 
| 
      
 2662 
     | 
    
         
            +
              return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16));
         
     | 
| 
      
 2663 
     | 
    
         
            +
            }
         
     | 
| 
      
 2664 
     | 
    
         
            +
            UPB_INLINE const struct google_protobuf_Any* envoy_config_cluster_v3_Cluster_TypedExtensionProtocolOptionsEntry_value(const envoy_config_cluster_v3_Cluster_TypedExtensionProtocolOptionsEntry* msg) {
         
     | 
| 
       1653 
2665 
     | 
    
         
             
              struct google_protobuf_Any* ret;
         
     | 
| 
       1654 
2666 
     | 
    
         
             
              _upb_msg_map_value(msg, &ret, sizeof(ret));
         
     | 
| 
       1655 
2667 
     | 
    
         
             
              return ret;
         
     | 
| 
         @@ -1661,113 +2673,162 @@ UPB_INLINE void envoy_config_cluster_v3_Cluster_TypedExtensionProtocolOptionsEnt 
     | 
|
| 
       1661 
2673 
     | 
    
         | 
| 
       1662 
2674 
     | 
    
         
             
            /* envoy.config.cluster.v3.LoadBalancingPolicy */
         
     | 
| 
       1663 
2675 
     | 
    
         | 
| 
       1664 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_LoadBalancingPolicy  
     | 
| 
       1665 
     | 
    
         
            -
              return (envoy_config_cluster_v3_LoadBalancingPolicy 
     | 
| 
      
 2676 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_LoadBalancingPolicy* envoy_config_cluster_v3_LoadBalancingPolicy_new(upb_Arena* arena) {
         
     | 
| 
      
 2677 
     | 
    
         
            +
              return (envoy_config_cluster_v3_LoadBalancingPolicy*)_upb_Message_New(&envoy_config_cluster_v3_LoadBalancingPolicy_msginit, arena);
         
     | 
| 
      
 2678 
     | 
    
         
            +
            }
         
     | 
| 
      
 2679 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_LoadBalancingPolicy* envoy_config_cluster_v3_LoadBalancingPolicy_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 2680 
     | 
    
         
            +
              envoy_config_cluster_v3_LoadBalancingPolicy* ret = envoy_config_cluster_v3_LoadBalancingPolicy_new(arena);
         
     | 
| 
      
 2681 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2682 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_LoadBalancingPolicy_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2683 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2684 
     | 
    
         
            +
              }
         
     | 
| 
      
 2685 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1666 
2686 
     | 
    
         
             
            }
         
     | 
| 
       1667 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_LoadBalancingPolicy  
     | 
| 
       1668 
     | 
    
         
            -
             
     | 
| 
       1669 
     | 
    
         
            -
             
     | 
| 
       1670 
     | 
    
         
            -
               
     | 
| 
      
 2687 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_LoadBalancingPolicy* envoy_config_cluster_v3_LoadBalancingPolicy_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 2688 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 2689 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 2690 
     | 
    
         
            +
              envoy_config_cluster_v3_LoadBalancingPolicy* ret = envoy_config_cluster_v3_LoadBalancingPolicy_new(arena);
         
     | 
| 
      
 2691 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2692 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_LoadBalancingPolicy_msginit, extreg, options, arena) !=
         
     | 
| 
      
 2693 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2694 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2695 
     | 
    
         
            +
              }
         
     | 
| 
      
 2696 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1671 
2697 
     | 
    
         
             
            }
         
     | 
| 
       1672 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1673 
     | 
    
         
            -
             
     | 
| 
       1674 
     | 
    
         
            -
              envoy_config_cluster_v3_LoadBalancingPolicy *ret = envoy_config_cluster_v3_LoadBalancingPolicy_new(arena);
         
     | 
| 
       1675 
     | 
    
         
            -
              return (ret && _upb_decode(buf, size, ret, &envoy_config_cluster_v3_LoadBalancingPolicy_msginit, arena, options))
         
     | 
| 
       1676 
     | 
    
         
            -
                  ? ret : NULL;
         
     | 
| 
      
 2698 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_LoadBalancingPolicy_serialize(const envoy_config_cluster_v3_LoadBalancingPolicy* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2699 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_LoadBalancingPolicy_msginit, 0, arena, len);
         
     | 
| 
       1677 
2700 
     | 
    
         
             
            }
         
     | 
| 
       1678 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       1679 
     | 
    
         
            -
             
     | 
| 
      
 2701 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_LoadBalancingPolicy_serialize_ex(const envoy_config_cluster_v3_LoadBalancingPolicy* msg, int options,
         
     | 
| 
      
 2702 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2703 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_LoadBalancingPolicy_msginit, options, arena, len);
         
     | 
| 
      
 2704 
     | 
    
         
            +
            }
         
     | 
| 
      
 2705 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_LoadBalancingPolicy_has_policies(const envoy_config_cluster_v3_LoadBalancingPolicy* msg) {
         
     | 
| 
      
 2706 
     | 
    
         
            +
              return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0));
         
     | 
| 
      
 2707 
     | 
    
         
            +
            }
         
     | 
| 
      
 2708 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_LoadBalancingPolicy_clear_policies(const envoy_config_cluster_v3_LoadBalancingPolicy* msg) {
         
     | 
| 
      
 2709 
     | 
    
         
            +
              _upb_array_detach(msg, UPB_SIZE(0, 0));
         
     | 
| 
      
 2710 
     | 
    
         
            +
            }
         
     | 
| 
      
 2711 
     | 
    
         
            +
            UPB_INLINE const envoy_config_cluster_v3_LoadBalancingPolicy_Policy* const* envoy_config_cluster_v3_LoadBalancingPolicy_policies(const envoy_config_cluster_v3_LoadBalancingPolicy* msg, size_t* len) {
         
     | 
| 
      
 2712 
     | 
    
         
            +
              return (const envoy_config_cluster_v3_LoadBalancingPolicy_Policy* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len);
         
     | 
| 
       1680 
2713 
     | 
    
         
             
            }
         
     | 
| 
       1681 
2714 
     | 
    
         | 
| 
       1682 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1683 
     | 
    
         
            -
            UPB_INLINE const envoy_config_cluster_v3_LoadBalancingPolicy_Policy* const* envoy_config_cluster_v3_LoadBalancingPolicy_policies(const envoy_config_cluster_v3_LoadBalancingPolicy *msg, size_t *len) { return (const envoy_config_cluster_v3_LoadBalancingPolicy_Policy* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len); }
         
     | 
| 
       1684 
     | 
    
         
            -
             
     | 
| 
       1685 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_LoadBalancingPolicy_Policy** envoy_config_cluster_v3_LoadBalancingPolicy_mutable_policies(envoy_config_cluster_v3_LoadBalancingPolicy *msg, size_t *len) {
         
     | 
| 
      
 2715 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_LoadBalancingPolicy_Policy** envoy_config_cluster_v3_LoadBalancingPolicy_mutable_policies(envoy_config_cluster_v3_LoadBalancingPolicy* msg, size_t* len) {
         
     | 
| 
       1686 
2716 
     | 
    
         
             
              return (envoy_config_cluster_v3_LoadBalancingPolicy_Policy**)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len);
         
     | 
| 
       1687 
2717 
     | 
    
         
             
            }
         
     | 
| 
       1688 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_LoadBalancingPolicy_Policy** envoy_config_cluster_v3_LoadBalancingPolicy_resize_policies(envoy_config_cluster_v3_LoadBalancingPolicy  
     | 
| 
       1689 
     | 
    
         
            -
              return (envoy_config_cluster_v3_LoadBalancingPolicy_Policy**) 
     | 
| 
      
 2718 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_LoadBalancingPolicy_Policy** envoy_config_cluster_v3_LoadBalancingPolicy_resize_policies(envoy_config_cluster_v3_LoadBalancingPolicy* msg, size_t len, upb_Arena* arena) {
         
     | 
| 
      
 2719 
     | 
    
         
            +
              return (envoy_config_cluster_v3_LoadBalancingPolicy_Policy**)_upb_Array_Resize_accessor2(msg, UPB_SIZE(0, 0), len, UPB_SIZE(2, 3), arena);
         
     | 
| 
       1690 
2720 
     | 
    
         
             
            }
         
     | 
| 
       1691 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_cluster_v3_LoadBalancingPolicy_Policy* envoy_config_cluster_v3_LoadBalancingPolicy_add_policies(envoy_config_cluster_v3_LoadBalancingPolicy  
     | 
| 
       1692 
     | 
    
         
            -
              struct envoy_config_cluster_v3_LoadBalancingPolicy_Policy* sub = (struct envoy_config_cluster_v3_LoadBalancingPolicy_Policy*) 
     | 
| 
       1693 
     | 
    
         
            -
              bool ok =  
     | 
| 
       1694 
     | 
    
         
            -
                  msg, UPB_SIZE(0, 0), UPB_SIZE(2, 3), &sub, arena);
         
     | 
| 
      
 2721 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_cluster_v3_LoadBalancingPolicy_Policy* envoy_config_cluster_v3_LoadBalancingPolicy_add_policies(envoy_config_cluster_v3_LoadBalancingPolicy* msg, upb_Arena* arena) {
         
     | 
| 
      
 2722 
     | 
    
         
            +
              struct envoy_config_cluster_v3_LoadBalancingPolicy_Policy* sub = (struct envoy_config_cluster_v3_LoadBalancingPolicy_Policy*)_upb_Message_New(&envoy_config_cluster_v3_LoadBalancingPolicy_Policy_msginit, arena);
         
     | 
| 
      
 2723 
     | 
    
         
            +
              bool ok = _upb_Array_Append_accessor2(msg, UPB_SIZE(0, 0), UPB_SIZE(2, 3), &sub, arena);
         
     | 
| 
       1695 
2724 
     | 
    
         
             
              if (!ok) return NULL;
         
     | 
| 
       1696 
2725 
     | 
    
         
             
              return sub;
         
     | 
| 
       1697 
2726 
     | 
    
         
             
            }
         
     | 
| 
       1698 
2727 
     | 
    
         | 
| 
       1699 
2728 
     | 
    
         
             
            /* envoy.config.cluster.v3.LoadBalancingPolicy.Policy */
         
     | 
| 
       1700 
2729 
     | 
    
         | 
| 
       1701 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_LoadBalancingPolicy_Policy  
     | 
| 
       1702 
     | 
    
         
            -
              return (envoy_config_cluster_v3_LoadBalancingPolicy_Policy 
     | 
| 
      
 2730 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_LoadBalancingPolicy_Policy* envoy_config_cluster_v3_LoadBalancingPolicy_Policy_new(upb_Arena* arena) {
         
     | 
| 
      
 2731 
     | 
    
         
            +
              return (envoy_config_cluster_v3_LoadBalancingPolicy_Policy*)_upb_Message_New(&envoy_config_cluster_v3_LoadBalancingPolicy_Policy_msginit, arena);
         
     | 
| 
       1703 
2732 
     | 
    
         
             
            }
         
     | 
| 
       1704 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_LoadBalancingPolicy_Policy  
     | 
| 
       1705 
     | 
    
         
            -
             
     | 
| 
       1706 
     | 
    
         
            -
               
     | 
| 
       1707 
     | 
    
         
            -
               
     | 
| 
      
 2733 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_LoadBalancingPolicy_Policy* envoy_config_cluster_v3_LoadBalancingPolicy_Policy_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 2734 
     | 
    
         
            +
              envoy_config_cluster_v3_LoadBalancingPolicy_Policy* ret = envoy_config_cluster_v3_LoadBalancingPolicy_Policy_new(arena);
         
     | 
| 
      
 2735 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2736 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_LoadBalancingPolicy_Policy_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2737 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2738 
     | 
    
         
            +
              }
         
     | 
| 
      
 2739 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1708 
2740 
     | 
    
         
             
            }
         
     | 
| 
       1709 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_LoadBalancingPolicy_Policy  
     | 
| 
       1710 
     | 
    
         
            -
                                        
     | 
| 
       1711 
     | 
    
         
            -
             
     | 
| 
       1712 
     | 
    
         
            -
               
     | 
| 
       1713 
     | 
    
         
            -
             
     | 
| 
      
 2741 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_LoadBalancingPolicy_Policy* envoy_config_cluster_v3_LoadBalancingPolicy_Policy_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 2742 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 2743 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 2744 
     | 
    
         
            +
              envoy_config_cluster_v3_LoadBalancingPolicy_Policy* ret = envoy_config_cluster_v3_LoadBalancingPolicy_Policy_new(arena);
         
     | 
| 
      
 2745 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2746 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_LoadBalancingPolicy_Policy_msginit, extreg, options, arena) !=
         
     | 
| 
      
 2747 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2748 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2749 
     | 
    
         
            +
              }
         
     | 
| 
      
 2750 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1714 
2751 
     | 
    
         
             
            }
         
     | 
| 
       1715 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       1716 
     | 
    
         
            -
              return  
     | 
| 
      
 2752 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_LoadBalancingPolicy_Policy_serialize(const envoy_config_cluster_v3_LoadBalancingPolicy_Policy* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2753 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_LoadBalancingPolicy_Policy_msginit, 0, arena, len);
         
     | 
| 
       1717 
2754 
     | 
    
         
             
            }
         
     | 
| 
       1718 
     | 
    
         
            -
             
     | 
| 
       1719 
     | 
    
         
            -
             
     | 
| 
       1720 
     | 
    
         
            -
             
     | 
| 
       1721 
     | 
    
         
            -
             
     | 
| 
       1722 
     | 
    
         
            -
             
     | 
| 
       1723 
     | 
    
         
            -
             
     | 
| 
       1724 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
         
     | 
| 
      
 2755 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_LoadBalancingPolicy_Policy_serialize_ex(const envoy_config_cluster_v3_LoadBalancingPolicy_Policy* msg, int options,
         
     | 
| 
      
 2756 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2757 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_LoadBalancingPolicy_Policy_msginit, options, arena, len);
         
     | 
| 
      
 2758 
     | 
    
         
            +
            }
         
     | 
| 
      
 2759 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_LoadBalancingPolicy_Policy_has_typed_extension_config(const envoy_config_cluster_v3_LoadBalancingPolicy_Policy* msg) {
         
     | 
| 
      
 2760 
     | 
    
         
            +
              return _upb_hasbit(msg, 1);
         
     | 
| 
       1725 
2761 
     | 
    
         
             
            }
         
     | 
| 
       1726 
     | 
    
         
            -
            UPB_INLINE void  
     | 
| 
      
 2762 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_LoadBalancingPolicy_Policy_clear_typed_extension_config(const envoy_config_cluster_v3_LoadBalancingPolicy_Policy* msg) {
         
     | 
| 
      
 2763 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const upb_Message*) = NULL;
         
     | 
| 
      
 2764 
     | 
    
         
            +
            }
         
     | 
| 
      
 2765 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_TypedExtensionConfig* envoy_config_cluster_v3_LoadBalancingPolicy_Policy_typed_extension_config(const envoy_config_cluster_v3_LoadBalancingPolicy_Policy* msg) {
         
     | 
| 
      
 2766 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct envoy_config_core_v3_TypedExtensionConfig*);
         
     | 
| 
      
 2767 
     | 
    
         
            +
            }
         
     | 
| 
      
 2768 
     | 
    
         
            +
             
     | 
| 
      
 2769 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_LoadBalancingPolicy_Policy_set_typed_extension_config(envoy_config_cluster_v3_LoadBalancingPolicy_Policy *msg, struct envoy_config_core_v3_TypedExtensionConfig* value) {
         
     | 
| 
       1727 
2770 
     | 
    
         
             
              _upb_sethas(msg, 1);
         
     | 
| 
       1728 
     | 
    
         
            -
              *UPB_PTR_AT(msg, UPB_SIZE( 
     | 
| 
      
 2771 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct envoy_config_core_v3_TypedExtensionConfig*) = value;
         
     | 
| 
       1729 
2772 
     | 
    
         
             
            }
         
     | 
| 
       1730 
     | 
    
         
            -
            UPB_INLINE struct  
     | 
| 
       1731 
     | 
    
         
            -
              struct  
     | 
| 
      
 2773 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_TypedExtensionConfig* envoy_config_cluster_v3_LoadBalancingPolicy_Policy_mutable_typed_extension_config(envoy_config_cluster_v3_LoadBalancingPolicy_Policy* msg, upb_Arena* arena) {
         
     | 
| 
      
 2774 
     | 
    
         
            +
              struct envoy_config_core_v3_TypedExtensionConfig* sub = (struct envoy_config_core_v3_TypedExtensionConfig*)envoy_config_cluster_v3_LoadBalancingPolicy_Policy_typed_extension_config(msg);
         
     | 
| 
       1732 
2775 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1733 
     | 
    
         
            -
                sub = (struct  
     | 
| 
      
 2776 
     | 
    
         
            +
                sub = (struct envoy_config_core_v3_TypedExtensionConfig*)_upb_Message_New(&envoy_config_core_v3_TypedExtensionConfig_msginit, arena);
         
     | 
| 
       1734 
2777 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1735 
     | 
    
         
            -
                 
     | 
| 
      
 2778 
     | 
    
         
            +
                envoy_config_cluster_v3_LoadBalancingPolicy_Policy_set_typed_extension_config(msg, sub);
         
     | 
| 
       1736 
2779 
     | 
    
         
             
              }
         
     | 
| 
       1737 
2780 
     | 
    
         
             
              return sub;
         
     | 
| 
       1738 
2781 
     | 
    
         
             
            }
         
     | 
| 
       1739 
2782 
     | 
    
         | 
| 
       1740 
2783 
     | 
    
         
             
            /* envoy.config.cluster.v3.UpstreamBindConfig */
         
     | 
| 
       1741 
2784 
     | 
    
         | 
| 
       1742 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_UpstreamBindConfig  
     | 
| 
       1743 
     | 
    
         
            -
              return (envoy_config_cluster_v3_UpstreamBindConfig 
     | 
| 
      
 2785 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_UpstreamBindConfig* envoy_config_cluster_v3_UpstreamBindConfig_new(upb_Arena* arena) {
         
     | 
| 
      
 2786 
     | 
    
         
            +
              return (envoy_config_cluster_v3_UpstreamBindConfig*)_upb_Message_New(&envoy_config_cluster_v3_UpstreamBindConfig_msginit, arena);
         
     | 
| 
       1744 
2787 
     | 
    
         
             
            }
         
     | 
| 
       1745 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_UpstreamBindConfig  
     | 
| 
       1746 
     | 
    
         
            -
             
     | 
| 
       1747 
     | 
    
         
            -
               
     | 
| 
       1748 
     | 
    
         
            -
               
     | 
| 
      
 2788 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_UpstreamBindConfig* envoy_config_cluster_v3_UpstreamBindConfig_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 2789 
     | 
    
         
            +
              envoy_config_cluster_v3_UpstreamBindConfig* ret = envoy_config_cluster_v3_UpstreamBindConfig_new(arena);
         
     | 
| 
      
 2790 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2791 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_UpstreamBindConfig_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2792 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2793 
     | 
    
         
            +
              }
         
     | 
| 
      
 2794 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1749 
2795 
     | 
    
         
             
            }
         
     | 
| 
       1750 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_UpstreamBindConfig  
     | 
| 
       1751 
     | 
    
         
            -
                                        
     | 
| 
       1752 
     | 
    
         
            -
             
     | 
| 
       1753 
     | 
    
         
            -
               
     | 
| 
       1754 
     | 
    
         
            -
             
     | 
| 
      
 2796 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_UpstreamBindConfig* envoy_config_cluster_v3_UpstreamBindConfig_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 2797 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 2798 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 2799 
     | 
    
         
            +
              envoy_config_cluster_v3_UpstreamBindConfig* ret = envoy_config_cluster_v3_UpstreamBindConfig_new(arena);
         
     | 
| 
      
 2800 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2801 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_UpstreamBindConfig_msginit, extreg, options, arena) !=
         
     | 
| 
      
 2802 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2803 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2804 
     | 
    
         
            +
              }
         
     | 
| 
      
 2805 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1755 
2806 
     | 
    
         
             
            }
         
     | 
| 
       1756 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       1757 
     | 
    
         
            -
              return  
     | 
| 
      
 2807 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_UpstreamBindConfig_serialize(const envoy_config_cluster_v3_UpstreamBindConfig* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2808 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_UpstreamBindConfig_msginit, 0, arena, len);
         
     | 
| 
      
 2809 
     | 
    
         
            +
            }
         
     | 
| 
      
 2810 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_UpstreamBindConfig_serialize_ex(const envoy_config_cluster_v3_UpstreamBindConfig* msg, int options,
         
     | 
| 
      
 2811 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2812 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_UpstreamBindConfig_msginit, options, arena, len);
         
     | 
| 
      
 2813 
     | 
    
         
            +
            }
         
     | 
| 
      
 2814 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_UpstreamBindConfig_has_source_address(const envoy_config_cluster_v3_UpstreamBindConfig* msg) {
         
     | 
| 
      
 2815 
     | 
    
         
            +
              return _upb_hasbit(msg, 1);
         
     | 
| 
      
 2816 
     | 
    
         
            +
            }
         
     | 
| 
      
 2817 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_UpstreamBindConfig_clear_source_address(const envoy_config_cluster_v3_UpstreamBindConfig* msg) {
         
     | 
| 
      
 2818 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const upb_Message*) = NULL;
         
     | 
| 
      
 2819 
     | 
    
         
            +
            }
         
     | 
| 
      
 2820 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_Address* envoy_config_cluster_v3_UpstreamBindConfig_source_address(const envoy_config_cluster_v3_UpstreamBindConfig* msg) {
         
     | 
| 
      
 2821 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct envoy_config_core_v3_Address*);
         
     | 
| 
       1758 
2822 
     | 
    
         
             
            }
         
     | 
| 
       1759 
     | 
    
         
            -
             
     | 
| 
       1760 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_UpstreamBindConfig_has_source_address(const envoy_config_cluster_v3_UpstreamBindConfig *msg) { return _upb_hasbit(msg, 1); }
         
     | 
| 
       1761 
     | 
    
         
            -
            UPB_INLINE const struct envoy_config_core_v3_Address* envoy_config_cluster_v3_UpstreamBindConfig_source_address(const envoy_config_cluster_v3_UpstreamBindConfig *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct envoy_config_core_v3_Address*); }
         
     | 
| 
       1762 
2823 
     | 
    
         | 
| 
       1763 
2824 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_UpstreamBindConfig_set_source_address(envoy_config_cluster_v3_UpstreamBindConfig *msg, struct envoy_config_core_v3_Address* value) {
         
     | 
| 
       1764 
2825 
     | 
    
         
             
              _upb_sethas(msg, 1);
         
     | 
| 
       1765 
2826 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct envoy_config_core_v3_Address*) = value;
         
     | 
| 
       1766 
2827 
     | 
    
         
             
            }
         
     | 
| 
       1767 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_Address* envoy_config_cluster_v3_UpstreamBindConfig_mutable_source_address(envoy_config_cluster_v3_UpstreamBindConfig  
     | 
| 
      
 2828 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_Address* envoy_config_cluster_v3_UpstreamBindConfig_mutable_source_address(envoy_config_cluster_v3_UpstreamBindConfig* msg, upb_Arena* arena) {
         
     | 
| 
       1768 
2829 
     | 
    
         
             
              struct envoy_config_core_v3_Address* sub = (struct envoy_config_core_v3_Address*)envoy_config_cluster_v3_UpstreamBindConfig_source_address(msg);
         
     | 
| 
       1769 
2830 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1770 
     | 
    
         
            -
                sub = (struct envoy_config_core_v3_Address*) 
     | 
| 
      
 2831 
     | 
    
         
            +
                sub = (struct envoy_config_core_v3_Address*)_upb_Message_New(&envoy_config_core_v3_Address_msginit, arena);
         
     | 
| 
       1771 
2832 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1772 
2833 
     | 
    
         
             
                envoy_config_cluster_v3_UpstreamBindConfig_set_source_address(msg, sub);
         
     | 
| 
       1773 
2834 
     | 
    
         
             
              }
         
     | 
| 
         @@ -1776,63 +2837,111 @@ UPB_INLINE struct envoy_config_core_v3_Address* envoy_config_cluster_v3_Upstream 
     | 
|
| 
       1776 
2837 
     | 
    
         | 
| 
       1777 
2838 
     | 
    
         
             
            /* envoy.config.cluster.v3.UpstreamConnectionOptions */
         
     | 
| 
       1778 
2839 
     | 
    
         | 
| 
       1779 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_UpstreamConnectionOptions  
     | 
| 
       1780 
     | 
    
         
            -
              return (envoy_config_cluster_v3_UpstreamConnectionOptions 
     | 
| 
      
 2840 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_UpstreamConnectionOptions* envoy_config_cluster_v3_UpstreamConnectionOptions_new(upb_Arena* arena) {
         
     | 
| 
      
 2841 
     | 
    
         
            +
              return (envoy_config_cluster_v3_UpstreamConnectionOptions*)_upb_Message_New(&envoy_config_cluster_v3_UpstreamConnectionOptions_msginit, arena);
         
     | 
| 
       1781 
2842 
     | 
    
         
             
            }
         
     | 
| 
       1782 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_UpstreamConnectionOptions  
     | 
| 
       1783 
     | 
    
         
            -
             
     | 
| 
       1784 
     | 
    
         
            -
               
     | 
| 
       1785 
     | 
    
         
            -
               
     | 
| 
      
 2843 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_UpstreamConnectionOptions* envoy_config_cluster_v3_UpstreamConnectionOptions_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 2844 
     | 
    
         
            +
              envoy_config_cluster_v3_UpstreamConnectionOptions* ret = envoy_config_cluster_v3_UpstreamConnectionOptions_new(arena);
         
     | 
| 
      
 2845 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2846 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_UpstreamConnectionOptions_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2847 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2848 
     | 
    
         
            +
              }
         
     | 
| 
      
 2849 
     | 
    
         
            +
              return ret;
         
     | 
| 
      
 2850 
     | 
    
         
            +
            }
         
     | 
| 
      
 2851 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_UpstreamConnectionOptions* envoy_config_cluster_v3_UpstreamConnectionOptions_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 2852 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 2853 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 2854 
     | 
    
         
            +
              envoy_config_cluster_v3_UpstreamConnectionOptions* ret = envoy_config_cluster_v3_UpstreamConnectionOptions_new(arena);
         
     | 
| 
      
 2855 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2856 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_UpstreamConnectionOptions_msginit, extreg, options, arena) !=
         
     | 
| 
      
 2857 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2858 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2859 
     | 
    
         
            +
              }
         
     | 
| 
      
 2860 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1786 
2861 
     | 
    
         
             
            }
         
     | 
| 
       1787 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1788 
     | 
    
         
            -
             
     | 
| 
       1789 
     | 
    
         
            -
              envoy_config_cluster_v3_UpstreamConnectionOptions *ret = envoy_config_cluster_v3_UpstreamConnectionOptions_new(arena);
         
     | 
| 
       1790 
     | 
    
         
            -
              return (ret && _upb_decode(buf, size, ret, &envoy_config_cluster_v3_UpstreamConnectionOptions_msginit, arena, options))
         
     | 
| 
       1791 
     | 
    
         
            -
                  ? ret : NULL;
         
     | 
| 
      
 2862 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_UpstreamConnectionOptions_serialize(const envoy_config_cluster_v3_UpstreamConnectionOptions* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2863 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_UpstreamConnectionOptions_msginit, 0, arena, len);
         
     | 
| 
       1792 
2864 
     | 
    
         
             
            }
         
     | 
| 
       1793 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       1794 
     | 
    
         
            -
             
     | 
| 
      
 2865 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_UpstreamConnectionOptions_serialize_ex(const envoy_config_cluster_v3_UpstreamConnectionOptions* msg, int options,
         
     | 
| 
      
 2866 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2867 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_UpstreamConnectionOptions_msginit, options, arena, len);
         
     | 
| 
      
 2868 
     | 
    
         
            +
            }
         
     | 
| 
      
 2869 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_UpstreamConnectionOptions_has_tcp_keepalive(const envoy_config_cluster_v3_UpstreamConnectionOptions* msg) {
         
     | 
| 
      
 2870 
     | 
    
         
            +
              return _upb_hasbit(msg, 1);
         
     | 
| 
      
 2871 
     | 
    
         
            +
            }
         
     | 
| 
      
 2872 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_UpstreamConnectionOptions_clear_tcp_keepalive(const envoy_config_cluster_v3_UpstreamConnectionOptions* msg) {
         
     | 
| 
      
 2873 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const upb_Message*) = NULL;
         
     | 
| 
      
 2874 
     | 
    
         
            +
            }
         
     | 
| 
      
 2875 
     | 
    
         
            +
            UPB_INLINE const struct envoy_config_core_v3_TcpKeepalive* envoy_config_cluster_v3_UpstreamConnectionOptions_tcp_keepalive(const envoy_config_cluster_v3_UpstreamConnectionOptions* msg) {
         
     | 
| 
      
 2876 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct envoy_config_core_v3_TcpKeepalive*);
         
     | 
| 
      
 2877 
     | 
    
         
            +
            }
         
     | 
| 
      
 2878 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_UpstreamConnectionOptions_clear_set_local_interface_name_on_upstream_connections(const envoy_config_cluster_v3_UpstreamConnectionOptions* msg) {
         
     | 
| 
      
 2879 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = 0;
         
     | 
| 
      
 2880 
     | 
    
         
            +
            }
         
     | 
| 
      
 2881 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_UpstreamConnectionOptions_set_local_interface_name_on_upstream_connections(const envoy_config_cluster_v3_UpstreamConnectionOptions* msg) {
         
     | 
| 
      
 2882 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool);
         
     | 
| 
       1795 
2883 
     | 
    
         
             
            }
         
     | 
| 
       1796 
     | 
    
         
            -
             
     | 
| 
       1797 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_UpstreamConnectionOptions_has_tcp_keepalive(const envoy_config_cluster_v3_UpstreamConnectionOptions *msg) { return _upb_hasbit(msg, 1); }
         
     | 
| 
       1798 
     | 
    
         
            -
            UPB_INLINE const struct envoy_config_core_v3_TcpKeepalive* envoy_config_cluster_v3_UpstreamConnectionOptions_tcp_keepalive(const envoy_config_cluster_v3_UpstreamConnectionOptions *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct envoy_config_core_v3_TcpKeepalive*); }
         
     | 
| 
       1799 
2884 
     | 
    
         | 
| 
       1800 
2885 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_UpstreamConnectionOptions_set_tcp_keepalive(envoy_config_cluster_v3_UpstreamConnectionOptions *msg, struct envoy_config_core_v3_TcpKeepalive* value) {
         
     | 
| 
       1801 
2886 
     | 
    
         
             
              _upb_sethas(msg, 1);
         
     | 
| 
       1802 
2887 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct envoy_config_core_v3_TcpKeepalive*) = value;
         
     | 
| 
       1803 
2888 
     | 
    
         
             
            }
         
     | 
| 
       1804 
     | 
    
         
            -
            UPB_INLINE struct envoy_config_core_v3_TcpKeepalive* envoy_config_cluster_v3_UpstreamConnectionOptions_mutable_tcp_keepalive(envoy_config_cluster_v3_UpstreamConnectionOptions  
     | 
| 
      
 2889 
     | 
    
         
            +
            UPB_INLINE struct envoy_config_core_v3_TcpKeepalive* envoy_config_cluster_v3_UpstreamConnectionOptions_mutable_tcp_keepalive(envoy_config_cluster_v3_UpstreamConnectionOptions* msg, upb_Arena* arena) {
         
     | 
| 
       1805 
2890 
     | 
    
         
             
              struct envoy_config_core_v3_TcpKeepalive* sub = (struct envoy_config_core_v3_TcpKeepalive*)envoy_config_cluster_v3_UpstreamConnectionOptions_tcp_keepalive(msg);
         
     | 
| 
       1806 
2891 
     | 
    
         
             
              if (sub == NULL) {
         
     | 
| 
       1807 
     | 
    
         
            -
                sub = (struct envoy_config_core_v3_TcpKeepalive*) 
     | 
| 
      
 2892 
     | 
    
         
            +
                sub = (struct envoy_config_core_v3_TcpKeepalive*)_upb_Message_New(&envoy_config_core_v3_TcpKeepalive_msginit, arena);
         
     | 
| 
       1808 
2893 
     | 
    
         
             
                if (!sub) return NULL;
         
     | 
| 
       1809 
2894 
     | 
    
         
             
                envoy_config_cluster_v3_UpstreamConnectionOptions_set_tcp_keepalive(msg, sub);
         
     | 
| 
       1810 
2895 
     | 
    
         
             
              }
         
     | 
| 
       1811 
2896 
     | 
    
         
             
              return sub;
         
     | 
| 
       1812 
2897 
     | 
    
         
             
            }
         
     | 
| 
      
 2898 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_UpstreamConnectionOptions_set_set_local_interface_name_on_upstream_connections(envoy_config_cluster_v3_UpstreamConnectionOptions *msg, bool value) {
         
     | 
| 
      
 2899 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = value;
         
     | 
| 
      
 2900 
     | 
    
         
            +
            }
         
     | 
| 
       1813 
2901 
     | 
    
         | 
| 
       1814 
2902 
     | 
    
         
             
            /* envoy.config.cluster.v3.TrackClusterStats */
         
     | 
| 
       1815 
2903 
     | 
    
         | 
| 
       1816 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_TrackClusterStats  
     | 
| 
       1817 
     | 
    
         
            -
              return (envoy_config_cluster_v3_TrackClusterStats 
     | 
| 
      
 2904 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_TrackClusterStats* envoy_config_cluster_v3_TrackClusterStats_new(upb_Arena* arena) {
         
     | 
| 
      
 2905 
     | 
    
         
            +
              return (envoy_config_cluster_v3_TrackClusterStats*)_upb_Message_New(&envoy_config_cluster_v3_TrackClusterStats_msginit, arena);
         
     | 
| 
      
 2906 
     | 
    
         
            +
            }
         
     | 
| 
      
 2907 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_TrackClusterStats* envoy_config_cluster_v3_TrackClusterStats_parse(const char* buf, size_t size, upb_Arena* arena) {
         
     | 
| 
      
 2908 
     | 
    
         
            +
              envoy_config_cluster_v3_TrackClusterStats* ret = envoy_config_cluster_v3_TrackClusterStats_new(arena);
         
     | 
| 
      
 2909 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2910 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_TrackClusterStats_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2911 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2912 
     | 
    
         
            +
              }
         
     | 
| 
      
 2913 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1818 
2914 
     | 
    
         
             
            }
         
     | 
| 
       1819 
     | 
    
         
            -
            UPB_INLINE envoy_config_cluster_v3_TrackClusterStats  
     | 
| 
       1820 
     | 
    
         
            -
             
     | 
| 
       1821 
     | 
    
         
            -
             
     | 
| 
       1822 
     | 
    
         
            -
               
     | 
| 
      
 2915 
     | 
    
         
            +
            UPB_INLINE envoy_config_cluster_v3_TrackClusterStats* envoy_config_cluster_v3_TrackClusterStats_parse_ex(const char* buf, size_t size,
         
     | 
| 
      
 2916 
     | 
    
         
            +
                                       const upb_ExtensionRegistry* extreg,
         
     | 
| 
      
 2917 
     | 
    
         
            +
                                       int options, upb_Arena* arena) {
         
     | 
| 
      
 2918 
     | 
    
         
            +
              envoy_config_cluster_v3_TrackClusterStats* ret = envoy_config_cluster_v3_TrackClusterStats_new(arena);
         
     | 
| 
      
 2919 
     | 
    
         
            +
              if (!ret) return NULL;
         
     | 
| 
      
 2920 
     | 
    
         
            +
              if (upb_Decode(buf, size, ret, &envoy_config_cluster_v3_TrackClusterStats_msginit, extreg, options, arena) !=
         
     | 
| 
      
 2921 
     | 
    
         
            +
                  kUpb_DecodeStatus_Ok) {
         
     | 
| 
      
 2922 
     | 
    
         
            +
                return NULL;
         
     | 
| 
      
 2923 
     | 
    
         
            +
              }
         
     | 
| 
      
 2924 
     | 
    
         
            +
              return ret;
         
     | 
| 
       1823 
2925 
     | 
    
         
             
            }
         
     | 
| 
       1824 
     | 
    
         
            -
            UPB_INLINE  
     | 
| 
       1825 
     | 
    
         
            -
             
     | 
| 
       1826 
     | 
    
         
            -
              envoy_config_cluster_v3_TrackClusterStats *ret = envoy_config_cluster_v3_TrackClusterStats_new(arena);
         
     | 
| 
       1827 
     | 
    
         
            -
              return (ret && _upb_decode(buf, size, ret, &envoy_config_cluster_v3_TrackClusterStats_msginit, arena, options))
         
     | 
| 
       1828 
     | 
    
         
            -
                  ? ret : NULL;
         
     | 
| 
      
 2926 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_TrackClusterStats_serialize(const envoy_config_cluster_v3_TrackClusterStats* msg, upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2927 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_TrackClusterStats_msginit, 0, arena, len);
         
     | 
| 
       1829 
2928 
     | 
    
         
             
            }
         
     | 
| 
       1830 
     | 
    
         
            -
            UPB_INLINE char  
     | 
| 
       1831 
     | 
    
         
            -
             
     | 
| 
      
 2929 
     | 
    
         
            +
            UPB_INLINE char* envoy_config_cluster_v3_TrackClusterStats_serialize_ex(const envoy_config_cluster_v3_TrackClusterStats* msg, int options,
         
     | 
| 
      
 2930 
     | 
    
         
            +
                                             upb_Arena* arena, size_t* len) {
         
     | 
| 
      
 2931 
     | 
    
         
            +
              return upb_Encode(msg, &envoy_config_cluster_v3_TrackClusterStats_msginit, options, arena, len);
         
     | 
| 
      
 2932 
     | 
    
         
            +
            }
         
     | 
| 
      
 2933 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_TrackClusterStats_clear_timeout_budgets(const envoy_config_cluster_v3_TrackClusterStats* msg) {
         
     | 
| 
      
 2934 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(0, 0), bool) = 0;
         
     | 
| 
      
 2935 
     | 
    
         
            +
            }
         
     | 
| 
      
 2936 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_TrackClusterStats_timeout_budgets(const envoy_config_cluster_v3_TrackClusterStats* msg) {
         
     | 
| 
      
 2937 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), bool);
         
     | 
| 
      
 2938 
     | 
    
         
            +
            }
         
     | 
| 
      
 2939 
     | 
    
         
            +
            UPB_INLINE void envoy_config_cluster_v3_TrackClusterStats_clear_request_response_sizes(const envoy_config_cluster_v3_TrackClusterStats* msg) {
         
     | 
| 
      
 2940 
     | 
    
         
            +
              *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = 0;
         
     | 
| 
      
 2941 
     | 
    
         
            +
            }
         
     | 
| 
      
 2942 
     | 
    
         
            +
            UPB_INLINE bool envoy_config_cluster_v3_TrackClusterStats_request_response_sizes(const envoy_config_cluster_v3_TrackClusterStats* msg) {
         
     | 
| 
      
 2943 
     | 
    
         
            +
              return *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool);
         
     | 
| 
       1832 
2944 
     | 
    
         
             
            }
         
     | 
| 
       1833 
     | 
    
         
            -
             
     | 
| 
       1834 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_TrackClusterStats_timeout_budgets(const envoy_config_cluster_v3_TrackClusterStats *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), bool); }
         
     | 
| 
       1835 
     | 
    
         
            -
            UPB_INLINE bool envoy_config_cluster_v3_TrackClusterStats_request_response_sizes(const envoy_config_cluster_v3_TrackClusterStats *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool); }
         
     | 
| 
       1836 
2945 
     | 
    
         | 
| 
       1837 
2946 
     | 
    
         
             
            UPB_INLINE void envoy_config_cluster_v3_TrackClusterStats_set_timeout_budgets(envoy_config_cluster_v3_TrackClusterStats *msg, bool value) {
         
     | 
| 
       1838 
2947 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(0, 0), bool) = value;
         
     | 
| 
         @@ -1841,6 +2950,8 @@ UPB_INLINE void envoy_config_cluster_v3_TrackClusterStats_set_request_response_s 
     | 
|
| 
       1841 
2950 
     | 
    
         
             
              *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = value;
         
     | 
| 
       1842 
2951 
     | 
    
         
             
            }
         
     | 
| 
       1843 
2952 
     | 
    
         | 
| 
      
 2953 
     | 
    
         
            +
            extern const upb_MiniTable_File envoy_config_cluster_v3_cluster_proto_upb_file_layout;
         
     | 
| 
      
 2954 
     | 
    
         
            +
             
     | 
| 
       1844 
2955 
     | 
    
         
             
            #ifdef __cplusplus
         
     | 
| 
       1845 
2956 
     | 
    
         
             
            }  /* extern "C" */
         
     | 
| 
       1846 
2957 
     | 
    
         
             
            #endif
         
     |