+
    šÜi…  ã            
       ó  € ^ RI t ^ RIHt R tR tR t]! R. RO4      t ! R R]4      t ! R R	4      t ! R
 R4      t	 ! R R4      t
RRRRRRRRRR/t] P                  ! RP                  ]! ] P                  ]4      4      4      tR tR tR# )é    N)Ú
namedtuplec                ó@   € RRRRRRRRR	R
RR
RR/P                  W 4      # )z—Get the Python type name for a given model type.

    >>> py_type_name('list')
    'list'
    >>> py_type_name('structure')
    'dict'

:rtype: string
ÚblobÚbytesÚ	characterÚstringÚdoubleÚfloatÚlongÚintegerÚmapÚdictÚ	structureÚ	timestampÚdatetime©Úget©Ú	type_names   &Ú5/usr/lib/python3/dist-packages/botocore/docs/utils.pyÚpy_type_namer      s=   € ð 	�Ø�XØ�'Ø�	ØˆvØ�VØ�Zð÷ 
�cˆ)Óð ó    c                óN   € RRRRRRRRRR	R
RRRRRRRRR/
P                  V R4      # )zÁGet the Python default value for a given model type.

    >>> py_default('string')
    ''string''
    >>> py_default('list')
    '[...]'
    >>> py_default('unknown')
    '...'

:rtype: string
r	   z123.0r   Ú123r   r   z'string'r   zb'bytes'Úbooleanz
True|FalseÚlistz[...]r   z{...}r   r   zdatetime(2015, 1, 1)z...r   r   s   &r   Ú
py_defaultr   &   sO   € ð 	�'Ø�Ø�5Ø�*Ø�
Ø�<Ø�ØˆwØ�WØÐ+ð÷ 
�cˆ)�UÓðr   c                ód  € V P                   P                  R4      pV P                   P                  RR4      pVP                  R4      '       d
   VR,          pVP                  R4      '       d
   VR,          pV'       d1   VP                  4       VP                  4       9  d   VRV R	2,          pV# )
zoGenerate the official name of an AWS Service

:param service_model: The service model representing the service
ÚserviceFullNameÚserviceAbbreviationÚ ÚAmazon:é   NNÚAWS:é   NNz (Ú))Úmetadatar   Ú
startswithÚlower)Úservice_modelÚofficial_nameÚ
short_names   &  r   Úget_official_service_namer-   @   s�   € ð
 "×*Ñ*×.Ñ.Ð/@ÓA€MØ×'Ñ'×+Ñ+Ð,AÀ2ÓF€JØ×Ñ˜X×&Ò&Ø •^ˆ
Ø×Ñ˜U×#Ò#Ø •^ˆ
ß�j×&Ñ&Ó(°×0CÑ0CÓ0EÔEØ˜2˜j˜\¨Ð+Õ+ˆØÐr   ÚDocumentedShapec                   ó:   a a€ ] tR t^]t oRtRV 3R lltRtVtV ;t# )r.   zBUse this class to inject new shapes into a model for documentationc           	     óR   <€ Vf   . pVf   . pVf   . p\         SV `  V VVVVVV4      # ©N)ÚsuperÚ__new__)ÚclsÚnamer   Údocumentationr'   ÚmembersÚrequired_membersÚ	__class__s   &&&&&&&€r   r3   ÚDocumentedShape.__new__`   sL   ø€ ð ÒØˆHØŠ?ØˆGØÒ#Ø!ÐÜ‰w‰ØØØØØØØó
ð 	
r   © )NNN)	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r3   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r9   Ú__classdict__s   @@r   r.   r.   ]   s   ù‡ € ÙL÷
÷ 
r   c                   ó0   a € ] tR t^zt o RR ltR tRtV tR# )ÚAutoPopulatedParamNc                ó8   € Wn         W n        Vf
   RV n        R # R # )Nz{Please note that this parameter is automatically populated if it is not provided. Including this parameter is not required
©r5   Úparam_description)Úselfr5   rI   s   &&&r   Ú__init__ÚAutoPopulatedParam.__init__{   s%   € ØŒ	Ø!2ÔØÒ$ðð Ö"ñ %r   c                ó  € VP                  R4      '       d‰   V P                  VP                  9   dl   VP                  V P                  4      pRVP                  9   d   VP	                  R4       VP                  R4      pVP                  V P                  4       R# R# VP                  R4      '       dL   VP                  R4      pV P                  VP                  9   d   VP	                  V P                  4       R# R# R# )zÏDocuments auto populated parameters

It will remove any required marks for the parameter, remove the
parameter from the example, and add a snippet about the parameter
being autopopulated in the description.
zdocs.request-paramszis-requiredúparam-documentationzdocs.request-exampleústructure-valueN)r(   r5   Úavailable_sectionsÚget_sectionÚdelete_sectionÚwritelnrI   ©rJ   Ú
event_nameÚsectionÚkwargsÚdescription_sections   &&&, r   Údocument_auto_populated_paramÚ0AutoPopulatedParam.document_auto_populated_param…   sÚ   € ð × Ñ Ð!6×7Ò7Ø�y‰y˜G×6Ñ6Ô6Ø!×-Ñ-¨d¯i©iÓ8�Ø  G×$>Ñ$>Ô>Ø×*Ñ*¨=Ô9Ø&-×&9Ñ&9Ø)ó'Ð#ð $×+Ñ+¨D×,BÑ,BÖCñ 7ð ×"Ñ"Ð#9×:Ò:Ø×)Ñ)Ð*;Ó<ˆGØ�y‰y˜G×6Ñ6Ô6Ø×&Ñ& t§y¡yÖ1ñ 7ñ ;r   rH   r1   )r<   r=   r>   r?   rK   rY   rA   rB   ©rD   s   @r   rF   rF   z   s   ø‡ € ô÷2ð 2r   rF   c                   ó0   a € ] tR t^›t o RtR tR tRtV tR# )ÚHideParamFromOperationsa.  Hides a single parameter from multiple operations.

