+
    Qi^t c                   s    R t RtRtRtRtRt^ RIt]P                  ! RR4       ^ R	IH	t	 ^R
I
Ht ^RI
Ht ^RIHt ^RIHt  ! R R4      tR# )1Utilities for obtaining role-related information.z$Id$z
$Revision$z$Date$zCopyright (c) 2023 Igalia, S.L.ZLGPLNAtspiz2.0)r   )debug)object_properties)AXObject)AXUtilitiesStatec                   s6&  a  ] tR t^-t o Rt]V 3R lR l4       t]V 3R lR l4       t]V 3R lR l4       t]ER&V 3R	 lR
 ll4       t	]ER'V 3R lR ll4       t
]V 3R lR l4       t]V 3R lR l4       t]V 3R lR l4       t]V 3R lR l4       t]V 3R lR l4       t]V 3R lR l4       t]V 3R lR l4       t]V 3R lR l4       t]ER'V 3R lR ll4       t]V 3R lR  l4       t]ER(V 3R! lR" ll4       t]V 3R# lR$ l4       t]V 3R% lR& l4       t]V 3R' lR( l4       t]ER&V 3R) lR* ll4       t]V 3R+ lR, l4       t]V 3R- lR. l4       t]ER&V 3R/ lR0 ll4       t]ER&V 3R1 lR2 ll4       t]ER&V 3R3 lR4 ll4       t]ER&V 3R5 lR6 ll4       t]ER&V 3R7 lR8 ll4       t ]ER&V 3R9 lR: ll4       t!]ER&V 3R; lR< ll4       t"]ER&V 3R= lR> ll4       t#]ER&V 3R? lR@ ll4       t$]ER&V 3RA lRB ll4       t%]ER&V 3RC lRD ll4       t&]ER&V 3RE lRF ll4       t']ER&V 3RG lRH ll4       t(]ER&V 3RI lRJ ll4       t)]ER&V 3RK lRL ll4       t*]ER&V 3RM lRN ll4       t+]ER&V 3RO lRP ll4       t,]ER&V 3RQ lRR ll4       t-]ER&V 3RS lRT ll4       t.]ER&V 3RU lRV ll4       t/]ER&V 3RW lRX ll4       t0]ER&V 3RY lRZ ll4       t1]ER&V 3R[ lR\ ll4       t2]ER&V 3R] lR^ ll4       t3]ER&V 3R_ lR` ll4       t4]ER&V 3Ra lRb ll4       t5]ER&V 3Rc lRd ll4       t6]ER&V 3Re lRf ll4       t7]ER&V 3Rg lRh ll4       t8]ER&V 3Ri lRj ll4       t9]ER&V 3Rk lRl ll4       t:]ER&V 3Rm lRn ll4       t;]ER&V 3Ro lRp ll4       t<]ER&V 3Rq lRr ll4       t=]ER&V 3Rs lRt ll4       t>]ER&V 3Ru lRv ll4       t?]ER&V 3Rw lRx ll4       t@]ER&V 3Ry lRz ll4       tA]ER&V 3R{ lR| ll4       tB]ER&V 3R} lR~ ll4       tC]ER&V 3R lR ll4       tD]ER&V 3R lR ll4       tE]ER&V 3R lR ll4       tF]ER&V 3R lR ll4       tG]ER&V 3R lR ll4       tH]ER&V 3R lR ll4       tI]ER&V 3R lR ll4       tJ]ER&V 3R lR ll4       tK]ER&V 3R lR ll4       tL]ER&V 3R lR ll4       tM]ER&V 3R lR ll4       tN]ER&V 3R lR ll4       tO]ER&V 3R lR ll4       tP]ER&V 3R lR ll4       tQ]ER&V 3R lR ll4       tR]ER&V 3R lR ll4       tS]ER&V 3R lR ll4       tT]ER&V 3R lR ll4       tU]ER&V 3R lR ll4       tV]ER&V 3R lR ll4       tW]ER&V 3R lR ll4       tX]ER&V 3R lR ll4       tY]ER&V 3R lR ll4       tZ]ER&V 3R lR ll4       t[]ER&V 3R lR ll4       t\]ER&V 3R lR ll4       t]]ER&V 3R lR ll4       t^]ER&V 3R lR ll4       t_]ER&V 3R lR ll4       t`]ER&V 3R lR ll4       ta]ER&V 3R lR ll4       tb]ER&V 3R lR ll4       tc]ER&V 3R lR ll4       td]ER&V 3R lR ll4       te]ER&V 3R lR ll4       tf]ER&V 3R lR ll4       tg]ER&V 3R lR ll4       th]ER&V 3R lR ll4       ti]ER&V 3R lR ll4       tj]ER&V 3R lR ll4       tk]ER&V 3R lR ll4       tl]ER&V 3R lR ll4       tm]ER&V 3R lR ll4       tn]ER&V 3R lR ll4       to]ER&V 3R lR ll4       tp]ER&V 3R lR ll4       tq]ER&V 3R lR ll4       tr]ER&V 3R lR ll4       ts]ER&V 3R lR ll4       tt]ER&V 3R lR ll4       tu]ER&V 3R lR ll4       tv]ER&V 3R lR ll4       tw]ER&V 3R lR ll4       tx]ER&V 3R lR ll4       ty]ER&V 3R lR ll4       tz]ER&V 3R lR ll4       t{]ER&V 3R lR ll4       t|]ER&V 3R lR ll4       t}]ER&V 3R lR ll4       t~]ER&V 3R lR ll4       t]ER&V 3R lR ll4       t]ER&V 3R lR ll4       t]ER&V 3R lR ll4       t]ER&V 3R lR ll4       t]ER&V 3R lER  ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER	 lER
 ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER  ll4       t]ER&V 3ER! lER" ll4       t]ER&V 3ER# lER$ ll4       t]ER&V 3ER% lER& ll4       t]ER&V 3ER' lER( ll4       t]ER&V 3ER) lER* ll4       t]ER&V 3ER+ lER, ll4       t]ER&V 3ER- lER. ll4       t]ER&V 3ER/ lER0 ll4       t]ER&V 3ER1 lER2 ll4       t]ER&V 3ER3 lER4 ll4       t]ER&V 3ER5 lER6 ll4       t]ER&V 3ER7 lER8 ll4       t]ER&V 3ER9 lER: ll4       t]ER&V 3ER; lER< ll4       t]ER&V 3ER= lER> ll4       t]ER&V 3ER? lER@ ll4       t]ER&V 3ERA lERB ll4       t]ER&V 3ERC lERD ll4       t]ER&V 3ERE lERF ll4       t]ER&V 3ERG lERH ll4       t]ER&V 3ERI lERJ ll4       t]ER&V 3ERK lERL ll4       t]ER&V 3ERM lERN ll4       t]ER&V 3ERO lERP ll4       t]ER&V 3ERQ lERR ll4       t]ER&V 3ERS lERT ll4       t]ER&V 3ERU lERV ll4       t]ER&V 3ERW lERX ll4       t]V 3ERY lERZ l4       t]V 3ER[ lER\ l4       t]ER&V 3ER] lER^ ll4       t]ER&V 3ER_ lER` ll4       t]V 3ERa lERb l4       t]V 3ERc lERd l4       t]ER&V 3ERe lERf ll4       t]ER&V 3ERg lERh ll4       t]V 3ERi lERj l4       t]V 3ERk lERl l4       t]V 3ERm lERn l4       t]V 3ERo lERp l4       t]V 3ERq lERr l4       t]V 3ERs lERt l4       t]ER&V 3ERu lERv ll4       t]ER&V 3ERw lERx ll4       t]ER&V 3ERy lERz ll4       t]ER&V 3ER{ lER| ll4       t]ER&V 3ER} lER~ ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]V 3ER lER l4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER)V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       t]ER&V 3ER lER ll4       Et ]ER&V 3ER lER ll4       Et]ER&V 3ER lER ll4       Et]ER&V 3ER lER ll4       Et]ER&V 3ER lER  ll4       Et]ER&V 3ER lER ll4       Et]ER&V 3ER lER ll4       Et]ER&V 3ER lER ll4       Et]ER&V 3ER lER ll4       Et]ER&V 3ER	 lER
 ll4       Et	]ER&V 3ER lER ll4       Et
]ER&V 3ER lER ll4       Et]ER&V 3ER lER ll4       Et]ER&V 3ER lER ll4       Et]ER&V 3ER lER ll4       Et]ER&V 3ER lER ll4       Et]ER&V 3ER lER ll4       Et]ER&V 3ER lER ll4       Et]ER'V 3ER lER ll4       Et]V 3ER lER l4       Et]ER&V 3ER lER  ll4       Et]ER&V 3ER! lER" ll4       Et]ER&V 3ER# lER$ ll4       EtER%EtV EtR# (*  AXUtilitiesRoler    c                :   < V ^8  d   QhRS[ P                  RS[/#    objreturnr   
AccessiblestrZformat__classdict__   ";/usr/lib/python3.14/site-packages/orca/ax_utilities_role.py__annotate__AXUtilitiesRole.__annotate__1   s!     ( ( 0 0 (S (    c                sR    \         P                  ! V 4      pVP                  R R4      # )Zdisplay r   get_attributes_dictgetr
   attrs   & r   _get_display_styleZ"AXUtilitiesRole._get_display_style0   s#    ,,S1yyB''r   c                sH   < V ^8  d   QhRS[ P                  RS[R,          /# )r	   r
   r   Nr   r   r   r   r   r   6   s%        e&&  3:  r   c                sP    \         P                  ! V 4      pVP                  R 4      # )tagr   r   r   r   _get_tagZAXUtilitiesRole._get_tag5   s!    ,,S1yyr   c                sJ   < V ^8  d   QhRS[ P                  RS[S[,          /# r   )r   r   listr   r   r   r   r   r   ;   s%     2 2E,, 2c 2r   c                sn    \         P                  ! V 4      pVP                  R R4      P                  4       # )z	xml-rolesr   )r   r   r   Zsplitr   r   r   _get_xml_rolesZAXUtilitiesRole._get_xml_roles:   s,    ,,S1yyb)//11r   Nc                b   < V ^8  d   QhRS[ P                  RS[ P                  R,          RS[/# r	   r
   roleNr   r   r   Roleboolr   r   r   r   r   @   s6     ( ((jj4( 
(r   c                s   \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P
                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  .p VP                  \         P                  P                   4       Vf   \$        P&                  ! V 4      pW9   g   \(        P+                  W4      '       d.   RV R.p\,        P.                  ! \,        P0                  VR4       R# R#   \"         d     Lwi ; i)zHReturns True if the descendants of obj should be ignored. See ARIA spec.zAXUtilitiesRole:zhas presentational children.TF)r   r&   	CHECK_BOXCHECK_MENU_ITEMIMAGE	LEVEL_BARPAGE_TABPROGRESS_BARPUSH_BUTTONRADIO_BUTTONRADIO_MENU_ITEM
SCROLL_BAR	SEPARATORSLIDERTOGGLE_BUTTONappendSWITCHAttributeErrorr   get_roler   	is_switchr   print_tokens
LEVEL_INFO)r
   r$   rolestokens   &&  r   children_are_presentationalZ+AXUtilitiesRole.children_are_presentational?   s<    JJ  JJ&&JJJJ  JJJJ##JJ""JJ##JJ&&JJ!!JJ  JJJJ$$
"	LL**+ <$$S)D =O55c@@(#/MNFu//>  		s   	)G G*)G*c                J   < V ^8  d   QhRS[ RS[S[P                  ,          /# )r	   include_alert_as_dialogr   r'   r    r   r&   r   r   r   r   r   k   s$      $ $uzzBR r   c                s   \         P                  P                  \         P                  P                  \         P                  P                  .pV '       d*   VP                  \         P                  P                  4       V# z/Returns the list of roles we consider documents)r   r&   COLOR_CHOOSERDIALOGFILE_CHOOSERr5   ALERT)rA   r<   r   r   get_dialog_rolesZ AXUtilitiesRole.get_dialog_rolesj   sR     ))""((* #LL))*r   c                D   < V ^8  d   QhRS[ S[P                  ,          /# r	   r   r    r   r&   r   r   r   r   r   v   s     	 	UZZ 0 	r   c                 6   \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P
                  \         P                  P                  \         P                  P                  .p V # rC   )r   r&   DOCUMENT_EMAILDOCUMENT_FRAMEDOCUMENT_PRESENTATIONDOCUMENT_SPREADSHEETDOCUMENT_TEXTDOCUMENT_WEBr<       r   get_document_rolesZ"AXUtilitiesRole.get_document_rolesu   s`     ****1100))((* r   c                rI   rJ   rK   r   r   r   r   r      s      $uzz"2 r   c                 s0   \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P
                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  .p V # )z1Returns the list of roles we consider form fields)r   r&   r(   r/   	COMBO_BOXrN   TEXTLIST_BOXENTRYPASSWORD_TEXTr.   SPIN_BUTTONr4   rS   rT   r   get_form_field_rolesZ$AXUtilitiesRole.get_form_field_roles   s     %%((%%**$$!!))''''))
+ r   c                rI   rJ   rK   r   r   r   r   r      s      tEJJ'7 r   c                 s*   \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P
                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                   \         P                  P"                  .p V # )z8Returns the list of roles we consider a large container.)r   r&   ARTICLEBLOCK_QUOTEDESCRIPTION_LISTFORMFOOTERGROUPINGHEADERHTML_CONTAINERLANDMARKLOGLISTMARQUEEPANELTABLETREE
TREE_TABLErS   rT   r   get_large_container_rolesZ)AXUtilitiesRole.get_large_container_roles   s     ##'',,""$$""**$$##!!!!&&(" r   c                rI   rJ   rK   r   r   r   r   r      s     	 	4

#3 	r   c                 rL   )z9Returns the list of roles we consider are for layout only)r   r&   AUTOCOMPLETEFILLERREDUNDANT_OBJECTUNKNOWNSCROLL_PANETEAROFF_MENU_ITEMrS   rT   r   get_layout_only_rolesZ%AXUtilitiesRole.get_layout_only_roles   s`     (("",,##''--/ r   c                rI   rJ   rK   r   r   r   r   r      s      ejj!1 r   c                     \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P
                  .p V # )z0Returns the list of roles we consider menu items)r   r&   	MENU_ITEMr)   r0   rs   rS   rT   r   get_menu_item_rolesZ#AXUtilitiesRole.get_menu_item_roles   sF     %%++++--/ r   c                rI   rJ   rK   r   r   r   r   r      s     
 
D$4 
r   c                 sh   \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P
                  \         P                  P                  \         P                  P                  \         P                  P                  .p V # )z2Returns the list of roles we consider menu related)	r   r&   MENUMENU_BAR
POPUP_MENUrv   r)   r0   rs   rS   rT   r   get_menu_related_rolesZ&AXUtilitiesRole.get_menu_related_roles   sk     $$&&%%++++--/ r   c                rI   rJ   rK   r   r   r   r   r      s      tEJJ7G r   c                 s\   \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P
                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                   \         P                  P"                  \         P                  P$                  .p V # )zHReturns the list of roles we want to exclude from the list of clickables)r   r&   rV   rY   rX   rx   rv   r)   r0   r,   PAGE_TAB_LISTrZ   r-   r3   r[   TOOL_BAR	TREE_ITEMrl   rk   rS   rT   r   )get_roles_to_exclude_from_clickables_listZ9AXUtilitiesRole.get_roles_to_exclude_from_clickables_list   s     %%!!$$%%++++$$))))((""''$$%%&&!"" r   c                rI   rJ   rK   r   r   r   r   r      s     	 	T%**%5 	r   c                 rL   )z5Returns the list of roles we consider a set container)r   r&   rg   rx   r|   rj   rk   rl   rS   rT   r   get_set_container_rolesZ'AXUtilitiesRole.get_set_container_roles   sZ     ))!!&&( r   c                r@   )r	   include_headersr   rB   r   r   r   r   r      s$     	 	d 	d5::>N 	r   c                s6   \         P                  P                  .pV '       dv   VP                  \         P                  P                  \         P                  P
                  \         P                  P                  \         P                  P                  .4       V# )z1Returns the list of roles we consider table cells)r   r&   
TABLE_CELLextendTABLE_COLUMN_HEADERTABLE_ROW_HEADERCOLUMN_HEADER
ROW_HEADER)r   r<   r   r   get_table_cell_rolesZ$AXUtilitiesRole.get_table_cell_roles   sd     &&'LL%**88**55**22**//1 2 r   c                rI   rJ   rK   r   r   r   r   r      s      D$4 r   c                 ru   )z3Returns the list of roles we consider table headers)r   r&   r   r   r   r   rS   rT   r   get_table_header_rolesZ&AXUtilitiesRole.get_table_header_roles   sF     //,,))&&( r   c                r@   )r	   include_captionr   rB   r   r   r   r   r   	  s$       $uzzBR r   c                s   \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P
                  \         P                  P                  \         P                  P                  .pV '       d*   VP                  \         P                  P                  4       V# )z3Returns the list of roles we consider table related)
r   r&   rj   r   r   r   r   r   r5   CAPTION)r   r<   r   r   get_table_related_rolesZ'AXUtilitiesRole.get_table_related_roles  sy     !!&&//,,))&&( LL++,r   c                rI   rJ   rK   r   r   r   r   r     s      tEJJ/ r   c                 ru   )zBReturns the list of roles we consider UI that displays static text)r   r&   INFO_BARLABELr,   
STATUS_BARrS   rT   r   get_text_ui_rolesZ!AXUtilitiesRole.get_text_ui_roles  sF     $$!!$$&&( r   c                rI   rJ   rK   r   r   r   r   r   !  s      D$4 r   c                 s    \         P                  P                  \         P                  P                  \         P                  P                  .p V # )z2Returns the list of roles we consider tree related)r   r&   rk   r~   rl   rS   rT   r   get_tree_related_rolesZ&AXUtilitiesRole.get_tree_related_roles   s7     %%&&( r   c                rI   rJ   rK   r   r   r   r   r   *  s      d5::. r   c                 s   \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P
                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  \         P                  P                  .p  V P                  \         P                  P                  4       V #   \         d     T # i ; i)z-Returns the list of roles we consider widgets)r   r&   r(   rV   rY   rX   rZ   r.   r/   r3   r[   rW   r4   r5   r6   r7   rS   rT   r   get_widget_rolesZ AXUtilitiesRole.get_widget_roles)  s     %%%%!!$$))''((""''))
+	LL**+   		s   )E EEc                r"   r#   )r   r   r&   r   r   r   r   r   r   B  s7     E3 E3U%5%5 E3UZZ$=N E3Z] E3r   c                s   Vf   \         P                  ! V 4      p\         P                  ! V 4      '       Ed   \        P	                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                   # \        P#                  W4      '       d   \         P$                  ! V \&        P(                  P*                  4      '       d   \
        P                   # \         P$                  ! V \&        P(                  P,                  4      '       d   \
        P                  # \        P/                  W4      '       d   \
        P0                  # \        P3                  W4      '       d   \
        P4                  # \        P7                  W4      '       d   \
        P8                  # \        P;                  W4      '       d   \
        P<                  # \        P?                  V 4      '       Ed   \        PA                  W4      '       Ed4   \        PC                  W4      '       d   \
        PD                  # \        PG                  W4      '       d   \
        PH                  # \        PK                  W4      '       d   \
        PL                  # \        PO                  W4      '       d   \
        PP                  # \        PS                  W4      '       d   \
        PT                  # \        PW                  W4      '       d   \
        PX                  # \        P[                  W4      '       d   \
        P\                  # \        P_                  W4      '       d   \
        P`                  # \        Pc                  W4      '       d   \
        Pd                  # \        Pg                  W4      '       d   \
        Ph                  # \        Pk                  W4      '       d   \
        Pl                  # \        Po                  W4      '       d   \
        Pp                  # \        Ps                  W4      '       d   \
        Pt                  # \        Pw                  W4      '       d   \
        Px                  # \        P{                  W4      '       d   \
        P|                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # EMTVR8X  EdZ   \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # M\        P                  W4      '       dX   \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # M\        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        PA                  W4      '       Ed   \        P                  W4      '       d   R# \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \
        P                  # \        P                  W4      '       d   \&        P                  P                  pM5\        P                  W4      '       d   \&        P                  P                  p\        V\&        P                  4      '       g   \         P                  ! V R4      # \&        P                  ! V4      # )z=Returns a string representing the localized role name of obj.ZROLE_DPUB_SECTIONr   T)yr   r8   Zsupports_valuer   is_horizontal_sliderr   ZROLE_SLIDER_HORIZONTALis_vertical_sliderZROLE_SLIDER_VERTICALis_horizontal_scrollbarZROLE_SCROLL_BAR_HORIZONTALis_vertical_scrollbarZROLE_SCROLL_BAR_VERTICALis_horizontal_separatorZROLE_SPLITTER_HORIZONTALis_vertical_separatorZROLE_SPLITTER_VERTICALis_split_pane	has_stater   	StateType
HORIZONTALVERTICALis_suggestionZROLE_CONTENT_SUGGESTIONis_feedZ	ROLE_FEED	is_figureZROLE_FIGUREr9   ZROLE_SWITCHis_dpubis_landmarkis_dpub_acknowledgmentsZROLE_ACKNOWLEDGMENTSis_dpub_afterwordZROLE_AFTERWORDis_dpub_appendixZROLE_APPENDIXis_dpub_bibliographyZROLE_BIBLIOGRAPHYis_dpub_chapterZROLE_CHAPTERis_dpub_conclusionZROLE_CONCLUSIONis_dpub_creditsZROLE_CREDITSis_dpub_endnotesZROLE_ENDNOTESis_dpub_epilogueZROLE_EPILOGUEis_dpub_errataZROLE_ERRATAis_dpub_forewordZROLE_FOREWORDis_dpub_glossaryZROLE_GLOSSARYis_dpub_indexZ
ROLE_INDEXis_dpub_introductionZROLE_INTRODUCTIONis_dpub_pagelistZROLE_PAGELISTis_dpub_partZ	ROLE_PARTis_dpub_prefaceZROLE_PREFACEis_dpub_prologueZROLE_PROLOGUEis_dpub_tocZROLE_TOCis_dpub_abstractZROLE_ABSTRACTis_dpub_colophonZROLE_COLOPHONis_dpub_creditZROLE_CREDITis_dpub_dedicationZROLE_DEDICATIONis_dpub_epigraphZROLE_EPIGRAPHis_dpub_exampleZROLE_EXAMPLEis_dpub_pullquoteZROLE_PULLQUOTEis_dpub_qnaZROLE_QNAis_list_itemis_dpub_bibliorefZROLE_BIBLIOENTRYis_dpub_endnoteZROLE_ENDNOTEis_dpub_coverZ
ROLE_COVERis_dpub_pagebreakZROLE_PAGEBREAKis_dpub_subtitleZROLE_SUBTITLEis_landmark_without_typeis_landmark_bannerZROLE_LANDMARK_BANNERis_landmark_complementaryZROLE_LANDMARK_COMPLEMENTARYis_landmark_contentinfoZROLE_LANDMARK_CONTENTINFOis_landmark_mainZROLE_LANDMARK_MAINis_landmark_navigationZROLE_LANDMARK_NAVIGATIONis_landmark_regionZROLE_LANDMARK_REGIONis_landmark_searchZROLE_LANDMARK_SEARCHis_landmark_formr&   r`   
is_commentCOMMENTZ
isinstanceZget_role_nameZrole_get_localized_namer
   r$      &&r   get_localized_role_nameZ'AXUtilitiesRole.get_localized_role_nameA  s     <$$S)D""3''33C>>(???11#<<(===66sAA(CCC44S??(AAA66sAA(AAA44S??(???,,S77%%c5??+E+EFF,CCC%%c5??+C+CDD,EEE((33$<<<""3--$...$$S//$000$$S//$000""3''**355"::3EE,AAA"44S??,;;;"33C>>,:::"77BB,>>>"223==,999"55c@@,<<<"223==,999"33C>>,:::"33C>>,:::"11#<<,888"33C>>,:::"33C>>,:::"00;;,777"77BB,>>>"33C>>,:::"//::,666"223==,999"33C>>,:::"..s99,555 :,,"33C>>,:::"33C>>,:::"11#<<,888"55c@@,<<<"33C>>,:::"223==,999"44S??,;;;"..s99,555 : --c88"44S??,==="223==,999 > #00;;,777"44S??,;;;"33C>>,:::&&s1177BB11#<<(===88CC(DDD66sAA(BBB//::(;;;55c@@(AAA11#<<(===11#<<(===//::zz''22::%%D$

++))#t44,,T22r   c                r   r   r   r   r'   r   r   r   r   r     s!     9 9 0 0 9T 9r   c                s>    \        \        P                  V 4      4      # )z*Returns True if obj's role comes from ARIA)r'   r   r!   r
      &r   has_role_from_ariaZ"AXUtilitiesRole.has_role_from_aria  s     O223788r   c                sT   < V ^8  d   QhRS[ P                  RS[ P                  RS[/# )r	   obj1obj2r   r   r   r   r   r   r     s3     B BU-- BU5E5E B$ Br   c                s\    \         P                  ! V 4      \         P                  ! V4      8H  # )z0Returns True if obj1 and obj2 have the same roler   r8   )r   r   r   r   have_same_roleZAXUtilitiesRole.have_same_role  s%       &(*;*;D*AAAr   c                r"   r#   r%   r   r   r   r   r     2     4 4%"2"2 4%**t:K 4W[ 4r   c                p    Vf   \         P                  ! V 4      pV\        P                  P                  8H  # )z2Returns True if obj has the accelerator label role)r   r8   r   r&   ZACCELERATOR_LABELr   r   r   is_accelerator_labelZ$AXUtilitiesRole.is_accelerator_label  .     <$$S)Duzz3333r   c                r"   r#   r%   r   r   r   r   r     1     ( (e&& (ejj4.? (4 (r   c                r   )z9Returns True if obj has the alert (a type of dialog) role)r   r8   r   r&   rG   r   r   r   is_alertZAXUtilitiesRole.is_alert  .     <$$S)Duzz''''r   c                r"   r#   r%   r   r   r   r   r     s2      5++ 5::3D PT r   c                s   R\         P                  V 4      9  d   R# Vf   \        P                  ! V 4      pV\        P
                  P                  8w  d+   RV .p\        P                  ! \        P                  VR4       R# )zDReturns True if obj is an ARIA alert (should have notification role)ZalertFz/AXUtilitiesRole: Unexpected role for ARIA alertT)
r   r!   r   r8   r   r&   NOTIFICATIONr   r:   r;   )r
   r$   r=      && r   is_aria_alertZAXUtilitiesRole.is_aria_alert  sf     /88==<$$S)D5::***GMFu//>r   c                r"   r#   r%   r   r   r   r   r     1     , ,%** ,%**t2C ,t ,r   c                r   )z*Returns True if obj has the animation role)r   r8   r   r&   Z	ANIMATIONr   r   r   is_animationZAXUtilitiesRole.is_animation  .     <$$S)Duzz++++r   c                r"   r#   r%   r   r   r   r   r     2     . .E,, .EJJ4E .QU .r   c                r   )z,Returns True if obj has the application role)r   r8   r   r&   ZAPPLICATIONr   r   r   is_applicationZAXUtilitiesRole.is_application  .     <$$S)Duzz----r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z&Returns True if obj has the arrow role)r   r8   r   r&   ZARROWr   r   r   is_arrowZAXUtilitiesRole.is_arrow  r   r   c                r"   r#   r%   r   r   r   r   r     1     * *(( *

T0A *T *r   c                r   )z(Returns True if obj has the article role)r   r8   r   r&   r]   r   r   r   
is_articleZAXUtilitiesRole.is_article  .     <$$S)Duzz))))r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z&Returns True if obj has the audio role)r   r8   r   r&   ZAUDIOr   r   r   is_audioZAXUtilitiesRole.is_audio  r   r   c                r"   r#   r%   r   r   r   r   r     2     / /U-- /UZZ$5F /RV /r   c                r   )z-Returns True if obj has the autocomplete role)r   r8   r   r&   rn   r   r   r   is_autocompleteZAXUtilitiesRole.is_autocomplete  .     <$$S)Duzz....r   c                r"   r#   r%   r   r   r   r   r   &  s7     _ _E,, _EJJ4E _QU _r   c                    Vf   \         P                  ! V 4      pV\        P                  P                  8H  ;'       g    \
        P                  V 4      R8H  # )z,Returns True if obj has the block quote roleZ
blockquote)r   r8   r   r&   r^   r   r   r   r   r   is_block_quoteZAXUtilitiesRole.is_block_quote%  sG     <$$S)Duzz---^^1I1I#1NR^1^^r   c                r"   r#   r%   r   r   r   r   r   .  s6     J Ju'' JuzzD/@ JD Jr   c                    Vf   \         P                  ! V 4      pV\        P                  P                  \        P                  P
                  39   # )z7Returns True if obj has the push- or toggle-button role)r   r8   r   r&   r.   r4   r   r   r   	is_buttonZAXUtilitiesRole.is_button-  s=     <$$S)D

..

0H0HIIIr   c                r"   r#   r%   r   r   r   r   r   6  s2     / /%"2"2 /%**t:K /W[ /r   c                h    \         P                  W4      '       g   R# \        P                  ! V 4      # )zCReturns True if obj has the push- or toggle-button role and a popupF)r   r   r   Z	has_popupr   r   r   is_button_with_popupZ$AXUtilitiesRole.is_button_with_popup5  s)     ((33))#..r   c                r"   r#   r%   r   r   r   r   r   >  1     + +)) +d1B +d +r   c                r   )z)Returns True if obj has the calendar role)r   r8   r   r&   ZCALENDARr   r   r   is_calendarZAXUtilitiesRole.is_calendar=  .     <$$S)Duzz****r   c                r"   r#   r%   r   r   r   r   r   F  1     ) )u'' )uzzD/@ )D )r   c                r   )z'Returns True if obj has the canvas role)r   r8   r   r&   CANVASr   r   r   	is_canvasZAXUtilitiesRole.is_canvasE  .     <$$S)Duzz((((r   c                r"   r#   r%   r   r   r   r   r   N  r   r   c                r   )z(Returns True if obj has the caption role)r   r8   r   r&   r   r   r   r   
is_captionZAXUtilitiesRole.is_captionM  r   r   c                r"   r#   r%   r   r   r   r   r   V  r   r   c                r   )z&Returns True if obj has the chart role)r   r8   r   r&   ZCHARTr   r   r   is_chartZAXUtilitiesRole.is_chartU  r   r   c                r"   r#   r%   r   r   r   r   r   ^  r   r   c                r   )z)Returns True if obj has the checkbox role)r   r8   r   r&   r(   r   r   r   is_check_boxZAXUtilitiesRole.is_check_box]  r   r   c                r"   r#   r%   r   r   r   r   r   f  2     2 2 0 0 2

T8I 2UY 2r   c                r   )z/Returns True if obj has the check menuitem role)r   r8   r   r&   r)   r   r   r   is_check_menu_itemZ"AXUtilitiesRole.is_check_menu_iteme  .     <$$S)Duzz1111r   c                r"   r	   r
   _roleNr   r%   r   r   r   r   r   n  s6     @ @U%% @ejj4.? @4 @r   c                sr    R\         P                  V 4      9   ;'       g    \         P                  V 4      R9   # )z2Returns True if obj has the code or code-like rolecode)r  Zprer   r!   r   r
   r  r   r   is_codeZAXUtilitiesRole.is_codem  s<     77<< @ @'',?	@r   c                r"   r#   r%   r   r   r   r   r   u  2     0 0e.. 0ejj46G 0SW 0r   c                r   )z.Returns True if obj has the color_chooser role)r   r8   r   r&   rD   r   r   r   is_color_chooserZ AXUtilitiesRole.is_color_choosert  .     <$$S)Duzz////r   c                r"   r#   r%   r   r   r   r   r   }  r  r   c                r   )z.Returns True if obj has the column header role)r   r8   r   r&   r   r   r   r   is_column_headerZ AXUtilitiesRole.is_column_header|  r  r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z)Returns True if obj has the combobox role)r   r8   r   r&   rV   r   r   r   is_combo_boxZAXUtilitiesRole.is_combo_box  r   r   c                r"   r#   r%   r   r   r   r   r     s6     ^ ^(( ^

T0A ^T ^r   c                    Vf   \         P                  ! V 4      pV\        P                  P                  8H  ;'       g    R\
        P                  V 4      9   # )z(Returns True if obj has the comment roleZcomment)r   r8   r   r&   r   r   r!   r   r   r   r   ZAXUtilitiesRole.is_comment  sG     <$$S)Duzz)))]]Y/:X:XY\:]-]]r   c                r"   r#   r%   r   r   r   r   r     s2     : :!1!1 :d9J :VZ :r   c                    Vf   \         P                  ! V 4      pV\        P                  P                  8H  ;'       g9    R\
        P                  V 4      9   ;'       g    R\
        P                  V 4      8H  # )z1Returns True if obj has the content deletion roleZdeletionZdel)r   r8   r   r&   ZCONTENT_DELETIONr   r!   r   r   r   r   is_content_deletionZ#AXUtilitiesRole.is_content_deletion  sj     <$$S)Duzz222 : :!?!?!DD: :O44S99	:r   c                r"   r#   r%   r   r   r   r   r     s2     : :%"2"2 :%**t:K :W[ :r   c                r  )z2Returns True if obj has the content insertion roleZ	insertionZins)r   r8   r   r&   ZCONTENT_INSERTIONr   r!   r   r   r   r   is_content_insertionZ$AXUtilitiesRole.is_content_insertion  sj     <$$S)Duzz333 : :/"@"@"EE: :O44S99	:r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z,Returns True if obj has the date editor role)r   r8   r   r&   ZDATE_EDITORr   r   r   is_date_editorZAXUtilitiesRole.is_date_editor  r   r   c                r"   r#   r%   r   r   r   r   r     s7     D Du// DuzzD7H DTX Dr   c                    \         P                  W4      ;'       d0    \        P                  ! V \        P
                  P                  4      # )zAReturns True if obj has the push button role the is-default state)r   is_push_buttonr   r   r   r   Z
IS_DEFAULTr   r   r   is_default_buttonZ!AXUtilitiesRole.is_default_button  s>     --c8 D D""3(B(BC	Dr   c                r"   r#   r%   r   r   r   r   r     2     - -5++ -5::3D -PT -r   c                r   )z+Returns True if obj has the definition role)r   r8   r   r&   Z
DEFINITIONr   r   r   is_definitionZAXUtilitiesRole.is_definition  .     <$$S)Duzz,,,,r   c                r"   r#   r%   r   r   r   r   r     2     5 5!1!1 5d9J 5VZ 5r   c                    Vf   \         P                  ! V 4      pV\        P                  P                  8H  ;'       g    R\
        P                  V 4      8H  # )z1Returns True if obj has the description list roleZdl)r   r8   r   r&   r_   r   r   r   r   r   is_description_listZ#AXUtilitiesRole.is_description_list  M     <$$S)Duzz222 5 5//44	5r   c                r"   r#   r%   r   r   r   r   r     r  r   c                r  )z1Returns True if obj has the description term roleZdt)r   r8   r   r&   ZDESCRIPTION_TERMr   r   r   r   r   is_description_termZ#AXUtilitiesRole.is_description_term  r  r   c                r"   r#   r%   r   r   r   r   r     s2     5 5%"2"2 5%**t:K 5W[ 5r   c                r  )z2Returns True if obj has the description value roleZdd)r   r8   r   r&   ZDESCRIPTION_VALUEr   r   r   r   r   is_description_valueZ$AXUtilitiesRole.is_description_value  sM     <$$S)Duzz333 5 5//44	5r   c                r"   r#   r%   r   r   r   r   r     s2     
 
e.. 
ejj46G 
SW 
r   c                s   Vf   \         P                  ! V 4      pV\        P                  P                  8X  d   R# V\        P                  P
                  8X  d+   \         P                  ! V 4      pVP                  R4      R8H  # R# )z.Returns True if obj has the desktop frame roleTz
is-desktopZtrueF)r   r8   r   r&   ZDESKTOP_FRAMEFRAMEr   r   r
   r$   r   r   r   is_desktop_frameZ AXUtilitiesRole.is_desktop_frame  sg     <$$S)D5::+++5::###005E99\*f44r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z-Returns True if obj has the desktop icon role)r   r8   r   r&   ZDESKTOP_ICONr   r   r   is_desktop_iconZAXUtilitiesRole.is_desktop_icon  r   r   c                r"   r#   r%   r   r   r   r   r     1     ' 'U%% 'UZZ$-> '$ 'r   c                r   )z%Returns True if obj has the dial role)r   r8   r   r&   ZDIALr   r   r   is_dialZAXUtilitiesRole.is_dial  ,     <$$S)Duzz&&r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z'Returns True if obj has the dialog role)r   r8   r   r&   rE   r   r   r   	is_dialogZAXUtilitiesRole.is_dialog  r   r   c                r"   r#   r%   r   r   r   r   r      s2       0 0 

T8I UY r   c                sh    \         P                  R4      pVf   \        P                  ! V 4      pW9   # )z0Returns True if obj has any dialog or alert roleT)r   rH   r   r8   r
   r$   r<   r   r   is_dialog_or_alertZ"AXUtilitiesRole.is_dialog_or_alert  s1      006<$$S)D}r   c                r"   r#   r%   r   r   r   r   r   	  s2      !1!1 d9J VZ r   c                s    \         P                  R4      pVP                  \        P                  P
                  \        P                  P                  34       Vf   \        P                  ! V 4      pW9   # )z9Returns True if obj has any dialog or window-related roleF)	r   rH   r   r   r&   r!  WINDOWr   r8   r)  r   r   is_dialog_or_windowZ#AXUtilitiesRole.is_dialog_or_window  sV      007ejj&&

(9(9:;<$$S)D}r   c                r"   r#   r%   r   r   r   r   r     2     1 1u// 1uzzD7H 1TX 1r   c                r   )z/Returns True if obj has the directory pane role)r   r8   r   r&   ZDIRECTORY_PANEr   r   r   is_directory_paneZ!AXUtilitiesRole.is_directory_pane  .     <$$S)Duzz0000r   c                r"   r#   r%   r   r   r   r   r     s2     2 2U-- 2UZZ$5F 2RV 2r   c                    \         P                  W4      '       g   R# \        P                  ! V 4      pVP	                  R4      R8H  # )z5Returns True if obj has the frame role and is docked.Fzwindow-typeZdock)r   is_framer   r   r   r"  r   r   is_docked_frameZAXUtilitiesRole.is_docked_frame  s<     ''22,,S1yy'611r   c                r"   r#   r%   r   r   r   r   r   %  s1      )) d1B d r   c                f    \         P                  4       pVf   \        P                  ! V 4      pW9   # )z1Returns True if obj has any document-related role)r   rU   r   r8   r)  r   r   is_documentZAXUtilitiesRole.is_document$  s/      224<$$S)D}r   c                r"   r#   r%   r   r   r   r   r   .  r-  r   c                r   )z/Returns True if obj has the document email role)r   r8   r   r&   rM   r   r   r   is_document_emailZ!AXUtilitiesRole.is_document_email-  r/  r   c                r"   r#   r%   r   r   r   r   r   6  r-  r   c                r   )z/Returns True if obj has the document frame role)r   r8   r   r&   rN   r   r   r   is_document_frameZ!AXUtilitiesRole.is_document_frame5  r/  r   c                r"   r#   r%   r   r   r   r   r   >  s2     8 8e&6&6 8ejj4>O 8[_ 8r   c                r   )z6Returns True if obj has the document presentation role)r   r8   r   r&   rO   r   r   r   is_document_presentationZ(AXUtilitiesRole.is_document_presentation=  s.     <$$S)Duzz7777r   c                r"   r#   r%   r   r   r   r   r   F  s2     7 7U%5%5 7UZZ$=N 7Z^ 7r   c                r   )z5Returns True if obj has the document spreadsheet role)r   r8   r   r&   rP   r   r   r   is_document_spreadsheetZ'AXUtilitiesRole.is_document_spreadsheetE  s.     <$$S)Duzz6666r   c                r"   r#   r%   r   r   r   r   r   N  r  r   c                r   )z.Returns True if obj has the document text role)r   r8   r   r&   rQ   r   r   r   is_document_textZ AXUtilitiesRole.is_document_textM  r  r   c                r"   r#   r%   r   r   r   r   r   V  r   r   c                r   )z-Returns True if obj has the document web role)r   r8   r   r&   rR   r   r   r   is_document_webZAXUtilitiesRole.is_document_webU  r   r   c                r"   r  r%   r   r   r   r   r   ^  s1      U%% ejj4.? 4 r   c                sn    \         P                  V 4      p\        \        \	        R V4      4      4      pV# )z$Returns True if obj has a DPub role.c                 s$    V P                  R 4      # )zdoc-)Z
startswith)xr   r   <lambda>Z)AXUtilitiesRole.is_dpub.<locals>.<lambda>b  s    V(<r   )r   r!   r'   r    Zfilter)r
   r  r<   Zrvr>   r   r   ZAXUtilitiesRole.is_dpub]  s0      ..s3$v<eDEF	r   c                r"   r  r%   r   r   r   r   r   f  7     E Ee.. EuzzD7H ETX Er   c                2    R\         P                  V 4      9   # )z/Returns True if obj has the DPub abstract role.zdoc-abstractr   r!   r	  r   r   r   Z AXUtilitiesRole.is_dpub_abstracte       !?!?!DDDr   c                r"   r  r%   r   r   r   r   r   l  s7     L LU%5%5 Lejj4>O L[_ Lr   c                r>  )z6Returns True if obj has the DPub acknowledgments role.zdoc-acknowledgmentsr?  r	  r   r   r   Z'AXUtilitiesRole.is_dpub_acknowledgmentsk  s     %(F(Fs(KKKr   c                r"   r  r%   r   r   r   r   r   r  7     F Fu// F

T8I FUY Fr   c                r>  )z0Returns True if obj has the DPub afterword role.zdoc-afterwordr?  r	  r   r   r   Z!AXUtilitiesRole.is_dpub_afterwordq       /"@"@"EEEr   c                r"   r  r%   r   r   r   r   r   x  r=  r   c                r>  )z/Returns True if obj has the DPub appendix role.zdoc-appendixr?  r	  r   r   r   Z AXUtilitiesRole.is_dpub_appendixw  r@  r   c                r"   r  r%   r   r   r   r   r   ~  r=  r   c                r>  )z/Returns True if obj has the DPub backlink role.zdoc-backlinkr?  r	  r   r   is_dpub_backlinkZ AXUtilitiesRole.is_dpub_backlink}  r@  r   c                r"   r  r%   r   r   r   r   r     rA  r   c                r>  )z0Returns True if obj has the DPub biblioref role.zdoc-bibliorefr?  r	  r   r   r   Z!AXUtilitiesRole.is_dpub_biblioref  rB  r   c                r"   r  r%   r   r   r   r   r     7     I I%"2"2 I5::;L IX\ Ir   c                r>  )z3Returns True if obj has the DPub bibliography role.zdoc-bibliographyr?  r	  r   r   r   Z$AXUtilitiesRole.is_dpub_bibliography       "_%C%CC%HHHr   c                r"   r  r%   r   r   r   r   r     7     D DU-- Dejj46G DSW Dr   c                r>  )z.Returns True if obj has the DPub chapter role.zdoc-chapterr?  r	  r   r   r   ZAXUtilitiesRole.is_dpub_chapter        > >s CCCr   c                r"   r  r%   r   r   r   r   r     r=  r   c                r>  )z/Returns True if obj has the DPub colophon role.zdoc-colophonr?  r	  r   r   r   Z AXUtilitiesRole.is_dpub_colophon  r@  r   c                r"   r  r%   r   r   r   r   r     7     G G 0 0 Gd9J GVZ Gr   c                r>  )z1Returns True if obj has the DPub conclusion role.zdoc-conclusionr?  r	  r   r   r   Z"AXUtilitiesRole.is_dpub_conclusion        ?#A#A##FFFr   c                r"   r  r%   r   r   r   r   r     7     B B5++ BEJJ4E BQU Br   c                r>  )z,Returns True if obj has the DPub cover role.z	doc-coverr?  r	  r   r   r   ZAXUtilitiesRole.is_dpub_cover       o<<SAAAr   c                r"   r  r%   r   r   r   r   r     7     C CE,, CUZZ$5F CRV Cr   c                r>  )z-Returns True if obj has the DPub credit role.z
doc-creditr?  r	  r   r   r   ZAXUtilitiesRole.is_dpub_credit       ==cBBBr   c                r"   r  r%   r   r   r   r   r     rF  r   c                r>  )z.Returns True if obj has the DPub credits role.zdoc-creditsr?  r	  r   r   r   ZAXUtilitiesRole.is_dpub_credits  rG  r   c                r"   r  r%   r   r   r   r   r     rH  r   c                r>  )z1Returns True if obj has the DPub dedication role.zdoc-dedicationr?  r	  r   r   r   Z"AXUtilitiesRole.is_dpub_dedication  rI  r   c                r"   r  r%   r   r   r   r   r     rF  r   c                r>  )z.Returns True if obj has the DPub endnote role.zdoc-endnoter?  r	  r   r   r   ZAXUtilitiesRole.is_dpub_endnote  rG  r   c                r"   r  r%   r   r   r   r   r     r=  r   c                r>  )z/Returns True if obj has the DPub endnotes role.zdoc-endnotesr?  r	  r   r   r   Z AXUtilitiesRole.is_dpub_endnotes  r@  r   c                r"   r  r%   r   r   r   r   r     r=  r   c                r>  )z/Returns True if obj has the DPub epigraph role.zdoc-epigraphr?  r	  r   r   r   Z AXUtilitiesRole.is_dpub_epigraph  r@  r   c                r"   r  r%   r   r   r   r   r     r=  r   c                r>  )z/Returns True if obj has the DPub epilogue role.zdoc-epiloguer?  r	  r   r   r   Z AXUtilitiesRole.is_dpub_epilogue  r@  r   c                r"   r  r%   r   r   r   r   r     rL  r   c                r>  )z-Returns True if obj has the DPub errata role.z
doc-erratar?  r	  r   r   r   ZAXUtilitiesRole.is_dpub_errata  rM  r   c                r"   r  r%   r   r   r   r   r     rF  r   c                r>  )z.Returns True if obj has the DPub example role.zdoc-exampler?  r	  r   r   r   ZAXUtilitiesRole.is_dpub_example  rG  r   c                r"   r  r%   r   r   r   r   r     r=  r   c                r>  )z/Returns True if obj has the DPub footnote role.zdoc-footnoter?  r	  r   r   is_dpub_footnoteZ AXUtilitiesRole.is_dpub_footnote  r@  r   c                r"   r  r%   r   r   r   r   r     r=  r   c                r>  )z/Returns True if obj has the DPub foreword role.zdoc-forewordr?  r	  r   r   r   Z AXUtilitiesRole.is_dpub_foreword  r@  r   c                r"   r  r%   r   r   r   r   r     r=  r   c                r>  )z/Returns True if obj has the DPub glossary role.zdoc-glossaryr?  r	  r   r   r   Z AXUtilitiesRole.is_dpub_glossary  r@  r   c                r"   r  r%   r   r   r   r   r     r=  r   c                r>  )z/Returns True if obj has the DPub glossref role.zdoc-glossrefr?  r	  r   r   is_dpub_glossrefZ AXUtilitiesRole.is_dpub_glossref  r@  r   c                r"   r  r%   r   r   r   r   r     rJ  r   c                r>  )z,Returns True if obj has the DPub index role.z	doc-indexr?  r	  r   r   r   ZAXUtilitiesRole.is_dpub_index  rK  r   c                r"   r  r%   r   r   r   r   r     rD  r   c                r>  )z3Returns True if obj has the DPub introduction role.zdoc-introductionr?  r	  r   r   r   Z$AXUtilitiesRole.is_dpub_introduction  rE  r   c                r"   r  r%   r   r   r   r   r     rF  r   c                r>  )z.Returns True if obj has the DPub noteref role.zdoc-noterefr?  r	  r   r   is_dpub_noterefZAXUtilitiesRole.is_dpub_noteref  rG  r   c                r"   r  r%   r   r   r   r   r     r=  r   c                r>  )z/Returns True if obj has the DPub pagelist role.zdoc-pagelistr?  r	  r   r   r   Z AXUtilitiesRole.is_dpub_pagelist  r@  r   c                r"   r  r%   r   r   r   r   r     rA  r   c                r>  )z0Returns True if obj has the DPub pagebreak role.zdoc-pagebreakr?  r	  r   r   r   Z!AXUtilitiesRole.is_dpub_pagebreak  rB  r   c                r"   r  r%   r   r   r   r   r     s7     A A%** A5::3D APT Ar   c                r>  )z+Returns True if obj has the DPub part role.zdoc-partr?  r	  r   r   r   ZAXUtilitiesRole.is_dpub_part  s     _;;C@@@r   c                r"   r  r%   r   r   r   r   r     rF  r   c                r>  )z.Returns True if obj has the DPub preface role.zdoc-prefacer?  r	  r   r   r   ZAXUtilitiesRole.is_dpub_preface  rG  r   c                r"   r  r%   r   r   r   r   r      r=  r   c                r>  )z/Returns True if obj has the DPub prologue role.zdoc-prologuer?  r	  r   r   r   Z AXUtilitiesRole.is_dpub_prologue  r@  r   c                r"   r  r%   r   r   r   r   r   &  rA  r   c                r>  )z0Returns True if obj has the DPub pullquote role.zdoc-pullquoter?  r	  r   r   r   Z!AXUtilitiesRole.is_dpub_pullquote%  rB  r   c                r"   r  r%   r   r   r   r   r   ,  6     @ @)) @%**t2C @t @r   c                r>  )z*Returns True if obj has the DPub qna role.zdoc-qnar?  r	  r   r   r   ZAXUtilitiesRole.is_dpub_qna+       O::3???r   c                r"   r  r%   r   r   r   r   r   2  r=  r   c                r>  )z/Returns True if obj has the DPub subtitle role.zdoc-subtitler?  r	  r   r   r   Z AXUtilitiesRole.is_dpub_subtitle1  r@  r   c                r"   r  r%   r   r   r   r   r   8  rQ  r   c                r>  )z*Returns True if obj has the DPub toc role.zdoc-tocr?  r	  r   r   r   ZAXUtilitiesRole.is_dpub_toc7  rR  r   c                r"   r#   r%   r   r   r   r   r   >  r   r   c                r   )z-Returns True if obj has the drawing area role)r   r8   r   r&   ZDRAWING_AREAr   r   r   is_drawing_areaZAXUtilitiesRole.is_drawing_area=  r   r   c                r"   r#   r%   r   r   r   r   r   F  s7     	R 	R5#3#3 	R5::;L 	RX\ 	Rr   c                s   Vf   \         P                  ! V 4      pV\        P                  P                  8w  d   R# \
        P                  ! V 4      '       d   R# \        \         P                  ! V \        P                  4      4      # )z+Returns True if obj is an editable comboboxFT)r   r8   r   r&   rV   r   is_editabler'   Zfind_descendantr   is_text_inputr   r   r   is_editable_combo_boxZ%AXUtilitiesRole.is_editable_combo_boxE  s`     <$$S)D5::''''',,H,,S/2O2OPQQr   c                r"   r#   r%   r   r   r   r   r   R  r   r   c                r   )z(Returns True if obj has the editbar role)r   r8   r   r&   ZEDITBARr   r   r   
is_editbarZAXUtilitiesRole.is_editbarQ  r   r   c                r"   r#   r%   r   r   r   r   r   Z  r   r   c                r   )z)Returns True if obj has the embedded role)r   r8   r   r&   ZEMBEDDEDr   r   r   is_embeddedZAXUtilitiesRole.is_embeddedY  r   r   c                r"   r#   r%   r   r   r   r   r   b  r   r   c                r   )z&Returns True if obj has the entry role)r   r8   r   r&   rY   r   r   r   is_entryZAXUtilitiesRole.is_entrya  r   r   c                r"   r#   r%   r   r   r   r   r   j  r   r   c                r   )z)Returns True if obj has the extended role)r   r8   r   r&   ZEXTENDEDr   r   r   is_extendedZAXUtilitiesRole.is_extendedi  r   r   c                r"   r  r%   r   r   r   r   r   r  s1     = =U%% =ejj4.? =4 =r   c                r>  )z%Returns True if obj has the feed roleZfeedr?  r	  r   r   r   ZAXUtilitiesRole.is_feedq       77<<<r   c                r"   r#   r%   r   r   r   r   r   x  s7     P PU-- PUZZ$5F PRV Pr   c                    \         P                  W4      '       g   R# \        P                  ! V \         P                  4      RJ# )zBReturns True if obj has the article role and descends from a feed.FN)r   r   r   find_ancestorr   r   r   r   is_feed_articleZAXUtilitiesRole.is_feed_articlew  s6     ))#44%%c?+B+BC4OOr   c                r"   r  r%   r   r   r   r   r     s1     9 9u'' 9

T0A 9T 9r   c                sr    R\         P                  V 4      9   ;'       g    \         P                  V 4      R8H  # )z/Returns True if obj has the figure role or tag.Zfigurer  r	  r   r   r   ZAXUtilitiesRole.is_figure  s9     ?99#>> 9 9'',8	9r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z-Returns True if obj has the file chooser role)r   r8   r   r&   rF   r   r   r   is_file_chooserZAXUtilitiesRole.is_file_chooser  r   r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z'Returns True if obj has the filler role)r   r8   r   r&   ro   r   r   r   	is_fillerZAXUtilitiesRole.is_filler  r   r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z2Returns True if obj has the focus traversable role)r   r8   r   r&   ZFOCUS_TRAVERSABLEr   r   r   is_focus_traversableZ$AXUtilitiesRole.is_focus_traversable  r   r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z-Returns True if obj has the font chooser role)r   r8   r   r&   ZFONT_CHOOSERr   r   r   is_font_chooserZAXUtilitiesRole.is_font_chooser  r   r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z'Returns True if obj has the footer role)r   r8   r   r&   ra   r   r   r   	is_footerZAXUtilitiesRole.is_footer  r   r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z)Returns True if obj has the footnote role)r   r8   r   r&   ZFOOTNOTEr   r   r   is_footnoteZAXUtilitiesRole.is_footnote  r   r   c                r"   r#   r%   r   r   r   r   r     r%  r   c                r   )z%Returns True if obj has the form role)r   r8   r   r&   r`   r   r   r   is_formZAXUtilitiesRole.is_form  r'  r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z&Returns True if obj has the frame role)r   r8   r   r&   r!  r   r   r   r1  ZAXUtilitiesRole.is_frame  r   r   c                r"   r#   r%   r   r   r   r   r     r  r   c                r   )z+Returns True if obj has the glass pane role)r   r8   r   r&   Z
GLASS_PANEr   r   r   is_glass_paneZAXUtilitiesRole.is_glass_pane  r  r   c                r"   r#   r%   r   r   r   r   r     s1     7 7)) 7d1B 7d 7r   c                sn    \         P                  W4      '       g   R# \        P                  ! V 4      R8H  # )zNReturns True if obj has the list role but contains UI rather than static text.FZgtk)r   is_listr   Zget_toolkit_namer   r   r   is_gui_listZAXUtilitiesRole.is_gui_list  s.     &&s11((-66r   c                r"   r#   r%   r   r   r   r   r     s1     = =U%% =UZZ$-> =$ =r   c                l    \         P                  W4      '       g   R# R\         P                  V 4      9   # )z&Returns True if obj has the grid role.FZgrid)r   is_tabler!   r   r   r   is_gridZAXUtilitiesRole.is_grid  s.     ''2277<<<r   c                r"   r#   r%   r   r   r   r   r     s1      %** %**t2C t r   c                s    \         P                  W4      '       g   R# \         P                  V 4      pRV9   d   R# RV9   d(   \        P                  ! V \         P
                  4      RJ# R# )zLReturns True if obj has the gridcell role or the cell role and is in a grid.FZgridcellTZcellN)r   is_table_cellr!   r   r]  rk  r)  r   r   is_grid_cellZAXUtilitiesRole.is_grid_cell  s[     ,,S77..s3U?))#/F/FGtSSr   c                r"   r  r%   r   r   r   r   r     s1     > >e&& >uzzD/@ >D >r   c                r>  )z%Returns True if obj is an ARIA group.Zgroupr?  r	  r   r   is_groupZAXUtilitiesRole.is_group  s     /88===r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z)Returns True if obj has the grouping role)r   r8   r   r&   rb   r   r   r   is_groupingZAXUtilitiesRole.is_grouping  r   r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z'Returns True if obj has the header role)r   r8   r   r&   rc   r   r   r   	is_headerZAXUtilitiesRole.is_header  r   r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z(Returns True if obj has the heading role)r   r8   r   r&   ZHEADINGr   r   r   
is_headingZAXUtilitiesRole.is_heading  r   r   c                r"   r#   r%   r   r   r   r   r     r-  r   c                r   )z/Returns True if obj has the html container role)r   r8   r   r&   rd   r   r   r   is_html_containerZ!AXUtilitiesRole.is_html_container  r/  r   c                r"   r#   r%   r   r   r   r   r     7     D DU%5%5 DUZZ$=N DZ^ Dr   c                r  )z-Returns True if obj is a horizontal scrollbar)r   is_scroll_barr   r   r   r   r   r   r   r   r   Z'AXUtilitiesRole.is_horizontal_scrollbar  s>     ,,S7 D D""3(B(BC	Dr   c                r"   r#   r%   r   r   r   r   r     rs  r   c                r  )z-Returns True if obj is a horizontal separator)r   is_separatorr   r   r   r   r   r   r   r   r   Z'AXUtilitiesRole.is_horizontal_separator  s>     ++C6 D D""3(B(BC	Dr   c                r"   r#   r%   r   r   r   r   r   $  s7     D D%"2"2 D%**t:K DW[ Dr   c                r  )z*Returns True if obj is a horizontal slider)r   	is_sliderr   r   r   r   r   r   r   r   r   Z$AXUtilitiesRole.is_horizontal_slider#  s>     ((3 D D""3(B(BC	Dr   c                r"   r#   r%   r   r   r   r   r   +  r%  r   c                r   )z%Returns True if obj has the icon role)r   r8   r   r&   ICONr   r   r   is_iconZAXUtilitiesRole.is_icon*  r'  r   c                r"   r#   r%   r   r   r   r   r   3  s2     < <u// <uzzD7H <TX <r   c                r   )z/Returns True if obj has the icon or canvas role)r   r8   r   r&   rw  r   r   r   r   is_icon_or_canvasZ!AXUtilitiesRole.is_icon_or_canvas2  s;     <$$S)D

):):;;;r   c                r"   r#   r%   r   r   r   r   r   ;  r   r   c                r   )z&Returns True if obj has the image role)r   r8   r   r&   r*   r   r   r   is_imageZAXUtilitiesRole.is_image:  r   r   c                r"   r#   r%   r   r   r   r   r   C  s2     = = 0 0 =

T8I =UY =r   c                r   )z0Returns True if obj has the image or canvas role)r   r8   r   r&   r*   r   r   r   r   is_image_or_canvasZ"AXUtilitiesRole.is_image_or_canvasB  s=     <$$S)D

((%***;*;<<<r   c                r"   r#   r%   r   r   r   r   r   K  r   r   c                r   )z*Returns True if obj has the image map role)r   r8   r   r&   Z	IMAGE_MAPr   r   r   is_image_mapZAXUtilitiesRole.is_image_mapJ  r   r   c                r"   r#   r%   r   r   r   r   r   S  r   r   c                r   )z)Returns True if obj has the info bar role)r   r8   r   r&   r   r   r   r   is_info_barZAXUtilitiesRole.is_info_barR  r   r   c                r"   r#   r%   r   r   r   r   r   [  s7     C Ce&6&6 Cejj4>O C[_ Cr   c                ri  )z>Returns True if obj has the internal frame role and is inline.Finline)r   is_internal_framer   r   r   r   is_inline_internal_frameZ(AXUtilitiesRole.is_inline_internal_frameZ  s.     00;;?==cBBBr   c                r"   r#   r%   r   r   r   r   r   d  s7     C C!1!1 Cd9J CVZ Cr   c                ri  )z9Returns True if obj has the list item role and is inline.Fr~  )r   r   r   r   r   r   is_inline_list_itemZ#AXUtilitiesRole.is_inline_list_itemc  s.     ++C66?==cBBBr   c                r"   r#   r%   r   r   r   r   r   m  s7     C C%"2"2 C%**t:K CW[ Cr   c                ri  )z:Returns True if obj has the suggestion role and is inline.Fr~  )r   r   r   r   r   r   is_inline_suggestionZ$AXUtilitiesRole.is_inline_suggestionl  s.     ,,S77?==cBBBr   c                r"   r#   r%   r   r   r   r   r   v  2     6 6E$4$4 6EJJ<M 6Y] 6r   c                r   )z4Returns True if obj has the input method window role)r   r8   r   r&   ZINPUT_METHOD_WINDOWr   r   r   is_input_method_windowZ&AXUtilitiesRole.is_input_method_windowu  .     <$$S)Duzz5555r   c                r"   r#   r%   r   r   r   r   r   ~  s7     ^ ^u// ^uzzD7H ^TX ^r   c                r   )z/Returns True if obj has the internal frame roleZiframe)r   r8   r   r&   ZINTERNAL_FRAMEr   r   r   r   r   r  Z!AXUtilitiesRole.is_internal_frame}  sG     <$$S)Duzz000]]O4L4LS4QU]4]]r   c                r"   r#   r%   r   r   r   r   r     s2     * *U-- *UZZ$5F *RV *r   c                r   )z(Returns True if obj has the invalid role)r   r8   r   r&   ZINVALIDr   r   r   is_invalid_roleZAXUtilitiesRole.is_invalid_role  r   r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z&Returns True if obj has the label role)r   r8   r   r&   r   r   r   r   is_labelZAXUtilitiesRole.is_label  r   r   c                r"   r#   r%   r   r   r   r   r     s2     > >!1!1 >d9J >VZ >r   c                r   )z1Returns True if obj has the label or caption role)r   r8   r   r&   r   r   r   r   r   is_label_or_captionZ#AXUtilitiesRole.is_label_or_caption  s=     <$$S)D

((%***<*<===r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z)Returns True if obj has the landmark role)r   r8   r   r&   re   r   r   r   r   ZAXUtilitiesRole.is_landmark  r   r   c                r"   r  r%   r   r   r   r   r     2     ? ? 0 0 ?d9J ?VZ ?r   c                r>  )z0Returns True if obj has the banner landmark roleZbannerr?  r	  r   r   r   Z"AXUtilitiesRole.is_landmark_banner       ?99#>>>r   c                r"   r  r%   r   r   r   r   r     s9     F FF&+jj4&7F	Fr   c                r>  )z7Returns True if obj has the complementary landmark roleZcomplementaryr?  r	  r   r   r   Z)AXUtilitiesRole.is_landmark_complementary  s     /"@"@"EEEr   c                r"   r  r%   r   r   r   r   r     s7     D DU%5%5 Dejj4>O D[_ Dr   c                r>  )z5Returns True if obj has the contentinfo landmark roleZcontentinfor?  r	  r   r   r   Z'AXUtilitiesRole.is_landmark_contentinfo  rG  r   c                r"   r  r%   r   r   r   r   r     2     = =e.. =uzzD7H =TX =r   c                r>  )z.Returns True if obj has the form landmark roleZformr?  r	  r   r   r   Z AXUtilitiesRole.is_landmark_form  r[  r   c                r"   r  r%   r   r   r   r   r     r  r   c                r>  )z.Returns True if obj has the main landmark roleZmainr?  r	  r   r   r   Z AXUtilitiesRole.is_landmark_main  r[  r   c                r"   r  r%   r   r   r   r   r     s7     C CE$4$4 CUZZ$=N CZ^ Cr   c                r>  )z4Returns True if obj has the navigation landmark roleZ
navigationr?  r	  r   r   r   Z&AXUtilitiesRole.is_landmark_navigation  rM  r   c                r"   r  r%   r   r   r   r   r     r  r   c                r>  )z0Returns True if obj has the region landmark roleZregionr?  r	  r   r   r   Z"AXUtilitiesRole.is_landmark_region  r  r   c                r"   r  r%   r   r   r   r   r     r  r   c                r>  )z0Returns True if obj has the search landmark rolesearchr?  r	  r   r   r   Z"AXUtilitiesRole.is_landmark_search  r  r   c                r"   r#   r%   r   r   r   r   r     s2      e&6&6 ejj4>O [_ r   c                st    \         P                  W4      '       g   R# \         P                  V 4      pV'       * # )z5Returns True if obj has the landmark role but no typeF)r   r   r!   r)  r   r   r   Z(AXUtilitiesRole.is_landmark_without_type  s0     **355..s3yr   c                r"   r#   r%   r   r   r   r   r     s7     C C 0 0 C

T8I CUY Cr   c                d    Vf   \         P                  ! V 4      pV\        P                  4       9   # )z.Returns True if obj has a large container role)r   r8   r   rm   r   r   r   is_large_containerZ"AXUtilitiesRole.is_large_container  s-     <$$S)D@@BBBr   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z-Returns True if obj has the layered pane role)r   r8   r   r&   ZLAYERED_PANEr   r   r   is_layered_paneZAXUtilitiesRole.is_layered_pane  r   r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z*Returns True if obj has the level bar role)r   r8   r   r&   r+   r   r   r   is_level_barZAXUtilitiesRole.is_level_bar  r   r   c                r"   r#   r%   r   r   r   r   r     r%  r   c                r   )z%Returns True if obj has the link role)r   r8   r   r&   ZLINKr   r   r   is_linkZAXUtilitiesRole.is_link  r'  r   c                r"   r#   r%   r   r   r   r   r     r%  r   c                r   )z%Returns True if obj has the list role)r   r8   r   r&   rg   r   r   r   rg  ZAXUtilitiesRole.is_list  r'  r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z)Returns True if obj has the list box role)r   r8   r   r&   rX   r   r   r   is_list_boxZAXUtilitiesRole.is_list_box
  r   r   c                r"   r#   r%   r   r   r   r   r     s7     T Te.. Tejj46G TSW Tr   c                r\  )z,Returns True if obj is an item in a list boxFN)r   r   r   r]  r  r   r   r   is_list_box_itemZ AXUtilitiesRole.is_list_box_item  s6     ++C66%%c?+F+FGtSSr   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z*Returns True if obj has the list item role)r   r8   r   r&   Z	LIST_ITEMr   r   r   r   ZAXUtilitiesRole.is_list_item  r   r   c                r"   r#   r%   r   r   r   r   r   #  s1     & &E$$ &EJJ,= & &r   c                r   )z$Returns True if obj has the log role)r   r8   r   r&   rf   r   r   r   is_logZAXUtilitiesRole.is_log"  s,     <$$S)Duzz~~%%r   c                r"   r  r%   r   r   r   r   r   +  s2     ) )E,, )UZZ$5F )RV )r   c                s8    \         P                  ! V 4      pRV9   # )z%Returns True if obj is a live region.zcontainer-live)r   r   )r
   r  r   r   r   is_live_regionZAXUtilitiesRole.is_live_region*  s     ,,S15((r   c                r"   r#   r%   r   r   r   r   r   2  s1     : :U%% :UZZ$-> :$ :r   c                s    Vf   \         P                  ! V 4      pV\        P                  P                  8H  ;'       g9    R\
        P                  V 4      9   ;'       g    R\
        P                  V 4      8H  # )z%Returns True if obj has the mark roleZmark)r   r8   r   r&   ZMARKr   r!   r   r   r   r   is_markZAXUtilitiesRole.is_mark1  sh     <$$S)Duzz& : :O::3??: :O44S99	:r   c                r"   r#   r%   r   r   r   r   r   <  r   r   c                r   )z(Returns True if obj has the marquee role)r   r8   r   r&   rh   r   r   r   
is_marqueeZAXUtilitiesRole.is_marquee;  r   r   c                r"   r#   r%   r   r   r   r   r   D  r%  r   c                r   )z%Returns True if obj has the math role)r   r8   r   r&   MATHr   r   r   is_mathZAXUtilitiesRole.is_mathC  r'  r   c                r   r   r   r   r   r   r   r   L  s!     ; ;U-- ;$ ;r   c                2    \         P                  V 4      R8H  # )z1Returns True if obj has the math enclose role/tagmencloser   r   r   r   r   is_math_encloseZAXUtilitiesRole.is_math_encloseK  s     '',
::r   c                r   r   r   r   r   r   r   r   R  s!     : :E,, : :r   c                r  )z0Returns True if obj has the math fenced role/tagmfencedr  r   r   r   is_math_fencedZAXUtilitiesRole.is_math_fencedQ  s     '',	99r   c                r"   r#   r%   r   r   r   r   r   X  r  r   c                r   )z.Returns True if obj has the math fraction role)r   r8   r   r&   MATH_FRACTIONr   r   r   is_math_fractionZ AXUtilitiesRole.is_math_fractionW  r  r   c                r"   r#   r%   r   r   r   r   r   `  s4      %*ZZ$%6	r   c                s    \         P                  W4      '       g   R# \        P                  ! V R4      pV'       g   R# V F%  pVP	                  4       '       g   K  VR8w  g   K$   R# 	  R# )zIReturns True if obj has the math fraction role and lacks the fraction barFZlinethicknessZ0T)r   r  r   Zget_attributeZ	isnumeric)r
   r$   Zline_thicknessZcharr>   r   is_math_fraction_without_barZ,AXUtilitiesRole.is_math_fraction_without_bar_  sU     //::!//_E"D~~DCK # r   c                r   r   r   r   r   r   r   r   s  s%     L L!1!1 Ld Lr   c                2    \         P                  V 4      R9   # )z/Returns True if obj has a layout-only math role)mrowmstylemerrormpaddedZnoneZ	semanticsr  r   r   r   is_math_layout_onlyZ#AXUtilitiesRole.is_math_layout_onlyr  s!     '',KL 	Lr   c                r   r   r   r   r   r   r   r   z  s%     @ @%"2"2 @t @r   c                r  )z7Returns True if obj has the math multi-scripts role/tagmmultiscriptsr  r   r   r   is_math_multi_scriptZ$AXUtilitiesRole.is_math_multi_scripty  s     '',??r   c                r"   r#   r%   r   r   r   r   r     s2     .? .?U-- .?UZZ$5F .?RV .?r   c                s   Vf   \         P                  ! V 4      pV\        P                  P                  \        P                  P
                  \        P                  P                  39   d   R# \        P                  V 4      . RNRNRNRNRNRNRNR	NR
NRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNR NR!NR"NR#NR$NR%NR&NR'NR(NR)N9   # )*z+Returns True if obj has a math-related roleTZmathZmactionZmaligngroupZ
malignmarkr  r  r  ZmfracZmglyphmi
mlabeledtrZmlongdivr  mnmomoverr  ZmphantomZmprescriptsZmrootr  msZ	mscarriesZmscarryZmsgroupZmslinemspacemsqrtZmsrowZmstackr  msubmsupmsubsupmtableZmtdmtextmtrmunder
munderover)	r   r8   r   r&   r  r  	MATH_ROOTr   r   r   r   r   is_math_relatedZAXUtilitiesRole.is_math_related  s    <$$S)DEJJOOUZZ%=%=uzz?S?STT'', '1? '1?1:'1?1>'1? 2>'1? 2<	'1?
 2:'1? 2;'1? 29'1? 2:'1? 26'1? 2>'1? 2<'1? 2A'1? 26'1? 26'1? 29'1?  2;!'1?" 2<#'1?$ 2?%'1?& 29''1?( 28)'1?* 26+'1?, 2=-'1?. 2;/'1?0 2;1'1?2 2:3'1?4 2:5'1?6 297'1?8 299'1?: 2:;'1?< 2:='1?> 28?'1?@ 28A'1?B 2;C'1?D 2:E'1?F 27G'1?H 29I'1?J 27K'1?L 2:M'1?N 2>O'1? '? '	?r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z*Returns True if obj has the math root role)r   r8   r   r&   r  r   r   r   is_math_rootZAXUtilitiesRole.is_math_root  r   r   c                r   r   r   r   r   r   r   r     s!     8 8!1!1 8d 8r   c                r  )z.Returns True if obj has the math root role/tagr  r  r   r   r   is_math_square_rootZ#AXUtilitiesRole.is_math_square_root  s     '',77r   c                r   r   r   r   r   r   r   r     s%     L L)9)9 Ld Lr   c                r  )zBReturns True if obj has the math subscript or superscript role/tag)r  r  r  r  r   r   r   is_math_sub_or_super_scriptZ+AXUtilitiesRole.is_math_sub_or_super_script  s     '',0KKKr   c                r   r   r   r   r   r   r   r     s!     9 95++ 9 9r   c                r  )z/Returns True if obj has the math table role/tagr  r  r   r   r   is_math_tableZAXUtilitiesRole.is_math_table  s     '',88r   c                r   r   r   r   r   r   r   r     s%     F Fu// FD Fr   c                r  )z3Returns True if obj has the math table row role/tag)r  r  r  r   r   r   is_math_table_rowZ!AXUtilitiesRole.is_math_table_row  s     '',0EEEr   c                r   r   r   r   r   r   r   r     s%     \ \5++ \ \r   c                r  )z-Returns True if obj has a math token role/tag)r  r  r  r  r  r  r  r   r   r   is_math_tokenZAXUtilitiesRole.is_math_token  s     '',0[[[r   c                r   r   r   r   r   r   r   r     s%     R R%*:*: Rt Rr   c                r  )zEReturns True if obj has the math under-script or over-script role/tag)r  r  r  r  r   r   r   is_math_under_or_over_scriptZ,AXUtilitiesRole.is_math_under_or_over_script  s     '',0QQQr   c                r"   r#   r%   r   r   r   r   r     r%  r   c                r   )z%Returns True if obj has the menu role)r   r8   r   r&   rx   r   r   r   is_menuZAXUtilitiesRole.is_menu  r'  r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z(Returns True if obj has the menubar role)r   r8   r   r&   ry   r   r   r   is_menu_barZAXUtilitiesRole.is_menu_bar  r   r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z*Returns True if obj has the menu item role)r   r8   r   r&   rv   r   r   r   is_menu_itemZAXUtilitiesRole.is_menu_item  r   r   c                r"   r#   r%   r   r   r   r   r     2      e&6&6 ejj4>O [_ r   c                r3  )z*Returns True if obj has any menu item role)r   rw   r   r8   r)  r   r   is_menu_item_of_any_kindZ(AXUtilitiesRole.is_menu_item_of_any_kind  s/      335<$$S)D}r   c                r"   r#   r%   r   r   r   r   r     2      U-- UZZ$5F RV r   c                r3  )z-Returns True if obj has any menu-related role)r   r{   r   r8   r)  r   r   is_menu_relatedZAXUtilitiesRole.is_menu_related  /      668<$$S)D}r   c                r"   r#   r%   r   r   r   r   r     s2     ? ?U-- ?UZZ$5F ?RV ?r   c                r  )z@Returns True if obj has the alert or dialog role and modal state)r   r*  r   r   r   r   ZMODALr   r   r   is_modal_dialogZAXUtilitiesRole.is_modal_dialog  s;     11#< ? ?""3(=(=>	?r   c                r"   r#   r%   r   r   r   r   r     s7     D D!1!1 Dd9J DVZ Dr   c                r  )z:Returns True if obj has the entry role and multiline state)r   rY  r   r   r   r   Z
MULTI_LINEr   r   r   is_multi_line_entryZ#AXUtilitiesRole.is_multi_line_entry  s>     ''2 D D""3(B(BC	Dr   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z-Returns True if obj has the notification role)r   r8   r   r&   r   r   r   r   is_notificationZAXUtilitiesRole.is_notification  r   r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z,Returns True if obj has the option pane role)r   r8   r   r&   ZOPTION_PANEr   r   r   is_option_paneZAXUtilitiesRole.is_option_pane  r   r   c                r"   r#   r%   r   r   r   r   r   %  r%  r   c                r   )z%Returns True if obj has the page role)r   r8   r   r&   ZPAGEr   r   r   is_pageZAXUtilitiesRole.is_page$  r'  r   c                r"   r#   r%   r   r   r   r   r   -  r   r   c                r   )z)Returns True if obj has the page tab role)r   r8   r   r&   r,   r   r   r   is_page_tabZAXUtilitiesRole.is_page_tab,  r   r   c                r"   r#   r%   r   r   r   r   r   5  r  r   c                r   )z.Returns True if obj has the page tab list role)r   r8   r   r&   r|   r   r   r   is_page_tab_listZ AXUtilitiesRole.is_page_tab_list4  r  r   c                r"   r#   r%   r   r   r   r   r   =  r  r   c                s    \         P                  P                  \         P                  P                  .pVf   \        P
                  ! V 4      pW9   # )z:Returns True if obj has the page tab or page tab list role)r   r&   r|   r,   r   r8   r)  r   r   is_page_tab_list_relatedZ(AXUtilitiesRole.is_page_tab_list_related<  s?     ))5::+>+>?<$$S)D}r   c                r"   r#   r%   r   r   r   r   r   F  r   r   c                r   )z&Returns True if obj has the panel role)r   r8   r   r&   ri   r   r   r   is_panelZAXUtilitiesRole.is_panelE  r   r   c                r"   r#   r%   r   r   r   r   r   N  r   r   c                r   )z*Returns True if obj has the paragraph role)r   r8   r   r&   Z	PARAGRAPHr   r   r   is_paragraphZAXUtilitiesRole.is_paragraphM  r   r   c                r"   r#   r%   r   r   r   r   r   V  r  r   c                r   )z.Returns True if obj has the password text role)r   r8   r   r&   rZ   r   r   r   is_password_textZ AXUtilitiesRole.is_password_textU  r  r   c                r"   r#   r%   r   r   r   r   r   ^  r  r   c                r   )z+Returns True if obj has the popup menu role)r   r8   r   r&   rz   r   r   r   is_popup_menuZAXUtilitiesRole.is_popup_menu]  r  r   c                r"   r#   r%   r   r   r   r   r   f  r   r   c                r   )z-Returns True if obj has the progress bar role)r   r8   r   r&   r-   r   r   r   is_progress_barZAXUtilitiesRole.is_progress_bare  r   r   c                r"   r#   r%   r   r   r   r   r   n  r   r   c                r   )z,Returns True if obj has the push button role)r   r8   r   r&   r.   r   r   r   r  ZAXUtilitiesRole.is_push_buttonm  r   r   c                r"   r#   r%   r   r   r   r   r   v  2     3 3!1!1 3d9J 3VZ 3r   c                r   )z1Returns True if obj has the push button menu role)r   r8   r   r&   ZPUSH_BUTTON_MENUr   r   r   is_push_button_menuZ#AXUtilitiesRole.is_push_button_menuu  .     <$$S)Duzz2222r   c                r"   r#   r%   r   r   r   r   r   ~  r   r   c                r   )z-Returns True if obj has the radio button role)r   r8   r   r&   r/   r   r   r   is_radio_buttonZAXUtilitiesRole.is_radio_button}  r   r   c                r"   r#   r%   r   r   r   r   r     r  r   c                r   )z0Returns True if obj has the radio menu item role)r   r8   r   r&   r0   r   r   r   is_radio_menu_itemZ"AXUtilitiesRole.is_radio_menu_item  r  r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z'Returns True if obj has the rating role)r   r8   r   r&   ZRATINGr   r   r   	is_ratingZAXUtilitiesRole.is_rating  r   r   c                r"   r#   r%   r   r   r   r   r     s2     3 3e&6&6 3ejj4>O 3[_ 3r   c                r   )z1Returns True if obj has the redundant object role)r   r8   r   r&   rp   r   r   r   is_redundant_object_roleZ(AXUtilitiesRole.is_redundant_object_role  r  r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z*Returns True if obj has the root pane role)r   r8   r   r&   Z	ROOT_PANEr   r   r   is_root_paneZAXUtilitiesRole.is_root_pane  r   r   c                r"   r#   r%   r   r   r   r   r     r  r   c                r   )z+Returns True if obj has the row header role)r   r8   r   r&   r   r   r   r   is_row_headerZAXUtilitiesRole.is_row_header  r  r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z&Returns True if obj has the ruler role)r   r8   r   r&   ZRULERr   r   r   is_rulerZAXUtilitiesRole.is_ruler  r   r   c                r"   r#   r%   r   r   r   r   r     r  r   c                r   )z*Returns True if obj has the scrollbar role)r   r8   r   r&   r1   r   r   r   rt  ZAXUtilitiesRole.is_scroll_bar  r  r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z,Returns True if obj has the scroll pane role)r   r8   r   r&   rr   r   r   r   is_scroll_paneZAXUtilitiesRole.is_scroll_pane  r   r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z(Returns True if obj has the section role)r   r8   r   r&   ZSECTIONr   r   r   
is_sectionZAXUtilitiesRole.is_section  r   r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z*Returns True if obj has the separator role)r   r8   r   r&   r2   r   r   r   ru  ZAXUtilitiesRole.is_separator  r   r   c                r"   r#   r%   r   r   r   r   r     s4     = ==%*ZZ$%6=	=r   c                r   )z<Returns True if obj has the entry role and single-line stateF)r   is_single_line_entryr   Zsupports_autocompletionr   r   r   !is_single_line_autocomplete_entryZ1AXUtilitiesRole.is_single_line_autocomplete_entry  s)     33C>>77<<r   c                r"   r#   r%   r   r   r   r   r     s2     	 	%"2"2 	%**t:K 	W[ 	r   c                s    \         P                  ! V 4      '       g   R# \        P                  W4      '       d   R# \        P	                  W4      '       d   \         P
                  ! V 4      # R# )z@Returns True if obj has the entry role and the single-line stateFT)r   is_single_liner   rY  is_textrT  r   r   r   r  Z$AXUtilitiesRole.is_single_line_entry  sQ      ..s33##C..""3--#//44r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z'Returns True if obj has the slider role)r   r8   r   r&   r3   r   r   r   rv  ZAXUtilitiesRole.is_slider  r   r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z,Returns True if obj has the spin button role)r   r8   r   r&   r[   r   r   r   is_spin_buttonZAXUtilitiesRole.is_spin_button  r   r   c                r"   r#   r%   r   r   r   r   r     r  r   c                r   )z+Returns True if obj has the split pane role)r   r8   r   r&   
SPLIT_PANEr   r   r   r   ZAXUtilitiesRole.is_split_pane  r  r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z'Returns True if obj has the static role)r   r8   r   r&   ZSTATICr   r   r   	is_staticZAXUtilitiesRole.is_static  r   r   c                r"   r#   r%   r   r   r   r   r     r  r   c                r   )z*Returns True if obj has the statusbar role)r   r8   r   r&   r   r   r   r   is_status_barZAXUtilitiesRole.is_status_bar  r  r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z*Returns True if obj has the subscript role)r   r8   r   r&   	SUBSCRIPTr   r   r   is_subscriptZAXUtilitiesRole.is_subscript  r   r   c                r"   r#   r%   r   r   r   r   r     9     F FF%*ZZ$%6F	Fr   c                r   )z9Returns True if obj has the subscript or superscript role)r   r8   r   r&   r  SUPERSCRIPTr   r   r   is_subscript_or_superscriptZ+AXUtilitiesRole.is_subscript_or_superscript  s=     <$$S)D

,,ejj.D.DEEEr   c                r"   r#   r%   r   r   r   r   r   '  r  r   c                sf    \         P                  W4      '       d   R# \         P                  W4      # )zQReturns True if obj has the subscript or superscript role and is not math-relatedF)r   r  r  r   r   r    is_subscript_or_superscript_textZ0AXUtilitiesRole.is_subscript_or_superscript_text&  s)     **355::3EEr   c                r"   r#   r%   r   r   r   r   r   1  s7     E E5++ E5::3D EPT Er   c                r  )z+Returns True if obj has the suggestion roleZ
suggestion)r   r8   r   r&   Z
SUGGESTIONr   r!   r   r   r   r   ZAXUtilitiesRole.is_suggestion0  sP     <$$S)Duzz,,, E E!?!?!DD	Er   c                r"   r#   r%   r   r   r   r   r   :  r   r   c                r   )z,Returns True if obj has the superscript role)r   r8   r   r&   r  r   r   r   is_superscriptZAXUtilitiesRole.is_superscript9  r   r   c                r   r   r   r   r   r   r   r   B  s!     6 6E$$ 6 6r   c                r  )zReturns True if obj is an svg.Zsvgr  r   r   r   is_svgZAXUtilitiesRole.is_svgA  s     '',55r   c                r"   r#   r%   r   r   r   r   r   H  s1     ? ?u'' ?uzzD/@ ?D ?r   c                s    Vf   \         P                  ! V 4      p V\        P                  P                  8X  d   R#  R\        P                  V 4      9   #   \
         d     L%i ; i)z(Returns True if obj has the switch role.TZswitch)r   r8   r   r&   r6   r7   r   r!   r   r   r   r9   ZAXUtilitiesRole.is_switchG  sd     <$$S)D	uzz((( )
 ?99#>>>  		s   A A$#A$c                r"   r#   r%   r   r   r   r   r   X  r   r   c                r   )z&Returns True if obj has the table role)r   r8   r   r&   rj   r   r   r   rj  ZAXUtilitiesRole.is_tableW  r   r   c                r"   r#   r%   r   r   r   r   r   `  r  r   c                r   )z+Returns True if obj has the table cell role)r   r8   r   r&   r   r   r   r   rl  ZAXUtilitiesRole.is_table_cell_  r  r   c                r"   r#   r%   r   r   r   r   r   h  s2      U%5%5 UZZ$=N Z^ r   c                r3  )z?Returns True if obj has the table cell or a header-related role)r   r   r   r8   r)  r   r   is_table_cell_or_headerZ'AXUtilitiesRole.is_table_cell_or_headerg  s/      446<$$S)D}r   c                r"   r#   r%   r   r   r   r   r   q  r  r   c                r   )z4Returns True if obj has the table column header role)r   r8   r   r&   r   r   r   r   is_table_column_headerZ&AXUtilitiesRole.is_table_column_headerp  r  r   c                r"   r#   r%   r   r   r   r   r   y  r  r   c                r3  )z3Returns True if obj has a table header related role)r   r   r   r8   r)  r   r   is_table_headerZAXUtilitiesRole.is_table_headerx  r  r   c                sh   < V ^8  d   QhRS[ P                  RS[ P                  R,          RS[RS[/# )r	   r
   r$   Nr   r   r%   r   r   r   r   r     s@     
 

jj4
 
 
	
r   c                sh    \         P                  V4      pVf   \        P                  ! V 4      pW9   # )z,Returns True if obj has a table-related role)r   r   r   r8   )r
   r$   r   r<   s   &&& r   is_table_relatedZ AXUtilitiesRole.is_table_related  s1      77H<$$S)D}r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z*Returns True if obj has the table row role)r   r8   r   r&   Z	TABLE_ROWr   r   r   is_table_rowZAXUtilitiesRole.is_table_row  r   r   c                r"   r#   r%   r   r   r   r   r     r  r   c                r   )z1Returns True if obj has the table row header role)r   r8   r   r&   r   r   r   r   is_table_row_headerZ#AXUtilitiesRole.is_table_row_header  r  r   c                r"   r#   r%   r   r   r   r   r     r   r   c                r   )z2Returns True if obj has the tearoff menu item role)r   r8   r   r&   rs   r   r   r   is_tearoff_menu_itemZ$AXUtilitiesRole.is_tearoff_menu_item  r   r   c                r"   r#   r%   r   r   r   r   r     s1     + +)) +d1B +d +r   c                r   )z)Returns True if obj has the terminal role)r   r8   r   r&   ZTERMINALr   r   r   is_terminalZAXUtilitiesRole.is_terminal  s.     <$$S)Duzz****r   c                r"   r#   r%   r   r   r   r   r     r%  r   c                r   )z%Returns True if obj has the text role)r   r8   r   r&   rW   r   r   r   r  ZAXUtilitiesRole.is_text  r'  r   c                r"   r#   r%   r   r   r   r   r     s2      5++ 5::3D PT r   c                s   \         P                  P                  \         P                  P                  \         P                  P                  .pVf   \
        P                  ! V 4      pW9   d   R# V\         P                  P                  8X  d5   \        P                  ! V 4      ;'       d    \        P                  ! V 4      # \        P                  V 4      '       d   R# R# )z>Returns True if obj has any role associated with textual inputTF)r   r&   rY   rZ   r[   r   r8   rW   r   rT  r  r   rV  r)  r   r   rU  ZAXUtilitiesRole.is_text_input  s     !!5::#;#;UZZ=S=ST<$$S)D=5::??"#//4]]9I9X9XY\9]]0055r   c                r"   r#   r%   r   r   r   r   r     2     6 6 0 0 6

T8I 6UY 6r   c                r0  )z(Returns True if obj is a date text inputFtext-input-typeZdater   rU  r   r   r   r"  r   r   is_text_input_dateZ"AXUtilitiesRole.is_text_input_date  =     ,,S77,,S1yy*+v55r   c                r"   r#   r%   r   r   r   r   r     s2     7 7!1!1 7d9J 7VZ 7r   c                r0  )z*Returns True if obj is an email text inputFr  Zemailr  r"  r   r   is_text_input_emailZ#AXUtilitiesRole.is_text_input_email  s=     ,,S77,,S1yy*+w66r   c                r"   r#   r%   r   r   r   r   r     s2     8 8%"2"2 8%**t:K 8W[ 8r   c                r0  )z+Returns True if obj is a numeric text inputFr  Znumberr  r"  r   r   is_text_input_numberZ$AXUtilitiesRole.is_text_input_number  s=     ,,S77,,S1yy*+x77r   c                r"   r#   r%   r   r   r   r   r     s2      %"2"2 %**t:K W[ r   c                s   \         P                  W4      '       g   R# \        P                  ! V 4      pVP	                  R4      R8X  d   R# R\         P                  V 4      9   d   R# \        P                  ! V 4      ;'       g    RpV'       d/   RVP                  4       9   ;'       g    RVP                  4       9   # \        P                  ! V ^ 4      p\         P                  V4      '       g   \         P                  V4      '       d   \        P                  ! V4      ;'       g    RpRVP                  4       9   g   RVP                  4       9   d   R# \        P                  ! V4      P                  4       pRV9   ;'       g    RV9   # R# )-Returns True if obj is a telephone text inputFr  r  TZ	searchboxr   Zfind)r   rU  r   r   r   r!   Zget_accessible_idZlowerZ	get_childrx  rz  Zget_name)r
   r$   r   Zax_idZchildZchild_idZ
child_names   &&     r   is_text_input_searchZ$AXUtilitiesRole.is_text_input_search  s1    ,,S77,,S199&'83/88==**3/552u{{},GG%++-0GG""3*""5))_-E-Ee-L-L11%8>>BH8>>++v9I/I!**51779Jz)AAVz-AAr   c                r"   r#   r%   r   r   r   r   r     s2     ; ;U%5%5 ;UZZ$=N ;Z^ ;r   c                r0  )r  Fr  Z	telephoner  r"  r   r   is_text_input_telephoneZ'AXUtilitiesRole.is_text_input_telephone  s=     ,,S77,,S1yy*+{::r   c                r"   r#   r%   r   r   r   r   r   		  r  r   c                r0  )z(Returns True if obj is a time text inputFr  timer  r"  r   r   is_text_input_timeZ"AXUtilitiesRole.is_text_input_time	  r  r   c                r"   r#   r%   r   r   r   r   r   	  s2     5 5u// 5uzzD7H 5TX 5r   c                r0  )z'Returns True if obj is a url text inputFr  Zurlr  r"  r   r   is_text_input_urlZ!AXUtilitiesRole.is_text_input_url	  s=     ,,S77,,S1yy*+u44r   c                r"   r#   r%   r   r   r   r   r   	  r  r   c                r0  )z(Returns True if obj is a week text inputFr  Zweekr  r"  r   r   is_text_input_weekZ"AXUtilitiesRole.is_text_input_week	  r  r   c                r"   r  r%   r   r   r   r   r   '	  s1     7 7U%% 7ejj4.? 74 7r   c                sr    R\         P                  V 4      9   ;'       g    R\         P                  V 4      8H  # )z%Returns True if obj has the time roler  r  r	  r   r   is_timeZAXUtilitiesRole.is_time&	  s9     77<< 7 711#66	7r   c                r"   r#   r%   r   r   r   r   r   .	  r   r   c                r   )z&Returns True if obj has the timer role)r   r8   r   r&   ZTIMERr   r   r   is_timerZAXUtilitiesRole.is_timer-	  r   r   c                r"   r#   r%   r   r   r   r   r   6	  r   r   c                r   )z)Returns True if obj has the titlebar role)r   r8   r   r&   Z	TITLE_BARr   r   r   is_title_barZAXUtilitiesRole.is_title_bar5	  r   r   c                r"   r#   r%   r   r   r   r   r   >	  r  r   c                r   )z.Returns True if obj has the toggle button role)r   r8   r   r&   r4   r   r   r   is_toggle_buttonZ AXUtilitiesRole.is_toggle_button=	  r  r   c                r"   r#   r%   r   r   r   r   r   F	  r   r   c                r   )z(Returns True if obj has the toolbar role)r   r8   r   r&   r}   r   r   r   is_tool_barZAXUtilitiesRole.is_tool_barE	  r   r   c                r"   r#   r%   r   r   r   r   r   N	  r   r   c                r   )z(Returns True if obj has the tooltip role)r   r8   r   r&   ZTOOL_TIPr   r   r   is_tool_tipZAXUtilitiesRole.is_tool_tipM	  r   r   c                r"   r#   r%   r   r   r   r   r   V	  r%  r   c                r   )z%Returns True if obj has the tree role)r   r8   r   r&   rk   r   r   r   is_treeZAXUtilitiesRole.is_treeU	  r'  r   c                r"   r#   r%   r   r   r   r   r   ^	  s7     @ @5#3#3 @5::;L @X\ @r   c                r   )z3Returns True if obj has the tree or tree table role)r   r8   r   r&   rk   rl   r   r   r   is_tree_or_tree_tableZ%AXUtilitiesRole.is_tree_or_tree_table]	  s;     <$$S)D

)>)>???r   c                r"   r#   r%   r   r   r   r   r   f	  s2      U-- UZZ$5F RV r   c                s    \         P                  P                  \         P                  P                  \         P                  P                  .pVf   \
        P                  ! V 4      pW9   # )z+Returns True if obj has a tree-related role)r   r&   rk   r~   rl   r   r8   r)  r   r   is_tree_relatedZAXUtilitiesRole.is_tree_relatede	  sO     %%&&( <$$S)D}r   c                r"   r#   r%   r   r   r   r   r   q	  r   r   c                r   )z*Returns True if obj has the tree item role)r   r8   r   r&   r~   r   r   r   is_tree_itemZAXUtilitiesRole.is_tree_itemp	  r   r   c                r"   r#   r%   r   r   r   r   r   y	  r  r   c                r   )z+Returns True if obj has the tree table role)r   r8   r   r&   rl   r   r   r   is_tree_tableZAXUtilitiesRole.is_tree_tablex	  r  r   c                r"   r#   r%   r   r   r   r   r   	  r   r   c                r   )z(Returns True if obj has the unknown role)r   r8   r   r&   rq   r   r   r   
is_unknownZAXUtilitiesRole.is_unknown	  r   r   c                r"   r#   r%   r   r   r   r   r   	  s7     I IU%5%5 IUZZ$=N IZ^ Ir   c                r   )z<Returns True if obj has the unknown or redundant object role)r   r8   r   r&   rq   rp   r   r   r   is_unknown_or_redundantZ'AXUtilitiesRole.is_unknown_or_redundant	  s=     <$$S)D

**EJJ,G,GHHHr   c                r"   r#   r%   r   r   r   r   r   	  7     B B5#3#3 B5::;L BX\ Br   c                r  )z+Returns True if obj is a vertical scrollbar)r   rt  r   r   r   r   r   r   r   r   r   Z%AXUtilitiesRole.is_vertical_scrollbar	  s>     ,,S7 B B""3(@(@A	Br   c                r"   r#   r%   r   r   r   r   r   	  r  r   c                r  )z+Returns True if obj is a vertical separator)r   ru  r   r   r   r   r   r   r   r   r   Z%AXUtilitiesRole.is_vertical_separator	  s>     ++C6 B B""3(@(@A	Br   c                r"   r#   r%   r   r   r   r   r   	  s7     B B 0 0 B

T8I BUY Br   c                r  )z(Returns True if obj is a vertical slider)r   rv  r   r   r   r   r   r   r   r   r   Z"AXUtilitiesRole.is_vertical_slider	  s>     ((3 B B""3(@(@A	Br   c                r"   r#   r%   r   r   r   r   r   	  r   r   c                r   )z&Returns True if obj has the video role)r   r8   r   r&   ZVIDEOr   r   r   is_videoZAXUtilitiesRole.is_video	  r   r   c                r"   r#   r%   r   r   r   r   r   	  r   r   c                r   )z)Returns True if obj has the viewport role)r   r8   r   r&   ZVIEWPORTr   r   r   is_viewportZAXUtilitiesRole.is_viewport	  r   r   c                s@   < V ^8  d   QhRS[ P                  RS[RS[/# )r	   r
   exclude_pseudo_elementsr   r   r   r   r   r   r   	  s)     	" 	"E,, 	"t 	"W[ 	"r   c                sd    \         P                  V 4      pV'       g   R# V'       g   R# . ROpW#9  # )z$Returns True if obj is a web elementFT)z::beforez::afterz::markerr  )r
   r  r   Zexcluder>   r   is_web_elementZAXUtilitiesRole.is_web_element	  s.     &&s+&5!!r   c                r   r   r   r   r   r   r   r   	  s!     . .5#3#3 . .r   c                sN    \         P                  V 4      pVRJ;'       d    RV9   # )z+Returns True if obj is a custom web elementNZ-r  )r
   r   r   r   is_web_element_customZ%AXUtilitiesRole.is_web_element_custom	  s*     &&s+$--3#:-r   c                r"   r#   r%   r   r   r   r   r   	  s1     : :u'' :uzzD/@ :D :r   c                r  )z%Returns True if obj has a widget role)r   r8   r   r   r   r   r   	is_widgetZAXUtilitiesRole.is_widget	  s-     <$$S)D77999r   c                r"   r#   r%   r   r   r   r   r   	  s4     / //%*ZZ$%6/	/r   c                s2  a Vf   \         P                  ! V 4      p\        P                  P                  \        P                  P
                  \        P                  P                  \        P                  P                  \        P                  P                  \        P                  P                  .oVS9   d   R# \        P                  ! V 4      '       g   \        P                  ! V 4      '       d   \         P                  ! V V3R l4      RJ# \        P                  ! V 4      '       g   R# V\        P                  P                  \        P                  P                   \        P                  P"                  \        P                  P$                  39   # )z=Returns True if obj is a widget controlled by line navigationNTc                 s6   < \         P                  ! V 4      S9   # Nr   )r;  r<   s   &r   r<  ZIAXUtilitiesRole.is_widget_controlled_by_line_navigation.<locals>.<lambda>	  s    9J9J19MQV9Vr   F)r   r8   r   r&   rV   rX   rx   r[   rk   rl   r   rT  Zis_selectabler]  Zis_verticalr1   r2   r3   r  r)  s   &&@r   'is_widget_controlled_by_line_navigationZ7AXUtilitiesRole.is_widget_controlled_by_line_navigation	  s    <$$S)D%%$$''&&( 5='',,0@0N0Ns0S0S))#/VW_ccc++C00

--

,,

))

--/ / 	/r   c                r"   r#   r%   r   r   r   r   r   	  r   r   c                r   )z'Returns True if obj has the window role)r   r8   r   r&   r+  r   r   r   	is_windowZAXUtilitiesRole.is_window	  r   r    r  )T)F)NF(  Z__name__Z
__module__Z__qualname__Z__firstlineno____doc__Zstaticmethodr   r   r!   r?   rH   rU   r\   rm   rt   rw   r{   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r
  r  r  r  r   r  r  r  r  r  r  r  r   r#  r$  r&  r(  r*  r,  r.  r2  r4  r5  r6  r7  r8  r9  r:  r   r   r   r   r   rC  r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rN  r   r   rO  r   r   rP  r   r   r   r   r   r   r   r   r   rS  rV  rW  rX  rY  rZ  r   r^  r   r_  r`  ra  rb  rc  rd  re  r1  rf  rh  rk  rm  rn  ro  rp  rq  rr  r   r   r   rx  ry  rz  r{  r|  r}  r  r  r  r  r  r  r  r  r   r   r   r   r   r   r   r   r   r   r  r  r  r  rg  r  r  r   r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  rt  r  r  ru  r  r  rv  r  r   r  r  r  r  r  r   r  r  r9   rj  rl  r  r  r  r  r  r  r  r  r  rU  r   r  r  r  r  r  r	  r
  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r   r   r  r  r  r  r  r   r!  Z__static_attributes__Z__classdictcell__)r   s   @r   r   r   -   s9    ;( (     2 2 ( ( (T    	 	     2 	 	   
 
  , 	 	 	 	 	           . E3 E3 E3N 9 9
 B B
 4 4 4 ( ( (    , , , . . . ( ( ( * * * ( ( ( / / / _ _ _ J J J / / / + + + ) ) ) * * * ( ( ( , , , 2 2 2 @ @ @ 0 0 0 0 0 0 , , , ^ ^ ^ : : : : : : . . . D D D - - - 5 5 5 5 5 5 5 5 5 
 
 
 / / / ' ' ' ) ) )       1 1 1 2 2 2    1 1 1 1 1 1 8 8 8 7 7 7 0 0 0 / / /    E E E
 L L L
 F F F
 E E E
 E E E
 F F F
 I I I
 D D D
 E E E
 G G G
 B B B
 C C C
 D D D
 G G G
 D D D
 E E E
 E E E
 E E E
 C C C
 D D D
 E E E
 E E E
 E E E
 E E E
 B B B
 I I I
 D D D
 E E E
 F F F
 A A A
 D D D
 E E E
 F F F
 @ @ @
 E E E
 @ @ @
 / / / 	R 	R 	R * * * + + + ( ( ( + + + = = =
 P P P 9 9 9 / / / ) ) ) 4 4 4 / / / ) ) ) + + + ' ' ' ( ( ( - - - 7 7 7 = = =    > > >
 + + + ) ) ) * * * 1 1 1 D D D D D D D D D ' ' ' < < < ( ( ( = = = , , , + + + C C C C C C C C C 6 6 6 ^ ^ ^ * * * ( ( ( > > > + + + ? ? ?
 F F F D D D
 = = =
 = = =
 C C C
 ? ? ?
 ? ? ?
    C C C / / / , , , ' ' ' ' ' ' + + + T T T , , , & & & ) ) ) : : : * * * ' ' ' ; ; ;
 : : :
 0 0 0   $ L L L @ @ @
 .? .? .?` , , , 8 8 8
 L L L
 9 9 9
 F F F
 \ \ \
 R R R
 ' ' ' + + + , , ,       ? ? ? D D D / / / . . . ' ' ' + + + 0 0 0    ( ( ( , , , 0 0 0 - - - / / / . . . 3 3 3 / / / 2 2 2 ) ) ) 3 3 3 , , , - - - ( ( ( - - - . . . * * * , , , = = = 	 	 	 ) ) ) . . . - - - ) ) ) - - - , , , F F F F F F E E E . . . 6 6 6
 ? ? ? ( ( ( - - -    6 6 6    
 
 
 , , , 3 3 3 4 4 4 + + + ' ' '    6 6 6 7 7 7 8 8 8   6 ; ; ; 6 6 6 5 5 5 6 6 6 7 7 7 ( ( ( , , , 0 0 0 + + + + + + ' ' ' @ @ @    , , , - - - * * * I I I B B B B B B B B B ( ( ( + + + 	" 	" 	" . . . : : : / / /8 ) ) ) )r   r   )r#  Z__id__Z__version__Z__date__Z__copyright__Z__license__ZgiZrequire_versionZgi.repositoryr   r   r   r   Z	ax_objectr   Zax_utilities_stater   r   r"  r   r   <module>r$     sQ   8 81 	   7E "     0F') F')r   