+
    ‡)Ùj% ã                   óÚ  € ^ RI t ^ RIt^ 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 ^ RIHtHtHt ^ R	IHtHt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%  ! R R4      t& ! R R4      t' ! R R]4      t( ! R R4      t)] ! R R])]'4      4       t*]'PV                  ]'PX                  ]'PZ                  ]'P\                  ]'P^                  3 U u/ uF(  p V ]P`                  ]P`                  ]P`                  3.bK*  	  up ]'PV                  ]'Pb                  ]'PX                  ]'PZ                  ]'P\                  ]'P^                  3 U u/ uFl  p V ]Pd                  ]Pd                  ]Pd                  3]Pf                  ]Pf                  ]Pf                  3]Ph                  ]Ph                  ]Ph                  3.bKn  	  up ]'PV                  ]'Pb                  ]'PX                  ]'PZ                  ]'P\                  3 U u/ uFŽ  p V ]Pd                  ]Ph                  ]Ph                  3]Ph                  ]Pd                  ]Ph                  3]Pd                  ]Pf                  ]Pf                  3]Pf                  ]Pd                  ]Pf                  3.bK�  	  up ]'Pj                  ]'Pl                  ]'Pn                  ]'Pp                  ]'Pr                  3 U u/ uF(  p V ]Pd                  ]Pd                  ]Pd                  3.bK*  	  up ]'PV                  ]'Pb                  ]'PX                  ]'PZ                  ]'P\                  ]'P^                  3 U u/ uFC  p V ]:! ]
Pw                  R ]Pd                  ]Ph                  ]Pf                  3 4       4      4      bKE  	  up ]'PV                  ]Px                  ]Pz                  ]P|                  3]P|                  ]Pz                  ]P|                  3]Pz                  ]Px                  ]P|                  3]Pz                  ]P|                  ]P|                  3]Pz                  ]Pz                  ]Pz                  3]P~                  ]Pz                  ]P~                  3]Pz                  ]P~                  ]P~                  3./]'Pb                  ]Px                  ]Pz                  ]P|                  3]P|                  ]Pz                  ]P|                  3]Px                  ]Px                  ]Pz                  3]Px                  ]P|                  ]Pz                  3]P|                  ]Px                  ]Pz                  3]P|                  ]P|                  ]Pz                  3]Pz                  ]Pz                  ]Pz                  3]P~                  ]Pz                  ]P~                  3]P~                  ]P~                  ]Pz                  3.	/.t@]! ]:4      tAR tB]@ F5  tC]CP‰                  4        F  w  tEtF]F F  w  tGtHtI]B! ]G]E]H]I4       K  	  K   	  K7  	  ]P”                  ! ^€R7      R 4       tK ! R R ]&]*4      tL ! R! R"]L4      tM ! R# R$]L4      tN]! R%R&7       ! R' R(]'4      4       tO ! R) R*]O4      tP ! R+ R,]O4      tQ ! R- R.]O4      tR]! R/R&7       ! R0 R1]&]*4      4       tS]! R2R&7       ! R3 R4]&]*4      4       tT ! R5 R6]*4      tU ! R7 R8]*4      tV ! R9 R:]*4      tW ! R; R<]*4      tX ! R= R>]*4      tY ! R? R@]*4      tZ ! RA RB]S4      t[ ! RC RD][4      t\]! RER&7       ! RF RG]&]*4      4       t] ! RH RI]]4      t^]! RJR&7       ! RK RL]*4      4       t_]! RMR&7       ! RN RO]&]*4      4       t` ! RP RQ])]'4      ta ! RR RS]a4      tb]! RTR&7       ! RU RV]*4      4       tc ! RW RX]&]*4      td ! RY RZ]4      te ! R[ R\]*4      tf ! R] R^]f4      tg ! R_ R`]f4      thR# u up i u up i u up i u up i u up i )aé    N)Údefaultdict©ÚDecimal)ÚEnum)Úchain©ÚNoneType)ÚUUID)ÚEmptyResultSetÚ
FieldErrorÚFullResultSet)ÚDatabaseErrorÚNotSupportedErrorÚ
connection)Úfields)Ú
LOOKUP_SEP)ÚQ)Údeconstructible)Úcached_propertyÚclassproperty)Úmake_hashable)Ú	signaturec                   ó*   a € ] tR t^t o RtR tRtV tR# )ÚSQLiteNumericMixinzd
Some expressions with output_field=DecimalField() must be cast to
numeric to be properly filtered.
c                óª   € V P                   ! W3/ VB w  rE V P                  P                  4       R 8X  d
   RV,          pWE3#   \         d     YE3# i ; i)ÚDecimalFieldz(CAST(%s AS NUMERIC)))Úas_sqlÚoutput_fieldÚget_internal_typer   )ÚselfÚcompilerr   Úextra_contextÚsqlÚparamss   &&&,  ÚU/var/www/eggtrainer/venv/lib/python3.14/site-packages/django/db/models/expressions.pyÚ	as_sqliteÚSQLiteNumericMixin.as_sqlite   sc   € Ø—k’k (ÑH¸-ÑH‰ˆð	Ø× Ñ ×2Ñ2Ó4¸ÔFØ-°Õ3�ð ˆ{Ðøô ô 	ØØˆ{Ðð	ús   —(A ÁAÁA© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r&   Ú__static_attributes__Ú__classdictcell__©Ú__classdict__s   @r%   r   r      s   ø‡ € ñ÷
ð ó    r   c                   óì   a € ] tR t^&t o RtRtRtRtRtRt	Rt
RtR	tR
tRtRtR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR t R t!R t"R  t#R! t$R" t%R# t&R$ t'R% t(R& t)R't*V t+R(# ))Ú
Combinablezi
Provide the ability to combine one or two objects with
some connector. For example F('foo') + F('bar').
Ú+Ú-Ú*Ú/Ú^z%%Ú&Ú|z<<z>>Ú#c                ó|   € \        VR 4      '       g   \        V4      pV'       d   \        WV 4      # \        WV4      # ©Úresolve_expression)ÚhasattrÚValueÚCombinedExpression)r    ÚotherÚ	connectorÚreverseds   &&&&r%   Ú_combineÚCombinable._combine?   s6   € Ü�uÐ2×3Ò3ä˜%“LˆEçÜ% e¸Ó=Ð=Ü! $°5Ó9Ð9r2   c                ó<   € V P                  RV P                  R4      # )é   Féÿÿÿÿ©rF   ÚMUL©r    s   &r%   Ú__neg__ÚCombinable.__neg__L   s   € Ø�}‰}˜R §¡¨5Ó1Ð1r2   c                ó:   € V P                  WP                  R 4      # ©F©rF   ÚADD©r    rC   s   &&r%   Ú__add__ÚCombinable.__add__O   ó   € Ø�}‰}˜U§H¡H¨eÓ4Ð4r2   c                ó:   € V P                  WP                  R 4      # rQ   ©rF   ÚSUBrT   s   &&r%   Ú__sub__ÚCombinable.__sub__R   rW   r2   c                ó:   € V P                  WP                  R 4      # rQ   rK   rT   s   &&r%   Ú__mul__ÚCombinable.__mul__U   rW   r2   c                ó:   € V P                  WP                  R 4      # rQ   ©rF   ÚDIVrT   s   &&r%   Ú__truediv__ÚCombinable.__truediv__X   rW   r2   c                ó:   € V P                  WP                  R 4      # rQ   ©rF   ÚMODrT   s   &&r%   Ú__mod__ÚCombinable.__mod__[   rW   r2   c                ó:   € V P                  WP                  R 4      # rQ   ©rF   ÚPOWrT   s   &&r%   Ú__pow__ÚCombinable.__pow__^   rW   r2   c                óš   € \        V R R4      '       d/   \        VR R4      '       d   \        V 4      \        V4      ,          # \        R4      h©ÚconditionalFúFUse .bitand(), .bitor(), and .bitxor() for bitwise logical operations.©Úgetattrr   ÚNotImplementedErrorrT   s   &&r%   Ú__and__ÚCombinable.__and__a   óC   € Ü�4˜¨×.Ò.´7¸5À-ÐQV×3WÒ3WÜ�T“7œQ˜u›XÕ%Ð%Ü!ØTó
ð 	
r2   c                ó:   € V P                  WP                  R 4      # rQ   )rF   ÚBITANDrT   s   &&r%   ÚbitandÚCombinable.bitandh   ó   € Ø�}‰}˜U§K¡K°Ó7Ð7r2   c                ó:   € V P                  WP                  R 4      # rQ   )rF   ÚBITLEFTSHIFTrT   s   &&r%   ÚbitleftshiftÚCombinable.bitleftshiftk   s   € Ø�}‰}˜U×$5Ñ$5°uÓ=Ð=r2   c                ó:   € V P                  WP                  R 4      # rQ   )rF   ÚBITRIGHTSHIFTrT   s   &&r%   ÚbitrightshiftÚCombinable.bitrightshiftn   s   € Ø�}‰}˜U×$6Ñ$6¸Ó>Ð>r2   c                óš   € \        V R R4      '       d/   \        VR R4      '       d   \        V 4      \        V4      ,          # \        R4      hrp   rs   rT   s   &&r%   Ú__xor__ÚCombinable.__xor__q   rx   r2   c                ó:   € V P                  WP                  R 4      # rQ   )rF   ÚBITXORrT   s   &&r%   ÚbitxorÚCombinable.bitxorx   r}   r2   c                óš   € \        V R R4      '       d/   \        VR R4      '       d   \        V 4      \        V4      ,          # \        R4      hrp   rs   rT   s   &&r%   Ú__or__ÚCombinable.__or__{   rx   r2   c                ó:   € V P                  WP                  R 4      # rQ   )rF   ÚBITORrT   s   &&r%   ÚbitorÚCombinable.bitor‚   s   € Ø�}‰}˜U§J¡J°Ó6Ð6r2   c                ó:   € V P                  WP                  R 4      # ©TrR   rT   s   &&r%   Ú__radd__ÚCombinable.__radd__…   ó   € Ø�}‰}˜U§H¡H¨dÓ3Ð3r2   c                ó:   € V P                  WP                  R 4      # r•   rY   rT   s   &&r%   Ú__rsub__ÚCombinable.__rsub__ˆ   r˜   r2   c                ó:   € V P                  WP                  R 4      # r•   rK   rT   s   &&r%   Ú__rmul__ÚCombinable.__rmul__‹   r˜   r2   c                ó:   € V P                  WP                  R 4      # r•   ra   rT   s   &&r%   Ú__rtruediv__ÚCombinable.__rtruediv__Ž   r˜   r2   c                ó:   € V P                  WP                  R 4      # r•   rf   rT   s   &&r%   Ú__rmod__ÚCombinable.__rmod__‘   r˜   r2   c                ó:   € V P                  WP                  R 4      # r•   rk   rT   s   &&r%   Ú__rpow__ÚCombinable.__rpow__”   r˜   r2   c                ó   € \        R 4      h©rr   ©ru   rT   s   &&r%   Ú__rand__ÚCombinable.__rand__—   ó   € Ü!ØTó
ð 	
r2   c                ó   € \        R 4      hr©   rª   rT   s   &&r%   Ú__ror__ÚCombinable.__ror__œ   r­   r2   c                ó   € \        R 4      hr©   rª   rT   s   &&r%   Ú__rxor__ÚCombinable.__rxor__¡   r­   r2   c                ó   € \        V 4      # ©N)ÚNegatedExpressionrM   s   &r%   Ú
__invert__ÚCombinable.__invert__¦   s   € Ü  Ó&Ð&r2   r(   N),r)   r*   r+   r,   r-   rS   rZ   rL   rb   rl   rg   rz   r‘   r   rƒ   rŠ   rF   rN   rU   r[   r^   rc   rh   rm   rv   r{   r€   r„   r‡   r‹   rŽ   r’   r–   rš   r�   r    r£   r¦   r«   r¯   r²   r·   r.   r/   r0   s   @r%   r4   r4   &   sÎ   ø‡ € ñð €CØ
€CØ
€CØ
€CØ
€Cð €Cð
 €FØ€EØ€LØ€MØ€Fò:ò2ò5ò5ò5ò5ò5ò5ò
ò8ò>ò?ò
ò8ò
ò7ò4ò4ò4ò4ò4ò4ò
ò

ò

÷
'ð 'r2   r4   c                   ó   € ] tR t^ªtRtR# )ÚOutputFieldIsNoneErrorr(   N)r)   r*   r+   r,   r.   r(   r2   r%   rº   rº   ª   s   † Ûr2   rº   c                   ó|  a € ] tR t^®t o Rt]tRtRtRt	Rt
RtRtRtR(R ltR tR tR tR	 tR
 tR t]R 4       t]R 4       t]R 4       t]R 4       tR)R lt]R 4       t]R 4       t]R 4       t]R 4       tR t ]!R 4       t"]R 4       t#R t$R t%R t&R t'R t(R t)R t*R t+R  t,R! t-R" t.R# t/R$ t0R% t1R& t2R't3V t4R# )*ÚBaseExpressionz%Base class for all query expressions.FTNc                ó   € Ve	   Wn         R # R # rµ   ©r   ©r    r   s   &&r%   Ú__init__ÚBaseExpression.__init__Á   s   € ØÒ#Ø ,Öñ $r2   c                ó^   € V P                   P                  4       pVP                  R R4       V# )Úconvert_valueN)Ú__dict__ÚcopyÚpop)r    Ústates   & r%   Ú__getstate__ÚBaseExpression.__getstate__Å   s'   € Ø—‘×"Ñ"Ó$ˆØ�	‰	�/ 4Ô(Øˆr2   c                ó”   € V P                   V P                  J d   . MV P                   .V P                  P                  V4      ,           # rµ   )rÃ   Ú_convert_value_noopr   Úget_db_converters©r    r   s   &&r%   rÌ   Ú BaseExpression.get_db_convertersÊ   sG   € ð ×!Ñ! T×%=Ñ%=Ó=ñ à×$Ñ$Ð%Ø×Ñ×/Ñ/°
Ó;õ	<ð 	<r2   c                ó   € . # rµ   r(   rM   s   &r%   Úget_source_expressionsÚ%BaseExpression.get_source_expressionsÑ   ó   € Øˆ	r2   c                ó   € V'       d   Q hR # rµ   r(   ©r    Úexprss   &&r%   Úset_source_expressionsÚ%BaseExpression.set_source_expressionsÔ   s   € ßÐˆy‘5r2   c                ó¬   € V Uu. uFC  p\        VR 4      '       d   TM+\        V\        4      '       d   \        V4      M
\	        V4      NKE  	  up# u upi r>   )r@   Ú
isinstanceÚstrÚFrA   )r    ÚexpressionsÚargs   &* r%   Ú_parse_expressionsÚ!BaseExpression._parse_expressions×   s\   € ñ #ó
ñ #�ô ˜3Ð 4×5Ò5ñ ä *¨3´× 4Ò 4”a˜”f¼%À»*òFñ #ñ
ð 	
ùò 
s   …A	Ac                ó   € \        R4      h)a.  
Responsible for returning a (sql, [params]) tuple to be included
in the current query.

Different backends can provide their own implementation, by
providing an `as_{vendor}` method and patching the Expression:

```
def override_as_sql(self, compiler, connection):
    # custom logic
    return super().as_sql(compiler, connection)
setattr(Expression, 'as_' + connection.vendor, override_as_sql)
```

Arguments:
 * compiler: the query compiler responsible for generating the query.
   Must have a compile method, returning a (sql, [params]) tuple.
   Calling compiler(value) will return a quoted `value`.

 * connection: the database connection used for the current query.

Return: (sql, params)
  Where `sql` is a string containing ordered sql parameters to be
  replaced with the elements of the list `params`.
