+
    œ°³jB  ã                   óZ  € ^ RI t ^ RIt^ RIHu Ht ^ RIHt ^RIHt ^RI	H
t
 ^RIHt ^RIHtHt ^RIHt ^RIHtHt ^R	IHt ^R
IHt ^RIHt  ! R R]P6                  4      t ! R R]P6                  4      t] ! R R]4      4       t] ! R R]4      4       t ! R R]4      t . ROt!R# )é    N)Únn)Úinitialization)ÚCache)Úcreate_causal_mask)ÚBaseModelOutputWithPastÚCausalLMOutputWithPast)ÚPreTrainedModel)Úauto_docstringÚcan_return_tuple)Úmaybe_autocast)Ú	AutoModel©Ú	PI0Configc                   óH   a a€ ] tR t^&t oV 3R lt]R 4       tR tRtVt	V ;t
# )ÚPI0TimestepEmbeddingsc                óŒ   <€ \         SV `  4        Wn        V P                  V4      p\        P
                  ! VR R7      V n        R# )F)Ú
persistentN)ÚsuperÚ__init__ÚconfigÚcompute_freqsr   ÚBufferÚsinusoid_freq)Úselfr   r   Ú	__class__s   && €Úe/home/luca/screen-checking/.venv/lib/python3.14/site-packages/transformers/models/pi0/modeling_pi0.pyr   ÚPI0TimestepEmbeddings.__init__'   s6   ø€ Ü‰ÑÔØŒØ×*Ñ*¨6Ó2ˆÜŸYšY }ÀÔGˆÖó    c                ó@  € \         P                  ! R RV P                  P                  ^,          \         P                  R7      pV P
                  V P                  V P
                  ,          V,          ,          pRV,          ^,          \        P                  ,          pV# )ç        ç      ð?©Údtype)	ÚtorchÚlinspaceÚ
dit_configÚhidden_sizeÚfloat32Ú
min_periodÚ
max_periodÚmathÚpi)r   ÚfractionÚperiodr   s   &   r   r   Ú#PI0TimestepEmbeddings.compute_freqs-   sr   € ä—>’> # s¨F×,=Ñ,=×,IÑ,IÈQÕ,NÔV[×VcÑVcÔdˆØ×"Ñ" f×&7Ñ&7¸&×:KÑ:KÕ&KÐPXÕ%XÕXˆØ˜f� qÕ(¬4¯7©7Õ2ˆØÐr   c                óÔ  € \        VP                  P                  \        4      '       d2   VP                  P                  R 8w  d   VP                  P                  MRp\	        VRR7      ;_uu_ 4        V P
                  R,          pW1R,          ,          p\        P                  ! VP                  4       VP                  4       .^R7      pRRR4       V#   + '       g   i     X# ; i)ÚmpsÚcpuF)Údevice_typeÚenabledN©Údim©NºNNN)r8   N)
