@java.lang.Override
        public int hashCode() {
          if (memoizedHashCode != 0) {
            return memoizedHashCode;
          }
          int hash = 41;
          hash = (19 * hash) + getDescriptor().hashCode();
          if (hasKind()) {
            hash = (37 * hash) + KIND_FIELD_NUMBER;
            hash = (53 * hash) + kind_;
          }
          if (hasText()) {
            hash = (37 * hash) + TEXT_FIELD_NUMBER;
            hash = (53 * hash) + getText().hashCode();
          }
          if (hasSourceUri()) {
            hash = (37 * hash) + SOURCE_URI_FIELD_NUMBER;
            hash = (53 * hash) + getSourceUri().hashCode();
          }
          if (hasProblemBeginOffset()) {
            hash = (37 * hash) + PROBLEM_BEGIN_OFFSET_FIELD_NUMBER;
            hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
                getProblemBeginOffset());
          }
          if (hasProblemEndOffset()) {
            hash = (37 * hash) + PROBLEM_END_OFFSET_FIELD_NUMBER;
            hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
                getProblemEndOffset());
          }
          if (hasProblemLocationOffset()) {
            hash = (37 * hash) + PROBLEM_LOCATION_OFFSET_FIELD_NUMBER;
            hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
                getProblemLocationOffset());
          }
          if (hasLine()) {
            hash = (37 * hash) + LINE_FIELD_NUMBER;
            hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
                getLine());
          }
          if (hasColumn()) {
            hash = (37 * hash) + COLUMN_FIELD_NUMBER;
            hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
                getColumn());
          }
          hash = (29 * hash) + getUnknownFields().hashCode();
          memoizedHashCode = hash;
          return hash;
        }
@java.lang.Override
        public int hashCode()