+
    iP                       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]	P4                  t ]	P6                  t ! R R]4      t]	P<                  ! ]4       ]	P>                  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.R R lt/]P^                  t0R#   ] d	    ^ RIt ELVi ; i)aD  Functions that provide the lowest level public interface to the database. Namely, we use Btree. To learn more about BTree:

[https://en.wikipedia.org/wiki/B-tree](https://en.wikipedia.org/wiki/B-tree)
We do not use Btree directly. Instead, we have another layer built on the top of Btree. Here is a brief explanation of this layer.
An object called "netnode" is modeled on the top of Btree. Each netnode has a unique id: a 32-bit value (64-bit for ida64). Initially there is a trivial mapping of the linear addresses used in the program to netnodes (later this mapping may be modified using ea2node and node2ea functions; this is used for fast database rebasings). If we have additional information about an address (for example, a comment is attached to it), this information is stored in the corresponding netnode. See nalt.hpp to see how the kernel uses netnodes. Also, some netnodes have no corresponding linear address (however, they still have an id). They are used to store information not related to a particular address.
Each netnode _may_ have the following attributes:

* a name: an arbitrary non-empty string, up to 255KB-1 bytes
* a value: arbitrary sized object, max size is MAXSPECSIZE
* altvals: a sparse array of 32-bit values. indexes in this array may be 8-bit or 32-bit values
* supvals: an array of arbitrary sized objects. (size of each object is limited by MAXSPECSIZE) indexes in this array may be 8-bit or 32-bit values
* charvals: a sparse array of 8-bit values. indexes in this array may be 8-bit or 32-bit values
* hashvals: a hash (an associative array). indexes in this array are strings values are arbitrary sized (max size is MAXSPECSIZE)


Initially a new netnode contains no information at all so no disk space is used for it. As you add new information, the netnode grows.
All arrays that are attached to the netnode behave in the same manner. Initially:
* all members of altvals/charvals array are zeroes
* all members of supvals/hashvals array are undefined


If you need to store objects bigger that MAXSPECSIZE, please note that there are high-level functions to store arbitrary sized objects in supvals. See setblob/getblob and other blob-related functions.
You may use netnodes to store additional information about the program. Limitations on the use of netnodes are the following:

* use netnodes only if you could not find a kernel service to store your type of information
* do not create netnodes with valid identifier names. Use the "$ " prefix (or any other prefix with characters not allowed in the identifiers for the names of your netnodes. Although you will probably not destroy anything by accident, using already defined names for the names of your netnodes is still discouraged.
* you may create as many netnodes as you want (creation of an unnamed netnode does not increase the size of the database). however, since each netnode has a number, creating too many netnodes could lead to the exhaustion of the netnode numbers (the numbering starts at 0xFF000000)
* remember that netnodes are automatically saved to the disk by the kernel.


Advanced info:
In fact a netnode may contain up to 256 arrays of arbitrary sized objects (not only the 4 listed above). Each array has an 8-bit tag. Usually tags are represented by character constants. For example, altvals and supvals are simply 2 of 256 arrays, with the tags 'A' and 'S' respectively.
)annotations)version_info.)_ida_netnodeNc                     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   & CC:\Users\user\Downloads\ida93sp2\portable_win\python\ida_netnode.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_attr9   su    6>E"YIIMM% T  ZT
D0I& &E" !K"       )r    r!   s   f r   *_swig_setattr_nondynamic_instance_variabler%   7   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_attrI   s:    3j1CX&N&N5! !H3!NOOr#   r$   )r    r)   s   f r   '_swig_setattr_nondynamic_class_variabler+   G   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>.wrapperT   s'    s}}cll6G6G6IJJr#   r$   )r2   r3   s   f r   _swig_add_metaclassr5   Q   s    KNr#   c                  >    ] tR t^Yt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   Y   s    U9$:J:JKKr#   r7   )TupleListUnionc                     ] tR t^ht]! R R RR7      t]tR t]	R R l4       t
R R	 ltR
 R ltR R ltRR R l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R0 R1 ltR2 R3 lt R4 R5 lt!R6 R7 lt"R8 R9 lt#R: R; lt$R< R= lt%R> R? lt&R@ RA lt'RB RC lt(RD RE lt)RF RG lt*RH RI lt+RJ RK lt,RL RM lt-RN RO lt.RP RQ lt/RR RS lt0RT RU lt1RV RW lt2RX RY lt3RZ R[ lt4R\ R] lt5R^ R_ lt6R` Ra lt7Rb Rc lt8Rd Re lt9Rf Rg lt:Rh Ri lt;Rj Rk lt<Rl Rm lt=Rn Ro lt>Rp Rq lt?Rr Rs lt@Rt Ru ltARv Rw ltBRx Ry ltCRz R{ ltDR| R} ltER~ R ltFR R ltGR R ltHR R ltIR R ltJR R ltKR R ltLR R ltMR R ltNR R ltOR R ltPR R ltQR R ltRR R ltSR R ltTR R ltUR R ltVR R ltWR R ltXR R ltYR R ltZR 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taR R ltbR R ltcR R ltdR R lteR R ltfR R ltgR R lthR R ltiR R ltjR R ltkR R ltlR R ltmR R ltnR R ltoR R ltpR R ltqRR R lltrRR R lltsR R lttR R ltuR R ltvR R ltwR R ltxR R ltyR R ltzR R lt{R R lt|R R lt}]~P                  tRtR# )netnodec                	6    V P                   P                  4       # r.   r	   r   )xs   &r   <lambda>netnode.<lambda>i   s    r#   c                	8    V P                   P                  V4      # r.   rC   )rD   vs   &&r   rE   rF   i   s    AFFJJqMr#   zThe membership flag)docc                	X    \         P                  ! V \         P                  ! V!  4       R # r.   )r   netnode_swiginitnew_netnoder   argss   &*r   __init__netnode.__init__m   s    %%dL,D,Dd,KLr#   c                    V ^8  d   QhRRRR/# )   _namestrreturnboolr$   )formats   "r   __annotate__netnode.__annotate__q   s     1 1S 1D 1r#   c                .    \         P                  ! V 4      # )z0Does the netnode with the specified name exist?
)r   netnode_exist)rS   s   &r   existnetnode.existp   s     ))%00r#   c                   V ^8  d   QhRR/# rR   rU   rV   r$   )rW   s   "r   rX   rY   v        8 8d 8r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_createrM   s   &*r   createnetnode.createv       **47$77r#   c                   V ^8  d   QhRR/# )rR   rU   Noner$   )rW   s   "r   rX   rY   y        / /T /r#   c                	.    \         P                  ! V 4      # r.   )r   netnode_killr   s   &r   killnetnode.killy       ((..r#   c                   V ^8  d   QhRR/# rR   rU   	'ssize_t'r$   )rW   s   "r   rX   rY   |   s     3 3 3r#   c                	.    \         P                  ! V 4      # r.   )r   netnode_get_namerk   s   &r   get_namenetnode.get_name|       ,,T22r#   c               $    V ^8  d   QhRRRRRR/# )rR   newnamerT   namlenintrU   rV   r$   )rW   s   "r   rX   rY      s&     B Bc B3 BD Br#   c                	0    \         P                  ! WV4      # r.   )r   netnode_rename)r   rx   ry   s   &&&r   renamenetnode.rename   s    **4&AAr#   c                   V ^8  d   QhRR/# rp   r$   )rW   s   "r   rX   rY           8 8i 8r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_valobjrM   s   &*r   valobjnetnode.valobj   re   r#   c                   V ^8  d   QhRR/# rp   r$   )rW   s   "r   rX   rY      s     1 1y 1r#   c                	.    \         P                  ! V 4      # r.   )r   netnode_valstrrk   s   &r   valstrnetnode.valstr   s    **400r#   c                    V ^8  d   QhRRRR/# )rR   r   'void const *'rU   rV   r$   )rW   s   "r   rX   rY      s     5 5 54 5r#   c                	.    \         P                  ! W4      # r.   )r   netnode_set)r   r   s   &&r   r    netnode.set   s    ''44r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY      s     3 3 3r#   c                	.    \         P                  ! V 4      # r.   )r   netnode_delvaluerk   s   &r   delvaluenetnode.delvalue   rv   r#   c                    V ^8  d   QhRRRR/# )rR   rD   'nodeidx_t'rU   rV   r$   )rW   s   "r   rX   rY      s     6 6+ 6 6r#   c                	.    \         P                  ! W4      # r.   )r   netnode_set_long)r   rD   s   &&r   set_longnetnode.set_long   s    ,,T55r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY      s     7 7T 7r#   c                	.    \         P                  ! V 4      # r.   )r   netnode_value_existsrk   s   &r   value_existsnetnode.value_exists   s    0066r#   c                   V ^8  d   QhRR/# rR   rU   r   r$   )rW   s   "r   rX   rY      s     5 5; 5r#   c                	.    \         P                  ! V 4      # r.   )r   netnode_long_valuerk   s   &r   
long_valuenetnode.long_value   s    ..t44r#   c                   V ^8  d   QhRR/# r   r$   )rW   s   "r   rX   rY      s     8 8k 8r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_altvalrM   s   &*r   altvalnetnode.altval   re   r#   c                   V ^8  d   QhRR/# r   r$   )rW   s   "r   rX   rY      s     ; ; ;r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_altval_earM   s   &*r   	altval_eanetnode.altval_ea       --d:T::r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY      r`   r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_altsetrM   s   &*r   altsetnetnode.altset   re   r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY           ; ; ;r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_altset_earM   s   &*r   	altset_eanetnode.altset_ea   r   r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY      r   r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_altdel_earM   s   &*r   	altdel_eanetnode.altdel_ea   r   r#   c               (    V ^8  d   QhRRRRRRRR/# )rR   eaida_idaapi.ea_taddrtag'uchar'rU   rV   r$   )rW   s   "r   rX   rY      s)     ? ? ? ?W ??r#   c                	0    \         P                  ! WW#4      # r.   )r   netnode_easet)r   r   r   r   s   &&&&r   easetnetnode.easet   s    ))$D>>r#   c               $    V ^8  d   QhRRRRRR/# rR   r   r   r   r   rU   r$   )rW   s   "r   rX   rY      s!     9 9 9g 9 9r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_eagetr   r   r   s   &&&r   eagetnetnode.eaget       ))$C88r#   c               $    V ^8  d   QhRRRRRR/# rR   r   r   r   r   rU   rV   r$   )rW   s   "r   rX   rY      s!     9 9 9g 9 9r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_eadelr   s   &&&r   eadelnetnode.eadel   r   r#   c               (    V ^8  d   QhRRRRRRRR/# )	rR   idxr   r   r   r   r   rU   rV   r$   )rW   s   "r   rX   rY      s/     D D[ D Dg DDr#   c                	0    \         P                  ! WW#4      # r.   )r   netnode_easet_idxr   r   r   r   s   &&&&r   	easet_idxnetnode.easet_idx   s    --dCCr#   c               $    V ^8  d   QhRRRRRR/# )rR   r   r   r   r   rU   r   r$   )rW   s   "r   rX   rY      s!     > >[ >w >/ >r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_eaget_idxr   r   r   s   &&&r   	eaget_idxnetnode.eaget_idx   s    --d==r#   c               (    V ^8  d   QhRRRRRRRR/# )rR   r   r   r   r   r   rU   rV   r$   )rW   s   "r   rX   rY      s/     E Eg E_ E7 EEr#   c                	0    \         P                  ! WW#4      # r.   )r   netnode_easet_idx8r   s   &&&&r   
easet_idx8netnode.easet_idx8   s    ..t$DDr#   c               $    V ^8  d   QhRRRRRR/# )rR   r   r   r   rU   r   r$   )rW   s   "r   rX   rY      s!     ? ?g ?G ? ?r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_eaget_idx8r   s   &&&r   
eaget_idx8netnode.eaget_idx8       ..t#>>r#   c               $    V ^8  d   QhRRRRRR/# )rR   r   r   r   rU   rV   r$   )rW   s   "r   rX   rY      s!     ? ?g ?G ?t ?r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_eadel_idx8r   s   &&&r   
eadel_idx8netnode.eadel_idx8   r   r#   c                   V ^8  d   QhRR/# r   r$   )rW   s   "r   rX   rY           : : :r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_altfirstrM   s   &*r   altfirstnetnode.altfirst       ,,T9D99r#   c                   V ^8  d   QhRR/# r   r$   )rW   s   "r   rX   rY           9 9{ 9r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_altnextrM   s   &*r   altnextnetnode.altnext       ++D8488r#   c                   V ^8  d   QhRR/# r   r$   )rW   s   "r   rX   rY      r   r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_altlastrM   s   &*r   altlastnetnode.altlast   r  r#   c                   V ^8  d   QhRR/# r   r$   )rW   s   "r   rX   rY      r   r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_altprevrM   s   &*r   altprevnetnode.altprev   r  r#   c                   V ^8  d   QhRR/# rR   rU   rz   r$   )rW   s   "r   rX   rY           : : :r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_altshiftrM   s   &*r   altshiftnetnode.altshift   r   r#   c               $    V ^8  d   QhRRRRRR/# )rR   altr   r   r   rU   r$   )rW   s   "r   rX   rY      s!     < <; <W < <r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_charvalr   r  r   s   &&&r   charvalnetnode.charval       ++Ds;;r#   c               (    V ^8  d   QhRRRRRRRR/# )rR   r  r   valr   r   rU   rV   r$   )rW   s   "r   rX   rY      s.     A A; AW A7 Ad Ar#   c                	0    \         P                  ! WW#4      # r.   )r   netnode_charsetr   r  r  r   s   &&&&r   charsetnetnode.charset   s    ++Ds@@r#   c               $    V ^8  d   QhRRRRRR/# )rR   r  r   r   r   rU   rV   r$   )rW   s   "r   rX   rY      s!     < <; <W < <r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_chardelr  s   &&&r   chardelnetnode.chardel   r  r#   c               $    V ^8  d   QhRRRRRR/# r   r$   )rW   s   "r   rX   rY      s!     > >_ >7 >g >r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_charval_ear   s   &&&r   
charval_eanetnode.charval_ea       ..t==r#   c               (    V ^8  d   QhRRRRRRRR/# )rR   r   r   r  r   r   rU   rV   r$   )rW   s   "r   rX   rY      s/     C C_ C7 C CCr#   c                	0    \         P                  ! WW#4      # r.   )r   netnode_charset_ea)r   r   r  r   s   &&&&r   
charset_eanetnode.charset_ea   s    ..tBBr#   c               $    V ^8  d   QhRRRRRR/# r   r$   )rW   s   "r   rX   rY      s!     > >_ >7 >d >r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_chardel_ear   s   &&&r   
chardel_eanetnode.chardel_ea   r-  r#   c                    V ^8  d   QhRRRR/# rR   r   r   rU   r   r$   )rW   s   "r   rX   rY      s     9 9W 9 9r#   c                	.    \         P                  ! W4      # r.   )r   netnode_charfirstr   r   s   &&r   	charfirstnetnode.charfirst   s    --d88r#   c               $    V ^8  d   QhRRRRRR/# rR   curr   r   r   rU   r$   )rW   s   "r   rX   rY      !     = =K =g = =r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_charnextr   rA  r   s   &&&r   charnextnetnode.charnext       ,,T<<r#   c                    V ^8  d   QhRRRR/# r9  r$   )rW   s   "r   rX   rY      s     8 8G 8{ 8r#   c                	.    \         P                  ! W4      # r.   )r   netnode_charlastr<  s   &&r   charlastnetnode.charlast   s    ,,T77r#   c               $    V ^8  d   QhRRRRRR/# r@  r$   )rW   s   "r   rX   rY      rB  r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_charprevrE  s   &&&r   charprevnetnode.charprev   rH  r#   c          
     ,    V ^8  d   QhRRRRRRRRRR/# 	rR   _fromr   tosizer   r   rU   rz   r$   )rW   s   "r   rX   rY      9     J J{ J JJ!J%(Jr#   c                	2    \         P                  ! WW#V4      # r.   )r   netnode_charshiftr   rU  rV  rW  r   s   &&&&&r   	charshiftnetnode.charshift       --d2SIIr#   c               $    V ^8  d   QhRRRRRR/# rR   r  r   r   rU   r   r$   )rW   s   "r   rX   rY      s&     @ @w @W @ @r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_altval_idx8r  s   &&&r   altval_idx8netnode.altval_idx8       //3??r#   c               (    V ^8  d   QhRRRRRRRR/# )rR   r  r   r  r   r   rU   rV   r$   )rW   s   "r   rX   rY      s.     E Ew E[ Ew E$ Er#   c                	0    \         P                  ! WW#4      # r.   )r   netnode_altset_idx8r   s   &&&&r   altset_idx8netnode.altset_idx8   s    //3DDr#   c               $    V ^8  d   QhRRRRRR/# rR   r  r   r   rU   rV   r$   )rW   s   "r   rX   rY      &     @ @w @W @ @r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_altdel_idx8r  s   &&&r   altdel_idx8netnode.altdel_idx8   re  r#   c                    V ^8  d   QhRRRR/# r9  r$   )rW   s   "r   rX   rY           = = =K =r#   c                	.    \         P                  ! W4      # r.   )r   netnode_altfirst_idx8r<  s   &&r   altfirst_idx8netnode.altfirst_idx8       11$<<r#   c               $    V ^8  d   QhRRRRRR/# rR   rA  r   r   rU   r   r$   )rW   s   "r   rX   rY      &     A A Ag A Ar#   c                	0    \         P                  ! WV4      # r.   )r   netnode_altnext_idx8rE  s   &&&r   altnext_idx8netnode.altnext_idx8       00C@@r#   c                    V ^8  d   QhRRRR/# r9  r$   )rW   s   "r   rX   rY          < < <; <r#   c                	.    \         P                  ! W4      # r.   )r   netnode_altlast_idx8r<  s   &&r   altlast_idx8netnode.altlast_idx8      00;;r#   c               $    V ^8  d   QhRRRRRR/# rz  r$   )rW   s   "r   rX   rY     r{  r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_altprev_idx8rE  s   &&&r   altprev_idx8netnode.altprev_idx8  r  r#   c               $    V ^8  d   QhRRRRRR/# )rR   r  r   r   rU   r$   )rW   s   "r   rX   rY     s&     A A Ag A Ar#   c                	0    \         P                  ! WV4      # r.   )r   netnode_charval_idx8r  s   &&&r   charval_idx8netnode.charval_idx8  r  r#   c               (    V ^8  d   QhRRRRRRRR/# )rR   r  r   r  r   rU   rV   r$   )rW   s   "r   rX   rY     s.     F F Fg FG Ft Fr#   c                	0    \         P                  ! WW#4      # r.   )r   netnode_charset_idx8r   s   &&&&r   charset_idx8netnode.charset_idx8  s    00CEEr#   c               $    V ^8  d   QhRRRRRR/# rl  r$   )rW   s   "r   rX   rY     s&     A A Ag A Ar#   c                	0    \         P                  ! WV4      # r.   )r   netnode_chardel_idx8r  s   &&&r   chardel_idx8netnode.chardel_idx8  r  r#   c                    V ^8  d   QhRRRR/# r9  r$   )rW   s   "r   rX   rY     s     > >' >[ >r#   c                	.    \         P                  ! W4      # r.   )r   netnode_charfirst_idx8r<  s   &&r   charfirst_idx8netnode.charfirst_idx8  s    224==r#   c               $    V ^8  d   QhRRRRRR/# rz  r$   )rW   s   "r   rX   rY     &     B B Bw B+ Br#   c                	0    \         P                  ! WV4      # r.   )r   netnode_charnext_idx8rE  s   &&&r   charnext_idx8netnode.charnext_idx8      11$SAAr#   c                    V ^8  d   QhRRRR/# r9  r$   )rW   s   "r   rX   rY     rs  r#   c                	.    \         P                  ! W4      # r.   )r   netnode_charlast_idx8r<  s   &&r   charlast_idx8netnode.charlast_idx8  rx  r#   c               $    V ^8  d   QhRRRRRR/# rz  r$   )rW   s   "r   rX   rY     r  r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_charprev_idx8rE  s   &&&r   charprev_idx8netnode.charprev_idx8  r  r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY     r`   r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_altdelrM   s   &*r   altdelnetnode.altdel  re   r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY      s     < <$ <r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_altdel_allrM   s   &*r   
