+
    i                       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 R ltRR R lltR R ltR R ltRR R lltR R ltR R l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                  t2R#   ] d	    ^ RIt EL[i ; i)a  Functions that deal with the list of problems.

There are several problem lists. An address may be inserted to any list. The kernel simply maintains these lists, no additional processing is done.
The problem lists are accessible for the user from the View->Subviews->Problems menu item.
Addresses in the lists are kept sorted. In general IDA just maintains these lists without using them during analysis (except PR_ROLLED).
)annotations)version_info.)_ida_problemsNc                     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   & DC:\Users\user\Downloads\ida93sp2\portable_win\python\ida_problems.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_attr.   s:    3j1CX&N&N5! !H3!NOOr#   r$   )r    r)   s   f r   '_swig_setattr_nondynamic_class_variabler+   ,   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>.wrapper9   s'    s}}cll6G6G6IJJr#   r$   )r2   r3   s   f r   _swig_add_metaclassr5   6   s    KNr#   c                  >    ] tR t^>t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   >   s    U9$:J:JKKr#   r7   )TupleListUnionc               $    V ^8  d   QhRRRRRR/# )   t'problist_id_t'eaida_idaapi.ea_treturnstrr$   )formats   "r   __annotate__rI   I   s!     1 1 1_ 1 1r#   c                .    \         P                  ! W4      # )zGet the human-friendly description of the problem, if one was provided to remember_problem. 
        
:param t: problem list type.
:param ea: linear address.
:returns: the message length or -1 if none)r   get_problem_descrB   rD   s   &&r   rK   rK   I   s     ))!00r#   c               (    V ^8  d   QhRRRRRRRR/# )	rA   r   rC   rD   rE   msgrG   rF   Noner$   )rH   s   "r   rI   rI   R   s)     9 9? 9 9c 99r#   c                0    \         P                  ! WV4      # )ai  Insert an address to a list of problems. Display a message saying about the problem (except of PR_ATTN,PR_FINAL) PR_JUMP is temporarily ignored. 
        
:param type: problem list type
:param ea: linear address
:param msg: a user-friendly message to be displayed instead of the default more generic one associated with the type of problem. Defaults to nullptr.)r   remember_problem)r   rD   rN   s   &&&r   rQ   rQ   R   s     ))$C88r#   c               $    V ^8  d   QhRRRRRR/# )rA   r   rC   lowearE   rF   r$   )rH   s   "r   rI   rI   \   s"     2 2o 2o 22r#   c                .    \         P                  ! W4      # )zGet an address from the specified problem list. The address is not removed from the list. 
        
:param type: problem list type
:param lowea: the returned address will be higher or equal than the specified address
:returns: linear address or BADADDR)r   get_problem)r   rS   s   &&r   rU   rU   \   s     $$T11r#   c               $    V ^8  d   QhRRRRRR/# )rA   r   rC   rD   rE   rF   boolr$   )rH   s   "r   rI   rI   f   s!     2 2 2o 2 2r#   c                .    \         P                  ! W4      # )zzRemove an address from a problem list 
        
:param type: problem list type
:param ea: linear address
:returns: success)r   forget_problem)r   rD   s   &&r   rY   rY   f   s     ''11r#   c               $    V ^8  d   QhRRRRRR/# )rA   r   rC   longnamerW   rF   rG   r$   )rH   s   "r   rI   rI   o   s!     : :? :d :3 :r#   c                .    \         P                  ! W4      # )zGet problem list description.
)r   get_problem_name)r   r[   s   &&r   r]   r]   o   s     ))$99r#   c               $    V ^8  d   QhRRRRRR/# )rA   rB   rC   rD   rE   rF   rW   r$   )rH   s   "r   rI   rI   u   s!     3 3/ 3 3$ 3r#   c                .    \         P                  ! W4      # )z?Check if the specified address is present in the problem list.
)r   is_problem_presentrL   s   &&r   r`   r`   u   s     ++A22r#   c                    V ^8  d   QhRRRR/# )rA   rD   rE   rF   rW   r$   )rH   s   "r   rI   rI   {   s     . . .D .r#   c                .    \         P                  ! V 4      # r.   )r   was_ida_decision)rD   s   &r   rc   rc   {   s    ))"--r#   r.   )T)3r:   
__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?   
ida_idaapirK   rQ   rU   rY   r]   r`   rc   cvar	PR_NOBASE	PR_NONAMEPR_NOFOPPR_NOCMT
PR_NOXREFSPR_JUMP	PR_DISASMPR_HEAD
PR_ILLADDRPR_MANYLINESPR_BADSTACKPR_ATTNPR_FINAL	PR_ROLLEDPR_COLLISION	PR_DECIMPPR_ENDr$   r#   r   <module>r      s   # 9#/"
 L$ L
 '??  % % 1922:3. NN	NN	====__

,,NN	
,,__
  
,,==NN	  NN		E  s   E; ;F
	F
