+
    iGV                       R t ^ RIHt ^ RIHt ]'       g   R]9   d   ^RIH	t	 M^ RI	t	 ^ RI
tR tR tR tR	 t ! R
 R]4      t^ RIt]	P(                  t^ RIHtHtHt ^ RItR t ! R R]4      t]	P:                  ! ]4       R tR t]	P@                  t  ]	PB                  t! ]	PD                  t" ]	PF                  t# ]	PH                  t$ ]	PJ                  t% ]	PL                  t& ]	PN                  t' ]	PP                  t( ]	PR                  t) ]	PT                  t* ]	PV                  t+ ]	PX                  t, ]	PZ                  t- ]	P\                  t. ]	P^                  t/ ]	P`                  t0 ]	Pb                  t1 ]	Pd                  t2 R R lt3R R lt4R R lt5R R lt6R R lt7 ! R R]4      t8]	Pr                  ! ]84       ]	Pt                  t: ]	Pv                  t; ]	Px                  t< ]	Pz                  t= ]	P|                  t> ]	P~                  t? R R lt@R  R! ltAR" R# ltBR$ R% ltCR& R' ltDR( R) ltER* R+ ltFR, R- ltGR. R/ ltHR0 R1 ltIR2 R3 ltJR4 R5 ltKR6 R7 ltLR8 R9 ltMR: R; ltN]	P                  tO]	P                  tP ! R< R=]4      tQ]	P                  ! ]Q4       ^ RIt]P                  ! ]Q4       ]:tO];tPR#   ] d	    ^ RIt ELi ; i)>a  Functions that deal with cross-references (xrefs).

There are 2 groups of xrefs: CODE and DATA references. All xrefs are kept in the bTree except the ordinary execution flow to the next instruction. The ordinary execution flow to the next instruction is kept in flags (see bytes.hpp)

The source address of an xref must be an item head (is_head) or a structure member id. Even if an xref is generated by an element in the middle of the item, the item head address must be used. There are some exceptions to the rule but they are not worth mentioning here.

Xrefs are automatically sorted by addresses. However, the flow to the next instruction is always at the beginning of the list.

Xrefs are usually created by the processor module, as a reaction to the ev_emu_insn event. Plugins may create xrefs too but please note that upon a reanalysis of an item, all its xrefs, except the ones marked with XREF_USER, are deleted by the kernel.

.. tip::
   The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies
   common tasks and provides better type hints, while remaining fully compatible
   with IDAPython for advanced use cases.

   For cross-reference operations, see :mod:`ida_domain.xrefs`.)annotations)version_info.)	_ida_xrefNc                     R V P                   P                  4       ,           pRV P                  P
                  : RV P                  P                  : RV: R2#   \        P                   d    Rp LPi ; i)z	proxy of  <r   z; z >)this__repr____builtin__	Exception	__class__
__module____name__)selfstrthiss   & @C:\Users\user\Downloads\ida93sp2\portable_win\python\ida_xref.py
_swig_reprr      sg    		 2 2 44 "^^669     s   !A A43A4c                   a  V 3R  lpV# )c                  < VR 8X  d   S! WV4       R# VR8X  d   V P                   P                  V4       R# \        W4      '       d5   \        \	        \        V 4      V4      \        4      '       d   S! WV4       R# \        RV ,          4      h)r	   thisownz(You cannot add instance attributes to %sN)r	   ownhasattr
isinstancegetattrtypepropertyAttributeError)r   namevaluesets   &&&r   set_instance_attrE_swig_setattr_nondynamic_instance_variable.<locals>.set_instance_attr(   su    6>E"YIIMM% T  ZT
D0I& &E" !K"       )r    r!   s   f r   *_swig_setattr_nondynamic_instance_variabler%   &   s    
 r#   c                   a  V 3R  lpV# )c                   < \        W4      '       d+   \        \        W4      \        4      '       g   S! WV4       R# \	        R V ,          4      h)z%You cannot add class attributes to %sN)r   r   r   r   r   )clsr   r   r    s   &&&r   set_class_attr?_swig_setattr_nondynamic_class_variable.<locals>.set_class_attr8   s:    3j1CX&N&N5! !H3!NOOr#   r$   )r    r)   s   f r   '_swig_setattr_nondynamic_class_variabler+   6   s    P
 r#   c                   a  V 3R lpV# )zlClass decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclassc                p   < S! V P                   V P                  V P                  P                  4       4      # N)r   	__bases____dict__copy)r(   	metaclasss   &r   wrapper$_swig_add_metaclass.<locals>.wrapperC   s'    s}}cll6G6G6IJJr#   r$   )r2   r3   s   f r   _swig_add_metaclassr5   @   s    KNr#   c                  >    ] tR t^HtRt]! ]P                  4      tRtR# )_SwigNonDynamicMetazKMeta class to enforce nondynamic attributes (no new attributes) for a classr$   N)	r   r   __qualname____firstlineno____doc__r+   r   __setattr____static_attributes__r$   r#   r   r7   r7   H   s    U9$:J:JKKr#   r7   )TupleListUnionc                .    \         P                  ! W4      # )a>  This function creates xrefs from the indirect jump.

