// <auto-generated>
//     Generated by the protocol buffer compiler.  DO NOT EDIT!
//     source: PluginToBot/EmbedMessage.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 SCPDiscord.Interface {

  /// <summary>Holder for reflection information generated from PluginToBot/EmbedMessage.proto</summary>
  public static partial class EmbedMessageReflection {

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

    static EmbedMessageReflection() {
      byte[] descriptorData = global::System.Convert.FromBase64String(
          string.Concat(
            "Ch5QbHVnaW5Ub0JvdC9FbWJlZE1lc3NhZ2UucHJvdG8SFFNDUERpc2NvcmQu",
            "SW50ZXJmYWNlIuMLCgxFbWJlZE1lc3NhZ2USEQoJY2hhbm5lbElEGAEgASgE",
            "EhIKBXRpdGxlGAIgASgJSACIAQESEwoLZGVzY3JpcHRpb24YAyABKAkSEAoD",
            "dXJsGAQgASgJSAGIAQESFgoJdGltZXN0YW1wGAUgASgDSAKIAQESQAoGY29s",
            "b3VyGAYgASgOMjAuU0NQRGlzY29yZC5JbnRlcmZhY2UuRW1iZWRNZXNzYWdl",
            "LkRpc2NvcmRDb2xvdXISRQoGZm9vdGVyGAcgASgLMjUuU0NQRGlzY29yZC5J",
            "bnRlcmZhY2UuRW1iZWRNZXNzYWdlLkRpc2NvcmRFbWJlZEZvb3RlchIVCghp",
            "bWFnZVVSTBgIIAEoCUgDiAEBEksKCXRodW1ibmFpbBgJIAEoCzI4LlNDUERp",
            "c2NvcmQuSW50ZXJmYWNlLkVtYmVkTWVzc2FnZS5EaXNjb3JkRW1iZWRUaHVt",
            "Ym5haWwSRQoGYXV0aG9yGAogASgLMjUuU0NQRGlzY29yZC5JbnRlcmZhY2Uu",
            "RW1iZWRNZXNzYWdlLkRpc2NvcmRFbWJlZEF1dGhvchJECgZmaWVsZHMYCyAD",
            "KAsyNC5TQ1BEaXNjb3JkLkludGVyZmFjZS5FbWJlZE1lc3NhZ2UuRGlzY29y",
            "ZEVtYmVkRmllbGQSFQoNaW50ZXJhY3Rpb25JRBgMIAEoBBpSChJEaXNjb3Jk",
            "RW1iZWRGb290ZXISEQoEdGV4dBgBIAEoCUgAiAEBEhQKB2ljb25VUkwYAiAB",
            "KAlIAYgBAUIHCgVfdGV4dEIKCghfaWNvblVSTBpDChVEaXNjb3JkRW1iZWRU",
            "aHVtYm5haWwSCwoDdXJsGAEgASgJEg4KBmhlaWdodBgCIAEoBRINCgV3aWR0",
            "aBgDIAEoBRpsChJEaXNjb3JkRW1iZWRBdXRob3ISEQoEbmFtZRgBIAEoCUgA",
            "iAEBEhAKA3VybBgCIAEoCUgBiAEBEhQKB2ljb25VUkwYAyABKAlIAogBAUIH",
            "CgVfbmFtZUIGCgRfdXJsQgoKCF9pY29uVVJMGkAKEURpc2NvcmRFbWJlZEZp",
            "ZWxkEgwKBG5hbWUYASABKAkSDQoFdmFsdWUYAiABKAkSDgoGaW5saW5lGAMg",
            "ASgIIuUECg1EaXNjb3JkQ29sb3VyEggKBE5PTkUQABIJCgVCTEFDSxABEgkK",
            "BVdISVRFEAISCAoER1JBWRADEg0KCURBUktfR1JBWRAEEg4KCkxJR0hUX0dS",
            "QVkQBRISCg5WRVJZX0RBUktfR1JBWRAGEgsKB0JMVVJQTEUQBxILCgdHUkFZ",
            "UExFEAgSFgoSREFSS19CVVRfTk9UX0JMQUNLEAkSEwoPTk9UX1FVSVRFX0JM",
            "QUNLEAoSBwoDUkVEEAsSDAoIREFSS19SRUQQDBIJCgVHUkVFThANEg4KCkRB",
            "UktfR1JFRU4QDhIICgRCTFVFEA8SDQoJREFSS19CTFVFEBASCgoGWUVMTE9X",
            "EBESCAoEQ1lBThASEgsKB01BR0VOVEEQExIICgRURUFMEBQSDgoKQVFVQU1B",
            "UklORRAVEggKBEdPTEQQFhINCglHT0xERU5ST0QQFxIJCgVBWlVSRRAYEggK",
            "BFJPU0UQGRIQCgxTUFJJTkdfR1JFRU4QGhIOCgpDSEFSVFJFVVNFEBsSCgoG",
            "T1JBTkdFEBwSCgoGUFVSUExFEB0SCgoGVklPTEVUEB4SCQoFQlJPV04QHxIM",
            "CghIT1RfUElOSxAgEgkKBUxJTEFDECESEwoPQ09STkZMT1dFUl9CTFVFECIS",
            "EQoNTUlETklHSFRfQkxVRRAjEgkKBVdIRUFUECQSDgoKSU5ESUFOX1JFRBAl",
            "Eg0KCVRVUlFVT0lTRRAmEg0KCVNBUF9HUkVFThAnEhAKDFBIVEhBTE9fQkxV",
            "RRAoEhEKDVBIVEhBTE9fR1JFRU4QKRIKCgZTSUVOTkEQKkIICgZfdGl0bGVC",
            "BgoEX3VybEIMCgpfdGltZXN0YW1wQgsKCV9pbWFnZVVSTGIGcHJvdG8z"));
      descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
          new pbr::FileDescriptor[] { },
          new pbr::GeneratedClrTypeInfo(null, null, new pbr::GeneratedClrTypeInfo[] {
            new pbr::GeneratedClrTypeInfo(typeof(global::SCPDiscord.Interface.EmbedMessage), global::SCPDiscord.Interface.EmbedMessage.Parser, new[]{ "ChannelID", "Title", "Description", "Url", "Timestamp", "Colour", "Footer", "ImageURL", "Thumbnail", "Author", "Fields", "InteractionID" }, new[]{ "Title", "Url", "Timestamp", "ImageURL" }, new[]{ typeof(global::SCPDiscord.Interface.EmbedMessage.Types.DiscordColour) }, null, new pbr::GeneratedClrTypeInfo[] { new pbr::GeneratedClrTypeInfo(typeof(global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedFooter), global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedFooter.Parser, new[]{ "Text", "IconURL" }, new[]{ "Text", "IconURL" }, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedThumbnail), global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedThumbnail.Parser, new[]{ "Url", "Height", "Width" }, null, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedAuthor), global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedAuthor.Parser, new[]{ "Name", "Url", "IconURL" }, new[]{ "Name", "Url", "IconURL" }, null, null, null),
            new pbr::GeneratedClrTypeInfo(typeof(global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedField), global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedField.Parser, new[]{ "Name", "Value", "Inline" }, null, null, null, null)})
          }));
    }
    #endregion

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

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static pbr::MessageDescriptor Descriptor {
      get { return global::SCPDiscord.Interface.EmbedMessageReflection.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 EmbedMessage() {
      OnConstruction();
    }

    partial void OnConstruction();

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public EmbedMessage(EmbedMessage other) : this() {
      _hasBits0 = other._hasBits0;
      channelID_ = other.channelID_;
      title_ = other.title_;
      description_ = other.description_;
      url_ = other.url_;
      timestamp_ = other.timestamp_;
      colour_ = other.colour_;
      footer_ = other.footer_ != null ? other.footer_.Clone() : null;
      imageURL_ = other.imageURL_;
      thumbnail_ = other.thumbnail_ != null ? other.thumbnail_.Clone() : null;
      author_ = other.author_ != null ? other.author_.Clone() : null;
      fields_ = other.fields_.Clone();
      interactionID_ = other.interactionID_;
      _unknownFields = pb::UnknownFieldSet.Clone(other._unknownFields);
    }

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

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

    /// <summary>Field number for the "title" field.</summary>
    public const int TitleFieldNumber = 2;
    private readonly static string TitleDefaultValue = "";

    private string title_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string Title {
      get { return title_ ?? TitleDefaultValue; }
      set {
        title_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }
    /// <summary>Gets whether the "title" field is set</summary>
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool HasTitle {
      get { return title_ != null; }
    }
    /// <summary>Clears the value of the "title" field</summary>
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void ClearTitle() {
      title_ = null;
    }

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

    /// <summary>Field number for the "url" field.</summary>
    public const int UrlFieldNumber = 4;
    private readonly static string UrlDefaultValue = "";

    private string url_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string Url {
      get { return url_ ?? UrlDefaultValue; }
      set {
        url_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }
    /// <summary>Gets whether the "url" field is set</summary>
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool HasUrl {
      get { return url_ != null; }
    }
    /// <summary>Clears the value of the "url" field</summary>
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void ClearUrl() {
      url_ = null;
    }

    /// <summary>Field number for the "timestamp" field.</summary>
    public const int TimestampFieldNumber = 5;
    private readonly static long TimestampDefaultValue = 0L;

    private long timestamp_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public long Timestamp {
      get { if ((_hasBits0 & 1) != 0) { return timestamp_; } else { return TimestampDefaultValue; } }
      set {
        _hasBits0 |= 1;
        timestamp_ = value;
      }
    }
    /// <summary>Gets whether the "timestamp" field is set</summary>
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool HasTimestamp {
      get { return (_hasBits0 & 1) != 0; }
    }
    /// <summary>Clears the value of the "timestamp" field</summary>
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void ClearTimestamp() {
      _hasBits0 &= ~1;
    }

    /// <summary>Field number for the "colour" field.</summary>
    public const int ColourFieldNumber = 6;
    private global::SCPDiscord.Interface.EmbedMessage.Types.DiscordColour colour_ = global::SCPDiscord.Interface.EmbedMessage.Types.DiscordColour.None;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::SCPDiscord.Interface.EmbedMessage.Types.DiscordColour Colour {
      get { return colour_; }
      set {
        colour_ = value;
      }
    }

    /// <summary>Field number for the "footer" field.</summary>
    public const int FooterFieldNumber = 7;
    private global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedFooter footer_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedFooter Footer {
      get { return footer_; }
      set {
        footer_ = value;
      }
    }

    /// <summary>Field number for the "imageURL" field.</summary>
    public const int ImageURLFieldNumber = 8;
    private readonly static string ImageURLDefaultValue = "";

    private string imageURL_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public string ImageURL {
      get { return imageURL_ ?? ImageURLDefaultValue; }
      set {
        imageURL_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
      }
    }
    /// <summary>Gets whether the "imageURL" field is set</summary>
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool HasImageURL {
      get { return imageURL_ != null; }
    }
    /// <summary>Clears the value of the "imageURL" field</summary>
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void ClearImageURL() {
      imageURL_ = null;
    }

    /// <summary>Field number for the "thumbnail" field.</summary>
    public const int ThumbnailFieldNumber = 9;
    private global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedThumbnail thumbnail_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedThumbnail Thumbnail {
      get { return thumbnail_; }
      set {
        thumbnail_ = value;
      }
    }

    /// <summary>Field number for the "author" field.</summary>
    public const int AuthorFieldNumber = 10;
    private global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedAuthor author_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedAuthor Author {
      get { return author_; }
      set {
        author_ = value;
      }
    }

    /// <summary>Field number for the "fields" field.</summary>
    public const int FieldsFieldNumber = 11;
    private static readonly pb::FieldCodec<global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedField> _repeated_fields_codec
        = pb::FieldCodec.ForMessage(90, global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedField.Parser);
    private readonly pbc::RepeatedField<global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedField> fields_ = new pbc::RepeatedField<global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedField>();
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public pbc::RepeatedField<global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedField> Fields {
      get { return fields_; }
    }

    /// <summary>Field number for the "interactionID" field.</summary>
    public const int InteractionIDFieldNumber = 12;
    private ulong interactionID_;
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public ulong InteractionID {
      get { return interactionID_; }
      set {
        interactionID_ = value;
      }
    }

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

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public bool Equals(EmbedMessage other) {
      if (ReferenceEquals(other, null)) {
        return false;
      }
      if (ReferenceEquals(other, this)) {
        return true;
      }
      if (ChannelID != other.ChannelID) return false;
      if (Title != other.Title) return false;
      if (Description != other.Description) return false;
      if (Url != other.Url) return false;
      if (Timestamp != other.Timestamp) return false;
      if (Colour != other.Colour) return false;
      if (!object.Equals(Footer, other.Footer)) return false;
      if (ImageURL != other.ImageURL) return false;
      if (!object.Equals(Thumbnail, other.Thumbnail)) return false;
      if (!object.Equals(Author, other.Author)) return false;
      if(!fields_.Equals(other.fields_)) return false;
      if (InteractionID != other.InteractionID) 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 (ChannelID != 0UL) hash ^= ChannelID.GetHashCode();
      if (HasTitle) hash ^= Title.GetHashCode();
      if (Description.Length != 0) hash ^= Description.GetHashCode();
      if (HasUrl) hash ^= Url.GetHashCode();
      if (HasTimestamp) hash ^= Timestamp.GetHashCode();
      if (Colour != global::SCPDiscord.Interface.EmbedMessage.Types.DiscordColour.None) hash ^= Colour.GetHashCode();
      if (footer_ != null) hash ^= Footer.GetHashCode();
      if (HasImageURL) hash ^= ImageURL.GetHashCode();
      if (thumbnail_ != null) hash ^= Thumbnail.GetHashCode();
      if (author_ != null) hash ^= Author.GetHashCode();
      hash ^= fields_.GetHashCode();
      if (InteractionID != 0UL) hash ^= InteractionID.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 (ChannelID != 0UL) {
        output.WriteRawTag(8);
        output.WriteUInt64(ChannelID);
      }
      if (HasTitle) {
        output.WriteRawTag(18);
        output.WriteString(Title);
      }
      if (Description.Length != 0) {
        output.WriteRawTag(26);
        output.WriteString(Description);
      }
      if (HasUrl) {
        output.WriteRawTag(34);
        output.WriteString(Url);
      }
      if (HasTimestamp) {
        output.WriteRawTag(40);
        output.WriteInt64(Timestamp);
      }
      if (Colour != global::SCPDiscord.Interface.EmbedMessage.Types.DiscordColour.None) {
        output.WriteRawTag(48);
        output.WriteEnum((int) Colour);
      }
      if (footer_ != null) {
        output.WriteRawTag(58);
        output.WriteMessage(Footer);
      }
      if (HasImageURL) {
        output.WriteRawTag(66);
        output.WriteString(ImageURL);
      }
      if (thumbnail_ != null) {
        output.WriteRawTag(74);
        output.WriteMessage(Thumbnail);
      }
      if (author_ != null) {
        output.WriteRawTag(82);
        output.WriteMessage(Author);
      }
      fields_.WriteTo(output, _repeated_fields_codec);
      if (InteractionID != 0UL) {
        output.WriteRawTag(96);
        output.WriteUInt64(InteractionID);
      }
      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 (ChannelID != 0UL) {
        output.WriteRawTag(8);
        output.WriteUInt64(ChannelID);
      }
      if (HasTitle) {
        output.WriteRawTag(18);
        output.WriteString(Title);
      }
      if (Description.Length != 0) {
        output.WriteRawTag(26);
        output.WriteString(Description);
      }
      if (HasUrl) {
        output.WriteRawTag(34);
        output.WriteString(Url);
      }
      if (HasTimestamp) {
        output.WriteRawTag(40);
        output.WriteInt64(Timestamp);
      }
      if (Colour != global::SCPDiscord.Interface.EmbedMessage.Types.DiscordColour.None) {
        output.WriteRawTag(48);
        output.WriteEnum((int) Colour);
      }
      if (footer_ != null) {
        output.WriteRawTag(58);
        output.WriteMessage(Footer);
      }
      if (HasImageURL) {
        output.WriteRawTag(66);
        output.WriteString(ImageURL);
      }
      if (thumbnail_ != null) {
        output.WriteRawTag(74);
        output.WriteMessage(Thumbnail);
      }
      if (author_ != null) {
        output.WriteRawTag(82);
        output.WriteMessage(Author);
      }
      fields_.WriteTo(ref output, _repeated_fields_codec);
      if (InteractionID != 0UL) {
        output.WriteRawTag(96);
        output.WriteUInt64(InteractionID);
      }
      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 (ChannelID != 0UL) {
        size += 1 + pb::CodedOutputStream.ComputeUInt64Size(ChannelID);
      }
      if (HasTitle) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(Title);
      }
      if (Description.Length != 0) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(Description);
      }
      if (HasUrl) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(Url);
      }
      if (HasTimestamp) {
        size += 1 + pb::CodedOutputStream.ComputeInt64Size(Timestamp);
      }
      if (Colour != global::SCPDiscord.Interface.EmbedMessage.Types.DiscordColour.None) {
        size += 1 + pb::CodedOutputStream.ComputeEnumSize((int) Colour);
      }
      if (footer_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Footer);
      }
      if (HasImageURL) {
        size += 1 + pb::CodedOutputStream.ComputeStringSize(ImageURL);
      }
      if (thumbnail_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Thumbnail);
      }
      if (author_ != null) {
        size += 1 + pb::CodedOutputStream.ComputeMessageSize(Author);
      }
      size += fields_.CalculateSize(_repeated_fields_codec);
      if (InteractionID != 0UL) {
        size += 1 + pb::CodedOutputStream.ComputeUInt64Size(InteractionID);
      }
      if (_unknownFields != null) {
        size += _unknownFields.CalculateSize();
      }
      return size;
    }

    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public void MergeFrom(EmbedMessage other) {
      if (other == null) {
        return;
      }
      if (other.ChannelID != 0UL) {
        ChannelID = other.ChannelID;
      }
      if (other.HasTitle) {
        Title = other.Title;
      }
      if (other.Description.Length != 0) {
        Description = other.Description;
      }
      if (other.HasUrl) {
        Url = other.Url;
      }
      if (other.HasTimestamp) {
        Timestamp = other.Timestamp;
      }
      if (other.Colour != global::SCPDiscord.Interface.EmbedMessage.Types.DiscordColour.None) {
        Colour = other.Colour;
      }
      if (other.footer_ != null) {
        if (footer_ == null) {
          Footer = new global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedFooter();
        }
        Footer.MergeFrom(other.Footer);
      }
      if (other.HasImageURL) {
        ImageURL = other.ImageURL;
      }
      if (other.thumbnail_ != null) {
        if (thumbnail_ == null) {
          Thumbnail = new global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedThumbnail();
        }
        Thumbnail.MergeFrom(other.Thumbnail);
      }
      if (other.author_ != null) {
        if (author_ == null) {
          Author = new global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedAuthor();
        }
        Author.MergeFrom(other.Author);
      }
      fields_.Add(other.fields_);
      if (other.InteractionID != 0UL) {
        InteractionID = other.InteractionID;
      }
      _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: {
            ChannelID = input.ReadUInt64();
            break;
          }
          case 18: {
            Title = input.ReadString();
            break;
          }
          case 26: {
            Description = input.ReadString();
            break;
          }
          case 34: {
            Url = input.ReadString();
            break;
          }
          case 40: {
            Timestamp = input.ReadInt64();
            break;
          }
          case 48: {
            Colour = (global::SCPDiscord.Interface.EmbedMessage.Types.DiscordColour) input.ReadEnum();
            break;
          }
          case 58: {
            if (footer_ == null) {
              Footer = new global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedFooter();
            }
            input.ReadMessage(Footer);
            break;
          }
          case 66: {
            ImageURL = input.ReadString();
            break;
          }
          case 74: {
            if (thumbnail_ == null) {
              Thumbnail = new global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedThumbnail();
            }
            input.ReadMessage(Thumbnail);
            break;
          }
          case 82: {
            if (author_ == null) {
              Author = new global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedAuthor();
            }
            input.ReadMessage(Author);
            break;
          }
          case 90: {
            fields_.AddEntriesFrom(input, _repeated_fields_codec);
            break;
          }
          case 96: {
            InteractionID = input.ReadUInt64();
            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: {
            ChannelID = input.ReadUInt64();
            break;
          }
          case 18: {
            Title = input.ReadString();
            break;
          }
          case 26: {
            Description = input.ReadString();
            break;
          }
          case 34: {
            Url = input.ReadString();
            break;
          }
          case 40: {
            Timestamp = input.ReadInt64();
            break;
          }
          case 48: {
            Colour = (global::SCPDiscord.Interface.EmbedMessage.Types.DiscordColour) input.ReadEnum();
            break;
          }
          case 58: {
            if (footer_ == null) {
              Footer = new global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedFooter();
            }
            input.ReadMessage(Footer);
            break;
          }
          case 66: {
            ImageURL = input.ReadString();
            break;
          }
          case 74: {
            if (thumbnail_ == null) {
              Thumbnail = new global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedThumbnail();
            }
            input.ReadMessage(Thumbnail);
            break;
          }
          case 82: {
            if (author_ == null) {
              Author = new global::SCPDiscord.Interface.EmbedMessage.Types.DiscordEmbedAuthor();
            }
            input.ReadMessage(Author);
            break;
          }
          case 90: {
            fields_.AddEntriesFrom(ref input, _repeated_fields_codec);
            break;
          }
          case 96: {
            InteractionID = input.ReadUInt64();
            break;
          }
        }
      }
    }
    #endif

    #region Nested types
    /// <summary>Container for nested types declared in the EmbedMessage message type.</summary>
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
    [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
    public static partial class Types {
      public enum DiscordColour {
        [pbr::OriginalName("NONE")] None = 0,
        [pbr::OriginalName("BLACK")] Black = 1,
        [pbr::OriginalName("WHITE")] White = 2,
        [pbr::OriginalName("GRAY")] Gray = 3,
        [pbr::OriginalName("DARK_GRAY")] DarkGray = 4,
        [pbr::OriginalName("LIGHT_GRAY")] LightGray = 5,
        [pbr::OriginalName("VERY_DARK_GRAY")] VeryDarkGray = 6,
        [pbr::OriginalName("BLURPLE")] Blurple = 7,
        [pbr::OriginalName("GRAYPLE")] Grayple = 8,
        [pbr::OriginalName("DARK_BUT_NOT_BLACK")] DarkButNotBlack = 9,
        [pbr::OriginalName("NOT_QUITE_BLACK")] NotQuiteBlack = 10,
        [pbr::OriginalName("RED")] Red = 11,
        [pbr::OriginalName("DARK_RED")] DarkRed = 12,
        [pbr::OriginalName("GREEN")] Green = 13,
        [pbr::OriginalName("DARK_GREEN")] DarkGreen = 14,
        [pbr::OriginalName("BLUE")] Blue = 15,
        [pbr::OriginalName("DARK_BLUE")] DarkBlue = 16,
        [pbr::OriginalName("YELLOW")] Yellow = 17,
        [pbr::OriginalName("CYAN")] Cyan = 18,
        [pbr::OriginalName("MAGENTA")] Magenta = 19,
        [pbr::OriginalName("TEAL")] Teal = 20,
        [pbr::OriginalName("AQUAMARINE")] Aquamarine = 21,
        [pbr::OriginalName("GOLD")] Gold = 22,
        [pbr::OriginalName("GOLDENROD")] Goldenrod = 23,
        [pbr::OriginalName("AZURE")] Azure = 24,
        [pbr::OriginalName("ROSE")] Rose = 25,
        [pbr::OriginalName("SPRING_GREEN")] SpringGreen = 26,
        [pbr::OriginalName("CHARTREUSE")] Chartreuse = 27,
        [pbr::OriginalName("ORANGE")] Orange = 28,
        [pbr::OriginalName("PURPLE")] Purple = 29,
        [pbr::OriginalName("VIOLET")] Violet = 30,
        [pbr::OriginalName("BROWN")] Brown = 31,
        [pbr::OriginalName("HOT_PINK")] HotPink = 32,
        [pbr::OriginalName("LILAC")] Lilac = 33,
        [pbr::OriginalName("CORNFLOWER_BLUE")] CornflowerBlue = 34,
        [pbr::OriginalName("MIDNIGHT_BLUE")] MidnightBlue = 35,
        [pbr::OriginalName("WHEAT")] Wheat = 36,
        [pbr::OriginalName("INDIAN_RED")] IndianRed = 37,
        [pbr::OriginalName("TURQUOISE")] Turquoise = 38,
        [pbr::OriginalName("SAP_GREEN")] SapGreen = 39,
        [pbr::OriginalName("PHTHALO_BLUE")] PhthaloBlue = 40,
        [pbr::OriginalName("PHTHALO_GREEN")] PhthaloGreen = 41,
        [pbr::OriginalName("SIENNA")] Sienna = 42,
      }

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

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public static pbr::MessageDescriptor Descriptor {
          get { return global::SCPDiscord.Interface.EmbedMessage.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 DiscordEmbedFooter() {
          OnConstruction();
        }

        partial void OnConstruction();

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

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

        /// <summary>Field number for the "text" field.</summary>
        public const int TextFieldNumber = 1;
        private readonly static string TextDefaultValue = "";

        private string text_;
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public string Text {
          get { return text_ ?? TextDefaultValue; }
          set {
            text_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
          }
        }
        /// <summary>Gets whether the "text" field is set</summary>
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public bool HasText {
          get { return text_ != null; }
        }
        /// <summary>Clears the value of the "text" field</summary>
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public void ClearText() {
          text_ = null;
        }

        /// <summary>Field number for the "iconURL" field.</summary>
        public const int IconURLFieldNumber = 2;
        private readonly static string IconURLDefaultValue = "";

        private string iconURL_;
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public string IconURL {
          get { return iconURL_ ?? IconURLDefaultValue; }
          set {
            iconURL_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
          }
        }
        /// <summary>Gets whether the "iconURL" field is set</summary>
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public bool HasIconURL {
          get { return iconURL_ != null; }
        }
        /// <summary>Clears the value of the "iconURL" field</summary>
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public void ClearIconURL() {
          iconURL_ = null;
        }

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

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public bool Equals(DiscordEmbedFooter other) {
          if (ReferenceEquals(other, null)) {
            return false;
          }
          if (ReferenceEquals(other, this)) {
            return true;
          }
          if (Text != other.Text) return false;
          if (IconURL != other.IconURL) 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 (HasText) hash ^= Text.GetHashCode();
          if (HasIconURL) hash ^= IconURL.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 (HasText) {
            output.WriteRawTag(10);
            output.WriteString(Text);
          }
          if (HasIconURL) {
            output.WriteRawTag(18);
            output.WriteString(IconURL);
          }
          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 (HasText) {
            output.WriteRawTag(10);
            output.WriteString(Text);
          }
          if (HasIconURL) {
            output.WriteRawTag(18);
            output.WriteString(IconURL);
          }
          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 (HasText) {
            size += 1 + pb::CodedOutputStream.ComputeStringSize(Text);
          }
          if (HasIconURL) {
            size += 1 + pb::CodedOutputStream.ComputeStringSize(IconURL);
          }
          if (_unknownFields != null) {
            size += _unknownFields.CalculateSize();
          }
          return size;
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public void MergeFrom(DiscordEmbedFooter other) {
          if (other == null) {
            return;
          }
          if (other.HasText) {
            Text = other.Text;
          }
          if (other.HasIconURL) {
            IconURL = other.IconURL;
          }
          _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: {
                Text = input.ReadString();
                break;
              }
              case 18: {
                IconURL = 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 10: {
                Text = input.ReadString();
                break;
              }
              case 18: {
                IconURL = input.ReadString();
                break;
              }
            }
          }
        }
        #endif

      }

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

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public static pbr::MessageDescriptor Descriptor {
          get { return global::SCPDiscord.Interface.EmbedMessage.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 DiscordEmbedThumbnail() {
          OnConstruction();
        }

        partial void OnConstruction();

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

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

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

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

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

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

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public bool Equals(DiscordEmbedThumbnail other) {
          if (ReferenceEquals(other, null)) {
            return false;
          }
          if (ReferenceEquals(other, this)) {
            return true;
          }
          if (Url != other.Url) return false;
          if (Height != other.Height) return false;
          if (Width != other.Width) 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 (Url.Length != 0) hash ^= Url.GetHashCode();
          if (Height != 0) hash ^= Height.GetHashCode();
          if (Width != 0) hash ^= Width.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 (Url.Length != 0) {
            output.WriteRawTag(10);
            output.WriteString(Url);
          }
          if (Height != 0) {
            output.WriteRawTag(16);
            output.WriteInt32(Height);
          }
          if (Width != 0) {
            output.WriteRawTag(24);
            output.WriteInt32(Width);
          }
          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 (Url.Length != 0) {
            output.WriteRawTag(10);
            output.WriteString(Url);
          }
          if (Height != 0) {
            output.WriteRawTag(16);
            output.WriteInt32(Height);
          }
          if (Width != 0) {
            output.WriteRawTag(24);
            output.WriteInt32(Width);
          }
          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 (Url.Length != 0) {
            size += 1 + pb::CodedOutputStream.ComputeStringSize(Url);
          }
          if (Height != 0) {
            size += 1 + pb::CodedOutputStream.ComputeInt32Size(Height);
          }
          if (Width != 0) {
            size += 1 + pb::CodedOutputStream.ComputeInt32Size(Width);
          }
          if (_unknownFields != null) {
            size += _unknownFields.CalculateSize();
          }
          return size;
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public void MergeFrom(DiscordEmbedThumbnail other) {
          if (other == null) {
            return;
          }
          if (other.Url.Length != 0) {
            Url = other.Url;
          }
          if (other.Height != 0) {
            Height = other.Height;
          }
          if (other.Width != 0) {
            Width = other.Width;
          }
          _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: {
                Url = input.ReadString();
                break;
              }
              case 16: {
                Height = input.ReadInt32();
                break;
              }
              case 24: {
                Width = input.ReadInt32();
                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: {
                Url = input.ReadString();
                break;
              }
              case 16: {
                Height = input.ReadInt32();
                break;
              }
              case 24: {
                Width = input.ReadInt32();
                break;
              }
            }
          }
        }
        #endif

      }

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

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public static pbr::MessageDescriptor Descriptor {
          get { return global::SCPDiscord.Interface.EmbedMessage.Descriptor.NestedTypes[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 DiscordEmbedAuthor() {
          OnConstruction();
        }

        partial void OnConstruction();

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

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

        /// <summary>Field number for the "name" field.</summary>
        public const int NameFieldNumber = 1;
        private readonly static string NameDefaultValue = "";

        private string name_;
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public string Name {
          get { return name_ ?? NameDefaultValue; }
          set {
            name_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
          }
        }
        /// <summary>Gets whether the "name" field is set</summary>
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public bool HasName {
          get { return name_ != null; }
        }
        /// <summary>Clears the value of the "name" field</summary>
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public void ClearName() {
          name_ = null;
        }

        /// <summary>Field number for the "url" field.</summary>
        public const int UrlFieldNumber = 2;
        private readonly static string UrlDefaultValue = "";

        private string url_;
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public string Url {
          get { return url_ ?? UrlDefaultValue; }
          set {
            url_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
          }
        }
        /// <summary>Gets whether the "url" field is set</summary>
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public bool HasUrl {
          get { return url_ != null; }
        }
        /// <summary>Clears the value of the "url" field</summary>
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public void ClearUrl() {
          url_ = null;
        }

        /// <summary>Field number for the "iconURL" field.</summary>
        public const int IconURLFieldNumber = 3;
        private readonly static string IconURLDefaultValue = "";

        private string iconURL_;
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public string IconURL {
          get { return iconURL_ ?? IconURLDefaultValue; }
          set {
            iconURL_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
          }
        }
        /// <summary>Gets whether the "iconURL" field is set</summary>
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public bool HasIconURL {
          get { return iconURL_ != null; }
        }
        /// <summary>Clears the value of the "iconURL" field</summary>
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public void ClearIconURL() {
          iconURL_ = null;
        }

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

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public bool Equals(DiscordEmbedAuthor other) {
          if (ReferenceEquals(other, null)) {
            return false;
          }
          if (ReferenceEquals(other, this)) {
            return true;
          }
          if (Name != other.Name) return false;
          if (Url != other.Url) return false;
          if (IconURL != other.IconURL) 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 (HasName) hash ^= Name.GetHashCode();
          if (HasUrl) hash ^= Url.GetHashCode();
          if (HasIconURL) hash ^= IconURL.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 (HasName) {
            output.WriteRawTag(10);
            output.WriteString(Name);
          }
          if (HasUrl) {
            output.WriteRawTag(18);
            output.WriteString(Url);
          }
          if (HasIconURL) {
            output.WriteRawTag(26);
            output.WriteString(IconURL);
          }
          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 (HasName) {
            output.WriteRawTag(10);
            output.WriteString(Name);
          }
          if (HasUrl) {
            output.WriteRawTag(18);
            output.WriteString(Url);
          }
          if (HasIconURL) {
            output.WriteRawTag(26);
            output.WriteString(IconURL);
          }
          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 (HasName) {
            size += 1 + pb::CodedOutputStream.ComputeStringSize(Name);
          }
          if (HasUrl) {
            size += 1 + pb::CodedOutputStream.ComputeStringSize(Url);
          }
          if (HasIconURL) {
            size += 1 + pb::CodedOutputStream.ComputeStringSize(IconURL);
          }
          if (_unknownFields != null) {
            size += _unknownFields.CalculateSize();
          }
          return size;
        }

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public void MergeFrom(DiscordEmbedAuthor other) {
          if (other == null) {
            return;
          }
          if (other.HasName) {
            Name = other.Name;
          }
          if (other.HasUrl) {
            Url = other.Url;
          }
          if (other.HasIconURL) {
            IconURL = other.IconURL;
          }
          _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: {
                Name = input.ReadString();
                break;
              }
              case 18: {
                Url = input.ReadString();
                break;
              }
              case 26: {
                IconURL = 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 10: {
                Name = input.ReadString();
                break;
              }
              case 18: {
                Url = input.ReadString();
                break;
              }
              case 26: {
                IconURL = input.ReadString();
                break;
              }
            }
          }
        }
        #endif

      }

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

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public static pbr::MessageDescriptor Descriptor {
          get { return global::SCPDiscord.Interface.EmbedMessage.Descriptor.NestedTypes[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 DiscordEmbedField() {
          OnConstruction();
        }

        partial void OnConstruction();

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

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

        /// <summary>Field number for the "name" field.</summary>
        public const int NameFieldNumber = 1;
        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 "value" field.</summary>
        public const int ValueFieldNumber = 2;
        private string value_ = "";
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public string Value {
          get { return value_; }
          set {
            value_ = pb::ProtoPreconditions.CheckNotNull(value, "value");
          }
        }

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

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

        [global::System.Diagnostics.DebuggerNonUserCodeAttribute]
        [global::System.CodeDom.Compiler.GeneratedCode("protoc", null)]
        public bool Equals(DiscordEmbedField other) {
          if (ReferenceEquals(other, null)) {
            return false;
          }
          if (ReferenceEquals(other, this)) {
            return true;
          }
          if (Name != other.Name) return false;
          if (Value != other.Value) return false;
          if (Inline != other.Inline) 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 (Name.Length != 0) hash ^= Name.GetHashCode();
          if (Value.Length != 0) hash ^= Value.GetHashCode();
          if (Inline != false) hash ^= Inline.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 (Name.Length != 0) {
            output.WriteRawTag(10);
            output.WriteString(Name);
          }
          if (Value.Length != 0) {
            output.WriteRawTag(18);
            output.WriteString(Value);
          }
          if (Inline != false) {
            output.WriteRawTag(24);
            output.WriteBool(Inline);
          }
          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 (Name.Length != 0) {
            output.WriteRawTag(10);
            output.WriteString(Name);
          }
          if (Value.Length != 0) {
            output.WriteRawTag(18);
            output.WriteString(Value);
          }
          if (Inline != false) {
            output.WriteRawTag(24);
            output.WriteBool(Inline);
          }
          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 (Name.Length != 0) {
            size += 1 + pb::CodedOutputStream.ComputeStringSize(Name);
          }
          if (Value.Length != 0) {
            size += 1 + pb::CodedOutputStream.ComputeStringSize(Value);
          }
          if (Inline != 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(DiscordEmbedField other) {
          if (other == null) {
            return;
          }
          if (other.Name.Length != 0) {
            Name = other.Name;
          }
          if (other.Value.Length != 0) {
            Value = other.Value;
          }
          if (other.Inline != false) {
            Inline = other.Inline;
          }
          _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: {
                Name = input.ReadString();
                break;
              }
              case 18: {
                Value = input.ReadString();
                break;
              }
              case 24: {
                Inline = 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 10: {
                Name = input.ReadString();
                break;
              }
              case 18: {
                Value = input.ReadString();
                break;
              }
              case 24: {
                Inline = input.ReadBool();
                break;
              }
            }
          }
        }
        #endif

      }

    }
    #endregion

  }

  #endregion

}

#endregion Designer generated code