z"Subclasses must implement as_sql()rª   ©r    r!   r   s   &&&r%   r   ÚBaseExpression.as_sqlá   s   € ô4 "Ð"FÓGÐGr2   c                ó¢   € \         ;QJ d*    R  V P                  4        4       F  '       g   K   R# 	  R# ! R  V P                  4        4       4      # )c              3   óL   "  € T F  q;'       d    VP                   x € K  	  R # 5irµ   )Úcontains_aggregate©Ú.0Úexprs   & r%   Ú	<genexpr>Ú4BaseExpression.contains_aggregate.<locals>.<genexpr>ÿ   s#   é € ð 
Ù9V°×,Ð,�T×,Ñ,Ô,Ó9Vùó   ‚$�$TF©ÚanyrÐ   rM   s   &r%   rå   Ú!BaseExpression.contains_aggregateý   sO   € ç‹sñ 
Ø9=×9TÑ9TÔ9Vó
�sŒsð 	
Šsð 	
ˆsñ 
Ø9=×9TÑ9TÔ9Vó
ó 
ð 	
r2   c                ó¢   € \         ;QJ d*    R  V P                  4        4       F  '       g   K   R# 	  R# ! R  V P                  4        4       4      # )c              3   óL   "  € T F  q;'       d    VP                   x € K  	  R # 5irµ   )Úcontains_over_clauseræ   s   & r%   ré   Ú6BaseExpression.contains_over_clause.<locals>.<genexpr>  s#   é € ð 
Ù;X°4×.Ð.�T×.Ñ.Ô.Ó;Xùrë   TFrì   rM   s   &r%   rñ   Ú#BaseExpression.contains_over_clause  sO   € ç‹sñ 
Ø;?×;VÑ;VÔ;Xó
�sŒsð 	
Šsð 	
ˆsñ 
Ø;?×;VÑ;VÔ;Xó
ó 
ð 	
r2   c                ó¢   € \         ;QJ d*    R  V P                  4        4       F  '       g   K   R# 	  R# ! R  V P                  4        4       4      # )c              3   óN   "  € T F  pT;'       d    VP                   x € K  	  R # 5irµ   )Úcontains_column_referencesræ   s   & r%   ré   Ú<BaseExpression.contains_column_references.<locals>.<genexpr>  s(   é € ð 
á5�ð ×4Ð4�T×4Ñ4Ô4Û5ùs   ‚%�%TFrì   rM   s   &r%   rö   Ú)BaseExpression.contains_column_references	  óO   € ç‹sñ 
à×3Ñ3Ô5ó
�sŒsð 	
Šsð 	
ˆsñ 
à×3Ñ3Ô5ó
ó 
ð 	
r2   c                ó¢   € \         ;QJ d*    R  V P                  4        4       F  '       g   K   R# 	  R# ! R  V P                  4        4       4      # )c              3   óx   "  € T F0  pT;'       d"    \        VR R4      ;'       g    VP                  x € K2  	  R# 5i)ÚsubqueryFN)rt   Úcontains_subqueryræ   s   & r%   ré   Ú3BaseExpression.contains_subquery.<locals>.<genexpr>  s9   é € ð 
á5�ð ×QÐQ”g˜d J°Ó6×PÐP¸$×:PÑ:PÔQÛ5ùs   ‚:�:¥:TFrì   rM   s   &r%   rý   Ú BaseExpression.contains_subquery  rù   r2   c           
     ó¦  € V P                  4       pWFn        VP                  4        Uu. uF  pVe   VP                  WW4V4      MRNK  	  ppV P                  '       g]   \
        ;QJ d    R V 4       F  '       g   K   RM	  RM! R V 4       4      '       d#   \        V P                  P                   R24      hVP                  V4       V# u upi )a²  
Provide the chance to do any preprocessing or validation before being
added to the query.

Arguments:
 * query: the backend query implementation
 * allow_joins: boolean allowing or denying use of joins
   in this query
 * reuse: a set of reusable joins for multijoins
 * summarize: a terminal aggregate clause
 * for_save: whether this expression about to be used in a save or update

Return: an Expression to be added to the query.
Nc              3   óB   "  € T F  p\        V\        4      x € K  	  R # 5irµ   )rÙ   ÚColPairsræ   s   & r%   ré   Ú4BaseExpression.resolve_expression.<locals>.<genexpr>2  s   é € ð 9
Ù3E¨4ŒJ�tœX×&Ð&Ó3Eùó   ‚TFz4 expression does not support composite primary keys.)
rÅ   Ú
is_summaryrÐ   r?   Úallows_composite_expressionsrí   Ú
ValueErrorÚ	__class__r)   rÖ   )	r    ÚqueryÚallow_joinsÚreuseÚ	summarizeÚfor_saveÚcrè   Úsource_expressionss	   &&&&&&   r%   r?   Ú!BaseExpression.resolve_expression  sâ   € ð" �I‰I‹KˆØ Œð ×0Ñ0Ô2ó
ñ 3�ð Ò#ð ×'Ñ'¨¸EÈhÔWàòñ 3ð 	ð 
ð ×0×0Ð0·S³Sñ 9
Ù3Eó9
·S·S²Sñ 9
Ù3Eó9
÷ 6
ò 6
ô Ø—>‘>×*Ñ*Ð+ð ,*ð *óð ð 	
× Ñ Ð!3Ô4Øˆùò!
s   ©"Cc                óJ   € \        V P                  \        P                  4      # rµ   )rÙ   r   r   ÚBooleanFieldrM   s   &r%   rq   ÚBaseExpression.conditional<  s   € ä˜$×+Ñ+¬V×-@Ñ-@ÓAÐAr2   c                ó   € V P                   # rµ   r¾   rM   s   &r%   ÚfieldÚBaseExpression.field@  s   € à× Ñ Ð r2   c                óD   € V P                  4       pVf   \        R4      hV# )z+Return the output type of this expressions.z4Cannot resolve expression type, unknown output_field)Ú_resolve_output_fieldrº   r¿   s   & r%   r   ÚBaseExpression.output_fieldD  s0   € ð ×1Ñ1Ó3ˆØÒÜ(ØFóð ð Ðr2   c                ó@   €  V P                   #   \         d     R# i ; i)zn
Return the output field of this expression, or None if
_resolve_output_field() didn't return an output type.
N)r   rº   rM   s   &r%   Ú_output_field_or_noneÚ$BaseExpression._output_field_or_noneN  s%   € ð	Ø×$Ñ$Ð$øÜ%ô 	Úð	ús   ‚ Žœc           	     ó
  € R V P                  4        4       pV Fe  pV FZ  p\        W#P                  4      '       d   K   \        RVP                  P                  : RVP                  P                  : R24      h	  Vu # 	  R# )aE  
Attempt to infer the output type of the expression.

As a guess, if the output fields of all source fields match then simply
infer the same type here.

If a source's output field resolves to None, exclude it from this check.
If all sources are None, then an error is raised higher up the stack in
the output_field property.
c              3   ó0   "  € T F  qf   K  Vx € K  	  R # 5irµ   r(   )rç   Úsources   & r%   ré   Ú7BaseExpression._resolve_output_field.<locals>.<genexpr>g  s   é € ð 
Ù!9�v�FŠFÓ!9ùs   ‚Œ
z!Expression contains mixed types: ú, ú. You must set output_field.N)Úget_source_fieldsrÙ   r  r   r)   )r    Úsources_iterr   r  s   &   r%   r  Ú$BaseExpression._resolve_output_fieldY  s{   € ñ
Ø!%×!7Ñ!7Ô!9ó
ˆó )ˆLÛ&�Ü! ,×0@Ñ0@×AÔAÝ$ð )×2Ñ2×;Ô;Ø"×,Ñ,×5Ô5ð	óð ñ 'ð  Òó )r2   c                ó   € V # rµ   r(   ©ÚvalueÚ
expressionr   s   &&&r%   rË   Ú"BaseExpression._convert_value_noopw  s   € àˆr2   c                ó®   € V P                   pVP                  4       pVR8X  d   R # VP                  R4      '       d   R # VR8X  d   R # V P                  # )z±
Expressions provide their own converters because users have the option
of manually specifying the output_field which may be a different type
from the one the database returns.
Ú
FloatFieldc                 ó$   € V f   R # \        V 4      # rµ   )Úfloatr'  s   &&&r%   Ú<lambda>Ú.BaseExpression.convert_value.<locals>.<lambda>…  s   € Øš�Ð7¬5°«<Ð7r2   ÚIntegerFieldc                 ó$   € V f   R # \        V 4      # rµ   )Úintr'  s   &&&r%   r/  r0  ‰  s   € Øš�Ð5¬3¨u«:Ð5r2   r   c                 ó$   € V f   R # \        V 4      # rµ   r   r'  s   &&&r%   r/  r0  �  s   € Øš�Ð9¬7°5«>Ð9r2   )r   r   ÚendswithrË   )r    r  Úinternal_types   &  r%   rÃ   ÚBaseExpression.convert_value{  sn   € ð ×!Ñ!ˆØ×/Ñ/Ó1ˆØ˜LÔ(ñð ð ×#Ñ# N×3Ò3ñð ð ˜nÔ,ñð ð ×'Ñ'Ð'r2   c                ó8   € V P                   P                  V4      # rµ   )r   Ú
get_lookup)r    Úlookups   &&r%   r9  ÚBaseExpression.get_lookup’  s   € Ø× Ñ ×+Ñ+¨FÓ3Ð3r2   c                ó8   € V P                   P                  V4      # rµ   )r   Úget_transform©r    Únames   &&r%   r=  ÚBaseExpression.get_transform•  s   € Ø× Ñ ×.Ñ.¨tÓ4Ð4r2   c                ó¸   € V P                  4       pTP                  V P                  4        Uu. uF  pVe   VP                  V4      MR NK  	  up4       V# u upi rµ   )rÅ   rÖ   rÐ   Úrelabeled_clone)r    Ú
change_mapÚcloneÚes   &&  r%   rB  ÚBaseExpression.relabeled_clone˜  sa   € Ø—	‘	“ˆØ×$Ñ$ð ×4Ñ4Ô6óá6�Að 23²�×!Ñ! *Ô-ÀDÒHÙ6ñô	
ð ˆùòs   ® Ac                ó  € V'       g   V # VP                  V 4      ;p'       d   V# V P                  4       ;p'       g   V # V P                  4       pTP                  V Uu. uF  pVf   R MVP	                  V4      NK  	  up4       V# u upi rµ   )ÚgetrÐ   rÅ   rÖ   Úreplace_expressions)r    ÚreplacementsÚreplacementr  rD  rè   s   &&    r%   rI  Ú"BaseExpression.replace_expressions¢  s–   € ßØˆKØ&×*Ñ*¨4Ó0Ð0ˆ;Ö0ØÐØ&*×&AÑ&AÓ&CÐCÐ"ÖCØˆKØ—	‘	“ˆØ×$Ñ$ñ /óá.�Dð š‘¨$×*BÑ*BÀ<Ó*PÒPÙ.ñô	
ð ˆùòs   Á Bc                ó€   € \        4       pV P                  4        F  pVf   K	  WP                  4       ,          pK!  	  V# rµ   )ÚsetrÐ   Úget_refs)r    Úrefsrè   s   &  r%   rO  ÚBaseExpression.get_refs²  s9   € Ü‹uˆØ×/Ñ/Ö1ˆDØŠ|ÙØ—M‘M“OÕ#ŠDñ 2ð ˆr2   c                ó.   € \         P                   ! V 4      # rµ   ©rÅ   rM   s   &r%   rÅ   ÚBaseExpression.copyº  ó   € Ü�yŠy˜‹Ðr2   c           	     ó
  € V P                  4       pTP                  V P                  4        Uu. uFC  p\        V\        4      '       d   \	        V VP
                   24      MVP                  V4      NKE  	  up4       V# u upi rµ   )rÅ   rÖ   rÐ   rÙ   rÛ   r?  Úprefix_references)r    ÚprefixrD  rè   s   &&  r%   rW  Ú BaseExpression.prefix_references½  s…   € Ø—	‘	“ˆØ×$Ñ$ð !×7Ñ7Ô9óñ :�Dô " $¬×*Ò*ô ˜˜ §¡ Ð,Ô-à×/Ñ/°Ó7ò8ñ :ñô		
ð ˆùòs   ®A	B c                ó    € V P                   '       g   V .# . pV P                  4        F"  pVP                  VP                  4       4       K$  	  V# rµ   )rå   rÐ   ÚextendÚget_group_by_cols©r    Úcolsr  s   &  r%   r\  Ú BaseExpression.get_group_by_colsË  sG   € Ø×&×&Ð&Ø�6ˆMØˆØ×1Ñ1Ö3ˆFØ�K‰K˜×0Ñ0Ó2Ö3ñ 4àˆr2   c                ó^   € V P                  4        Uu. uF  qP                  NK  	  up# u upi )z9Return the underlying field types used by this aggregate.)rÐ   r  )r    rE  s   & r%   r#  Ú BaseExpression.get_source_fieldsÓ  s)   € à15×1LÑ1LÔ1NÓOÑ1N¨A×'Ô'Ñ1NÑOÐOùÒOs   “*c                ó   € \        V 3/ VB # rµ   ©ÚOrderBy©r    Úkwargss   &,r%   ÚascÚBaseExpression.asc×  ó   € Ü�tÑ&˜vÑ&Ð&r2   c                ó   € \        V 3R R/VB # ©Ú
descendingTrc  re  s   &,r%   ÚdescÚBaseExpression.descÚ  ó   € Ü�tÑ7¨Ð7°Ñ7Ð7r2   c                ó   € V # rµ   r(   rM   s   &r%   Úreverse_orderingÚBaseExpression.reverse_orderingÝ  ó   € Øˆr2   c              #  ó¼   "  € V x € V P                  4        F=  pV'       g   K  \        VR4      '       d   VP                  4        Rj  x€L
  K9  Vx € K?  	  R#  L5i)zQ
Recursively yield this expression and all subexpressions, in
depth-first order.
ÚflattenN)rÐ   r@   ru  )r    rè   s   & r%   ru  ÚBaseExpression.flattenà  sJ   é € ð
 Š
Ø×/Ñ/Ö1ˆDß‰tÜ˜4 ×+Ò+Ø#Ÿ|™|›~×-Ò-à”Jó 2ñ .ùs   ‚A¤%AÁ	AÁ
Ac                óx   € \        V P                  R4      '       d   V P                  P                  WV4      # W#3# )zn
Custom format for select clauses. For example, EXISTS expressions need
to be wrapped in CASE WHEN on Oracle.
Úselect_format)r@   r   rx  ©r    r!   r#   r$   s   &&&&r%   rx  ÚBaseExpression.select_formatí  s8   € ô
 �4×$Ñ$ o×6Ò6Ø×$Ñ$×2Ñ2°8À&ÓIÐIØˆ{Ðr2   c                ó”   € \        V R R4      '       g    V P                  4       w  pV# V #   \         d   p\        R4      ThRp?ii ; i)Ú constraint_validation_compatibleTzdExpressions with constraint_validation_compatible set to False must have only one source expression.N)rt   rÐ   r  )r    r)  rE  s   &  r%   Úget_expression_for_validationÚ,BaseExpression.get_expression_for_validationö  s]   € ä�tÐ?À×FÒFð"Ø $× ;Ñ ;Ó =‘�ð "Ð!Øˆøô ô Ü ð<óð ðûðús   •+ «A¶AÁAr¾   rµ   ©NTNFF)5r)   r*   r+   r,   r-   ÚNotImplementedÚempty_result_set_valuer  Ú
filterableÚwindow_compatibleÚallowed_defaultr|  Úset_returningr  rÀ   rÈ   rÌ   rÐ   rÖ   rÞ   r   r   rå   rñ   rö   rý   r?   Úpropertyrq   r  r   r  r  ÚstaticmethodrË   rÃ   r9  r=  rB  rI  rO  rÅ   rW  r\  r#  rg  rm  rq  ru  rx  r}  r.   r/   r0   s   @r%   r¼   r¼   ®   s~  ø‡ € Ù/à+Ðà€Jà€JàÐà€Oà'+Ð$à€Mà#(Ð ô-òò
<òòò
òHð8 ñ
ó ð
ð
 ñ
ó ð
ð
 ñ
ó ð
ð ñ
ó ð
ô#ðJ ñBó ðBð ñ!ó ð!ð ñó ðð ñó ðò ð< ñó ðð ñ(ó ð(ò,4ò5òòò òòòòPò'ò8òòò÷ð r2   r¼   c                   óŒ   a € ] tR tRt o Rt]]P                  ! ^€R7      R 4       4       t]	R 4       t
]R 4       tR tR tR	tV tR
# )Ú
Expressioni  z:An expression that can be combined with other expressions.©Úmaxsizec                ó,   € \        V P                  4      # rµ   )r   rÀ   )Úclss   &r%   Ú_constructor_signatureÚ!Expression._constructor_signature	  s   € ô ˜Ÿ™Ó&Ð&r2   c                óB  a € \        V\        4      '       d    \        \        S P                  V4      4      # \        V\        4      '       dO   \        ;QJ d%    . V 3R  lVP                  4        4       F  NK  	  5# ! V 3R  lVP                  4        4       4      # \        V\        P                  4      '       d\   VP                  '       d?   VP                  '       d-   VP                  P                  P                  VP                  3# \        V4      # \        V4      # )c              3   óN   <"  € T F  w  rVSP                  V4      3x € K  	  R # 5irµ   )Ú	_identity)rç   ÚkeyÚvalr�  s   &  €r%   ré   Ú'Expression._identity.<locals>.<genexpr>  s!   øé € ÐQÁ=±x°s˜#˜sŸ}™}¨SÓ1Õ2Ã=ùs   ƒ"%)rÙ   ÚtupleÚmapr’  ÚdictÚitemsr   ÚFieldr?  ÚmodelÚ_metaÚlabelÚtyper   )r�  r(  s   f&r%   r’  ÚExpression._identity  s·   ø€ ä�eœU×#Ò#Üœ˜SŸ]™]¨EÓ2Ó3Ð3Ü�eœT×"Ò"ß”5ÔQÀ5Ç;Á;Ä=ÓQ—5ÐQ�5ÔQÀ5Ç;Á;Ä=ÓQÓQÐQÜ�eœVŸ\™\×*Ò*Ø�z�zˆz˜eŸkŸk˜kØ—{‘{×(Ñ(×.Ñ.°·
±
Ð:Ð:Ü˜“;ÐÜ˜UÓ#Ð#r2   c                óh  € V P                   w  rV P                  P                  ! V .VO5/ VB pVP                  ! 4        \	        VP
                  P                  4       4      p\        V4       V P                  .pV F(  w  rgV P                  V4      pVP                  Wg34       K*  	  \        V4      # rµ   )Ú_constructor_argsrŽ  Úbind_partialÚapply_defaultsÚiterÚ	argumentsr™  Únextr  r’  Úappendr–  )r    Úargsrf  r   r¥  ÚidentityrÝ   r(  s   &       r%   r©  ÚExpression.identity  s�   € à×-Ñ-‰ˆØ×/Ñ/×<Ò<¸TÐSÀDÒSÈFÑSˆ	Ø× Ò Ô"Ü˜×,Ñ,×2Ñ2Ó4Ó5ˆ	ÜˆYŒØ—N‘NÐ#ˆÛ#‰JˆCð —N‘N 5Ó)ˆEØ�O‰O˜S˜LÖ)ñ $ô �X‹Ðr2   c                ól   € \        V\        4      '       g   \        # VP                  V P                  8H  # rµ   )rÙ   r‰  r€  r©  rT   s   &&r%   Ú__eq__ÚExpression.__eq__*  s(   € Ü˜%¤×,Ò,Ü!Ð!Ø�~‰~ §¡Ñ.Ð.r2   c                ó,   € \        V P                  4      # rµ   )Úhashr©  rM   s   &r%   Ú__hash__ÚExpression.__hash__/  s   € Ü�D—M‘MÓ"Ð"r2   r(   N)r)   r*   r+   r,   r-   r   Ú	functoolsÚ	lru_cacherŽ  Úclassmethodr’  r   r©  r¬  r°  r.   r/   r0   s   @r%   r‰  r‰    sd   ø‡ € áDàØ×Ò Ô%ñ'ó &ó ð'ð ñ	$ó ð	$ð ñó ðò/÷
#ð #r2   r‰  c              3   óD   "  € T F  pV\         V3\         W3.x € K  	  R # 5irµ   r   )rç   Ú
field_types   & r%   ré   ré   €  s,   é € ð  ñ#�Jð œh¨
Ð3´hÀ
Ð5WÕXó#ùs   ‚ c                óB   € \         V,          P                  WV34       R# )z¦
Register combinable types:
    lhs <connector> rhs -> result
e.g.
    register_combinable_fields(
        IntegerField, Combinable.ADD, FloatField, FloatField
    )
N)Ú_connector_combinatorsr§  )ÚlhsrD   ÚrhsÚresults   &&&&r%   Úregister_combinable_fieldsr¼  ¶  s   € ô ˜9Õ%×,Ñ,¨c¸Ð-?Ö@r2   rŠ  c                 óš   € \         P                  V R4      pV F.  w  rEp\        W4      '       g   K  \        W%4      '       g   K,  Vu # 	  R # )Nr(   )r¸  rH  Ú
issubclass)rD   Úlhs_typeÚrhs_typeÚcombinatorsÚcombinator_lhs_typeÚcombinator_rhs_typeÚcombined_types   &&&    r%   Ú_resolve_combined_typerÅ  È  sH   € ä(×,Ñ,¨Y¸Ó;€KÛCNÑ?Ð°-Ü�h×4Ô4¼Ø÷:
ô :
ð !Ò ó	 DOr2   c                   óz   a a€ ] tR tRt oRV 3R lltR tR tR tR tR t	R t
RV 3R	 llt]R
 4       tRtVtV ;t# )rB   iÒ  c                óL   <€ \         SV `  VR 7       W n        Wn        W0n        R# ©r¾   N)ÚsuperrÀ   rD   r¹  rº  )r    r¹  rD   rº  r   r  s   &&&&&€r%   rÀ   ÚCombinedExpression.__init__Ó  s"   ø€ Ü‰Ñ lÐÔ3Ø"ŒØŒØŽr2   c                óN   € R P                  V P                  P                  V 4      # )z<{}: {}>)Úformatr  r)   rM   s   &r%   Ú__repr__ÚCombinedExpression.__repr__Ù  s   € Ø× Ñ  §¡×!8Ñ!8¸$Ó?Ð?r2   c                ód   € R P                  V P                  V P                  V P                  4      # )z{} {} {})rÌ  r¹  rD   rº  rM   s   &r%   Ú__str__ÚCombinedExpression.__str__Ü  s#   € Ø× Ñ  §¡¨4¯>©>¸4¿8¹8ÓDÐDr2   c                ó2   € V P                   V P                  .# rµ   ©r¹  rº  rM   s   &r%   rÐ   Ú)CombinedExpression.get_source_expressionsß  s   € Ø—‘˜$Ÿ(™(Ð#Ð#r2   c                ó$   € Vw  V n         V n        R # rµ   rÓ  rÔ   s   &&r%   rÖ   Ú)CombinedExpression.set_source_expressionsâ  s   € Ø"ÑˆŒ�$–(r2   c           	     óš  € \        V P                  \        V P                  P                  4      \        V P
                  P                  4      4      pVfq   \        RV P                  : RV P                  P                  P                  P                   RV P
                  P                  P                  P                   R24      hV! 4       # )NzCannot infer type of z# expression involving these types: r!  r"  )
