+
    Qic  c                  sZ   R t ^ RIHt RtRtRtRtRt^ RIH	t	 ^RI
Ht ^R	I
Ht ^R
I
Ht ^RI
Ht ^RI
Ht ^RI
Ht ^RI
Ht ^RI
Ht ^RI
Ht ^RIHt ^RIHt ^RIHtHt ^RIHt ]	'       d$   ^ RIt]P<                  ! RR4       ^ RIH t  ^RI!H"t"  ! R R4      t#]#! 4       t$R R lt%R# )=Module for commands related to the current accessible object.)annotationsz$Id$z
$Revision$z$Date$zQCopyright (c) 2005-2008 Sun Microsystems Inc.Copyright (c) 2016-2023 Igalia, S.L.ZLGPL)TYPE_CHECKING)cmdnames)dbus_service)debug)focus_manager)input_event)keybindings)messages)settings_manager)speech_and_verbosity_manager)AXComponent)AXObject)AXTextAXTextAttribute)AXUtilitiesNAtspiz2.0)r   )defaultc                  sd   ] tR t^8tRtR R ltR+R R lltR,R R lltR R	 ltR
 R lt	R R lt
R R ltR t]P                  R-R R ll4       t]P                  R-R R ll4       t]P                  R-R R ll4       t]P                  R.R R ll4       t]P                  R-R R ll4       t]P                  R-R R ll4       tR R lt]P                  R-R  R! ll4       t]P                  R-R" R# ll4       tR/R$ R% llt]P                  R-R& R' ll4       t]P                  R-R( R) ll4       tR*tR# )0WhereAmIPresenterr    c                   V ^8  d   QhRR/#    returnZNone Zformat   ">/usr/lib/python3.14/site-packages/orca/where_am_i_presenter.py__annotate__WhereAmIPresenter.__annotate__;   s     H H$ H    c                	s8   V P                  R 4      V n        \        P                  ! 4       V n        \        P                  ! 4       V n        Rp\        P                  ! \        P                  VR 4       \        P                  ! 4       pVP                  RV 4       R# )Tz.WhereAmIPresenter: Registering D-Bus commands.r   N)get_handlers	_handlersr   KeyBindings_desktop_bindings_laptop_bindingsr   print_message
LEVEL_INFOr   Zget_remote_controllerZregister_decorated_module)selfmsgZ
controller   &  r   __init__ZWhereAmIPresenter.__init__;   ss    CGCTCTUYCZ:E:Q:Q:S9D9P9P9R>E,,c48!779
,,-@$Gr   c               s$    V ^8  d   QhRRRRRR/# )r   refreshbool
is_desktopr   zkeybindings.KeyBindingsr   r   r   r   r   r   E   s$     % %%15%	 %r   c                s   V'       dp   Rp\         P                  ! \         P                  VR4       V P                  P	                  R4       V P
                  P	                  R4       V P                  4        MqV'       d2   V P                  P                  4       '       d   V P                  4        M8V'       g1   V P
                  P                  4       '       d   V P                  4        V'       d   V P                  # V P
                  # )z-Returns the where-am-i-presenter keybindings.z*WHERE AM I PRESENTER: Refreshing bindings.T)r   r$   r%   r"   Zremove_key_grabsr#   _setup_bindingsZis_empty)r&   r*   r,   r'   s   &&& r   get_bindingsZWhereAmIPresenter.get_bindingsE   s    
 >C 0 0#t<""334`a!!223_`  "D22;;==  " 5 5 > > @ @  ")))$$$r   c               s     V ^8  d   QhRRRR/# )r   r*   r+   r   z(dict[str, input_event.InputEventHandler]r   r   r   r   r   r   Y   s      D 5] r   c                s    V'       d9   Rp\         P                  ! \         P                  VR4       V P                  4        V P                  # )z*Returns the where-am-i-presenter handlers.z*WHERE AM I PRESENTER: Refreshing handlers.T)r   r$   r%   _setup_handlersr    )r&   r*   r'   s   && r   r   ZWhereAmIPresenter.get_handlersY   s:     >C 0 0#t<  "~~r   c               r   r   r   r   r   r   r   r   c   s     & & &r   c                sF    V P                  4        V P                  4        R# )z.Sets up the where-am-i-presenter key bindings.N)_setup_desktop_bindings_setup_laptop_bindings)r&      &r   r-   Z!WhereAmIPresenter._setup_bindingsc   s     	$$&##%r   c               r   r   r   r   r   r   r   r   i   s     39 39 39r   c                s   / V n         \        P                  ! V P                  \        P
                  4      V P                   R&   \        P                  ! V P                  \        P                  4      V P                   R&   \        P                  ! V P                  \        P                  4      V P                   R&   \        P                  ! V P                  \        P                  4      V P                   R&   \        P                  ! V P                  \        P                  4      V P                   R&   \        P                  ! V P                  \        P                  4      V P                   R&   \        P                  ! V P                   \        P"                  4      V P                   R&   \        P                  ! V P$                  \        P&                  4      V P                   R&   \        P                  ! V P(                  \        P*                  4      V P                   R	&   R
