Ë
    øÇ:jL  ã                   ó  — d dl mZmZmZmZmZmZmZmZm	Z	m
Z
mZ d dlZd dlmZ d dlmZmZ d dlmZ  G d„ dej(                  «      Z G d„ d	ej(                  «      Z G d
„ dej(                  «      Z G d„ dej(                  «      Z G d„ dej2                  «      Z G d„ dej2                  «      Z G d„ dej2                  «      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z G d„ de«      Z  G d„ de«      Z! G d„ de«      Z" G d „ d!e«      Z#ejH                   ee«      gejJ                  jL                  _'        ejH                  gejJ                  jP                  _'        ejR                  ejJ                  jP                  _*        ejH                  gejJ                  jV                  _'        eejJ                  jV                  _*        ejH                  egejJ                  jX                  _'        ejH                  gejJ                  jZ                  _'        ej\                  ejJ                  jZ                  _*        ejH                  gejJ                  j^                  _'        ej\                  ejJ                  j^                  _*        ej\                  gejJ                  j`                  _'        eejJ                  j`                  _*        ejH                  gejJ                  jb                  _'        eejJ                  jb                  _*        ejH                  egejJ                  jd                  _'        ejH                  gejJ                  jf                  _'        eejJ                  jf                  _*        ejH                  egejJ                  jh                  _'        ejH                  gejJ                  jj                  _'        eejJ                  jj                  _*        ejH                  egejJ                  jl                  _'        eegejJ                  jn                  _'        eejJ                  jn                  _*        ejH                  egejJ                  jp                  _'        ejH                  gejJ                  jr                  _'        eejJ                  jr                  _*        ejH                  gejJ                  jt                  _'        ejv                  ejJ                  jt                  _*        ejH                  gejJ                  jx                  _'        ejv                  ejJ                  jx                  _*        ejH                  gejJ                  jz                  _'        ejv                  ejJ                  jz                  _*        ejH                  gejJ                  j|                  _'        ej~                  ejJ                  j|                  _*        ejH                  gejJ                  j€                  _'        ej~                  ejJ                  j€                  _*        ejH                  gejJ                  j‚                  _'        ej„                  ejJ                  j‚                  _*        ejH                  gejJ                  j†                  _'        ejˆ                  ejJ                  j†                  _*        ejH                  gejJ                  jŠ                  _'        ejŒ                  ejJ                  jŠ                  _*        ejH                  gejJ                  jŽ                  _'        ej�                  ejJ                  jŽ                  _*        ejH                  gejJ                  j’                  _'        ej”                  ejJ                  j’                  _*        ejv                  gejJ                  j–                  _'        ej~                  gejJ                  j˜                  _'        ej„                  gejJ                  jš                  _'        ejŒ                  gejJ                  jœ                  _'        ej�                  gejJ                  jž                  _'        ej”                  gejJ                  j                   _'        ejv                  gejJ                  j¢                  _'        eejJ                  j¢                  _*        ej~                  gejJ                  j¤                  _'        eejJ                  j¤                  _*        ej„                  gejJ                  j¦                  _'        ejH                  ejJ                  j¦                  _*        ejˆ                  gejJ                  j¨                  _'        ejH                  ejJ                  j¨                  _*        ejŒ                  gejJ                  jª                  _'        ejH                  ejJ                  jª                  _*        ej�                  gejJ                  j¬                  _'        ejH                  ejJ                  j¬                  _*        ej”                  gejJ                  j®                  _'        ejH                  ejJ                  j®                  _*        ejH                  gejJ                  j°                  _'        eejJ                  j°                  _*        ejH                  gejJ                  j²                  _'        e
ejJ                  j²                  _*        ejH                  gejJ                  j´                  _'        eejJ                  j´                  _*        ejH                   ee
«      gejJ                  j¶                  _'         ee	«      ejJ                  j¶                  _*        ejH                  gejJ                  j¸                  _'        eejJ                  j¸                  _*        ejH                   ee
«      gejJ                  jº                  _'        eejJ                  jº                  _*        y)"é    )ÚPOINTERÚbyrefÚcastÚc_char_pÚc_doubleÚc_intÚc_size_tÚc_uintÚc_uint64Úc_boolÚc_void_pN)Úffi)Ú_decode_stringÚ_encode_string)ÚTypeRefc                   óP   — e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZy)ÚLinkager   é   é   é   é   é   é   é   é   é	   é
   é   é   é   é   é   é   N)Ú__name__Ú
__module__Ú__qualname__ÚexternalÚavailable_externallyÚlinkonce_anyÚlinkonce_odrÚlinkonce_odr_autohideÚweak_anyÚweak_odrÚ	appendingÚinternalÚprivateÚ	dllimportÚ	dllexportÚexternal_weakÚghostÚcommonÚlinker_privateÚlinker_private_weak© ó    úk/home/mcse/projects/srt_converter/srt-converter-venv/lib/python3.12/site-packages/llvmlite/binding/value.pyr   r   
   s\   „ ð €HØÐØ€LØ€LØÐØ€HØ€HØ€IØ€HØ€GØ€IØ€IØ€MØ€EØ€FØ€NØÑr9   r   c                   ó   — e Zd ZdZdZdZy)Ú
Visibilityr   r   r   N)r$   r%   r&   ÚdefaultÚhiddenÚ	protectedr8   r9   r:   r<   r<       s   „ ð €GØ€FØ�Ir9   r<   c                   ó   — e Zd ZdZdZdZy)ÚStorageClassr   r   r   N)r$   r%   r&   r=   r1   r2   r8   r9   r:   rA   rA   (   s   „ ð €GØ€IØ�Ir9   rA   c                   ót   — e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZy)Ú	ValueKindr   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   é   é   é   é   é   é   é   é   é   N)r$   r%   r&   ÚargumentÚbasic_blockÚ
memory_useÚ
memory_defÚ
memory_phiÚfunctionÚglobal_aliasÚglobal_ifuncÚglobal_variableÚblock_addressÚconstant_exprÚconstant_arrayÚconstant_structÚconstant_vectorÚundef_valueÚconstant_aggregate_zeroÚconstant_data_arrayÚconstant_data_vectorÚconstant_intÚconstant_fpÚconstant_pointer_nullÚconstant_token_noneÚmetadata_as_valueÚ
inline_asmÚinstructionÚpoison_valuer8   r9   r:   rC   rC   0   sŒ   „ ð €HØ€KØ€JØ€JØ€Jà€HØ€LØ€LØ€OØ€MØ€MØ€NØ€OØ€Oà€KØ ÐØÐØÐØ€LØ€KØÐØÐàÐØ€Jà€KØ�Lr9   rC   c                   óZ  — e Zd ZdZd„ Zd„ Zed„ «       Zed„ «       Zed„ «       Z	ed„ «       Z
ed„ «       Zed	„ «       Zed
„ «       Zed„ «       Zed„ «       Zed„ «       Zed„ «       Zed„ «       Zed„ «       Zej(                  d„ «       Zed„ «       Zej(                  d„ «       Zed„ «       Zej(                  d„ «       Zed„ «       Zej(                  d„ «       Zd„ Zed„ «       Zed„ «       Zed„ «       Zed„ «       Zed„ «       Zed„ «       Zed„ «       Zed „ «       Z ed!„ «       Z!ed"„ «       Z"d%d#„Z#y$)&ÚValueRefz&A weak reference to a LLVM value.
    c                 ó`   — || _         || _        t        j                  j	                  | |«       y ©N)Ú_kindÚ_parentsr   Ú	ObjectRefÚ__init__)ÚselfÚptrÚkindÚparentss       r:   rn   zValueRef.__init__W   s$   € ØˆŒ
ØˆŒÜ�‰×Ñ˜t SÕ)r9   c                 ó¬   — t        j                  «       5 }t         j                  j                  | |«       t	        |«      cd d d «       S # 1 sw Y   y xY wrj   )r   ÚOutputStringÚlibÚLLVMPY_PrintValueToStringÚstr)ro   Úoutstrs     r:   Ú__str__zValueRef.__str__\   s@   € Ü×ÑÓð 	 6Ü�G‰G×-Ñ-¨d°FÔ;Ü�v“;÷	÷ 	ò 	ús   •+A
Á
Ac                 ó8   — | j                   j                  d«      S )zV
        The module this function or global variable value was obtained from.
        Úmodule©rl   Úget©ro   s    r:   r{   zValueRef.modulea   s   € ð
 �}‰}× Ñ  Ó*Ð*r9   c                 ó8   — | j                   j                  d«      S )zT
        The function this argument or basic block value was obtained from.
        rR   r|   r~   s    r:   rR   zValueRef.functionh   s   € ð
 �}‰}× Ñ  Ó,Ð,r9   c                 ó8   — | j                   j                  d«      S )zE
        The block this instruction value was obtained from.
        Úblockr|   r~   s    r:   r�   zValueRef.blocko   s   € ð
 �}‰}× Ñ  Ó)Ð)r9   c                 ó8   — | j                   j                  d«      S )zG
        The instruction this operand value was obtained from.
        re   r|   r~   s    r:   re   zValueRef.instructionv   s   € ð
 �}‰}× Ñ  Ó/Ð/r9   c                 ó    — | j                   dk(  S )NÚglobal©rk   r~   s    r:   Ú	is_globalzValueRef.is_global}   s   € à�z‰z˜XÑ%Ð%r9   c                 ó    — | j                   dk(  S )NrR   r…   r~   s    r:   Úis_functionzValueRef.is_function�   ó   € à�z‰z˜ZÑ'Ð'r9   c                 ó    — | j                   dk(  S )Nr�   r…   r~   s    r:   Úis_blockzValueRef.is_block…   s   € à�z‰z˜WÑ$Ð$r9   c                 ó    — | j                   dk(  S )NrM   r…   r~   s    r:   Úis_argumentzValueRef.is_argument‰   r‰   r9   c                 ó    — | j                   dk(  S )Nre   r…   r~   s    r:   Úis_instructionzValueRef.is_instruction�   s   € à�z‰z˜]Ñ*Ð*r9   c                 ó    — | j                   dk(  S )NÚoperandr…   r~   s    r:   Ú
is_operandzValueRef.is_operand‘   s   € à�z‰z˜YÑ&Ð&r9   c                 óR   — t        t        j                  j                  | «      «      S rj   )Úboolr   ru   ÚLLVMPY_IsConstantr~   s    r:   Úis_constantzValueRef.is_constant•   s   € ä”C—G‘G×-Ñ-¨dÓ3Ó4Ð4r9   c                 óR   — t        t        j                  j                  | «      «      S rj   )rC   r   ru   ÚLLVMPY_GetValueKindr~   s    r:   Ú
value_kindzValueRef.value_kind™   s   € äœŸ™×4Ñ4°TÓ:Ó;Ð;r9   c                 óR   — t        t        j                  j                  | «      «      S rj   )r   r   ru   ÚLLVMPY_GetValueNamer~   s    r:   ÚnamezValueRef.name�   s   € äœcŸg™g×9Ñ9¸$Ó?Ó@Ð@r9   c                 óV   — t         j                  j                  | t        |«      «       y rj   )r   ru   ÚLLVMPY_SetValueNamer   )ro   Úvals     r:   rœ   zValueRef.name¡   s   € ä�‰×#Ñ# D¬.¸Ó*=Õ>r9   c                 óR   — t        t        j                  j                  | «      «      S rj   )r   r   ru   ÚLLVMPY_GetLinkager~   s    r:   ÚlinkagezValueRef.linkage¥   s   € ä”s—w‘w×0Ñ0°Ó6Ó7Ð7r9   c                 óv   — t        |t        «      s	t        |   }t        j                  j	                  | |«       y rj   )Ú
isinstancer   r   ru   ÚLLVMPY_SetLinkage©ro   Úvalues     r:   r¢   zValueRef.linkage©   s)   € ä˜%¤Ô)Ü˜E‘NˆEÜ�‰×!Ñ! $¨Õ.r9   c                 óR   — t        t        j                  j                  | «      «      S rj   )r<   r   ru   ÚLLVMPY_GetVisibilityr~   s    r:   Ú
visibilityzValueRef.visibility¯   s   € äœ#Ÿ'™'×6Ñ6°tÓ<Ó=Ð=r9   c                 óv   — t        |t        «      s	t        |   }t        j                  j	                  | |«       y rj   )r¤   r<   r   ru   ÚLLVMPY_SetVisibilityr¦   s     r:   rª   zValueRef.visibility³   s*   € ä˜%¤Ô,Ü˜uÑ%ˆEÜ�‰×$Ñ$ T¨5Õ1r9   c                 óR   — t        t        j                  j                  | «      «      S rj   )rA   r   ru   ÚLLVMPY_GetDLLStorageClassr~   s    r:   Ústorage_classzValueRef.storage_class¹   s   € äœCŸG™G×=Ñ=¸dÓCÓDÐDr9   c                 óv   — t        |t        «      s	t        |   }t        j                  j	                  | |«       y rj   )r¤   rA   r   ru   ÚLLVMPY_SetDLLStorageClassr¦   s     r:   r¯   zValueRef.storage_class½   s*   € ä˜%¤Ô.Ü  Ñ'ˆEÜ�‰×)Ñ)¨$°Õ6r9   c                 óD  — | j                   st        d| j                  ›�«      ‚t        |«      }t        j
                  j                  t        |«      t        |«      «      }|dk(  rt        dj                  |«      «      ‚t        j
                  j                  | |«       y)z{Only works on function value

        Parameters
        -----------
        attr : str
            attribute name
        úexpected function value, got r   zno such attribute {!r}N)rˆ   Ú
ValueErrorrk   rw   r   ru   Ú"LLVMPY_GetEnumAttributeKindForNamer   ÚlenÚformatÚLLVMPY_AddFunctionAttr)ro   ÚattrÚattrnameÚattrvals       r:   Úadd_function_attributezValueRef.add_function_attributeÃ   s|   € ð ×ÒÝÀ$Ç*Â*ÐNÓOÐOÜ�t“9ˆÜ—'‘'×<Ñ<Ü˜8Ó$¤c¨(£mó5ˆà�aŠ<ÜÐ5×<Ñ<¸XÓFÓGÐGÜ�‰×&Ñ& t¨WÕ5r9   c                 óR   — t        t        j                  j                  | «      «      S )z)
        This value's LLVM type.
        )r   r   ru   ÚLLVMPY_TypeOfr~   s    r:   ÚtypezValueRef.typeÔ   s   € ô ”s—w‘w×,Ñ,¨TÓ2Ó3Ð3r9   c                 ó†   — | j                   s| j                  sJ ‚t        t        j                  j                  | «      «      S )zÛ
        Uses ``LLVMGlobalGetValueType()``.
        Needed for opaque pointers in globals.
        > For globals, use getValueType().
        See https://llvm.org/docs/OpaquePointers.html#migration-instructions
        )r†   rˆ   r   r   ru   ÚLLVMPY_GlobalGetValueTyper~   s    r:   Úglobal_value_typezValueRef.global_value_typeÜ   s3   € ð �~Š~ ×!1Ò!1Ð1Ð1Ü”s—w‘w×8Ñ8¸Ó>Ó?Ð?r9   c                 ó    — | j                   s$| j                  st        d| j                  ›�«      ‚t        j
                  j                  | «      S )zb
        Whether this value (presumably global) is defined in the current
        module.
        z'expected global or function value, got )r†   rˆ   r´   rk   r   ru   ÚLLVMPY_IsDeclarationr~   s    r:   Úis_declarationzValueRef.is_declarationç   sA   € ð —’ $×"2Ò"2ÝØ $§
¢
ð-ó .ð .ä�w‰w×+Ñ+¨DÓ1Ð1r9   c                 ól  — t        d«      }| j                  r,t        j                  j	                  | «      }t        |«      }|S | j                  rv| j                  dk(  r,t        j                  j                  | «      }t        |«      }|S | j                  dk(  r*t        j                  j                  | «      }t        |«      }|S | j                  r,t        j                  j                  | «      }t        |«      }|S | j                  r*t        j                  j                  | «      }t        |«      }|S )z
        Return an iterator over this value's attributes.
        The iterator will yield a string for each attribute.
        r8   ÚcallÚinvoke)Úiterrˆ   r   ru   ÚLLVMPY_FunctionAttributesIterÚ_AttributeListIteratorr�   ÚopcodeÚLLVMPY_CallInstAttributesIterÚLLVMPY_InvokeInstAttributesIterr†   ÚLLVMPY_GlobalAttributesIterÚ_AttributeSetIteratorr�   ÚLLVMPY_ArgumentAttributesIter)ro   ÚitrÚits      r:   Ú
attributeszValueRef.attributesò   s  € ô �2‹hˆØ×ÒÜ—‘×6Ñ6°tÓ<ˆBÜ(¨Ó,ˆCð ˆ
ð × Ò Ø�{‰{˜fÒ$Ü—W‘W×:Ñ:¸4Ó@�Ü,¨RÓ0�ð ˆ
ð —‘ Ò(Ü—W‘W×<Ñ<¸TÓB�Ü,¨RÓ0�ð ˆ
ð �^Š^Ü—‘×4Ñ4°TÓ:ˆBÜ'¨Ó+ˆCð ˆ
ð ×ÒÜ—‘×6Ñ6°tÓ<ˆBÜ'¨Ó+ˆCØˆ
r9   c                 óø   — | j                   st        d| j                  ›�«      ‚t        j                  j                  | «      }| j                  j                  «       }|j                  | ¬«       t        ||«      S )z|
        Return an iterator over this function's blocks.
        The iterator will yield a ValueRef for each block.
        r³   ©rR   )
rˆ   r´   rk   r   ru   ÚLLVMPY_FunctionBlocksIterrl   ÚcopyÚupdateÚ_BlocksIterator©ro   rÓ   rr   s      r:   ÚblockszValueRef.blocks  s`   € ð ×ÒÝÀ$Ç*Â*ÐNÓOÐOÜ�W‰W×.Ñ.¨tÓ4ˆØ—-‘-×$Ñ$Ó&ˆØ�‰ ˆÔ%Ü˜r 7Ó+Ð+r9   c                 óø   — | j                   st        d| j                  ›�«      ‚t        j                  j                  | «      }| j                  j                  «       }|j                  | ¬«       t        ||«      S )z‚
        Return an iterator over this function's arguments.
        The iterator will yield a ValueRef for each argument.
        r³   rÖ   )