rÅ  rD   rž  r¹  r  rº  r   r   r  r)   )r    rÄ  s   & r%   r  Ú(CombinedExpression._resolve_output_fieldå  s­   € ô /Ø�N‰NÜ�—‘×/Ñ/Ó0Ü�—‘×/Ñ/Ó0ó
ˆð
 Ò ÜØ'¨¯©Ñ'9ð :ØŸ(™(×/Ñ/×9Ñ9×BÑBÐCÀ2Ø—8‘8×(Ñ(×2Ñ2×;Ñ;Ð<ð = ð!óð ñ ‹Ðr2   c                ój  € . p. pVP                  V P                  4      w  rVVP                  V4       VP                  V4       VP                  V P                  4      w  rVVP                  V4       VP                  V4       R pVP
                  P                  V P                  V4      pWu,          V3# ©z(%s))Úcompiler¹  r§  r[  rº  ÚopsÚcombine_expressionrD   )r    r!   r   rÜ   Úexpression_paramsr#   r$   Úexpression_wrappers   &&&     r%   r   ÚCombinedExpression.as_sqlö  s    € ØˆØÐØ×&Ñ& t§x¡xÓ0‰ˆØ×Ñ˜3ÔØ× Ñ  Ô(Ø×&Ñ& t§x¡xÓ0‰ˆØ×Ñ˜3ÔØ× Ñ  Ô(à#ÐØ�n‰n×/Ñ/°·±ÀÓLˆØ!Õ'Ð):Ð:Ð:r2   c                óf  <€ \         S
V `  VVVVV4      p\        V \        \        34      '       gÏ    VP
                  P                  P                  4       p VP                  P                  P                  4       pRWx09   d2   Wx8w  d,   \        VP
                  VP                  VP                  4      # 0 Rmp	V P                  V P                  8X  d-   Wy9   d'   Wx8X  d!   \	        VP
                  VP                  4      # V#   \        \        3 d    R p LÀi ; i  \        \        3 d    R p L´i ; i)NÚDurationField>   Ú	DateFieldÚ	TimeFieldÚDateTimeField)rÉ  r?   rÙ   ÚDurationExpressionÚTemporalSubtractionr¹  r   r   ÚAttributeErrorr   rº  rD   rZ   )r    r	  r
  r  r  r  Úresolvedr¿  rÀ  Údatetime_fieldsr  s   &&&&&&    €r%   r?   Ú%CombinedExpression.resolve_expression  s  ø€ ô ‘7Ñ-ØØØØØó
ˆô ˜$Ô!3Ô5HÐ I×JÒJð Ø#Ÿ<™<×4Ñ4×FÑFÓH�ð Ø#Ÿ<™<×4Ñ4×FÑFÓH�ð  8Ð"6Ô6¸8Ô;OÜ)Ø—L‘L (×"4Ñ"4°h·l±lóð ò JˆOà—‘ $§(¡(Ô*ØÔ/ØÔ(ä*¨8¯<©<¸¿¹ÓFÐFØˆøô# #¤JÐ/ô  Ø’ð ûô #¤JÐ/ô  Ø’ð ús#   ²$D Á$D ÄDÄDÄD0Ä/D0c                ój   € V P                   P                  ;'       d    V P                  P                  # rµ   )r¹  r„  rº  rM   s   &r%   r„  Ú"CombinedExpression.allowed_default$  s$   € à�x‰x×'Ñ'×DÐD¨D¯H©H×,DÑ,DÐDr2   )rD   r¹  rº  rµ   r  )r)   r*   r+   r,   rÀ   rÍ  rÐ  rÐ   rÖ   r  r   r?   r   r„  r.   r/   Ú__classcell__©r  r1   s   @@r%   rB   rB   Ò  sL   ù‡ € ÷ò@òEò$ò#òò";÷ð@ ñEó ÷Eð Er2   rB   c                   ó>   a a€ ] tR tRt oR tV 3R ltR tRtVtV ;t	# )ræ  i)  c                óì   €  VP                   pVP                  4       R 8X  d1   VP                  V4      w  rVVP                  P	                  V4      V3#  VP                  V4      #   \
         d     Li ; i)râ  )r   r   rÛ  rÜ  Úformat_for_duration_arithmeticr   )r    Úsider!   r   Úoutputr#   r$   s   &&&&   r%   rÛ  ÚDurationExpression.compile*  s~   € ð	RØ×&Ñ&ˆFð ×'Ñ'Ó)¨_Ô<Ø&×.Ñ.¨tÓ4‘�Ø!—~‘~×DÑDÀSÓIÈ6ÐQÐQð =ð ×Ñ Ó%Ð%øô ô 	Ùð	ús   ‚A% Á%A3Á2A3c                óü  <€ VP                   P                  '       d   \        SV `  W4      # VP                  P                  V 4       . p. pV P                  V P                  W4      w  rVVP                  V4       VP                  V4       V P                  V P                  W4      w  rVVP                  V4       VP                  V4       R pVP                  P                  V P                  V4      pWu,          V3# rÚ  )ÚfeaturesÚhas_native_duration_fieldrÉ  r   rÜ  Úcheck_expression_supportrÛ  r¹  r§  r[  rº  Úcombine_duration_expressionrD   )	r    r!   r   rÜ   rÞ  r#   r$   rß  r  s	   &&&     €r%   r   ÚDurationExpression.as_sql5  sÔ   ø€ Ø×Ñ×8×8Ð8Ü‘7‘> (Ó7Ð7Ø�‰×/Ñ/°Ô5ØˆØÐØ—l‘l 4§8¡8¨XÓB‰ˆØ×Ñ˜3ÔØ× Ñ  Ô(Ø—l‘l 4§8¡8¨XÓB‰ˆØ×Ñ˜3ÔØ× Ñ  Ô(à#ÐØ�n‰n×8Ñ8¸¿¹ÈÓUˆØ!Õ'Ð):Ð:Ð:r2   c                ó®  € V P                   ! W3/ VB w  rEV P                  \        P                  \        P                  09   dw    V P
                  P                  P                  4       pV P                  P                  P                  4       p0 RmpWh9  g   Wx9  d   \        RV P                   R24      h WE3# WE3#   \        \        3 d     YE3# i ; i)r   zInvalid arguments for operator Ú.>   r,  r   r1  râ  )r   rD   r4   rL   rb   r¹  r   r   rº  r   rè  r   )	r    r!   r   r"   r#   r$   r¿  rÀ  Úallowed_fieldss	   &&&,     r%   r&   ÚDurationExpression.as_sqliteF  sÑ   € Ø—k’k (ÑH¸-ÑH‰ˆØ�>‰>œjŸn™n¬j¯n©nÐ=Ô=ðØŸ8™8×0Ñ0×BÑBÓD�ØŸ8™8×0Ñ0×BÑBÓD�ò"�ð Ô1°XÔ5SÜ'Ø9¸$¿.¹.Ð9IÈÐKóð ð 6Tð ˆ{Ðˆsˆ{Ðøô #¤JÐ/ô Øð ˆ{Ððús   ÁAB> Â>CÃCr(   )
r)   r*   r+   r,   rÛ  r   r&   r.   r/   rî  rï  s   @@r%   ræ  ræ  )  s   ù‡ € ò	&õ;÷"ò r2   ræ  c                   óZ   a a€ ] tR tRt o]P
                  ! 4       tV 3R ltR tRt	Vt
V ;t# )rç  i\  c                ó<   <€ \         SV `  WP                  V4       R # rµ   )rÉ  rÀ   rZ   )r    r¹  rº  r  s   &&&€r%   rÀ   ÚTemporalSubtraction.__init___  s   ø€ Ü‰Ñ˜Ÿh™h¨Ö,r2   c                ó   € VP                   P                  V 4       VP                  V P                  4      pVP                  V P                  4      pVP                   P                  V P                  P                  P                  4       W44      # rµ   )rÜ  rù  rÛ  r¹  rº  Úsubtract_temporalsr   r   )r    r!   r   r¹  rº  s   &&&  r%   r   ÚTemporalSubtraction.as_sqlb  sk   € Ø�‰×/Ñ/°Ô5Ø×Ñ˜tŸx™xÓ(ˆØ×Ñ˜tŸx™xÓ(ˆØ�~‰~×0Ñ0Ø�H‰H×!Ñ!×3Ñ3Ó5°só
ð 	
r2   r(   )r)   r*   r+   r,   r   râ  r   rÀ   r   r.   r/   rî  rï  s   @@r%   rç  rç  \  s"   ù‡ € Ø×'Ò'Ó)€Lõ-÷
ò 
r2   rç  zdjango.db.models.F)Úpathc                   ón   a € ] tR tRt o RtRtR tR tR tR t	RR	 lt
R
 tR tR tR tR tR tRtV tR# )rÛ   ik  zDAn object capable of resolving references to existing query objects.Fc                ó   € Wn         R# )zF
Arguments:
 * name: the name of the field this expression references
N©r?  r>  s   &&r%   rÀ   Ú
F.__init__q  s	   € ð
 Ž	r2   c                ób   € R P                  V P                  P                  V P                  4      # ©ú{}({}))rÌ  r  r)   r?  rM   s   &r%   rÍ  Ú
F.__repr__x  s!   € Ø�‰˜tŸ~™~×6Ñ6¸¿	¹	ÓBÐBr2   c                ó   € \        W4      # rµ   )ÚSliced)r    Ú	subscripts   &&r%   Ú__getitem__ÚF.__getitem__{  s   € Ü�dÓ&Ð&r2   c                óH   € \        R V P                  P                   R24      h)zargument of type 'z' is not iterable)Ú	TypeErrorr  r)   rT   s   &&r%   Ú__contains__ÚF.__contains__~  s%   € ô Ð,¨T¯^©^×-DÑ-DÐ,EÐEVÐWÓXÐXr2   Nc                ó<   € VP                  V P                  W#V4      # rµ   )Úresolve_refr?  ©r    r	  r
  r  r  r  s   &&&&&&r%   r?   ÚF.resolve_expressionƒ  s   € ð × Ñ  §¡¨KÀ	ÓJÐJr2   c                ó:  € VP                  V 4      ;pe   V# V P                  P                  \        4      vr4V'       g   V # VP                  \	        V4      4      ;p e   VP
                  f   V # V F$  pVP                  V4      pVf   V u # V! V4      pK&  	  V# rµ   )rH  r?  Úsplitr   rÛ   r  r=  )r    rJ  rK  Ú
field_nameÚ
transformsÚ	transformÚtransform_classs   &&     r%   rI  ÚF.replace_expressionsˆ  s¤   € Ø'×+Ñ+¨DÓ1Ð1ˆKÒ>ØÐØ"&§)¡)§/¡/´*Ó"=Ðˆ
÷ ØˆKà'×+Ñ+¬A¨j«MÓ:Ð:ˆKØòà ×6Ñ6Ò>ØˆKÛ#ˆIØ)×7Ñ7¸	ÓBˆOØÒ&Ø’Ù)¨+Ó6ŠKñ	 $ð
 Ðr2   c                ó   € \        V 3/ VB # rµ   rc  re  s   &,r%   rg  ÚF.ascœ  ri  r2   c                ó   € \        V 3R R/VB # rk  rc  re  s   &,r%   rm  ÚF.descŸ  ro  r2   c                óv   € V P                   VP                   8H  ;'       d    V P                  VP                  8H  # rµ   )r  r?  rT   s   &&r%   r¬  ÚF.__eq__¢  s*   € Ø�~‰~ §¡Ñ0×LÐL°T·Y±YÀ%Ç*Á*Ñ5LÐLr2   c                ó,   € \        V P                  4      # rµ   )r¯  r?  rM   s   &r%   r°  Ú
