+
    iU                     n    ^ RI t ^ RIHt ^ RIHtHt ^ RIHt R R ltRR R llt	R	 R
 lt
RR R lltR# )    N)
ModuleType)OptionalSequence)utilc                0    V ^8  d   QhR\         R\        /# )   module_namereturn)strr   )formats   "4/usr/lib/python3/dist-packages/cloudinit/importer.py__annotate__r      s     0 0s 0z 0    c                 .    \         P                  ! V 4      # N)	importlibimport_module)r	   s   &r   r   r      s    "";//r   c                h    V ^8  d   QhR\         R\        \        \         ,          ,          R\        /# )r   r	   attrsr
   )r   r   r   int)r   s   "r   r   r      s-     
 

%hsm4

r   c                     ^ pV'       g   V# \         P                  ! V 4      pV F  p\        W44      '       g   K  V^,          pK!  	  V# )r   )r   r   hasattr)r	   r   found_attrsmodattrs   &&   r   _count_attrsr      sI     K

!
!+
.C31K  r   c                0    V ^8  d   QhR\         R\         /# )r   mod_namer
   )r   )r   s   "r   r   r   #   s        r   c                   RV P                  4       8X  d   V RR p V P                  R4      '       g   RV  2p / p\        P                  P	                  R4      pV'       d   VP
                  '       dw   VP
                   F(  pVP                  \        P                  ! V4      4       K*  	  VP                  4        F*  pVP                  4       V P                  4       8X  g   K(  Vu # 	  V # )zECheck the importable datasource modules for a case-insensitive match.znocloud-netN
DataSourcezcloudinit.sources)	lower
startswithr   r   	find_specsubmodule_search_locationsupdateget_modules_from_dirvalues)r   modulesspecdirmodules   &    r   "match_case_insensitive_module_namer-   #   s    
 ((CR=|,,z*G >>##$78D///22CNN444S9: 3nn&F||~!11 ' Or   c                    V ^8  d   QhR\         R\        \         ,          R\        \        \         ,          ,          R\        /# )r   	base_namesearch_pathsrequired_attrsr
   )r   r   r   tuple)r   s   "r   r   r   :   s=     ' ''3-' Xc]+' 	'r   c                6   V'       g   . p. p. pV F  pRP                  \        RWP.4      4      pVP                  V4       \        P                  P                  V4      '       g   KW  \        Wb4      \        V4      8X  g   Kr  VP                  V4       K  	  WC3# )zFinds specified modules.N)joinfilterappendr   r   r$   r   len)r/   r0   r1   lookup_pathsfound_pathspath	full_paths   &&&    r   find_moduler=   :   s     LKHHVD4*;<=	I& ~~''	22	2c.6IIy)  &&r   r   )r   typesr   typingr   r   	cloudinitr   r   r   r-   r=    r   r   <module>rB      s,      % 0
.' 'r   