rˆ   r´   rk   r   ru   ÚLLVMPY_FunctionArgumentsIterrl   rØ   rÙ   Ú_ArgumentsIteratorrÛ   s      r:   Ú	argumentszValueRef.arguments  s`   € ð ×ÒÝÀ$Ç*Â*ÐNÓOÐOÜ�W‰W×1Ñ1°$Ó7ˆØ—-‘-×$Ñ$Ó&ˆØ�‰ ˆÔ%Ü! " gÓ.Ð.r9   c                 óø   — | j                   st        d| j                  ›�«      ‚t        j                  j                  | «      }| j                  j                  «       }|j                  | ¬«       t        ||«      S )z…
        Return an iterator over this block's instructions.
        The iterator will yield a ValueRef for each instruction.
        zexpected block value, got )r�   )
r‹   r´   rk   r   ru   ÚLLVMPY_BlockInstructionsIterrl   rØ   rÙ   Ú_InstructionsIteratorrÛ   s      r:   ÚinstructionszValueRef.instructions%  s^   € ð �}Š}Ý¸t¿zºzÐKÓLÐLÜ�W‰W×1Ñ1°$Ó7ˆØ—-‘-×$Ñ$Ó&ˆØ�‰˜TˆÔ"Ü$ R¨Ó1Ð1r9   c                 óø   — | j                   st        d| j                  ›�«      ‚t        j                  j                  | «      }| j                  j                  «       }|j                  | ¬«       t        ||«      S )zƒ
        Return an iterator over this instruction's operands.
        The iterator will yield a ValueRef for each operand.
        ú expected instruction value, got ©re   )
r�   r´   rk   r   ru   ÚLLVMPY_InstructionOperandsIterrl   rØ   rÙ   Ú_OperandsIteratorrÛ   s      r:   ÚoperandszValueRef.operands2  sg   € ð ×"Ò"ÝØ $§
¢
ð-ó .ð .ä�W‰W×3Ñ3°DÓ9ˆØ—-‘-×$Ñ$Ó&ˆØ�‰ 4ˆÔ(Ü   WÓ-Ð-r9   c                 ó®   — | j                   st        d| j                  ›�«      ‚t        j                  t        j
                  j                  | «      «      S )Nræ   )r�   r´   rk   r   Ú
ret_stringru   ÚLLVMPY_GetOpcodeNamer~   s    r:   rÌ   zValueRef.opcode@  sB   € à×"Ò"ÝØ $§
¢
ð-ó .ð .ä�~‰~œcŸg™g×:Ñ:¸4Ó@ÓAÐAr9   c                 ó  — | j                   r| j                  dk7  rt        d| j                  ›�«      ‚t        j
                  j                  | «      }| j                  j                  «       }|j                  | ¬«       t        ||«      S )zŒ
        Return an iterator over this phi instruction's incoming blocks.
        The iterator will yield a ValueRef for each block.
        Úphiz$expected phi instruction value, got rç   )r�   rÌ   r´   rk   r   ru   ÚLLVMPY_PhiIncomingBlocksIterrl   rØ   rÙ   Ú_IncomingBlocksIteratorrÛ   s      r:   Úincoming_blockszValueRef.incoming_blocksG  sr   € ð ×"Ò" d§k¡k°UÒ&:ÝØ $§
¢
ð-ó .ð .ä�W‰W×1Ñ1°$Ó7ˆØ—-‘-×$Ñ$Ó&ˆØ�‰ 4ˆÔ(Ü& r¨7Ó3Ð3r9   c           	      óæ  — | j                   st        d| j                  ›�«      ‚| j                  t        j
                  k(  r®t        d«      }t        j                  j                  | «      }t        j                  j                  | t        |«      «      }t        t        |t        t        |z  «      «      j                   «      }t"        j%                  ||j&                  rd|¬«      S d|¬«      S | j                  t        j(                  k(  r[t        d«      }t        j                  j+                  | t        |«      «      }|j&                  r|st        dt-        | «      › �«      ‚|S t-        | «      S )aä  
        Return the constant value, either as a literal (when supported)
        or as a string.

        Parameters
        -----------
        signed_int : bool
            if True and the constant is an integer, returns a signed version
        round_fp : bool
            if True and the constant is a floating point value, rounds the
            result upon accuracy loss (e.g., when querying an fp128 value).
            By default, raises an exception on accuracy loss
        zexpected constant value, got FÚlittleÚbig)Úsignedz:Accuracy loss encountered in conversion of constant value )r–   r´   rk   r™   rC   r_   r   r   ru   ÚLLVMPY_GetConstantIntNumWordsÚLLVMPY_GetConstantIntRawValuer   Úbytesr   r   r   ÚcontentsÚintÚ
from_bytesr§   r`   ÚLLVMPY_GetConstantFPValuerw   )	ro   Ú
signed_intÚround_fpÚlittle_endianÚwordsrp   ÚasbytesÚaccuracy_lossr§   s	            r:   Úget_constant_valuezValueRef.get_constant_valueU  sL  € ð ×ÒÝØ $§
¢
ð-ó .ð .ð �?‰?œi×4Ñ4Ò4ä" 5›MˆMÜ—G‘G×9Ñ9¸$Ó?ˆEÜ—'‘'×7Ñ7Ø”e˜MÓ*ó,ˆCäœD ¤g¬h¸Ñ.>Ó&?Ó@×IÑIÓJˆGÜ—>‘>ØØ*×0Ò0�Ø!ð "ó ð à6;Ø!ð "ó ð ð
 �_‰_¤	× 5Ñ 5Ò5ä" 5›MˆMÜ—G‘G×5Ñ5°dÜ6;¸MÓ6JóLˆEà×"Ò"©8Ü ðÜ  ›Y˜Kð)ó*ð *ð ˆLô �4‹yÐr9   N)FF)$r$   r%   r&   Ú__doc__rn   ry   Úpropertyr{   rR   r�   re   r†   rˆ   r‹   r�   r�   r’   r–   r™   rœ   Úsetterr¢   rª   r¯   r¼   r¿   rÂ   rÅ   rÔ   rÜ   rà   rä   rê   rÌ   rò   r  r8   r9   r:   rh   rh   S   s�  „ ñò*ò
