
    ^h
                        S r SSKJr  SSKrSSKJrJr  SSKJrJ	r	J
r
JrJrJrJrJr  SSKJr  SSKJr  SSKJr  SS	KJr  SS	KJr  SSKJr  SSKJr  SSKJr  SS	KJr  SS	KJr  SSKJr   SSKJr!  SSKJr"  S
r#Sr$S r%g)zDThe main API for the v2 notebook format.

Authors:

* Brian Granger
    )annotationsN   )	downgradeupgrade)NotebookNode
new_authornew_code_cellnew_metadatanew_notebook
new_outputnew_text_cellnew_worksheet)reads)to_notebook)writes   c                    [         R                  R                  U 5      u  pUS;   a  SnOUS:X  a  SnO	U nU S-   n SnXU4$ )a  Parse a notebook filename.

This function takes a notebook filename and returns the notebook
format (json/py) and the notebook name. This logic can be
summarized as follows:

* notebook.ipynb -> (notebook.ipynb, notebook, json)
* notebook.json  -> (notebook.json, notebook, json)
* notebook.py    -> (notebook.py, notebook, py)
* notebook       -> (notebook.ipynb, notebook, json)

Parameters
----------
fname : unicode
    The notebook filename. The filename can use a specific filename
    extension (.ipynb, .json, .py) or none, in which case .ipynb will
    be assumed.

Returns
-------
(fname, name, format) : (unicode, unicode, unicode)
    The filename, notebook name and format.
).ipynbz.jsonjsonz.pypyr   )ospathsplitext)fnamebasenameextformat_s       N/home/james-whalen/.local/lib/python3.13/site-packages/nbformat/v2/__init__.pyparse_filenamer   9   sS    0 GG$$U+MH
!!	 G##    )&__doc__
__future__r   r   convertr   r   nbbaser   r   r	   r
   r   r   r   r   nbjsonr   	read_json
reads_jsonr   to_notebook_jsonr   
write_jsonwrites_jsonnbpyread_pyreads_pyto_notebook_pywrite_py	writes_pynbxmlread_xml	reads_xmlto_notebook_xmlnbformatnbformat_minorr    r    r   <module>r8      s`   " # 	 '	 	 	 ' ' 3 ( ) " # / $ % % % 1 !$r    