+
    šÜi+&  ã                   ó   € ^ RI t ^ RIt^ RIt^ RIHt ^ RIHt ^ RIHt Rt	]P                  ! R4      tRt] P                  ! R4      tR	R
RRR/RR
RRR/RR
RRR/RR
RRR//tR^R^R^/t ! R R4      t ! R R]4      tR# )é    N)ÚOrderedDict)ÚDocStringParser)Ú	ReSTStylez&https://docs.aws.amazon.com/index.htmlzX`AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/[a-z0-9-.]*/[a-zA-Z]*>`_z�

    **{}**
    ::

        # This section is too large to render.
        # Please see the AWS API Documentation linked below.

    {}
    Úbcdocszresponse-exampleÚnamezResponse SyntaxÚ
line_limitiÜ  ÚdescriptionzResponse Structureiˆ  zrequest-examplezRequest Syntaxzrequest-paramsÚ
Parametersz
client-apizpaginator-apiz
waiter-apic                   ól   a € ] tR t^2t o RR ltR tR tR tR tR t	R t
R tR	 tR
 tR tR tRtV tR# )ÚReSTDocumentc                ó¦   € \        V 4      V n        Wn        \        V 4      V n        R V n        RV n        / V n        / V n        . V n	        RV n
        R# )TFN)r   ÚstyleÚtargetr   ÚparserÚ	keep_dataÚdo_translationÚtranslation_mapÚhrefsÚ_writesÚ_last_doc_string)Úselfr   s   &&Ú=/usr/lib/python3/dist-packages/botocore/docs/bcdoc/restdoc.pyÚ__init__ÚReSTDocument.__init__3   sK   € Ü˜t“_ˆŒ
