public void MergeFrom(Instruction other)
 {
     if (other == null)
     {
         return;
     }
     if (other.Name.Length != 0)
     {
         Name = other.Name;
     }
     if (other.DisplayName.Length != 0)
     {
         DisplayName = other.DisplayName;
     }
     if (other.Description.Length != 0)
     {
         Description = other.Description;
     }
     if (other.createTime_ != null)
     {
         if (createTime_ == null)
         {
             CreateTime = new global::Google.Protobuf.WellKnownTypes.Timestamp();
         }
         CreateTime.MergeFrom(other.CreateTime);
     }
     if (other.updateTime_ != null)
     {
         if (updateTime_ == null)
         {
             UpdateTime = new global::Google.Protobuf.WellKnownTypes.Timestamp();
         }
         UpdateTime.MergeFrom(other.UpdateTime);
     }
     if (other.DataType != global::Google.Cloud.DataLabeling.V1Beta1.DataType.Unspecified)
     {
         DataType = other.DataType;
     }
     if (other.csvInstruction_ != null)
     {
         if (csvInstruction_ == null)
         {
             CsvInstruction = new global::Google.Cloud.DataLabeling.V1Beta1.CsvInstruction();
         }
         CsvInstruction.MergeFrom(other.CsvInstruction);
     }
     if (other.pdfInstruction_ != null)
     {
         if (pdfInstruction_ == null)
         {
             PdfInstruction = new global::Google.Cloud.DataLabeling.V1Beta1.PdfInstruction();
         }
         PdfInstruction.MergeFrom(other.PdfInstruction);
     }
     blockingResources_.Add(other.blockingResources_);
     _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
 }
        public override int GetHashCode()
        {
            int hash = 1;

            if (Name.Length != 0)
            {
                hash ^= Name.GetHashCode();
            }
            if (DisplayName.Length != 0)
            {
                hash ^= DisplayName.GetHashCode();
            }
            if (Description.Length != 0)
            {
                hash ^= Description.GetHashCode();
            }
            if (createTime_ != null)
            {
                hash ^= CreateTime.GetHashCode();
            }
            if (updateTime_ != null)
            {
                hash ^= UpdateTime.GetHashCode();
            }
            if (DataType != global::Google.Cloud.DataLabeling.V1Beta1.DataType.Unspecified)
            {
                hash ^= DataType.GetHashCode();
            }
            if (csvInstruction_ != null)
            {
                hash ^= CsvInstruction.GetHashCode();
            }
            if (pdfInstruction_ != null)
            {
                hash ^= PdfInstruction.GetHashCode();
            }
            hash ^= blockingResources_.GetHashCode();
            if (_unknownFields != null)
            {
                hash ^= _unknownFields.GetHashCode();
            }
            return(hash);
        }