+
    i                        ^ RI t ^ RIt^ RIt^ RIt^RIHt ^RIHtHtH	t	H
t
HtHtHtHtHtHt ^RIHtHtHt ^RIHt ^RI5 ^RIHtHt ^RIHt ^R	IHtH t H!t! R
RRRRRRRRRRR/t"Rt#]$! ]%! ]4      ]%! ]#4      4      t&RR lt'R]PP                  ^ RRRRRRR3
R lt)]PP                  R3R lt*]PP                  3R lt+R# )    N)timemachine)
XL_CELL_BLANKXL_CELL_BOOLEANXL_CELL_DATEXL_CELL_EMPTYXL_CELL_ERRORXL_CELL_NUMBERXL_CELL_TEXT	XLRDErrorbiff_text_from_numerror_text_from_code)Bookcolnameopen_workbook_xls)	SIGNATURE)*)__VERSION____version__)
empty_cell)XLDateErrorxldate_as_datetimexldate_as_tuplexlsz	Excel xlsxlsbzExcel 2007 xlsb filexlsxzExcel xlsx fileodszOpenoffice.org ODS filezipzUnknown ZIP filezUnknown file types   PKc                   V'       d   VR\          pMQ\        P                  P                  V 4      p \	        V R4      ;_uu_ 4       pVP                  \         4      pRRR4       XP                  \        4      '       d   R# VP                  \        4      '       d   \        P                  ! V'       d   \        P                  ! V4      MT 4      pVP                  4        Uu/ uF$  pVP                  RR4      P                  4       VbK&  	  ppRV9   d   R# RV9   d   R	# R
V9   d   R# R# R#   + '       g   i     L; iu upi )a(  
Inspect the content at the supplied path or the :class:`bytes` content provided
and return the file's type as a :class:`str`, or ``None`` if it cannot
be determined.

:param path:
  A :class:`string <str>` path containing the content to inspect.
  ``~`` will be expanded.

:param content:
  The :class:`bytes` content to inspect.

:returns:
   A :class:`str`, or ``None`` if the format cannot be determined.
   The return value can always be looked up in :data:`FILE_FORMAT_DESCRIPTIONS`
   to return a human-readable description of the format found.
Nrbr   \/zxl/workbook.xmlr   zxl/workbook.binr   zcontent.xmlr   r   )	PEEK_SIZEospath
expanduseropenread
startswithXLS_SIGNATUREZIP_SIGNATUREzipfileZipFiler   BYTES_IOnamelistreplacelower)r$   contentpeekfzfnamecomponent_namess   &&     V/Users/mibo/.openclaw/workspace/.venv-ak/lib/python3.14/site-packages/xlrd/__init__.pyinspect_formatr8   &   s   $ z	"ww!!$'$66)$D  }%%}%%__g[11':4P (*{{}6'4t  <<c288:D@'4 	 6 //O+ & 6s   D-"*E -D=	TFc
                    \        W4      p
V
'       d%   V
R8w  d   \        \        V
,          R,           4      h\        V VVVVVVVVV	R7
      pV# )a  
Open a spreadsheet file for data extraction.

:param filename: The path to the spreadsheet file to be opened.

:param logfile: An open file to which messages and diagnostics are written.

:param verbosity: Increases the volume of trace material written to the
                  logfile.

:param use_mmap:

  Whether to use the mmap module is determined heuristically.
  Use this arg to override the result.

  Current heuristic: mmap is used if it exists.

:param file_contents:

  A string or an :class:`mmap.mmap` object or some other behave-alike
  object. If ``file_contents`` is supplied, ``filename`` will not be used,
  except (possibly) in messages.

:param encoding_override:

  Used to overcome missing or bad codepage information
  in older-version files. See :doc:`unicode`.

:param formatting_info:

  The default is ``False``, which saves memory.
  In this case, "Blank" cells, which are those with their own formatting
  information but no data, are treated as empty by ignoring the file's
  ``BLANK`` and ``MULBLANK`` records.
  This cuts off any bottom or right "margin" of rows of empty or blank
  cells.
  Only :meth:`~xlrd.sheet.Sheet.cell_value` and
  :meth:`~xlrd.sheet.Sheet.cell_type` are available.

  When ``True``, formatting information will be read from the spreadsheet
  file. This provides all cells, including empty and blank cells.
  Formatting information is available for each cell.

  Note that this will raise a NotImplementedError when used with an
  xlsx file.

:param on_demand:

  Governs whether sheets are all loaded initially or when demanded
  by the caller. See :doc:`on_demand`.

:param ragged_rows:

  The default of ``False`` means all rows are padded out with empty cells so
  that all rows have the same size as found in
  :attr:`~xlrd.sheet.Sheet.ncols`.

  ``True`` means that there are no empty cells at the ends of rows.
  This can result in substantial memory savings if rows are of widely
  varying sizes. See also the :meth:`~xlrd.sheet.Sheet.row_len` method.


:param ignore_workbook_corruption:

  This option allows to read corrupted workbooks.
  When ``False`` you may face CompDocError: Workbook corruption.
  When ``True`` that exception will be ignored.

:returns: An instance of the :class:`~xlrd.book.Book` class.
r   z; not supported)
filenamelogfile	verbosityuse_mmapfile_contentsencoding_overrideformatting_info	on_demandragged_rowsignore_workbook_corruption)r8   r   FILE_FORMAT_DESCRIPTIONSr   )r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   file_formatbks   &&&&&&&&&&  r7   open_workbookrG   T   sa    d !9K {e+0=>OOPP	#+'#=
B I    c                    ^RI Hp \        4       pVP                  WR7       V! VP                  VP
                  VP                  ^ W4       R# )z
For debugging: dump an XLS file's BIFF records in char & hex.

:param filename: The path to the file to be dumped.
:param outfile: An open file, to which the dump is written.
:param unnumbered: If true, omit offsets (for meaningful diffs).
)	biff_dumpr:   r;   N)biffhrJ   r   biff2_8_loadmembase
stream_len)r:   outfile
unnumberedrJ   rF   s   &&&  r7   dumprS      s8     !	BOOXO9bffbggr}}aErH   c                    ^RI Hp \        4       pVP                  WR7       V! VP                  VP
                  VP                  V4       R# )z
For debugging and analysis: summarise the file's BIFF records.
ie: produce a sorted file of ``(record_name, count)``.

:param filename: The path to the file to be summarised.
:param outfile: An open file, to which the summary is written.
)biff_count_recordsrK   N)rL   rU   r   rM   rN   rO   rP   )r:   rQ   rU   rF   s   &&  r7   count_recordsrV      s6     *	BOOXO9rvvrwww?rH   )NN),r#   pprintsysr+    r   rL   r   r   r   r   r   r	   r
   r   r   r   bookr   r   r   compdocr   r)   formulainfor   r   sheetr   xldater   r   r   rD   r*   maxlenr"   r8   stdoutrG   rS   rV    rH   r7   <module>rd      s    
  
    
 3 2 /  *  D D
 
;
"
	$	
  M"C$67	+\  ** $$("'!#-2eP ::% F %(JJ @rH   