altdel_allnetnode.altdel_all   s    ..t;d;;r#   c                   V ^8  d   QhRR/# rp   r$   )rW   s   "r   rX   rY   #  r   r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_supvalrM   s   &*r   supvalnetnode.supval#  re   r#   c                   V ^8  d   QhRR/# rp   r$   )rW   s   "r   rX   rY   &       ; ; ;r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_supval_earM   s   &*r   	supval_eanetnode.supval_ea&  r   r#   c                   V ^8  d   QhRR/# rp   r$   )rW   s   "r   rX   rY   )  r   r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_supstrrM   s   &*r   supstrnetnode.supstr)  re   r#   c                   V ^8  d   QhRR/# rp   r$   )rW   s   "r   rX   rY   ,  r  r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_supstr_earM   s   &*r   	supstr_eanetnode.supstr_ea,  r   r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY   /  r   r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_supdel_earM   s   &*r   	supdel_eanetnode.supdel_ea/  r   r#   c                   V ^8  d   QhRR/# r   r$   )rW   s   "r   rX   rY   2  s     = =; =r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_lower_boundrM   s   &*r   lower_boundnetnode.lower_bound2      //<t<<r#   c                   V ^8  d   QhRR/# r   r$   )rW   s   "r   rX   rY   5  s     @ @k @r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_lower_bound_earM   s   &*r   lower_bound_eanetnode.lower_bound_ea5  s    224?$??r#   c                   V ^8  d   QhRR/# r   r$   )rW   s   "r   rX   rY   8  r   r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_supfirstrM   s   &*r   supfirstnetnode.supfirst8  r   r#   c                   V ^8  d   QhRR/# r   r$   )rW   s   "r   rX   rY   ;  r   r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_supnextrM   s   &*r   supnextnetnode.supnext;  r  r#   c                   V ^8  d   QhRR/# r   r$   )rW   s   "r   rX   rY   >  r   r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_suplastrM   s   &*r   suplastnetnode.suplast>  r  r#   c                   V ^8  d   QhRR/# r   r$   )rW   s   "r   rX   rY   A  r   r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_supprevrM   s   &*r   supprevnetnode.supprevA  r  r#   c                   V ^8  d   QhRR/# r  r$   )rW   s   "r   rX   rY   D  r  r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_supshiftrM   s   &*r   supshiftnetnode.supshiftD  r   r#   c                   V ^8  d   QhRR/# rp   r$   )rW   s   "r   rX   rY   G  s     = =9 =r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_supval_idx8rM   s   &*r   supval_idx8netnode.supval_idx8G  r  r#   c               $    V ^8  d   QhRRRRRR/# )rR   r  r   r   rU   rq   r$   )rW   s   "r   rX   rY   J  s&     @ @w @W @	 @r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_supstr_idx8r  s   &&&r   supstr_idx8netnode.supstr_idx8J  re  r#   c               (    V ^8  d   QhRRRRRRRR/# )rR   r  r   r   r   r   rU   rV   r$   )rW   s   "r   rX   rY   M  s/     G Gw G~ GG GGr#   c                	0    \         P                  ! WW#4      # r.   )r   netnode_supset_idx8)r   r  r   r   s   &&&&r   supset_idx8netnode.supset_idx8M  s    //5FFr#   c               $    V ^8  d   QhRRRRRR/# rl  r$   )rW   s   "r   rX   rY   Q  rm  r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_supdel_idx8r  s   &&&r   supdel_idx8netnode.supdel_idx8Q  re  r#   c               $    V ^8  d   QhRRRRRR/# r`  r$   )rW   s   "r   rX   rY   T  s&     E EG E' E[ Er#   c                	0    \         P                  ! WV4      # r.   )r   netnode_lower_bound_idx8r  s   &&&r   lower_bound_idx8netnode.lower_bound_idx8T  s    44TDDr#   c                    V ^8  d   QhRRRR/# r9  r$   )rW   s   "r   rX   rY   W  rs  r#   c                	.    \         P                  ! W4      # r.   )r   netnode_supfirst_idx8r<  s   &&r   supfirst_idx8netnode.supfirst_idx8W  rx  r#   c               $    V ^8  d   QhRRRRRR/# r`  r$   )rW   s   "r   rX   rY   Z  r{  r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_supnext_idx8r  s   &&&r   supnext_idx8netnode.supnext_idx8Z  r  r#   c                    V ^8  d   QhRRRR/# r9  r$   )rW   s   "r   rX   rY   ]  r  r#   c                	.    \         P                  ! W4      # r.   )r   netnode_suplast_idx8r<  s   &&r   suplast_idx8netnode.suplast_idx8]  r  r#   c               $    V ^8  d   QhRRRRRR/# r`  r$   )rW   s   "r   rX   rY   `  r{  r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_supprev_idx8r  s   &&&r   supprev_idx8netnode.supprev_idx8`  r  r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY   c  r`   r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_supdelrM   s   &*r   supdelnetnode.supdelc  re   r#   c                    V ^8  d   QhRRRR/# )rR   r   r   rU   rV   r$   )rW   s   "r   rX   rY   f  s     : :g : :r#   c                	.    \         P                  ! W4      # r.   )r   netnode_supdel_allr<  s   &&r   
supdel_allnetnode.supdel_allf  s    ..t99r#   c               (    V ^8  d   QhRRRRRRRR/# )rR   idx1r   idx2r   r   rU   rz   r$   )rW   s   "r   rX   rY   i  s/     H H HK Hg HHr#   c                	0    \         P                  ! WW#4      # r.   )r   netnode_supdel_ranger   r2  r3  r   s   &&&&r   supdel_rangenetnode.supdel_rangei  s    00TGGr#   c               (    V ^8  d   QhRRRRRRRR/# )rR   r2  r   r3  r   rU   rz   r$   )rW   s   "r   rX   rY   m  s/     M Mg MW M7 MMr#   c                	0    \         P                  ! WW#4      # r.   )r   netnode_supdel_range_idx8r6  s   &&&&r   supdel_range_idx8netnode.supdel_range_idx8m  s    55d$LLr#   c                   V ^8  d   QhRR/# rp   r$   )rW   s   "r   rX   rY   q       9 9y 9r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_hashvalrM   s   &*r   hashvalnetnode.hashvalq  r  r#   c                   V ^8  d   QhRR/# rp   r$   )rW   s   "r   rX   rY   t  r?  r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_hashstrrM   s   &*r   hashstrnetnode.hashstrt  r  r#   c                   V ^8  d   QhRR/# r   r$   )rW   s   "r   rX   rY   w  s     > >K >r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_hashval_longrM   s   &*r   hashval_longnetnode.hashval_longw  s    00===r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY   z       9 9t 9r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_hashsetrM   s   &*r   hashsetnetnode.hashsetz  r  r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY   }       = =4 =r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_hashset_idxrM   s   &*r   hashset_idxnetnode.hashset_idx}  r  r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY     rO  r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_hashdelrM   s   &*r   hashdelnetnode.hashdel  r  r#   c                   V ^8  d   QhRR/# rp   r$   )rW   s   "r   rX   rY     r  r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_hashfirstrM   s   &*r   	hashfirstnetnode.hashfirst  r   r#   c                   V ^8  d   QhRR/# rp   r$   )rW   s   "r   rX   rY          : :	 :r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_hashnextrM   s   &*r   hashnextnetnode.hashnext  r   r#   c                   V ^8  d   QhRR/# rp   r$   )rW   s   "r   rX   rY     re  r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_hashlastrM   s   &*r   hashlastnetnode.hashlast  r   r#   c                   V ^8  d   QhRR/# rp   r$   )rW   s   "r   rX   rY     re  r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_hashprevrM   s   &*r   hashprevnetnode.hashprev  r   r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY     rU  r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_hashdel_allrM   s   &*r   hashdel_allnetnode.hashdel_all  r  r#   c               $    V ^8  d   QhRRRRRR/# rR   _startr   r   r   rU   rz   r$   )rW   s   "r   rX   rY     s&     @ @{ @ @C @r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_blobsizer   r{  r   s   &&&r   blobsizenetnode.blobsize  s    ,,T3??r#   c               $    V ^8  d   QhRRRRRR/# rR   r   r   r   r   rU   rz   r$   )rW   s   "r   rX   rY     s!     ? ?o ?G ?s ?r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_blobsize_ear   s   &&&r   blobsize_eanetnode.blobsize_ea  s    //#>>r#   c               (    V ^8  d   QhRRRRRRRR/# )	rR   bufr   r{  r   r   r   rU   rV   r$   )rW   s   "r   rX   rY     s/     D D> D; DW DDr#   c                	0    \         P                  ! WW#4      # r.   )r   netnode_setblob)r   r  r{  r   s   &&&&r   setblobnetnode.setblob  s    ++DvCCr#   c               (    V ^8  d   QhRRRRRRRR/# )	rR   r  r   r   r   r   r   rU   rV   r$   )rW   s   "r   rX   rY     s/     C Cn C/ C CCr#   c                	0    \         P                  ! WW#4      # r.   )r   netnode_setblob_ea)r   r  r   r   s   &&&&r   
setblob_eanetnode.setblob_ea  s    ..t"BBr#   c               $    V ^8  d   QhRRRRRR/# rz  r$   )rW   s   "r   rX   rY     s!     ? ?k ? ?3 ?r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_delblobr~  s   &&&r   delblobnetnode.delblob  s    ++D#>>r#   c               $    V ^8  d   QhRRRRRR/# r  r$   )rW   s   "r   rX   rY     s!     > >_ >7 >c >r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_delblob_ear   s   &&&r   
delblob_eanetnode.delblob_ea  r-  r#   c          
     ,    V ^8  d   QhRRRRRRRRRR/# rT  r$   )rW   s   "r   rX   rY     rX  r#   c                	2    \         P                  ! WW#V4      # r.   )r   netnode_blobshiftr[  s   &&&&&r   	blobshiftnetnode.blobshift  r^  r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY     s     0 0d 0r#   c                	.    \         P                  ! V 4      # r.   )r   netnode_startrk   s   &r   startnetnode.start      ))$//r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY     s     . .D .r#   c                	.    \         P                  ! V 4      # r.   )r   netnode_endrk   s   &r   endnetnode.end  s    ''--r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY     rh   r#   c                	.    \         P                  ! V 4      # r.   )r   netnode_nextrk   s   &r   nextnetnode.next  rn   r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY     rh   r#   c                	.    \         P                  ! V 4      # r.   )r   netnode_prevrk   s   &r   prevnetnode.prev  rn   r#   c               $    V ^8  d   QhRRRRRR/# rR   destnode	'netnode'countr   rU   rz   r$   )rW   s   "r   rX   rY     &     B By B B# Br#   c                	0    \         P                  ! WV4      # r.   )r   netnode_copytor   r  r  s   &&&r   copytonetnode.copyto      **45AAr#   c               $    V ^8  d   QhRRRRRR/# r  r$   )rW   s   "r   rX   rY     r  r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_movetor  s   &&&r   movetonetnode.moveto  r  r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY     r`   r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode___eq__rM   s   &*r   __eq__netnode.__eq__  re   r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY     r`   r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode___ne__rM   s   &*r   __ne__netnode.__ne__  re   r#   c                   V ^8  d   QhRR/# r   r$   )rW   s   "r   rX   rY     s     0 0k 0r#   c                	.    \         P                  ! V 4      # r.   )r   netnode_indexrk   s   &r   indexnetnode.index  r  r#   c                   V ^8  d   QhRR/# )rR   rU   zUnion[bytes, None]r$   )rW   s   "r   rX   rY     s     > >$6 >r#   c                0    \         P                  ! WV4      # )zGet a blob from a netnode.