F.__hash__¥  s   € Ü�D—I‘I‹Ðr2   c                ó.   € \         P                   ! V 4      # rµ   rS  rM   s   &r%   rÅ   ÚF.copy¨  rU  r2   r	  r  )r)   r*   r+   r,   r-   r„  rÀ   rÍ  r  r  r?   rI  rg  rm  r¬  r°  rÅ   r.   r/   r0   s   @r%   rÛ   rÛ   k  sM   ø‡ € áNà€OòòCò'òYô
Kò
ò('ò8òMò÷ð r2   rÛ   c                   óP   a a€ ] tR tRt oRtRtRtR tV 3R ltR t	R t
RtVtV ;t# )	ÚResolvedOuterRefi¬  z¯
An object that contains a reference to an outer query.

In this case, the reference to the outer query has been resolved because
the inner query has been used as a subquery.
Fc                ó   € \        R 4      h)zXThis queryset contains a reference to an outer query and may only be used in a subquery.)r  ©r    r¨  rf  s   &*,r%   r   ÚResolvedOuterRef.as_sql·  s   € Üð*ó
ð 	
r2   c                ó®   <€ \         SV `  ! V/ VB pVP                  '       d   \        R V P                   R24      h\
        V P                  9   Vn        V# )z<Referencing outer query window expression is not supported: rý  )rÉ  r?   rñ   r   r?  r   Úpossibly_multivalued)r    r¨  rf  Úcolr  s   &*, €r%   r?   Ú#ResolvedOuterRef.resolve_expression½  s[   ø€ Ü‰gÒ(¨$Ð9°&Ñ9ˆØ×#×#Ð#Ü#ØNØ—9‘9�+˜Qð óð ô $.°·±Ñ#:ˆÔ Øˆ
r2   c                ó   € V # rµ   r(   ©r    Úrelabelss   &&r%   rB  Ú ResolvedOuterRef.relabeled_cloneÊ  rs  r2   c                ó   € . # rµ   r(   rM   s   &r%   r\  Ú"ResolvedOuterRef.get_group_by_colsÍ  rÒ   r2   r(   )r)   r*   r+   r,   r-   rå   rñ   r   r?   rB  r\  r.   r/   rî  rï  s   @@r%   r.  r.  ¬  s1   ù‡ € ñð ÐØ Ðò
õò÷ò r2   r.  c                   ó4   a € ] tR tRt o RtRtR tR tRtV t	R# )ÚOuterRefiÑ  Fc                ó�   € \        V P                  V P                  4      '       d   V P                  # \        V P                  4      # rµ   )rÙ   r?  r  r.  r0  s   &*,r%   r?   ÚOuterRef.resolve_expressionÕ  s0   € Ü�d—i‘i §¡×0Ò0Ø—9‘9ÐÜ §	¡	Ó*Ð*r2   c                ó   € V # rµ   r(   r7  s   &&r%   rB  ÚOuterRef.relabeled_cloneÚ  rs  r2   r(   N)
r)   r*   r+   r,   rå   rñ   r?   rB  r.   r/   r0   s   @r%   r=  r=  Ñ  s    ø‡ € ØÐØ Ðò+÷
ð r2   r=  c                   óF   a a€ ] tR tRt oRtV 3R ltR tRR ltRtVt	V ;t
# )r  iÞ  zœ
An object that contains a slice of an F expression.

Object resolves the column on which the slicing is applied, and then
applies the slicing if possible.
c                ó6  <€ \         SV `  VP                  4       Wn        \	        V\
        4      '       d*   V^ 8  d   \        R4      hV^,           V n        ^V n        R# \	        V\        4      '       Ed   VP                  e   VP                  ^ 8  g    VP                  e   VP                  ^ 8  d   \        R4      hVP                  e   \        R4      hVP                  '       d9   VP                  '       d'   VP                  VP                  8  d   \        R4      hVP                  f   ^MVP                  ^,           V n        VP                  f
   RV n        R# VP                  VP                  ;'       g    ^ ,
          V n        R# \        R4      h)r   z#Negative indexing is not supported.NzStep argument is not supported.z,Slice stop must be greater than slice start.z7Argument to slice must be either int or slice instance.)rÉ  rÀ   r?  ÚobjrÙ   r3  r  ÚstartÚlengthÚsliceÚstopÚstepr  )r    rD  r  r  s   &&&€r%   rÀ   ÚSliced.__init__æ  s$  ø€ Ü‰Ñ˜Ÿ™Ô"ØŒÜ�i¤×%Ò%Ø˜1Œ}Ü Ð!FÓGÐGØ" Q�ˆDŒJØˆDŽKÜ˜	¤5×)Ó)Ø—‘Ò+°	·±À!Ô0CØ—‘Ò*¨y¯~©~ÀÔ/Aä Ð!FÓGÐGØ�~‰~Ò)Ü Ð!BÓCÐCØ�~�~ˆ~ )§/§/ /°i·n±nÀyÇÁÔ6VÜ Ð!OÓPÐPØ'Ÿo™oÒ5™¸9¿?¹?ÈQÕ;NˆDŒJØ�~‰~Ò%Ø"�–à'Ÿn™n°	·±×0DÐ0DÀ1ÕE�–äÐUÓVÐVr2   c                óØ   € V P                   ^,
          pV P                  f   RMWP                  ,           p\        W4      pV P                  P                   RV P
                  : RV: R2# )rI   NÚ(r!  Ú))rE  rF  rG  r  r+   rD  )r    rE  rH  r  s   &   r%   rÍ  ÚSliced.__repr__ÿ  sX   € Ø—
‘
˜Q•ˆØ—{‘{Ò*‰t°¿¹Õ0CˆÜ˜%Ó&ˆ	Ø—.‘.×-Ñ-Ð.¨a°·±©|¸2¸i¹]È!ÐLÐLr2   c                ó4  € VP                  V P                  W#V4      p\        V P                  \        V P
                  34      '       d   V P                  P                  WW4V4      pMTpVP                  P                  WpP                  V P                  4      # rµ   )r  r?  rÙ   rD  r=  r  r?   r   Úslice_expressionrE  rF  )r    r	  r
  r  r  r  ré  rè   s   &&&&&&  r%   r?   ÚSliced.resolve_expression  sy   € ð ×$Ñ$ T§Y¡Y°ÀIÓNˆÜ�d—h‘h¤¨4¯>©>Ð :×;Ò;Ø—8‘8×.Ñ.Ø E°hó‰Dð ˆDØ×$Ñ$×5Ñ5°d¿J¹JÈÏÉÓTÐTr2   )rF  rD  rE  r  )r)   r*   r+   r,   r-   rÀ   rÍ  r?   r.   r/   rî  rï  s   @@r%   r  r  Þ  s"   ù‡ € ñõWò2M÷Uô Ur2   r  zdjango.db.models.Funcc                   óŒ   a a€ ] tR tRt oRtRtRtRtRtRR/V 3R llt	R t
R	 tR
 tR tRR ltV 3R lt]R 4       tRtVtV ;t# )ÚFunci  zAn SQL function call.Nz%(function)s(%(expressions)s)r!  r   c               óZ  <€ V P                   eq   \        V4      V P                   8w  dW   \        RV P                  P                  : RV P                   : RV P                   ^8X  d   RMR: R\        V4      : R2	4      h\
        SV `  VR7       V P                  ! V!  V n        W0n	        R # )	NÚ'z' takes exactly Ú Úargumentr¥  z (z given)r¾   )
ÚarityÚlenr  r  r)   rÉ  rÀ   rÞ   r  Úextra)r    r   rÜ   rZ  r  s   &$*,€r%   rÀ   ÚFunc.__init__   s‰   ø€ Ø�:‰:Ò!¤c¨+Ó&6¸$¿*¹*Ô&DÝð —N‘N×+Ô+Ø—J”JØ"&§*¡*°¤/‘J°{ÒBÜ˜Ö$ðóð ô 	‰Ñ lÐÔ3Ø"&×"9Ò"9¸;Ñ"GˆÔØŽ
r2   c                óœ  € V P                   P                  R  V P                   4       4      p/ V P                  CV P	                  4       CpV'       dV   RP                  R \        VP                  4       4       4       4      pRP                  V P                  P                  W4      # RP                  V P                  P                  V4      # )c              3   ó8   "  € T F  p\        V4      x € K  	  R # 5irµ   ©rÚ   ©rç   rÝ   s   & r%   ré   Ú Func.__repr__.<locals>.<genexpr>0  ó   é € Ð#PÑ8O°¤C¨§H HÓ8Oùó   ‚r!  c              3   ój   "  € T F)  w  r\        V4      R ,           \        V4      ,           x € K+  	  R# 5i)Ú=Nr^  )rç   r“  r”  s   &  r%   ré   r`  3  s*   é € ð Ù:O©h¨c”�C“˜3•¤ S£×)Ò)Ó:Oùs   ‚13ú
{}({}, {})r  )
Ú
arg_joinerÚjoinr  rZ  Ú_get_repr_optionsÚsortedr™  rÌ  r  r)   )r    r¨  rZ  s   &  r%   rÍ  ÚFunc.__repr__/  s¡   € Ø�‰×#Ñ#Ñ#P¸×8OÒ8OÓ#PÓPˆØ:�4—:‘:Ð: ×!7Ñ!7Ó!9Ð:ˆßØ—I‘Iñ Ü:@ÀÇÁÃÔ:Oóó ˆEð  ×&Ñ& t§~¡~×'>Ñ'>ÀÓLÐLØ�‰˜tŸ~™~×6Ñ6¸Ó=Ð=r2   c                ó   € / # )zAReturn a dict of extra __init__() options to include in the repr.r(   rM   s   &r%   rh  ÚFunc._get_repr_options9  s   € àˆ	r2   c                ó   € V P                   # rµ   ©r  rM   s   &r%   rÐ   ÚFunc.get_source_expressions=  s   € Ø×&Ñ&Ð&r2   c                ó   € Wn         R # rµ   rn  rÔ   s   &&r%   rÖ   ÚFunc.set_source_expressions@  s   € Ø"'Ör2   c                ó   € VP                   P                  V 4       . p. pV P                   F9  p	 VP                  V	4      w  r«VP                  V
4       VP                  V4       K;  	  / V P                  CVCpVe   W=R&   MVP                  RV P                  4       T;'       g    VP                  RV P                  4      pT;'       g    VP                  RV P                   4      pVP#                  V4      ;VR&   VR&   WM,          V3#   \         d=    \        T	R \        4      pT\        J d   h TP                  \        T4      4      w  r« EL\         d!    TP                  \        R4      4      w  r« EL9i ; i)r�  TÚfunctionÚtemplaterf  rÜ   r  )rÜ  rù  r  rÛ  r   rt   r€  rA   r   r§  r[  rZ  Ú
setdefaultrs  rH  rt  rf  rg  )r    r!   r   rs  rt  rf  r"   Ú	sql_partsr$   rÝ   Úarg_sqlÚ
arg_paramsr�  Údatas   &&&&&&,       r%   r   ÚFunc.as_sqlC  sm  € ð 	�‰×/Ñ/°Ô5Øˆ	ØˆØ×*Ô*ˆCð
DØ&.×&6Ñ&6°sÓ&;Ñ#�ð ×Ñ˜WÔ%Ø�M‰M˜*Ö%ñ +ð /�$—*‘*Ð. Ð.ˆð ÒØ'�Òà�O‰O˜J¨¯©Ô6Ø×BÐB˜tŸx™x¨
°D·M±MÓBˆØ×JÐJ 4§8¡8¨L¸$¿/¹/Ó#Jˆ
Ø.8¯o©o¸iÓ.HÐHˆˆ]Ñ˜d 7™mØ� Ð&Ð&øô- "ô VÜ)0ØÐ1´>ó*Ð&ð *¬^Ó;ØØ&.×&6Ñ&6´uÐ=SÓ7TÓ&UÑ#�šÜ ô DØ&.×&6Ñ&6´u¸T³{Ó&CÑ#�šðDús   °DÄAE=ÅE=ÅE=Å<E=c                ó’   <€ \         SV `  4       pV P                  R ,          Vn        V P                  P                  4       Vn        V# ©:NNN)rÉ  rÅ   r  rZ  )r    rÅ   r  s   & €r%   rÅ   Ú	Func.copyj  s8   ø€ Ü‰w‰|‹~ˆØ"&×"9Ñ"9¸!Õ"<ˆÔØ—Z‘Z—_‘_Ó&ˆŒ
Øˆr2   c                ó’   € \         ;QJ d&    R  V P                   4       F  '       d   K   R# 	  R# ! R  V P                   4       4      # )c              3   ó8   "  € T F  qP                   x € K  	  R # 5irµ   ©r„  )rç   r)  s   & r%   ré   Ú'Func.allowed_default.<locals>.<genexpr>r  s   é € ÐXÑ@W°*×-Ö-Ó@Wùrb  FT)Úallr  rM   s   &r%   r„  ÚFunc.allowed_defaultp  s7   € ç‹sÑXÀ×@WÒ@WÓX�sŒsÐXŠsÐXˆsÑXÀ×@WÒ@WÓXÓXÐXr2   )rZ  r  ©NNN)r)   r*   r+   r,   r-   rs  rt  rf  rX  rÀ   rÍ  rh  rÐ   rÖ   r   rÅ   r   r„  r.   r/   rî  rï  s   @@r%   rS  rS    sc   ù‡ € áà€HØ.€HØ€JØ€Eð°$÷ ò>òò'ò(ô%'õNð ñYó ÷Yð Yr2   rS  zdjango.db.models.Valuec                   óz   a a€ ] tR tRt oRtRtRtRV 3R lltR tR t	RV 3R llt
R	 tR
 t]R 4       tRtVtV ;t# )rA   iu  z9Represent a wrapped value as a node within an expression.FTc                ó4   <€ \         SV `  VR7       Wn        R# )a
  
Arguments:
 * value: the value this expression represents. The value will be
   added into the sql parameter list and properly quoted.

 * output_field: an instance of the model field type that this
   expression will return, such as IntegerField() or CharField().
r¾   N)rÉ  rÀ   r(  )r    r(  r   r  s   &&&€r%   rÀ   ÚValue.__init__~  s   ø€ ô 	‰Ñ lÐÔ3ØŽ
r2   c                óP   € V P                   P                   R V P                  : R2# )rL  rM  )r  r)   r(  rM   s   &r%   rÍ  ÚValue.__repr__Š  s$   € Ø—.‘.×)Ñ)Ð*¨!¨D¯J©J©>¸Ð;Ð;r2   c                óF  € VP                   P                  V 4       V P                  pV P                  pVe_   V P                  '       d   VP                  W2R7      pMVP                  W2R7      p\        VR4      '       d   VP                  W1V4      V.3# Vf   R. 3# RV.3# )N)r   Úget_placeholderÚNULLz%s)	rÜ  rù  r(  r  r  Úget_db_prep_saveÚget_db_prep_valuer@   r‹  )r    r!   r   r”  r   s   &&&  r%   r   ÚValue.as_sql�  s¤   € Ø�‰×/Ñ/°Ô5Ø�j‰jˆØ×1Ñ1ˆØÒ#Ø�}�}ˆ}Ø"×3Ñ3°CÐ3ÓO‘à"×4Ñ4°SÐ4ÓP�Ü�|Ð%6×7Ò7Ø#×3Ñ3°CÀ:ÓNÐQTÐPUÐUÐUØŠ;ð ˜2�:ÐØ�c�Uˆ{Ðr2   c                ó6   <€ \         SV `  WW4V4      pWVn        V# rµ   )rÉ  r?   r  ©r    r	  r
  r  r  r  r  r  s   &&&&&& €r%   r?   ÚValue.resolve_expressionŸ  s"   ø€ ô ‰GÑ& u¸5ÈXÓVˆØŒ
Øˆr2   c                ó   € . # rµ   r(   rM   s   &r%   r\  ÚValue.get_group_by_cols¦  rÒ   r2   c                óä  € \        V P                  \        4      '       d   \        P                  ! 4       # \        V P                  \
        4      '       d   \        P                  ! 4       # \        V P                  \        4      '       d   \        P                  ! 4       # \        V P                  \        4      '       d   \        P                  ! 4       # \        V P                  \        P                  4      '       d   \        P                  ! 4       # \        V P                  \        P                  4      '       d   \        P                  ! 4       # \        V P                  \        P                  4      '       d   \        P                   ! 4       # \        V P                  \        P"                  4      '       d   \        P$                  ! 4       # \        V P                  \&        4      '       d   \        P(                  ! 4       # \        V P                  \*        4      '       d   \        P,                  ! 4       # \        V P                  \.        4      '       d   \        P0                  ! 4       # R # rµ   )rÙ   r(  rÚ   r   Ú	CharFieldÚboolr  r3  r1  r.  r,  Údatetimerå  Údaterã  Útimerä  Ú	timedeltarâ  r   r   ÚbytesÚBinaryFieldr
   Ú	UUIDFieldrM   s   &r%   r  ÚValue._resolve_output_field©  s{  € Ü�d—j‘j¤#×&Ò&Ü×#Ò#Ó%Ð%Ü�d—j‘j¤$×'Ò'Ü×&Ò&Ó(Ð(Ü�d—j‘j¤#×&Ò&Ü×&Ò&Ó(Ð(Ü�d—j‘j¤%×(Ò(Ü×$Ò$Ó&Ð&Ü�d—j‘j¤(×"3Ñ"3×4Ò4Ü×'Ò'Ó)Ð)Ü�d—j‘j¤(§-¡-×0Ò0Ü×#Ò#Ó%Ð%Ü�d—j‘j¤(§-¡-×0Ò0Ü×#Ò#Ó%Ð%Ü�d—j‘j¤(×"4Ñ"4×5Ò5Ü×'Ò'Ó)Ð)Ü�d—j‘j¤'×*Ò*Ü×&Ò&Ó(Ð(Ü�d—j‘j¤%×(Ò(Ü×%Ò%Ó'Ð'Ü�d—j‘j¤$×'Ò'Ü×#Ò#Ó%Ð%ñ (r2   c                ó   € V P                   # rµ   ©r(  rM   s   &r%   r�  ÚValue.empty_result_set_valueÁ  s   € à�z‰zÐr2   r¡  rµ   r  )r)   r*   r+   r,   r-   r  r„  rÀ   rÍ  r   r?   r\  r  r†  r�  r.   r/   rî  rï  s   @@r%   rA   rA   u  sK   ù‡ € áCð €HØ€O÷
ò<ò÷$òò&ð0 ñó ÷ð r2   rA   c                   ó\   a a€ ] tR tRt oRtR	V 3R lltR tR tR tR
V 3R llt	Rt
VtV ;t# )ÚRawSQLiÆ  Tc                óv   <€ Vf   \         P                  ! 4       pWuV n        V n        \        SV `  VR7       R # ©Nr¾   )r   rš  r#   r$   rÉ  rÀ   )r    r#   r$   r   r  s   &&&&€r%   rÀ   ÚRawSQL.__init__É  s2   ø€ ØÒÜ!Ÿ<š<›>ˆLØ #ÐˆŒ�$”+Ü‰Ñ lÐÖ3r2   c                óx   € R P                  V P                  P                  V P                  V P                  4      # ©re  )rÌ  r  r)   r#   r$   rM   s   &r%   rÍ  ÚRawSQL.__repr__Ï  s)   € Ø×"Ñ" 4§>¡>×#:Ñ#:¸D¿H¹HÀdÇkÁkÓRÐRr2   c                ó@   € R V P                   ,          V P                  3# rÚ  )r#   r$   rá   s   &&&r%   r   ÚRawSQL.as_sqlÒ  s   € Ø˜Ÿ™Õ  $§+¡+Ð-Ð-r2   c                ó   € V .# rµ   r(   rM   s   &r%   r\  ÚRawSQL.get_group_by_colsÕ  ó	   € Øˆvˆr2   c                ó€  <€ VP                   '       dœ   VP                   P                  P                   Fw  pVP                  P                   FZ  pVP                  P                  4       V P                  P                  4       9   g   K<  VP                  VP                  W#V4        Ku  	  Ky  	  \        SV `)  WW4V4      # rµ   )r›  rœ  Úall_parentsÚlocal_fieldsÚcolumnÚlowerr#   r  r?  rÉ  r?   )	r    r	  r
  r  r  r  ÚparentÚparent_fieldr  s	   &&&&&&  €r%   r?   ÚRawSQL.resolve_expressionØ  s™   ø€ ð �;�;ˆ;ØŸ+™+×+Ñ+×7Ô7�Ø$*§L¡L×$=Ô$=�LØ#×*Ñ*×0Ñ0Ó2°d·h±h·n±nÓ6FÖFØ×)Ñ)Ø(×-Ñ-¨{À9ôò ó %>ñ 8ô ‰wÑ)Ø °(ó
ð 	
r2   )r$   r#   rµ   r  )r)   r*   r+   r,   r„  rÀ   rÍ  r   r\  r?   r.   r/   rî  rï  s   @@r%   r¤  r¤  Æ  s)   ù‡ € Ø€O÷4òSò.ò÷
÷ 
r2   r¤  c                   ó,   a € ] tR tRt o R tR tRtV tR# )ÚStarié  c                ó   € R # )z'*'r(   rM   s   &r%   rÍ  ÚStar.__repr__ê  s   € Ùr2   c                ó
   € R . 3# )r7   r(   rá   s   &&&r%   r   ÚStar.as_sqlí  s   € Ø�Bˆwˆr2   r(   N)r)   r*   r+   r,   rÍ  r   r.   r/   r0   s   @r%   r¹  r¹  é  s   ø‡ € ò÷ð r2   r¹  c                   óV   a a€ ] tR tRt oRtR	V 3R lltR tR tR
