/// <summary>
        /// Equals the specified extended header.
        /// </summary>
        /// <param name="extendedHeader">The extended header.</param>
        /// <returns></returns>
        public bool Equals(Id3v2ExtendedHeader extendedHeader)
        {
            if (ReferenceEquals(null, extendedHeader))
                return false;

            if (ReferenceEquals(this, extendedHeader))
                return true;

            return (TagRestrictions != null) && (extendedHeader.TagRestrictions != null)
                   && StreamBuffer.SequenceEqual(extendedHeader.TagRestrictions.ToByte(), TagRestrictions.ToByte());
        }
 ////------------------------------------------------------------------------------------------------------------------------------
 /// <summary>
 /// Initializes a new instance of the <see cref="Id3v2ExtendedHeader" /> class reading the <see cref="extendedFlags"/> for the specified <see cref="version"/>.
 /// </summary>
 /// <param name="version">The version.</param>
 /// <param name="extendedFlags">The extended flags.</param>
 public static Id3v2ExtendedHeader InitExtendedHeader(Id3v2Version version, int extendedFlags)
 {
     Id3v2ExtendedHeader header = new Id3v2ExtendedHeader();
     header.SetFlags(version, extendedFlags);
     return header;
 }