:param start: the index where the blob starts (it may span on multiple indexes)
:param tag: the netnode tag
:returns: a blob, or None)r   netnode_getblobr   r  r   s   &&&r   getblobnetnode.getblob       ++D==r#   c                   V ^8  d   QhRR/# )rR   rU   zUnion[str, None]r$   )rW   s   "r   rX   rY     s     > >$4 >r#   c                0    \         P                  ! WV4      # )zGet a large amount of text from a netnode.

:param start: the index where the clob starts (it may span on multiple indexes)
:param tag: the netnode tag
:returns: a clob, or None)r   netnode_getclobr  s   &&&r   getclobnetnode.getclob  r  r#   c               $    V ^8  d   QhRRRRRR/# )rR   r   r   r   z'char'rU   'PyObject *'r$   )rW   s   "r   rX   rY     s!     > >_ >6 >\ >r#   c                	0    \         P                  ! WV4      # r.   )r   netnode_getblob_ear   s   &&&r   
getblob_eanetnode.getblob_ea  r-  r#   c                   V ^8  d   QhRR/# )rR   rU   r  r$   )rW   s   "r   rX   rY     s     = =< =r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_hashstr_bufrM   s   &*r   hashstr_bufnetnode.hashstr_buf  r  r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY     rU  r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_hashset_bufrM   s   &*r   hashset_bufnetnode.hashset_buf  r  r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY     r`   r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_supsetrM   s   &*r   supsetnetnode.supset  re   r#   c                   V ^8  d   QhRR/# r_   r$   )rW   s   "r   rX   rY     r   r#   c                	2    \         P                  ! V .VO5!  # r.   )r   netnode_supset_earM   s   &*r   	supset_eanetnode.supset_ea  r   r#   r$   N)    )   )r   r   r8   r9   r   r   r   r
   rO   staticmethodr\   rc   rl   rt   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+  r1  r6  r=  rF  rL  rQ  r\  rc  ri  rp  rv  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/  r7  r<  rB  rG  rL  rR  rX  r]  rb  rh  rm  rr  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   delete_netnode__swig_destroy__r<   r$   r#   r   rA   rA   h   s   -/I!#GHM 1 1
8/3B81536758;8;;?99D>E??:999:<A<>C>9=8=J@E@=A<AAFA>B=B8<8;8;;=@:999:=@G@E=A<A8:HM99>9=9;:::=@?DC?>J0.//BB880>>>==8;#22r#   rA   c                    V ^8  d   QhRRRR/# )rR   nr  rU   rV   r$   )rW   s   "r   rX   rX     s     ! !Y !$ !r#   c                .    \         P                  ! V 4      # r.   )r   r\   )r  s   &r   r\   r\     s    a  r#   )1r:   
__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_idaapiBADNODESIZEOF_nodeidx_tobjectrA   netnode_swigregistercvarMAXNAMESIZEMAX_NODENAME_SIZEMAXSPECSIZEatagstaghtagvtagntagltag
NETMAP_IDX
NETMAP_VAL
NETMAP_STR	NETMAP_X8	NETMAP_V8NETMAP_VAL_NDXr\   r[   r$   r#   r   <module>r"     s   B # 9#/"
 L$ L
 &>>  % % 


00 {3f {3|  ! !' *** yyyyyyyyyyyy__
__
__
NN	NN	$$! K  s   E6 6FF