R ltR t	Rt
VtV ;t# )ÚDatabaseDefaultiñ  zV
Expression to use DEFAULT keyword during insert otherwise the underlying expression.
c                ó2   <€ \         SV `  V4       Wn        R # rµ   ©rÉ  rÀ   r)  ©r    r)  r   r  s   &&&€r%   rÀ   ÚDatabaseDefault.__init__ö  s   ø€ Ü‰Ñ˜Ô&Ø$Žr2   c                ó   € V P                   .# rµ   ©r)  rM   s   &r%   rÐ   Ú&DatabaseDefault.get_source_expressionsú  ó   € Ø—‘Ð Ð r2   c                ó   € Vw  V n         R # rµ   rÅ  rÔ   s   &&r%   rÖ   Ú&DatabaseDefault.set_source_expressionsý  s   € Ø"ÑˆŽr2   c                ó‚   € V P                   P                  VVVVVR 7      pV'       g   V# \        W`P                  R7      # ))r	  r
  r  r  r  r¾   )r)  r?   r¿  r  )r    r	  r
  r  r  r  Úresolved_expressions   &&&&&& r%   r?   Ú"DatabaseDefault.resolve_expression   sO   € ð #Ÿo™o×@Ñ@ØØ#ØØØð Aó 
Ð÷ Ø&Ð&ÜØ×.HÑ.Hô
ð 	
r2   c                óx   € VP                   P                  '       g   VP                  V P                  4      # R . 3# )ÚDEFAULT)r÷  Ú"supports_default_keyword_in_insertrÛ  r)  rá   s   &&&r%   r   ÚDatabaseDefault.as_sql  s3   € Ø×"Ñ"×E×EÐEØ×#Ñ# D§O¡OÓ4Ð4Ø˜"ˆ}Ðr2   rÅ  rµ   r  )r)   r*   r+   r,   r-   rÀ   rÐ   rÖ   r?   r   r.   r/   rî  rï  s   @@r%   r¿  r¿  ñ  s(   ù‡ € ñ÷%ò!ò#ô
÷$ò r2   r¿  c                   ó\   a a€ ] tR tRt oRtRtRV 3R lltR tR tR t	R t
R	 tR
tVtV ;t# )ÚColi  TFc                óP   <€ Vf   Tp\         SV `  VR7       WuV n        V n        R # r¦  )rÉ  rÀ   ÚaliasÚtarget)r    rÔ  rÕ  r   r  s   &&&&€r%   rÀ   ÚCol.__init__  s,   ø€ ØÒØ!ˆLÜ‰Ñ lÐÔ3Ø"'ÐˆŒ
�D–Kr2   c                óÜ   € V P                   V P                  r!V'       d   V\        V4      3M\        V4      3pR P                  V P                  P
                  RP                  V4      4      # )r  r!  )rÔ  rÕ  rÚ   rÌ  r  r)   rg  )r    rÔ  rÕ  Úidentifierss   &   r%   rÍ  ÚCol.__repr__"  sM   € ØŸ
™
 D§K¡Kˆvß.3�uœc &›kÑ*¼#¸f»+¸ˆØ�‰˜tŸ~™~×6Ñ6¸¿	¹	À+Ó8NÓOÐOr2   c                ó²   € V P                   V P                  P                  rCV'       d   W43MV3pR P                  \	        VP
                  V4      4      pV. 3# ©rý  )rÔ  rÕ  r³  rg  r—  Úquote_name_unless_alias)r    r!   r   rÔ  r³  rØ  r#   s   &&&    r%   r   Ú
Col.as_sql'  sH   € ØŸ
™
 D§K¡K×$6Ñ$6ˆvß).�u‘o°V°IˆØ�h‰h”s˜8×;Ñ;¸[ÓIÓJˆØ�Bˆwˆr2   c                ó¸   € V P                   f   V # V P                  VP                  V P                   V P                   4      V P                  V P                  4      # rµ   )rÔ  r  rH  rÕ  r   r7  s   &&r%   rB  ÚCol.relabeled_clone-  sF   € Ø�:‰:ÒØˆKØ�~‰~Ø�L‰L˜Ÿ™ T§Z¡ZÓ0°$·+±+¸t×?PÑ?Pó
ð 	
r2   c                ó   € V .# rµ   r(   rM   s   &r%   r\  ÚCol.get_group_by_cols4  r¯  r2   c                óä   € V P                   V P                  8X  d   V P                  P                  V4      # V P                  P                  V4      V P                   P                  V4      ,           # rµ   )rÕ  r   rÌ   rÍ   s   &&r%   rÌ   ÚCol.get_db_converters7  s^   € Ø�;‰;˜$×+Ñ+Ô+Ø×$Ñ$×6Ñ6°zÓBÐBØ× Ñ ×2Ñ2Øó
à�K‰K×)Ñ)¨*Ó5õ6ð 	6r2   )rÔ  rÕ  rµ   )r)   r*   r+   r,   rö   r3  rÀ   rÍ  r   rB  r\  rÌ   r.   r/   rî  rï  s   @@r%   rÒ  rÒ    s5   ù‡ € Ø!%ÐØ Ð÷0òPò
ò
ò÷6ò 6r2   rÒ  c                   ón   a a€ ] tR tRt oV 3R ltR tR tR tR tR t	R t
R	 tR
 tR tR tRtVtV ;t# )r  i?  c                óL   <€ \         SV `  VR 7       Wn        W n        W0n        R# rÈ  )rÉ  rÀ   rÔ  ÚtargetsÚsources)r    rÔ  ræ  rç  r   r  s   &&&&&€r%   rÀ   ÚColPairs.__init__@  s"   ø€ Ü‰Ñ lÐÔ3ØŒ
ØŒØŽr2   c                ó,   € \        V P                  4      # rµ   )rY  ræ  rM   s   &r%   Ú__len__ÚColPairs.__len__F  s   € Ü�4—<‘<Ó Ð r2   c                ó4   € \        V P                  4       4      # rµ   )r¤  Úget_colsrM   s   &r%   Ú__iter__ÚColPairs.__iter__I  s   € Ü�D—M‘M“OÓ$Ð$r2   c           
     ó¤   € V P                   P                   R V P                  : RV P                  : RV P                  : RV P
                  : R2
# )rL  r!  rM  )r  r)   rÔ  ræ  rç  r   rM   s   &r%   rÍ  ÚColPairs.__repr__L  sL   € à�~‰~×&Ñ&Ð' q¨¯©©°b¸¿¹Ñ8HÈØ�|‰|Ñ˜b ×!2Ñ!2Ñ 5°Qð8ð	
r2   c           	     óž   € \        V P                  V P                  4       UUu. uF  w  r\        V P                  W4      NK  	  upp# u uppi rµ   )Úzipræ  rç  rÒ  rÔ  )r    rÕ  r  s   &  r%   rí  ÚColPairs.get_colsR  sE   € ô #& d§l¡l°D·L±LÔ"Aô
á"A‘�ô �—
‘
˜FÖ+Ù"Aò
ð 	
ùó 
s   ¤!A	c                ó"   € V P                  4       # rµ   )rí  rM   s   &r%   rÐ   ÚColPairs.get_source_expressionsX  s   € Ø�}‰}‹Ðr2   c                ó   a € \         ;QJ d    V 3R  lV 4       F  '       d   K   RM	  RM! V 3R  lV 4       4      '       g   Q hV Uu. uF  q"P                  NK  	  upS n        V Uu. uF  q"P                  NK  	  upS n        R# u upi u upi )c              3   ó†   <"  € T F6  p\        V\        4      ;'       d    VP                  SP                  8H  x € K8  	  R # 5irµ   )rÙ   rÒ  rÔ  )rç   rè   r    s   & €r%   ré   Ú2ColPairs.set_source_expressions.<locals>.<genexpr>\  s2   øé € ÐXÑRWÈ$”:˜d¤CÓ(×EÐE¨T¯Z©Z¸4¿:¹:Ñ-EÔEÓRWùs
   ƒAŸ"AFTN)r‚  rÕ  ræ  r  rç  )r    rÕ   r4  s   f& r%   rÖ   ÚColPairs.set_source_expressions[  sd   ø€ ß‹sÔXÑRWÓX�s�sŠsÔXÑRWÓX×XÒXÐXÐXÙ.3Ó4©e sŸ
œ
©eÑ4ˆŒÙ-2Ó3©U cŸ	œ	©UÑ3ˆŽùò 5ùÚ3s   ÁBÁ(Bc                óÌ   € . p. pV P                  4       pV F8  pVP                  W4      w  rxVP                  V4       VP                  V4       K:  	  R P	                  V4      V3# )r!  )rí  r   r§  r[  rg  )	r    r!   r   Úcols_sqlÚcols_paramsr^  r4  r#   r$   s	   &&&      r%   r   ÚColPairs.as_sql`  sa   € ØˆØˆØ�}‰}‹ˆãˆCØŸ*™* XÓ:‰KˆCØ�O‰O˜CÔ Ø×Ñ˜vÖ&ñ ð
 �y‰y˜Ó" KÐ/Ð/r2   c                ó®   € V P                  VP                  V P                  V P                  4      V P                  V P                  V P
                  4      # rµ   )r  rH  rÔ  ræ  rç  r  r7  s   &&r%   rB  ÚColPairs.relabeled_clonel  s;   € Ø�~‰~Ø�L‰L˜Ÿ™ T§Z¡ZÓ0°$·,±,ÀÇÁÈdÏjÉjó
ð 	
r2   c                ó   € V # rµ   r(   r0  s   &*,r%   r?   ÚColPairs.resolve_expressionq  rs  r2   c                ó   € W#3# rµ   r(   ry  s   &&&&r%   rx  ÚColPairs.select_formatt  s
   € Øˆ{Ðr2   )rÔ  rç  ræ  )r)   r*   r+   r,   rÀ   rê  rî  rÍ  rí  rÐ   rÖ   r   rB  r?   rx  r.   r/   rî  rï  s   @@r%   r  r  ?  sA   ù‡ € õò!ò%ò
ò
òò4ò

0ò
ò
÷ò r2   r  c                   ój   a a€ ] tR tRt oRtV 3R ltR tR tR tRR lt	R t
R	 tR
 tR tRtVtV ;t# )ÚRefix  zr