p\,        P.                  ! \,        P0                  VR4       R# )z6Sets up the where-am-i-presenter input event handlers.readCharAttributesHandlerpresentSizeAndPositionHandlergetTitleHandlergetStatusBarHandlerpresent_default_buttonwhereAmIBasicHandlerwhereAmIDetailedHandlerwhereAmILinkHandlerwhereAmISelectionHandlerz&WHERE AM I PRESENTER: Handlers set up.TN)r    r   ZInputEventHandlerpresent_character_attributesr   ZREAD_CHAR_ATTRIBUTESpresent_size_and_positionZPRESENT_SIZE_AND_POSITIONpresent_titleZPRESENT_TITLEpresent_status_barZPRESENT_STATUS_BARr7   ZPRESENT_DEFAULT_BUTTONwhere_am_i_basicZWHERE_AM_I_BASICwhere_am_i_detailedZWHERE_AM_I_DETAILEDpresent_linkZWHERE_AM_I_LINKpresent_selectionZWHERE_AM_I_SELECTIONr   r$   r%   r&   r'      & r   r/   Z!WhereAmIPresenter._setup_handlersi   s     ))11--/ 	23 ))..224 	67 ))""&&( 	() ))''++- 	,- ))++//1 	/0 ))%%))+ 	-. ))((,,. 	01 ))!!((* 	,- ))&&--/ 	12
 7E,,c48r   c               r   r   r   r   r   r   r   r      s     I9 I9 I9r   c           	     s@   \         P                  ! 4       V n        V P                  P                  \         P                  ! R\         P
                  \         P                  V P                  R,          4      4       V P                  P                  \         P                  ! R\         P
                  \         P                  V P                  R,          4      4       V P                  P                  \         P                  ! R\         P
                  \         P                  V P                  R,          4      4       V P                  P                  \         P                  ! R\         P
                  \         P                  V P                  R,          ^4      4       V P                  P                  \         P                  ! R\         P
                  \         P                  V P                  R	,          ^4      4       V P                  P                  \         P                  ! R\         P
                  \         P                  V P                  R
,          ^4      4       V P                  P                  \         P                  ! R\         P
                  \         P                  V P                  R,          ^4      4       V P                  P                  \         P                  ! R\         P
                  \         P                  V P                  R,          4      4       V P                  P                  \         P                  ! R\         P
                  \         P                  V P                  R,          4      4       Rp\        P                  ! \        P                  VR4       R# )z6Sets up the where-am-i-presenter desktop key bindings.fr3   er7    r4   ZKP_Enterr5   r6   r8   r9   r:   Upr;   z.WHERE AM I PRESENTER: Desktop bindings set up.TN)r   r!   r"   add