Usually there is no need to call this function directly because the kernel
will call it for switch tables

Note: Custom switch information are not supported yet.

:param ea: address of the 'indirect jump' instruction
:param si: switch information

:returns: Boolean)r   create_switch_xrefseasis   &&r   rA   rA   S   s     ((00r#   c                      ] tR t^bt$ ]! R R RR7      t]t]! ]P                  ]P                  4      tR]R&   ]! ]P                  ]P                  4      tR]R&   R	 t]P"                  tR
tR# )cases_and_targets_tc                	6    V P                   P                  4       # r.   r	   r   xs   &r   <lambda>cases_and_targets_t.<lambda>c       r#   c                	8    V P                   P                  V4      # r.   rH   rJ   vs   &&r   rK   rL   c       AFFJJqMr#   The membership flagdoc'casevec_t'casesz	'eavec_t'targetsc                	Z    \         P                  ! V \         P                  ! 4       4       R # r.   )r   cases_and_targets_t_swiginitnew_cases_and_targets_tr   s   &r   __init__cases_and_targets_t.__init__k   s$    ..tY##6$ 6& 	'r#   r$   N)r   r   r8   r9   r   r   r   r
   r   cases_and_targets_t_cases_getcases_and_targets_t_cases_setrV   __annotations__cases_and_targets_t_targets_getcases_and_targets_t_targets_setrW   r\   delete_cases_and_targets_t__swig_destroy__r<   r$   r#   r   rF   rF   b   sq    -/I!#GH!)"I"I//1E; 1!)"K"K113GY 3' !;;r#   rF   c                .    \         P                  ! W4      # )a  Get information about a switch's cases.

The returned information can be used as follows:

    for idx in range(len(results.cases)):
        cur_case = results.cases[idx]
        for cidx in range(len(cur_case)):
            print("case: %d" % cur_case[cidx])
        print("  goto 0x%x" % results.targets[idx])

:param ea: address of the 'indirect jump' instruction
:param si: switch information

:returns: a structure with 2 members: 'cases', and 'targets'.)r   calc_switch_casesrB   s   &&r   rf   rf   t   s     &&r..r#   c                .    \         P                  ! W4      # )zCreate switch table from the switch information

:param ea: address of the 'indirect jump' instruction
:param si: switch information

:returns: Boolean)r   create_switch_tablerB   s   &&r   rh   rh      s     ((00r#   c                    V ^8  d   QhRRRR/# )   xrtypez'char'returnr$   )formats   "r   __annotate__rn      s     & &V &v &r#   c                .    \         P                  ! V 4      # )zGet character describing the xref type. 
        
:param xrtype: combination of Cross-Reference type flags and a cref_t of dref_t value)r   xrefchar)rk   s   &r   rp   rp      s     f%%r#   c               (    V ^8  d   QhRRRRRRRR/# )rj   frmida_idaapi.ea_ttor   z'cref_t'rl   boolr$   )rm   s   "r   rn   rn      (     - -/ - -h -$ -r#   c                0    \         P                  ! WV4      # )zCreate a code cross-reference. 
        
:param to: linear address of referenced instruction
:param type: cross-reference type
:returns: success)r   add_crefrr   rt   r   s   &&&r   rx   rx           ct,,r#   c               (    V ^8  d   QhRRRRRRRR/# )rj   rr   rs   rt   expandru   rl   r$   )rm   s   "r   rn   rn      s(     / // / / / /r#   c                0    \         P                  ! WV4      # )a|  Delete a code cross-reference. 
        
