// <auto-generated>
//     Generated by the protocol buffer compiler.  DO NOT EDIT!
//     source: circuits_v2/deprecated/DEPRECATED_circuit_type_data.proto
// </auto-generated>
#pragma warning disable 1591, 0612, 3021, 8981
#region Designer generated code

using pb = global::Google.Protobuf;
using pbc = global::Google.Protobuf.Collections;
using pbr = global::Google.Protobuf.Reflection;
using scg = global::System.Collections.Generic;
namespace CircuitsV2.Protobuf {

  /// <summary>Holder for reflection information generated from circuits_v2/deprecated/DEPRECATED_circuit_type_data.proto</summary>
  public static partial class DEPRECATEDCircuitTypeDataReflection {

    #region Descriptor
    /// <summary>File descriptor for circuits_v2/deprecated/DEPRECATED_circuit_type_data.proto</summary>
    public static pbr::FileDescriptor Descriptor {
      get { return descriptor; }
    }
    private static pbr::FileDescriptor descriptor;

    static DEPRECATEDCircuitTypeDataReflection() {
      byte[] descriptorData = global::System.Convert.FromBase64String(
          string.Concat(
            "CjljaXJjdWl0c192Mi9kZXByZWNhdGVkL0RFUFJFQ0FURURfY2lyY3VpdF90",
            "eXBlX2RhdGEucHJvdG8SC2NpcmN1aXRzX3YyGhRjb3JlL2d1aWRfZGF0YS5w",
            "cm90bxo2Y2lyY3VpdHNfdjIvZGVwcmVjYXRlZC9ERVBSRUNBVEVEX251bGxh",
            "YmxlX2J5dGVzLnByb3RvIsEBCiFERVBSRUNBVEVEX0FwcGxpZWRHZW5lcmlj",
            "VHlwZURhdGESDwoHdmVyc2lvbhgBIAEoBRI+Cg1vcmlnaW5hbF90eXBlGAIg",
            "ASgLMicuY2lyY3VpdHNfdjIuREVQUkVDQVRFRF9DaXJjdWl0VHlwZURhdGES",
            "SwoadHlwZV9wYXJhbWV0ZXJfYXNzaWdubWVudHMYAyADKAsyJy5jaXJjdWl0",
            "c192Mi5ERVBSRUNBVEVEX0NpcmN1aXRUeXBlRGF0YSL4AwoaREVQUkVDQVRF",
            "RF9DaXJjdWl0VHlwZURhdGESDwoHdmVyc2lvbhgBIAEoBRIMCgRraW5kGAIg",
            "ASgFEkwKFGFwcGxpZWRfZ2VuZXJpY190eXBlGAMgASgLMi4uY2lyY3VpdHNf",
            "djIuREVQUkVDQVRFRF9BcHBsaWVkR2VuZXJpY1R5cGVEYXRhEj8KDWZ1bmN0",
            "aW9uX3R5cGUYBSABKAsyKC5jaXJjdWl0c192Mi5ERVBSRUNBVEVEX0Z1bmN0",
            "aW9uVHlwZURhdGESXQoddHlwZV9wYXJhbWV0ZXJfcmVmZXJlbmNlX3R5cGUY",
            "BiABKAsyNi5jaXJjdWl0c192Mi5ERVBSRUNBVEVEX1R5cGVQYXJhbWV0ZXJS",
            "ZWZlcmVuY2VUeXBlRGF0YRJKChN0eXBlX3BhcmFtZXRlcl90eXBlGAcgASgL",
            "Mi0uY2lyY3VpdHNfdjIuREVQUkVDQVRFRF9UeXBlUGFyYW1ldGVyVHlwZURh",
            "dGESOgoKY2xhc3NfdHlwZRgIIAEoCzImLmNpcmN1aXRzX3YyLkRFUFJFQ0FU",
            "RURfQ2xhc3NUeXBlRGF0YTESRQoVREVQUkVDQVRFRF9jbGFzc190eXBlGAQg",
            "ASgLMiYuY2lyY3VpdHNfdjIuREVQUkVDQVRFRF9DbGFzc1R5cGVEYXRhMCKh",
            "BAoZREVQUkVDQVRFRF9DbGFzc1R5cGVEYXRhMRIPCgd2ZXJzaW9uGAEgASgF",
            "EhoKAmlkGAcgASgLMg4uY29yZS5HdWlkRGF0YRJACg90eXBlX3BhcmFtZXRl",
            "cnMYAyADKAsyJy5jaXJjdWl0c192Mi5ERVBSRUNBVEVEX0NpcmN1aXRUeXBl",
            "RGF0YRJKCgpwcm9wZXJ0aWVzGAQgAygLMjYuY2lyY3VpdHNfdjIuREVQUkVD",
            "QVRFRF9DbGFzc1R5cGVEYXRhMS5Qcm9wZXJ0aWVzRW50cnkSSAoJZnVuY3Rp",
            "b25zGAUgAygLMjUuY2lyY3VpdHNfdjIuREVQUkVDQVRFRF9DbGFzc1R5cGVE",
            "YXRhMS5GdW5jdGlvbnNFbnRyeRI8CgtiYXNlQ2xhc3NlcxgGIAMoCzInLmNp",
            "cmN1aXRzX3YyLkRFUFJFQ0FURURfQ2lyY3VpdFR5cGVEYXRhEhUKDURFUFJF",
            "Q0FURURfaWQYAiABKAwaUwoPUHJvcGVydGllc0VudHJ5EgsKA2tleRgBIAEo",
            "CRIzCgV2YWx1ZRgCIAEoCzIkLmNpcmN1aXRzX3YyLkRFUFJFQ0FURURfUHJv",
            "cGVydHlEYXRhGlUKDkZ1bmN0aW9uc0VudHJ5EgsKA2tleRgBIAEoCRI2CgV2",
            "YWx1ZRgCIAEoCzInLmNpcmN1aXRzX3YyLkRFUFJFQ0FURURfQ2lyY3VpdFR5",
            "cGVEYXRhIvIBChtERVBSRUNBVEVEX0Z1bmN0aW9uVHlwZURhdGESDwoHdmVy",
            "c2lvbhgBIAEoBRJACg90eXBlX3BhcmFtZXRlcnMYAiADKAsyJy5jaXJjdWl0",
            "c192Mi5ERVBSRUNBVEVEX0NpcmN1aXRUeXBlRGF0YRI+CgZpbnB1dHMYAyAD",
            "KAsyLi5jaXJjdWl0c192Mi5ERVBSRUNBVEVEX0tleWVkRnVuY3Rpb25JbnB1",
            "dERhdGESQAoHb3V0cHV0cxgEIAMoCzIvLmNpcmN1aXRzX3YyLkRFUFJFQ0FU",
            "RURfS2V5ZWRGdW5jdGlvbk91dHB1dERhdGEiZgocREVQUkVDQVRFRF9GdW5j",
            "dGlvbklucHV0RGF0YRIPCgd2ZXJzaW9uGAEgASgFEjUKBHR5cGUYAiABKAsy",
            "Jy5jaXJjdWl0c192Mi5ERVBSRUNBVEVEX0NpcmN1aXRUeXBlRGF0YSJ7CiFE",
            "RVBSRUNBVEVEX0tleWVkRnVuY3Rpb25JbnB1dERhdGESDwoHdmVyc2lvbhgB",
            "IAEoBRILCgNrZXkYAiABKAkSOAoFdmFsdWUYAyABKAsyKS5jaXJjdWl0c192",
            "Mi5ERVBSRUNBVEVEX0Z1bmN0aW9uSW5wdXREYXRhInsKF0RFUFJFQ0FURURf",
            "UHJvcGVydHlEYXRhEg8KB3ZlcnNpb24YASABKAUSNQoEdHlwZRgCIAEoCzIn",
            "LmNpcmN1aXRzX3YyLkRFUFJFQ0FURURfQ2lyY3VpdFR5cGVEYXRhEgsKA2dl",
            "dBgDIAEoCBILCgNzZXQYBCABKAgiZwodREVQUkVDQVRFRF9GdW5jdGlvbk91",
            "dHB1dERhdGESDwoHdmVyc2lvbhgBIAEoBRI1CgR0eXBlGAIgASgLMicuY2ly",
            "Y3VpdHNfdjIuREVQUkVDQVRFRF9DaXJjdWl0VHlwZURhdGEifQoiREVQUkVD",
            "QVRFRF9LZXllZEZ1bmN0aW9uT3V0cHV0RGF0YRIPCgd2ZXJzaW9uGAEgASgF",
            "EgsKA2tleRgCIAEoCRI5CgV2YWx1ZRgDIAEoCzIqLmNpcmN1aXRzX3YyLkRF",
            "UFJFQ0FURURfRnVuY3Rpb25PdXRwdXREYXRhIkoKKURFUFJFQ0FURURfVHlw",
            "ZVBhcmFtZXRlclJlZmVyZW5jZVR5cGVEYXRhEg8KB3ZlcnNpb24YASABKAUS",
            "DAoEbmFtZRgCIAEoCSJ+CiBERVBSRUNBVEVEX1R5cGVQYXJhbWV0ZXJUeXBl",
            "RGF0YRIPCgd2ZXJzaW9uGAEgASgFEgwKBG5hbWUYAiABKAkSOwoKY29uc3Ry",
            "YWludBgDIAEoCzInLmNpcmN1aXRzX3YyLkRFUFJFQ0FURURfQ2lyY3VpdFR5",
            "cGVEYXRhIsQCChlERVBSRUNBVEVEX0NsYXNzVHlwZURhdGEwEg8KB3ZlcnNp",
            "b24YASABKAUSQAoPdHlwZV9wYXJhbWV0ZXJzGAIgAygLMicuY2lyY3VpdHNf",
            "djIuREVQUkVDQVRFRF9DaXJjdWl0VHlwZURhdGESSgoKcHJvcGVydGllcxgD",
            "IAMoCzI2LmNpcmN1aXRzX3YyLkRFUFJFQ0FURURfQ2xhc3NUeXBlRGF0YTAu",
            "UHJvcGVydGllc0VudHJ5EjMKBG5hbWUYBCABKAsyJS5jaXJjdWl0c192Mi5E",
            "RVBSRUNBVEVEX051bGxhYmxlQnl0ZXMaUwoPUHJvcGVydGllc0VudHJ5EgsK",
            "A2tleRgBIAEoCRIzCgV2YWx1ZRgCIAEoCzIkLmNpcmN1aXRzX3YyLkRFUFJF",
            "Q0FURURfUHJvcGVydHlEYXRhQhaqAhNDaXJjdWl0c1YyLlByb3RvYnVmYgZw",
            "cm90bzM="));
      descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
          new pbr::FileDescriptor[] { global::RecRoom.Protobuf.Core.GuidDataReflection.Descriptor, global::CircuitsV2.Protobuf.DEPRECATEDNullableBytesReflection.Descriptor, },
          new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] {
            new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.DEPRECATED_AppliedGenericTypeData), global::CircuitsV2.Protobuf.DEPRECATED_AppliedGenericTypeData.Parser, new[]{ "Version", "OriginalType", "TypeParameterAssignments" }, null, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData), global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData.Parser, new[]{ "Version", "Kind", "AppliedGenericType", "FunctionType", "TypeParameterReferenceType", "TypeParameterType", "ClassType", "DEPRECATEDClassType" }, null, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1), global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1.Parser, new[]{ "Version", "Id", "TypeParameters", "Properties", "Functions", "BaseClasses", "DEPRECATEDId" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1.Types.PropertiesEntry), global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1.Types.PropertiesEntry.Parser, new[]{ "Key", "Value" }, null, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1.Types.FunctionsEntry), global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1.Types.FunctionsEntry.Parser, new[]{ "Key", "Value" }, null, null, null, null)}),
            new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.DEPRECATED_FunctionTypeData), global::CircuitsV2.Protobuf.DEPRECATED_FunctionTypeData.Parser, new[]{ "Version", "TypeParameters", "Inputs", "Outputs" }, null, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.DEPRECATED_FunctionInputData), global::CircuitsV2.Protobuf.DEPRECATED_FunctionInputData.Parser, new[]{ "Version", "Type" }, null, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.DEPRECATED_KeyedFunctionInputData), global::CircuitsV2.Protobuf.DEPRECATED_KeyedFunctionInputData.Parser, new[]{ "Version", "Key", "Value" }, null, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.DEPRECATED_PropertyData), global::CircuitsV2.Protobuf.DEPRECATED_PropertyData.Parser, new[]{ "Version", "Type", "Get", "Set" }, null, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.DEPRECATED_FunctionOutputData), global::CircuitsV2.Protobuf.DEPRECATED_FunctionOutputData.Parser, new[]{ "Version", "Type" }, null, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.DEPRECATED_KeyedFunctionOutputData), global::CircuitsV2.Protobuf.DEPRECATED_KeyedFunctionOutputData.Parser, new[]{ "Version", "Key", "Value" }, null, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.DEPRECATED_TypeParameterReferenceTypeData), global::CircuitsV2.Protobuf.DEPRECATED_TypeParameterReferenceTypeData.Parser, new[]{ "Version", "Name" }, null, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.DEPRECATED_TypeParameterTypeData), global::CircuitsV2.Protobuf.DEPRECATED_TypeParameterTypeData.Parser, new[]{ "Version", "Name", "Constraint" }, null, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData0), global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData0.Parser, new[]{ "Version", "TypeParameters", "Properties", "Name" }, null, null, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData0.Types.PropertiesEntry), global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData0.Types.PropertiesEntry.Parser, new[]{ "Key", "Value" }, null, null, null, null)})
          }));
    }
    #endregion

  }
  #region Messages
  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class DEPRECATED_AppliedGenericTypeData : pb::IMessage<DEPRECATED_AppliedGenericTypeData>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<DEPRECATED_AppliedGenericTypeData> _parser = new pb::MessageParser<DEPRECATED_AppliedGenericTypeData>(() => new DEPRECATED_AppliedGenericTypeData());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<DEPRECATED_AppliedGenericTypeData> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::CircuitsV2.Protobuf.DEPRECATEDCircuitTypeDataReflection.Descriptor.MessageTypes[0]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_AppliedGenericTypeData() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_AppliedGenericTypeData(DEPRECATED_AppliedGenericTypeData other) : this() {
      version_ = other.version_;
      originalType_ = other.originalType_ != null ? other.originalType_.Clone() : null;
      typeParameterAssignments_ = other.typeParameterAssignments_.Clone();
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_AppliedGenericTypeData Clone() {
      return new DEPRECATED_AppliedGenericTypeData(this);
    }

    /// <summary>Field number for the "version" field.</summary>
    public const int VersionFieldNumber = 1;
    private int version_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int Version {
      get { return version_; }
      set {
        version_ = value;
      }
    }

    /// <summary>Field number for the "original_type" field.</summary>
    public const int OriginalTypeFieldNumber = 2;
    private global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData originalType_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData OriginalType {
      get { return originalType_; }
      set {
        originalType_ = value;
      }
    }

    /// <summary>Field number for the "type_parameter_assignments" field.</summary>
    public const int TypeParameterAssignmentsFieldNumber = 3;
    private static readonly pb::FieldCodec<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData> _repeated_typeParameterAssignments_codec
        = pb::FieldCodec.ForMessage(26, global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData.Parser);
    private readonly pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData> typeParameterAssignments_ = new pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData> TypeParameterAssignments {
      get { return typeParameterAssignments_; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as DEPRECATED_AppliedGenericTypeData);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(DEPRECATED_AppliedGenericTypeData other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (Version != other.Version) return false;
      if (!object.Equals(OriginalType, other.OriginalType)) return false;
      if(!typeParameterAssignments_.Equals(other.typeParameterAssignments_)) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (Version != 0) hash ^= Version.GetHashCode();
      if (originalType_ != null) hash ^= OriginalType.GetHashCode();
      hash ^= typeParameterAssignments_.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (originalType_ != null) {
        output.WriteRawTag(18);
        output.WriteMessage(OriginalType);
      }
      typeParameterAssignments_.WriteTo(output, _repeated_typeParameterAssignments_codec);
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (originalType_ != null) {
        output.WriteRawTag(18);
        output.WriteMessage(OriginalType);
      }
      typeParameterAssignments_.WriteTo(ref output, _repeated_typeParameterAssignments_codec);
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (Version != 0) {
        size += 1 + pb::CodedOutputStream.ComputeInt32Size(Version);
      }
      if (originalType_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(OriginalType);
      }
      size += typeParameterAssignments_.CalculateSize(_repeated_typeParameterAssignments_codec);
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(DEPRECATED_AppliedGenericTypeData other) {
      if (other == null) {
        return;
      }
      if (other.Version != 0) {
        Version = other.Version;
      }
      if (other.originalType_ != null) {
        if (originalType_ == null) {
          OriginalType = new global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData();
        }
        OriginalType.MergeFrom(other.OriginalType);
      }
      typeParameterAssignments_.Add(other.typeParameterAssignments_);
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            if (originalType_ == null) {
              OriginalType = new global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData();
            }
            input.ReadMessage(OriginalType);
            break;
          }
          case 26: {
            typeParameterAssignments_.AddEntriesFrom(input, _repeated_typeParameterAssignments_codec);
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            if (originalType_ == null) {
              OriginalType = new global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData();
            }
            input.ReadMessage(OriginalType);
            break;
          }
          case 26: {
            typeParameterAssignments_.AddEntriesFrom(ref input, _repeated_typeParameterAssignments_codec);
            break;
          }
        }
      }
    }
    #endif

  }

  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class DEPRECATED_CircuitTypeData : pb::IMessage<DEPRECATED_CircuitTypeData>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<DEPRECATED_CircuitTypeData> _parser = new pb::MessageParser<DEPRECATED_CircuitTypeData>(() => new DEPRECATED_CircuitTypeData());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<DEPRECATED_CircuitTypeData> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::CircuitsV2.Protobuf.DEPRECATEDCircuitTypeDataReflection.Descriptor.MessageTypes[1]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_CircuitTypeData() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_CircuitTypeData(DEPRECATED_CircuitTypeData other) : this() {
      version_ = other.version_;
      kind_ = other.kind_;
      appliedGenericType_ = other.appliedGenericType_ != null ? other.appliedGenericType_.Clone() : null;
      functionType_ = other.functionType_ != null ? other.functionType_.Clone() : null;
      typeParameterReferenceType_ = other.typeParameterReferenceType_ != null ? other.typeParameterReferenceType_.Clone() : null;
      typeParameterType_ = other.typeParameterType_ != null ? other.typeParameterType_.Clone() : null;
      classType_ = other.classType_ != null ? other.classType_.Clone() : null;
      dEPRECATEDClassType_ = other.dEPRECATEDClassType_ != null ? other.dEPRECATEDClassType_.Clone() : null;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_CircuitTypeData Clone() {
      return new DEPRECATED_CircuitTypeData(this);
    }

    /// <summary>Field number for the "version" field.</summary>
    public const int VersionFieldNumber = 1;
    private int version_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int Version {
      get { return version_; }
      set {
        version_ = value;
      }
    }

    /// <summary>Field number for the "kind" field.</summary>
    public const int KindFieldNumber = 2;
    private int kind_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int Kind {
      get { return kind_; }
      set {
        kind_ = value;
      }
    }

    /// <summary>Field number for the "applied_generic_type" field.</summary>
    public const int AppliedGenericTypeFieldNumber = 3;
    private global::CircuitsV2.Protobuf.DEPRECATED_AppliedGenericTypeData appliedGenericType_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.DEPRECATED_AppliedGenericTypeData AppliedGenericType {
      get { return appliedGenericType_; }
      set {
        appliedGenericType_ = value;
      }
    }

    /// <summary>Field number for the "function_type" field.</summary>
    public const int FunctionTypeFieldNumber = 5;
    private global::CircuitsV2.Protobuf.DEPRECATED_FunctionTypeData functionType_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.DEPRECATED_FunctionTypeData FunctionType {
      get { return functionType_; }
      set {
        functionType_ = value;
      }
    }

    /// <summary>Field number for the "type_parameter_reference_type" field.</summary>
    public const int TypeParameterReferenceTypeFieldNumber = 6;
    private global::CircuitsV2.Protobuf.DEPRECATED_TypeParameterReferenceTypeData typeParameterReferenceType_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.DEPRECATED_TypeParameterReferenceTypeData TypeParameterReferenceType {
      get { return typeParameterReferenceType_; }
      set {
        typeParameterReferenceType_ = value;
      }
    }

    /// <summary>Field number for the "type_parameter_type" field.</summary>
    public const int TypeParameterTypeFieldNumber = 7;
    private global::CircuitsV2.Protobuf.DEPRECATED_TypeParameterTypeData typeParameterType_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.DEPRECATED_TypeParameterTypeData TypeParameterType {
      get { return typeParameterType_; }
      set {
        typeParameterType_ = value;
      }
    }

    /// <summary>Field number for the "class_type" field.</summary>
    public const int ClassTypeFieldNumber = 8;
    private global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1 classType_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1 ClassType {
      get { return classType_; }
      set {
        classType_ = value;
      }
    }

    /// <summary>Field number for the "DEPRECATED_class_type" field.</summary>
    public const int DEPRECATEDClassTypeFieldNumber = 4;
    private global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData0 dEPRECATEDClassType_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData0 DEPRECATEDClassType {
      get { return dEPRECATEDClassType_; }
      set {
        dEPRECATEDClassType_ = value;
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as DEPRECATED_CircuitTypeData);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(DEPRECATED_CircuitTypeData other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (Version != other.Version) return false;
      if (Kind != other.Kind) return false;
      if (!object.Equals(AppliedGenericType, other.AppliedGenericType)) return false;
      if (!object.Equals(FunctionType, other.FunctionType)) return false;
      if (!object.Equals(TypeParameterReferenceType, other.TypeParameterReferenceType)) return false;
      if (!object.Equals(TypeParameterType, other.TypeParameterType)) return false;
      if (!object.Equals(ClassType, other.ClassType)) return false;
      if (!object.Equals(DEPRECATEDClassType, other.DEPRECATEDClassType)) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (Version != 0) hash ^= Version.GetHashCode();
      if (Kind != 0) hash ^= Kind.GetHashCode();
      if (appliedGenericType_ != null) hash ^= AppliedGenericType.GetHashCode();
      if (functionType_ != null) hash ^= FunctionType.GetHashCode();
      if (typeParameterReferenceType_ != null) hash ^= TypeParameterReferenceType.GetHashCode();
      if (typeParameterType_ != null) hash ^= TypeParameterType.GetHashCode();
      if (classType_ != null) hash ^= ClassType.GetHashCode();
      if (dEPRECATEDClassType_ != null) hash ^= DEPRECATEDClassType.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (Kind != 0) {
        output.WriteRawTag(16);
        output.WriteInt32(Kind);
      }
      if (appliedGenericType_ != null) {
        output.WriteRawTag(26);
        output.WriteMessage(AppliedGenericType);
      }
      if (dEPRECATEDClassType_ != null) {
        output.WriteRawTag(34);
        output.WriteMessage(DEPRECATEDClassType);
      }
      if (functionType_ != null) {
        output.WriteRawTag(42);
        output.WriteMessage(FunctionType);
      }
      if (typeParameterReferenceType_ != null) {
        output.WriteRawTag(50);
        output.WriteMessage(TypeParameterReferenceType);
      }
      if (typeParameterType_ != null) {
        output.WriteRawTag(58);
        output.WriteMessage(TypeParameterType);
      }
      if (classType_ != null) {
        output.WriteRawTag(66);
        output.WriteMessage(ClassType);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (Kind != 0) {
        output.WriteRawTag(16);
        output.WriteInt32(Kind);
      }
      if (appliedGenericType_ != null) {
        output.WriteRawTag(26);
        output.WriteMessage(AppliedGenericType);
      }
      if (dEPRECATEDClassType_ != null) {
        output.WriteRawTag(34);
        output.WriteMessage(DEPRECATEDClassType);
      }
      if (functionType_ != null) {
        output.WriteRawTag(42);
        output.WriteMessage(FunctionType);
      }
      if (typeParameterReferenceType_ != null) {
        output.WriteRawTag(50);
        output.WriteMessage(TypeParameterReferenceType);
      }
      if (typeParameterType_ != null) {
        output.WriteRawTag(58);
        output.WriteMessage(TypeParameterType);
      }
      if (classType_ != null) {
        output.WriteRawTag(66);
        output.WriteMessage(ClassType);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (Version != 0) {
        size += 1 + pb::CodedOutputStream.ComputeInt32Size(Version);
      }
      if (Kind != 0) {
        size += 1 + pb::CodedOutputStream.ComputeInt32Size(Kind);
      }
      if (appliedGenericType_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(AppliedGenericType);
      }
      if (functionType_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(FunctionType);
      }
      if (typeParameterReferenceType_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(TypeParameterReferenceType);
      }
      if (typeParameterType_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(TypeParameterType);
      }
      if (classType_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(ClassType);
      }
      if (dEPRECATEDClassType_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(DEPRECATEDClassType);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(DEPRECATED_CircuitTypeData other) {
      if (other == null) {
        return;
      }
      if (other.Version != 0) {
        Version = other.Version;
      }
      if (other.Kind != 0) {
        Kind = other.Kind;
      }
      if (other.appliedGenericType_ != null) {
        if (appliedGenericType_ == null) {
          AppliedGenericType = new global::CircuitsV2.Protobuf.DEPRECATED_AppliedGenericTypeData();
        }
        AppliedGenericType.MergeFrom(other.AppliedGenericType);
      }
      if (other.functionType_ != null) {
        if (functionType_ == null) {
          FunctionType = new global::CircuitsV2.Protobuf.DEPRECATED_FunctionTypeData();
        }
        FunctionType.MergeFrom(other.FunctionType);
      }
      if (other.typeParameterReferenceType_ != null) {
        if (typeParameterReferenceType_ == null) {
          TypeParameterReferenceType = new global::CircuitsV2.Protobuf.DEPRECATED_TypeParameterReferenceTypeData();
        }
        TypeParameterReferenceType.MergeFrom(other.TypeParameterReferenceType);
      }
      if (other.typeParameterType_ != null) {
        if (typeParameterType_ == null) {
          TypeParameterType = new global::CircuitsV2.Protobuf.DEPRECATED_TypeParameterTypeData();
        }
        TypeParameterType.MergeFrom(other.TypeParameterType);
      }
      if (other.classType_ != null) {
        if (classType_ == null) {
          ClassType = new global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1();
        }
        ClassType.MergeFrom(other.ClassType);
      }
      if (other.dEPRECATEDClassType_ != null) {
        if (dEPRECATEDClassType_ == null) {
          DEPRECATEDClassType = new global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData0();
        }
        DEPRECATEDClassType.MergeFrom(other.DEPRECATEDClassType);
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 16: {
            Kind = input.ReadInt32();
            break;
          }
          case 26: {
            if (appliedGenericType_ == null) {
              AppliedGenericType = new global::CircuitsV2.Protobuf.DEPRECATED_AppliedGenericTypeData();
            }
            input.ReadMessage(AppliedGenericType);
            break;
          }
          case 34: {
            if (dEPRECATEDClassType_ == null) {
              DEPRECATEDClassType = new global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData0();
            }
            input.ReadMessage(DEPRECATEDClassType);
            break;
          }
          case 42: {
            if (functionType_ == null) {
              FunctionType = new global::CircuitsV2.Protobuf.DEPRECATED_FunctionTypeData();
            }
            input.ReadMessage(FunctionType);
            break;
          }
          case 50: {
            if (typeParameterReferenceType_ == null) {
              TypeParameterReferenceType = new global::CircuitsV2.Protobuf.DEPRECATED_TypeParameterReferenceTypeData();
            }
            input.ReadMessage(TypeParameterReferenceType);
            break;
          }
          case 58: {
            if (typeParameterType_ == null) {
              TypeParameterType = new global::CircuitsV2.Protobuf.DEPRECATED_TypeParameterTypeData();
            }
            input.ReadMessage(TypeParameterType);
            break;
          }
          case 66: {
            if (classType_ == null) {
              ClassType = new global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1();
            }
            input.ReadMessage(ClassType);
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 16: {
            Kind = input.ReadInt32();
            break;
          }
          case 26: {
            if (appliedGenericType_ == null) {
              AppliedGenericType = new global::CircuitsV2.Protobuf.DEPRECATED_AppliedGenericTypeData();
            }
            input.ReadMessage(AppliedGenericType);
            break;
          }
          case 34: {
            if (dEPRECATEDClassType_ == null) {
              DEPRECATEDClassType = new global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData0();
            }
            input.ReadMessage(DEPRECATEDClassType);
            break;
          }
          case 42: {
            if (functionType_ == null) {
              FunctionType = new global::CircuitsV2.Protobuf.DEPRECATED_FunctionTypeData();
            }
            input.ReadMessage(FunctionType);
            break;
          }
          case 50: {
            if (typeParameterReferenceType_ == null) {
              TypeParameterReferenceType = new global::CircuitsV2.Protobuf.DEPRECATED_TypeParameterReferenceTypeData();
            }
            input.ReadMessage(TypeParameterReferenceType);
            break;
          }
          case 58: {
            if (typeParameterType_ == null) {
              TypeParameterType = new global::CircuitsV2.Protobuf.DEPRECATED_TypeParameterTypeData();
            }
            input.ReadMessage(TypeParameterType);
            break;
          }
          case 66: {
            if (classType_ == null) {
              ClassType = new global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1();
            }
            input.ReadMessage(ClassType);
            break;
          }
        }
      }
    }
    #endif

  }

  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class DEPRECATED_ClassTypeData1 : pb::IMessage<DEPRECATED_ClassTypeData1>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<DEPRECATED_ClassTypeData1> _parser = new pb::MessageParser<DEPRECATED_ClassTypeData1>(() => new DEPRECATED_ClassTypeData1());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<DEPRECATED_ClassTypeData1> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::CircuitsV2.Protobuf.DEPRECATEDCircuitTypeDataReflection.Descriptor.MessageTypes[2]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_ClassTypeData1() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_ClassTypeData1(DEPRECATED_ClassTypeData1 other) : this() {
      version_ = other.version_;
      id_ = other.id_ != null ? other.id_.Clone() : null;
      typeParameters_ = other.typeParameters_.Clone();
      properties_ = other.properties_.Clone();
      functions_ = other.functions_.Clone();
      baseClasses_ = other.baseClasses_.Clone();
      dEPRECATEDId_ = other.dEPRECATEDId_;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_ClassTypeData1 Clone() {
      return new DEPRECATED_ClassTypeData1(this);
    }

    /// <summary>Field number for the "version" field.</summary>
    public const int VersionFieldNumber = 1;
    private int version_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int Version {
      get { return version_; }
      set {
        version_ = value;
      }
    }

    /// <summary>Field number for the "id" field.</summary>
    public const int IdFieldNumber = 7;
    private global::RecRoom.Protobuf.Core.GuidData id_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::RecRoom.Protobuf.Core.GuidData Id {
      get { return id_; }
      set {
        id_ = value;
      }
    }

    /// <summary>Field number for the "type_parameters" field.</summary>
    public const int TypeParametersFieldNumber = 3;
    private static readonly pb::FieldCodec<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData> _repeated_typeParameters_codec
        = pb::FieldCodec.ForMessage(26, global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData.Parser);
    private readonly pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData> typeParameters_ = new pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData> TypeParameters {
      get { return typeParameters_; }
    }

    /// <summary>Field number for the "properties" field.</summary>
    public const int PropertiesFieldNumber = 4;
    private static readonly pb::FieldCodec<global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1.Types.PropertiesEntry> _repeated_properties_codec
        = pb::FieldCodec.ForMessage(34, global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1.Types.PropertiesEntry.Parser);
    private readonly pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1.Types.PropertiesEntry> properties_ = new pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1.Types.PropertiesEntry>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1.Types.PropertiesEntry> Properties {
      get { return properties_; }
    }

    /// <summary>Field number for the "functions" field.</summary>
    public const int FunctionsFieldNumber = 5;
    private static readonly pb::FieldCodec<global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1.Types.FunctionsEntry> _repeated_functions_codec
        = pb::FieldCodec.ForMessage(42, global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1.Types.FunctionsEntry.Parser);
    private readonly pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1.Types.FunctionsEntry> functions_ = new pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1.Types.FunctionsEntry>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1.Types.FunctionsEntry> Functions {
      get { return functions_; }
    }

    /// <summary>Field number for the "baseClasses" field.</summary>
    public const int BaseClassesFieldNumber = 6;
    private static readonly pb::FieldCodec<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData> _repeated_baseClasses_codec
        = pb::FieldCodec.ForMessage(50, global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData.Parser);
    private readonly pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData> baseClasses_ = new pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData> BaseClasses {
      get { return baseClasses_; }
    }

    /// <summary>Field number for the "DEPRECATED_id" field.</summary>
    public const int DEPRECATEDIdFieldNumber = 2;
    private pb::ByteString dEPRECATEDId_ = pb::ByteString.Empty;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public pb::ByteString DEPRECATEDId {
      get { return dEPRECATEDId_; }
      set {
        dEPRECATEDId_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as DEPRECATED_ClassTypeData1);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(DEPRECATED_ClassTypeData1 other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (Version != other.Version) return false;
      if (!object.Equals(Id, other.Id)) return false;
      if(!typeParameters_.Equals(other.typeParameters_)) return false;
      if(!properties_.Equals(other.properties_)) return false;
      if(!functions_.Equals(other.functions_)) return false;
      if(!baseClasses_.Equals(other.baseClasses_)) return false;
      if (DEPRECATEDId != other.DEPRECATEDId) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (Version != 0) hash ^= Version.GetHashCode();
      if (id_ != null) hash ^= Id.GetHashCode();
      hash ^= typeParameters_.GetHashCode();
      hash ^= properties_.GetHashCode();
      hash ^= functions_.GetHashCode();
      hash ^= baseClasses_.GetHashCode();
      if (DEPRECATEDId.Length != 0) hash ^= DEPRECATEDId.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (DEPRECATEDId.Length != 0) {
        output.WriteRawTag(18);
        output.WriteBytes(DEPRECATEDId);
      }
      typeParameters_.WriteTo(output, _repeated_typeParameters_codec);
      properties_.WriteTo(output, _repeated_properties_codec);
      functions_.WriteTo(output, _repeated_functions_codec);
      baseClasses_.WriteTo(output, _repeated_baseClasses_codec);
      if (id_ != null) {
        output.WriteRawTag(58);
        output.WriteMessage(Id);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (DEPRECATEDId.Length != 0) {
        output.WriteRawTag(18);
        output.WriteBytes(DEPRECATEDId);
      }
      typeParameters_.WriteTo(ref output, _repeated_typeParameters_codec);
      properties_.WriteTo(ref output, _repeated_properties_codec);
      functions_.WriteTo(ref output, _repeated_functions_codec);
      baseClasses_.WriteTo(ref output, _repeated_baseClasses_codec);
      if (id_ != null) {
        output.WriteRawTag(58);
        output.WriteMessage(Id);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (Version != 0) {
        size += 1 + pb::CodedOutputStream.ComputeInt32Size(Version);
      }
      if (id_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Id);
      }
      size += typeParameters_.CalculateSize(_repeated_typeParameters_codec);
      size += properties_.CalculateSize(_repeated_properties_codec);
      size += functions_.CalculateSize(_repeated_functions_codec);
      size += baseClasses_.CalculateSize(_repeated_baseClasses_codec);
      if (DEPRECATEDId.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeBytesSize(DEPRECATEDId);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(DEPRECATED_ClassTypeData1 other) {
      if (other == null) {
        return;
      }
      if (other.Version != 0) {
        Version = other.Version;
      }
      if (other.id_ != null) {
        if (id_ == null) {
          Id = new global::RecRoom.Protobuf.Core.GuidData();
        }
        Id.MergeFrom(other.Id);
      }
      typeParameters_.Add(other.typeParameters_);
      properties_.Add(other.properties_);
      functions_.Add(other.functions_);
      baseClasses_.Add(other.baseClasses_);
      if (other.DEPRECATEDId.Length != 0) {
        DEPRECATEDId = other.DEPRECATEDId;
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            DEPRECATEDId = input.ReadBytes();
            break;
          }
          case 26: {
            typeParameters_.AddEntriesFrom(input, _repeated_typeParameters_codec);
            break;
          }
          case 34: {
            properties_.AddEntriesFrom(input, _repeated_properties_codec);
            break;
          }
          case 42: {
            functions_.AddEntriesFrom(input, _repeated_functions_codec);
            break;
          }
          case 50: {
            baseClasses_.AddEntriesFrom(input, _repeated_baseClasses_codec);
            break;
          }
          case 58: {
            if (id_ == null) {
              Id = new global::RecRoom.Protobuf.Core.GuidData();
            }
            input.ReadMessage(Id);
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            DEPRECATEDId = input.ReadBytes();
            break;
          }
          case 26: {
            typeParameters_.AddEntriesFrom(ref input, _repeated_typeParameters_codec);
            break;
          }
          case 34: {
            properties_.AddEntriesFrom(ref input, _repeated_properties_codec);
            break;
          }
          case 42: {
            functions_.AddEntriesFrom(ref input, _repeated_functions_codec);
            break;
          }
          case 50: {
            baseClasses_.AddEntriesFrom(ref input, _repeated_baseClasses_codec);
            break;
          }
          case 58: {
            if (id_ == null) {
              Id = new global::RecRoom.Protobuf.Core.GuidData();
            }
            input.ReadMessage(Id);
            break;
          }
        }
      }
    }
    #endif

    #region Nested types
    /// <summary>Container for nested types declared in the DEPRECATED_ClassTypeData1 message type.</summary>
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static partial class Types {
      [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
      public sealed partial class PropertiesEntry : pb::IMessage<PropertiesEntry>
      #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
          , pb::IBufferMessage
      #endif
      {
        private static readonly pb::MessageParser<PropertiesEntry> _parser = new pb::MessageParser<PropertiesEntry>(() => new PropertiesEntry());
        private pb::UnknownFieldSet _unknownFields;
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public static pb::MessageParser<PropertiesEntry> Parser { get { return _parser; } }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public static pbr::MessageDescriptor Descriptor {
          get { return global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1.Descriptor.NestedTypes[0]; }
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        pbr::MessageDescriptor pb::IMessage.Descriptor {
          get { return Descriptor; }
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public PropertiesEntry() {
          OnConstruction();
        }

        partial void OnConstruction();

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public PropertiesEntry(PropertiesEntry other) : this() {
          key_ = other.key_;
          value_ = other.value_ != null ? other.value_.Clone() : null;
          _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public PropertiesEntry Clone() {
          return new PropertiesEntry(this);
        }

        /// <summary>Field number for the "key" field.</summary>
        public const int KeyFieldNumber = 1;
        private string key_ = "";
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public string Key {
          get { return key_; }
          set {
            key_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
          }
        }

        /// <summary>Field number for the "value" field.</summary>
        public const int ValueFieldNumber = 2;
        private global::CircuitsV2.Protobuf.DEPRECATED_PropertyData value_;
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public global::CircuitsV2.Protobuf.DEPRECATED_PropertyData Value {
          get { return value_; }
          set {
            value_ = value;
          }
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public override bool Equals(object other) {
          return Equals(other as PropertiesEntry);
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public bool Equals(PropertiesEntry other) {
          if (ReferenceEquals(other, null)) {
            return false;
          }
          if (ReferenceEquals(other, this)) {
            return true;
          }
          if (Key != other.Key) return false;
          if (!object.Equals(Value, other.Value)) return false;
          return Equals(_unknownFields, other._unknownFields);
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public override int GetHashCode() {
          int hash = 1;
          if (Key.Length != 0) hash ^= Key.GetHashCode();
          if (value_ != null) hash ^= Value.GetHashCode();
          if (_unknownFields != null) {
            hash ^= _unknownFields.GetHashCode();
          }
          return hash;
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public override string ToString() {
          return pb::JsonFormatter.ToDiagnosticString(this);
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public void WriteTo(pb::CodedOutputStream output) {
        #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
          output.WriteRawMessage(this);
        #else
          if (Key.Length != 0) {
            output.WriteRawTag(10);
            output.WriteString(Key);
          }
          if (value_ != null) {
            output.WriteRawTag(18);
            output.WriteMessage(Value);
          }
          if (_unknownFields != null) {
            _unknownFields.WriteTo(output);
          }
        #endif
        }

        #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
          if (Key.Length != 0) {
            output.WriteRawTag(10);
            output.WriteString(Key);
          }
          if (value_ != null) {
            output.WriteRawTag(18);
            output.WriteMessage(Value);
          }
          if (_unknownFields != null) {
            _unknownFields.WriteTo(ref output);
          }
        }
        #endif

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public int CalculateSize() {
          int size = 0;
          if (Key.Length != 0) {
            size += 1 + pb::CodedOutputStream.ComputeStringSize(Key);
          }
          if (value_ != null) {
            size += 1 + pb::CodedOutputStream.ComputeMessageSize(Value);
          }
          if (_unknownFields != null) {
            size += _unknownFields.CalculateSize();
          }
          return size;
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public void MergeFrom(PropertiesEntry other) {
          if (other == null) {
            return;
          }
          if (other.Key.Length != 0) {
            Key = other.Key;
          }
          if (other.value_ != null) {
            if (value_ == null) {
              Value = new global::CircuitsV2.Protobuf.DEPRECATED_PropertyData();
            }
            Value.MergeFrom(other.Value);
          }
          _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public void MergeFrom(pb::CodedInputStream input) {
        #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
          input.ReadRawMessage(this);
        #else
          uint tag;
          while ((tag = input.ReadTag()) != 0) {
          if ((tag & 7) == 4) {
            // Abort on any end group tag.
            return;
          }
          switch(tag) {
              default:
                _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
                break;
              case 10: {
                Key = input.ReadString();
                break;
              }
              case 18: {
                if (value_ == null) {
                  Value = new global::CircuitsV2.Protobuf.DEPRECATED_PropertyData();
                }
                input.ReadMessage(Value);
                break;
              }
            }
          }
        #endif
        }

        #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
          uint tag;
          while ((tag = input.ReadTag()) != 0) {
          if ((tag & 7) == 4) {
            // Abort on any end group tag.
            return;
          }
          switch(tag) {
              default:
                _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
                break;
              case 10: {
                Key = input.ReadString();
                break;
              }
              case 18: {
                if (value_ == null) {
                  Value = new global::CircuitsV2.Protobuf.DEPRECATED_PropertyData();
                }
                input.ReadMessage(Value);
                break;
              }
            }
          }
        }
        #endif

      }

      [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
      public sealed partial class FunctionsEntry : pb::IMessage<FunctionsEntry>
      #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
          , pb::IBufferMessage
      #endif
      {
        private static readonly pb::MessageParser<FunctionsEntry> _parser = new pb::MessageParser<FunctionsEntry>(() => new FunctionsEntry());
        private pb::UnknownFieldSet _unknownFields;
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public static pb::MessageParser<FunctionsEntry> Parser { get { return _parser; } }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public static pbr::MessageDescriptor Descriptor {
          get { return global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData1.Descriptor.NestedTypes[1]; }
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        pbr::MessageDescriptor pb::IMessage.Descriptor {
          get { return Descriptor; }
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public FunctionsEntry() {
          OnConstruction();
        }

        partial void OnConstruction();

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public FunctionsEntry(FunctionsEntry other) : this() {
          key_ = other.key_;
          value_ = other.value_ != null ? other.value_.Clone() : null;
          _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public FunctionsEntry Clone() {
          return new FunctionsEntry(this);
        }

        /// <summary>Field number for the "key" field.</summary>
        public const int KeyFieldNumber = 1;
        private string key_ = "";
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public string Key {
          get { return key_; }
          set {
            key_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
          }
        }

        /// <summary>Field number for the "value" field.</summary>
        public const int ValueFieldNumber = 2;
        private global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData value_;
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData Value {
          get { return value_; }
          set {
            value_ = value;
          }
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public override bool Equals(object other) {
          return Equals(other as FunctionsEntry);
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public bool Equals(FunctionsEntry other) {
          if (ReferenceEquals(other, null)) {
            return false;
          }
          if (ReferenceEquals(other, this)) {
            return true;
          }
          if (Key != other.Key) return false;
          if (!object.Equals(Value, other.Value)) return false;
          return Equals(_unknownFields, other._unknownFields);
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public override int GetHashCode() {
          int hash = 1;
          if (Key.Length != 0) hash ^= Key.GetHashCode();
          if (value_ != null) hash ^= Value.GetHashCode();
          if (_unknownFields != null) {
            hash ^= _unknownFields.GetHashCode();
          }
          return hash;
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public override string ToString() {
          return pb::JsonFormatter.ToDiagnosticString(this);
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public void WriteTo(pb::CodedOutputStream output) {
        #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
          output.WriteRawMessage(this);
        #else
          if (Key.Length != 0) {
            output.WriteRawTag(10);
            output.WriteString(Key);
          }
          if (value_ != null) {
            output.WriteRawTag(18);
            output.WriteMessage(Value);
          }
          if (_unknownFields != null) {
            _unknownFields.WriteTo(output);
          }
        #endif
        }

        #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
          if (Key.Length != 0) {
            output.WriteRawTag(10);
            output.WriteString(Key);
          }
          if (value_ != null) {
            output.WriteRawTag(18);
            output.WriteMessage(Value);
          }
          if (_unknownFields != null) {
            _unknownFields.WriteTo(ref output);
          }
        }
        #endif

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public int CalculateSize() {
          int size = 0;
          if (Key.Length != 0) {
            size += 1 + pb::CodedOutputStream.ComputeStringSize(Key);
          }
          if (value_ != null) {
            size += 1 + pb::CodedOutputStream.ComputeMessageSize(Value);
          }
          if (_unknownFields != null) {
            size += _unknownFields.CalculateSize();
          }
          return size;
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public void MergeFrom(FunctionsEntry other) {
          if (other == null) {
            return;
          }
          if (other.Key.Length != 0) {
            Key = other.Key;
          }
          if (other.value_ != null) {
            if (value_ == null) {
              Value = new global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData();
            }
            Value.MergeFrom(other.Value);
          }
          _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public void MergeFrom(pb::CodedInputStream input) {
        #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
          input.ReadRawMessage(this);
        #else
          uint tag;
          while ((tag = input.ReadTag()) != 0) {
          if ((tag & 7) == 4) {
            // Abort on any end group tag.
            return;
          }
          switch(tag) {
              default:
                _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
                break;
              case 10: {
                Key = input.ReadString();
                break;
              }
              case 18: {
                if (value_ == null) {
                  Value = new global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData();
                }
                input.ReadMessage(Value);
                break;
              }
            }
          }
        #endif
        }

        #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
          uint tag;
          while ((tag = input.ReadTag()) != 0) {
          if ((tag & 7) == 4) {
            // Abort on any end group tag.
            return;
          }
          switch(tag) {
              default:
                _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
                break;
              case 10: {
                Key = input.ReadString();
                break;
              }
              case 18: {
                if (value_ == null) {
                  Value = new global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData();
                }
                input.ReadMessage(Value);
                break;
              }
            }
          }
        }
        #endif

      }

    }
    #endregion

  }

  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class DEPRECATED_FunctionTypeData : pb::IMessage<DEPRECATED_FunctionTypeData>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<DEPRECATED_FunctionTypeData> _parser = new pb::MessageParser<DEPRECATED_FunctionTypeData>(() => new DEPRECATED_FunctionTypeData());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<DEPRECATED_FunctionTypeData> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::CircuitsV2.Protobuf.DEPRECATEDCircuitTypeDataReflection.Descriptor.MessageTypes[3]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_FunctionTypeData() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_FunctionTypeData(DEPRECATED_FunctionTypeData other) : this() {
      version_ = other.version_;
      typeParameters_ = other.typeParameters_.Clone();
      inputs_ = other.inputs_.Clone();
      outputs_ = other.outputs_.Clone();
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_FunctionTypeData Clone() {
      return new DEPRECATED_FunctionTypeData(this);
    }

    /// <summary>Field number for the "version" field.</summary>
    public const int VersionFieldNumber = 1;
    private int version_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int Version {
      get { return version_; }
      set {
        version_ = value;
      }
    }

    /// <summary>Field number for the "type_parameters" field.</summary>
    public const int TypeParametersFieldNumber = 2;
    private static readonly pb::FieldCodec<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData> _repeated_typeParameters_codec
        = pb::FieldCodec.ForMessage(18, global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData.Parser);
    private readonly pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData> typeParameters_ = new pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData> TypeParameters {
      get { return typeParameters_; }
    }

    /// <summary>Field number for the "inputs" field.</summary>
    public const int InputsFieldNumber = 3;
    private static readonly pb::FieldCodec<global::CircuitsV2.Protobuf.DEPRECATED_KeyedFunctionInputData> _repeated_inputs_codec
        = pb::FieldCodec.ForMessage(26, global::CircuitsV2.Protobuf.DEPRECATED_KeyedFunctionInputData.Parser);
    private readonly pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_KeyedFunctionInputData> inputs_ = new pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_KeyedFunctionInputData>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_KeyedFunctionInputData> Inputs {
      get { return inputs_; }
    }

    /// <summary>Field number for the "outputs" field.</summary>
    public const int OutputsFieldNumber = 4;
    private static readonly pb::FieldCodec<global::CircuitsV2.Protobuf.DEPRECATED_KeyedFunctionOutputData> _repeated_outputs_codec
        = pb::FieldCodec.ForMessage(34, global::CircuitsV2.Protobuf.DEPRECATED_KeyedFunctionOutputData.Parser);
    private readonly pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_KeyedFunctionOutputData> outputs_ = new pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_KeyedFunctionOutputData>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_KeyedFunctionOutputData> Outputs {
      get { return outputs_; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as DEPRECATED_FunctionTypeData);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(DEPRECATED_FunctionTypeData other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (Version != other.Version) return false;
      if(!typeParameters_.Equals(other.typeParameters_)) return false;
      if(!inputs_.Equals(other.inputs_)) return false;
      if(!outputs_.Equals(other.outputs_)) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (Version != 0) hash ^= Version.GetHashCode();
      hash ^= typeParameters_.GetHashCode();
      hash ^= inputs_.GetHashCode();
      hash ^= outputs_.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      typeParameters_.WriteTo(output, _repeated_typeParameters_codec);
      inputs_.WriteTo(output, _repeated_inputs_codec);
      outputs_.WriteTo(output, _repeated_outputs_codec);
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      typeParameters_.WriteTo(ref output, _repeated_typeParameters_codec);
      inputs_.WriteTo(ref output, _repeated_inputs_codec);
      outputs_.WriteTo(ref output, _repeated_outputs_codec);
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (Version != 0) {
        size += 1 + pb::CodedOutputStream.ComputeInt32Size(Version);
      }
      size += typeParameters_.CalculateSize(_repeated_typeParameters_codec);
      size += inputs_.CalculateSize(_repeated_inputs_codec);
      size += outputs_.CalculateSize(_repeated_outputs_codec);
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(DEPRECATED_FunctionTypeData other) {
      if (other == null) {
        return;
      }
      if (other.Version != 0) {
        Version = other.Version;
      }
      typeParameters_.Add(other.typeParameters_);
      inputs_.Add(other.inputs_);
      outputs_.Add(other.outputs_);
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            typeParameters_.AddEntriesFrom(input, _repeated_typeParameters_codec);
            break;
          }
          case 26: {
            inputs_.AddEntriesFrom(input, _repeated_inputs_codec);
            break;
          }
          case 34: {
            outputs_.AddEntriesFrom(input, _repeated_outputs_codec);
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            typeParameters_.AddEntriesFrom(ref input, _repeated_typeParameters_codec);
            break;
          }
          case 26: {
            inputs_.AddEntriesFrom(ref input, _repeated_inputs_codec);
            break;
          }
          case 34: {
            outputs_.AddEntriesFrom(ref input, _repeated_outputs_codec);
            break;
          }
        }
      }
    }
    #endif

  }

  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class DEPRECATED_FunctionInputData : pb::IMessage<DEPRECATED_FunctionInputData>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<DEPRECATED_FunctionInputData> _parser = new pb::MessageParser<DEPRECATED_FunctionInputData>(() => new DEPRECATED_FunctionInputData());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<DEPRECATED_FunctionInputData> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::CircuitsV2.Protobuf.DEPRECATEDCircuitTypeDataReflection.Descriptor.MessageTypes[4]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_FunctionInputData() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_FunctionInputData(DEPRECATED_FunctionInputData other) : this() {
      version_ = other.version_;
      type_ = other.type_ != null ? other.type_.Clone() : null;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_FunctionInputData Clone() {
      return new DEPRECATED_FunctionInputData(this);
    }

    /// <summary>Field number for the "version" field.</summary>
    public const int VersionFieldNumber = 1;
    private int version_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int Version {
      get { return version_; }
      set {
        version_ = value;
      }
    }

    /// <summary>Field number for the "type" field.</summary>
    public const int TypeFieldNumber = 2;
    private global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData type_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData Type {
      get { return type_; }
      set {
        type_ = value;
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as DEPRECATED_FunctionInputData);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(DEPRECATED_FunctionInputData other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (Version != other.Version) return false;
      if (!object.Equals(Type, other.Type)) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (Version != 0) hash ^= Version.GetHashCode();
      if (type_ != null) hash ^= Type.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (type_ != null) {
        output.WriteRawTag(18);
        output.WriteMessage(Type);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (type_ != null) {
        output.WriteRawTag(18);
        output.WriteMessage(Type);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (Version != 0) {
        size += 1 + pb::CodedOutputStream.ComputeInt32Size(Version);
      }
      if (type_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Type);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(DEPRECATED_FunctionInputData other) {
      if (other == null) {
        return;
      }
      if (other.Version != 0) {
        Version = other.Version;
      }
      if (other.type_ != null) {
        if (type_ == null) {
          Type = new global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData();
        }
        Type.MergeFrom(other.Type);
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            if (type_ == null) {
              Type = new global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData();
            }
            input.ReadMessage(Type);
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            if (type_ == null) {
              Type = new global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData();
            }
            input.ReadMessage(Type);
            break;
          }
        }
      }
    }
    #endif

  }

  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class DEPRECATED_KeyedFunctionInputData : pb::IMessage<DEPRECATED_KeyedFunctionInputData>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<DEPRECATED_KeyedFunctionInputData> _parser = new pb::MessageParser<DEPRECATED_KeyedFunctionInputData>(() => new DEPRECATED_KeyedFunctionInputData());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<DEPRECATED_KeyedFunctionInputData> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::CircuitsV2.Protobuf.DEPRECATEDCircuitTypeDataReflection.Descriptor.MessageTypes[5]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_KeyedFunctionInputData() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_KeyedFunctionInputData(DEPRECATED_KeyedFunctionInputData other) : this() {
      version_ = other.version_;
      key_ = other.key_;
      value_ = other.value_ != null ? other.value_.Clone() : null;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_KeyedFunctionInputData Clone() {
      return new DEPRECATED_KeyedFunctionInputData(this);
    }

    /// <summary>Field number for the "version" field.</summary>
    public const int VersionFieldNumber = 1;
    private int version_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int Version {
      get { return version_; }
      set {
        version_ = value;
      }
    }

    /// <summary>Field number for the "key" field.</summary>
    public const int KeyFieldNumber = 2;
    private string key_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string Key {
      get { return key_; }
      set {
        key_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "value" field.</summary>
    public const int ValueFieldNumber = 3;
    private global::CircuitsV2.Protobuf.DEPRECATED_FunctionInputData value_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.DEPRECATED_FunctionInputData Value {
      get { return value_; }
      set {
        value_ = value;
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as DEPRECATED_KeyedFunctionInputData);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(DEPRECATED_KeyedFunctionInputData other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (Version != other.Version) return false;
      if (Key != other.Key) return false;
      if (!object.Equals(Value, other.Value)) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (Version != 0) hash ^= Version.GetHashCode();
      if (Key.Length != 0) hash ^= Key.GetHashCode();
      if (value_ != null) hash ^= Value.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (Key.Length != 0) {
        output.WriteRawTag(18);
        output.WriteString(Key);
      }
      if (value_ != null) {
        output.WriteRawTag(26);
        output.WriteMessage(Value);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (Key.Length != 0) {
        output.WriteRawTag(18);
        output.WriteString(Key);
      }
      if (value_ != null) {
        output.WriteRawTag(26);
        output.WriteMessage(Value);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (Version != 0) {
        size += 1 + pb::CodedOutputStream.ComputeInt32Size(Version);
      }
      if (Key.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(Key);
      }
      if (value_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Value);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(DEPRECATED_KeyedFunctionInputData other) {
      if (other == null) {
        return;
      }
      if (other.Version != 0) {
        Version = other.Version;
      }
      if (other.Key.Length != 0) {
        Key = other.Key;
      }
      if (other.value_ != null) {
        if (value_ == null) {
          Value = new global::CircuitsV2.Protobuf.DEPRECATED_FunctionInputData();
        }
        Value.MergeFrom(other.Value);
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            Key = input.ReadString();
            break;
          }
          case 26: {
            if (value_ == null) {
              Value = new global::CircuitsV2.Protobuf.DEPRECATED_FunctionInputData();
            }
            input.ReadMessage(Value);
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            Key = input.ReadString();
            break;
          }
          case 26: {
            if (value_ == null) {
              Value = new global::CircuitsV2.Protobuf.DEPRECATED_FunctionInputData();
            }
            input.ReadMessage(Value);
            break;
          }
        }
      }
    }
    #endif

  }

  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class DEPRECATED_PropertyData : pb::IMessage<DEPRECATED_PropertyData>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<DEPRECATED_PropertyData> _parser = new pb::MessageParser<DEPRECATED_PropertyData>(() => new DEPRECATED_PropertyData());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<DEPRECATED_PropertyData> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::CircuitsV2.Protobuf.DEPRECATEDCircuitTypeDataReflection.Descriptor.MessageTypes[6]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_PropertyData() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_PropertyData(DEPRECATED_PropertyData other) : this() {
      version_ = other.version_;
      type_ = other.type_ != null ? other.type_.Clone() : null;
      get_ = other.get_;
      set_ = other.set_;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_PropertyData Clone() {
      return new DEPRECATED_PropertyData(this);
    }

    /// <summary>Field number for the "version" field.</summary>
    public const int VersionFieldNumber = 1;
    private int version_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int Version {
      get { return version_; }
      set {
        version_ = value;
      }
    }

    /// <summary>Field number for the "type" field.</summary>
    public const int TypeFieldNumber = 2;
    private global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData type_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData Type {
      get { return type_; }
      set {
        type_ = value;
      }
    }

    /// <summary>Field number for the "get" field.</summary>
    public const int GetFieldNumber = 3;
    private bool get_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Get {
      get { return get_; }
      set {
        get_ = value;
      }
    }

    /// <summary>Field number for the "set" field.</summary>
    public const int SetFieldNumber = 4;
    private bool set_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Set {
      get { return set_; }
      set {
        set_ = value;
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as DEPRECATED_PropertyData);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(DEPRECATED_PropertyData other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (Version != other.Version) return false;
      if (!object.Equals(Type, other.Type)) return false;
      if (Get != other.Get) return false;
      if (Set != other.Set) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (Version != 0) hash ^= Version.GetHashCode();
      if (type_ != null) hash ^= Type.GetHashCode();
      if (Get != false) hash ^= Get.GetHashCode();
      if (Set != false) hash ^= Set.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (type_ != null) {
        output.WriteRawTag(18);
        output.WriteMessage(Type);
      }
      if (Get != false) {
        output.WriteRawTag(24);
        output.WriteBool(Get);
      }
      if (Set != false) {
        output.WriteRawTag(32);
        output.WriteBool(Set);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (type_ != null) {
        output.WriteRawTag(18);
        output.WriteMessage(Type);
      }
      if (Get != false) {
        output.WriteRawTag(24);
        output.WriteBool(Get);
      }
      if (Set != false) {
        output.WriteRawTag(32);
        output.WriteBool(Set);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (Version != 0) {
        size += 1 + pb::CodedOutputStream.ComputeInt32Size(Version);
      }
      if (type_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Type);
      }
      if (Get != false) {
        size += 1 + 1;
      }
      if (Set != false) {
        size += 1 + 1;
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(DEPRECATED_PropertyData other) {
      if (other == null) {
        return;
      }
      if (other.Version != 0) {
        Version = other.Version;
      }
      if (other.type_ != null) {
        if (type_ == null) {
          Type = new global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData();
        }
        Type.MergeFrom(other.Type);
      }
      if (other.Get != false) {
        Get = other.Get;
      }
      if (other.Set != false) {
        Set = other.Set;
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            if (type_ == null) {
              Type = new global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData();
            }
            input.ReadMessage(Type);
            break;
          }
          case 24: {
            Get = input.ReadBool();
            break;
          }
          case 32: {
            Set = input.ReadBool();
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            if (type_ == null) {
              Type = new global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData();
            }
            input.ReadMessage(Type);
            break;
          }
          case 24: {
            Get = input.ReadBool();
            break;
          }
          case 32: {
            Set = input.ReadBool();
            break;
          }
        }
      }
    }
    #endif

  }

  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class DEPRECATED_FunctionOutputData : pb::IMessage<DEPRECATED_FunctionOutputData>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<DEPRECATED_FunctionOutputData> _parser = new pb::MessageParser<DEPRECATED_FunctionOutputData>(() => new DEPRECATED_FunctionOutputData());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<DEPRECATED_FunctionOutputData> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::CircuitsV2.Protobuf.DEPRECATEDCircuitTypeDataReflection.Descriptor.MessageTypes[7]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_FunctionOutputData() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_FunctionOutputData(DEPRECATED_FunctionOutputData other) : this() {
      version_ = other.version_;
      type_ = other.type_ != null ? other.type_.Clone() : null;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_FunctionOutputData Clone() {
      return new DEPRECATED_FunctionOutputData(this);
    }

    /// <summary>Field number for the "version" field.</summary>
    public const int VersionFieldNumber = 1;
    private int version_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int Version {
      get { return version_; }
      set {
        version_ = value;
      }
    }

    /// <summary>Field number for the "type" field.</summary>
    public const int TypeFieldNumber = 2;
    private global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData type_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData Type {
      get { return type_; }
      set {
        type_ = value;
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as DEPRECATED_FunctionOutputData);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(DEPRECATED_FunctionOutputData other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (Version != other.Version) return false;
      if (!object.Equals(Type, other.Type)) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (Version != 0) hash ^= Version.GetHashCode();
      if (type_ != null) hash ^= Type.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (type_ != null) {
        output.WriteRawTag(18);
        output.WriteMessage(Type);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (type_ != null) {
        output.WriteRawTag(18);
        output.WriteMessage(Type);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (Version != 0) {
        size += 1 + pb::CodedOutputStream.ComputeInt32Size(Version);
      }
      if (type_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Type);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(DEPRECATED_FunctionOutputData other) {
      if (other == null) {
        return;
      }
      if (other.Version != 0) {
        Version = other.Version;
      }
      if (other.type_ != null) {
        if (type_ == null) {
          Type = new global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData();
        }
        Type.MergeFrom(other.Type);
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            if (type_ == null) {
              Type = new global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData();
            }
            input.ReadMessage(Type);
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            if (type_ == null) {
              Type = new global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData();
            }
            input.ReadMessage(Type);
            break;
          }
        }
      }
    }
    #endif

  }

  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class DEPRECATED_KeyedFunctionOutputData : pb::IMessage<DEPRECATED_KeyedFunctionOutputData>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<DEPRECATED_KeyedFunctionOutputData> _parser = new pb::MessageParser<DEPRECATED_KeyedFunctionOutputData>(() => new DEPRECATED_KeyedFunctionOutputData());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<DEPRECATED_KeyedFunctionOutputData> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::CircuitsV2.Protobuf.DEPRECATEDCircuitTypeDataReflection.Descriptor.MessageTypes[8]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_KeyedFunctionOutputData() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_KeyedFunctionOutputData(DEPRECATED_KeyedFunctionOutputData other) : this() {
      version_ = other.version_;
      key_ = other.key_;
      value_ = other.value_ != null ? other.value_.Clone() : null;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_KeyedFunctionOutputData Clone() {
      return new DEPRECATED_KeyedFunctionOutputData(this);
    }

    /// <summary>Field number for the "version" field.</summary>
    public const int VersionFieldNumber = 1;
    private int version_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int Version {
      get { return version_; }
      set {
        version_ = value;
      }
    }

    /// <summary>Field number for the "key" field.</summary>
    public const int KeyFieldNumber = 2;
    private string key_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string Key {
      get { return key_; }
      set {
        key_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "value" field.</summary>
    public const int ValueFieldNumber = 3;
    private global::CircuitsV2.Protobuf.DEPRECATED_FunctionOutputData value_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.DEPRECATED_FunctionOutputData Value {
      get { return value_; }
      set {
        value_ = value;
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as DEPRECATED_KeyedFunctionOutputData);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(DEPRECATED_KeyedFunctionOutputData other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (Version != other.Version) return false;
      if (Key != other.Key) return false;
      if (!object.Equals(Value, other.Value)) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (Version != 0) hash ^= Version.GetHashCode();
      if (Key.Length != 0) hash ^= Key.GetHashCode();
      if (value_ != null) hash ^= Value.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (Key.Length != 0) {
        output.WriteRawTag(18);
        output.WriteString(Key);
      }
      if (value_ != null) {
        output.WriteRawTag(26);
        output.WriteMessage(Value);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (Key.Length != 0) {
        output.WriteRawTag(18);
        output.WriteString(Key);
      }
      if (value_ != null) {
        output.WriteRawTag(26);
        output.WriteMessage(Value);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (Version != 0) {
        size += 1 + pb::CodedOutputStream.ComputeInt32Size(Version);
      }
      if (Key.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(Key);
      }
      if (value_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Value);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(DEPRECATED_KeyedFunctionOutputData other) {
      if (other == null) {
        return;
      }
      if (other.Version != 0) {
        Version = other.Version;
      }
      if (other.Key.Length != 0) {
        Key = other.Key;
      }
      if (other.value_ != null) {
        if (value_ == null) {
          Value = new global::CircuitsV2.Protobuf.DEPRECATED_FunctionOutputData();
        }
        Value.MergeFrom(other.Value);
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            Key = input.ReadString();
            break;
          }
          case 26: {
            if (value_ == null) {
              Value = new global::CircuitsV2.Protobuf.DEPRECATED_FunctionOutputData();
            }
            input.ReadMessage(Value);
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            Key = input.ReadString();
            break;
          }
          case 26: {
            if (value_ == null) {
              Value = new global::CircuitsV2.Protobuf.DEPRECATED_FunctionOutputData();
            }
            input.ReadMessage(Value);
            break;
          }
        }
      }
    }
    #endif

  }

  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class DEPRECATED_TypeParameterReferenceTypeData : pb::IMessage<DEPRECATED_TypeParameterReferenceTypeData>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<DEPRECATED_TypeParameterReferenceTypeData> _parser = new pb::MessageParser<DEPRECATED_TypeParameterReferenceTypeData>(() => new DEPRECATED_TypeParameterReferenceTypeData());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<DEPRECATED_TypeParameterReferenceTypeData> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::CircuitsV2.Protobuf.DEPRECATEDCircuitTypeDataReflection.Descriptor.MessageTypes[9]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_TypeParameterReferenceTypeData() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_TypeParameterReferenceTypeData(DEPRECATED_TypeParameterReferenceTypeData other) : this() {
      version_ = other.version_;
      name_ = other.name_;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_TypeParameterReferenceTypeData Clone() {
      return new DEPRECATED_TypeParameterReferenceTypeData(this);
    }

    /// <summary>Field number for the "version" field.</summary>
    public const int VersionFieldNumber = 1;
    private int version_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int Version {
      get { return version_; }
      set {
        version_ = value;
      }
    }

    /// <summary>Field number for the "name" field.</summary>
    public const int NameFieldNumber = 2;
    private string name_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string Name {
      get { return name_; }
      set {
        name_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as DEPRECATED_TypeParameterReferenceTypeData);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(DEPRECATED_TypeParameterReferenceTypeData other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (Version != other.Version) return false;
      if (Name != other.Name) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (Version != 0) hash ^= Version.GetHashCode();
      if (Name.Length != 0) hash ^= Name.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (Name.Length != 0) {
        output.WriteRawTag(18);
        output.WriteString(Name);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (Name.Length != 0) {
        output.WriteRawTag(18);
        output.WriteString(Name);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (Version != 0) {
        size += 1 + pb::CodedOutputStream.ComputeInt32Size(Version);
      }
      if (Name.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(Name);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(DEPRECATED_TypeParameterReferenceTypeData other) {
      if (other == null) {
        return;
      }
      if (other.Version != 0) {
        Version = other.Version;
      }
      if (other.Name.Length != 0) {
        Name = other.Name;
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            Name = input.ReadString();
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            Name = input.ReadString();
            break;
          }
        }
      }
    }
    #endif

  }

  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class DEPRECATED_TypeParameterTypeData : pb::IMessage<DEPRECATED_TypeParameterTypeData>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<DEPRECATED_TypeParameterTypeData> _parser = new pb::MessageParser<DEPRECATED_TypeParameterTypeData>(() => new DEPRECATED_TypeParameterTypeData());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<DEPRECATED_TypeParameterTypeData> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::CircuitsV2.Protobuf.DEPRECATEDCircuitTypeDataReflection.Descriptor.MessageTypes[10]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_TypeParameterTypeData() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_TypeParameterTypeData(DEPRECATED_TypeParameterTypeData other) : this() {
      version_ = other.version_;
      name_ = other.name_;
      constraint_ = other.constraint_ != null ? other.constraint_.Clone() : null;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_TypeParameterTypeData Clone() {
      return new DEPRECATED_TypeParameterTypeData(this);
    }

    /// <summary>Field number for the "version" field.</summary>
    public const int VersionFieldNumber = 1;
    private int version_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int Version {
      get { return version_; }
      set {
        version_ = value;
      }
    }

    /// <summary>Field number for the "name" field.</summary>
    public const int NameFieldNumber = 2;
    private string name_ = "";
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string Name {
      get { return name_; }
      set {
        name_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }

    /// <summary>Field number for the "constraint" field.</summary>
    public const int ConstraintFieldNumber = 3;
    private global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData constraint_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData Constraint {
      get { return constraint_; }
      set {
        constraint_ = value;
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as DEPRECATED_TypeParameterTypeData);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(DEPRECATED_TypeParameterTypeData other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (Version != other.Version) return false;
      if (Name != other.Name) return false;
      if (!object.Equals(Constraint, other.Constraint)) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (Version != 0) hash ^= Version.GetHashCode();
      if (Name.Length != 0) hash ^= Name.GetHashCode();
      if (constraint_ != null) hash ^= Constraint.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (Name.Length != 0) {
        output.WriteRawTag(18);
        output.WriteString(Name);
      }
      if (constraint_ != null) {
        output.WriteRawTag(26);
        output.WriteMessage(Constraint);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      if (Name.Length != 0) {
        output.WriteRawTag(18);
        output.WriteString(Name);
      }
      if (constraint_ != null) {
        output.WriteRawTag(26);
        output.WriteMessage(Constraint);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (Version != 0) {
        size += 1 + pb::CodedOutputStream.ComputeInt32Size(Version);
      }
      if (Name.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(Name);
      }
      if (constraint_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Constraint);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(DEPRECATED_TypeParameterTypeData other) {
      if (other == null) {
        return;
      }
      if (other.Version != 0) {
        Version = other.Version;
      }
      if (other.Name.Length != 0) {
        Name = other.Name;
      }
      if (other.constraint_ != null) {
        if (constraint_ == null) {
          Constraint = new global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData();
        }
        Constraint.MergeFrom(other.Constraint);
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            Name = input.ReadString();
            break;
          }
          case 26: {
            if (constraint_ == null) {
              Constraint = new global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData();
            }
            input.ReadMessage(Constraint);
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            Name = input.ReadString();
            break;
          }
          case 26: {
            if (constraint_ == null) {
              Constraint = new global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData();
            }
            input.ReadMessage(Constraint);
            break;
          }
        }
      }
    }
    #endif

  }

  [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
  public sealed partial class DEPRECATED_ClassTypeData0 : pb::IMessage<DEPRECATED_ClassTypeData0>
  #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      , pb::IBufferMessage
  #endif
  {
    private static readonly pb::MessageParser<DEPRECATED_ClassTypeData0> _parser = new pb::MessageParser<DEPRECATED_ClassTypeData0>(() => new DEPRECATED_ClassTypeData0());
    private pb::UnknownFieldSet _unknownFields;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pb::MessageParser<DEPRECATED_ClassTypeData0> Parser { get { return _parser; } }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::CircuitsV2.Protobuf.DEPRECATEDCircuitTypeDataReflection.Descriptor.MessageTypes[11]; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    pbr::MessageDescriptor pb::IMessage.Descriptor {
      get { return Descriptor; }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_ClassTypeData0() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_ClassTypeData0(DEPRECATED_ClassTypeData0 other) : this() {
      version_ = other.version_;
      typeParameters_ = other.typeParameters_.Clone();
      properties_ = other.properties_.Clone();
      name_ = other.name_ != null ? other.name_.Clone() : null;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public DEPRECATED_ClassTypeData0 Clone() {
      return new DEPRECATED_ClassTypeData0(this);
    }

    /// <summary>Field number for the "version" field.</summary>
    public const int VersionFieldNumber = 1;
    private int version_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int Version {
      get { return version_; }
      set {
        version_ = value;
      }
    }

    /// <summary>Field number for the "type_parameters" field.</summary>
    public const int TypeParametersFieldNumber = 2;
    private static readonly pb::FieldCodec<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData> _repeated_typeParameters_codec
        = pb::FieldCodec.ForMessage(18, global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData.Parser);
    private readonly pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData> typeParameters_ = new pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_CircuitTypeData> TypeParameters {
      get { return typeParameters_; }
    }

    /// <summary>Field number for the "properties" field.</summary>
    public const int PropertiesFieldNumber = 3;
    private static readonly pb::FieldCodec<global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData0.Types.PropertiesEntry> _repeated_properties_codec
        = pb::FieldCodec.ForMessage(26, global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData0.Types.PropertiesEntry.Parser);
    private readonly pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData0.Types.PropertiesEntry> properties_ = new pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData0.Types.PropertiesEntry>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public pbc::RepeatedField<global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData0.Types.PropertiesEntry> Properties {
      get { return properties_; }
    }

    /// <summary>Field number for the "name" field.</summary>
    public const int NameFieldNumber = 4;
    private global::CircuitsV2.Protobuf.DEPRECATED_NullableBytes name_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::CircuitsV2.Protobuf.DEPRECATED_NullableBytes Name {
      get { return name_; }
      set {
        name_ = value;
      }
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override bool Equals(object other) {
      return Equals(other as DEPRECATED_ClassTypeData0);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(DEPRECATED_ClassTypeData0 other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (Version != other.Version) return false;
      if(!typeParameters_.Equals(other.typeParameters_)) return false;
      if(!properties_.Equals(other.properties_)) return false;
      if (!object.Equals(Name, other.Name)) return false;
      return Equals(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override int GetHashCode() {
      int hash = 1;
      if (Version != 0) hash ^= Version.GetHashCode();
      hash ^= typeParameters_.GetHashCode();
      hash ^= properties_.GetHashCode();
      if (name_ != null) hash ^= Name.GetHashCode();
      if (_unknownFields != null) {
        hash ^= _unknownFields.GetHashCode();
      }
      return hash;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public override string ToString() {
      return pb::JsonFormatter.ToDiagnosticString(this);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void WriteTo(pb::CodedOutputStream output) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      output.WriteRawMessage(this);
    #else
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      typeParameters_.WriteTo(output, _repeated_typeParameters_codec);
      properties_.WriteTo(output, _repeated_properties_codec);
      if (name_ != null) {
        output.WriteRawTag(34);
        output.WriteMessage(Name);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(output);
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
      if (Version != 0) {
        output.WriteRawTag(8);
        output.WriteInt32(Version);
      }
      typeParameters_.WriteTo(ref output, _repeated_typeParameters_codec);
      properties_.WriteTo(ref output, _repeated_properties_codec);
      if (name_ != null) {
        output.WriteRawTag(34);
        output.WriteMessage(Name);
      }
      if (_unknownFields != null) {
        _unknownFields.WriteTo(ref output);
      }
    }
    #endif

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public int CalculateSize() {
      int size = 0;
      if (Version != 0) {
        size += 1 + pb::CodedOutputStream.ComputeInt32Size(Version);
      }
      size += typeParameters_.CalculateSize(_repeated_typeParameters_codec);
      size += properties_.CalculateSize(_repeated_properties_codec);
      if (name_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Name);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(DEPRECATED_ClassTypeData0 other) {
      if (other == null) {
        return;
      }
      if (other.Version != 0) {
        Version = other.Version;
      }
      typeParameters_.Add(other.typeParameters_);
      properties_.Add(other.properties_);
      if (other.name_ != null) {
        if (name_ == null) {
          Name = new global::CircuitsV2.Protobuf.DEPRECATED_NullableBytes();
        }
        Name.MergeFrom(other.Name);
      }
      _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(pb::CodedInputStream input) {
    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
      input.ReadRawMessage(this);
    #else
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            typeParameters_.AddEntriesFrom(input, _repeated_typeParameters_codec);
            break;
          }
          case 26: {
            properties_.AddEntriesFrom(input, _repeated_properties_codec);
            break;
          }
          case 34: {
            if (name_ == null) {
              Name = new global::CircuitsV2.Protobuf.DEPRECATED_NullableBytes();
            }
            input.ReadMessage(Name);
            break;
          }
        }
      }
    #endif
    }

    #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
      uint tag;
      while ((tag = input.ReadTag()) != 0) {
      if ((tag & 7) == 4) {
        // Abort on any end group tag.
        return;
      }
      switch(tag) {
          default:
            _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
            break;
          case 8: {
            Version = input.ReadInt32();
            break;
          }
          case 18: {
            typeParameters_.AddEntriesFrom(ref input, _repeated_typeParameters_codec);
            break;
          }
          case 26: {
            properties_.AddEntriesFrom(ref input, _repeated_properties_codec);
            break;
          }
          case 34: {
            if (name_ == null) {
              Name = new global::CircuitsV2.Protobuf.DEPRECATED_NullableBytes();
            }
            input.ReadMessage(Name);
            break;
          }
        }
      }
    }
    #endif

    #region Nested types
    /// <summary>Container for nested types declared in the DEPRECATED_ClassTypeData0 message type.</summary>
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static partial class Types {
      [global::System.Diagnostics.DebuggerDisplayAttribute("{ToString(),nq}")]
      public sealed partial class PropertiesEntry : pb::IMessage<PropertiesEntry>
      #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
          , pb::IBufferMessage
      #endif
      {
        private static readonly pb::MessageParser<PropertiesEntry> _parser = new pb::MessageParser<PropertiesEntry>(() => new PropertiesEntry());
        private pb::UnknownFieldSet _unknownFields;
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public static pb::MessageParser<PropertiesEntry> Parser { get { return _parser; } }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public static pbr::MessageDescriptor Descriptor {
          get { return global::CircuitsV2.Protobuf.DEPRECATED_ClassTypeData0.Descriptor.NestedTypes[0]; }
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        pbr::MessageDescriptor pb::IMessage.Descriptor {
          get { return Descriptor; }
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public PropertiesEntry() {
          OnConstruction();
        }

        partial void OnConstruction();

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public PropertiesEntry(PropertiesEntry other) : this() {
          key_ = other.key_;
          value_ = other.value_ != null ? other.value_.Clone() : null;
          _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public PropertiesEntry Clone() {
          return new PropertiesEntry(this);
        }

        /// <summary>Field number for the "key" field.</summary>
        public const int KeyFieldNumber = 1;
        private string key_ = "";
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public string Key {
          get { return key_; }
          set {
            key_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
          }
        }

        /// <summary>Field number for the "value" field.</summary>
        public const int ValueFieldNumber = 2;
        private global::CircuitsV2.Protobuf.DEPRECATED_PropertyData value_;
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public global::CircuitsV2.Protobuf.DEPRECATED_PropertyData Value {
          get { return value_; }
          set {
            value_ = value;
          }
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public override bool Equals(object other) {
          return Equals(other as PropertiesEntry);
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public bool Equals(PropertiesEntry other) {
          if (ReferenceEquals(other, null)) {
            return false;
          }
          if (ReferenceEquals(other, this)) {
            return true;
          }
          if (Key != other.Key) return false;
          if (!object.Equals(Value, other.Value)) return false;
          return Equals(_unknownFields, other._unknownFields);
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public override int GetHashCode() {
          int hash = 1;
          if (Key.Length != 0) hash ^= Key.GetHashCode();
          if (value_ != null) hash ^= Value.GetHashCode();
          if (_unknownFields != null) {
            hash ^= _unknownFields.GetHashCode();
          }
          return hash;
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public override string ToString() {
          return pb::JsonFormatter.ToDiagnosticString(this);
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public void WriteTo(pb::CodedOutputStream output) {
        #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
          output.WriteRawMessage(this);
        #else
          if (Key.Length != 0) {
            output.WriteRawTag(10);
            output.WriteString(Key);
          }
          if (value_ != null) {
            output.WriteRawTag(18);
            output.WriteMessage(Value);
          }
          if (_unknownFields != null) {
            _unknownFields.WriteTo(output);
          }
        #endif
        }

        #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        void pb::IBufferMessage.InternalWriteTo(ref pb::WriteContext output) {
          if (Key.Length != 0) {
            output.WriteRawTag(10);
            output.WriteString(Key);
          }
          if (value_ != null) {
            output.WriteRawTag(18);
            output.WriteMessage(Value);
          }
          if (_unknownFields != null) {
            _unknownFields.WriteTo(ref output);
          }
        }
        #endif

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public int CalculateSize() {
          int size = 0;
          if (Key.Length != 0) {
            size += 1 + pb::CodedOutputStream.ComputeStringSize(Key);
          }
          if (value_ != null) {
            size += 1 + pb::CodedOutputStream.ComputeMessageSize(Value);
          }
          if (_unknownFields != null) {
            size += _unknownFields.CalculateSize();
          }
          return size;
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public void MergeFrom(PropertiesEntry other) {
          if (other == null) {
            return;
          }
          if (other.Key.Length != 0) {
            Key = other.Key;
          }
          if (other.value_ != null) {
            if (value_ == null) {
              Value = new global::CircuitsV2.Protobuf.DEPRECATED_PropertyData();
            }
            Value.MergeFrom(other.Value);
          }
          _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public void MergeFrom(pb::CodedInputStream input) {
        #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
          input.ReadRawMessage(this);
        #else
          uint tag;
          while ((tag = input.ReadTag()) != 0) {
          if ((tag & 7) == 4) {
            // Abort on any end group tag.
            return;
          }
          switch(tag) {
              default:
                _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
                break;
              case 10: {
                Key = input.ReadString();
                break;
              }
              case 18: {
                if (value_ == null) {
                  Value = new global::CircuitsV2.Protobuf.DEPRECATED_PropertyData();
                }
                input.ReadMessage(Value);
                break;
              }
            }
          }
        #endif
        }

        #if !GOOGLE_PROTOBUF_REFSTRUCT_COMPATIBILITY_MODE
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        void pb::IBufferMessage.InternalMergeFrom(ref pb::ParseContext input) {
          uint tag;
          while ((tag = input.ReadTag()) != 0) {
          if ((tag & 7) == 4) {
            // Abort on any end group tag.
            return;
          }
          switch(tag) {
              default:
                _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, ref input);
                break;
              case 10: {
                Key = input.ReadString();
                break;
              }
              case 18: {
                if (value_ == null) {
                  Value = new global::CircuitsV2.Protobuf.DEPRECATED_PropertyData();
                }
                input.ReadMessage(Value);
                break;
              }
            }
          }
        }
        #endif

      }

    }
    #endregion

  }

  #endregion

}

#endregion Designer generated code
