public final class

RemoteWebMatchers

extends java.lang.Object

 java.lang.Object

↳androidx.test.espresso.web.proto.matcher.RemoteWebMatchers

Summary

Methods
public static voidregisterAllExtensions(com.google.protobuf.ExtensionRegistryLite registry)

from java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Methods

public static void registerAllExtensions(com.google.protobuf.ExtensionRegistryLite registry)

Source

// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: espresso/remote/java/androidx/test/espresso/web/proto/matcher/remote_web_matchers.proto

package androidx.test.espresso.web.proto.matcher;

public final class RemoteWebMatchers {
  private RemoteWebMatchers() {}
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistryLite registry) {
  }
  public interface WithBodyMatcherProtoOrBuilder extends
      // @@protoc_insertion_point(interface_extends:google.test.remote.web.model.WithBodyMatcherProto)
      com.google.protobuf.MessageLiteOrBuilder {

    /**
     * <code>string id = 1;</code>
     * @return The id.
     */
    java.lang.String getId();
    /**
     * <code>string id = 1;</code>
     * @return The bytes for id.
     */
    com.google.protobuf.ByteString
        getIdBytes();

    /**
     * <code>.google.protobuf.Any bodyMatcher = 2;</code>
     * @return Whether the bodyMatcher field is set.
     */
    boolean hasBodyMatcher();
    /**
     * <code>.google.protobuf.Any bodyMatcher = 2;</code>
     * @return The bodyMatcher.
     */
    com.google.protobuf.Any getBodyMatcher();
  }
  /**
   * Protobuf type {@code google.test.remote.web.model.WithBodyMatcherProto}
   */
  public  static final class WithBodyMatcherProto extends
      com.google.protobuf.GeneratedMessageLite<
          WithBodyMatcherProto, WithBodyMatcherProto.Builder> implements
      // @@protoc_insertion_point(message_implements:google.test.remote.web.model.WithBodyMatcherProto)
      WithBodyMatcherProtoOrBuilder {
    private WithBodyMatcherProto() {
      id_ = "";
    }
    public static final int ID_FIELD_NUMBER = 1;
    private java.lang.String id_;
    /**
     * <code>string id = 1;</code>
     * @return The id.
     */
    @java.lang.Override
    public java.lang.String getId() {
      return id_;
    }
    /**
     * <code>string id = 1;</code>
     * @return The bytes for id.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getIdBytes() {
      return com.google.protobuf.ByteString.copyFromUtf8(id_);
    }
    /**
     * <code>string id = 1;</code>
     * @param value The id to set.
     */
    private void setId(
        java.lang.String value) {
      java.lang.Class<?> valueClass = value.getClass();
  
      id_ = value;
    }
    /**
     * <code>string id = 1;</code>
     */
    private void clearId() {
      
      id_ = getDefaultInstance().getId();
    }
    /**
     * <code>string id = 1;</code>
     * @param value The bytes for id to set.
     */
    private void setIdBytes(
        com.google.protobuf.ByteString value) {
      checkByteStringIsUtf8(value);
      id_ = value.toStringUtf8();
      
    }

    public static final int BODYMATCHER_FIELD_NUMBER = 2;
    private com.google.protobuf.Any bodyMatcher_;
    /**
     * <code>.google.protobuf.Any bodyMatcher = 2;</code>
     */
    @java.lang.Override
    public boolean hasBodyMatcher() {
      return bodyMatcher_ != null;
    }
    /**
     * <code>.google.protobuf.Any bodyMatcher = 2;</code>
     */
    @java.lang.Override
    public com.google.protobuf.Any getBodyMatcher() {
      return bodyMatcher_ == null ? com.google.protobuf.Any.getDefaultInstance() : bodyMatcher_;
    }
    /**
     * <code>.google.protobuf.Any bodyMatcher = 2;</code>
     */
    private void setBodyMatcher(com.google.protobuf.Any value) {
      value.getClass();
  bodyMatcher_ = value;
      
      }
    /**
     * <code>.google.protobuf.Any bodyMatcher = 2;</code>
     */
    @java.lang.SuppressWarnings({"ReferenceEquality"})
    private void mergeBodyMatcher(com.google.protobuf.Any value) {
      value.getClass();
  if (bodyMatcher_ != null &&
          bodyMatcher_ != com.google.protobuf.Any.getDefaultInstance()) {
        bodyMatcher_ =
          com.google.protobuf.Any.newBuilder(bodyMatcher_).mergeFrom(value).buildPartial();
      } else {
        bodyMatcher_ = value;
      }
      
    }
    /**
     * <code>.google.protobuf.Any bodyMatcher = 2;</code>
     */
    private void clearBodyMatcher() {  bodyMatcher_ = null;
      
    }

    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }

    public static Builder newBuilder() {
      return (Builder) DEFAULT_INSTANCE.createBuilder();
    }
    public static Builder newBuilder(androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto prototype) {
      return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
    }

    /**
     * Protobuf type {@code google.test.remote.web.model.WithBodyMatcherProto}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageLite.Builder<
          androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto, Builder> implements
        // @@protoc_insertion_point(builder_implements:google.test.remote.web.model.WithBodyMatcherProto)
        androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProtoOrBuilder {
      // Construct using androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto.newBuilder()
      private Builder() {
        super(DEFAULT_INSTANCE);
      }


      /**
       * <code>string id = 1;</code>
       * @return The id.
       */
      @java.lang.Override
      public java.lang.String getId() {
        return instance.getId();
      }
      /**
       * <code>string id = 1;</code>
       * @return The bytes for id.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getIdBytes() {
        return instance.getIdBytes();
      }
      /**
       * <code>string id = 1;</code>
       * @param value The id to set.
       * @return This builder for chaining.
       */
      public Builder setId(
          java.lang.String value) {
        copyOnWrite();
        instance.setId(value);
        return this;
      }
      /**
       * <code>string id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearId() {
        copyOnWrite();
        instance.clearId();
        return this;
      }
      /**
       * <code>string id = 1;</code>
       * @param value The bytes for id to set.
       * @return This builder for chaining.
       */
      public Builder setIdBytes(
          com.google.protobuf.ByteString value) {
        copyOnWrite();
        instance.setIdBytes(value);
        return this;
      }

      /**
       * <code>.google.protobuf.Any bodyMatcher = 2;</code>
       */
      @java.lang.Override
      public boolean hasBodyMatcher() {
        return instance.hasBodyMatcher();
      }
      /**
       * <code>.google.protobuf.Any bodyMatcher = 2;</code>
       */
      @java.lang.Override
      public com.google.protobuf.Any getBodyMatcher() {
        return instance.getBodyMatcher();
      }
      /**
       * <code>.google.protobuf.Any bodyMatcher = 2;</code>
       */
      public Builder setBodyMatcher(com.google.protobuf.Any value) {
        copyOnWrite();
        instance.setBodyMatcher(value);
        return this;
        }
      /**
       * <code>.google.protobuf.Any bodyMatcher = 2;</code>
       */
      public Builder setBodyMatcher(
          com.google.protobuf.Any.Builder builderForValue) {
        copyOnWrite();
        instance.setBodyMatcher(builderForValue.build());
        return this;
      }
      /**
       * <code>.google.protobuf.Any bodyMatcher = 2;</code>
       */
      public Builder mergeBodyMatcher(com.google.protobuf.Any value) {
        copyOnWrite();
        instance.mergeBodyMatcher(value);
        return this;
      }
      /**
       * <code>.google.protobuf.Any bodyMatcher = 2;</code>
       */
      public Builder clearBodyMatcher() {  copyOnWrite();
        instance.clearBodyMatcher();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:google.test.remote.web.model.WithBodyMatcherProto)
    }
    @java.lang.Override
    @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
    protected final java.lang.Object dynamicMethod(
        com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
        java.lang.Object arg0, java.lang.Object arg1) {
      switch (method) {
        case NEW_MUTABLE_INSTANCE: {
          return new androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto();
        }
        case NEW_BUILDER: {
          return new Builder();
        }
        case BUILD_MESSAGE_INFO: {
            java.lang.Object[] objects = new java.lang.Object[] {
              "id_",
              "bodyMatcher_",
            };
            java.lang.String info =
                "\u0000\u0002\u0000\u0000\u0001\u0002\u0002\u0000\u0000\u0000\u0001\u0208\u0002\t" +
                "";
            return newMessageInfo(DEFAULT_INSTANCE, info, objects);
        }
        // fall through
        case GET_DEFAULT_INSTANCE: {
          return DEFAULT_INSTANCE;
        }
        case GET_PARSER: {
          com.google.protobuf.Parser<androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto> parser = PARSER;
          if (parser == null) {
            synchronized (androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto.class) {
              parser = PARSER;
              if (parser == null) {
                parser =
                    new DefaultInstanceBasedParser<androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto>(
                        DEFAULT_INSTANCE);
                PARSER = parser;
              }
            }
          }
          return parser;
      }
      case GET_MEMOIZED_IS_INITIALIZED: {
        return (byte) 1;
      }
      case SET_MEMOIZED_IS_INITIALIZED: {
        return null;
      }
      }
      throw new UnsupportedOperationException();
    }


    // @@protoc_insertion_point(class_scope:google.test.remote.web.model.WithBodyMatcherProto)
    private static final androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto DEFAULT_INSTANCE;
    static {
      WithBodyMatcherProto defaultInstance = new WithBodyMatcherProto();
      // New instances are implicitly immutable so no need to make
      // immutable.
      DEFAULT_INSTANCE = defaultInstance;
      com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
        WithBodyMatcherProto.class, defaultInstance);
    }

    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithBodyMatcherProto getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static volatile com.google.protobuf.Parser<WithBodyMatcherProto> PARSER;

    public static com.google.protobuf.Parser<WithBodyMatcherProto> parser() {
      return DEFAULT_INSTANCE.getParserForType();
    }
  }

  public interface HasElementWithIdMatcherProtoOrBuilder extends
      // @@protoc_insertion_point(interface_extends:google.test.remote.web.model.HasElementWithIdMatcherProto)
      com.google.protobuf.MessageLiteOrBuilder {

    /**
     * <code>string id = 1;</code>
     * @return The id.
     */
    java.lang.String getId();
    /**
     * <code>string id = 1;</code>
     * @return The bytes for id.
     */
    com.google.protobuf.ByteString
        getIdBytes();

    /**
     * <code>bytes elementId = 2;</code>
     * @return The elementId.
     */
    com.google.protobuf.ByteString getElementId();
  }
  /**
   * Protobuf type {@code google.test.remote.web.model.HasElementWithIdMatcherProto}
   */
  public  static final class HasElementWithIdMatcherProto extends
      com.google.protobuf.GeneratedMessageLite<
          HasElementWithIdMatcherProto, HasElementWithIdMatcherProto.Builder> implements
      // @@protoc_insertion_point(message_implements:google.test.remote.web.model.HasElementWithIdMatcherProto)
      HasElementWithIdMatcherProtoOrBuilder {
    private HasElementWithIdMatcherProto() {
      id_ = "";
      elementId_ = com.google.protobuf.ByteString.EMPTY;
    }
    public static final int ID_FIELD_NUMBER = 1;
    private java.lang.String id_;
    /**
     * <code>string id = 1;</code>
     * @return The id.
     */
    @java.lang.Override
    public java.lang.String getId() {
      return id_;
    }
    /**
     * <code>string id = 1;</code>
     * @return The bytes for id.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getIdBytes() {
      return com.google.protobuf.ByteString.copyFromUtf8(id_);
    }
    /**
     * <code>string id = 1;</code>
     * @param value The id to set.
     */
    private void setId(
        java.lang.String value) {
      java.lang.Class<?> valueClass = value.getClass();
  
      id_ = value;
    }
    /**
     * <code>string id = 1;</code>
     */
    private void clearId() {
      
      id_ = getDefaultInstance().getId();
    }
    /**
     * <code>string id = 1;</code>
     * @param value The bytes for id to set.
     */
    private void setIdBytes(
        com.google.protobuf.ByteString value) {
      checkByteStringIsUtf8(value);
      id_ = value.toStringUtf8();
      
    }

    public static final int ELEMENTID_FIELD_NUMBER = 2;
    private com.google.protobuf.ByteString elementId_;
    /**
     * <code>bytes elementId = 2;</code>
     * @return The elementId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString getElementId() {
      return elementId_;
    }
    /**
     * <code>bytes elementId = 2;</code>
     * @param value The elementId to set.
     */
    private void setElementId(com.google.protobuf.ByteString value) {
      java.lang.Class<?> valueClass = value.getClass();
  
      elementId_ = value;
    }
    /**
     * <code>bytes elementId = 2;</code>
     */
    private void clearElementId() {
      
      elementId_ = getDefaultInstance().getElementId();
    }

    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }

    public static Builder newBuilder() {
      return (Builder) DEFAULT_INSTANCE.createBuilder();
    }
    public static Builder newBuilder(androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto prototype) {
      return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
    }

    /**
     * Protobuf type {@code google.test.remote.web.model.HasElementWithIdMatcherProto}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageLite.Builder<
          androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto, Builder> implements
        // @@protoc_insertion_point(builder_implements:google.test.remote.web.model.HasElementWithIdMatcherProto)
        androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProtoOrBuilder {
      // Construct using androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto.newBuilder()
      private Builder() {
        super(DEFAULT_INSTANCE);
      }


      /**
       * <code>string id = 1;</code>
       * @return The id.
       */
      @java.lang.Override
      public java.lang.String getId() {
        return instance.getId();
      }
      /**
       * <code>string id = 1;</code>
       * @return The bytes for id.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getIdBytes() {
        return instance.getIdBytes();
      }
      /**
       * <code>string id = 1;</code>
       * @param value The id to set.
       * @return This builder for chaining.
       */
      public Builder setId(
          java.lang.String value) {
        copyOnWrite();
        instance.setId(value);
        return this;
      }
      /**
       * <code>string id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearId() {
        copyOnWrite();
        instance.clearId();
        return this;
      }
      /**
       * <code>string id = 1;</code>
       * @param value The bytes for id to set.
       * @return This builder for chaining.
       */
      public Builder setIdBytes(
          com.google.protobuf.ByteString value) {
        copyOnWrite();
        instance.setIdBytes(value);
        return this;
      }

      /**
       * <code>bytes elementId = 2;</code>
       * @return The elementId.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString getElementId() {
        return instance.getElementId();
      }
      /**
       * <code>bytes elementId = 2;</code>
       * @param value The elementId to set.
       * @return This builder for chaining.
       */
      public Builder setElementId(com.google.protobuf.ByteString value) {
        copyOnWrite();
        instance.setElementId(value);
        return this;
      }
      /**
       * <code>bytes elementId = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearElementId() {
        copyOnWrite();
        instance.clearElementId();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:google.test.remote.web.model.HasElementWithIdMatcherProto)
    }
    @java.lang.Override
    @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
    protected final java.lang.Object dynamicMethod(
        com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
        java.lang.Object arg0, java.lang.Object arg1) {
      switch (method) {
        case NEW_MUTABLE_INSTANCE: {
          return new androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto();
        }
        case NEW_BUILDER: {
          return new Builder();
        }
        case BUILD_MESSAGE_INFO: {
            java.lang.Object[] objects = new java.lang.Object[] {
              "id_",
              "elementId_",
            };
            java.lang.String info =
                "\u0000\u0002\u0000\u0000\u0001\u0002\u0002\u0000\u0000\u0000\u0001\u0208\u0002\n" +
                "";
            return newMessageInfo(DEFAULT_INSTANCE, info, objects);
        }
        // fall through
        case GET_DEFAULT_INSTANCE: {
          return DEFAULT_INSTANCE;
        }
        case GET_PARSER: {
          com.google.protobuf.Parser<androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto> parser = PARSER;
          if (parser == null) {
            synchronized (androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto.class) {
              parser = PARSER;
              if (parser == null) {
                parser =
                    new DefaultInstanceBasedParser<androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto>(
                        DEFAULT_INSTANCE);
                PARSER = parser;
              }
            }
          }
          return parser;
      }
      case GET_MEMOIZED_IS_INITIALIZED: {
        return (byte) 1;
      }
      case SET_MEMOIZED_IS_INITIALIZED: {
        return null;
      }
      }
      throw new UnsupportedOperationException();
    }


    // @@protoc_insertion_point(class_scope:google.test.remote.web.model.HasElementWithIdMatcherProto)
    private static final androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto DEFAULT_INSTANCE;
    static {
      HasElementWithIdMatcherProto defaultInstance = new HasElementWithIdMatcherProto();
      // New instances are implicitly immutable so no need to make
      // immutable.
      DEFAULT_INSTANCE = defaultInstance;
      com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
        HasElementWithIdMatcherProto.class, defaultInstance);
    }

    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithIdMatcherProto getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static volatile com.google.protobuf.Parser<HasElementWithIdMatcherProto> PARSER;

    public static com.google.protobuf.Parser<HasElementWithIdMatcherProto> parser() {
      return DEFAULT_INSTANCE.getParserForType();
    }
  }

  public interface ElementByIdMatcherProtoOrBuilder extends
      // @@protoc_insertion_point(interface_extends:google.test.remote.web.model.ElementByIdMatcherProto)
      com.google.protobuf.MessageLiteOrBuilder {

    /**
     * <code>string id = 1;</code>
     * @return The id.
     */
    java.lang.String getId();
    /**
     * <code>string id = 1;</code>
     * @return The bytes for id.
     */
    com.google.protobuf.ByteString
        getIdBytes();

    /**
     * <code>bytes elementId = 2;</code>
     * @return The elementId.
     */
    com.google.protobuf.ByteString getElementId();

    /**
     * <code>.google.protobuf.Any elementMatcher = 3;</code>
     * @return Whether the elementMatcher field is set.
     */
    boolean hasElementMatcher();
    /**
     * <code>.google.protobuf.Any elementMatcher = 3;</code>
     * @return The elementMatcher.
     */
    com.google.protobuf.Any getElementMatcher();
  }
  /**
   * Protobuf type {@code google.test.remote.web.model.ElementByIdMatcherProto}
   */
  public  static final class ElementByIdMatcherProto extends
      com.google.protobuf.GeneratedMessageLite<
          ElementByIdMatcherProto, ElementByIdMatcherProto.Builder> implements
      // @@protoc_insertion_point(message_implements:google.test.remote.web.model.ElementByIdMatcherProto)
      ElementByIdMatcherProtoOrBuilder {
    private ElementByIdMatcherProto() {
      id_ = "";
      elementId_ = com.google.protobuf.ByteString.EMPTY;
    }
    public static final int ID_FIELD_NUMBER = 1;
    private java.lang.String id_;
    /**
     * <code>string id = 1;</code>
     * @return The id.
     */
    @java.lang.Override
    public java.lang.String getId() {
      return id_;
    }
    /**
     * <code>string id = 1;</code>
     * @return The bytes for id.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getIdBytes() {
      return com.google.protobuf.ByteString.copyFromUtf8(id_);
    }
    /**
     * <code>string id = 1;</code>
     * @param value The id to set.
     */
    private void setId(
        java.lang.String value) {
      java.lang.Class<?> valueClass = value.getClass();
  
      id_ = value;
    }
    /**
     * <code>string id = 1;</code>
     */
    private void clearId() {
      
      id_ = getDefaultInstance().getId();
    }
    /**
     * <code>string id = 1;</code>
     * @param value The bytes for id to set.
     */
    private void setIdBytes(
        com.google.protobuf.ByteString value) {
      checkByteStringIsUtf8(value);
      id_ = value.toStringUtf8();
      
    }

    public static final int ELEMENTID_FIELD_NUMBER = 2;
    private com.google.protobuf.ByteString elementId_;
    /**
     * <code>bytes elementId = 2;</code>
     * @return The elementId.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString getElementId() {
      return elementId_;
    }
    /**
     * <code>bytes elementId = 2;</code>
     * @param value The elementId to set.
     */
    private void setElementId(com.google.protobuf.ByteString value) {
      java.lang.Class<?> valueClass = value.getClass();
  
      elementId_ = value;
    }
    /**
     * <code>bytes elementId = 2;</code>
     */
    private void clearElementId() {
      
      elementId_ = getDefaultInstance().getElementId();
    }

    public static final int ELEMENTMATCHER_FIELD_NUMBER = 3;
    private com.google.protobuf.Any elementMatcher_;
    /**
     * <code>.google.protobuf.Any elementMatcher = 3;</code>
     */
    @java.lang.Override
    public boolean hasElementMatcher() {
      return elementMatcher_ != null;
    }
    /**
     * <code>.google.protobuf.Any elementMatcher = 3;</code>
     */
    @java.lang.Override
    public com.google.protobuf.Any getElementMatcher() {
      return elementMatcher_ == null ? com.google.protobuf.Any.getDefaultInstance() : elementMatcher_;
    }
    /**
     * <code>.google.protobuf.Any elementMatcher = 3;</code>
     */
    private void setElementMatcher(com.google.protobuf.Any value) {
      value.getClass();
  elementMatcher_ = value;
      
      }
    /**
     * <code>.google.protobuf.Any elementMatcher = 3;</code>
     */
    @java.lang.SuppressWarnings({"ReferenceEquality"})
    private void mergeElementMatcher(com.google.protobuf.Any value) {
      value.getClass();
  if (elementMatcher_ != null &&
          elementMatcher_ != com.google.protobuf.Any.getDefaultInstance()) {
        elementMatcher_ =
          com.google.protobuf.Any.newBuilder(elementMatcher_).mergeFrom(value).buildPartial();
      } else {
        elementMatcher_ = value;
      }
      
    }
    /**
     * <code>.google.protobuf.Any elementMatcher = 3;</code>
     */
    private void clearElementMatcher() {  elementMatcher_ = null;
      
    }

    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }

    public static Builder newBuilder() {
      return (Builder) DEFAULT_INSTANCE.createBuilder();
    }
    public static Builder newBuilder(androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto prototype) {
      return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
    }

    /**
     * Protobuf type {@code google.test.remote.web.model.ElementByIdMatcherProto}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageLite.Builder<
          androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto, Builder> implements
        // @@protoc_insertion_point(builder_implements:google.test.remote.web.model.ElementByIdMatcherProto)
        androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProtoOrBuilder {
      // Construct using androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto.newBuilder()
      private Builder() {
        super(DEFAULT_INSTANCE);
      }


      /**
       * <code>string id = 1;</code>
       * @return The id.
       */
      @java.lang.Override
      public java.lang.String getId() {
        return instance.getId();
      }
      /**
       * <code>string id = 1;</code>
       * @return The bytes for id.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getIdBytes() {
        return instance.getIdBytes();
      }
      /**
       * <code>string id = 1;</code>
       * @param value The id to set.
       * @return This builder for chaining.
       */
      public Builder setId(
          java.lang.String value) {
        copyOnWrite();
        instance.setId(value);
        return this;
      }
      /**
       * <code>string id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearId() {
        copyOnWrite();
        instance.clearId();
        return this;
      }
      /**
       * <code>string id = 1;</code>
       * @param value The bytes for id to set.
       * @return This builder for chaining.
       */
      public Builder setIdBytes(
          com.google.protobuf.ByteString value) {
        copyOnWrite();
        instance.setIdBytes(value);
        return this;
      }

      /**
       * <code>bytes elementId = 2;</code>
       * @return The elementId.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString getElementId() {
        return instance.getElementId();
      }
      /**
       * <code>bytes elementId = 2;</code>
       * @param value The elementId to set.
       * @return This builder for chaining.
       */
      public Builder setElementId(com.google.protobuf.ByteString value) {
        copyOnWrite();
        instance.setElementId(value);
        return this;
      }
      /**
       * <code>bytes elementId = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearElementId() {
        copyOnWrite();
        instance.clearElementId();
        return this;
      }

      /**
       * <code>.google.protobuf.Any elementMatcher = 3;</code>
       */
      @java.lang.Override
      public boolean hasElementMatcher() {
        return instance.hasElementMatcher();
      }
      /**
       * <code>.google.protobuf.Any elementMatcher = 3;</code>
       */
      @java.lang.Override
      public com.google.protobuf.Any getElementMatcher() {
        return instance.getElementMatcher();
      }
      /**
       * <code>.google.protobuf.Any elementMatcher = 3;</code>
       */
      public Builder setElementMatcher(com.google.protobuf.Any value) {
        copyOnWrite();
        instance.setElementMatcher(value);
        return this;
        }
      /**
       * <code>.google.protobuf.Any elementMatcher = 3;</code>
       */
      public Builder setElementMatcher(
          com.google.protobuf.Any.Builder builderForValue) {
        copyOnWrite();
        instance.setElementMatcher(builderForValue.build());
        return this;
      }
      /**
       * <code>.google.protobuf.Any elementMatcher = 3;</code>
       */
      public Builder mergeElementMatcher(com.google.protobuf.Any value) {
        copyOnWrite();
        instance.mergeElementMatcher(value);
        return this;
      }
      /**
       * <code>.google.protobuf.Any elementMatcher = 3;</code>
       */
      public Builder clearElementMatcher() {  copyOnWrite();
        instance.clearElementMatcher();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:google.test.remote.web.model.ElementByIdMatcherProto)
    }
    @java.lang.Override
    @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
    protected final java.lang.Object dynamicMethod(
        com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
        java.lang.Object arg0, java.lang.Object arg1) {
      switch (method) {
        case NEW_MUTABLE_INSTANCE: {
          return new androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto();
        }
        case NEW_BUILDER: {
          return new Builder();
        }
        case BUILD_MESSAGE_INFO: {
            java.lang.Object[] objects = new java.lang.Object[] {
              "id_",
              "elementId_",
              "elementMatcher_",
            };
            java.lang.String info =
                "\u0000\u0003\u0000\u0000\u0001\u0003\u0003\u0000\u0000\u0000\u0001\u0208\u0002\n" +
                "\u0003\t";
            return newMessageInfo(DEFAULT_INSTANCE, info, objects);
        }
        // fall through
        case GET_DEFAULT_INSTANCE: {
          return DEFAULT_INSTANCE;
        }
        case GET_PARSER: {
          com.google.protobuf.Parser<androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto> parser = PARSER;
          if (parser == null) {
            synchronized (androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto.class) {
              parser = PARSER;
              if (parser == null) {
                parser =
                    new DefaultInstanceBasedParser<androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto>(
                        DEFAULT_INSTANCE);
                PARSER = parser;
              }
            }
          }
          return parser;
      }
      case GET_MEMOIZED_IS_INITIALIZED: {
        return (byte) 1;
      }
      case SET_MEMOIZED_IS_INITIALIZED: {
        return null;
      }
      }
      throw new UnsupportedOperationException();
    }


    // @@protoc_insertion_point(class_scope:google.test.remote.web.model.ElementByIdMatcherProto)
    private static final androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto DEFAULT_INSTANCE;
    static {
      ElementByIdMatcherProto defaultInstance = new ElementByIdMatcherProto();
      // New instances are implicitly immutable so no need to make
      // immutable.
      DEFAULT_INSTANCE = defaultInstance;
      com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
        ElementByIdMatcherProto.class, defaultInstance);
    }

    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByIdMatcherProto getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static volatile com.google.protobuf.Parser<ElementByIdMatcherProto> PARSER;

    public static com.google.protobuf.Parser<ElementByIdMatcherProto> parser() {
      return DEFAULT_INSTANCE.getParserForType();
    }
  }

  public interface HasElementWithXPathMatcherProtoOrBuilder extends
      // @@protoc_insertion_point(interface_extends:google.test.remote.web.model.HasElementWithXPathMatcherProto)
      com.google.protobuf.MessageLiteOrBuilder {

    /**
     * <code>string id = 1;</code>
     * @return The id.
     */
    java.lang.String getId();
    /**
     * <code>string id = 1;</code>
     * @return The bytes for id.
     */
    com.google.protobuf.ByteString
        getIdBytes();

    /**
     * <code>bytes xpath = 2;</code>
     * @return The xpath.
     */
    com.google.protobuf.ByteString getXpath();
  }
  /**
   * Protobuf type {@code google.test.remote.web.model.HasElementWithXPathMatcherProto}
   */
  public  static final class HasElementWithXPathMatcherProto extends
      com.google.protobuf.GeneratedMessageLite<
          HasElementWithXPathMatcherProto, HasElementWithXPathMatcherProto.Builder> implements
      // @@protoc_insertion_point(message_implements:google.test.remote.web.model.HasElementWithXPathMatcherProto)
      HasElementWithXPathMatcherProtoOrBuilder {
    private HasElementWithXPathMatcherProto() {
      id_ = "";
      xpath_ = com.google.protobuf.ByteString.EMPTY;
    }
    public static final int ID_FIELD_NUMBER = 1;
    private java.lang.String id_;
    /**
     * <code>string id = 1;</code>
     * @return The id.
     */
    @java.lang.Override
    public java.lang.String getId() {
      return id_;
    }
    /**
     * <code>string id = 1;</code>
     * @return The bytes for id.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getIdBytes() {
      return com.google.protobuf.ByteString.copyFromUtf8(id_);
    }
    /**
     * <code>string id = 1;</code>
     * @param value The id to set.
     */
    private void setId(
        java.lang.String value) {
      java.lang.Class<?> valueClass = value.getClass();
  
      id_ = value;
    }
    /**
     * <code>string id = 1;</code>
     */
    private void clearId() {
      
      id_ = getDefaultInstance().getId();
    }
    /**
     * <code>string id = 1;</code>
     * @param value The bytes for id to set.
     */
    private void setIdBytes(
        com.google.protobuf.ByteString value) {
      checkByteStringIsUtf8(value);
      id_ = value.toStringUtf8();
      
    }

    public static final int XPATH_FIELD_NUMBER = 2;
    private com.google.protobuf.ByteString xpath_;
    /**
     * <code>bytes xpath = 2;</code>
     * @return The xpath.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString getXpath() {
      return xpath_;
    }
    /**
     * <code>bytes xpath = 2;</code>
     * @param value The xpath to set.
     */
    private void setXpath(com.google.protobuf.ByteString value) {
      java.lang.Class<?> valueClass = value.getClass();
  
      xpath_ = value;
    }
    /**
     * <code>bytes xpath = 2;</code>
     */
    private void clearXpath() {
      
      xpath_ = getDefaultInstance().getXpath();
    }

    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }

    public static Builder newBuilder() {
      return (Builder) DEFAULT_INSTANCE.createBuilder();
    }
    public static Builder newBuilder(androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto prototype) {
      return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
    }

    /**
     * Protobuf type {@code google.test.remote.web.model.HasElementWithXPathMatcherProto}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageLite.Builder<
          androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto, Builder> implements
        // @@protoc_insertion_point(builder_implements:google.test.remote.web.model.HasElementWithXPathMatcherProto)
        androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProtoOrBuilder {
      // Construct using androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto.newBuilder()
      private Builder() {
        super(DEFAULT_INSTANCE);
      }


      /**
       * <code>string id = 1;</code>
       * @return The id.
       */
      @java.lang.Override
      public java.lang.String getId() {
        return instance.getId();
      }
      /**
       * <code>string id = 1;</code>
       * @return The bytes for id.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getIdBytes() {
        return instance.getIdBytes();
      }
      /**
       * <code>string id = 1;</code>
       * @param value The id to set.
       * @return This builder for chaining.
       */
      public Builder setId(
          java.lang.String value) {
        copyOnWrite();
        instance.setId(value);
        return this;
      }
      /**
       * <code>string id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearId() {
        copyOnWrite();
        instance.clearId();
        return this;
      }
      /**
       * <code>string id = 1;</code>
       * @param value The bytes for id to set.
       * @return This builder for chaining.
       */
      public Builder setIdBytes(
          com.google.protobuf.ByteString value) {
        copyOnWrite();
        instance.setIdBytes(value);
        return this;
      }

      /**
       * <code>bytes xpath = 2;</code>
       * @return The xpath.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString getXpath() {
        return instance.getXpath();
      }
      /**
       * <code>bytes xpath = 2;</code>
       * @param value The xpath to set.
       * @return This builder for chaining.
       */
      public Builder setXpath(com.google.protobuf.ByteString value) {
        copyOnWrite();
        instance.setXpath(value);
        return this;
      }
      /**
       * <code>bytes xpath = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearXpath() {
        copyOnWrite();
        instance.clearXpath();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:google.test.remote.web.model.HasElementWithXPathMatcherProto)
    }
    @java.lang.Override
    @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
    protected final java.lang.Object dynamicMethod(
        com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
        java.lang.Object arg0, java.lang.Object arg1) {
      switch (method) {
        case NEW_MUTABLE_INSTANCE: {
          return new androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto();
        }
        case NEW_BUILDER: {
          return new Builder();
        }
        case BUILD_MESSAGE_INFO: {
            java.lang.Object[] objects = new java.lang.Object[] {
              "id_",
              "xpath_",
            };
            java.lang.String info =
                "\u0000\u0002\u0000\u0000\u0001\u0002\u0002\u0000\u0000\u0000\u0001\u0208\u0002\n" +
                "";
            return newMessageInfo(DEFAULT_INSTANCE, info, objects);
        }
        // fall through
        case GET_DEFAULT_INSTANCE: {
          return DEFAULT_INSTANCE;
        }
        case GET_PARSER: {
          com.google.protobuf.Parser<androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto> parser = PARSER;
          if (parser == null) {
            synchronized (androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto.class) {
              parser = PARSER;
              if (parser == null) {
                parser =
                    new DefaultInstanceBasedParser<androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto>(
                        DEFAULT_INSTANCE);
                PARSER = parser;
              }
            }
          }
          return parser;
      }
      case GET_MEMOIZED_IS_INITIALIZED: {
        return (byte) 1;
      }
      case SET_MEMOIZED_IS_INITIALIZED: {
        return null;
      }
      }
      throw new UnsupportedOperationException();
    }


    // @@protoc_insertion_point(class_scope:google.test.remote.web.model.HasElementWithXPathMatcherProto)
    private static final androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto DEFAULT_INSTANCE;
    static {
      HasElementWithXPathMatcherProto defaultInstance = new HasElementWithXPathMatcherProto();
      // New instances are implicitly immutable so no need to make
      // immutable.
      DEFAULT_INSTANCE = defaultInstance;
      com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
        HasElementWithXPathMatcherProto.class, defaultInstance);
    }

    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.HasElementWithXPathMatcherProto getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static volatile com.google.protobuf.Parser<HasElementWithXPathMatcherProto> PARSER;

    public static com.google.protobuf.Parser<HasElementWithXPathMatcherProto> parser() {
      return DEFAULT_INSTANCE.getParserForType();
    }
  }

  public interface ElementByXPathMatcherProtoOrBuilder extends
      // @@protoc_insertion_point(interface_extends:google.test.remote.web.model.ElementByXPathMatcherProto)
      com.google.protobuf.MessageLiteOrBuilder {

    /**
     * <code>string id = 1;</code>
     * @return The id.
     */
    java.lang.String getId();
    /**
     * <code>string id = 1;</code>
     * @return The bytes for id.
     */
    com.google.protobuf.ByteString
        getIdBytes();

    /**
     * <code>bytes xpath = 2;</code>
     * @return The xpath.
     */
    com.google.protobuf.ByteString getXpath();

    /**
     * <code>.google.protobuf.Any elementMatcher = 3;</code>
     * @return Whether the elementMatcher field is set.
     */
    boolean hasElementMatcher();
    /**
     * <code>.google.protobuf.Any elementMatcher = 3;</code>
     * @return The elementMatcher.
     */
    com.google.protobuf.Any getElementMatcher();
  }
  /**
   * Protobuf type {@code google.test.remote.web.model.ElementByXPathMatcherProto}
   */
  public  static final class ElementByXPathMatcherProto extends
      com.google.protobuf.GeneratedMessageLite<
          ElementByXPathMatcherProto, ElementByXPathMatcherProto.Builder> implements
      // @@protoc_insertion_point(message_implements:google.test.remote.web.model.ElementByXPathMatcherProto)
      ElementByXPathMatcherProtoOrBuilder {
    private ElementByXPathMatcherProto() {
      id_ = "";
      xpath_ = com.google.protobuf.ByteString.EMPTY;
    }
    public static final int ID_FIELD_NUMBER = 1;
    private java.lang.String id_;
    /**
     * <code>string id = 1;</code>
     * @return The id.
     */
    @java.lang.Override
    public java.lang.String getId() {
      return id_;
    }
    /**
     * <code>string id = 1;</code>
     * @return The bytes for id.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getIdBytes() {
      return com.google.protobuf.ByteString.copyFromUtf8(id_);
    }
    /**
     * <code>string id = 1;</code>
     * @param value The id to set.
     */
    private void setId(
        java.lang.String value) {
      java.lang.Class<?> valueClass = value.getClass();
  
      id_ = value;
    }
    /**
     * <code>string id = 1;</code>
     */
    private void clearId() {
      
      id_ = getDefaultInstance().getId();
    }
    /**
     * <code>string id = 1;</code>
     * @param value The bytes for id to set.
     */
    private void setIdBytes(
        com.google.protobuf.ByteString value) {
      checkByteStringIsUtf8(value);
      id_ = value.toStringUtf8();
      
    }

    public static final int XPATH_FIELD_NUMBER = 2;
    private com.google.protobuf.ByteString xpath_;
    /**
     * <code>bytes xpath = 2;</code>
     * @return The xpath.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString getXpath() {
      return xpath_;
    }
    /**
     * <code>bytes xpath = 2;</code>
     * @param value The xpath to set.
     */
    private void setXpath(com.google.protobuf.ByteString value) {
      java.lang.Class<?> valueClass = value.getClass();
  
      xpath_ = value;
    }
    /**
     * <code>bytes xpath = 2;</code>
     */
    private void clearXpath() {
      
      xpath_ = getDefaultInstance().getXpath();
    }

    public static final int ELEMENTMATCHER_FIELD_NUMBER = 3;
    private com.google.protobuf.Any elementMatcher_;
    /**
     * <code>.google.protobuf.Any elementMatcher = 3;</code>
     */
    @java.lang.Override
    public boolean hasElementMatcher() {
      return elementMatcher_ != null;
    }
    /**
     * <code>.google.protobuf.Any elementMatcher = 3;</code>
     */
    @java.lang.Override
    public com.google.protobuf.Any getElementMatcher() {
      return elementMatcher_ == null ? com.google.protobuf.Any.getDefaultInstance() : elementMatcher_;
    }
    /**
     * <code>.google.protobuf.Any elementMatcher = 3;</code>
     */
    private void setElementMatcher(com.google.protobuf.Any value) {
      value.getClass();
  elementMatcher_ = value;
      
      }
    /**
     * <code>.google.protobuf.Any elementMatcher = 3;</code>
     */
    @java.lang.SuppressWarnings({"ReferenceEquality"})
    private void mergeElementMatcher(com.google.protobuf.Any value) {
      value.getClass();
  if (elementMatcher_ != null &&
          elementMatcher_ != com.google.protobuf.Any.getDefaultInstance()) {
        elementMatcher_ =
          com.google.protobuf.Any.newBuilder(elementMatcher_).mergeFrom(value).buildPartial();
      } else {
        elementMatcher_ = value;
      }
      
    }
    /**
     * <code>.google.protobuf.Any elementMatcher = 3;</code>
     */
    private void clearElementMatcher() {  elementMatcher_ = null;
      
    }

    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }

    public static Builder newBuilder() {
      return (Builder) DEFAULT_INSTANCE.createBuilder();
    }
    public static Builder newBuilder(androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto prototype) {
      return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
    }

    /**
     * Protobuf type {@code google.test.remote.web.model.ElementByXPathMatcherProto}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageLite.Builder<
          androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto, Builder> implements
        // @@protoc_insertion_point(builder_implements:google.test.remote.web.model.ElementByXPathMatcherProto)
        androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProtoOrBuilder {
      // Construct using androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto.newBuilder()
      private Builder() {
        super(DEFAULT_INSTANCE);
      }


      /**
       * <code>string id = 1;</code>
       * @return The id.
       */
      @java.lang.Override
      public java.lang.String getId() {
        return instance.getId();
      }
      /**
       * <code>string id = 1;</code>
       * @return The bytes for id.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getIdBytes() {
        return instance.getIdBytes();
      }
      /**
       * <code>string id = 1;</code>
       * @param value The id to set.
       * @return This builder for chaining.
       */
      public Builder setId(
          java.lang.String value) {
        copyOnWrite();
        instance.setId(value);
        return this;
      }
      /**
       * <code>string id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearId() {
        copyOnWrite();
        instance.clearId();
        return this;
      }
      /**
       * <code>string id = 1;</code>
       * @param value The bytes for id to set.
       * @return This builder for chaining.
       */
      public Builder setIdBytes(
          com.google.protobuf.ByteString value) {
        copyOnWrite();
        instance.setIdBytes(value);
        return this;
      }

      /**
       * <code>bytes xpath = 2;</code>
       * @return The xpath.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString getXpath() {
        return instance.getXpath();
      }
      /**
       * <code>bytes xpath = 2;</code>
       * @param value The xpath to set.
       * @return This builder for chaining.
       */
      public Builder setXpath(com.google.protobuf.ByteString value) {
        copyOnWrite();
        instance.setXpath(value);
        return this;
      }
      /**
       * <code>bytes xpath = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearXpath() {
        copyOnWrite();
        instance.clearXpath();
        return this;
      }

      /**
       * <code>.google.protobuf.Any elementMatcher = 3;</code>
       */
      @java.lang.Override
      public boolean hasElementMatcher() {
        return instance.hasElementMatcher();
      }
      /**
       * <code>.google.protobuf.Any elementMatcher = 3;</code>
       */
      @java.lang.Override
      public com.google.protobuf.Any getElementMatcher() {
        return instance.getElementMatcher();
      }
      /**
       * <code>.google.protobuf.Any elementMatcher = 3;</code>
       */
      public Builder setElementMatcher(com.google.protobuf.Any value) {
        copyOnWrite();
        instance.setElementMatcher(value);
        return this;
        }
      /**
       * <code>.google.protobuf.Any elementMatcher = 3;</code>
       */
      public Builder setElementMatcher(
          com.google.protobuf.Any.Builder builderForValue) {
        copyOnWrite();
        instance.setElementMatcher(builderForValue.build());
        return this;
      }
      /**
       * <code>.google.protobuf.Any elementMatcher = 3;</code>
       */
      public Builder mergeElementMatcher(com.google.protobuf.Any value) {
        copyOnWrite();
        instance.mergeElementMatcher(value);
        return this;
      }
      /**
       * <code>.google.protobuf.Any elementMatcher = 3;</code>
       */
      public Builder clearElementMatcher() {  copyOnWrite();
        instance.clearElementMatcher();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:google.test.remote.web.model.ElementByXPathMatcherProto)
    }
    @java.lang.Override
    @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
    protected final java.lang.Object dynamicMethod(
        com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
        java.lang.Object arg0, java.lang.Object arg1) {
      switch (method) {
        case NEW_MUTABLE_INSTANCE: {
          return new androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto();
        }
        case NEW_BUILDER: {
          return new Builder();
        }
        case BUILD_MESSAGE_INFO: {
            java.lang.Object[] objects = new java.lang.Object[] {
              "id_",
              "xpath_",
              "elementMatcher_",
            };
            java.lang.String info =
                "\u0000\u0003\u0000\u0000\u0001\u0003\u0003\u0000\u0000\u0000\u0001\u0208\u0002\n" +
                "\u0003\t";
            return newMessageInfo(DEFAULT_INSTANCE, info, objects);
        }
        // fall through
        case GET_DEFAULT_INSTANCE: {
          return DEFAULT_INSTANCE;
        }
        case GET_PARSER: {
          com.google.protobuf.Parser<androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto> parser = PARSER;
          if (parser == null) {
            synchronized (androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto.class) {
              parser = PARSER;
              if (parser == null) {
                parser =
                    new DefaultInstanceBasedParser<androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto>(
                        DEFAULT_INSTANCE);
                PARSER = parser;
              }
            }
          }
          return parser;
      }
      case GET_MEMOIZED_IS_INITIALIZED: {
        return (byte) 1;
      }
      case SET_MEMOIZED_IS_INITIALIZED: {
        return null;
      }
      }
      throw new UnsupportedOperationException();
    }


    // @@protoc_insertion_point(class_scope:google.test.remote.web.model.ElementByXPathMatcherProto)
    private static final androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto DEFAULT_INSTANCE;
    static {
      ElementByXPathMatcherProto defaultInstance = new ElementByXPathMatcherProto();
      // New instances are implicitly immutable so no need to make
      // immutable.
      DEFAULT_INSTANCE = defaultInstance;
      com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
        ElementByXPathMatcherProto.class, defaultInstance);
    }

    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.ElementByXPathMatcherProto getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static volatile com.google.protobuf.Parser<ElementByXPathMatcherProto> PARSER;

    public static com.google.protobuf.Parser<ElementByXPathMatcherProto> parser() {
      return DEFAULT_INSTANCE.getParserForType();
    }
  }

  public interface WithTextContentMatcherProtoOrBuilder extends
      // @@protoc_insertion_point(interface_extends:google.test.remote.web.model.WithTextContentMatcherProto)
      com.google.protobuf.MessageLiteOrBuilder {

    /**
     * <code>string id = 1;</code>
     * @return The id.
     */
    java.lang.String getId();
    /**
     * <code>string id = 1;</code>
     * @return The bytes for id.
     */
    com.google.protobuf.ByteString
        getIdBytes();

    /**
     * <code>.google.protobuf.Any textContentMatcher = 2;</code>
     * @return Whether the textContentMatcher field is set.
     */
    boolean hasTextContentMatcher();
    /**
     * <code>.google.protobuf.Any textContentMatcher = 2;</code>
     * @return The textContentMatcher.
     */
    com.google.protobuf.Any getTextContentMatcher();
  }
  /**
   * Protobuf type {@code google.test.remote.web.model.WithTextContentMatcherProto}
   */
  public  static final class WithTextContentMatcherProto extends
      com.google.protobuf.GeneratedMessageLite<
          WithTextContentMatcherProto, WithTextContentMatcherProto.Builder> implements
      // @@protoc_insertion_point(message_implements:google.test.remote.web.model.WithTextContentMatcherProto)
      WithTextContentMatcherProtoOrBuilder {
    private WithTextContentMatcherProto() {
      id_ = "";
    }
    public static final int ID_FIELD_NUMBER = 1;
    private java.lang.String id_;
    /**
     * <code>string id = 1;</code>
     * @return The id.
     */
    @java.lang.Override
    public java.lang.String getId() {
      return id_;
    }
    /**
     * <code>string id = 1;</code>
     * @return The bytes for id.
     */
    @java.lang.Override
    public com.google.protobuf.ByteString
        getIdBytes() {
      return com.google.protobuf.ByteString.copyFromUtf8(id_);
    }
    /**
     * <code>string id = 1;</code>
     * @param value The id to set.
     */
    private void setId(
        java.lang.String value) {
      java.lang.Class<?> valueClass = value.getClass();
  
      id_ = value;
    }
    /**
     * <code>string id = 1;</code>
     */
    private void clearId() {
      
      id_ = getDefaultInstance().getId();
    }
    /**
     * <code>string id = 1;</code>
     * @param value The bytes for id to set.
     */
    private void setIdBytes(
        com.google.protobuf.ByteString value) {
      checkByteStringIsUtf8(value);
      id_ = value.toStringUtf8();
      
    }

    public static final int TEXTCONTENTMATCHER_FIELD_NUMBER = 2;
    private com.google.protobuf.Any textContentMatcher_;
    /**
     * <code>.google.protobuf.Any textContentMatcher = 2;</code>
     */
    @java.lang.Override
    public boolean hasTextContentMatcher() {
      return textContentMatcher_ != null;
    }
    /**
     * <code>.google.protobuf.Any textContentMatcher = 2;</code>
     */
    @java.lang.Override
    public com.google.protobuf.Any getTextContentMatcher() {
      return textContentMatcher_ == null ? com.google.protobuf.Any.getDefaultInstance() : textContentMatcher_;
    }
    /**
     * <code>.google.protobuf.Any textContentMatcher = 2;</code>
     */
    private void setTextContentMatcher(com.google.protobuf.Any value) {
      value.getClass();
  textContentMatcher_ = value;
      
      }
    /**
     * <code>.google.protobuf.Any textContentMatcher = 2;</code>
     */
    @java.lang.SuppressWarnings({"ReferenceEquality"})
    private void mergeTextContentMatcher(com.google.protobuf.Any value) {
      value.getClass();
  if (textContentMatcher_ != null &&
          textContentMatcher_ != com.google.protobuf.Any.getDefaultInstance()) {
        textContentMatcher_ =
          com.google.protobuf.Any.newBuilder(textContentMatcher_).mergeFrom(value).buildPartial();
      } else {
        textContentMatcher_ = value;
      }
      
    }
    /**
     * <code>.google.protobuf.Any textContentMatcher = 2;</code>
     */
    private void clearTextContentMatcher() {  textContentMatcher_ = null;
      
    }

    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, data, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return parseDelimitedFrom(DEFAULT_INSTANCE, input, extensionRegistry);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input);
    }
    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageLite.parseFrom(
          DEFAULT_INSTANCE, input, extensionRegistry);
    }

    public static Builder newBuilder() {
      return (Builder) DEFAULT_INSTANCE.createBuilder();
    }
    public static Builder newBuilder(androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto prototype) {
      return (Builder) DEFAULT_INSTANCE.createBuilder(prototype);
    }

    /**
     * Protobuf type {@code google.test.remote.web.model.WithTextContentMatcherProto}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageLite.Builder<
          androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto, Builder> implements
        // @@protoc_insertion_point(builder_implements:google.test.remote.web.model.WithTextContentMatcherProto)
        androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProtoOrBuilder {
      // Construct using androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto.newBuilder()
      private Builder() {
        super(DEFAULT_INSTANCE);
      }


      /**
       * <code>string id = 1;</code>
       * @return The id.
       */
      @java.lang.Override
      public java.lang.String getId() {
        return instance.getId();
      }
      /**
       * <code>string id = 1;</code>
       * @return The bytes for id.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getIdBytes() {
        return instance.getIdBytes();
      }
      /**
       * <code>string id = 1;</code>
       * @param value The id to set.
       * @return This builder for chaining.
       */
      public Builder setId(
          java.lang.String value) {
        copyOnWrite();
        instance.setId(value);
        return this;
      }
      /**
       * <code>string id = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearId() {
        copyOnWrite();
        instance.clearId();
        return this;
      }
      /**
       * <code>string id = 1;</code>
       * @param value The bytes for id to set.
       * @return This builder for chaining.
       */
      public Builder setIdBytes(
          com.google.protobuf.ByteString value) {
        copyOnWrite();
        instance.setIdBytes(value);
        return this;
      }

      /**
       * <code>.google.protobuf.Any textContentMatcher = 2;</code>
       */
      @java.lang.Override
      public boolean hasTextContentMatcher() {
        return instance.hasTextContentMatcher();
      }
      /**
       * <code>.google.protobuf.Any textContentMatcher = 2;</code>
       */
      @java.lang.Override
      public com.google.protobuf.Any getTextContentMatcher() {
        return instance.getTextContentMatcher();
      }
      /**
       * <code>.google.protobuf.Any textContentMatcher = 2;</code>
       */
      public Builder setTextContentMatcher(com.google.protobuf.Any value) {
        copyOnWrite();
        instance.setTextContentMatcher(value);
        return this;
        }
      /**
       * <code>.google.protobuf.Any textContentMatcher = 2;</code>
       */
      public Builder setTextContentMatcher(
          com.google.protobuf.Any.Builder builderForValue) {
        copyOnWrite();
        instance.setTextContentMatcher(builderForValue.build());
        return this;
      }
      /**
       * <code>.google.protobuf.Any textContentMatcher = 2;</code>
       */
      public Builder mergeTextContentMatcher(com.google.protobuf.Any value) {
        copyOnWrite();
        instance.mergeTextContentMatcher(value);
        return this;
      }
      /**
       * <code>.google.protobuf.Any textContentMatcher = 2;</code>
       */
      public Builder clearTextContentMatcher() {  copyOnWrite();
        instance.clearTextContentMatcher();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:google.test.remote.web.model.WithTextContentMatcherProto)
    }
    @java.lang.Override
    @java.lang.SuppressWarnings({"unchecked", "fallthrough"})
    protected final java.lang.Object dynamicMethod(
        com.google.protobuf.GeneratedMessageLite.MethodToInvoke method,
        java.lang.Object arg0, java.lang.Object arg1) {
      switch (method) {
        case NEW_MUTABLE_INSTANCE: {
          return new androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto();
        }
        case NEW_BUILDER: {
          return new Builder();
        }
        case BUILD_MESSAGE_INFO: {
            java.lang.Object[] objects = new java.lang.Object[] {
              "id_",
              "textContentMatcher_",
            };
            java.lang.String info =
                "\u0000\u0002\u0000\u0000\u0001\u0002\u0002\u0000\u0000\u0000\u0001\u0208\u0002\t" +
                "";
            return newMessageInfo(DEFAULT_INSTANCE, info, objects);
        }
        // fall through
        case GET_DEFAULT_INSTANCE: {
          return DEFAULT_INSTANCE;
        }
        case GET_PARSER: {
          com.google.protobuf.Parser<androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto> parser = PARSER;
          if (parser == null) {
            synchronized (androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto.class) {
              parser = PARSER;
              if (parser == null) {
                parser =
                    new DefaultInstanceBasedParser<androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto>(
                        DEFAULT_INSTANCE);
                PARSER = parser;
              }
            }
          }
          return parser;
      }
      case GET_MEMOIZED_IS_INITIALIZED: {
        return (byte) 1;
      }
      case SET_MEMOIZED_IS_INITIALIZED: {
        return null;
      }
      }
      throw new UnsupportedOperationException();
    }


    // @@protoc_insertion_point(class_scope:google.test.remote.web.model.WithTextContentMatcherProto)
    private static final androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto DEFAULT_INSTANCE;
    static {
      WithTextContentMatcherProto defaultInstance = new WithTextContentMatcherProto();
      // New instances are implicitly immutable so no need to make
      // immutable.
      DEFAULT_INSTANCE = defaultInstance;
      com.google.protobuf.GeneratedMessageLite.registerDefaultInstance(
        WithTextContentMatcherProto.class, defaultInstance);
    }

    public static androidx.test.espresso.web.proto.matcher.RemoteWebMatchers.WithTextContentMatcherProto getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    private static volatile com.google.protobuf.Parser<WithTextContentMatcherProto> PARSER;

    public static com.google.protobuf.Parser<WithTextContentMatcherProto> parser() {
      return DEFAULT_INSTANCE.getParserForType();
    }
  }


  static {
  }

  // @@protoc_insertion_point(outer_class_scope)
}