+
    QV-j”w  ã                   óf  € R t ^ RIHt ^RIHt ^RIHtHtHtH	t	 ]! 4       '       d   ^ RI
t
^ RIHt ]! 4       '       d   ^ RIHt ^ RIHtHt ]! 4       '       d   ^ RIHt ]	P(                  ! ]4      tRR ltR	 R
 ltRR R llt ! R R]
P                  P4                  4      tRR R lltRR ltR# )zZHIGGS through FLUTE (Flexible Lookup Table Engine for LUT-quantized LLMs) integration file)Úsqrt)Úshould_convert_module)Úis_flute_availableÚis_hadamard_availableÚis_torch_availableÚloggingN)Úprepare_data_transposed)ÚTuneMetaDataÚqgemm_v2)Úhadamard_transformc                 ó^  € \        ^\        V P                  4      ,          4       Uu. uF  p^ NK  	  ppV FN  pV P                  V,          pV^,
          V,          ^,           V,          pW‡,
          p	W•RV,          ^,
          &   KP  	  \        P                  P                  WRV4      # u upi )é   Úconstantéþÿÿÿ)ÚrangeÚlenÚshapeÚnnÚ
functionalÚpad)
ÚtensorÚdimsÚhad_block_sizeÚvalueÚ_Úpad_dimsÚdimÚsizeÚnext_multiple_of_1024Údeltas
   &&&&      Úp/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/transformers/integrations/higgs.pyÚpad_to_blockr!   $   s”   € Ü  ¤S¨¯©Ó%6Õ!6Ô7Ó8Ñ7�a“Ñ7€HÐ8ÛˆØ�|‰|˜CÕ ˆØ"&¨¥(¨~Õ!=ÀÕ!AÀ^Õ SÐØ%Õ,ˆØ!&��c•˜A•Óñ	 ô �=‰=×Ñ˜V¨z¸5ÓAÐAùò 9s   ¨B*c                ó4   € V ^8„  d   QhR\         R\         RR/# )r   ÚpÚnÚreturnztorch.Tensor©Úint)Úformats   "r    Ú__annotate__r)   /   s&   € ÷ E?ñ E?”cð E?œcð E? nñ E?ó    c                 óê  € W3ERf8X  Ed   \         P                  ! . ERgR.NERhR.NERiR.NERjERk.NRERl.NRR.NRR.NR	ERm.NR