This method will remove a parameter from documentation and from
examples. This method is typically used for things that are
automatically populated because a user would be unable to provide
a value (e.g., a checksum of a serialized XML request body).c                óô   € W n         \        4       V n        \        4       V n        RpRpV FI  pV P                  P	                  WAV3,          4       V P                  P	                  WQV3,          4       KK  	  R# )zð
:type service_name: str
:param service_name: Name of the service to modify.

:type parameter_name: str
:param parameter_name: Name of the parameter to modify.

:type operation_names: list
:param operation_names: Operation names to modify.
z*docs.request-params.%s.%s.complete-sectionz+docs.request-example.%s.%s.complete-sectionN)Ú_parameter_nameÚsetÚ_params_eventsÚ_example_eventsÚadd)rJ   Úservice_nameÚparameter_nameÚoperation_namesÚparam_templateÚexample_templater5   s   &&&&   r   rK   Ú HideParamFromOperations.__init__£   sl   € ð  .ÔÜ!›eˆÔÜ"›uˆÔàEˆØHÐÛ#ˆDØ×Ñ×#Ñ# NÀDÐ5IÕ$IÔJØ× Ñ ×$Ñ$Ð%5ÀtÐ8LÕ%LÖMó $r   c                óÞ   € WP                   9   d   VP                  R 4      pMWP                  9  d   R# V P                  VP                  9   d   VP                  V P                  4       R# R# )rO   N)rb   rQ   ra   r_   rP   rR   )rJ   rU   rV   rW   s   &&&,r   Ú
hide_paramÚ"HideParamFromOperations.hide_param¸   s[   € Ø×-Ñ-Ô-à×)Ñ)Ð*;Ó<‰GØ×2Ñ2Ô2ÙØ×Ñ 7×#=Ñ#=Ô=Ø×"Ñ" 4×#7Ñ#7Ö8ñ >r   )rb   r_   ra   N)	r<   r=   r>   r?   r@   rK   rk   rA   rB   r[   s   @r   r]   r]   ›   s   ø‡ € ñDòN÷*9ð 9r   r]   c                   ó0   a € ] tR t^Ât o RtR tR tRtV tR# )ÚAppendParamDocumentationz-Appends documentation to a specific parameterc                ó   € Wn         W n        R # r1   )r_   Ú_doc_string)rJ   re   Ú
doc_strings   &&&r   rK   Ú!AppendParamDocumentation.__init__Å   s   € Ø-ÔØ%Ör   c                óÎ   € V P                   VP                  9   dJ   VP                  V P                   4      pVP                  R 4      pVP                  V P                  4       R# R# )rN   N)r_   rP   rQ   rS   rp   rT   s   &&&, r   Úappend_documentationÚ-AppendParamDocumentation.append_documentationÉ   sW   € Ø×Ñ 7×#=Ñ#=Ô=Ø×)Ñ)¨$×*>Ñ*>Ó?ˆGØ")×"5Ñ"5Ð6KÓ"LÐØ×'Ñ'¨×(8Ñ(8Ö9ñ >r   )rp   r_   N)	r<   r=   r>   r?   r@   rK   rt   rA   rB   r[   s   @r   rn   rn   Â   s   ø‡ € Ù7ò&÷:ð :r   rn   Ú
z\nÚz\rÚ	z\tÚz\bÚz\fÚ|c                 ó:   € \         V P                  ^ 4      ,          # )r   )Ú	_CONTROLSÚgroup)Úmatchs   &r   Ú_CONTROLS_MATCH_HANDLERr€   Ü   s   € Ü�U—[‘[ “^Õ$Ð$r   c                 ó6   € \         P                  \        V 4      # r1   )Ú_ESCAPE_CONTROLS_REÚsubr€   )Úvalues   &r   Úescape_controlsr…   à   s   € Ü×"Ñ"Ô#:¸EÓBÐBr   )r5   r   r6   r'   r7   r8   )ÚreÚcollectionsr   r   r   r-   Ú_DocumentedShaper.   rF   r]   rn   r}   ÚcompileÚjoinr   Úescaper‚   r€   r…   r;   r   r   Ú<module>rŒ      s°   ðó 
Ý "ò ò*ò4ñ  Øòó
Ð ô
Ð&ô 
÷:2ñ 2÷B$9ñ $9÷N:ñ :ð 	ˆ%Øˆ%Øˆ%Øˆ%Øˆ%ð€	ð —j’j §¡©#¨b¯i©i¸Ó*CÓ!DÓEÐ ò%ôCr   