Ú
isinstanceÚdeviceÚtypeÚstrr   r   r$   ÚcatÚsinÚcos)r   Útimer3   r   ÚembÚtime_embedss   &&    r   ÚforwardÚPI0TimestepEmbeddings.forward4   s©   € Ü*4°T·[±[×5EÑ5EÄs×*KÒ*KÐPT×P[ÑP[×P`ÑP`ÐdiÔPi�d—k‘k×&Ò&ÐotˆÜ¨¸U×CÖCØ ×.Ñ.¨wÕ7ˆMØ w¥-Õ/ˆCÜŸ)š) S§W¡W£Y°·±³	Ð$:ÀÔBˆK÷ Dð Ð÷	 DÖCð Ðús   Á3ACÃC'	)r   r   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   Ústaticmethodr   rC   Ú__static_attributes__Ú__classdictcell__Ú__classcell__©r   Ú__classdict__s   @@r   r   r   &   s)   ù‡ € õHð ñó ð÷ò r   r   c                   ó8   a a€ ] tR t^=t oV 3R ltR tRtVtV ;t# )ÚPI0ActionTimeEmbeddingc                óJ  <€ \         SV `  4        \        V4      V n        \        P
                  ! VP                  VP                  P                  4      V n	        \        P
                  ! VP                  VP                  P                  4      V n        \        P
                  ! ^VP                  P                  ,          VP                  P                  4      V n        \        P
                  ! VP                  P                  VP                  P                  4      V n        R# )é   N)r   r   r   Úsinusoid_embedsr   ÚLinearÚmax_action_dimr&   r'   Úaction_in_projÚmax_state_dimÚ
state_projÚaction_time_mlp_inÚaction_time_mlp_out©r   r   r   s   &&€r   r   ÚPI0ActionTimeEmbedding.__init__>   s¿   ø€ Ü‰ÑÔÜ4°VÓ<ˆÔÜ Ÿiši¨×(=Ñ(=¸v×?PÑ?P×?\Ñ?\Ó]ˆÔÜŸ)š) F×$8Ñ$8¸&×:KÑ:K×:WÑ:WÓXˆŒÜ"$§)¢)¨A°×0AÑ0A×0MÑ0MÕ,MÈv×O`ÑO`×OlÑOlÓ"mˆÔÜ#%§9¢9¨V×->Ñ->×-JÑ-JÈF×L]ÑL]×LiÑLiÓ#jˆÖ r   c                ó¬  € V P                  V4      pV P                  V4      pV P                  V4      pVR,          P                  V4      P	                  VP
                  R7      p\        P                  ! WV.^R7      pV P                  \        P                  ! V P                  V4      4      4      p\        P                  ! VR,          V.^R7      pV# )r8   r"   r5   )r8   Nr8   )rX   rV   rS   Ú	expand_asÚtor#   r$   r=   rZ   ÚFÚsilurY   )	r   ÚstateÚnoiseÚtimestepÚstate_embedsÚaction_embedsrB   Úaction_time_embedsÚaction_embeds_mergeds	   &&&&     r   rC   ÚPI0ActionTimeEmbedding.forwardF   s·   € Ø—‘ uÓ-ˆØ×+Ñ+¨EÓ2ˆà×*Ñ*¨8Ó4ˆØ! *Õ-×7Ñ7¸ÓF×IÑIÐP]×PcÑPcÐIÓdˆä"ŸYšY¨Ð'CÈÔKÐØ!×5Ñ5´a·f²f¸T×=TÑ=TÐUgÓ=hÓ6iÓjÐÜ$Ÿyšy¨,°zÕ*BÐDVÐ)WÐ]^Ô_ÐØ#Ð#r   )rV   rY   rZ   rS   rX   )	rE   rF   rG   rH   r   rC   rJ   rK   rL   rM   s   @@r   rP   rP   =   s   ù‡ € õk÷
$ò 
$r   rP   c                   óh   a a€ ] tR t^St oRtRtRtR.tRtRt	Rt
RtRtRtV 3R ltV3R ltRtVtV ;t# )	ÚPI0PreTrainedModelÚmodelrb   TÚpast_key_valuesc                óÊ   <€ \         SV `  V4       \        V\        4      '       d=   \        P
                  ! VP                  VP                  VP                  4      4       R # R # ©N)	r   Ú_init_weightsr9   r   ÚinitÚcopy_r   r   r   )r   Úmoduler   s   &&€r   rp   Ú PI0PreTrainedModel._init_weightsa   sF   ø€ Ü‰Ñ˜fÔ%Ü�fÔ3×4Ò4Ü�JŠJ�v×+Ñ+¨V×-AÑ-AÀ&Ç-Á-Ó-PÖQñ 5r   c                ó&   <€ V ^8„  d   Qh/ S[ ;R&   # ©rR   r   r   )ÚformatrN   s   "€r   Ú__annotate__ÚPI0PreTrainedModel.__annotate__S   s   ø‡ ‚ áÑò r   © )ÚimageÚtext)rE   rF   rG   rH   Úbase_model_prefixÚmain_input_nameÚsupports_gradient_checkpointingÚ_skip_keys_device_placementÚ_supports_flash_attnÚ_supports_sdpaÚ_supports_flex_attnÚ_can_compile_fullgraphÚ_supports_attention_backendÚinput_modalitiesrp   Ú__annotate_func__rJ   rK   rL   rM   s   @@r   rk   rk   S   sQ   ù‡ € ð  ÐØ€OØ&*Ð#Ø#4Ð"5ÐØÐØ€NØÐØ!ÐØ"&ÐØ(ÐõR÷ … r   rk   c                   ó~   a a€ ] tR t^gt oV3R lV 3R lltR tR tR	R lt]]	R