ERn.NERoR.NRR.NRERp.NRR.NRERq.NRERr.NRERs.NRERt.NRR.NERuR.NERvERw.NERxR.NERyERz.NER{ER|.NER}R.NER~ER.NER€R.NRR.NRR.NER�ER‚.NERƒER„.NER…ER†.NER‡R.NERˆER‰.NERŠR .NER‹ERŒ.NR!R".NR#R$.NR%R&.NR'ER�.NERŽR(.NR)ER�.NR*R+.NR,ER�.NR-R..NR/ER‘.NR0ER’.NR1R2.NER“ER”.NER•ER–.NR3ER—.NER˜R4.NR5R6.NR7ER™.NERšER›.NERœER�.NERžERŸ.NER R8.NER¡R9.NER¢ER£.NER¤ER¥.NR:ER¦.NR;R<.NR=R>.NR?R@.NRAER§.NER¨RB.NER©ERª.NER«ER¬.NER­RC.NRDER®.NER¯ER°.NER±ER².NER³ER´.NERµRE.NER¶RF.NER·ER¸.NRGRH.NRIRJ.NER¹RK.NRLERº.NRMRN.NER»ER¼.NER½ER¾.NROER¿.NRPERÀ.NRQERÁ.NERÂERÃ.NERÄRR.NERÅRS.NRTRU.NERÆRV.NERÇRW.NERÈRX.NRYRZ.NR[ERÉ.NERÊR\.NR]R^.NERËERÌ.NR_R`.NERÍRa.NRbRc.NERÎRd.NReERÏ.NRfRg.NRhRi.NERÐERÑ.NRjRk.NERÒERÓ.NERÔERÕ.NRlRm.NERÖRn.NER×Ro.NRpRq.NRrRs.NERØERÙ.NERÚRt.NERÛERÜ.NRuERÝ.NRvRw.NERÞERß.NRxERà.NERáERâ.NERãRy.NRzERä.NR{ERå.NR|R}.NR~R.NERæERç.NR€ERè.NERéR�.NERêERë.NERìERí.NERîR‚.NRƒERï.NERðR„.NR…ERñ.NERòR†.NERóR‡.NRˆERô.NR‰RŠ.NR‹ERõ.NERöRŒ.NER÷ERø.NR�ERù.NRŽERú.NR�ERû.NR�R‘.NERüR’.NR“ERý.NERþERÿ.NR”ER .NR•ER.NR–R—.NR˜ER.NR™Rš.NR›Rœ.NERER.NR�Rž.NRŸER.NR R¡.NERR¢.NR£ER.NR¤ER.NER	ER
.NR¥R¦.NERR§.NERER.NR¨ER.NR©Rª.NR«ER.NERER.NERR¬.NR­R®.NR¯R°.NERR±.NR²R³.NERER.NERER.NR´Rµ.NR¶ER.NR·ER.NERR¸.NR¹Rº.NERER.NERER.NERR».NER R¼.NR½R¾.NER!R¿.NRÀER".NER#ER$.NRÁER%.NRÂER&.NER'RÃ.NRÄRÅ.NER(ER).NER*RÆ.NER+ER,.NER-RÇ.NRÈER..NRÉER/.NER0RÊ.NRËER1.NER2ER3.NER4RÌ.NER5ER6.NER7RÍ.NRÎRÏ.NRÐER8.NER9RÑ.NER:ER;.NRÒRÓ.NER<RÔ.NER=ER>.NER?ER@.NRÕERA.NRÖR×.NERBRØ.NRÙRÚ.NERCRÛ.NRÜERD.NEREERF.NERGERH.NRÝRÞ.NRßRà.NRáERI.NRâERJ.NERKERL.NERMERN.NRãERO.NERPERQ.NERRERS.NRäERT.NERURå.NRæRç.NRèRé.NERVRê.NERWRë.NERXRì.NERYERZ.NRíER[.NRîRï.NRðER\.NER]Rñ.NRòRó.NRôRõ.NRöER^.NR÷ER_.NRøRù.NRúRû.NER`Rü.NRýRþ.NERaERb.NERcRÿ.NER ER.NERdER.N4      # W3ERe8X  Ed—   \         P                  ! . ERfER.NERgER.NERhER.NERERi.NERERj.NERER	.NERkER
.NERER.NERERl.NERmERn.NERER.NERERo.NERER.NERERp.NERERq.NERER.NERERr.NERER.NERER.NERsERt.NERuER.NERvERw.NERERx.NERyER.NERERz.NER{ER .NER!ER".NER|ER#.NER}ER~.NERER€.NER�ER‚.NERƒER$.NER„ER….NER†ER%.NER‡ER&.NER'ER(.NER)ER*.NER+ER,.NER-ERˆ.NER‰ERŠ.NER.ER‹.NER/ER0.NER1ERŒ.NER2ER3.NER4ER�.NER5ERŽ.NER6ER7.NER�ER�.NER‘ER’.NER8ER“.NER”ER9.NER:ER;.NER<ER•.NER–ER=.NER—ER˜.NER™ERš.NER›ER>.NERœER?.NER�ERž.NERŸER .NER@ER¡.NER¢ERA.NER£ERB.NERCERD.N4      # W3ER¤8X  dg   \         P                  ! ER¥ER¦.ER§ERE.ER¨ERF.ERGER©.ERªER«.ERHERI.ERJERK.ERLERM.ERNER¬.ER­ER®.ER¯ERO.ERPER°.ERQERR.ER±ERS.ERTER².ER³ERU..4      # W3ER´8X  dG   \         P                  ! ERµ.ER¶.ER·.ER¸.ER¹.ERº.ER».ER¼.ER].ER\.ER[.ERZ.ERY.ERX.ERW.ERV..4      # W3ER½8X  d/   \         P                  ! ER¾.ER¿.ERÀ.ERÁ.ERa.ER`.ER_.ER^..4      # W3ERÂ8X  d#   \         P                  ! ERÃ.ERÄ.ERc.ERb..4      # \        ERdV  EReV 24      h(Å  r   g    fûÆ?g   à¤]ô?g   à²\è?g    —íê?g    @yæ?g   ÀÐ‚
@g   @¯<â?g    4 @g   @ÒV
@g    Ìá?g    v•?g   `¯~Ý?g    Ëøê?g    àF÷?g   à#®	@g   À?³Ö?g    àuì?g   À�”ë?g   àv-ò?g    W¢ú?g   @á ÷?g   À-öó?g   `áÿ?g   À5´Ò?g   `cµ÷?g    â?þ?g    *Vý?g    üÒð?g   @ôÔ?g     Éð?g   €•²ä?g    dâ?g   `KGñ?g   `˜ü?g   €±½ò?g    ƒ	è?g   ÀïK@g   @ì½é?g   àßYö?g   @¡ž«?g     o@g   @’Âö?g    2â?g   €Ø?g   ÀÕR @g   `Ç(Ú?g    Erè?g   `'/×?g   €¨>Ú?g    ×?g    �cí?g   à–âË?g    +÷@g   à¼ìô?g   `(fù?g   à·xõ?g    ÁÎï?g    €“ú?g   àÔ{Ž?g   €háØ?g    _až?g    îþ?g   àÃâò?g    3˜@g   €ý#ý?g    —ž
@g   `{Xå?g    YbÞ?g    ¸ðò?g   À	û?g   àš ?g    Žâä?g   à�5í?g    µ„ã?g    A¾Û?g   à’Ñ?g   €9˜º?g   €@@g   @“Nâ?g   ÀþÚñ?g   `µ�@g    ¥¸ñ?g    b¹@g   À{Ü@g    ðh @g   àïƒö?g   À®Ká?g   À±wê?g   `“¼ä?g    Í4ð?g    •bï?g   €pöð?g   @°â?g   @Q=s?g   @°@g   À1u×?g   @´¥õ?g    ä‰«?g   `±‰@g    ªÕ@g    …,ä?g   `Tü?g   àL�å?g   à®bÜ?g    •3ã?g    ìvú?g   `¾ÁÕ?g   @£#±?g   À€3ó?g    êcÒ?g    „¤ß?g   `%Âõ?g    %·Ð?g   @‘w@g   àIŠõ?g    œý?g   €é9ñ?g   à8ÄÝ?g   `Ò@g    x°?g    �ß?g   €n•@g   €ªYÀ?g   @©×ë?g    [mÖ?g    FÌ?g   @²ß?g    c‹å?g   @ðªð?g    §#æ?g    dˆÂ?g    ºýö?g   €øíØ?g   àr†é?g    ¦ô?g   @ßåå?g    Óóþ?g   €Žõþ?g   `
ôˆ?g    ZŒç?g    Äµ?g   Àew@g    Vö?g    ÙV±?g   €å¶í?g    ÂŠù?g   `¥;ú?g    ±ý?g    ZYé?g    	žâ?g    8;ô?g    ›Þþ?g   @Rhì?g   `F
ó?g   àA’÷?g   @’—ì?g    þ8Ï?g   `ã>è?g   ÀÊà?g   Àýiò?g    ¤„ö?g   @ä� @g   €Bãø?g   @ª @g    )Wí?g   à`¨ì?g   `ì’@g    i¶ó?g   À²Çý?g    ºH¶?g    °TÌ?g   `Fó?g   €áê@g   `ÁIs?g   À_;ò?g   ÀEÝ?g   `‹<É?g   `BÞ?g   @Þ¬ø?g   @4ñ?g    TÈ?g    Wï@g   €1×?g   `¦Û?g    â¹ã?g    ÃhÏ?g   `”‰×?g    åäó?g   `›¾Ç?g   €ìÍ?g   €G)À?g    »§ò?g    •è?g    ¿ï?g   €ÚœÓ?g   @&Cæ?g   `"ý?g   À›é@g   à=�ì?g   `Lû?g    XÊñ?g   `TÇ @g   @�‰©?g     <í?g   €µzç?g   àÄ�Ó?g   À+ õ?g   à$uó?g   àü²Â?g   À§‹í?g   À›y@g    ümú?g   ÀµÙì?g    ¢tº?g     iø?g    è—@g   `sÃþ?g   `
ô@g    ³Î?g   À ˜õ?g   À¡Ñö?g    œ3@g   àžk÷?g   À”¦ú?g    éÊ?g   àÞŸà?g    pjÔ?g   àÖ0Ü?g   @ú\Þ?g   `[ý?g    ²#÷?g    Øò?g   àñ?g    ­N¸?g   À=âÒ?g   €è€Ž?g   À‡– @g   àš@g   @äë?g    RÚ@g   à�Ûí?g   `v_Ø?g   @TÁ?g   €Õéå?g   @¡ç?g    Â8ô?g   àþiÇ?g   @kê?g   àsö÷?g    ©å?g    ¾ôÞ?g   @—3@g   €õìé?g   @î º?g   €Žº¢?g   `£�Ô?g   @çÛü?g   €–ýú?g   ÀÞxÂ?g   Àk‚û?g   àlöó?g   ày½ó?g   €¦Øë?g   `Ö5÷?g   ÀÌk@g    Èzþ?g    1J@g   €±â?g   €ÐoÝ?g   À_¸?g   àÁì?g   ÀÝ$ÿ?g   À6@g   @”T÷?g   à-î?g   €æŽ @g   àÃ¹è?g   àÌ.Ì?g    �ñ?g   €´Íå?g   à,'ò?g    Þ?g   à^Ú@g   Àµ�Ý?g    ô®?g   Ài~@g    Jf½?g   `6‚@g    /Íú?g    °æ?g    Ùç?g   @*÷Û?g   @^�è?g    —à?g    Î1Ê?g   à6åõ?g   @Já?g   @(på?g   @?þ?g   àÆ ¢?g    D:Þ?g    ü±@g    jñ?g   À°=æ?g    ¬ Ú?g   À�ô?g    æÅ?g    ÚG’?g   `9ó«?g   à±Ó?g   €¥Ó?g   Àmñõ?g   à�Î?g    þyô?g    ®ôô?g   €á á?g    CÃÂ?g   ÀÀ9ö?g   Àüüð?g   `è ÷?g   `¢Š?g   `á1ô?g   À"1æ?g   ÀÊWü?g    l™ù?g   `�¸å?g    …;×?g    ˜Cç?g   €FÌã?g   @€Õ?g   @×dý?g   `FÂý?g    :Æ¢?g   €ÌÆ?g    Â¦Ô?g   `Ýê?g   @�ø?g   Àµô?g   À&í,?g    ØÖö?g   Àºì?g   àWÜ@g   àX� @g    „ãù?g   à…ô?g    §'î?g   À+å?g   €ÈÕØ?g    ?oÀ?g   @/7@g    §€õ?g    21è?g    ?_Ï?g    «*ø?g    YúÜ?zUnsupported p=z, n=)r   é   g   €Àg    B£å¿g   à_×ü¿g   €§9á¿g   @£ÒÀg   Àë…ë¿g   €i@ã¿g    ¬[ü¿g   àUÏ Àg    ³ã¿g    úã¿g   à!¦	Àg    õ‡Î¿g   àD¦í¿g   `¬Ñð¿g   €Óù¿g    äÔ¿g   ÀõiÇ¿g   `X¤ì¿g    #8ö¿g    ƒµ¿g    ÅEõ¿g   àï1ß¿g   €äÔú¿g   €¥�Àg     ø¿g   €^
Àg   @xæ¿g    n|ý¿g   @‰´ó¿g   `©pë¿g    £5û¿g   `Aîñ¿g   @UVÄ¿g    yÝü¿g   à­Së¿g    µö¿g    •Âã¿g   €sæó¿g   `ò|Î¿g    ©Dô¿g    ·Ôæ¿g   @N0ò¿g    ‡¹÷¿g   `Qcù¿g    2äù¿g    :7Àg   àdió¿g   `¯Ö¿g   `�ùØ¿g   @8iú¿g   À=€û¿g    ò©£¿g   Àû
æ¿g   à+ãê¿g   €fŠé¿g    ­Éñ¿g    ¯LÀg   `*(å¿g    ª/Õ¿g   @/aÅ¿g    êEÀg   €g�Àg   €GÀg   Àyã¿g   ÀÑ±Ü¿g   à¬Å×¿g    d,Àg   ÀûÃñ¿g   À&¡Àg   àåÙ¿g   @²"ó¿g    ¹ÙŠ¿g    —3Àg    T« Àg   @¬@û¿g   Àk¹ñ¿g   ÀªÀ¿g   `Ó{Ú¿g   à>¤ÿ¿g   ÀŽ�ú¿g   `5Àg   €I Ø¿g   Àœ½Ñ¿g   À°z�¿g    Çj	Àg    ˜ô¿g   @�­ì¿g    »}í¿g    Zè¿g   ÀcÀg    ÕÑÒ¿g   @=Dï¿g   €Šåí¿g   `Êø¿g   à ¡í¿g   Àº]Æ¿g   €¯ì¿g    …¯¿g    `œÅ¿g   @ýçÕ¿g   €Üàó¿g   €Í”Æ¿g   €_Óó¿g   `¦då¿g    Èƒ¶¿g   €x½¿g   €ì„¥¿g   ÀK3á¿g   À�/Û¿g   `ºEé¿g    Ñ
Àg    1Òù¿g   à�kó¿g    ”Îþ¿g   @ÌJß¿g    ·ðÇ¿g   À£FÖ¿g   `Ú ñ¿g    x¸À¿g   @wÿè¿g    £ø¿g   @†Ò¿g    Í†â¿g    vã¿g   `9³Ç¿g    Ìç¿g   `Ð¬Àg   `Gšé¿g   @Åúö¿g    Puø¿g   à½ôñ¿g   @Hä¿g    Þ4ï¿g   @… ì¿g   àwÀg   €M¥¿g    Öù¿g   @vPÀg   €èœÅ¿g   €LþÀg    :æÚ¿g   @_Ý Àg   à$Rä¿g   À3Ëê¿g   `åâã¿g   @çOî¿g    Lî÷¿g   €ß©Ò¿g   àæó¿g    ¥©Ô¿g   `í@ö¿g   Àâ-µ¿g   `ãô¿g   àœè Àg   Àa‹Î¿g    ˜ÐÀg   `Äø¿g   @pÚÀg   `ŸêÐ¿g    íb¿g    ‰�û¿g   `\á¿g   À‰ñ¿g   `³üé¿g    0$Ó¿g    >ø¿g    cæø¿g    ]òü¿g   àò.Ü¿g   €y¯Ø¿g   €“*þ¿g   À¿ ø¿g   `5ô¿g   €µ×¿g   `SÝû¿g   à+Dã¿g   ÀÜ¨Ý¿g    	›³¿g    xúô¿g   `“Óþ¿g    âÖÔ¿g   àúÈâ¿g    È¿g   à-Ãð¿g    Ö­ó¿g   `$Z’¿g    3à¿g    ›%ã¿g   `axö¿g   @ƒ×Ä¿g    ²„õ¿g   €ˆîé¿g   @¯CÀg    ¤nÍ¿g   €92Ö¿g   àÍ÷¿g   `ë‹ó¿g   À‘Àg    –ÀÀg    SðÀg   @�©Àg    ÔùÒ¿g   €­‚ Àg   `é¿g    X
Ú¿g   `ìgï¿g   à¹ÌØ¿g    yÃö¿g   àåmÿ¿g   €Pvó¿g   €°lÀg   À…	Ø¿g   @xÉ¿g    (Üæ¿g   €¹1Ù¿g   @qúè¿g   àŽÌ Àg   À2Iû¿g    €	þ¿g    M.ã¿g   `4í¿g   €‰ì¿g   @j€	Àg   @™Có¿g    oEø¿g   @Ÿìß¿g   À�ÎÎ¿g   €oÉñ¿g   à7�ò¿g    «+ë¿g    €„Å¿g   à…Úî¿g   €� â¿g   @«ã¿g   À(ú¿g    “=í¿g   `ü>Þ¿g    –.Àg    êžî¿g   À�jý¿g   €R¹Þ¿g   `ïÀà¿g   àÜLü¿g    «=ì¿g   €ré¿g   Àãó¿g    {ð}¿g   €S”ó¿g    …_æ¿g   `Xr¶¿g    Ò[ñ¿g   €Þç¿g    5é¿)r   é@   g   €ûÅÀg    �Šè¿g    „Àg   à6ÙÀg   à²ôÐ¿g   À”$°¿g    .þý¿g   À„hþ¿g    Š¦Ó¿g   €î“å¿g    ¹é¿g   À�Öù¿g   à”fø¿g   @L´ô¿g    >ûÛ¿g   €4b·¿g    Né¿g   €óûÞ¿g   €nZí¿g   €t¼â¿g   €^GÀg   `åmù¿g    O†Ü¿g    õ©ý¿g    šgý¿g    ^Dù¿g    ÍFð¿g    ™|ð¿g   €¶1ù¿g   `8ÿ¿g   ÀàÖ¿g   €<Sþ¿g    ^Àö¿g    Wií¿g   ÀÀäã¿g   `÷uÚ¿g   ànÍ¿g    ¨[à¿g    îZÂ¿g   à˜Ü¿g   ÀÈÂö¿g    :eî¿g    z¥î¿g    k¶Àg    ×éî¿g    [rÙ¿g   àîß¿g   `/Øò¿g   à(&ö¿g   @äËÝ¿g   €Šèó¿g   `Ù¿g   @8lç¿g    §hö¿g   €ß«ë¿g   àz|ì¿g    yå�¿g   `Ý¨ï¿g   @õºÀg    Êð¿g    ;S¥¿g   €œ"Õ¿)r   é   g    
Êì¿g   @:-ú¿g   àÂî¿g   €Çþ¿g   @õwÿ¿g    Îå¿g   @Luâ¿g   €äî¿g   `Ö(ü¿g   àEûã¿g   €ºÇì¿g    OÓ¿g   À©LS¿g    ƒSó¿g   @{£Ä¿)é   r.   g   àWÜÀg   àX� Àg    „ãù¿g   à…ô¿g    §'î¿g   À+å¿g   €ÈÕØ¿g    ?oÀ¿)r/   é   g   @/7Àg    §€õ¿g    21è¿g    ?_Ï¿)r/   é   g    «*ø¿g    YúÜ¿)Útorchr   ÚNotImplementedError)r#   r$   s   &&r    Úget_higgs_gridr4   /   sZ  € Ø	€v‘ÕÜ�|Š|ðAÙ#Ð%8Ð9ðAá$Ð&8Ð9ðAñ %Ð&8Ð9ðAñ $Ñ%8Ð9ð	Að
 $Ñ%8Ð9ðAð $Ð%7Ð8ðAð $Ð%7Ð8ðAð #Ñ$7Ð8ðAð $Ñ%8Ð9ðAñ %Ð&:Ð;ðAð %Ð&8Ð9ðAð $Ñ%8Ð9ðAð #Ð$6Ð7ðAð $Ñ%8Ð9ðAð $Ñ%8Ð9ðAð  $Ñ%9Ð:ð!Að" $Ñ%8Ð9ð#Að$ $Ð%7Ð8ð%Añ& %Ð&6Ð7ð'Añ( #Ñ$7Ð8ð)Añ* %Ð&8Ð9ð+Añ, %Ñ&9Ð:ð-Añ. &Ñ'9Ð:ð/Añ0 $Ð%7Ð8ð1Añ2 %Ñ&9Ð:ð3Añ4 %Ð&8Ð9ð5Að6 $Ð%7Ð8ð7Að8 $Ð%7Ð8ð9Añ: $Ñ%8Ð9ð;Añ< %Ñ&9Ð:ð=Añ> %Ñ&9Ð:ð?Añ@ $Ð%7Ð8ðAAñB %Ñ&8Ð9ðCAñD %Ð&8Ð9ðEAñF %Ñ&9Ð:ðGAðH $Ð%7Ð8ðIAðJ #Ð$6Ð7ðKAðL #Ð$6Ð7ðMAðN $Ñ%7Ð8ðOAñP &Ð';Ð<ðQAðR #Ñ$7Ð8ðSAðT $Ð%6Ð7ðUAðV #Ñ$7Ð8ðWAðX $Ð%7Ð8ðYAðZ $Ñ%8Ð9ð[Að\ $Ñ%8Ð9ð]Að^ $Ð%8Ð9ð_Añ` %Ñ&8Ð9ðaAñb %Ñ&9Ð:ðcAðd $Ñ%9Ð:ðeAñf %Ð&9Ð:ðgAðh #Ð$6Ð7ðiAðj #Ñ$7Ð8ðkAñl $Ñ%:Ð;ðmAñn %Ñ&9Ð:ðoAñp %Ñ&9Ð:ðqAñr %Ð&8Ð9ðsAñt %Ð&8Ð9ðuAñv &Ñ';Ð<ðwAñx %Ñ&8Ð9ðyAðz $Ñ%7Ð8ð{Að| &Ð'9Ð:ð}Að~ &Ð'9Ð:ðAð@ #Ð$5Ð6ðAAðB #Ñ$7Ð8ðCAñD &Ð'8Ð9ðEAñF %Ñ&9Ð:ðGAñH %Ñ&9Ð:ðIAñJ &Ð'9Ð:ðKAðL #Ñ$7Ð8ðMAñN 'Ñ(9Ð:ðOAñP %Ñ&8Ð9ðQAñR %Ñ&9Ð:ðSAñT %Ð&8Ð9ðUAñV $Ð%6Ð7ðWAñX $Ñ%8Ð9ðYAðZ %Ð&8Ð9ð[Að\ $Ð%7Ð8ð]Añ^ &Ð'8Ð9ð_Að` %Ñ&:Ð;ðaAðb %Ð&8Ð9ðcAñd 'Ñ(:Ð;ðeAñf %Ñ&9Ð:ðgAðh $Ñ%7Ð8ðiAðj $Ñ%8Ð9ðkAðl $Ñ%8Ð9ðmAñn $Ñ%8Ð9ðoAñp %Ð&7Ð8ðqAñr $Ð%6Ð7ðsAðt $Ð%6Ð7ðuAñv %Ð&7Ð8ðwAñx %Ð&7Ð8ðyAñz %Ð&8Ð9ð{Að| $Ð%7Ð8ð}Að~ #Ñ$8Ð9ðAñ@ &Ð'9Ð:ðAAðB $Ð%9Ð:ðCAñD &Ñ':Ð;ðEAðF #Ð$6Ð7ðGAñH &Ð'9Ð:ðIAðJ %Ð&7Ð8ðKAñL %Ð&7Ð8ðMAðN #Ñ$6Ð7ðOAðP $Ð%7Ð8ðQAðR $Ð%7Ð8ðSAñT &Ñ';Ð<ðUAðV $Ð%8Ð9ðWAñX &Ñ':Ð;ðYAñZ %Ñ&9Ð:ð[Að\ %Ð&8Ð9ð]Añ^ %Ð&9Ð:ð_Añ` $Ð%7Ð8ðaAðb $Ð%8Ð9ðcAðd #Ð$6Ð7ðeAñf %Ñ&9Ð:ðgAñh %Ð&8Ð9ðiAñj %Ñ&9Ð:ðkAðl $Ñ%8Ð9ðmAðn $Ð%6Ð7ðoAñp %Ñ&9Ð:ðqAðr %Ñ&9Ð:ðsAñt %Ñ&9Ð:ðuAñv %Ð&8Ð9ðwAðx #Ñ$8Ð9ðyAðz $Ñ%8Ð9ð{Að| $Ð%8Ð9ð}Að~ %Ð&7Ð8ðAñ@ %Ñ&9Ð:ðAAðB $Ñ%8Ð9ðCAñD %Ð&8Ð9ðEAñF %Ñ&9Ð:ðGAñH %Ñ&9Ð:ðIAñJ %Ð&8Ð9ðKAðL %Ñ&;Ð<ðMAñN %Ð&8Ð9ðOAðP %Ñ&7Ð8ðQAñR &Ð'9Ð:ðSAñT #Ð$5Ð6ðUAðV $Ñ%8Ð9ðWAðX $Ð%6Ð7ðYAðZ &Ñ':Ð;ð[Añ\ %Ð&8Ð9ð]Añ^ $Ñ%8Ð9ð_Að` %Ñ&9Ð:ðaAðb $Ñ%8Ð9ðcAðd $Ñ%8Ð9ðeAðf %Ð&8Ð9ðgAñh %Ð&8Ð9ðiAðj $Ñ%9Ð:ðkAñl $Ñ%9Ð:ðmAðn #Ñ$7Ð8ðoAðp $Ñ%8Ð9ðqAðr $Ð%7Ð8ðsAðt #Ñ$7Ð8ðuAðv $Ð%6Ð7ðwAðx $Ð%7Ð8ðyAñz %Ñ&9Ð:ð{Að| $Ð%7Ð8ð}Að~ $Ñ%7Ð8ðAð@ #Ð$6Ð7ðAAñB %Ð&8Ð9ðCAðD #Ñ$:Ð;ðEAðF $Ñ%8Ð9ðGAñH %Ñ&8Ð9ðIAðJ $Ð%7Ð8ðKAñL %Ð&7Ð8ðMAñN &Ñ':Ð;ðOAðP $Ñ%7Ð8ðQAðR $Ð%8Ð9ðSAðT %Ñ&9Ð:ðUAñV %Ñ&:Ð;ðWAñX #Ð$5Ð6ðYAðZ #Ð$8Ð9ð[Að\ #Ð$7Ð8ð]Añ^ $Ð%8Ð9ð_Að` %Ð&8Ð9ðaAñb %Ñ&:Ð;ðcAñd %Ñ&9Ð:ðeAðf $Ð%8Ð9ðgAðh "Ñ#7Ð8ðiAðj $Ñ%9Ð:ðkAñl %Ð&7Ð8ðmAðn $Ð%8Ð9ðoAñp %Ñ&9Ð:ðqAñr %Ñ&9Ð:ðsAñt %Ð&8Ð9ðuAñv $Ð%7Ð8ðwAðx %Ð&9Ð:ðyAñz 'Ð(;Ð<ð{Að| $Ñ%8Ð9ð}Añ~ %Ñ&7Ð8ðAð@ $Ñ%9Ð:ðAAðB $Ñ%7Ð8ðCAñD %Ð&8Ð9ðEAðF $Ð%7Ð8ðGAñH %Ñ&9Ð:ðIAñJ &Ð'9Ð:ðKAñL %Ñ&9Ð:ðMAñN %Ð&8Ð9ðOAðP #Ñ$7Ð8ðQAðR $Ñ%8Ð9ðSAñT $Ð%7Ð8ðUAðV %Ñ&9Ð:ðWAñX $Ñ%8Ð9ðYAñZ %Ð&8Ð9ð[Añ\ %Ñ&9Ð:ð]Añ^ %Ð&8Ð9ð_Að` $Ð%7Ð8ðaAðb $Ñ%8Ð9ðcAñd %Ð&9Ð:ðeAñf %Ñ&:Ð;ðgAðh $Ð%7Ð8ðiAñj %Ð&7Ð8ðkAñl $Ñ%9Ð:ðmAñn %Ñ&8Ð9ðoAðp $Ñ%8Ð9ðqAðr $Ð%7Ð8ðsAñt %Ð&7Ð8ðuAðv $Ð%7Ð8ðwAñx %Ð&9Ð:ðyAðz $Ñ%8Ð9ð{Añ| %Ñ&9Ð:ð}Añ~ %Ñ&9Ð:ðAð@ $Ð%6Ð7ðAAðB #Ð$6Ð7ðCAðD %Ñ&9Ð:ðEAðF $Ñ%9Ð:ðGAñH %Ñ&9Ð:ðIAñJ %Ñ&9Ð:ðKAðL $Ñ%8Ð9ðMAñN %Ñ&9Ð:ðOAñP %Ñ&9Ð:ðQAðR %Ñ&:Ð;ðSAñT $Ð%8Ð9ðUAðV #Ð$6Ð7ðWAðX $Ð%7Ð8ðYAñZ %Ð&9Ð:ð[Añ\ $Ð%7Ð8ð]Añ^ %Ð&:Ð;ð_Añ` %Ñ&9Ð:ðaAðb $Ñ%8Ð9ðcAðd #Ð$6Ð7ðeAðf #Ñ$7Ð8ðgAñh %Ð&8Ð9ðiAðj %Ð&9Ð:ðkAðl $Ð%7Ð8ðmAðn $Ñ%:Ð;ðoAðp %Ñ&7Ð8ðqAðr $Ð%7Ð8ðsAðt $Ð%8Ð9ðuAñv %Ð&7Ð8ðwAðx $Ð%8Ð9ðyAñz &Ñ'9Ð:ð{Añ| %Ð&9Ð:ð}Añ~ $Ñ%6Ð7ðAñ@ %Ñ&8Ð9ðAAóC
ð C	
ðH 	
€v‘ÕÜ�|Š|ðAÙ$Ñ&9Ð:ðAá#Ñ%7Ð8ðAñ %Ñ&8Ð9ðAñ #Ñ$7Ð8ð	Añ
 $Ñ%8Ð9ðAñ $Ñ%7Ð8ðAñ &Ñ'9Ð:ðAñ #Ñ$5Ð6ðAñ $Ñ%8Ð9ðAñ $Ñ%9Ð:ðAñ %Ñ&8Ð9ðAñ #Ñ$7Ð8ðAñ $Ñ%7Ð8ðAñ $Ñ%8Ð9ðAñ $Ñ%7Ð8ðAñ  #Ñ$7Ð8ð!Añ" $Ñ%7Ð8ð#Añ$ $Ñ%7Ð8ð%Añ& $Ñ%6Ð7ð'Añ( $Ñ%8Ð9ð)Añ* &Ñ'9Ð:ð+Añ, %Ñ&:Ð;ð-Añ. &Ñ':Ð;ð/Añ0 %Ñ&6Ð7ð1Añ2 %Ñ&8Ð9ð3Añ4 %Ñ&7Ð8ð5Añ6 $Ñ%7Ð8ð7Añ8 $Ñ%7Ð8ð9Añ: %Ñ&9Ð:ð;Añ< %Ñ&8Ð9ð=Añ> $Ñ%8Ð9ð?Añ@ %Ñ&9Ð:ðAAñB %Ñ&9Ð:ðCAñD %Ñ&8Ð9ðEAñF %Ñ&8Ð9ðGAñH %Ñ&8Ð9ðIAñJ $Ñ%7Ð8ðKAñL $Ñ%8Ð9ðMAñN $Ñ%8Ð9ðOAñP &Ñ';Ð<ðQAñR $Ñ%8Ð9ðSAñT #Ñ$6Ð7ðUAñV %Ñ&:Ð;ðWAñX $Ñ%8Ð9ðYAñZ %Ñ&:Ð;ð[Añ\ &Ñ':Ð;ð]Añ^ $Ñ%8Ð9ð_Añ` %Ñ&9Ð:ðaAñb %Ñ&9Ð:ðcAñd $Ñ%9Ð:ðeAñf %Ñ&8Ð9ðgAñh $Ñ%7Ð8ðiAñj $Ñ%8Ð9ðkAñl $Ñ%7Ð8ðmAñn &Ñ':Ð;ðoAñp %Ñ&9Ð:ðqAñr %Ñ&8Ð9ðsAñt %Ñ&8Ð9ðuAñv %Ñ&:Ð;ðwAñx %Ñ&9Ð:ðyAñz #Ñ$6Ð7ð{Añ| 'Ñ(<Ð=ð}Añ~ %Ñ&6Ð7ðAñ@ $Ñ%7Ð8ðAAóC
ð C	
ðH ˆ‘7Ô	Ü�|Š|á$Ñ&9Ð:Ù#Ñ%7Ð8Ù#Ñ%6Ð7Ù$Ñ&9Ð:Ù$Ñ&8Ð9Ù#Ñ%7Ð8Ù#Ñ%7Ð8Ù"Ñ$8Ð9Ù$Ñ&9Ð:Ù$Ñ&9Ð:Ù$Ñ&9Ð:Ù"Ñ$7Ð8Ù#Ñ%7Ð8Ù'Ñ)?Ð@Ù#Ñ%7Ð8Ù%Ñ'9Ð:ð!ó
ð 	
ð( ˆ‘7Ô	Ü�|Š|á$Ð%Ù#Ð$Ù$Ð%Ù$Ð%Ù$Ð%Ù$Ð%Ù%Ð&Ù%Ð&Ù$Ð%Ù$Ð%Ù#Ð$Ù#Ð$Ù#Ð$Ù#Ð$Ù"Ð#Ù#Ð$ð!ó
ð 	
ð( ˆ‘6Ô	Ü�|Š|á$Ð%Ù$Ð%Ù$Ð%Ù$Ð%Ù#Ð$Ù#Ð$Ù#Ð$Ù#Ð$ð	ó
ð 	
ð ˆ‘6Ô	Ü�|Š|Ñ1Ð2Ñ5HÐ4IÑL^ÐK_ÑbtÐauÐvÓwÐwä!¡N°1°#±T¸!¸Ð"=Ó>Ð>r*   c                óH   € V ^8„  d   QhR\         R\         R\         R\         /# )r   Úbitsr#   Ú
group_sizeÚhadamard_sizer&   )r(   s   "r    r)   r)   ·  s)   € ÷ 0ñ 0¤cð 0´#ð 0Äsð 0Ôadñ 0r*   c                 óš  € \        V P                  4      ^8X  g   Q R4       h\        V^W!,          ,          4      P                  V P                  4      p\
        P                  P                  VRR7      ^,          pV P                  pV P                  pV P                  R\
        P                  R7      p \        V ^.V4      p V P                  ^,          V,          p	V P                  RW”4      p \
        P                  P                  V RR7      p
\        V ^4      V
R,          ,          p \        V ^.V4      P                  V P                  ^ ,          V	RV4      p \
        P                  ! V P                  RR V\
        P                  R7      p\        ^ V P                  ^ ,          ^4       Fi  p\
        P                   ! ^WV^,            ,          VP"                  ,          V,
          RR7      P                  \
        P                  4      W¼V^,           % Kk  	  ? VP                  VP                  ^ ,          R4      pV
\%        V4      ,          p
\'        V\
        P(                  ! V
P                  V4      WC,          ^R7      VP                  V4      VVVVVRR	7	      w  r
rÞpR
V RV
RVRVP+                  \
        P,                  R7      RV/# )r   z%Only 2D weights are supported for now)ÚaxisT)ÚcopyÚdtypeN©Údevicer<   )r   F)Únum_bitsr7   Úvector_sizer<   r>   Úcheck_correctnessÚweightÚscalesÚtablesÚtables2©r<   Útune_metadataéÿÿÿÿ)ºNNNrI   N)r   r   r4   Útor>   r2   ÚlinalgÚnormr<   Úfloat32r!   Úreshaper   ÚemptyÚuint8r   ÚargmaxÚTr   r   Úrepeat_interleaveÚviewÚfloat16)rB   r6   r#   r7   r8   ÚgridÚgrid_norm_2r>   r<   ÚmultrC   ÚcodesÚirD   rE   rG   s   &&&&&           r    Úquantize_with_higgsr[   ·  sH  € Üˆv�|‰|Ó Ô!ÐJÐ#JÓJÐ!ä˜!˜Q 1¥8�_Ó-×0Ñ0°·±Ó?€DÜ—,‘,×#Ñ# D¨rÐ#Ó2°aÕ7€Kà�]‰]€FØ�L‰L€EØ�Y‰Y˜D¬¯©ˆYÓ6€Fä˜& 1 # }Ó5€Fð �<‰<˜�?˜mÕ+€DØ�^‰^˜B Ó4€FÜ�\‰\×Ñ˜v¨BÐÓ/€FÜ ¨Ó*¨V°JÕ-?Õ?€Fô ˜& 1 # qÓ)×1Ñ1°&·,±,¸qµ/À4ÈÈQÓO€Fô �KŠK˜Ÿ™ S bÐ)°&ÄÇÁÔL€EÜ�1�f—l‘l 1•o rÖ*ˆÜ!ŸLšL¨¨V¸¸B½Ð-?Õ)?À$Ç&Á&Õ)HÈ;Õ)VÐ\^Ô_×bÑbÔch×cnÑcnÓoˆ�!�b•&Òñ +àà�M‰M˜%Ÿ+™+ a�.¨"Ó-€EØ”d˜=Ó)Õ)€Fä5LØÜ×Ò §	¡	¨%Ó 0°-Õ2MÐSTÔUØ�‰�‹ØØØØØØô
6Ñ2€F�F ]ð 	�&Ø�&Ø�&Ø�7—<‘<¤e§m¡m�<Ó4Ø˜ðð r*   c                   óH   a a€ ] tR tRt oRV3R lV 3R llltR tRtVtV ;t# )ÚHiggsLineariê  c                óˆ   <€ V ^8„  d   QhRS[ RS[ RS[ RS[P                  R,          RS[P                  R,          RS[ RS[ /# )	r   Úin_featuresÚout_featuresr?   r<   Nr>   r7   r8   )r'   r2   r<   r>   )r(   Ú__classdict__s   "€r    r)   ÚHiggsLinear.__annotate__ë  sc   ø€ ÷ '0ñ '0áð'0ñ ð'0ñ ð	'0ñ �{‰{˜TÕ!ð'0ñ —‘˜tÕ#ð'0ñ ð'0ñ ñ'0r*   c	                ó^  <€ \         S	V `  4        Wn        W n        W0n        Wpn        W€n        W,          ^ 8X  g   Q hVR9   g   Q h\        P                  ! \        P                  ! W#,          ^,          V3\        P                  VR7      RR7      V n        \        P                  ! \        P                  ! W!V,          3WVR7      RR7      V n        \        P                  ! \        P                  ! ^V,          3WVR7      RR7      V n        \        P                  ! \        P                  ! ^V,          ^V,          ^3WVR7      RR7      V n        V'       d5   \        P                  ! \        P                  ! W&VR7      RR7      V n        MV P#                  RR4       RV n        RV n        R# )é    )r<   r>   F)Úrequires_gradr=   ÚbiasN)r   é   r1   )ÚsuperÚ__init__r_   r`   r?   r7   r8   r   Ú	Parameterr2   rO   Úint16rB   rC   rD   rE   rf   Úregister_parameterÚ	workspacerG   )
Úselfr_   r`   r?   rf   r<   r>   r7   r8   Ú	__class__s
   &&&&&&&&&€r    ri   ÚHiggsLinear.__init__ë  sD  ø€ ô 	‰ÑÔØ&ÔØ(ÔØ ŒØ$ŒØ*ÔàÕ'¨1Ô,Ð,Ð,Ø˜9Ô$Ð$Ð$ä—l’lÜ�KŠK˜Õ0°BÕ6¸ÐDÌEÏKÉKÐ`fÔgØô
ˆŒô —l’lÜ�KŠK˜°jÕ'@ÐAÈÔ^Ðnsô
ˆŒô —l’l¤5§;¢;°°8µ¨~ÀUÔ#ZÐjoÔpˆŒÜ—|’|Ü�KŠK˜˜H� a¨¥k°1Ð5¸UÔRÐbgô
ˆŒ÷ ÜŸš¤U§[¢[°ÐTYÔ%ZÐjoÔpˆD�Ià×#Ñ# F¨DÔ1àˆŒØ+/ˆÖr*   c                óR  € \        VR.V P                  4      pV P                  f   \        R4      h\	        VV P
                  V P                  V P                  V P                  P                  \        P                  R7      V P                  V P                  V P                  R7      # )r/   z,Workspace must be set before calling forwardrF   )r8   rH   )r!   r8   rm   Ú	Exceptionr
   rB   rC   rD   rE   rT   r2   rM   rG   )rn   Úxs   &&r    ÚforwardÚHiggsLinear.forward  s…   € Ü˜˜R˜D $×"4Ñ"4Ó5ˆà�>‰>Ò!ÜÐJÓKÐKäØØ�K‰KØ�K‰KØ�K‰KØ�L‰L×Ñ¤E§M¡MÐÓ2Ø�N‰NØ×ÑØ×,Ñ,ô	
ð 		
r*   )rf   r7   r8   r_   r?   r`   rC   rD   rE   rG   rB   rm   )TNNr,   é   )	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__ri   rt   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)ro   ra   s   @@r    r]   r]   ê  s   ù‡ € ÷'0õ '0÷R
ò 
r*   r]   c                óH   € V ^8„  d   QhR\         \        ,          R,          /# )r   Úmodules_to_not_convertN)ÚlistÚstr)r(   s   "r    r)   r)   &  s   € ÷ (ñ (¼TÄ#½YÈÕ=Mñ (r*   c                óZ  € RpV P                  4        Fâ  w  rE\        WA4      '       g   K  \        P                  ! R4      ;_uu_ 4        \	        V\
        P                  4      '       d„   \        VP                  VP                  VP                  RJVP                  VP                  VP                  R7      p\        V4      Vn        VP!                  R4       V P#                  WF4       RpRRR4       Kä  	  V'       g   \$        P'                  R4       V #   + '       g   i     EK  ; i)a7  
Public method that replaces the Linear layers of the given model with HIGGS quantized layers.

Args:
    model (`torch.nn.Module`):
        The model to convert, can be any `torch.nn.Module` instance.
    modules_to_not_convert (`list[str]`, *optional*, defaults to `None`):
        A list of nn.Linear weights to not convert. If a parameter path is in the list (e.g. `lm_head.weight`), the corresponding module will not be
        converted.
    quantization_config (`HiggsConfig`):
        The quantization config object that contains the quantization parameters.
FÚmetaN)rf   r?   r8   r7   Tz»You are loading your model using eetq but no linear modules were found in your model. Please double check your model architecture, or submit an issue on github if you think this is a bug.)Únamed_modulesr   r2   r>   Ú
isinstancer   ÚLinearr]   r_   r`   rf   r6   r8   r7   ÚtypeÚ
source_clsÚrequires_grad_Úset_submoduleÚloggerÚwarning)Úmodelr   Úquantization_configÚhas_been_replacedÚmodule_nameÚmoduleÚ
new_modules   &&&    r    Úreplace_with_higgs_linearr“   &  sò   € ð Ðà$×2Ñ2Ö4ÑˆÜ$ [×IÒIÙÜ�\Š\˜&×!Õ!Ü˜&¤"§)¡)×,Ò,Ü(Ø×&Ñ&Ø×'Ñ'ØŸ™¨DÐ0Ø0×5Ñ5Ø"5×"CÑ"CØ2×=Ñ=ô�
ô )-¨V«�
Ô%Ø×)Ñ)¨%Ô0Ø×#Ñ# KÔ<Ø$(Ð!÷ "Ñ!ñ  5÷$ Ü�‰ðô	
ð
 €L÷+ "×!Ñ!ús   Á	B$DÄD*c                óŽ  € \         P                  ! 4       ;_uu_ 4        V P                  4        EFs  w  r#Vf   . pVP                  V4       \	        V\
        4      '       dü   VP                  pVP                  p\         P                  P                  VVVP                  RJVP                  P                  VP                  P                  R7      V P                  V&   V! \         P                  ! WCP                  P                  VP                  P                  R7      4      P                   P#                  4       V P                  V,          P$                  n        \)        \+        VP-                  4       4      4      ^ 8”  d   \/        VVR7      pVP1                  R4       EKv  	  V uuRRR4       #   + '       g   i     R# ; i)a­  
Dequantizes the HiggsLinear layers in the given model by replacing them with standard torch.nn.Linear layers.
Args:
    model (torch.nn.Module): The model containing HiggsLinear layers to be dequantized.
    current_key_name (list, optional): A list to keep track of the current module names during recursion. Defaults to None.
Returns:
    torch.nn.Module: The model with HiggsLinear layers replaced by torch.nn.Linear layers.
N)rf   r>   r<   r=   )Úcurrent_key_namerH   )r2   Úno_gradÚnamed_childrenÚappendr…   r]   r_   r`   r   r†   rf   rC   r>   r<   Ú_modulesÚeyerR   Ú
contiguousrB   Údatar   r€   ÚchildrenÚdequantize_higgsÚpop)r�   r•   Únamer‘   r_   r`   r   s   &&     r    rž   rž   Q  sG  € ô 
�Š��Ø!×0Ñ0×2‰LˆDØÒ'Ø#%Ð Ø×#Ñ# DÔ)ä˜&¤+×.Ò.Ø$×0Ñ0�Ø%×2Ñ2�ä',§x¡x§¡ØØ ØŸ™¨DÐ0Ø!Ÿ=™=×/Ñ/Ø Ÿ-™-×-Ñ-ð (7ó (�—‘˜tÑ$ñ 4:Ü—I’I˜k·-±-×2FÑ2FÈfÏmÉm×NaÑNaÔbó4ç‘!—J‘J“Lð —‘˜tÕ$×+Ñ+Ô0ô ”4˜Ÿ™Ó)Ó*Ó+¨aÔ/Ü$ØØ%5ô�ð
 × Ñ  ×$ñ7 3ð8 ÷; 
��‹ús   žF
F3Æ3G	)rd   )r1   r   r,   rv   )NN)N)Ú__doc__Úmathr   Úquantizers.quantizers_utilsr   Úutilsr   r   r   r   r2   Útorch.nnr   Úflute.integrations.higgsr   Ú
flute.tuner	   r
   Úfast_hadamard_transformr   Ú
get_loggerrw   r‹   r!   r4   r[   ÚModuler]   r“   rž   © r*   r    Ú<module>r¬      s†   ðñ ]å å ?ß ZÓ Zñ ×ÒÛÝá×ÒÝ@ß1á×ÒÝ:à	×	Ò	˜HÓ	%€ôBõE?÷P0ôf9
�%—(‘(—/‘/ô 9
÷x(öV'r*   