:param to: linear address of referenced instruction
:param expand: policy to delete the referenced instruction
* 1: plan to delete the referenced instruction if it has no more references.
* 0: don't delete the referenced instruction even if no more cross-references point to it
:returns: true: if the referenced instruction will be deleted)r   del_cref)rr   rt   r|   s   &&&r   r~   r~      s     cv..r#   c               (    V ^8  d   QhRRRRRRRR/# )rj   rr   rs   rt   r   z'dref_t'rl   ru   r$   )rm   s   "r   rn   rn      rv   r#   c                0    \         P                  ! WV4      # )zCreate a data cross-reference. 
        
:param to: linear address of referenced data
:param type: cross-reference type
:returns: success (may fail if user-defined xref exists from->to))r   add_drefry   s   &&&r   r   r      rz   r#   c               $    V ^8  d   QhRRRRRR/# )rj   rr   rs   rt   rl   Noner$   )rm   s   "r   rn   rn      s!     ' '/ ' '$ 'r#   c                .    \         P                  ! W4      # )zUDelete a data cross-reference. 
        
:param to: linear address of referenced data)r   del_dref)rr   rt   s   &&r   r   r      s     c&&r#   c                  \   ] tR t^t$ ]! R R RR7      t]t]! ]P                  ]P                  4      tR]R&   ]! ]P                  ]P                  4      tR]R&    ]! ]P                   ]P"                  4      tR]R	&    ]! ]P&                  ]P(                  4      tR
]R&    ]! ]P,                  ]P.                  4      tR]R&    ]! ]P2                  ]P4                  4      tR
]R&   R!R R lltR!R R lltR R ltR R ltR t R t!R t"R t#R t$R t%R t&R t'R t(]PR                  t*Rt+R # )"	xrefblk_tc                	6    V P                   P                  4       # r.   rH   rI   s   &r   rK   xrefblk_t.<lambda>   rM   r#   c                	8    V P                   P                  V4      # r.   rH   rO   s   &&r   rK   r      rQ   r#   rR   rS   rs   rr   rt   ru   iscodez'uchar'r   user_flagsc               $    V ^8  d   QhRRRRRR/# )rj   _fromrs   flagsintrl   ru   r$   )rm   s   "r   rn   xrefblk_t.__annotate__  s&     B B B B Br#   c                	0    \         P                  ! WV4      # r.   )r   xrefblk_t_first_from)r   r   r   s   &&&r   
first_fromxrefblk_t.first_from  s    --d5AAr#   c               $    V ^8  d   QhRRRRRR/# )rj   _tors   r   r   rl   ru   r$   )rm   s   "r   rn   r     s!     > >O >C >T >r#   c                	0    \         P                  ! WV4      # r.   )r   xrefblk_t_first_to)r   r   r   s   &&&r   first_toxrefblk_t.first_to  s    ++Du==r#   c                   V ^8  d   QhRR/# rj   rl   ru   r$   )rm   s   "r   rn   r     s     : : :r#   c                	2    \         P                  ! V .VO5!  # r.   )r   xrefblk_t_next_fromr   argss   &*r   	next_fromxrefblk_t.next_from      ,,T9D99r#   c                   V ^8  d   QhRR/# r   r$   )rm   s   "r   rn   r     s     8 8t 8r#   c                	2    \         P                  ! V .VO5!  # r.   )r   xrefblk_t_next_tor   s   &*r   next_toxrefblk_t.next_to  s    **47$77r#   c              #  p   "   \        V4      pV\        P                  8w  d   Vx  \        W4      pK&  R# 5i)zH
Provide an iterator on code references to ea including flow references
N)get_first_cref_to
ida_idaapiBADADDRget_next_cref_tor   rC   refs   && r   crefs_toxrefblk_t.crefs_to  3       #Z'''I"2+C (   46c              #  p   "   \        V4      pV\        P                  8w  d   Vx  \        W4      pK&  R# 5i)z.
Provide an iterator on code references to ea
N)get_first_fcref_tor   r   get_next_fcref_tor   s   && r   	fcrefs_toxrefblk_t.fcrefs_to$  s3      !$Z'''I#B,C (r   c              #  p   "   \        V4      pV\        P                  8w  d   Vx  \        W4      pK&  R# 5i)zJ
Provide an iterator on code references from ea including flow references
N)get_first_cref_fromr   r   get_next_cref_fromr   s   && r   
crefs_fromxrefblk_t.crefs_from-  3      ""%Z'''I$R-C (r   c              #  p   "   \        V4      pV\        P                  8w  d   Vx  \        W4      pK&  R# 5i)z0
Provide an iterator on code references from ea
N)get_first_fcref_fromr   r   get_next_fcref_fromr   s   && r   fcrefs_fromxrefblk_t.fcrefs_from6  s3      #2&Z'''I%b.C (r   c              #  p   "   \        V4      pV\        P                  8w  d   Vx  \        W4      pK&  R# 5i)z.
Provide an iterator on data references to ea
N)get_first_dref_tor   r   get_next_dref_tor   s   && r   drefs_toxrefblk_t.drefs_to?  r   r   c              #  p   "   \        V4      pV\        P                  8w  d   Vx  \        W4      pK&  R# 5i)z0
Provide an iterator on data references from ea
N)get_first_dref_fromr   r   get_next_dref_fromr   s   && r   
drefs_fromxrefblk_t.drefs_fromH  r   r   c              #     a "   V 3R lpS P                  W4      '       d-   V! 4       x  S P                  4       '       d   V! 4       x  K!  R# R# 5i)z;
Provide an iterator on from reference represented by flag
c            	     r   <  ! R R\         4      p V ! 4       pR F  p\        W\        SV4      4       K  	  V# )?Make a private copy of the xref class to preserve its contents c                      ] tR tRtRtR# )6xrefblk_t.refs_from.<locals>._copy_xref.<locals>._xrefiZ  r$   Nr   r   r8   r9   r<   r$   r#   r   _xrefr   Z      r#   r   rr   rt   r   r   r   objectsetattrr   r   xrattrr   s      r   
_copy_xref'xrefblk_t.refs_from.<locals>._copy_xrefV  7     B?'$"56 @Ir#   N)r   r   r   rC   flagr   s   f&& r   	refs_fromxrefblk_t.refs_fromQ  sC     
		 ??2$$,.."" l" # %   <A Ac              #     a "   V 3R lpS P                  W4      '       d-   V! 4       x  S P                  4       '       d   V! 4       x  K!  R# R# 5i)z9