V3R lR ll4       4       t
RtVtV ;t# )ÚPI0Modelc                ó    <€ V ^8„  d   QhRS[ /# rv   r   )rw   rN   s   "€r   rx   ÚPI0Model.__annotate__i   s   ø€ ÷ ñ ™yñ r   c                óÚ   <€ \         SV `  V4       \        P                  ! VP                  4      V n        \        P                  ! VP                  4      V n        V P                  4        R # ro   )	r   r   r   Úfrom_configr&   ÚditÚ
vlm_configÚvlmÚ	post_initr[   s   &&€r   r   ÚPI0Model.__init__i   sJ   ø€ Ü‰Ñ˜Ô Ü×(Ò(¨×):Ñ):Ó;ˆŒÜ×(Ò(¨×):Ñ):Ó;ˆŒØ�‰Ör   c                ó6   € V P                   P                  4       # ro   )r�   Úget_input_embeddings)r   s   &r   r”   ÚPI0Model.get_input_embeddingso   s   € Ø�x‰x×,Ñ,Ó.Ð.r   c                ó<   € V P                   P                  V4       R # ro   )r�   Úset_input_embeddings)r   Úvalues   &&r   r—   ÚPI0Model.set_input_embeddingsr   s   € Ø�‰×%Ñ% eÖ,r   c                óH  € VP                   ^,          pVP                  ^ ^4      pV P                  P                  V4      P                  pVP                  RWVP                   ^,          VP                   ^,          4      p. p\        V4       F%  w  r‰Wh,          V	,          p
VP                  V
4       K'  	  \        P                  ! V^ R7      pVP                  4       p^ W±V P                  P                  P                  8H  &   V P                  P                  4       ! V4      pWP                  P                  P                  8H  P                  R4      P!                  VP"                  4      pVP%                  W×P!                  VP"                  VP&                  4      4      pV# )é   r5   éÿÿÿÿ)ÚshapeÚflattenr�   Úget_image_featuresÚpooler_outputÚreshapeÚ	enumerateÚappendr$   r=   Úcloner   r�   Úimage_token_idr”   Ú	unsqueezer_   r:   Úmasked_scatterr#   )r   Ú	input_idsÚpixel_valuesÚpixel_attention_maskÚattention_maskÚmax_num_camerasÚimage_featuresÚtotal_image_featuresÚ	batch_idxÚmaskÚunpadded_image_featuresÚllm_input_idsÚinputs_embedsÚspecial_image_masks   &&&&&         r   Úembed_prefixÚPI0Model.embed_prefixu   sb  € Ø.×4Ñ4°QÕ7ˆØ#×+Ñ+¨A¨qÓ1ˆØŸ™×4Ñ4°\ÓB×PÑPˆØ'×/Ñ/°°O×EYÑEYÐZ[ÕE\Ð^l×^rÑ^rÐstÕ^uÓvˆà!ÐÜ(Ð)=Ö>‰OˆIØ&4Õ&?ÀÕ&EÐ#Ø ×'Ñ'Ð(?Ö@ñ  ?ô  %ŸyšyÐ)=À1ÔEÐà!Ÿ™Ó)ˆØLMˆ 4§;¡;×#9Ñ#9×#HÑ#HÑHÑIØŸ™×5Ñ5Ô7¸ÓFˆàŸ+™+×0Ñ0×?Ñ?Ñ?×JÑJÈ2ÓN×QÑQÐR_×RfÑRfÓgð 	ð &×4Ñ4Ø× 7Ñ 7¸×8LÑ8LÈm×NaÑNaÓ bó
ˆð Ðr   c                ó>  <€ V ^8„  d   QhRS[ P                  RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          R	S[R,          R
S[/	# )rR   rf   r¨   Nr©   r«   rª   Úposition_idsr³   rm   Úreturn)r$   ÚTensorÚ
LongTensorr   r   )rw   rN   s   "€r   rx   r‹   �   s°   ø€ ÷ Kñ Ká—|‘|ðKñ —<‘< $Õ&ðKñ —l‘l TÕ)ð	Kñ
 Ÿ™ tÕ+ðKñ $Ÿl™l¨TÕ1ðKñ ×&Ñ&¨Õ-ðKñ —|‘| dÕ*ðKñ  �ðKñ 
!ñKr   c	                ó®  € Vex   Vft   Ve   Vf   VP                  R4      ^,
          pVf   V P                  W#V4      p\        P                  ! V4      R,          p
V P	                  VVVV
RR7      P
                  pVe   VP                  ^8w  d   \        R4      hR;r¼Ve¦   \        P                  ! VP                  ^ ,          VP                  ^,          VP                  VP                  R7      p\        P                  ! WM.^R7      p\        P                   ! V^R7      ^,
          RVP                  ^,          ) R13,          pVP                  4       p\        P                  ! \        P                  ! V^,           VP                  \        P                  R7      \        P                  ! VP                  ^,          ^,
          VP                  \        P                  R7      .4      pVR,          P!                  VP                  ^ ,          ^4      p\#        V P$                  P&                  VVVVR	7      pV P(                  ! RR
VRVRVRV/V	B pV# )zÓ
action_embeds (`torch.Tensor`, *optional*):
    The embeddings of input actions and robot states.
pixel_attention_mask (`torch.Tensor`, *optional*):
    The mask indicating padded positions in the input image.
Nr8   T)r³   r«   r¸   Útoken_type_idsÚ	use_cachez:Only two-dimensional attention masks are accepted for now!©r#   r:   r5   ©r:   r#   )r   r³   r«   rm   Úblock_sequence_idsr³   r«   r¸   rm   rœ   ©r8   r8   r   r7   rz   )Úcumsumrµ   r$   Ú
zeros_liker�   rm   ÚndimÚ
ValueErrorÚonesr�   r#   r:   r=   Úget_seq_lengthÚzerosÚlongÚrepeatr   r   r&   rŽ   )r   rf   r¨   r©   r«   rª   r¸   r³   rm   Úkwargsr½   Údit_position_idsÚdit_attention_maskÚ
noise_maskÚvlm_input_lengthrÁ   Úbidirectional_maskÚ
dit_outputs   &&&&&&&&&,        r   rC   ÚPI0Model.forward�   sI  € ð( Ò#¨Ò(?ØÒ)¨lÒ.BØ-×4Ñ4°RÓ8¸1Õ<�àÒ$Ø $× 1Ñ 1°)ÐK_Ó `�ô #×-Ò-¨mÓ<¸WÕEˆNØ"Ÿh™hØ+Ø-Ø)Ø-Øð 'ó ÷ ‰oð ð Ò%¨.×*=Ñ*=ÀÔ*BÜÐYÓZÐZð 15Ð4ÐØÒ%ÜŸšØ×#Ñ# AÕ&Ø×#Ñ# AÕ&Ø$×*Ñ*Ø%×,Ñ,ô	ˆJô "'§¢¨NÐ+GÈQÔ!OÐÜ %§¢Ð-?ÀQÔ GÈ!Õ KÈQÐQ^×QdÑQdÐefÕQgÐPgÑPiÐMiÕjÐð +×9Ñ9Ó;ÐÜ"ŸYšYä—’Ð,¨qÕ0¸×9MÑ9MÔUZ×U_ÑU_Ô`Ü—
’
˜=×.Ñ.¨qÕ1°AÕ5¸m×>RÑ>RÔZ_×ZdÑZdÔeðó
Ðð 0°Õ8×?Ñ?À×@SÑ@SÐTUÕ@VÐXYÓZÐÜ/Ø—;‘;×)Ñ)Ø'Ø-Ø+Ø1ô
Ðð —X’Xñ 
Ø'ð
à-ð
ð *ð
ð ,ð	
ð
 ñ
ˆ
ð Ðr   )rŽ   r�   ro   )NNNNNNN)rE   rF   rG   rH   r   r”   r—   rµ   r   r
   rC   rJ   rK   rL   rM   s   @@r   r‰   r‰   g   sH   ù‡ € ÷ó ò/ò-ôð0 Ø÷Kñ Kó ó ÷Kð Kr   r‰   c                   ó²   a a€ ] tR t^Ýt oRtRR/tV3R lV 3R llt]]RV3R lR ll4       4       t	]