KeyBindingDEFAULT_MODIFIER_MASKORCA_MODIFIER_MASKr    NO_MODIFIER_MASKORCA_SHIFT_MODIFIER_MASKr   r$   r%   rD   rE   r   r0   Z)WhereAmIPresenter._setup_desktop_bindings   s    "-!8!8!:""""11..:;	=	> 	""""11..78	:	; 	""""11,,>?	A	B 	""""11..01	 	""""11..45	 	""""11,,56	 	""""11,,89	 	""""11,,45	7	8 	""""11449:	<	= ?E,,c48r   c               r   r   r   r   r   r   r   r      s     I9 I9 I9r   c           	     s@   \         P                  ! 4       V n        V P                  P                  \         P                  ! R\         P
                  \         P                  V P                  R,          4      4       V P                  P                  \         P                  ! R\         P
                  \         P                  V P                  R,          4      4       V P                  P                  \         P                  ! R\         P
                  \         P                  V P                  R,          4      4       V P                  P                  \         P                  ! R\         P
                  \         P                  V P                  R,          ^4      4       V P                  P                  \         P                  ! R\         P
                  \         P                  V P                  R	,          ^4      4       V P                  P                  \         P                  ! R
\         P
                  \         P                  V P                  R,          ^4      4       V P                  P                  \         P                  ! R
\         P
                  \         P                  V P                  R,          ^4      4       V P                  P                  \         P                  ! R\         P
                  \         P                  V P                  R,          4      4       V P                  P                  \         P                  ! R\         P
                  \         P                  V P                  R,          4      4       Rp\        P                  ! \        P                  VR4       R# )z5Sets up the where-am-i-presenter laptop key bindings.rF   r3   rG   r7   rH   r4   Zslashr5   r6   ZReturnr8   r9   r:   rI   r;   z-WHERE AM I PRESENTER: Laptop bindings set up.TN)r   r!   r#   rJ   rK   rL   rM   r    rN   rO   r   r$   r%   rD   rE   r   r1   Z(WhereAmIPresenter._setup_laptop_bindings   s    !, 7 7 9!!""11..:;	=	> 	!!""11..78	:	; 	!!""11,,>?	A	B 	!!""11..01	 	!!""11..45	 	!!""11..56	 	!!""11..89	 	!!""11,,45	7	8 	!!""11449:	<	= >E,,c48r   c                	sB   Vf   R# VR8X  d(   VR8X  g   \        V4      R8  d   \        P                  # VP                  R4      '       g   VR8X  d   \        P                  # \
        P                  ! V4      pVP                  4       pVP                  V4      pV RV 2# )NrH   ZweightZboldi  Zspellingz: )	Zintr	   ZBOLDZendswithZ
MISSPELLEDr   from_stringZget_localized_nameZget_localized_value)r&   keyvalueZax_text_attributeZlocalized_keyZlocalized_values   &&&   r   _localize_text_attributeZ*WhereAmIPresenter._localize_text_attribute4  s    =(?3u:3C== <<
##u
':&&&+77<)<<>+??F?"344r   Nc               (    V ^8  d   QhRRRRRRRR/# r   scriptdefault.Scripteventinput_event.InputEvent | Nonenotify_userr+   r   r   r   r   r   r   r   D  s2       - 	
 
r   c                s   RVRVRV.p\         P                  ! \         P                  VR4       \        P                  ! 4       P                  4       p\        P                  ! V4      ^ ,          p\        \        R\        \        P                  \        P                  ! 4       P                  R4      4      4      4      pV'       g   \        P                  ! 4       pV F]  pVP!                  4       p	VP#                  V	4      p
VP%                  V
4      '       d   K=  VP'                  V P)                  W4      4       K_  	  R# )zCPresents the font and formatting details for the current character.z;WHERE AM I PRESENTER: present_character_attributes. Script:Event:notify_user:TNZtextAttributesToSpeak)r   print_tokensr%   r   get_managerget_locus_of_focusr   Zget_text_attributes_at_offsetZlistZfiltermapr   rP   r
   Zget_settingZ!get_all_supported_text_attributesZget_attribute_nameZgetZvalue_is_defaultspeak_messagerS   )r&   rV   rX   rZ   tokensZfocusZattrsZ	attr_listZax_text_attrrQ   rR   s   &&&&       r   r<   Z.WhereAmIPresenter.present_character_attributesC  s    PQWE>;@5++VT:))+>>@44U;A> c''((*667NO'Q R S	 @@BI%L113CIIcNE0077$$T%B%B3%NO	 & r   c               rT   rU   r   r   r   r   r   r   d  2       - 	
 
r   c                s(   RVRVRV.p\         P                  ! \         P                  VR4       VP                  4       P	                  4       '       d!   VP                  4       P                  W4      pM#\        P                  ! 4       P                  4       p\        P                  ! V4      p\        P                  ! V4      '       d4   \        P                  p\        P                  pVP                  Wx4       R# \        P                   VP"                  VP$                  VP&                  VP(                  3,          p\        P*                  VP"                  VP$                  VP&                  VP(                  3,          pVP                  Wx4       R# )z5Presents the size and position of the current object.z8WHERE AM I PRESENTER: present_size_and_position. Script:r[   r\   T)r   r]   r%   Zget_flat_review_presenter	is_activeZget_current_objectr   r^   r_   r   Zget_rectZis_empty_rectr	   LOCATION_NOT_FOUND_FULLZLOCATION_NOT_FOUND_BRIEFpresent_messageZSIZE_AND_POSITION_FULLZwidthZheightxZyZSIZE_AND_POSITION_BRIEF)	r&   rV   rX   rZ   rb   objZrectfullbrief	   &&&&     r   r=   Z+WhereAmIPresenter.present_size_and_positionc  s,    MfE>;@5++VT:++-7799224GGVC++-@@BC##C($$T**33D55E""4/..$**dkk466SWSYSY1ZZ00DJJTVVUYU[U[3\\t+r   c               rT   rU   r   r   r   r   r   r     s2       - 	
 
r   c                s   RVRVRV.p\         P                  ! \         P                  VR4       \        P                  ! 4       P                  4       p\        P                  ! V4      '       d$   \        P                  ! 4       P                  4       pVe   \        P                  ! V4      '       d"   VP                  \        P                  4       R# VP                  P                  V4      pV F  w  rxVP                  WxR7       K  	  R# )z)Presents the title of the current window.z,WHERE AM I PRESENTER: present_title. Script:r[   r\   T)voice)r   r]   r%   r   r^   r_   r   is_deadget_active_windowrf   r	   re   Zspeech_generatorZgenerate_window_title)	r&   rV   rX   rZ   rb   rh   Ztitlestringrl   rk   r   r>   ZWhereAmIPresenter.present_title  s     A&E>;@5++VT:'')<<>C  ++-??AC;(**3//""8#C#CD''==cB$OV""6"7  %r   c          
     s,    V ^8  d   QhRRRRRRRRR	R/# )
r   rV   rW   rX   rY   dialogAtspi.Accessible | NonerZ   r+   r   r   r   r   r   r   r     s<     ! !! -! (	!
 ! 
!r   c                s   RVRVRV.p\         P                  ! \         P                  VR4       \        P                  ! 4       P                  4       pVf   VP                  P                  V4      w  rsVf*   V'       d    VP                  \        P                  4       R# \        P                  ! V4      pVf*   V'       d    VP                  \        P                  4       R# \        P                  ! V4      p	\        P                   ! V4      '       g)   VP                  \        P"                  V	,          4       R# VP                  \        P$                  V	,          4       R# )z2Presents the default button of the current dialog.z5WHERE AM I PRESENTER: present_default_button. Script:r[   r\   T)r   r]   r%   r   r^   r_   	utilitiesframe_and_dialogrf   r	   ZDIALOG_NOT_IN_Ar   Zget_default_buttonZDEFAULT_BUTTON_NOT_FOUNDr   get_nameZis_sensitiveZDEFAULT_BUTTON_IS_GRAYEDZDEFAULT_BUTTON_IS)
r&   rV   rX   rp   rZ   rb   rh   Z_frameZbuttonZnames
   &&&&&     r   r7   Z(WhereAmIPresenter.present_default_button  s    J6E>;@5++VT:'')<<>>#-->>sCNF>&&x'?'?@//7>&&x'H'HI  (''//""8#D#Dt#KLx99D@Ar   c               rT   rU   r   r   r   r   r   r     rc   r   c                s   RVRVRV.p\         P                  ! \         P                  VR4       \        P                  ! 4       P                  4       pVP                  P                  V4      w  rgV'       d   \        P                  ! V4      pV'       d   VP                  VRR7       M1\        P                  p	\        P                  p
VP                  W4       \        P                  ! V4      pV'       dM   \        P                   ! V4      '       d1   \        P"                  ! V4      '       d   VP                  WRJ R7       R# )z;Presents the status bar and info bar of the current window.z1WHERE AM I PRESENTER: present_status_bar. Script:r[   r\   T)Z	interruptN)r   r]   r%   r   r^   r_   rr   rs   r   Zget_status_barpresent_objectr	   ZSTATUS_BAR_NOT_FOUND_FULLZSTATUS_BAR_NOT_FOUND_BRIEFrf   Zget_info_barZ
is_showingZ
is_visible)r&   rV   rX   rZ   rb   rh   ZframeZ_dialogZ	statusbarri   rj   Zinfobar   &&&&        r   r?   Z$WhereAmIPresenter.present_status_bar  s     FvE>;@5++VT:'')<<>))::3?#2259I%%i4%@99 ;;&&t3!..u5G;11'::{?U?UV]?^?^%%gd9J%Kr   c               rT   rU   r   r   r   r   r   r     s2     7 77 -7 	7
 
7r   c                s^   RVRVRV.p\         P                  ! \         P                  VR4       \        P                  ! 4       P                  4       pVP                  P                  V4      '       g*   V'       d    VP                  \        P                  4       R# V P                  VRV4      # )z(Presents details about the current link.z+WHERE AM I PRESENTER: present_link. Script:r[   r\   T)r   r]   r%   r   r^   r_   rr   is_linkrf   r	   ZNOT_ON_A_LINK_do_where_am_i)r&   rV   rX   rZ   rb   Zlinks   &&&&  r   rB   ZWhereAmIPresenter.present_link  s     @E>;@5++VT:((*==?''--&&x'='=>""6466r   c               s$    V ^8  d   QhRRRRRR/# )r   rV   rW   rh   Atspi.Accessibler   Zstrr   r   r   r   r   r     s#      ^ BR WZ r   c                s>   \         P                  ! V4      ^ ,          pVP                  P                  V4      '       d   V# VP                  P	                  V4      pV'       dK   \         P                  ! V4      ^ ,          pV'       g   M$V RV 2pVP                  P	                  V4      pKR  VP                  P                  V4      pV'       dM   \         P                  ! V4      ^ ,          pV'       g    V# V RV 2pVP                  P                  V4      pKT  V# )z@Returns the selected text of obj plus any adjacent text objects. )r   Zget_selected_textrr   Zis_spreadsheet_cellZfind_previous_objectZfind_next_object)r&   rV   rh   ro   Zprev_objZ	selectionZnext_objs   &&&    r   _get_all_selected_textZ(WhereAmIPresenter._get_all_selected_text  s     ))#.q1//44M##88=00:1=I!{!F8,F''<<XFH##44S900:1=I  xq,F''88BHr   c               rT   rU   r   r   r   r   r   r     rc   r   c                s2   RVRVRV.p\         P                  ! \         P                  VR4       \        P                  ! 4       P                  4       pVf"   VP                  \        P                  4       R# V P                  W4      pV'       g"   VP                  \        P                  4       R# \        P                  ! 4       pVP                  VRR7      pVP                  WV4      p\        P                  V RV 2,          p	VP                  V	4       R# )zPresents the selected text.z4WHERE AM I PRESENTER: present_selected_text. Script:r[   r\   TF)Zonly_if_changedrz   )r   r]   r%   r   r^   r_   ra   r	   re   r{   ZNO_SELECTED_TEXTr   Zget_indentation_descriptionZadjust_for_presentationZSELECTED_TEXT_IS)
r&   rV   rX   rZ   rb   rh   ZtextZmanagerZindentationr'   s
   &&&&      r   present_selected_textZ'WhereAmIPresenter.present_selected_text  s     I&E>;@5++VT:'')<<>;  !A!AB**67  !:!:;.::<99$PU9V..s9''[M4&*AAS!r   c               rT   rU   r   r   r   r   r   r   *  s2     ( (( -( 	(
 
(r   c                sT   RVRVRV.p\         P                  ! \         P                  VR4       \        P                  ! 4       P                  4       pVfC   VP                  P                  V4      '       g    VP                  \        P                  4       R# RV.p\         P                  ! \         P                  VR4       \        P                  ! WQP                  P                  4      pVe$   VP                  P                  V4      '       d   R# VP                  P                  V4      pVf=   RV.p\         P                  ! \         P                  VR4       V P!                  WV4      # VP                  P#                  V4      pVP                  P%                  V4      p	VP'                  \        P(                  ! W4      4       V'       g   R# VP                  P+                  V4      p
RP-                  \/        \        P0                  V
4      4      pVP                  V4       R# )z/Presents the selected text or selected objects.z0WHERE AM I PRESENTER: present_selection. Script:r[   r\   Tz.WHERE AM I PRESENTER: presenting selection forz7WHERE AM I PRESENTER: Selection container not found forZ,)r   r]   r%   r   r^   r_   rr   rw   ra   r	   re   r   find_ancestorZis_spreadsheet_tableZspeak_selected_cell_rangeZget_selection_containerr|   Zselected_child_countZselectable_child_countrf   Zselected_items_countZselected_childrenZjoinr`   rt   )r&   rV   rX   rZ   rb   rh   ZspreadsheetZ	containerZselected_countZchild_countZselected_itemsZ
item_namesrv   r   rC   Z#WhereAmIPresenter.present_selection)  s    EfE>;@5++VT:'')<<>;##++C00$$X%E%EFBCH5++VT:,,S2B2B2W2WX"v'7'7'Q'QR]'^'^$$<<SA	OQTUFu//>--fSAA))>>yI&&==iHx<<^YZ));;IFXXc("3"3^DE
Z(r   c          
     s,    V ^8  d   QhRRRRRRRRRR/# )	r   rV   rW   
basic_onlyr+   rh   rq   rZ   r   r   r   r   r   r   r   T  s<     2 22 2 %	2
 2 
2r   c           
     sj   VP                   '       dA   VP                   P                  4       '       d!   VP                   P                  V'       * 4       Vf$   \        P                  ! 4       P                  4       p\        P                  ! V4      '       d$   \        P                  ! 4       P                  4       pVe   \        P                  ! V4      '       d*   V'       d    VP                  \        P                  4       R# V'       d   RpMRpR R lpVP                  V! V4      RVRRRRR7       R# )zCPresents details about the current location at the specified level.TZbasicWhereAmIZdetailedWhereAmIc               s     V ^8  d   QhRRRR/# )r   accry   r   r   r   r   r   r   Z6WhereAmIPresenter._do_where_am_i.<locals>.__annotate__o  s     	 	- 	2B 	r   c                s    \         P                  ! V 4      '       d   V # R  p\        P                  ! W4      pVe3   \         P                  ! \        P
                  ! V4      4      '       g   Tp V # )c                sj    \         P                  ! V 4      ;'       g    \         P                  ! V 4      # )N)r   Zis_table_cell_or_headerZis_list_item)rg   r2   r   predZCWhereAmIPresenter._do_where_am_i.<locals>.real_object.<locals>.preds  s'    "::1=\\AYAYZ[A\\r   )r   Z
is_focusedr   r}   Zis_layout_onlyZ
get_parent)r   r   Zancestorr(   r   real_objectZ5WhereAmIPresenter._do_where_am_i.<locals>.real_objecto  s\    %%c**
]  --c8H#!001D1DX1NOOJr   )ZalreadyFocusedZ
formatTypeZforceMnemonicZ	forceListZforceTutorialZ
speechOnly)Z
spellcheckrd   Zpresent_error_detailsr   r^   r_   r   rm   rn   rf   r	   re   ru   )r&   rV   r~   rh   rZ   Zformat_typer   s   &&&&&  r   rx   Z WhereAmIPresenter._do_where_am_iT  s     !2!2!<!<!>!>33
NC;++-@@BCC  ++-??AC;(**3//&&x'G'GH)K,K	 	" 	 	 r   c               rT   rU   r   r   r   r   r   r     s8     D DD -D 	D
 
Dr   c                s    RVRVRV.p\         P                  ! \         P                  VR4       V P                  WR7      # )z6Presents basic information about the current location.z/WHERE AM I PRESENTER: where_am_i_basic. Script:r[   r\   TrZ   )r   r]   r%   rx   r&   rV   rX   rZ   rb      &&&& r   r@   Z"WhereAmIPresenter.where_am_i_basic  sG     DVE>;@5++VT:""6"CCr   c               rT   rU   r   r   r   r   r   r     s8     K KK -K 	K
 
Kr   c                s    RVRVRV.p\         P                  ! \         P                  VR4       VP                  4        V P	                  VRVR7      # )z9Presents detailed information about the current location.z2WHERE AM I PRESENTER: where_am_i_detailed. Script:r[   r\   TFr   )r   r]   r%   Zinterrupt_presentationrx   r   r   r   rA   Z%WhereAmIPresenter.where_am_i_detailed  sY     GE>;@5++VT: 	%%'""65k"JJr   )r"   r    r#   )FT)F)NT)NNT)TNT)Z__name__Z
__module__Z__qualname__Z__firstlineno____doc__r)   r.   r   r-   r/   r0   r1   rS   r   Zcommandr<   r=   r>   r7   r?   rB   r{   r|   rC   rx   r@   rA   Z__static_attributes__r   r   r   r   r   8   sH   GH%(&39jI9VI9V5  >  :  2 ! !F  : 7 7(2  : ( (T2h D D K Kr   r   c               r   )r   r   r   r   r   r   r   r   r     s      ( r   c                 s    \         # )z Returns the Where Am I Presenter)
_presenterr   r   r   get_presenterr     s
     r   )&r   Z
__future__r   Z__id__Z__version__Z__date__Z__copyright__Z__license__Ztypingr   rH   r   r   r   r   r   r   r	   r
   r   Zax_componentr   Z	ax_objectr   Zax_textr   r   Zax_utilitiesr   ZgiZrequire_versionZgi.repositoryr   Zscriptsr   r   r   r   r   r   r   <module>r      s   * D #7           * %  , %w&# p	K p	Kd  
r   