Provide an iterator on to reference represented by flag
c            	     r   <  ! R R\         4      p V ! 4       pR F  p\        W\        SV4      4       K  	  V# )r   c                      ] tR tRtRtR# )4xrefblk_t.refs_to.<locals>._copy_xref.<locals>._xrefin  r$   Nr   r$   r#   r   r   r   n  r   r#   r   r   r   r   s      r   r   %xrefblk_t.refs_to.<locals>._copy_xrefj  r   r#   N)r   r   r   s   f&& r   refs_toxrefblk_t.refs_toe  sA     
		 =="",,,.. l" ! #r   c                	Z    \         P                  ! V \         P                  ! 4       4       R # r.   )r   xrefblk_t_swiginitnew_xrefblk_tr[   s   &r   r\   xrefblk_t.__init__y  s    $$T9+B+B+DEr#   r$   N)    ),r   r   r8   r9   r   r   r   r
   r   xrefblk_t_frm_getxrefblk_t_frm_setrr   r`   xrefblk_t_to_getxrefblk_t_to_setrt   xrefblk_t_iscode_getxrefblk_t_iscode_setr   xrefblk_t_type_getxrefblk_t_type_setr   xrefblk_t_user_getxrefblk_t_user_setr   xrefblk_t__flags_getxrefblk_t__flags_setr   r   r   r   r   r   r   r   r   r   r   r   r   r\   delete_xrefblk_trd   r<   r$   r#   r   r   r      sC   -/I!#GH#I$?$?C "9#=#=yB I::IFD Y999D' )66	D$ y==yFG B>:8,-./,.#(#(F 11r#   r   c                    V ^8  d   QhRRRR/# rj   rr   rs   rl   r$   )rm   s   "r   rn   rn          . ._ . .r#   c                .    \         P                  ! V 4      # )zGet first data referenced from the specified address. 
        
:returns: linear address of first (lowest) data referenced from the specified address. Return BADADDR if the specified instruction/data doesn't reference to anything.)r   r   rr   s   &r   r   r          ((--r#   c               $    V ^8  d   QhRRRRRR/# rj   rr   rs   currentrl   r$   )rm   s   "r   rn   rn     "     6 6O 6o 66r#   c                .    \         P                  ! W4      # )a  Get next data referenced from the specified address. 
        
:param current: linear address of current referenced data. This value is returned by get_first_dref_from() or previous call to get_next_dref_from() functions.
:returns: linear address of next data or BADADDR.)r   r   rr   r  s   &&r   r   r          ''55r#   c                    V ^8  d   QhRRRR/# rj   rt   rs   rl   r$   )rm   s   "r   rn   rn          + +/ +_ +r#   c                .    \         P                  ! V 4      # )zGet address of instruction/data referencing to the specified data. 
        
:param to: linear address of referencing instruction or data
:returns: BADADDR if nobody refers to the specified data.)r   r   rt   s   &r   r   r         
 &&r**r#   c               $    V ^8  d   QhRRRRRR/# rj   rt   rs   r  rl   r$   )rm   s   "r   rn   rn     "     3 3 3? 33r#   c                .    \         P                  ! W4      # )aJ  Get address of instruction/data referencing to the specified data 
        
:param to: linear address of referencing instruction or data
:param current: current linear address. This value is returned by get_first_dref_to() or previous call to get_next_dref_to() functions.
:returns: BADADDR if nobody refers to the specified data.)r   r   rt   r  s   &&r   r   r          %%b22r#   c                    V ^8  d   QhRRRR/# r  r$   )rm   s   "r   rn   rn     r  r#   c                .    \         P                  ! V 4      # )a  Get first instruction referenced from the specified instruction. If the specified instruction passes execution to the next instruction then the next instruction is returned. Otherwise the lowest referenced address is returned (remember that xrefs are kept sorted!). 
        
:returns: first referenced address. If the specified instruction doesn't reference to other instructions then returns BADADDR.)r   r   r  s   &r   r   r     r  r#   c               $    V ^8  d   QhRRRRRR/# r  r$   )rm   s   "r   rn   rn     r	  r#   c                .    \         P                  ! W4      # )a  Get next instruction referenced from the specified instruction. 
        
:param current: linear address of current referenced instruction This value is returned by get_first_cref_from() or previous call to get_next_cref_from() functions.
:returns: next referenced address or BADADDR.)r   r   r  s   &&r   r   r     r  r#   c                    V ^8  d   QhRRRR/# r  r$   )rm   s   "r   rn   rn     r  r#   c                .    \         P                  ! V 4      # )a  Get first instruction referencing to the specified instruction. If the specified instruction may be executed immediately after its previous instruction then the previous instruction is returned. Otherwise the lowest referencing address is returned. (remember that xrefs are kept sorted!). 
        
:param to: linear address of referenced instruction
:returns: linear address of the first referencing instruction or BADADDR.)r   r   r  s   &r   r   r     r  r#   c               $    V ^8  d   QhRRRRRR/# r  r$   )rm   s   "r   rn   rn     r  r#   c                .    \         P                  ! W4      # )af  Get next instruction referencing to the specified instruction. 
        
:param to: linear address of referenced instruction
:param current: linear address of current referenced instruction This value is returned by get_first_cref_to() or previous call to get_next_cref_to() functions.
:returns: linear address of the next referencing instruction or BADADDR.)r   r   r  s   &&r   r   r     r  r#   c                    V ^8  d   QhRRRR/# r  r$   )rm   s   "r   rn   rn     s     / /o / /r#   c                .    \         P                  ! V 4      # r.   )r   r   r  s   &r   r   r     s    ))#..r#   c               $    V ^8  d   QhRRRRRR/# r  r$   )rm   s   "r   rn   rn     s"     7 7_ 7 77r#   c                .    \         P                  ! W4      # r.   )r   r   r  s   &&r   r   r     s    ((66r#   c                    V ^8  d   QhRRRR/# r  r$   )rm   s   "r   rn   rn     s     , ,? ,o ,r#   c                .    \         P                  ! V 4      # r.   )r   r   r  s   &r   r   r     s    ''++r#   c               $    V ^8  d   QhRRRRRR/# r  r$   )rm   s   "r   rn   rn     s"     4 4/ 4O 44r#   c                .    \         P                  ! W4      # r.   )r   r   r  s   &&r   r   r     s    &&r33r#   c               $    V ^8  d   QhRRRRRR/# )rj   pfnz
'func_t *'rC   rs   rl   ru   r$   )rm   s   "r   rn   rn     s!     0 0: 0? 0d 0r#   c                .    \         P                  ! W4      # )z1Does 'ea' have references from outside of 'pfn'?
)r   has_external_refs)r*  rC   s   &&r   r,  r,    s     &&s//r#   c                    V ^8  d   QhRRRR/# )rj   rC   rs   rl   ru   r$   )rm   s   "r   rn   rn     s     / /o / /r#   c                .    \         P                  ! V 4      # )z)Are there jump or flow references to EA?
)r   has_jump_or_flow_xref)rC   s   &r   r/  r/    s     **2..r#   c               $    V ^8  d   QhRRRRRR/# )rj   jump_ears   rD   z'switch_info_t'rl   r   r$   )rm   s   "r   rn   rn     s!     6 6 6o 6 6r#   c                .    \         P                  ! W4      # r.   )r   delete_switch_table)r1  rD   s   &&r   r3  r3    s    ((55r#   c                     ] tR tRt]! R R RR7      t]tR t]	P                  tR R ltR	 R
 ltR R ltR R ltR R ltR R ltR R ltR R ltR R ltR R ltR R ltR R ltR R  ltR! R" ltR# R$ ltR% R& ltR' R( ltR) R* ltR+ R, ltR- R. ltR/ R0 lt R1 R2 lt!R3 R4 lt"R5 R6 lt#R7 R8 lt$R9 R: lt%R; R< lt&R= R> lt'R? R@ lt(RA RB lt)]*PV                  t,]*PZ                  t.]*P^                  t0RCt1RD# )E	casevec_ti  c                	6    V P                   P                  4       # r.   rH   rI   s   &r   rK   casevec_t.<lambda>  rM   r#   c                	8    V P                   P                  V4      # r.   rH   rO   s   &&r   rK   r7    rQ   r#   rR   rS   c                	X    \         P                  ! V \         P                  ! V!  4       R # r.   )r   casevec_t_swiginitnew_casevec_tr   s   &*r   r\   casevec_t.__init__  s    $$T9+B+BD+IJr#   c                   V ^8  d   QhRR/# )rj   rl   z'qvector< long long > &'r$   )rm   s   "r   rn   casevec_t.__annotate__  s     : :!9 :r#   c                	2    \         P                  ! V .VO5!  # r.   )r   casevec_t_push_backr   s   &*r   	push_backcasevec_t.push_back  r   r#   c                   V ^8  d   QhRR/# rj   rl   r   r$   )rm   s   "r   rn   r>  	       2 2 2r#   c                	.    \         P                  ! V 4      # r.   )r   casevec_t_pop_backr[   s   &r   pop_backcasevec_t.pop_back	      ++D11r#   c                   V ^8  d   QhRR/# rj   rl   r   r$   )rm   s   "r   rn   r>    s     . .S .r#   c                	.    \         P                  ! V 4      # r.   )r   casevec_t_sizer[   s   &r   sizecasevec_t.size  s    ''--r#   c                   V ^8  d   QhRR/# r   r$   )rm   s   "r   rn   r>         / /d /r#   c                	.    \         P                  ! V 4      # r.   )r   casevec_t_emptyr[   s   &r   emptycasevec_t.empty      ((..r#   c                    V ^8  d   QhRRRR/# )rj   _idxr   rl   'qvector< long long > const &'r$   )rm   s   "r   rn   r>    s     2 2s 2< 2r#   c                	.    \         P                  ! W4      # r.   )r   casevec_t_at)r   rY  s   &&r   atcasevec_t.at  s    %%d11r#   c                   V ^8  d   QhRR/# rD  r$   )rm   s   "r   rn   r>    s     0 0t 0r#   c                	.    \         P                  ! V 4      # r.   )r   casevec_t_qclearr[   s   &r   qclearcasevec_t.qclear  s    ))$//r#   c                   V ^8  d   QhRR/# rD  r$   )rm   s   "r   rn   r>    rR  r#   c                	.    \         P                  ! V 4      # r.   )r   casevec_t_clearr[   s   &r   clearcasevec_t.clear  rW  r#   c                   V ^8  d   QhRR/# rD  r$   )rm   s   "r   rn   r>    s     7 7d 7r#   c                	2    \         P                  ! V .VO5!  # r.   )r   casevec_t_resizer   s   &*r   resizecasevec_t.resize  s    ))$666r#   c                   V ^8  d   QhRR/# rD  r$   )rm   s   "r   rn   r>    s     5 5D 5r#   c                	2    \         P                  ! V .VO5!  # r.   )r   casevec_t_growr   s   &*r   growcasevec_t.grow      ''4t44r#   c                   V ^8  d   QhRR/# rL  r$   )rm   s   "r   rn   r>  !  s     2 2 2r#   c                	.    \         P                  ! V 4      # r.   )r   casevec_t_capacityr[   s   &r   capacitycasevec_t.capacity!  rJ  r#   c                    V ^8  d   QhRRRR/# )rj   cntr   rl   r   r$   )rm   s   "r   rn   r>  $  s     6 63 6$ 6r#   c                	.    \         P                  ! W4      # r.   )r   casevec_t_reserve)r   rz  s   &&r   reservecasevec_t.reserve$  s    **455r#   c                   V ^8  d   QhRR/# rD  r$   )rm   s   "r   rn   r>  '  rE  r#   c                	.    \         P                  ! V 4      # r.   )r   casevec_t_truncater[   s   &r   truncatecasevec_t.truncate'  rJ  r#   c                    V ^8  d   QhRRRR/# )rj   rrU   rl   r   r$   )rm   s   "r   rn   r>  *  s     1 1k 1T 1r#   c                	.    \         P                  ! W4      # r.   )r   casevec_t_swapr   r  s   &&r   swapcasevec_t.swap*      ''00r#   c                   V ^8  d   QhRR/# )rj   rl   'qvector< long long > *'r$   )rm   s   "r   rn   r>  -  s     1 10 1r#   c                	.    \         P                  ! V 4      # r.   )r   casevec_t_extractr[   s   &r   extractcasevec_t.extract-      **400r#   c               $    V ^8  d   QhRRRRRR/# )rj   sr  lenr   rl   r   r$   )rm   s   "r   rn   r>  0  s"     8 80 8s 8d 8r#   c                	0    \         P                  ! WV4      # r.   )r   casevec_t_inject)r   r  r  s   &&&r   injectcasevec_t.inject0  s    ))$377r#   c                    V ^8  d   QhRRRR/# rj   r  rU   rl   ru   r$   )rm   s   "r   rn   r>  3       3 3 3t 3r#   c                	.    \         P                  ! W4      # r.   )r   casevec_t___eq__r  s   &&r   __eq__casevec_t.__eq__3      ))$22r#   c                    V ^8  d   QhRRRR/# r  r$   )rm   s   "r   rn   r>  6  r  r#   c                	.    \         P                  ! W4      # r.   )r   casevec_t___ne__r  s   &&r   __ne__casevec_t.__ne__6  r  r#   c                   V ^8  d   QhRR/# rj   rl   z1'qvector< qvector< long long > >::const_iterator'r$   )rm   s   "r   rn   r>  9  s     6 6N 6r#   c                	2    \         P                  ! V .VO5!  # r.   )r   casevec_t_beginr   s   &*r   begincasevec_t.begin9      ((555r#   c                   V ^8  d   QhRR/# r  r$   )rm   s   "r   rn   r>  <  s     4 4L 4r#   c                	2    \         P                  ! V .VO5!  # r.   )r   casevec_t_endr   s   &*r   endcasevec_t.end<  s    &&t3d33r#   c               $    V ^8  d   QhRRRRRR/# )rj   it+'qvector< qvector< long long > >::iterator'rJ   rZ  rl   r$   )rm   s   "r   rn   r>  ?  s$     7 7D 7&777r#   c                	0    \         P                  ! WV4      # r.   )r   casevec_t_insert)r   r  rJ   s   &&&r   insertcasevec_t.insert?  s     ))$A66r#   c                   V ^8  d   QhRR/# )rj   rl   r  r$   )rm   s   "r   rn   r>  D  s     6 6H 6r#   c                	2    \         P                  ! V .VO5!  # r.   )r   casevec_t_eraser   s   &*r   erasecasevec_t.eraseD  r  r#   c                   V ^8  d   QhRR/# r  r$   )rm   s   "r   rn   r>  G  s     5 5M 5r#   c                	2    \         P                  ! V .VO5!  # r.   )r   casevec_t_findr   s   &*r   findcasevec_t.findG  rs  r#   c                    V ^8  d   QhRRRR/# rj   rJ   rZ  rl   ru   r$   )rm   s   "r   rn   r>  J  s     0 03 0t 0r#   c                	.    \         P                  ! W4      # r.   )r   casevec_t_hasr   rJ   s   &&r   hascasevec_t.hasJ  s    &&t//r#   c                    V ^8  d   QhRRRR/# r  r$   )rm   s   "r   rn   r>  M  s     7 7: 7d 7r#   c                	.    \         P                  ! W4      # r.   )r   casevec_t_add_uniquer  s   &&r   
add_uniquecasevec_t.add_uniqueM  s    --d66r#   c                    V ^8  d   QhRRRR/# r  r$   )rm   s   "r   rn   r>  P  s     1 14 1 1r#   c                	.    \         P                  ! W4      # r.   )r   casevec_t__delr  s   &&r   _delcasevec_t._delP  r  r#   c                   V ^8  d   QhRR/# rL  r$   )rm   s   "r   rn   r>  S  s     1 1 1r#   c                	.    \         P                  ! V 4      # r.   )r   casevec_t___len__r[   s   &r   __len__casevec_t.__len__S  r  r#   c                    V ^8  d   QhRRRR/# )rj   ir   rl   rZ  r$   )rm   s   "r   rn   r>  V  s     8 8S 8$B 8r#   c                	.    \         P                  ! W4      # r.   )r   casevec_t___getitem__)r   r  s   &&r   __getitem__casevec_t.__getitem__V  s    ..t77r#   c               $    V ^8  d   QhRRRRRR/# )rj   r  r   rP   rZ  rl   r   r$   )rm   s   "r   rn   r>  Y  s"     ; ;S ;%C ;t ;r#   c                	0    \         P                  ! WV4      # r.   )r   casevec_t___setitem__)r   r  rP   s   &&&r   __setitem__casevec_t.__setitem__Y  s    ..t::r#   c                    V ^8  d   QhRRRR/# )rj   rJ   rZ  rl   r   r$   )rm   s   "r   rn   r>  \  s     3 36 3$ 3r#   c                	.    \         P                  ! W4      # r.   )r   casevec_t_appendr  s   &&r   appendcasevec_t.append\  r  r#   c                    V ^8  d   QhRRRR/# )rj   rJ   rU   rl   r   r$   )rm   s   "r   rn   r>  _  r  r#   c                	.    \         P                  ! W4      # r.   )r   casevec_t_extendr  s   &&r   extendcasevec_t.extend_  r  r#   r$   N)2r   r   r8   r9   r   r   r   r
   r\   r   delete_casevec_trd   rA  rH  rO  rU  r]  rb  rg  rl  rq  rw  r}  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   _qvector_frontfront_qvector_backback_bounded_getitem_iterator__iter__r<   r$   r#   r   r5  r5    s    -/I!#GHK 11:2./20/7526211833647
6507118;33%%E##D33Hr#   r5  )Tr:   
__future__r   sysr   _swig_python_version_info__package__r   r   r   builtinsr   ImportErrorr   r%   r+   r5   r   r7   weakrefSWIG_PYTHON_LEGACY_BOOLtypingr=   r>   r?   r   rA   r   rF    cases_and_targets_t_swigregisterrf   rh   fl_Ufl_CFfl_CNfl_JFfl_JNfl_USobsoletefl_Fdr_Udr_Odr_Wdr_Rdr_Tdr_Idr_S	XREF_USER	XREF_TAIL	XREF_BASE	XREF_MASKXREF_PASTENDrp   rx   r~   r   r   r   xrefblk_t_swigregister	XREF_FLOWXREF_NOFLOW	XREF_DATA	XREF_CODEXREF_EAXREF_TIDr   r   r   r   r   r   r   r   r   r   r   r   r,  r/  r3  XREF_ALLXREF_FARr5  casevec_t_swigregister_listify_typesr$   r#   r   <module>r     s  C  # 9#/"
 L$ L
 #;;  % % 1<& < 
 * *+> ?/$1 ~~''~~~~~~~~~~~~~~~~				%%&-/-'E2 E2P 
     +	##		


.6+3.6+3/7
,4
0/6 f4 f4R 
     +  
  ) $c  s   J4 4KK