ØŒÜ% dÓ+ˆŒØˆŒØ#ˆÔØ!ˆÔØˆŒ
ØˆŒØ $ˆÖó    c                óp   € V P                   '       d$   Ve   V P                  P                  V4       R # R # R # ©N)r   r   Úappend©r   Úss   &&r   Ú_writeÚReSTDocument._write>   s(   € Ø�>�>ˆ>˜ašmØ�L‰L×Ñ Ö"ñ ,‰>r   c                ó(   € V P                  V4       R# )z"
Write content into the document.
N)r!   ©r   Úcontents   &&r   ÚwriteÚReSTDocument.writeB   s   € ð 	�‰�GÖr   c                ób   € V P                  V P                  P                  4        V R24       R# )z
Write content on a newline.
Ú
N)r!   r   Úspacesr$   s   &&r   ÚwritelnÚReSTDocument.writelnH   s)   € ð 	�‰�t—z‘z×(Ñ(Ó*Ð+¨G¨9°BÐ7Ö8r   c                ó(   € V P                   R,          # )zV
Returns the last content written to the document without
removing it from the stack.
éÿÿÿÿ©r   ©r   s   &r   Ú
peek_writeÚReSTDocument.peek_writeN   s   € ð
 �|‰|˜BÕÐr   c                ón   € \        V P                  4      ^ 8”  d   V P                  P                  4       # R# )z<
Removes and returns the last content written to the stack.
N)Úlenr   Úpopr0   s   &r   Ú	pop_writeÚReSTDocument.pop_writeU   s,   € ô &)¨¯©Ó%6¸Ô%:ˆt�|‰|×ÑÓ!ÐDÀÐDr   c                ó<   € V P                   P                  V4       R# )z"
Places new content on the stack.
N)r   r   r   s   &&r   Ú
push_writeÚReSTDocument.push_write[   s   € ð 	�‰×Ñ˜AÖr   c                ó*  € V P                   '       dY   V P                  P                  4        V P                   P                  4        F   w  rV P                  P	                  W4       K"  	  RP                  V P                  4      P                  R4      # )z:
Returns the current content of the document as a string.
Ú úutf-8)r   r   Únew_paragraphÚitemsÚlink_target_definitionÚjoinr   Úencode)r   ÚrefnameÚlinks   &  r   ÚgetvalueÚReSTDocument.getvaluea   sf   € ð �:�:ˆ:Ø�J‰J×$Ñ$Ô&Ø!%§¡×!1Ñ!1Ö!3‘�Ø—
‘
×1Ñ1°'Ö@ñ "4à�w‰w�t—|‘|Ó$×+Ñ+¨GÓ4Ð4r   c                ó`   € V Uu. uF  q P                   P                  W"4      NK  	  up# u upi r   )r   Úget)r   ÚwordsÚws   && r   Útranslate_wordsÚReSTDocument.translate_wordsk   s)   € Ù8=Ó>¹°1×$Ñ$×(Ñ(¨Ö.¹Ñ>Ð>ùÒ>s   …#+c                ód   € V'       d(   V P                   '       d   V P                  V4       R # R # R # r   )r   r!   )r   Údatas   &&r   Úhandle_dataÚReSTDocument.handle_datan   s    € ß�D—N—N�NØ�K‰K˜Öñ #‰4r   c                óf  € V'       dk    \        V P                  4      pV P                  P                  V4       V P                  P	                  4        \        V P                  4      pW#3V n        R# R#   \         d1    \        P                  R RR7       \        P                  T4        R# i ; i)zError parsing doc stringT)Úexc_infoN)	r4   r   r   ÚfeedÚcloser   Ú	ExceptionÚLOGÚdebug)r   Ú
doc_stringÚstartÚends   &&  r   Úinclude_doc_stringÚReSTDocument.include_doc_stringr   s…   € ßð&Ü˜DŸL™LÓ)�Ø—‘× Ñ  Ô,Ø—‘×!Ñ!Ô#Ü˜$Ÿ,™,Ó'�Ø).¨�Ö%ñ øô ô &Ü—	‘	Ð4¸t�	ÔDÜ—	‘	˜*×%ð&ús   ŠA'A5 Á57B0Â/B0c                ó^   € V P                   e   V P                   w  rV P                  W1 R # R # r   )r   r   )r   rY   rZ   s   &  r   Úremove_last_doc_stringÚ#ReSTDocument.remove_last_doc_string~   s.   € à× Ñ Ò,Ø×.Ñ.‰JˆEØ—‘˜U˜YÒ'ñ -r   )	r   r   r   r   r   r   r   r   r   N)Úman)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r!   r&   r+   r1   r6   r9   rE   rK   rO   r[   r^   Ú__static_attributes__Ú__classdictcell__)Ú__classdict__s   @r   r   r   2   sG   ø‡ € ô	%ò#òò9ò òEòò5ò?òò
&÷(ð (r   r   c                   óä   a a€ ] tR t^…t oRV 3R llt]R 4       t]R 4       t]P                  R 4       t]R 4       t	]R 4       t
R tRR ltR	 tR
 tR tRR ltR tR tR tR tR tRtVtV ;t# )ÚDocumentStructurec                óÆ   <€ \         SV `  VR7       Wn        \        4       V n        V P                  .V n        / V n        Ve   W@n        Ve   V P                  V4       R# R# )aí  Provides a Hierarichial structure to a ReSTDocument

You can write to it similiar to as you can to a ReSTDocument but
has an innate structure for more orginaztion and abstraction.

:param name: The name of the document
:param section_names: A list of sections to be included
    in the document.