ð
 ñ+ó ð+ð ñ-ó ð-ð ñ*ó ð*ð ñ0ó ð0ð ñ&ó ð&ð ñ(ó ð(ð ñ%ó ð%ð ñ(ó ð(ð ñ+ó ð+ð ñ'ó ð'ð ñ5ó ð5ð ñ<ó ð<ð ñAó ðAð 
‡[�[ñ?ó ð?ð ñ8ó ð8ð ‡^�^ñ/ó ð/ð
 ñ>ó ð>ð ×Ññ2ó ð2ð
 ñEó ðEð ×Ññ7ó ð7ò
6ð" ñ4ó ð4ð ñ@ó ð@ð ñ2ó ð2ð ñó ðð0 ñ
,ó ð
,ð ñ
/ó ð
/ð ñ
2ó ð
2ð ñ.ó ð.ð ñBó ðBð ñ4ó ð4ô+r9   rh   c                   ó&   — e Zd ZdZd„ Zd„ ZeZd„ Zy)Ú_ValueIteratorNc                 ó¬   — t         j                  j                  | |«       || _        | j                  €!t        t        | «      j                  ›d�«      ‚y )Nz must specify kind attribute)r   rm   rn   rl   rq   ÚNotImplementedErrorr¿   r$   )ro   rp   rr   s      r:   rn   z_ValueIterator.__init__ˆ  sM   € Ü�‰×Ñ˜t SÔ)àˆŒØ�9‰9ÐÜ%Ü)-¨d«×)<Ó)<ð'?ó @ð @ð r9   c                 ót   — | j                  «       }|r!t        || j                  | j                  «      S t        ‚rj   )Ú_nextrh   rq   rl   ÚStopIteration©ro   Úvps     r:   Ú__next__z_ValueIterator.__next__�  s-   € Ø�Z‰Z‹\ˆÙÜ˜B §	¡	¨4¯=©=Ó9Ð9äÐr9   c                 ó   — | S rj   r8   r~   s    r:   Ú__iter__z_ValueIterator.__iter__™  ó   € Øˆr9   )r$   r%   r&   rq   rn   r  Únextr  r8   r9   r:   r	  r	  ƒ  s   „ à€Dò@ò ð €Dór9   r	  c                   ó   — e Zd Zd„ ZeZd„ Zy)Ú_AttributeIteratorc                 ó6   — | j                  «       }|r|S t        ‚rj   )r  r  r  s     r:   r  z_AttributeIterator.__next__Ÿ  s   € Ø�Z‰Z‹\ˆÙØˆIäÐr9   c                 ó   — | S rj   r8   r~   s    r:   r  z_AttributeIterator.__iter__¨  r  r9   N)r$   r%   r&   r  r  r  r8   r9   r:   r  r  �  s   „ ò ð €Dór9   r  c                   ó   — e Zd Zd„ Zd„ Zy)rË   c                 ó:   — | j                   j                  | «       y rj   )Ú_capiÚLLVMPY_DisposeAttributeListIterr~   s    r:   Ú_disposez_AttributeListIterator._dispose®  s   € Ø�
‰
×2Ñ2°4Õ8r9   c                 óf   — t        j                  t         j                  j                  | «      «      S rj   )r   Ú	ret_bytesru   ÚLLVMPY_AttributeListIterNextr~   s    r:   r  z_AttributeListIterator._next±  s    € Ü�}‰}œSŸW™W×AÑAÀ$ÓGÓHÐHr9   N©r$   r%   r&   r  r  r8   r9   r:   rË   rË   ¬  s   „ ò9óIr9   rË   c                   ó   — e Zd Zd„ Zd„ Zy)rÐ   c                 ó:   — | j                   j                  | «       y rj   )r  ÚLLVMPY_DisposeAttributeSetIterr~   s    r:   r  z_AttributeSetIterator._dispose·  ó   € Ø�
‰
×1Ñ1°$Õ7r9   c                 óf   — t        j                  t         j                  j                  | «      «      S rj   )r   r   ru   ÚLLVMPY_AttributeSetIterNextr~   s    r:   r  z_AttributeSetIterator._nextº  s    € Ü�}‰}œSŸW™W×@Ñ@ÀÓFÓGÐGr9   Nr"  r8   r9   r:   rÐ   rÐ   µ  s   „ ò8óHr9   rÐ   c                   ó   — e Zd ZdZd„ Zd„ Zy)rÚ   r�   c                 ó:   — | j                   j                  | «       y rj   )r  ÚLLVMPY_DisposeBlocksIterr~   s    r:   r  z_BlocksIterator._disposeÂ  s   € Ø�
‰
×+Ñ+¨DÕ1r9   c                 ó@   — t         j                  j                  | «      S rj   )r   ru   ÚLLVMPY_BlocksIterNextr~   s    r:   r  z_BlocksIterator._nextÅ  s   € Ü�w‰w×,Ñ,¨TÓ2Ð2r9   N©r$   r%   r&   rq   r  r  r8   r9   r:   rÚ   rÚ   ¾  s   „ à€Dò2ó3r9   rÚ   c                   ó   — e Zd ZdZd„ Zd„ Zy)rß   rM   c                 ó:   — | j                   j                  | «       y rj   )r  ÚLLVMPY_DisposeArgumentsIterr~   s    r:   r  z_ArgumentsIterator._disposeÍ  s   € Ø�
‰
×.Ñ.¨tÕ4r9   c                 ó@   — t         j                  j                  | «      S rj   )r   ru   ÚLLVMPY_ArgumentsIterNextr~   s    r:   r  z_ArgumentsIterator._nextÐ  s   € Ü�w‰w×/Ñ/°Ó5Ð5r9   Nr.  r8   r9   r:   rß   rß   É  s   „ à€Dò5ó6r9   rß   c                   ó   — e Zd ZdZd„ Zd„ Zy)rã   re   c                 ó:   — | j                   j                  | «       y rj   )r  ÚLLVMPY_DisposeInstructionsIterr~   s    r:   r  z_InstructionsIterator._disposeØ  r&  r9   c                 ó@   — t         j                  j                  | «      S rj   )r   ru   ÚLLVMPY_InstructionsIterNextr~   s    r:   r  z_InstructionsIterator._nextÛ  s   € Ü�w‰w×2Ñ2°4Ó8Ð8r9   Nr.  r8   r9   r:   rã   rã   Ô  s   „ à€Dò8ó9r9   rã   c                   ó   — e Zd ZdZd„ Zd„ Zy)ré   r‘   c                 ó:   — | j                   j                  | «       y rj   )r  ÚLLVMPY_DisposeOperandsIterr~   s    r:   r  z_OperandsIterator._disposeã  s   € Ø�
‰
×-Ñ-¨dÕ3r9   c                 ó@   — t         j                  j                  | «      S rj   )r   ru   ÚLLVMPY_OperandsIterNextr~   s    r:   r  z_OperandsIterator._nextæ  s   € Ü�w‰w×.Ñ.¨tÓ4Ð4r9   Nr.  r8   r9   r:   ré   ré   ß  s   „ à€Dò4ó5r9   ré   c                   ó   — e Zd ZdZd„ Zd„ Zy)rñ   r�   c                 ó:   — | j                   j                  | «       y rj   )r  Ú LLVMPY_DisposeIncomingBlocksIterr~   s    r:   r  z _IncomingBlocksIterator._disposeî  s   € Ø�
‰
×3Ñ3°DÕ9r9   c                 ó@   — t         j                  j                  | «      S rj   )r   ru   ÚLLVMPY_IncomingBlocksIterNextr~   s    r:   r  z_IncomingBlocksIterator._nextñ  s   € Ü�w‰w×4Ñ4°TÓ:Ð:r9   Nr.  r8   r9   r:   rñ   rñ   ê  s   „ à€Dò:ó;r9   rñ   )^Úctypesr   r   r   r   r   r   r	   r
   r   r   r   ÚenumÚllvmlite.bindingr   Úllvmlite.binding.commonr   r   Úllvmlite.binding.typerefr   ÚIntEnumr   r<   rA   rC   rm   rh   r	  r  rË   rÐ   rÚ   rß   rã   ré   rñ   ÚLLVMValueRefru   rv   ÚargtypesÚLLVMPY_GetGlobalParentÚLLVMModuleRefÚrestyper›   rž   r¾   ÚLLVMTypeRefrÁ   ÚLLVMPY_GetTypeNamer¡   r¥   r©   r¬   r®   r±   rµ   r¸   rÄ   rÊ   ÚLLVMAttributeListIteratorrÍ   rÎ   rÏ   ÚLLVMAttributeSetIteratorrÑ   r×   ÚLLVMBlocksIteratorrÞ   ÚLLVMArgumentsIteratorrâ   ÚLLVMInstructionsIteratorrè   ÚLLVMOperandsIteratorrð   ÚLLVMIncomingBlocksIteratorr  r%  r+  r6  r;  r@  r!  r(  r-  r3  r8  r=  rB  rí   r•   r˜   rø   r÷   rý   r8   r9   r:   ú<module>rW     s¦  ð÷8÷ 8÷ 8ñ 8ã å  ß BÝ ,ôˆd�l‰lô ô,�—‘ô ô�4—<‘<ô ô �—‘ô  ôFmˆs�}‰}ô mô`	�S—]‘]ô ô4˜Ÿ™ô ôIÐ/ô IôHÐ.ô Hô3�nô 3ô6˜ô 6ô9˜Nô 9ô5˜ô 5ô;˜nô ;ð ×ÑÙˆHÓð.€‡�× !Ñ !Ô *ð
 ,/×+;Ñ+;Ð*<€‡�× Ñ Ô 'Ø),×):Ñ):€‡�× Ñ Ô &à(+×(8Ñ(8Ð'9€‡�× Ñ Ô $Ø&.€‡�× Ñ Ô #à(+×(8Ñ(8¸(Ð'C€‡�× Ñ Ô $à"%×"2Ñ"2Ð!3€‡�× Ñ Ô Ø #§¡€‡�× Ñ Ô à.1×.>Ñ.>Ð-?€‡�× !Ñ !Ô *Ø,/¯O©O€‡�× !Ñ !Ô )à'*§¡Ð&7€‡�× Ñ Ô #Ø%-€‡�× Ñ Ô "à&)×&6Ñ&6Ð%7€‡�× Ñ Ô "Ø$)€‡�× Ñ Ô !à&)×&6Ñ&6¸Ð%>€‡�× Ñ Ô "à),×)9Ñ)9Ð(:€‡�× Ñ Ô %Ø',€‡�× Ñ Ô $à),×)9Ñ)9¸5Ð(A€‡�× Ñ Ô %à.1×.>Ñ.>Ð-?€‡�× !Ñ !Ô *Ø,1€‡�× !Ñ !Ô )à.1×.>Ñ.>ÀÐ-F€‡�× !Ñ !Ô *à7?ÀÐ6J€‡�× *Ñ *Ô 3Ø5;€‡�× *Ñ *Ô 2à+.×+;Ñ+;¸VÐ*D€‡�× Ñ Ô 'à),×)9Ñ)9Ð(:€‡�× Ñ Ô %Ø',€‡�× Ñ Ô $à25×2BÑ2BÐ1C€‡�× %Ñ %Ô .Ø03×0MÑ0M€‡�× %Ñ %Ô -à25×2BÑ2BÐ1C€‡�× %Ñ %Ô .Ø03×0MÑ0M€‡�× %Ñ %Ô -à47×4DÑ4DÐ3E€‡�× 'Ñ 'Ô 0Ø25×2OÑ2O€‡�× 'Ñ 'Ô /à03×0@Ñ0@Ð/A€‡�× #Ñ #Ô ,Ø.1×.JÑ.J€‡�× #Ñ #Ô +à25×2BÑ2BÐ1C€‡�× %Ñ %Ô .Ø03×0LÑ0L€‡�× %Ñ %Ô -à.1×.>Ñ.>Ð-?€‡�× !Ñ !Ô *Ø,/×,BÑ,B€‡�× !Ñ !Ô )à14×1AÑ1AÐ0B€‡�× $Ñ $Ô -Ø/2×/HÑ/H€‡�× $Ñ $Ô ,à14×1AÑ1AÐ0B€‡�× $Ñ $Ô -Ø/2×/KÑ/K€‡�× $Ñ $Ô ,à36×3CÑ3CÐ2D€‡�× &Ñ &Ô /Ø14×1IÑ1I€‡�× &Ñ &Ô .à14×1AÑ1AÐ0B€‡�× $Ñ $Ô -Ø/2×/MÑ/M€‡�× $Ñ $Ô ,ð ×!Ñ!ð4#€‡�× 'Ñ 'Ô 0ð 47×3OÑ3OÐ2P€‡�× &Ñ &Ô /à-0×-CÑ-CÐ,D€‡�×  Ñ  Ô )à36×3OÑ3OÐ2P€‡�× &Ñ &Ô /à/2×/GÑ/GÐ.H€‡�× "Ñ "Ô +ð ×"Ñ"ð5$€‡�× (Ñ (Ô 1ð 25×1NÑ1NÐ0O€‡�× $Ñ $Ô -Ø/7€‡�× $Ñ $Ô ,à03×0LÑ0LÐ/M€‡�× #Ñ #Ô ,Ø.6€‡�× #Ñ #Ô +à*-×*@Ñ*@Ð)A€‡�× Ñ Ô &Ø(+×(8Ñ(8€‡�× Ñ Ô %à-0×-FÑ-FÐ,G€‡�×  Ñ  Ô )Ø+.×+;Ñ+;€‡�×  Ñ  Ô (à03×0LÑ0LÐ/M€‡�× #Ñ #Ô ,Ø.1×.>Ñ.>€‡�× #Ñ #Ô +à,/×,DÑ,DÐ+E€‡�× Ñ Ô (Ø*-×*:Ñ*:€‡�× Ñ Ô 'ð ×"Ñ"ð2$€‡�× %Ñ %Ô .à03×0@Ñ0@€‡�× %Ñ %Ô -à),×)9Ñ)9Ð(:€‡�× Ñ Ô %Ø'/€‡�× Ñ Ô $à&)×&6Ñ&6Ð%7€‡�× Ñ Ô "Ø$*€‡�× Ñ Ô !à(+×(8Ñ(8Ð'9€‡�× Ñ Ô $Ø&+€‡�× Ñ Ô #à25×2BÑ2BÙ29¸&³/ð2C€‡�× %Ñ %Ô .á07¸Ó0A€‡�× %Ñ %Ô -à25×2BÑ2BÐ1C€‡�× %Ñ %Ô .Ø06€‡�× %Ñ %Ô -à.1×.>Ñ.>Ù.5°f«oð.?€‡�× !Ñ !Ô *à,4€‡�× !Ñ !Õ )r9   