P                  ! 4       RV3R lR	 ll4       tR
tVtV ;t# )ÚPI0ForConditionalGenerationz9PI0 model with action projection heads and flow matching.Úaction_out_projÚcolwise_gather_outputc                ó    <€ V ^8„  d   QhRS[ /# rv   r   )rw   rN   s   "€r   rx   Ú(PI0ForConditionalGeneration.__annotate__â   s   ø€ ÷ ñ ™yñ r   c                ó  <€ \         SV `  V4       \        V4      V n        VP                  P
                  V n        \        V4      V n        \        P                  ! V P                  VP                  4      V n        V P                  4        R # ro   )r   r   r‰   rl   r&   r'   Úexpert_hidden_sizerP   Úembed_action_timer   rT   rU   rÖ   r‘   r[   s   &&€r   r   Ú$PI0ForConditionalGeneration.__init__â   sf   ø€ Ü‰Ñ˜Ô Ü˜fÓ%ˆŒ
Ø"(×"3Ñ"3×"?Ñ"?ˆÔÜ!7¸Ó!?ˆÔÜ!Ÿyšy¨×)@Ñ)@À&×BWÑBWÓXˆÔØ�‰Ör   c                ó¨  <€ V ^8„  d   QhRS[ P                  RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          R	S[ P                  R,          R
S[ P                  R,          RS[R,          RS[ P                  RS[/# )rR   rb   rc   Nrd   r¨   r©   rª   r«   r¸   r³   rm   Úactionsr¹   )r$   ÚFloatTensorrº   Ú
BoolTensorr»   r   r   )rw   rN   s   "€r   rx   rÙ   ì   sñ   ø€ ÷ T
ñ T
á× Ñ ðT
ñ × Ñ  4Õ'ðT
ñ ×#Ñ# dÕ*ð	T
ñ
 —<‘< $Õ&ðT
ñ —l‘l TÕ)ðT
ñ $×.Ñ.°Õ5ðT
ñ Ÿ™ tÕ+ðT
ñ ×&Ñ&¨Õ-ðT
ñ —|‘| dÕ*ðT
ñ  �ðT
ñ ×"Ñ"ðT
ñ 
 ñT
r   c                ó4  € VP                   ^ ,          pVEf   \        P                  ! V P                  P                  \        P
                  R7      p\        P                  ! V P                  P                  \        P
                  R7      p\        P                  P                  Wï4      pVP                  V34      P                  VP                  4      pVV P                  P                  ,          V P                  P                  ,           P                  4       pVfX   \        P                  ! VV P                  P                   V P                  P"                  VP                  VP$                  R7      pVeJ   VR,          pVV,          ^V,
          V,          ,           P                  VP$                  4      pW+,
          pMTpV P'                  VVV4      pV P(                  ! RRVRVRVRVR	VR
V	RVRV
/VB pVP*                  RV P                  P                   ) R13,          pV P-                  V4      pRpVe.   \.        P0                  ! XVV P                  P2                  R7      p\5        VVVP6                  VP8                  VP:                  R7      # )aÔ  
state (`torch.Tensor`, *optional*):
    Current robot state.
noise (`torch.Tensor`, *optional*):
    Random noise at current timestep that needs to be denoised
timestep (`torch.Tensor`, *optional*):
    Current denoising timestep.
pixel_attention_mask (`torch.Tensor`, *optional*):
    The mask indicating padded positions in the input image.
actions (`torch.Tensor`, *optional*):
    Input actions that need to be predicted. Used only when training to compute loss.
Nr"   rÀ   r8   r¨   r©   r«   rª   r¸   r³   rf   rm   )Ú	reduction)ÚlossÚlogitsrm   Úhidden_statesÚ
attentions)r8   NNrz   )r�   r$   Útensorr   Útime_sampling_beta_alphar(   Útime_sampling_beta_betaÚdistributionsÚBetaÚsampler_   r:   Útime_sampling_scaleÚtime_sampling_offsetÚfloatÚrandnÚ
chunk_sizerU   r#   rÜ   rl   Úlast_hidden_staterÖ   r`   Úmse_lossÚloss_reductionr   rm   ræ   rç   )r   rb   rc   rd   r¨   r©   rª   r«   r¸   r³   rm   rß   rÌ   Ú
batch_sizeÚalpha_tÚbeta_tÚdistÚ	time_betaÚtime_expandedÚnoisy_actionsÚtarget_velocityrg   ÚoutputsÚlast_hidden_statesÚpredicted_velocityrä   s   &&&&&&&&&&&&,             r   rC   Ú#PI0ForConditionalGeneration.forwardê   sJ  € ð: —[‘[ •^ˆ
ð ÓÜ—l’l 4§;¡;×#GÑ#GÌuÏ}É}Ô]ˆGÜ—\’\ $§+¡+×"EÑ"EÌUÏ]É]Ô[ˆFÜ×&Ñ&×+Ñ+¨GÓ<ˆDØŸ™ Z MÓ2×5Ñ5°e·l±lÓCˆIØ! D§K¡K×$CÑ$CÕCÀdÇkÁk×FfÑFfÕf×mÑmÓoˆHð Š=Ü—K’KØØ—‘×&Ñ&Ø—‘×*Ñ*Ø—|‘|Ø—k‘kôˆEð ÒØ$ ]Õ3ˆMØ*¨UÕ2°a¸-Õ6GÈ7Õ5RÕR×VÑVÐW^×WdÑWdÓeˆMØ#�o‰Oà!ˆMð "×3Ñ3°E¸=È(ÓSÐà—*’*ñ 

Øð

à%ð

ð *ð

ð "6ð	

ð
 &ð

ð (ð

ð -ð

ð ,ð

ð ñ

ˆð %×6Ñ6°q¸4¿;¹;×;QÑ;QÐ:QÑ:SÐ7SÕTÐØ!×1Ñ1Ð2DÓEÐàˆØÒä—:’:˜oÐ/AÈTÏ[É[×MgÑMgÔhˆDä%ØØ%Ø#×3Ñ3Ø!×/Ñ/Ø×)Ñ)ô
ð 	
r   c                ó  <€ V ^8„  d   QhRS[ P                  RS[ P                  RS[ P                  RS[ P                  R,          RS[ P                  R,          RS[ P                  R,          RS[R,          R	S[ P                  /# )
rR   rb   r¨   r©   rc   Nr«   rª   Ú	num_stepsr¹   )r$   rà   r»   rº   rá   Úint)rw   rN   s   "€r   rx   rÙ   C  s    ø€ ÷ Añ Aá× Ñ ðAñ ×#Ñ#ðAñ ×'Ñ'ð	Añ
 × Ñ  4Õ'ðAñ Ÿ™ tÕ+ðAñ $×.Ñ.°Õ5ðAñ ˜•:ðAñ 
×	Ñ	ñAr   c                ó�  € T;'       g    V P                   P                  pVP                  ^ ,          p	VP                  p
VfQ   \        P
                  ! RRV	V P                   P                  V P                   P                  3VP                  V
R7      pRpVe   VP                  R4      ^,
          pV P                  P                  W#V4      p\        P                  ! V4      R,          pV P                  P                  VVVVRRR7      P                  pVP                  4       pRV,          p\!        V4       Fˆ  pRVV,          ,           p\        P"                  ! V\        P$                  V
R7      P'                  V	4      pV ! RRVR	VR
VRVRVRV/VB pVP)                  V4       VVVP*                  ,          ,           pKŠ  	  V# )z0Run flow matching inference to generate actions.Nr    r!   )ÚmeanÚstdÚsizer#   r:   T)r³   r«   r¸   r½   r¾   Úreturn_dictr¿   rb   rc   rd   rª   r«   rm   rœ   rÂ   g      ð¿rz   )r   Únum_inference_stepsr�   r:   r$   Únormalrò   rU   r#   rÃ   rl   rµ   rÄ   r�   rm   rÈ   Úrangerè   r(   ÚexpandÚcroprå   )r   rb   r¨   r©   rc   r«   rª   r  rÌ   rö   r:   r¸   r³   r½   rm   Úprefix_lengthÚdtÚstepr@   Útime_tensorÚoutputs   &&&&&&&&,            r   Úsample_actionsÚ*PI0ForConditionalGeneration.sample_actionsB  sÐ  € ð ×@Ð@ §¡×!@Ñ!@ˆ	Ø—_‘_ QÕ'ˆ
Ø×!Ñ!ˆð Š=Ü—L’LØØàØ—K‘K×*Ñ*Ø—K‘K×.Ñ.ðð
 #×(Ñ(Øô
ˆEð ˆØÒ%Ø)×0Ñ0°Ó4°qÕ8ˆLØŸ
™
×/Ñ/°	ÐI]Ó^ˆÜ×)Ò)¨-Ó8¸ÕAˆØŸ*™*Ÿ.™.Ø'Ø)Ø%Ø)ØØð )ó 
÷ ‰/ð 	ð (×6Ñ6Ó8ˆð �IÕˆÜ˜)Ö$ˆDØ˜ �•?ˆDÜŸ,š, t´5·=±=ÈÔP×WÑWÐXbÓcˆKÙñ Øðàðð %ðð &:ð	ð
  .ðð !0ðð ñˆFð × Ñ  Ô/Ø˜B §¡Õ.Õ.ŠEñ %ð  ˆr   )rÖ   rÜ   rÛ   rl   )
NNNNNNNNNN)NNNN)rE   rF   rG   rH   Ú__doc__Ú_tp_planr   r   r
   rC   r$   Úno_gradr  rJ   rK   rL   rM   s   @@r   rÕ   rÕ   Ý   sj   ù‡ € ÙCà!Ð#:Ð;€H÷ó ð Ø÷T
ñ T
ó ó ðT
ðl ‡]‚]ƒ_÷Añ Aó ÷Að Ar   rÕ   )rk   r‰   rÕ   )"r+   r$   Útorch.nn.functionalr   Ú
functionalr`   Ú r   rq   Úcache_utilsr   Úmasking_utilsr   Úmodeling_outputsr   r   Úmodeling_utilsr	   Úutilsr
   r   Úutils.genericr   Úautor   Úconfiguration_pi0r   ÚModuler   rP   rk   r‰   rÕ   Ú__all__rz   r   r   Ú<module>r&     s§   ðó* ã ß Ð Ý å &Ý  Ý /ß OÝ -ß 5Ý +Ý Ý (ô˜BŸI™Iô ô.$˜RŸY™Yô $ð, ôR˜ó Ró ðRð& ôrÐ!ó ró ðrôjgÐ"4ô gòT L‚r   