Reference to column alias of the query. For example, Ref('sum_cost') in
qs.annotate(sum_cost=Sum('cost')) query.
c                ó@   <€ \         SV `  4        WuV n        V n        R # rµ   )rÉ  rÀ   rP  r  )r    rP  r  r  s   &&&€r%   rÀ   ÚRef.__init__~  s   ø€ Ü‰ÑÔØ!%ÐˆŒ	�4–;r2   c                óx   € R P                  V P                  P                  V P                  V P                  4      # r©  )rÌ  r  r)   rP  r  rM   s   &r%   rÍ  ÚRef.__repr__‚  s)   € Ø×"Ñ" 4§>¡>×#:Ñ#:¸D¿I¹IÀtÇ{Á{ÓSÐSr2   c                ó   € V P                   .# rµ   ©r  rM   s   &r%   rÐ   ÚRef.get_source_expressions…  s   € Ø—‘ˆ}Ðr2   c                ó   € Vw  V n         R # rµ   r  rÔ   s   &&r%   rÖ   ÚRef.set_source_expressionsˆ  s   € Ø‰ˆŽr2   c                ó   € V # rµ   r(   r  s   &&&&&&r%   r?   ÚRef.resolve_expression‹  s	   € ð
 ˆr2   c                ó   € V P                   0# rµ   )rP  rM   s   &r%   rO  ÚRef.get_refs’  s   € Ø—	‘	ˆ{Ðr2   c                óf   € V P                  4       pV P                  P                  V4      Vn        V# rµ   )rÅ   r  rB  )r    r8  rD  s   && r%   rB  ÚRef.relabeled_clone•  s(   € Ø—	‘	“ˆØ—{‘{×2Ñ2°8Ó<ˆŒØˆr2   c                óP   € VP                   P                  V P                  4      . 3# rµ   )rÜ  Ú
quote_namerP  rá   s   &&&r%   r   Ú
Ref.as_sqlš  s    € Ø�~‰~×(Ñ(¨¯©Ó3°RÐ7Ð7r2   c                ó   € V .# rµ   r(   rM   s   &r%   r\  ÚRef.get_group_by_cols�  r¯  r2   )rP  r  r  )r)   r*   r+   r,   r-   rÀ   rÍ  rÐ   rÖ   r?   rO  rB  r   r\  r.   r/   rî  rï  s   @@r%   r  r  x  s=   ù‡ € ñõ
.òTòòôòòò
8÷ò r2   r  c                   óL   a a€ ] tR tRt oRtRtR tV 3R ltR tR t	Rt
VtV ;t# )	ÚExpressionListi¡  zœ
An expression containing multiple expressions. Can be used to provide a
list of expressions as an argument to another expression, like a partition
clause.
z%(expressions)sc                óZ   € V P                   P                  R  V P                   4       4      # )c              3   ó8   "  € T F  p\        V4      x € K  	  R # 5irµ   r^  r_  s   & r%   ré   Ú)ExpressionList.__str__.<locals>.<genexpr>«  ra  rb  )rf  rg  r  rM   s   &r%   rÐ  ÚExpressionList.__str__ª  s#   € Ø�‰×#Ñ#Ñ#P¸×8OÒ8OÓ#PÓPÐPr2   c                óL   <€ V P                   '       g   R# \        SV `  ! V/ VB # )Ú )r"  r(   )r  rÉ  r   )r    r¨  rf  r  s   &*,€r%   r   ÚExpressionList.as_sql­  s(   ø€ Ø×&×&Ð&ØˆMÜ‰wŠ~˜tÐ. vÑ.Ð.r2   c                ó(   € V P                   ! W3/ VB # rµ   )r   )r    r!   r   r"   s   &&&,r%   r&   ÚExpressionList.as_sqlite²  s   € à�{Š{˜8ÑA°=ÑAÐAr2   c                óv   € . pV P                  4        F"  pVP                  VP                  4       4       K$  	  V# rµ   ©rÐ   r[  r\  )r    Úgroup_by_colsrè   s   &  r%   r\  Ú ExpressionList.get_group_by_cols¶  s7   € ØˆØ×/Ñ/Ö1ˆDØ× Ñ  ×!7Ñ!7Ó!9Ö:ñ 2àÐr2   r(   )r)   r*   r+   r,   r-   rt  rÐ  r   r&   r\  r.   r/   rî  rï  s   @@r%   r  r  ¡  s,   ù‡ € ñð !€HòQõ/ò
B÷ò r2   r  c                   ó:   a a€ ] tR tRt oRtRtV 3R ltRtVtV ;t	# )ÚOrderByListi½  FzORDER BY %(expressions)sc                ó:   <€ R  V 4       p\         SV `  ! V/ VB  R# )c              3   ó¨   "  € T FH  p\        V\        4      '       d,   V^ ,          R8X  d   \        \        VR,          4      RR7      MTx € KJ  	  R# 5i)r   r6   :rI   NNT©rl  N)rÙ   rÚ   rd  rÛ   ræ   s   & r%   ré   Ú'OrderByList.__init__.<locals>.<genexpr>Â  sK   é € ð 
ñ $�ô ˜d¤C×(Ò(¨T°!­W¸¬^ô œ˜$˜r�(›°Õ5àôó $ùs   ‚AAN)rÉ  rÀ   )r    rÜ   rZ  r  s   &*,€r%   rÀ   ÚOrderByList.__init__Á  s(   ø€ ñ
ñ $ó
ˆô 	‰Ò˜+Ð/¨Ô/r2   r(   )
r)   r*   r+   r,   r„  rt  rÀ   r.   r/   rî  rï  s   @@r%   r+  r+  ½  s   ù‡ € Ø€OØ)€H÷	0õ 	0r2   r+  z"django.db.models.ExpressionWrapperc                   ój   a a€ ] tR tRt oRtV 3R ltR tR tV 3R ltR t	R t
]R	 4       tR
tVtV ;t# )ÚExpressionWrapperiÍ  zˆ
An expression that can wrap another expression so that it can provide
extra context to the inner expression, such as the output_field.
c                ó4   <€ \         SV `  VR 7       Wn        R# rÈ  rÁ  rÂ  s   &&&€r%   rÀ   ÚExpressionWrapper.__init__Ô  s   ø€ Ü‰Ñ lÐÔ3Ø$Žr2   c                ó"   € V^ ,          V n         R# ©r   NrÅ  rÔ   s   &&r%   rÖ   Ú(ExpressionWrapper.set_source_expressionsØ  ó   € Ø �(ˆŽr2   c                ó   € V P                   .# rµ   rÅ  rM   s   &r%   rÐ   Ú(ExpressionWrapper.get_source_expressionsÛ  rÇ  r2   c                óÖ   <€ \        V P                  \        4      '       d<   V P                  P                  4       pV P                  Vn        VP                  4       # \        SV `  4       # rµ   )rÙ   r)  r‰  rÅ   r   r\  rÉ  ©r    r)  r  s   & €r%   r\  Ú#ExpressionWrapper.get_group_by_colsÞ  sS   ø€ Ü�d—o‘o¤z×2Ò2ØŸ™×-Ñ-Ó/ˆJØ&*×&7Ñ&7ˆJÔ#Ø×/Ñ/Ó1Ð1ô ‰wÑ(Ó*Ð*r2   c                ó8   € VP                  V P                  4      # rµ   )rÛ  r)  rá   s   &&&r%   r   ÚExpressionWrapper.as_sqlç  s   € Ø×Ñ §¡Ó0Ð0r2   c                ób   € R P                  V P                  P                  V P                  4      # r  )rÌ  r  r)   r)  rM   s   &r%   rÍ  ÚExpressionWrapper.__repr__ê  s!   € Ø�‰˜tŸ~™~×6Ñ6¸¿¹ÓHÐHr2   c                ó.   € V P                   P                  # rµ   )r)  r„  rM   s   &r%   r„  Ú!ExpressionWrapper.allowed_defaultí  s   € à�‰×.Ñ.Ð.r2   rÅ  )r)   r*   r+   r,   r-   rÀ   rÖ   rÐ   r\  r   rÍ  r†  r„  r.   r/   rî  rï  s   @@r%   r2  r2  Í  sB   ù‡ € ñõ
%ò#ò!õ+ò1òIð ñ/ó ÷/ð /r2   r2  c                   ó^   a a€ ] tR tRt oRtV 3R ltR tV 3R ltR	V 3R lltR t	Rt
VtV ;t# )
r¶   iò  z1The logical negation of a conditional expression.c                óP   <€ \         SV `  V\        P                  ! 4       R 7       R# rÈ  )rÉ  rÀ   r   r  r<  s   &&€r%   rÀ   ÚNegatedExpression.__init__õ  s   ø€ Ü‰Ñ˜´&×2EÒ2EÓ2GÐÖHr2   c                ó6   € V P                   P                  4       # rµ   )r)  rÅ   rM   s   &r%   r·   ÚNegatedExpression.__invert__ø  s   € Ø�‰×#Ñ#Ó%Ð%r2   c                ób  <€  \         SV `  W4      w  r4TP                  P                  pTP                  T P                  4      '       g	   RT R2T3# RT 2T3#   \         dJ    TP                  P                  pTP
                  '       g   Ru # TP                  \        R4      4      u # i ; i)ú1=1Tz
CASE WHEN z = 0 THEN 1 ELSE 0 ENDzNOT )rJ  r(   )rÉ  r   r   r   r÷  Ú&supports_boolean_expr_in_select_clauserÛ  rA   rÜ  Ú0conditional_expression_supported_in_where_clauser)  )r    r!   r   r#   r$   r÷  rÜ  r  s   &&&    €r%   r   ÚNegatedExpression.as_sqlû  s±   ø€ ð	1Ü™'™.¨Ó>‰KˆCð ×!Ñ!×%Ñ%ˆð ×CÑCÀDÇOÁO×TÒTØ ˜uÐ$:Ð;¸VÐCÐCØ�c�Uˆ|˜VÐ#Ð#øô ô 	1Ø×*Ñ*×3Ñ3ˆHØ×B×BÐBØ Ò Ø×#Ñ#¤E¨$£KÓ0Ò0ð		1ús   ƒA Á2B.ÂB.ÂB.Â-B.c                óz   <€ \         SV `  WW4V4      p\        VP                  R R4      '       g   \	        R4      hV# )rq   Fz*Cannot negate non-conditional expressions.)rÉ  r?   rt   r)  r  )r    r	  r
  r  r  r  ré  r  s   &&&&&& €r%   r?   Ú$NegatedExpression.resolve_expression  sC   ø€ ô ‘7Ñ-Ø °(ó
ˆô �x×*Ñ*¨M¸5×AÒAÜÐHÓIÐIØˆr2   c                óæ   € VP                   P                  P                  pVP                   P                  P                  '       g*   V! V P
                  4      '       d   R P                  V4      pW#3# ©zCASE WHEN {} THEN 1 ELSE 0 END)r   rÜ  rL  r÷  rK  r)  rÌ  )r    r!   r#   r$   Ú$expression_supported_in_where_clauses   &&&& r%   rx  ÚNegatedExpression.select_format  s_   € ð
 ×Ñ×#Ñ#×TÑTð 	-ð ×#Ñ#×,Ñ,×S×SÐSá4°T·_±_×EÒEà2×9Ñ9¸#Ó>ˆCØˆ{Ðr2   r(   r  )r)   r*   r+   r,   r-   rÀ   r·   r   r?   rx  r.   r/   rî  rï  s   @@r%   r¶   r¶   ò  s'   ù‡ € Ù;õIò&õ$÷ ÷ò r2   r¶   zdjango.db.models.Whenc                   óŒ   a a€ ] tR tRt oRtRtRV 3R lltR tR tR t	R t
RV 3R	 lltR
 tRR ltR t]R 4       tRtVtV ;t# )ÚWheni%  z"WHEN %(condition)s THEN %(result)sFc                ó†  <€ V'       d2   Vf   \        R/ VB R r1M \        VRR4      '       d   \        V3/ VB R r1Ve   \        VRR4      '       d	   V'       d   \        R4      h\        V\         4      '       d   V'       g   \	        R4      h\
        SV `  R R7       Wn        V P                  V4      ^ ,          V n	        R # )Nrq   FzLWhen() supports a Q object, a boolean expression, or lookups as a condition.z1An empty Q() can't be used as a When() condition.r¾   r(   )
r   rt   r  rÙ   r  rÉ  rÀ   Ú	conditionrÞ   r»  )r    rW  ÚthenÚlookupsr  s   &&&,€r%   rÀ   ÚWhen.__init__+  s«   ø€ ßØÒ Ü%&¡\¨¡\°4™7Ü˜ M°5×9Ò9Ü%& yÑ%<°GÑ%<¸d˜7ØÒ¤G¨I°}Àe×$LÒ$L×PWÜð"óð ô �i¤×#Ò#¯IÜÐPÓQÐQÜ‰Ñ dÐÔ+Ø"ŒØ×-Ñ-¨dÓ3°AÕ6ˆŽr2   c                ó>   € R V P                   : RV P                  : 2# )zWHEN z THEN ©rW  r»  rM   s   &r%   rÐ  ÚWhen.__str__<  s   � Ø$(§N¤N°D·K³KÐ@Ð@r2   c                ó@   € R V P                   P                  : RV : R2# ©Ú<z: Ú>©r  r)   rM   s   &r%   rÍ  ÚWhen.__repr__?  ó   � Ø!Ÿ^™^×4Ô4³dÐ;Ð;r2   c                ó2   € V P                   V P                  .# rµ   r\  rM   s   &r%   rÐ   ÚWhen.get_source_expressionsB  s   € Ø—‘ §¡Ð,Ð,r2   c                ó$   € Vw  V n         V n        R # rµ   r\  rÔ   s   &&r%   rÖ   ÚWhen.set_source_expressionsE  s   € Ø&+Ñ#ˆŒ˜žr2   c                óœ   <€ \         SV `  WW4V4      pV'       d2   VP                  e$   V P                  P                  WW4RR7      Vn        V# )NF)r  )rÉ  r?   rW  r‘  s   &&&&&& €r%   r?   ÚWhen.resolve_expressionH  sM   ø€ ô ‰GÑ& u¸5ÈXÓVˆß˜Ÿ™Ò/àŸ.™.×;Ñ;Ø E¸uð <ó ˆAŒKð ˆr2   c                ó0   € V P                   P                  .# rµ   )r»  r  rM   s   &r%   r#  ÚWhen.get_source_fieldsS  s   € à—‘×1Ñ1Ð2Ð2r2   c                ó  € VP                   P                  V 4       Tp. pVP                  V P                  4      w  rxWuR &   VP                  V P                  4      w  ršW•R&   T;'       g    V P
                  pW5,          . VOVOV
O53# r\  )rÜ  rù  rÛ  rW  r»  rt  )r    r!   r   rt  r"   Útemplate_paramsÚ
sql_paramsÚcondition_sqlÚcondition_paramsÚ
result_sqlÚresult_paramss   &&&&,      r%   r   ÚWhen.as_sqlW  sœ   € Ø�‰×/Ñ/°Ô5Ø'ˆØˆ
Ø*2×*:Ñ*:¸4¿>¹>Ó*JÑ'ˆØ'4˜Ñ$Ø$,×$4Ñ$4°T·[±[Ó$AÑ!ˆ
Ø$.˜Ñ!Ø×,Ð,˜tŸ}™}ˆØÕ)ð ,
Øð,
àð,
ð ñ,
ð 
ð 	
r2   c                óv   € . pV P                  4        F"  pVP                  VP                  4       4       K$  	  V# rµ   r'  r]  s   &  r%   r\  ÚWhen.get_group_by_colsf  s4   € àˆØ×1Ñ1Ö3ˆFØ�K‰K˜×0Ñ0Ó2Ö3ñ 4àˆr2   c                ój   € V P                   P                  ;'       d    V P                  P                  # rµ   )rW  r„  r»  rM   s   &r%   r„  ÚWhen.allowed_defaultm  s$   € à�~‰~×-Ñ-×MÐM°$·+±+×2MÑ2MÐMr2   r\  ©NNr  rµ   )r)   r*   r+   r,   rt  rq   rÀ   rÐ  rÍ  rÐ   rÖ   r?   r#  r   r\  r   r„  r.   r/   rî  rï  s   @@r%   rU  rU  %  sY   ù‡ € à3€Hà€K÷7ò"Aò<ò-ò,÷	ò3ô
òð ñNó ÷Nð Nr2   rU  zdjango.db.models.Casec                   ó”   a a€ ] tR tRt oRtRtRtRRRR/V 3R lltR	 tR
 t	R t
R tV 3R ltRR ltV 3R lt]R 4       tRtVtV ;t# )ÚCaseir  z¦
An SQL searched CASE expression:

    CASE
        WHEN n > 0
            THEN 'positive'
        WHEN n < 0
            THEN 'negative'
        ELSE 'zero'
    END
z#CASE %(cases)s ELSE %(default)s ENDrV  ÚdefaultNr   c               ó  <€ \         ;QJ d    R  V 4       F  '       d   K   RM	  RM! R  V 4       4      '       g   \        R4      h\        SV `  V4       \	        V4      V n        V P                  V4      ^ ,          V n        W@n        R# )c              3   óB   "  € T F  p\        V\        4      x € K  	  R # 5irµ   )rÙ   rU  )rç   Úcases   & r%   ré   Ú Case.__init__.<locals>.<genexpr>„  s   é € Ð<±e¨d”:˜d¤D×)Ð)³eùr  FTz.Positional arguments must all be When objects.N)	r‚  r  rÉ  rÀ   ÚlistÚcasesrÞ   r|  rZ  )r    r|  r   r‚  rZ  r  s   &$$*,€r%   rÀ   ÚCase.__init__ƒ  sd   ø€ ß‹sÑ<±eÓ<�s�sŠsÑ<±eÓ<×<Ò<ÜÐLÓMÐMÜ‰Ñ˜Ô&Ü˜%“[ˆŒ
Ø×.Ñ.¨wÓ7¸Õ:ˆŒØŽ
r2   c                ój   € R RP                  R V P                   4       4      : RV P                  : 2# )zCASE r!  c              3   ó8   "  € T F  p\        V4      x € K  	  R # 5irµ   r^  )rç   r  s   & r%   ré   ÚCase.__str__.<locals>.<genexpr>�  s   é € Ð1¡j ”c˜!—f�f£jùrb  z, ELSE )rg  r‚  r|  rM   s   &r%   rÐ  ÚCase.__str__‹  s)   � à�I‰IÑ1 d§j¢jÓ1Ö1Ø�L‹Lð
ð 	
r2   c                ó@   € R V P                   P                  : RV : R2# r_  rb  rM   s   &r%   rÍ  ÚCase.__repr__‘  rd  r2   c                ó>   € V P                   V P                  .,           # rµ   ©r‚  r|  rM   s   &r%   rÐ   ÚCase.get_source_expressions”  s   € Ø�z‰z˜TŸ\™\˜NÕ*Ð*r2   c                ó$   € VEv V n         V n        R # rµ   r‹  rÔ   s   &&r%   rÖ   ÚCase.set_source_expressions—  s   € Ø$)Ñ!ˆŒ�T–\r2   c                óT   <€ \         SV `  4       pVP                  R ,          Vn        V# r|  )rÉ  rÅ   r‚  )r    r  r  s   & €r%   rÅ   Ú	Case.copyš  s"   ø€ Ü‰G‰L‹NˆØ—'‘'˜!•*ˆŒØˆr2   c                ól  € VP                   P                  V 4       V P                  '       g   VP                  V P                  4      # / V P
                  CVCp. p. pV P                   F9  p	 VP                  V	4      w  r«TP                  T