:param target: The target documentation of the Document structure
:param context: A dictionary of data to store with the strucuture. These
    are only stored per section not the entire structure.
)r   N)Úsuperr   Ú_namer   Ú
_structureÚ_pathÚ_contextÚ_generate_structure)r   r   Úsection_namesr   ÚcontextÚ	__class__s   &&&&&€r   r   ÚDocumentStructure.__init__†   s[   ø€ ô 	‰Ñ ÐÔ'ØŒ
Ü%›-ˆŒØ—j‘j�\ˆŒ
ØˆŒØÒØ#ŒMØÒ$Ø×$Ñ$ ]Ö3ñ %r   c                ó   € V P                   # )z"The name of the document structure)rl   r0   s   &r   r   ÚDocumentStructure.name�   s   € ð �z‰zÐr   c                ó   € V P                   # )z^
A list of where to find a particular document structure in the
overlying document structure.
©rn   r0   s   &r   ÚpathÚDocumentStructure.path¢   s   € ð �z‰zÐr   c                ó   € Wn         R # r   rx   )r   Úvalues   &&r   ry   rz   ª   s   € àŽ
r   c                ó,   € \        V P                  4      # r   )Úlistrm   r0   s   &r   Úavailable_sectionsÚ$DocumentStructure.available_sections®   s   € ä�D—O‘OÓ$Ð$r   c                ó   € V P                   # r   )ro   r0   s   &r   rr   ÚDocumentStructure.context²   s   € à�}‰}Ðr   c                ó:   € V F  pV P                  V4       K  	  R # r   )Úadd_new_section)r   rq   Úsection_names   && r   rp   Ú%DocumentStructure._generate_structure¶   s   € Û)ˆLØ× Ñ  Ö.ó *r   c                ó  € V P                  WP                  VR7      pV P                  V.,           Vn        V P                  P                  VP                  n        V P
                  Vn        V P                  Vn        W0P                  V&   V# )a7  Adds a new section to the current document structure

This document structure will be considered a section to the
current document structure but will in itself be an entirely
new document structure that can be written to and have sections
as well

:param name: The name of the section.
:param context: A dictionary of data to store with the strucuture. These
    are only stored per section not the entire structure.
:rtype: DocumentStructure
:returns: A new document structure to add to but lives as a section
    to the document structure it was instantiated from.
)r   r   rr   )rs   r   ry   r   Úindentationr   r   rm   )r   r   rr   Úsections   &&& r   r„   Ú!DocumentStructure.add_new_sectionº   st   € ð  —.‘.ØŸk™k°7ð !ó 
ˆð —y‘y D 6Õ)ˆŒà$(§J¡J×$:Ñ$:ˆ�‰Ô!Ø"&×"6Ñ"6ˆÔØŸ
™
ˆŒØ '�‰˜ÑØˆr   c                ó(   € V P                   V,          # )zRetrieve a section©rm   ©r   r   s   &&r   Úget_sectionÚDocumentStructure.get_sectionÕ   s   € à�‰˜tÕ$Ð$r   c                ó   € WP                   9   # r   rŒ   r�   s   &&r   Úhas_sectionÚDocumentStructure.has_sectionÙ   s   € Ø—‘Ñ&Ð&r   c                ó    € V P                   V R# )zDelete a sectionNrŒ   r�   s   &&r   Údelete_sectionÚ DocumentStructure.delete_sectionÜ   s   € à�O‰O˜DÒ!r   c                óÄ  € \        V P                  4      pV^8X  dl   V P                  '       dY   V P                  P	                  4        V P                  P                  4        F   w  r4V P                  P                  W44       K"  	  M-V\        P                  V P                  ^,          4      8X  d   RpV P                  4       pV P                  P                  4        Fk  w  rg\        P                  VP                  4       4      pV'       d#   VP                  ^ 4       R2P                  4       MTpWWP!                  V4      ,          pKm  	  \        VP#                  4       4      p	\$        P                  V P&                  4      p
Ve   VP                  4       M\(        pV
'       d9   WšR,          8”  d,   \*        P-                  V
R,          V4      P                  4       pV# )zµFlushes a doc structure to a ReSTructed string

The document is flushed out in a DFS style where sections and their
subsections' values are added to the string as they are visited.
Nz

r   r   )r4   ry   r   r   r>   r?   r@   ÚSECTION_METHOD_PATH_DEPTHrH   rE   rm   ÚDOCUMENTATION_LINK_REGEXÚsearchÚdecodeÚgrouprB   Úflush_structureÚ
splitlinesÚSECTION_LINE_LIMIT_CONFIGr   ÚDEFAULT_AWS_DOCS_LINKÚLARGE_SECTION_MESSAGEÚformat)r   Ú	docs_linkÚpath_lengthrC   rD   r|   r   r‰   ÚmatchÚ
line_countÚsection_configÚaws_docs_links   &&          r   rœ   Ú!DocumentStructure.flush_structureà   sx  € ô ˜$Ÿ)™)“nˆØ˜!ÔØ�z�zˆzØ—
‘
×(Ñ(Ô*Ø%)§Z¡Z×%5Ñ%5Ö%7‘M�GØ—J‘J×5Ñ5°gÖDñ &8øð Ô5×9Ñ9¸$¿)¹)ÀA½,ÓGÔGØˆIØ—‘“ˆØ!Ÿ_™_×2Ñ2Ö4‰MˆDô -×3Ñ3°E·L±L³NÓCˆEç49�5—;‘;˜q“>Ð" $Ð'×.Ñ.Ô0¸yð ð ×,Ñ,¨YÓ7Õ7ŠEñ 5ô ˜×)Ñ)Ó+Ó,ˆ
Ü2×6Ñ6°t·y±yÓAˆð Ò$ð ×ÑÔä&ð 	÷
 ˜j¸,Õ+GÔGÜ)×0Ñ0Ø˜vÕ&¨óç‰f‹hð ð ˆr   c                óV   € R P                  V P                  4      P                  R4      # )r<   r=   )rA   r   rB   r0   s   &r   rE   ÚDocumentStructure.getvalue
  s    € Ø�w‰w�t—|‘|Ó$×+Ñ+¨GÓ4Ð4r   c                ó$   € \        4       V n        R # r   )r   rm   r0   s   &r   Úremove_all_sectionsÚ%DocumentStructure.remove_all_sections  s   € Ü%›-ˆŽr   c                ó   € . V n         R # r   r/   r0   s   &r   Ú
