content: // Generated by the protocol buffer compiler.  DO NOT EDIT!
  // source: TrackingIOInfo.proto
  
  package emu.grasscutter.net.proto;
  
  public final class TrackingIOInfoOuterClass {
    private TrackingIOInfoOuterClass() {}
    public static void registerAllExtensions(
        com.google.protobuf.ExtensionRegistryLite registry) {
    }
  
    public static void registerAllExtensions(
        com.google.protobuf.ExtensionRegistry registry) {
      registerAllExtensions(
          (com.google.protobuf.ExtensionRegistryLite) registry);
    }
    public interface TrackingIOInfoOrBuilder extends
        // @@protoc_insertion_point(interface_extends:TrackingIOInfo)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>string rydevicetype = 2;</code>
       * @return The rydevicetype.
       */
      java.lang.String getRydevicetype();
      /**
       * <code>string rydevicetype = 2;</code>
       * @return The bytes for rydevicetype.
       */
      com.google.protobuf.ByteString
          getRydevicetypeBytes();
  
      /**
       * <code>string clientTz = 6;</code>
       * @return The clientTz.
       */
      java.lang.String getClientTz();
      /**
       * <code>string clientTz = 6;</code>
       * @return The bytes for clientTz.
       */
      com.google.protobuf.ByteString
          getClientTzBytes();
  
      /**
       * <code>string Unk3300_CCOGBICMHKG = 15;</code>
       * @return The unk3300CCOGBICMHKG.
       */
      java.lang.String getUnk3300CCOGBICMHKG();
      /**
       * <code>string Unk3300_CCOGBICMHKG = 15;</code>
       * @return The bytes for unk3300CCOGBICMHKG.
       */
      com.google.protobuf.ByteString
          getUnk3300CCOGBICMHKGBytes();
  
      /**
       * <code>string Unk3300_NMDNLHLAKAM = 11;</code>
       * @return The unk3300NMDNLHLAKAM.
       */
      java.lang.String getUnk3300NMDNLHLAKAM();
      /**
       * <code>string Unk3300_NMDNLHLAKAM = 11;</code>
       * @return The bytes for unk3300NMDNLHLAKAM.
       */
      com.google.protobuf.ByteString
          getUnk3300NMDNLHLAKAMBytes();
  
      /**
       * <code>string Unk3300_PIBFPDAMJLE = 5;</code>
       * @return The unk3300PIBFPDAMJLE.
       */
      java.lang.String getUnk3300PIBFPDAMJLE();
      /**
       * <code>string Unk3300_PIBFPDAMJLE = 5;</code>
       * @return The bytes for unk3300PIBFPDAMJLE.
       */
      com.google.protobuf.ByteString
          getUnk3300PIBFPDAMJLEBytes();
  
      /**
       * <code>string Unk3300_DJHKHEFPCDK = 9;</code>
       * @return The unk3300DJHKHEFPCDK.
       */
      java.lang.String getUnk3300DJHKHEFPCDK();
      /**
       * <code>string Unk3300_DJHKHEFPCDK = 9;</code>
       * @return The bytes for unk3300DJHKHEFPCDK.
       */
      com.google.protobuf.ByteString
          getUnk3300DJHKHEFPCDKBytes();
  
      /**
       * <code>string Unk3300_CNPIGDOEJPB = 3;</code>
       * @return The unk3300CNPIGDOEJPB.
       */
      java.lang.String getUnk3300CNPIGDOEJPB();
      /**
       * <code>string Unk3300_CNPIGDOEJPB = 3;</code>
       * @return The bytes for unk3300CNPIGDOEJPB.
       */
      com.google.protobuf.ByteString
          getUnk3300CNPIGDOEJPBBytes();
    }
    /**
     * Protobuf type {@code TrackingIOInfo}
     */
    public static final class TrackingIOInfo extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:TrackingIOInfo)
        TrackingIOInfoOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use TrackingIOInfo.newBuilder() to construct.
      private TrackingIOInfo(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private TrackingIOInfo() {
        rydevicetype_ = "";
        clientTz_ = "";
        unk3300CCOGBICMHKG_ = "";
        unk3300NMDNLHLAKAM_ = "";
        unk3300PIBFPDAMJLE_ = "";
        unk3300DJHKHEFPCDK_ = "";
        unk3300CNPIGDOEJPB_ = "";
      }
  
      @java.lang.Override
      @SuppressWarnings({"unused"})
      protected java.lang.Object newInstance(
          UnusedPrivateParameter unused) {
        return new TrackingIOInfo();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private TrackingIOInfo(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              case 18: {
                java.lang.String s = input.readStringRequireUtf8();
  
                rydevicetype_ = s;
                break;
              }
              case 26: {
                java.lang.String s = input.readStringRequireUtf8();
  
                unk3300CNPIGDOEJPB_ = s;
                break;
              }
              case 42: {
                java.lang.String s = input.readStringRequireUtf8();
  
                unk3300PIBFPDAMJLE_ = s;
                break;
              }
              case 50: {
                java.lang.String s = input.readStringRequireUtf8();
  
                clientTz_ = s;
                break;
              }
              case 74: {
                java.lang.String s = input.readStringRequireUtf8();
  
                unk3300DJHKHEFPCDK_ = s;
                break;
              }
              case 90: {
                java.lang.String s = input.readStringRequireUtf8();
  
                unk3300NMDNLHLAKAM_ = s;
                break;
              }
              case 122: {
                java.lang.String s = input.readStringRequireUtf8();
  
                unk3300CCOGBICMHKG_ = s;
                break;
              }
              default: {
                if (!parseUnknownField(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return emu.grasscutter.net.proto.TrackingIOInfoOuterClass.internal_static_TrackingIOInfo_descriptor;
      }
  
      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return emu.grasscutter.net.proto.TrackingIOInfoOuterClass.internal_static_TrackingIOInfo_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo.class, emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo.Builder.class);
      }
  
      public static final int RYDEVICETYPE_FIELD_NUMBER = 2;
      private volatile java.lang.Object rydevicetype_;
      /**
       * <code>string rydevicetype = 2;</code>
       * @return The rydevicetype.
       */
      @java.lang.Override
      public java.lang.String getRydevicetype() {
        java.lang.Object ref = rydevicetype_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          rydevicetype_ = s;
          return s;
        }
      }
      /**
       * <code>string rydevicetype = 2;</code>
       * @return The bytes for rydevicetype.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getRydevicetypeBytes() {
        java.lang.Object ref = rydevicetype_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          rydevicetype_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int CLIENTTZ_FIELD_NUMBER = 6;
      private volatile java.lang.Object clientTz_;
      /**
       * <code>string clientTz = 6;</code>
       * @return The clientTz.
       */
      @java.lang.Override
      public java.lang.String getClientTz() {
        java.lang.Object ref = clientTz_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          clientTz_ = s;
          return s;
        }
      }
      /**
       * <code>string clientTz = 6;</code>
       * @return The bytes for clientTz.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getClientTzBytes() {
        java.lang.Object ref = clientTz_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          clientTz_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int UNK3300_CCOGBICMHKG_FIELD_NUMBER = 15;
      private volatile java.lang.Object unk3300CCOGBICMHKG_;
      /**
       * <code>string Unk3300_CCOGBICMHKG = 15;</code>
       * @return The unk3300CCOGBICMHKG.
       */
      @java.lang.Override
      public java.lang.String getUnk3300CCOGBICMHKG() {
        java.lang.Object ref = unk3300CCOGBICMHKG_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          unk3300CCOGBICMHKG_ = s;
          return s;
        }
      }
      /**
       * <code>string Unk3300_CCOGBICMHKG = 15;</code>
       * @return The bytes for unk3300CCOGBICMHKG.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getUnk3300CCOGBICMHKGBytes() {
        java.lang.Object ref = unk3300CCOGBICMHKG_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          unk3300CCOGBICMHKG_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int UNK3300_NMDNLHLAKAM_FIELD_NUMBER = 11;
      private volatile java.lang.Object unk3300NMDNLHLAKAM_;
      /**
       * <code>string Unk3300_NMDNLHLAKAM = 11;</code>
       * @return The unk3300NMDNLHLAKAM.
       */
      @java.lang.Override
      public java.lang.String getUnk3300NMDNLHLAKAM() {
        java.lang.Object ref = unk3300NMDNLHLAKAM_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          unk3300NMDNLHLAKAM_ = s;
          return s;
        }
      }
      /**
       * <code>string Unk3300_NMDNLHLAKAM = 11;</code>
       * @return The bytes for unk3300NMDNLHLAKAM.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getUnk3300NMDNLHLAKAMBytes() {
        java.lang.Object ref = unk3300NMDNLHLAKAM_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          unk3300NMDNLHLAKAM_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int UNK3300_PIBFPDAMJLE_FIELD_NUMBER = 5;
      private volatile java.lang.Object unk3300PIBFPDAMJLE_;
      /**
       * <code>string Unk3300_PIBFPDAMJLE = 5;</code>
       * @return The unk3300PIBFPDAMJLE.
       */
      @java.lang.Override
      public java.lang.String getUnk3300PIBFPDAMJLE() {
        java.lang.Object ref = unk3300PIBFPDAMJLE_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          unk3300PIBFPDAMJLE_ = s;
          return s;
        }
      }
      /**
       * <code>string Unk3300_PIBFPDAMJLE = 5;</code>
       * @return The bytes for unk3300PIBFPDAMJLE.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getUnk3300PIBFPDAMJLEBytes() {
        java.lang.Object ref = unk3300PIBFPDAMJLE_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          unk3300PIBFPDAMJLE_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int UNK3300_DJHKHEFPCDK_FIELD_NUMBER = 9;
      private volatile java.lang.Object unk3300DJHKHEFPCDK_;
      /**
       * <code>string Unk3300_DJHKHEFPCDK = 9;</code>
       * @return The unk3300DJHKHEFPCDK.
       */
      @java.lang.Override
      public java.lang.String getUnk3300DJHKHEFPCDK() {
        java.lang.Object ref = unk3300DJHKHEFPCDK_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          unk3300DJHKHEFPCDK_ = s;
          return s;
        }
      }
      /**
       * <code>string Unk3300_DJHKHEFPCDK = 9;</code>
       * @return The bytes for unk3300DJHKHEFPCDK.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getUnk3300DJHKHEFPCDKBytes() {
        java.lang.Object ref = unk3300DJHKHEFPCDK_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          unk3300DJHKHEFPCDK_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int UNK3300_CNPIGDOEJPB_FIELD_NUMBER = 3;
      private volatile java.lang.Object unk3300CNPIGDOEJPB_;
      /**
       * <code>string Unk3300_CNPIGDOEJPB = 3;</code>
       * @return The unk3300CNPIGDOEJPB.
       */
      @java.lang.Override
      public java.lang.String getUnk3300CNPIGDOEJPB() {
        java.lang.Object ref = unk3300CNPIGDOEJPB_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          unk3300CNPIGDOEJPB_ = s;
          return s;
        }
      }
      /**
       * <code>string Unk3300_CNPIGDOEJPB = 3;</code>
       * @return The bytes for unk3300CNPIGDOEJPB.
       */
      @java.lang.Override
      public com.google.protobuf.ByteString
          getUnk3300CNPIGDOEJPBBytes() {
        java.lang.Object ref = unk3300CNPIGDOEJPB_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          unk3300CNPIGDOEJPB_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      private byte memoizedIsInitialized = -1;
      @java.lang.Override
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      @java.lang.Override
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(rydevicetype_)) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 2, rydevicetype_);
        }
        if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(unk3300CNPIGDOEJPB_)) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 3, unk3300CNPIGDOEJPB_);
        }
        if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(unk3300PIBFPDAMJLE_)) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 5, unk3300PIBFPDAMJLE_);
        }
        if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(clientTz_)) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 6, clientTz_);
        }
        if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(unk3300DJHKHEFPCDK_)) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 9, unk3300DJHKHEFPCDK_);
        }
        if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(unk3300NMDNLHLAKAM_)) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 11, unk3300NMDNLHLAKAM_);
        }
        if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(unk3300CCOGBICMHKG_)) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 15, unk3300CCOGBICMHKG_);
        }
        unknownFields.writeTo(output);
      }
  
      @java.lang.Override
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(rydevicetype_)) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, rydevicetype_);
        }
        if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(unk3300CNPIGDOEJPB_)) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, unk3300CNPIGDOEJPB_);
        }
        if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(unk3300PIBFPDAMJLE_)) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, unk3300PIBFPDAMJLE_);
        }
        if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(clientTz_)) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, clientTz_);
        }
        if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(unk3300DJHKHEFPCDK_)) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(9, unk3300DJHKHEFPCDK_);
        }
        if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(unk3300NMDNLHLAKAM_)) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(11, unk3300NMDNLHLAKAM_);
        }
        if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(unk3300CCOGBICMHKG_)) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(15, unk3300CCOGBICMHKG_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo)) {
          return super.equals(obj);
        }
        emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo other = (emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo) obj;
  
        if (!getRydevicetype()
            .equals(other.getRydevicetype())) return false;
        if (!getClientTz()
            .equals(other.getClientTz())) return false;
        if (!getUnk3300CCOGBICMHKG()
            .equals(other.getUnk3300CCOGBICMHKG())) return false;
        if (!getUnk3300NMDNLHLAKAM()
            .equals(other.getUnk3300NMDNLHLAKAM())) return false;
        if (!getUnk3300PIBFPDAMJLE()
            .equals(other.getUnk3300PIBFPDAMJLE())) return false;
        if (!getUnk3300DJHKHEFPCDK()
            .equals(other.getUnk3300DJHKHEFPCDK())) return false;
        if (!getUnk3300CNPIGDOEJPB()
            .equals(other.getUnk3300CNPIGDOEJPB())) return false;
        if (!unknownFields.equals(other.unknownFields)) return false;
        return true;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + RYDEVICETYPE_FIELD_NUMBER;
        hash = (53 * hash) + getRydevicetype().hashCode();
        hash = (37 * hash) + CLIENTTZ_FIELD_NUMBER;
        hash = (53 * hash) + getClientTz().hashCode();
        hash = (37 * hash) + UNK3300_CCOGBICMHKG_FIELD_NUMBER;
        hash = (53 * hash) + getUnk3300CCOGBICMHKG().hashCode();
        hash = (37 * hash) + UNK3300_NMDNLHLAKAM_FIELD_NUMBER;
        hash = (53 * hash) + getUnk3300NMDNLHLAKAM().hashCode();
        hash = (37 * hash) + UNK3300_PIBFPDAMJLE_FIELD_NUMBER;
        hash = (53 * hash) + getUnk3300PIBFPDAMJLE().hashCode();
        hash = (37 * hash) + UNK3300_DJHKHEFPCDK_FIELD_NUMBER;
        hash = (53 * hash) + getUnk3300DJHKHEFPCDK().hashCode();
        hash = (37 * hash) + UNK3300_CNPIGDOEJPB_FIELD_NUMBER;
        hash = (53 * hash) + getUnk3300CNPIGDOEJPB().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      @java.lang.Override
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      @java.lang.Override
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code TrackingIOInfo}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:TrackingIOInfo)
          emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfoOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return emu.grasscutter.net.proto.TrackingIOInfoOuterClass.internal_static_TrackingIOInfo_descriptor;
        }
  
        @java.lang.Override
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return emu.grasscutter.net.proto.TrackingIOInfoOuterClass.internal_static_TrackingIOInfo_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo.class, emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo.Builder.class);
        }
  
        // Construct using emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        @java.lang.Override
        public Builder clear() {
          super.clear();
          rydevicetype_ = "";
  
          clientTz_ = "";
  
          unk3300CCOGBICMHKG_ = "";
  
          unk3300NMDNLHLAKAM_ = "";
  
          unk3300PIBFPDAMJLE_ = "";
  
          unk3300DJHKHEFPCDK_ = "";
  
          unk3300CNPIGDOEJPB_ = "";
  
          return this;
        }
  
        @java.lang.Override
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return emu.grasscutter.net.proto.TrackingIOInfoOuterClass.internal_static_TrackingIOInfo_descriptor;
        }
  
        @java.lang.Override
        public emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo getDefaultInstanceForType() {
          return emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo.getDefaultInstance();
        }
  
        @java.lang.Override
        public emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo build() {
          emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        @java.lang.Override
        public emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo buildPartial() {
          emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo result = new emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo(this);
          result.rydevicetype_ = rydevicetype_;
          result.clientTz_ = clientTz_;
          result.unk3300CCOGBICMHKG_ = unk3300CCOGBICMHKG_;
          result.unk3300NMDNLHLAKAM_ = unk3300NMDNLHLAKAM_;
          result.unk3300PIBFPDAMJLE_ = unk3300PIBFPDAMJLE_;
          result.unk3300DJHKHEFPCDK_ = unk3300DJHKHEFPCDK_;
          result.unk3300CNPIGDOEJPB_ = unk3300CNPIGDOEJPB_;
          onBuilt();
          return result;
        }
  
        @java.lang.Override
        public Builder clone() {
          return super.clone();
        }
        @java.lang.Override
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return super.setField(field, value);
        }
        @java.lang.Override
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return super.clearField(field);
        }
        @java.lang.Override
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return super.clearOneof(oneof);
        }
        @java.lang.Override
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return super.setRepeatedField(field, index, value);
        }
        @java.lang.Override
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return super.addRepeatedField(field, value);
        }
        @java.lang.Override
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo) {
            return mergeFrom((emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo other) {
          if (other == emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo.getDefaultInstance()) return this;
          if (!other.getRydevicetype().isEmpty()) {
            rydevicetype_ = other.rydevicetype_;
            onChanged();
          }
          if (!other.getClientTz().isEmpty()) {
            clientTz_ = other.clientTz_;
            onChanged();
          }
          if (!other.getUnk3300CCOGBICMHKG().isEmpty()) {
            unk3300CCOGBICMHKG_ = other.unk3300CCOGBICMHKG_;
            onChanged();
          }
          if (!other.getUnk3300NMDNLHLAKAM().isEmpty()) {
            unk3300NMDNLHLAKAM_ = other.unk3300NMDNLHLAKAM_;
            onChanged();
          }
          if (!other.getUnk3300PIBFPDAMJLE().isEmpty()) {
            unk3300PIBFPDAMJLE_ = other.unk3300PIBFPDAMJLE_;
            onChanged();
          }
          if (!other.getUnk3300DJHKHEFPCDK().isEmpty()) {
            unk3300DJHKHEFPCDK_ = other.unk3300DJHKHEFPCDK_;
            onChanged();
          }
          if (!other.getUnk3300CNPIGDOEJPB().isEmpty()) {
            unk3300CNPIGDOEJPB_ = other.unk3300CNPIGDOEJPB_;
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        @java.lang.Override
        public final boolean isInitialized() {
          return true;
        }
  
        @java.lang.Override
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private java.lang.Object rydevicetype_ = "";
        /**
         * <code>string rydevicetype = 2;</code>
         * @return The rydevicetype.
         */
        public java.lang.String getRydevicetype() {
          java.lang.Object ref = rydevicetype_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            rydevicetype_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string rydevicetype = 2;</code>
         * @return The bytes for rydevicetype.
         */
        public com.google.protobuf.ByteString
            getRydevicetypeBytes() {
          java.lang.Object ref = rydevicetype_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            rydevicetype_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string rydevicetype = 2;</code>
         * @param value The rydevicetype to set.
         * @return This builder for chaining.
         */
        public Builder setRydevicetype(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          rydevicetype_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string rydevicetype = 2;</code>
         * @return This builder for chaining.
         */
        public Builder clearRydevicetype() {
          
          rydevicetype_ = getDefaultInstance().getRydevicetype();
          onChanged();
          return this;
        }
        /**
         * <code>string rydevicetype = 2;</code>
         * @param value The bytes for rydevicetype to set.
         * @return This builder for chaining.
         */
        public Builder setRydevicetypeBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          rydevicetype_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object clientTz_ = "";
        /**
         * <code>string clientTz = 6;</code>
         * @return The clientTz.
         */
        public java.lang.String getClientTz() {
          java.lang.Object ref = clientTz_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            clientTz_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string clientTz = 6;</code>
         * @return The bytes for clientTz.
         */
        public com.google.protobuf.ByteString
            getClientTzBytes() {
          java.lang.Object ref = clientTz_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            clientTz_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string clientTz = 6;</code>
         * @param value The clientTz to set.
         * @return This builder for chaining.
         */
        public Builder setClientTz(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          clientTz_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string clientTz = 6;</code>
         * @return This builder for chaining.
         */
        public Builder clearClientTz() {
          
          clientTz_ = getDefaultInstance().getClientTz();
          onChanged();
          return this;
        }
        /**
         * <code>string clientTz = 6;</code>
         * @param value The bytes for clientTz to set.
         * @return This builder for chaining.
         */
        public Builder setClientTzBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          clientTz_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object unk3300CCOGBICMHKG_ = "";
        /**
         * <code>string Unk3300_CCOGBICMHKG = 15;</code>
         * @return The unk3300CCOGBICMHKG.
         */
        public java.lang.String getUnk3300CCOGBICMHKG() {
          java.lang.Object ref = unk3300CCOGBICMHKG_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            unk3300CCOGBICMHKG_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string Unk3300_CCOGBICMHKG = 15;</code>
         * @return The bytes for unk3300CCOGBICMHKG.
         */
        public com.google.protobuf.ByteString
            getUnk3300CCOGBICMHKGBytes() {
          java.lang.Object ref = unk3300CCOGBICMHKG_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            unk3300CCOGBICMHKG_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string Unk3300_CCOGBICMHKG = 15;</code>
         * @param value The unk3300CCOGBICMHKG to set.
         * @return This builder for chaining.
         */
        public Builder setUnk3300CCOGBICMHKG(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          unk3300CCOGBICMHKG_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string Unk3300_CCOGBICMHKG = 15;</code>
         * @return This builder for chaining.
         */
        public Builder clearUnk3300CCOGBICMHKG() {
          
          unk3300CCOGBICMHKG_ = getDefaultInstance().getUnk3300CCOGBICMHKG();
          onChanged();
          return this;
        }
        /**
         * <code>string Unk3300_CCOGBICMHKG = 15;</code>
         * @param value The bytes for unk3300CCOGBICMHKG to set.
         * @return This builder for chaining.
         */
        public Builder setUnk3300CCOGBICMHKGBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          unk3300CCOGBICMHKG_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object unk3300NMDNLHLAKAM_ = "";
        /**
         * <code>string Unk3300_NMDNLHLAKAM = 11;</code>
         * @return The unk3300NMDNLHLAKAM.
         */
        public java.lang.String getUnk3300NMDNLHLAKAM() {
          java.lang.Object ref = unk3300NMDNLHLAKAM_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            unk3300NMDNLHLAKAM_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string Unk3300_NMDNLHLAKAM = 11;</code>
         * @return The bytes for unk3300NMDNLHLAKAM.
         */
        public com.google.protobuf.ByteString
            getUnk3300NMDNLHLAKAMBytes() {
          java.lang.Object ref = unk3300NMDNLHLAKAM_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            unk3300NMDNLHLAKAM_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string Unk3300_NMDNLHLAKAM = 11;</code>
         * @param value The unk3300NMDNLHLAKAM to set.
         * @return This builder for chaining.
         */
        public Builder setUnk3300NMDNLHLAKAM(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          unk3300NMDNLHLAKAM_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string Unk3300_NMDNLHLAKAM = 11;</code>
         * @return This builder for chaining.
         */
        public Builder clearUnk3300NMDNLHLAKAM() {
          
          unk3300NMDNLHLAKAM_ = getDefaultInstance().getUnk3300NMDNLHLAKAM();
          onChanged();
          return this;
        }
        /**
         * <code>string Unk3300_NMDNLHLAKAM = 11;</code>
         * @param value The bytes for unk3300NMDNLHLAKAM to set.
         * @return This builder for chaining.
         */
        public Builder setUnk3300NMDNLHLAKAMBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          unk3300NMDNLHLAKAM_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object unk3300PIBFPDAMJLE_ = "";
        /**
         * <code>string Unk3300_PIBFPDAMJLE = 5;</code>
         * @return The unk3300PIBFPDAMJLE.
         */
        public java.lang.String getUnk3300PIBFPDAMJLE() {
          java.lang.Object ref = unk3300PIBFPDAMJLE_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            unk3300PIBFPDAMJLE_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string Unk3300_PIBFPDAMJLE = 5;</code>
         * @return The bytes for unk3300PIBFPDAMJLE.
         */
        public com.google.protobuf.ByteString
            getUnk3300PIBFPDAMJLEBytes() {
          java.lang.Object ref = unk3300PIBFPDAMJLE_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            unk3300PIBFPDAMJLE_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string Unk3300_PIBFPDAMJLE = 5;</code>
         * @param value The unk3300PIBFPDAMJLE to set.
         * @return This builder for chaining.
         */
        public Builder setUnk3300PIBFPDAMJLE(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          unk3300PIBFPDAMJLE_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string Unk3300_PIBFPDAMJLE = 5;</code>
         * @return This builder for chaining.
         */
        public Builder clearUnk3300PIBFPDAMJLE() {
          
          unk3300PIBFPDAMJLE_ = getDefaultInstance().getUnk3300PIBFPDAMJLE();
          onChanged();
          return this;
        }
        /**
         * <code>string Unk3300_PIBFPDAMJLE = 5;</code>
         * @param value The bytes for unk3300PIBFPDAMJLE to set.
         * @return This builder for chaining.
         */
        public Builder setUnk3300PIBFPDAMJLEBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          unk3300PIBFPDAMJLE_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object unk3300DJHKHEFPCDK_ = "";
        /**
         * <code>string Unk3300_DJHKHEFPCDK = 9;</code>
         * @return The unk3300DJHKHEFPCDK.
         */
        public java.lang.String getUnk3300DJHKHEFPCDK() {
          java.lang.Object ref = unk3300DJHKHEFPCDK_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            unk3300DJHKHEFPCDK_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string Unk3300_DJHKHEFPCDK = 9;</code>
         * @return The bytes for unk3300DJHKHEFPCDK.
         */
        public com.google.protobuf.ByteString
            getUnk3300DJHKHEFPCDKBytes() {
          java.lang.Object ref = unk3300DJHKHEFPCDK_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            unk3300DJHKHEFPCDK_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string Unk3300_DJHKHEFPCDK = 9;</code>
         * @param value The unk3300DJHKHEFPCDK to set.
         * @return This builder for chaining.
         */
        public Builder setUnk3300DJHKHEFPCDK(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          unk3300DJHKHEFPCDK_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string Unk3300_DJHKHEFPCDK = 9;</code>
         * @return This builder for chaining.
         */
        public Builder clearUnk3300DJHKHEFPCDK() {
          
          unk3300DJHKHEFPCDK_ = getDefaultInstance().getUnk3300DJHKHEFPCDK();
          onChanged();
          return this;
        }
        /**
         * <code>string Unk3300_DJHKHEFPCDK = 9;</code>
         * @param value The bytes for unk3300DJHKHEFPCDK to set.
         * @return This builder for chaining.
         */
        public Builder setUnk3300DJHKHEFPCDKBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          unk3300DJHKHEFPCDK_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object unk3300CNPIGDOEJPB_ = "";
        /**
         * <code>string Unk3300_CNPIGDOEJPB = 3;</code>
         * @return The unk3300CNPIGDOEJPB.
         */
        public java.lang.String getUnk3300CNPIGDOEJPB() {
          java.lang.Object ref = unk3300CNPIGDOEJPB_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            unk3300CNPIGDOEJPB_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string Unk3300_CNPIGDOEJPB = 3;</code>
         * @return The bytes for unk3300CNPIGDOEJPB.
         */
        public com.google.protobuf.ByteString
            getUnk3300CNPIGDOEJPBBytes() {
          java.lang.Object ref = unk3300CNPIGDOEJPB_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            unk3300CNPIGDOEJPB_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string Unk3300_CNPIGDOEJPB = 3;</code>
         * @param value The unk3300CNPIGDOEJPB to set.
         * @return This builder for chaining.
         */
        public Builder setUnk3300CNPIGDOEJPB(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          unk3300CNPIGDOEJPB_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string Unk3300_CNPIGDOEJPB = 3;</code>
         * @return This builder for chaining.
         */
        public Builder clearUnk3300CNPIGDOEJPB() {
          
          unk3300CNPIGDOEJPB_ = getDefaultInstance().getUnk3300CNPIGDOEJPB();
          onChanged();
          return this;
        }
        /**
         * <code>string Unk3300_CNPIGDOEJPB = 3;</code>
         * @param value The bytes for unk3300CNPIGDOEJPB to set.
         * @return This builder for chaining.
         */
        public Builder setUnk3300CNPIGDOEJPBBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          unk3300CNPIGDOEJPB_ = value;
          onChanged();
          return this;
        }
        @java.lang.Override
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFields(unknownFields);
        }
  
        @java.lang.Override
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:TrackingIOInfo)
      }
  
      // @@protoc_insertion_point(class_scope:TrackingIOInfo)
      private static final emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo();
      }
  
      public static emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<TrackingIOInfo>
          PARSER = new com.google.protobuf.AbstractParser<TrackingIOInfo>() {
        @java.lang.Override
        public TrackingIOInfo parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new TrackingIOInfo(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<TrackingIOInfo> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<TrackingIOInfo> getParserForType() {
        return PARSER;
      }
  
      @java.lang.Override
      public emu.grasscutter.net.proto.TrackingIOInfoOuterClass.TrackingIOInfo getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_TrackingIOInfo_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_TrackingIOInfo_fieldAccessorTable;
  
    public static com.google.protobuf.Descriptors.FileDescriptor
        getDescriptor() {
      return descriptor;
    }
    private static  com.google.protobuf.Descriptors.FileDescriptor
        descriptor;
    static {
      java.lang.String[] descriptorData = {
        "\n\024TrackingIOInfo.proto\"\311\001\n\016TrackingIOInf" +
        "o\022\024\n\014rydevicetype\030\002 \001(\t\022\020\n\010clientTz\030\006 \001(" +
        "\t\022\033\n\023Unk3300_CCOGBICMHKG\030\017 \001(\t\022\033\n\023Unk330" +
        "0_NMDNLHLAKAM\030\013 \001(\t\022\033\n\023Unk3300_PIBFPDAMJ" +
        "LE\030\005 \001(\t\022\033\n\023Unk3300_DJHKHEFPCDK\030\t \001(\t\022\033\n" +
        "\023Unk3300_CNPIGDOEJPB\030\003 \001(\tB\033\n\031emu.grassc" +
        "utter.net.protob\006proto3"
      };
      descriptor = com.google.protobuf.Descriptors.FileDescriptor
        .internalBuildGeneratedFileFrom(descriptorData,
          new com.google.protobuf.Descriptors.FileDescriptor[] {
          });
      internal_static_TrackingIOInfo_descriptor =
        getDescriptor().getMessageTypes().get(0);
      internal_static_TrackingIOInfo_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_TrackingIOInfo_descriptor,
          new java.lang.String[] { "Rydevicetype", "ClientTz", "Unk3300CCOGBICMHKG", "Unk3300NMDNLHLAKAM", "Unk3300PIBFPDAMJLE", "Unk3300DJHKHEFPCDK", "Unk3300CNPIGDOEJPB", });
    }
  
    // @@protoc_insertion_point(outer_class_scope)
  }
  