4       TP                  T4       K;  	  VP                  V P                  4      w  rÍV'       g   WÍ3# T;'       g    V P                  pVP                  V4      VR &   WÆR&   VP                  V4       T;'       g    VP                  RV P                  4      pW6,          pV P                  e-   VP                   P!                  V P"                  4      V,          pWè3#   \         d     EK  \         d#    TP                  T	P                  4      w  rÍ  Kï  i ; i)r‚  r|  rt  )rÜ  rù  r‚  rÛ  r|  rZ  r   r   r»  r§  r[  Úcase_joinerrg  rH  rt  r  Úunification_cast_sqlr   )r    r!   r   rt  r’  r"   rn  Ú
case_partsro  r  Úcase_sqlÚcase_paramsÚdefault_sqlÚdefault_paramsr#   s   &&&&&,         r%   r   ÚCase.as_sqlŸ  s‡  € ð 	�‰×/Ñ/°Ô5Ø�z�zˆzØ×#Ñ# D§L¡LÓ1Ð1Ø9˜TŸZ™ZÐ9¨=Ð9ˆØˆ
Øˆ
Ø—J”JˆDðØ(0×(8Ñ(8¸Ó(>Ñ%�ð ×Ñ˜hÔ'Ø×Ñ˜kÖ*ñ ð +3×*:Ñ*:¸4¿<¹<Ó*HÑ'ˆKßØÐ.Ð.Ø!×5Ð5 T×%5Ñ%5ˆØ#.×#3Ñ#3°JÓ#?ˆ˜Ñ Ø%0˜	Ñ"Ø×Ñ˜.Ô)Ø×MÐM˜×2Ñ2°:¸t¿}¹}ÓMˆØÕ(ˆØ×%Ñ%Ò1Ø—.‘.×5Ñ5°d×6GÑ6GÓHÈ3ÕNˆCØˆÐøô' "ô ÛÜ ô Ø.6×.>Ñ.>¸t¿{¹{Ó.KÑ+�Ûðús   Á-E8Å8F3ÆF3ÆF3Æ2F3c                óx   <€ V P                   '       g   V P                  P                  4       # \        SV `	  4       # rµ   )r‚  r|  r\  rÉ  )r    r  s   &€r%   r\  ÚCase.get_group_by_colsÀ  s-   ø€ Ø�z�zˆzØ—<‘<×1Ñ1Ó3Ð3Ü‰wÑ(Ó*Ð*r2   c                óÎ   € V P                   P                  ;'       dI    \        ;QJ d&    R  V P                   4       F  '       d   K   R# 	  R# ! R  V P                   4       4      # )c              3   ó8   "  € T F  qP                   x € K  	  R # 5irµ   r€  )rç   Úcase_s   & r%   ré   Ú'Case.allowed_default.<locals>.<genexpr>Ç  s   é € ð 4
Ù/9 e×!Ö!«zùrb  FT)r|  r„  r‚  r‚  rM   s   &r%   r„  ÚCase.allowed_defaultÅ  s[   € à�|‰|×+Ñ+÷ 
ð 
·³ñ 4
Ø/3¯zªzó4
·´ð 	
²ð 	
°ñ 4
Ø/3¯zªzó4
ó 1
ð 	
r2   )r‚  r|  rZ  ry  )r)   r*   r+   r,   r-   rt  r’  rÀ   rÐ  rÍ  rÐ   rÖ   rÅ   r   r\  r   r„  r.   r/   rî  rï  s   @@r%   r{  r{  r  sf   ù‡ € ñ
ð 5€HØ€Kð tð ¸$÷ ò
ò<ò+ò*õô
õB+ð
 ñ
ó ÷
ð 
r2   r{  c                   óŽ   a a€ ] tR tRt oRtRtRtRtRtRV 3R llt	R t
R	 tR
 tV 3R lt]R 4       tR tRR ltR tRtVtV ;t# )ÚSubqueryiÌ  zˆ
An explicit subquery. It may contain OuterRef() references to the outer
query which will be resolved when it is applied to that query.
z(%(subquery)s)FNTc                ó”   <€ \        VR V4      P                  4       V n        RV P                  n        W0n        \
        SV `  V4       R# )r	  TN)rt   rD  r	  rü   rZ  rÉ  rÀ   )r    Úquerysetr   rZ  r  s   &&&,€r%   rÀ   ÚSubquery.__init__×  s:   ø€ ä˜X w°Ó9×?Ñ?ÓAˆŒ
Ø"ˆ�
‰
ÔØŒ
Ü‰Ñ˜Ö&r2   c                ó   € V P                   .# rµ   ©r	  rM   s   &r%   rÐ   ÚSubquery.get_source_expressionsÞ  s   € Ø—
‘
ˆ|Ðr2   c                ó"   € V^ ,          V n         R# r6  r§  rÔ   s   &&r%   rÖ   ÚSubquery.set_source_expressionsá  s   € Ø˜1•XˆŽ
r2   c                ó.   € V P                   P                  # rµ   )r	  r   rM   s   &r%   r  ÚSubquery._resolve_output_fieldä  s   € Ø�z‰z×&Ñ&Ð&r2   c                ób   <€ \         SV `  4       pVP                  P                  4       Vn        V# rµ   )rÉ  rÅ   r	  rD  )r    rD  r  s   & €r%   rÅ   ÚSubquery.copyç  s'   ø€ Ü‘‘“ˆØ—k‘k×'Ñ'Ó)ˆŒØˆr2   c                ó.   € V P                   P                  # rµ   )r	  Úexternal_aliasesrM   s   &r%   r°  ÚSubquery.external_aliasesì  s   € à�z‰z×*Ñ*Ð*r2   c                ó6   € V P                   P                  4       # rµ   )r	  Úget_external_colsrM   s   &r%   r³  ÚSubquery.get_external_colsð  s   € Ø�z‰z×+Ñ+Ó-Ð-r2   c                ó  € VP                   P                  V 4       / V P                  CVCpV P                  P	                  W4      w  rgV^R VR&   T;'       g    VP                  RV P                  4      pW5,          pW‡3# )rI   rü   rt  rJ   )rÜ  rù  rZ  r	  r   rH  rt  )	r    r!   r   rt  r"   rn  Úsubquery_sqlro  r#   s	   &&&&,    r%   r   ÚSubquery.as_sqló  s}   € Ø�‰×/Ñ/°Ô5Ø9˜TŸZ™ZÐ9¨=Ð9ˆØ#'§:¡:×#4Ñ#4°XÓ#JÑ ˆØ&2°1°RÐ&8ˆ˜
Ñ#à×MÐM˜×2Ñ2°:¸t¿}¹}ÓMˆØÕ(ˆØˆÐr2   c                ó:   € V P                   P                  V R 7      # ))Úwrapper)r	  r\  rM   s   &r%   r\  ÚSubquery.get_group_by_colsý  s   € Ø�z‰z×+Ñ+°DÐ+Ó9Ð9r2   )rZ  r	  rµ   )r)   r*   r+   r,   r-   rt  rå   r�  rü   rÀ   rÐ   rÖ   r  rÅ   r†  r°  r³  r   r\  r.   r/   rî  rï  s   @@r%   r¢  r¢  Ì  sc   ù‡ € ñð
  €HØÐØ!ÐØ€H÷'òòò'õð
 ñ+ó ð+ò.ô÷:ò :r2   r¢  c                   ón   a a€ ] tR tRt oRt]P                  ! 4       tRtV 3R lt	R t
V 3R ltRtVtV ;t# )ÚExistsi  zEXISTS(%(subquery)s)Fc                óh   <€ \         SV `  ! V3/ VB  V P                  P                  4       V n        R # rµ   )rÉ  rÀ   r	  Úexists)r    r¤  rf  r  s   &&,€r%   rÀ   ÚExists.__init__  s)   ø€ Ü‰Ò˜Ñ, VÒ,Ø—Z‘Z×&Ñ&Ó(ˆŽ
r2   c                óv   € VP                   P                  P                  '       g   R P                  V4      pW#3# rQ  )r   r÷  rK  rÌ  ry  s   &&&&r%   rx  ÚExists.select_format
  s4   € ð ×"Ñ"×+Ñ+×R×RÐRØ2×9Ñ9¸#Ó>ˆCØˆ{Ðr2   c                óÜ   <€  \         SV `  ! V.VO5/ VB #   \         dJ    TP                  P                  pTP
                  '       g   Ru # TP                  \        R4      4      u # i ; i)ú1=0F)rÃ  r(   )rÉ  r   r   r   r÷  rK  rÛ  rA   )r    r!   r¨  rf  r÷  r  s   &&*, €r%   r   ÚExists.as_sql  sh   ø€ ð	2Ü‘7’> (Ð<¨TÒ<°VÑ<Ð<øÜô 	2Ø×*Ñ*×3Ñ3ˆHØ×B×BÐBØ Ò Ø×#Ñ#¤E¨%£LÓ1Ò1ð		2ús   ƒ —2A+Á
A+ÁA+Á*A+r§  )r)   r*   r+   r,   rt  r   r  r   r�  rÀ   rx  r   r.   r/   rî  rï  s   @@r%   r¼  r¼    s2   ù‡ € Ø%€HØ×&Ò&Ó(€LØ"Ðõ)ò÷2õ 2r2   r¼  zdjango.db.models.OrderByc                   ót   a € ] tR tRt o RtRtRtRtRR ltR t	R t
R	 tRR
 ltR tR tR tR tR tRtV tR# )rd  i  z%(expression)s %(ordering)sFTNc                óÔ   € V'       d   V'       d   \        R 4      hVRJ g   VRJ d   \        R4      hW0n        W@n        W n        \	        VR4      '       g   \        R4      hWn        R# )z1nulls_first and nulls_last are mutually exclusiveFz7nulls_first and nulls_last values must be True or None.r?   z%expression must be an expression typeN)r  Únulls_firstÚ
nulls_lastrl  r@   r)  )r    r)  rl  rÇ  rÈ  s   &&&&&r%   rÀ   ÚOrderBy.__init__#  s]   € ßŸ:ÜÐPÓQÐQØ˜%Ó :°Ó#6ÜÐVÓWÐWØ&ÔØ$ŒØ$ŒÜ�zÐ#7×8Ò8ÜÐDÓEÐEØ$Žr2   c                óx   € R P                  V P                  P                  V P                  V P                  4      # )z{}({}, descending={}))rÌ  r  r)   r)  rl  rM   s   &r%   rÍ  ÚOrderBy.__repr__/  s.   € Ø&×-Ñ-Ø�N‰N×#Ñ# T§_¡_°d·o±oó
ð 	
r2   c                ó"   € V^ ,          V n         R# r6  rÅ  rÔ   s   &&r%   rÖ   ÚOrderBy.set_source_expressions4  r8  r2   c                ó   € V P                   .# rµ   rÅ  rM   s   &r%   rÐ   ÚOrderBy.get_source_expressions7  rÇ  r2   c                ób  € \        V P                  \        4      '       d‘   . p. pV P                  P                  4        F[  pV P	                  4       pVP
                  ! V.4       VP                  V4      w  ršVP                  V	4       VP                  V
4       K]  	  R P                  V4      V3# T;'       g    V P                  pVP                  P                  '       d9   V P                  '       d   RV,          pM¯V P                  '       d
   RV,          pM“V P                  '       d9   V P                  '       d   VP                  P                   '       g   RV,          pMIV P                  '       d8   V P                  '       g   VP                  P                   '       g
   RV,          pVP"                  P%                  V 4       VP                  V P                  4      w  r¶RTRV P                  '       d   RMR/VCpWcP'                  R	4      ,          pW<,          P)                  4       V3# )
r!  z%s NULLS LASTz%s NULLS FIRSTz%%(expression)s IS NULL, %sz%%(expression)s IS NOT NULL, %sr)  ÚorderingÚDESCÚASCz%(expression)s)rÙ   r)  r  rí  rÅ   rÖ   rÛ  r§  r[  rg  rt  r÷  Ú supports_order_by_nulls_modifierrÈ  rÇ  rl  Úorder_by_nulls_firstrÜ  rù  ÚcountÚrstrip)r    r!   r   rt  r"   rv  r$   r4  rÅ   r#   Ú
col_paramsÚexpression_sqlÚplaceholderss   &&&&,        r%   r   ÚOrderBy.as_sql:  s´  € Ü�d—o‘o¤x×0Ò0ØˆIØˆFØ—‘×/Ñ/Ö1�Ø—y‘y“{�Ø×+Ò+¨S¨EÔ2Ø"*×"2Ñ"2°4Ó"8‘�Ø× Ñ  Ô%Ø—‘˜jÖ)ñ 2ð —9‘9˜YÓ'¨Ð/Ð/Ø×,Ð,˜tŸ}™}ˆØ×Ñ×?×?Ð?Ø��ˆØ*¨XÕ5‘Ø×!×!Ð!Ø+¨hÕ6�øà��ˆØ——� J×$7Ñ$7×$L×$LÐ$Là8¸8ÕC‘Ø×!×!Ð!Ø—O—O�O¨
×(;Ñ(;×(P×(PÐ(Pà<¸xÕG�Ø�‰×/Ñ/°Ô5Ø!)×!1Ñ!1°$·/±/Ó!BÑˆà˜.Ø $§/§/ /™°uð
ð ð
ˆð
 	—.‘.Ð!1Ó2Õ2ˆØÕ'×/Ñ/Ó1°6Ð9Ð9r2   c                óD  € VP                   P                  '       gu   VP                  P                  V P                  4      '       dJ   V P                  4       p\        \        V P                  R R7      RR7      Vn        VP                  ! W4      # V P                  W4      # )T)rX  F)r|  )	r÷  rK  rÜ  rL  r)  rÅ   r{  rU  r   )r    r!   r   rÅ   s   &&& r%   Ú	as_oracleÚOrderBy.as_oracle^  s~   € ð ×#Ñ#×J×JÐJØ—‘×OÑOØ—‘÷ò ð —9‘9“;ˆDÜ"Ü�T—_‘_¨4Ô0ØôˆDŒOð —;’;˜xÓ4Ð4Ø�{‰{˜8Ó0Ð0r2   c                óv   € . pV P                  4        F"  pVP                  VP                  4       4       K$  	  V# rµ   r'  r]  s   &  r%   r\  ÚOrderBy.get_group_by_colso  s4   € ØˆØ×1Ñ1Ö3ˆFØ�K‰K˜×0Ñ0Ó2Ö3ñ 4àˆr2   c                ó¶   € V P                   '       * V n         V P                  '       d   R V n        RV n        V # V P                  '       d   R V n        RV n        V # ©TN)rl  rÇ  rÈ  rM   s   &r%   rq  ÚOrderBy.reverse_orderingu  sQ   € Ø"Ÿo™oÔ-ˆŒØ××ÐØ"ˆDŒOØ#ˆDÔð ˆð �_�_ˆ_Ø#ˆDÔØ"ˆDŒOØˆr2   c                ó   € R V n         R# )FNr.  rM   s   &r%   rg  ÚOrderBy.asc  s	   € ØˆŽr2   c                ó   € R V n         R# râ  r.  rM   s   &r%   rm  ÚOrderBy.desc‚  s	   € ØˆŽr2   )rl  r)  rÇ  rÈ  )FNNrµ   )r)   r*   r+   r,   rt  rq   r|  r  rÀ   rÍ  rÖ   rÐ   r   rÝ  r\  rq  rg  rm  r.   r/   r0   s   @r%   rd  rd    sS   ø‡ € à,€HØ€KØ',Ð$Ø#'Ð ô
%ò
ò
#ò!ô":òH1ò"òò ÷ð r2   rd  c                   ó|   a a€ ] tR tRt oRtRtRtRV 3R lltR tR t	R t
RR	 ltV 3R
 ltR tR tR tRtVtV ;t# )ÚWindowi†  z %(expression)s OVER (%(window)s)FTc                óæ  <€ W n         W0n        W@n        \        VR R4      '       g'   \	        RVP
                  P                  ,          4      hV P                   eQ   \        V P                   \        \        34      '       g   V P                   3V n         \        V P                   !  V n         V P                  eŒ   \        V P                  \        \        34      '       d   \        V P                  !  V n        ML\        V P                  \        \        34      '       d   \        V P                  4      V n        M\	        R4      h\        SV `=  VR7       V P!                  V4      ^ ,          V n        R# )rƒ  Fz3Expression '%s' isn't compatible with OVER clauses.NzhWindow.order_by must be either a string reference to a field, an expression, or a list or tuple of them.r¾   )Úpartition_byÚorder_byÚframert   r  r  r)   rÙ   r–  r�  r  r+  r¼   rÚ   rÉ  rÀ   rÞ   Úsource_expression)r    r)  rë  rì  rí  r   r  s   &&&&&&€r%   rÀ   ÚWindow.__init__Ž  s$  ø€ ð )ÔØ ŒØŒ
ä�zÐ#6¸×>Ò>ÜØEØ×&Ñ&×/Ñ/õ0óð ð
 ×ÑÒ(Ü˜d×/Ñ/´%¼°×?Ò?Ø%)×%6Ñ%6Ð$8�Ô!Ü .°×0AÑ0AÑ BˆDÔà�=‰=Ò$Ü˜$Ÿ-™-¬$´¨×7Ò7Ü +¨T¯]©]Ñ ;�•Ü˜DŸM™M¬N¼CÐ+@×AÒAÜ +¨D¯M©MÓ :�•ä ðHóð ô 	‰Ñ lÐÔ3Ø!%×!8Ñ!8¸Ó!DÀQÕ!GˆÖr2   c                ó.   € V P                   P                  # rµ   )rî  r   rM   s   &r%   r  ÚWindow._resolve_output_field²  s   € Ø×%Ñ%×2Ñ2Ð2r2   c                ó^   € V P                   V P                  V P                  V P                  .# rµ   ©rî  rë  rì  rí  rM   s   &r%   rÐ   ÚWindow.get_source_expressionsµ  s%   € Ø×&Ñ&¨×(9Ñ(9¸4¿=¹=È$Ï*É*ÐUÐUr2   c                ó<   € Vw  V n         V n        V n        V n        R # rµ   ró  rÔ   s   &&r%   rÖ   ÚWindow.set_source_expressions¸  s   € ØOTÑLˆÔ Ô 1°4´=À$Æ*r2   c                ó6  € VP                   P                  V 4       VP                  P                  '       g   \	        R 4      hVP                  V P                  4      w  rE. RrvV P                  eD   V P                  P                  VVRR7      w  r‰VP                  V4       V\        V	4      ,          pV P                  eA   VP                  V P                  4      w  r«VP                  V