clear_textÚDocumentStructure.clear_text  s	   € ØˆŽr   c                ó^   € V P                  R 4      pVP                  P                  V4       V# )Útitle)r„   r   Úh1)r   r²   Útitle_sections   && r   Úadd_title_sectionÚ#DocumentStructure.add_title_section  s,   € Ø×,Ñ,¨WÓ5ˆØ×Ñ×Ñ˜uÔ%ØÐr   c                ó`  € \         P                  P                  V4      '       g   \         P                  ! V4       \         P                  P	                  W R 24      p\        VR4      ;_uu_ 4       pVP                  V P                  4       4       RRR4       R#   + '       g   i     R# ; i)z.rstÚwbN)Úosry   ÚexistsÚmakedirsrA   Úopenr&   rœ   )r   Ú	full_pathÚ	file_nameÚsub_resource_file_pathÚfs   &&&  r   Úwrite_to_fileÚDocumentStructure.write_to_file  so   € Ü�w‰w�~‰~˜i×(Ò(Ü�KŠK˜	Ô"Ü!#§¡§¡¨i¸;ÀdÐ9KÓ!LÐÜÐ(¨$×/Ô/°1Ø�G‰G�D×(Ñ(Ó*Ô+÷ 0×/×/Ò/ús   Á2 BÂB-	)ro   rl   rn   rm   r   )Nr`   Nr   )ra   rb   rc   rd   r   Úpropertyr   ry   Úsetterr   rr   rp   r„   rŽ   r‘   r”   rœ   rE   r¬   r¯   rµ   rÁ   re   rf   Ú__classcell__)rs   rg   s   @@r   ri   ri   …   s¯   ù‡ € ÷4ð. ñó ðð ñó ðð 
‡[�[ñó ðð ñ%ó ð%ð ñó ðò/ôò6%ò'ò"ô(òT5ò(òò÷
,ò ,r   ri   )Úloggingr¹   ÚreÚbotocore.compatr   Ú#botocore.docs.bcdoc.docstringparserr   Úbotocore.docs.bcdoc.styler   rŸ   Úcompiler˜   r    Ú	getLoggerrV   rž   r—   r   ri   © r   r   Ú<module>rÎ      sÅ   ðó Û 	Û 	å 'Ý ?Ý /à@Ð ØŸ:š:ðIóÐ ð	Ð ð ×Ò˜Ó!€à˜Ð!2°LÀ$ÐGØ�FÐ0°,ÀÐEØ˜Ð 0°,ÀÐEØ�v˜|¨\¸4Ð@ð	Ð ð �!Ø�QØ�!ðÐ ÷P(ñ P(ôfX,˜ö X,r   