+
    É&jY  ã                   ó‚   € ^ RI t ^ RI 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	.t ! R
 R	]	4      tR# )é    N©ÚTensor)Úconstraints)ÚExponential)Úeuler_constant)ÚTransformedDistribution)ÚAffineTransformÚPowerTransform)Úbroadcast_allÚWeibullc                   óü   a a€ ] tR t^t oRtR]P                  R]P                  /t]P                  tRV3R lV 3R lllt	RV 3R llt
]V3R lR l4       t]V3R	 lR
 l4       t]V3R lR l4       tR tRtVtV ;t# )r   a  
Samples from a two-parameter Weibull distribution.

Example:

    >>> # xdoctest: +IGNORE_WANT("non-deterministic")
    >>> m = Weibull(torch.tensor([1.0]), torch.tensor([1.0]))
    >>> m.sample()  # sample from a Weibull distribution with scale=1, concentration=1
    tensor([ 0.4784])

Args:
    scale (float or Tensor): Scale parameter of distribution (lambda).
    concentration (float or Tensor): Concentration parameter of distribution (k/shape).
    validate_args (bool, optional): Whether to validate arguments. Default: None.
ÚscaleÚconcentrationc                ó^   <€ V ^8„  d   QhRS[ S[,          RS[ S[,          RS[R,          RR/# )é   r   r   Úvalidate_argsNÚreturn)r   ÚfloatÚbool)ÚformatÚ__classdict__s   "€Ús/Users/jameslopez/projects/CWCArchive/cwc-podcast/.venv/lib/python3.14/site-packages/torch/distributions/weibull.pyÚ__annotate__ÚWeibull.__annotate__(   sE   ø€ ÷ Mñ Má™~ðMñ ¡•~ðMñ ˜d•{ð	Mð
 
ñMó    c                óH  <€ \        W4      w  V n        V n        V P                  P                  4       V n        \        \        P                  ! V P                  4      VR 7      p\        V P                  R7      \        ^ V P                  R7      .p\        SV `-  WEVR 7       R# )©r   ©Úexponent©Úlocr   N)r   r   r   Ú
reciprocalÚconcentration_reciprocalr   ÚtorchÚ	ones_liker
   r	   ÚsuperÚ__init__)Úselfr   r   r   Ú	base_distÚ
transformsÚ	__class__s   &&&&  €r   r'   ÚWeibull.__init__(   s…   ø€ ô *7°uÓ)LÑ&ˆŒ
DÔ&Ø(,×(:Ñ(:×(EÑ(EÓ(GˆÔ%ÜÜOŠO˜DŸJ™JÓ'°}ô
ˆ	ô  D×$AÑ$AÔBÜ ¨¯©Ô4ð
ˆ
ô
 	‰Ñ˜¸mÐÖLr   c                óÎ  <€ V P                  \        V4      pV P                  P                  V4      Vn        V P                  P                  V4      Vn        VP                  P                  4       Vn        V P                  P                  V4      p\        VP                  R 7      \        ^ VP                  R7      .p\        \        V`/  WERR7       V P                  Vn        V# )r   r    Fr   )Ú_get_checked_instancer   r   Úexpandr   r"   r#   r)   r
   r	   r&   r'   Ú_validate_args)r(   Úbatch_shapeÚ	_instanceÚnewr)   r*   r+   s   &&&   €r   r/   ÚWeibull.expand:   s»   ø€ Ø×(Ñ(¬°)Ó<ˆØ—J‘J×%Ñ% kÓ2ˆŒ	Ø ×.Ñ.×5Ñ5°kÓBˆÔØ'*×'8Ñ'8×'CÑ'CÓ'EˆÔ$Ø—N‘N×)Ñ)¨+Ó6ˆ	ä C×$@Ñ$@ÔAÜ ¨¯©Ô3ð
ˆ
ô 	ŒgsÑ$ YÈ%Ð$ÔPØ!×0Ñ0ˆÔØˆ
r   c                ó    <€ V ^8„  d   QhRS[ /# ©r   r   r   )r   r   s   "€r   r   r   I   s   ø€ ÷ Wñ W‘fñ Wr   c                óš   € V P                   \        P                  ! \        P                  ! ^V P                  ,           4      4      ,          # ©é   )r   r$   ÚexpÚlgammar#   ©r(   s   &r   ÚmeanÚWeibull.meanH   s.   € àz‰zœEŸIšI¤e§l¢l°1°t×7TÑ7TÕ3TÓ&UÓVÕVÐVr   c                ó    <€ V ^8„  d   QhRS[ /# r6   r   )r   r   s   "€r   r   r   M   s   ø€ ÷ 
ñ 
‘fñ 
r   c                óª   € V P                   V P                  ^,
          V P                  ,          V P                  P                  4       ,          ,          # r8   )r   r   r"   r<   s   &r   ÚmodeÚWeibull.modeL   sE   € ð J‰JØ×"Ñ" QÕ&¨$×*<Ñ*<Õ<Ø×!Ñ!×,Ñ,Ó.õ/õ/ð	
r   c                ó    <€ V ^8„  d   QhRS[ /# r6   r   )r   r   s   "€r   r   r   U   s   ø€ ÷ 
ñ 
™&ñ 
r   c           	     óT  € V P                   P                  ^4      \        P                  ! \        P                  ! ^^V P
                  ,          ,           4      4      \        P                  ! ^\        P                  ! ^V P
                  ,           4      ,          4      ,
          ,          # )r   )r   Úpowr$   r:   r;   r#   r<   s   &r   ÚvarianceÚWeibull.varianceT   sl   € àz‰z~‰~˜aÓ ÜIŠI”e—l’l 1 q¨4×+HÑ+HÕ'HÕ#HÓIÓJÜiŠi˜œEŸLšL¨¨T×-JÑ-JÕ)JÓKÕKÓLõMõ
ð 	
r   c                ó¸   € \         ^V P                  ,
          ,          \        P                  ! V P                  V P                  ,          4      ,           ^,           # r8   )r   r#   r$   Úlogr   r<   s   &r   ÚentropyÚWeibull.entropy[   sC   € ä˜a $×"?Ñ"?Õ?Õ@ÜiŠi˜Ÿ
™
 T×%BÑ%BÕBÓCõDàõð	
r   )r   r#   r   )N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   ÚpositiveÚarg_constraintsÚsupportr'   r/   Úpropertyr=   rA   rF   rJ   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r+   r   s   @@r   r   r      s   ù‡ € ñð" 	×%Ñ%Ø˜×-Ñ-ð€Oð
 ×"Ñ"€G÷Mõ M÷$ð ÷Wó ðWð ÷
ó ð
ð ÷
ó ð
÷
ò 
r   )r$   r   Útorch.distributionsr   Útorch.distributions.exponentialr   Útorch.distributions.gumbelr   Ú,torch.distributions.transformed_distributionr   Útorch.distributions.transformsr	   r
   Útorch.distributions.utilsr   Ú__all__r   © r   r   Ú<module>r`      s7   ðó Ý Ý +Ý 7Ý 5Ý Pß JÝ 3ð ˆ+€ôP
Ð%ö P
r   