4       V\        V4      ,          pV P                  '       dA   VP                  V P                  4      w  rÍVP                  V4       V\        V4      ,          pT;'       g    V P                  pVRVRRP                  V4      P                  4       /,          . VOVO53# )z1This backend does not support window expressions.zPARTITION BY %(expressions)s)r!   r   rt  r)  ÚwindowrV  r(   )rÜ  rù  r÷  Úsupports_over_clauser   rÛ  rî  rë  r   r§  r–  rì  rí  rt  rg  Ústrip)r    r!   r   rt  Úexpr_sqlr$   Ú
window_sqlÚwindow_paramsÚsql_exprro  Ú	order_sqlÚorder_paramsÚ	frame_sqlÚframe_paramss   &&&&          r%   r   ÚWindow.as_sql»  sl  € Ø�‰×/Ñ/°Ô5Ø×"Ñ"×7×7Ð7Ü#Ð$WÓXÐXØ#×+Ñ+¨D×,BÑ,BÓCÑˆØ$&¨�Mà×ÑÒ(Ø#'×#4Ñ#4×#;Ñ#;Ø!Ø%Ø7ð $<ó $Ñ ˆHð
 ×Ñ˜hÔ'ØœU :Ó.Õ.ˆMà�=‰=Ò$Ø&.×&6Ñ&6°t·}±}Ó&EÑ#ˆIØ×Ñ˜iÔ(ØœU <Ó0Õ0ˆMà�:�:ˆ:Ø&.×&6Ñ&6°t·z±zÓ&BÑ#ˆIØ×Ñ˜iÔ(ØœU <Ó0Õ0ˆMà×,Ð,˜tŸ}™}ˆð ˜ h°¸#¿(¹(À:Ó:N×:TÑ:TÓ:VÐWÕWØ%ˆfÐ%�}Ñ%ð
ð 	
r2   c                óH  <€ \        V P                  \        P                  4      '       dh   V P	                  4       pVP
                  ! 4       p\        P                  ! 4       V^ ,          n        VP                  ! V4       \        \        V`+  W4      # V P                  W4      # )r   )rÙ   r   r   r   rÅ   rÐ   r,  rÖ   rÉ  ré  r&   r   )r    r!   r   rÅ   r  r  s   &&&  €r%   r&   ÚWindow.as_sqliteÜ  s}   ø€ Ü�d×'Ñ'¬×)<Ñ)<×=Ò=à—9‘9“;ˆDØ!%×!<Ò!<Ó!>ÐÜ17×1BÒ1BÓ1DÐ˜qÕ!Ô.Ø×'Ò'Ð(:Ô;Üœ Ñ0°ÓFÐFØ�{‰{˜8Ó0Ð0r2   c           	     ó   € R P                  \        V P                  4      V P                  '       d   R\        V P                  4      ,           MR\        V P                  ;'       g    R4      \        V P
                  ;'       g    R4      4      # )z{} OVER ({}{}{})zPARTITION BY r"  )rÌ  rÚ   rî  rë  rì  rí  rM   s   &r%   rÐ  ÚWindow.__str__æ  sk   € Ø!×(Ñ(Ü�×&Ñ&Ó'Ø8<×8I×8IÐ8IˆOœc $×"3Ñ"3Ó4Ö4ÈrÜ�—‘×#Ð# Ó$Ü�—
‘
× Ð ˜bÓ!ó	
ð 	
r2   c                ó@   € R V P                   P                  : RV : R2# r_  rb  rM   s   &r%   rÍ  ÚWindow.__repr__î  rd  r2   c                óî   € . pV P                   '       d*   VP                  V P                   P                  4       4       V P                  e*   VP                  V P                  P                  4       4       V# rµ   )rë  r[  r\  rì  )r    r(  s   & r%   r\  ÚWindow.get_group_by_colsñ  s[   € ØˆØ××ÐØ× Ñ  ×!2Ñ!2×!DÑ!DÓ!FÔGØ�=‰=Ò$Ø× Ñ  §¡×!@Ñ!@Ó!BÔCØÐr2   )rí  rì  rë  rî  )NNNNrµ   )r)   r*   r+   r,   rt  rå   rñ   rÀ   r  rÐ   rÖ   r   r&   rÐ  rÍ  r\  r.   r/   rî  rï  s   @@r%   ré  ré  †  sO   ù‡ € Ø1€Hð ÐØÐ÷"HòH3òVòUô
õB1ò
ò<÷ò r2   ré  c                   ó6   a € ] tR tRt o RtRtRtRtR tRt	V t
R# )	ÚWindowFrameExclusioniú  zCURRENT ROWÚGROUPÚTIESz	NO OTHERSc                óL   € V P                   P                   R V P                   2# rÛ  )r  r+   Ú_name_rM   s   &r%   rÍ  ÚWindowFrameExclusion.__repr__   s"   € Ø—.‘.×-Ñ-Ð.¨a°·±¨}Ð=Ð=r2   r(   N)r)   r*   r+   r,   ÚCURRENT_ROWr  r  Ú	NO_OTHERSrÍ  r.   r/   r0   s   @r%   r  r  ú  s#   ø‡ € Ø€KØ€EØ€DØ€I÷>ð >r2   r  c                   ób   a € ] tR tRt o RtRtRR ltR tR tR t	R	 t
R
 tR tR tR tRtV tR# )ÚWindowFramei  a>  
Model the frame clause in window expressions. There are two types of frame
clauses which are subclasses, however, all processing and validation (by no
means intended to be complete) is done here. Thus, providing an end for a
frame is optional (the default is UNBOUNDED FOLLOWING, which is the last
row in the frame).
z7%(frame_type)s BETWEEN %(start)s AND %(end)s%(exclude)sNc                óÎ   € \        V4      V n        \        V4      V n        \        V\        \
        34      '       g#   \        V P                  P                   R 24      hW0n	        R# )z3.exclusion must be a WindowFrameExclusion instance.N)
rA   rE  ÚendrÙ   r	   r  r  r  r+   Ú	exclusion)r    rE  r  r  s   &&&&r%   rÀ   ÚWindowFrame.__init__  sY   € Ü˜5“\ˆŒ
Ü˜“:ˆŒÜ˜)¤hÔ0DÐ%E×FÒFÜØ—>‘>×.Ñ.Ð/ð 01ð 1óð ð #Žr2   c                ó$   € Vw  V n         V n        R # rµ   ©rE  r  rÔ   s   &&r%   rÖ   Ú"WindowFrame.set_source_expressions  s   € Ø$ÑˆŒ
�D–Hr2   c                ó2   € V P                   V P                  .# rµ   r  rM   s   &r%   rÐ   Ú"WindowFrame.get_source_expressions  s   € Ø—
‘
˜DŸH™HÐ%Ð%r2   c                óT   € V P                   f   R# RV P                   P                   2# )Nr"  z	 EXCLUDE )r  r(  rM   s   &r%   Úget_exclusionÚWindowFrame.get_exclusion  s'   € Ø�>‰>Ò!ÙØ˜4Ÿ>™>×/Ñ/Ð0Ð1Ð1r2   c           
     óŒ  € VP                   P                  V 4       V P                  W P                  P                  V P
                  P                  4      w  r4V P                  '       d(   VP                  P                  '       g   \        R 4      hV P                  RV P                  RVRVRV P                  4       /,          . 3# )z6This backend does not support window frame exclusions.Ú
frame_typerE  r  Úexclude)rÜ  rù  Úwindow_frame_start_endrE  r(  r  r  r÷  Úsupports_frame_exclusionr   rt  r$  r!  )r    r!   r   rE  r  s   &&&  r%   r   ÚWindowFrame.as_sql$  s¬   € Ø�‰×/Ñ/°Ô5Ø×0Ñ0ØŸ
™
×(Ñ(¨$¯(©(¯.©.ó
‰
ˆð �>�>ˆ> *×"5Ñ"5×"N×"NÐ"NÜ#ØHóð ð �M‰Mà˜dŸo™oØ˜Ø�sØ˜4×-Ñ-Ó/ð	õð ð	
ð 		
r2   c                ó@   € R V P                   P                  : RV : R2# r_  rb  rM   s   &r%   rÍ  ÚWindowFrame.__repr__8  rd  r2   c                ó   € . # rµ   r(   rM   s   &r%   r\  ÚWindowFrame.get_group_by_cols;  rÒ   r2   c           
     ó„  € V P                   P                  e]   V P                   P                  ^ 8  dB   R\        V P                   P                  4      \        P                  P
                  3,          pMÓV P                   P                  e7   V P                   P                  ^ 8X  d   \        P                  P                  pM…V P                   P                  eT   V P                   P                  ^ 8”  d9   RV P                   P                  \        P                  P                  3,          pM\        P                  P                  pV P                  P                  eT   V P                  P                  ^ 8”  d9   RV P                  P                  \        P                  P                  3,          pMÜV P                  P                  e7   V P                  P                  ^ 8X  d   \        P                  P                  pMŽV P                  P                  e]   V P                  P                  ^ 8  dB   R\        V P                  P                  4      \        P                  P
                  3,          pM\        P                  P                  pV P                  RV P                  RVRVRV P                  4       /,          # )Nz%d %sr$  rE  r  r%  )rE  r(  Úabsr   rÜ  Ú	PRECEDINGr  Ú	FOLLOWINGÚUNBOUNDED_PRECEDINGr  ÚUNBOUNDED_FOLLOWINGrt  r$  r!  )r    rE  r  s   &  r%   rÐ  ÚWindowFrame.__str__>  sÁ  € Ø�:‰:×ÑÒ'¨D¯J©J×,<Ñ,<¸qÔ,@Øœs 4§:¡:×#3Ñ#3Ó4´j·n±n×6NÑ6NÐOÕO‰EØ�Z‰Z×ÑÒ)¨d¯j©j×.>Ñ.>À!Ô.CÜ—N‘N×.Ñ.‰EØ�Z‰Z×ÑÒ)¨d¯j©j×.>Ñ.>ÀÔ.BØ˜tŸz™z×/Ñ/´·±×1IÑ1IÐJÕJ‰Eä—N‘N×6Ñ6ˆEà�8‰8�>‰>Ò%¨$¯(©(¯.©.¸1Ô*<Ø˜TŸX™XŸ^™^¬Z¯^©^×-EÑ-EÐFÕF‰CØ�X‰X�^‰^Ò'¨D¯H©H¯N©N¸aÔ,?Ü—.‘.×,Ñ,‰CØ�X‰X�^‰^Ò'¨D¯H©H¯N©N¸QÔ,>ØœS §¡§¡Ó0´*·.±.×2JÑ2JÐKÕK‰Cä—.‘.×4Ñ4ˆCØ�}‰}Ø˜$Ÿ/™/Ø�UØ�3Ø�t×)Ñ)Ó+ð	 
õ 
ð 	
r2   c                ó   € \        R 4      h)z3Subclasses must implement window_frame_start_end().rª   ©r    r   rE  r  s   &&&&r%   r&  Ú"WindowFrame.window_frame_start_endW  s   € Ü!Ð"WÓXÐXr2   )r  r  rE  r„  )r)   r*   r+   r,   r-   rt  rÀ   rÖ   rÐ   r!  r   rÍ  r\  rÐ  r&  r.   r/   r0   s   @r%   r  r    sF   ø‡ € ñð I€Hô#ò%ò&ò2ò

ò(<òò
÷2Yð Yr2   r  c                   ó*   a € ] tR tRt o RtR tRtV tR# )ÚRowRangei[  ÚROWSc                ó8   € VP                   P                  W#4      # rµ   )rÜ  Úwindow_frame_rows_start_endr5  s   &&&&r%   r&  ÚRowRange.window_frame_start_end^  s   € Ø�~‰~×9Ñ9¸%ÓEÐEr2   r(   N©r)   r*   r+   r,   r$  r&  r.   r/   r0   s   @r%   r8  r8  [  s   ø‡ € Ø€J÷Fð Fr2   r8  c                   ó*   a € ] tR tRt o RtR tRtV tR# )Ú
ValueRangeib  ÚRANGEc                ó8   € VP                   P                  W#4      # rµ   )rÜ  Úwindow_frame_range_start_endr5  s   &&&&r%   r&  Ú!ValueRange.window_frame_start_ende  s   € Ø�~‰~×:Ñ:¸5ÓFÐFr2   r(   Nr=  r0   s   @r%   r?  r?  b  s   ø‡ € Ø€J÷Gð Gr2   r?  )irÅ   r˜  r²  Úcollectionsr   Údecimalr   Úenumr   Ú	itertoolsr   Útypesr	   Úuuidr
   Údjango.core.exceptionsr   r   r   Ú	django.dbr   r   r   Údjango.db.modelsr   Údjango.db.models.constantsr   Údjango.db.models.query_utilsr   Údjango.utils.deconstructr   Údjango.utils.functionalr   r   Údjango.utils.hashabler   Údjango.utils.inspectr   r   r4   rº   r¼   r‰  rS   rL   rb   rg   rl   ÚPositiveIntegerFieldrZ   r1  r,  r   rz   r‘   r   rƒ   rŠ   r�  Úfrom_iterablerã  râ  rå  rä  Ú_connector_combinationsr¸  r¼  Údr™  rD   Úfield_typesr¹  rº  r»  r³  rÅ  rB   ræ  rç  rÛ   r.  r=  r  rS  rA   r¤  r¹  r¿  rÒ  r  r  r  r+  r2  r¶   rU  r{  r¢  r¼  rd  ré  r  r  r8  r?  )rD   s   0r%   Ú<module>rX     s1  ðÛ Û Û Ý #Ý Ý Ý Ý Ý ç LÑ Lß BÑ BÝ #Ý 1Ý *Ý 4ß BÝ /Ý *÷ñ ÷ A'ñ A'ôH	˜Zô 	÷Tñ Tðn
 ô*#� ó *#ó ð*#ðB �N‰NØ�N‰NØ�N‰NØ�N‰NØ�N‰Nñ
óñ
ˆIð 	à×+Ñ+Ø×+Ñ+Ø×+Ñ+ðð
ò 	
ñ
ñð0 �N‰NØ�N‰NØ�N‰Nð �N‰NØ�N‰NØ�N‰Nñ	
óñ	
ˆIð 	Ø× Ñ  &×"5Ñ"5°v×7JÑ7JÐKØ×Ñ × 1Ñ 1°6×3DÑ3DÐEØ× Ñ  &×"5Ñ"5°v×7JÑ7JÐKð
ò 	
ñ
	
ñð4 �N‰NØ�N‰NØ�N‰NØ�N‰NØ�N‰Nñ
óñ
ˆIð 	Ø× Ñ  &×"5Ñ"5°v×7JÑ7JÐKØ× Ñ  &×"5Ñ"5°v×7JÑ7JÐKØ× Ñ  &×"3Ñ"3°V×5FÑ5FÐGØ×Ñ × 3Ñ 3°V×5FÑ5FÐGð	
ò 	
ñ
ñð* ×ÑØ×ÑØ×#Ñ#Ø×$Ñ$Ø×Ññ
ó	ñ
ˆIð 	Ø× Ñ  &×"5Ñ"5°v×7JÑ7JÐKð
ò 	
ñ
ñ	ð2 �N‰NØ�N‰NØ�N‰NØ�N‰NØ�N‰NØ�N‰Nñ
óñ
ˆIð 	‘4Ø×Ññ  ð ×'Ñ'Ø×'Ñ'Ø×%Ñ%ñ#ó ó ó	
ò 		
ñ
ñð, 	�‰à×Ñ˜v×3Ñ3°V×5IÑ5IÐJØ×!Ñ! 6×#7Ñ#7¸×9MÑ9MÐNØ×!Ñ! 6×#3Ñ#3°V×5IÑ5IÐJØ×!Ñ! 6×#7Ñ#7¸×9MÑ9MÐNà×!Ñ! 6×#7Ñ#7¸×9MÑ9MÐNà×Ñ˜v×3Ñ3°V×5EÑ5EÐFØ×!Ñ! 6×#3Ñ#3°V×5EÑ5EÐFð
ðð 	�‰à×Ñ˜v×3Ñ3°V×5IÑ5IÐJØ×!Ñ! 6×#7Ñ#7¸×9MÑ9MÐNØ×Ñ˜v×/Ñ/°×1EÑ1EÐFØ×Ñ˜v×3Ñ3°V×5IÑ5IÐJØ×!Ñ! 6×#3Ñ#3°V×5IÑ5IÐJØ×!Ñ! 6×#7Ñ#7¸×9MÑ9MÐNà×!Ñ! 6×#7Ñ#7¸×9MÑ9MÐNà×Ñ˜v×3Ñ3°V×5EÑ5EÐFØ×Ñ˜v×/Ñ/°×1EÑ1EÐFð
ððOwÐ ñr % TÓ*Ð ò	Aó 
!€AØ"#§'¡'¦)Ñˆ	�;Û +ÑˆC��fÙ& s¨I°s¸FÖCó !,ó #,ñ 
!ð ×Ò˜SÔ!ñ!ó "ð!ôTEÐ+¨Zô TEôn0Ð+ô 0ôf
Ð,ô 
ñ Ð*Ô+ô=ˆ
ó =ó ,ð=ô@"�qô "ôJ
ˆqô 
ô6UˆQô 6Uñr Ð-Ô.ôZYÐ˜zó ZYó /ðZYñz Ð.Ô/ôMÐ 
ó Mó 0ðMô` 
ˆZô  
ôFˆ:ô ô$�jô $ôN$6ˆ*ô $6ôN6ˆzô 6ôr&ˆ*ô &ôR�Tô ô80�.ô 0ñ  Ð:Ô;ô!/Ð*¨Jó !/ó <ð!/ôH0Ð)ô 0ñf Ð-Ô.ôINˆ:ó INó /ðINñX Ð-Ô.ôV
Ð˜zó V
ó /ðV
ôr2:ˆ~˜zô 2:ôj2ˆXô 2ñ6 Ð0Ô1ôfˆjó fó 2ðfôRqÐ ô qôh>˜4ô >ôTY�*ô TYônFˆ{ô FôG�ö GùòI1ùò"ùò$ùò ùòs!   Ã&._ÅA2_ÈB_Ë._#
ÍA	_(