
    |e                     T    d Z ddlmZmZmZ ddlmZmZmZm	Z	m
Z
 dgZ G d de      Zy)z
    pygments.lexers.hexdump
    ~~~~~~~~~~~~~~~~~~~~~~~

    Lexers for hexadecimal dumps.

    :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerbygroupsinclude)NameNumberStringPunctuation
WhitespaceHexdumpLexerc                   L   e Zd ZdZdZdgZdZdef ed      dez   dz   ez   d	z    e	e
j                  ee
j                        fed
z   e
j                  fd e	eeee      dfd e	eeee      dfd e	eeee      fd e	eeee      fd e	ee      fd e	ee      dfdefdefgdez   dz    e	ej                  e      dfdez   dz   ej                  fgdedfedz   ej                  fdefgdef ed      ed
z   e
j                  fd e	eeee      fdefdefgdef ed      ed
z   e
j                  fd e	eeee      fdefdefgdef ed      dez   dz   ez   d	z    e	e
j                  ee
j                        fed
z   e
j                  fd e	ee      fd  e	ee      fdefdefgd!Zy")#r   a  
    For typical hex dump output formats by the UNIX and GNU/Linux tools ``hexdump``,
    ``hd``, ``hexcat``, ``od`` and ``xxd``, and the DOS tool ``DEBUG``. For example:

    .. sourcecode:: hexdump

        00000000  7f 45 4c 46 02 01 01 00  00 00 00 00 00 00 00 00  |.ELF............|
        00000010  02 00 3e 00 01 00 00 00  c5 48 40 00 00 00 00 00  |..>......H@.....|

    The specific supported formats are the outputs of:

    * ``hexdump FILE``
    * ``hexdump -C FILE`` -- the `canonical` format used in the example.
    * ``hd FILE`` -- same as ``hexdump -C FILE``.
    * ``hexcat FILE``
    * ``od -t x1z FILE``
    * ``xxd FILE``
    * ``DEBUG.EXE FILE.COM`` and entering ``d`` to the prompt.

    .. versionadded:: 2.1
    Hexdumphexdumpz[0-9A-Ha-h]z\noffset(z	{2})(\-)(z{2})z{2}z(\s{2,3})(\>)(.{16})(\<)$bracket-stringsz(\s{2,3})(\|)(.{16})(\|)$piped-stringsz(\s{2,3})(\>)(.{1,15})(\<)$z(\s{2,3})(\|)(.{1,15})(\|)$z(\s{2,3})(.{1,15})$z(\s{2,3})(.{16}|.{20})$nonpiped-stringsz\sz^\*z^(z+)(:)offset-mode^+z#pop:z(\s{2,3})(\|)(.{1,16})(\|)$z(\s{2,3})(\>)(.{1,16})(\<)$z(\s{19,})(.{1,20}?)$z(\s{2,3})(.{1,20})$)rootr   r   r   r   r   N)__name__
__module____qualname____doc__namealiaseshdr
   r   r   r   Hexr	   r   r   Labeltokens     9/usr/lib/python3/dist-packages/pygments/lexers/hexdump.pyr   r      s   * DkG	B JH"W\!"$W,fjj+vzz:<Y

#)j+v{CEVX)j+v{C_V+j+v{CE+j+v{CE#Xj&%AB'*f)EGYZJ[!#
( 2Xgx

K@-P"WS[$**%

 J'VTZZ ;
 JHY

#+j+v{CEJ[!
 JHY

#+j+v{CEJ[!
 JH"W\!"$W,fjj+vzz:<Y

#$hz6&BC#Xj&%ABJ[!

_:Fr$   N)r   pygments.lexerr   r   r   pygments.tokenr   r   r   r	   r
   __all__r   r#   r$   r%   <module>r)      s.    9 8 H H
U: Ur$   