Ë
    ?çi·>  ã                   ó  — d dl Z d dlZd dlmZ d dlmZmZmZmZm	Z	m
Z
mZmZmZmZ d dlmZ ddlmZ erddlmZ 	 d dlmZ d d	lmZ d d
lmZ  G d„ de«      Zy# e$ r)  ede j:                  ¬«        e j<                  d«       Y Œ9w xY w)é    N)Úzip_longest)
ÚTYPE_CHECKINGÚAnyÚCallableÚDictÚ	GeneratorÚListÚOptionalÚSetÚTupleÚUnion)ÚTerminalNodeé   )ÚInterpolationResolutionError)ÚNode)ÚOmegaConfGrammarLexer)ÚOmegaConfGrammarParser)ÚOmegaConfGrammarParserVisitorzYError importing OmegaConf's generated parsers, run `python setup.py antlr` to regenerate.)Úfilec            
       ó„  ‡ — e Zd Zdeeeee      ged   f   dedef   deee      de	eef   fˆ fd„Z
dee   d	ed
ee   fd„Zd
ee   fd„Zdej                  d
efd„Zdej"                  d
efd„Zdej&                  d
efd„Zdej*                  d
e	eef   fd„Zdej.                  d
efd„Zdej2                  d
efd„Zdej6                  d
ed   fd„Zdej:                  d
efd„Zdej>                  d
e eef   fd„Z!dejD                  d
ee   fd„Z#dejH                  d
efd„Z%dejL                  d
efd„Z'dejP                  d
efd„Z)dejT                  d
e+eddf   fd„Z,dejZ                  d
efd„Z.dej^                  d
efd„Z0de1ejH                  ej&                  f   d
efd„Z2d ee1e3ej2                  f      d
efd!„Z4ˆ xZ5S )"ÚGrammarVisitorÚnode_interpolation_callbackr   Úresolver_interpolation_callback.ÚmemoÚkwc                 óN   •— t        ‰| �  di |¤Ž || _        || _        || _        y)añ  
        Constructor.

        :param node_interpolation_callback: Callback function that is called when
            needing to resolve a node interpolation. This function should take a single
            string input which is the key's dot path (ex: `"foo.bar"`).

        :param resolver_interpolation_callback: Callback function that is called when
            needing to resolve a resolver interpolation. This function should accept
            three keyword arguments: `name` (str, the name of the resolver),
            `args` (tuple, the inputs to the resolver), and `args_str` (tuple,
            the string representation of the inputs to the resolver).

        :param kw: Additional keyword arguments to be forwarded to parent class.
        N© )ÚsuperÚ__init__r   r   r   )Úselfr   r   r   r   Ú	__class__s        €ún/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/omegaconf/grammar_visitor.pyr   zGrammarVisitor.__init__(   s,   ø€ ô2 	‰ÑÑ˜2ÒØ+FˆÔ(Ø/NˆÔ,Øˆ�	ó    Ú	aggregateÚ
nextResultÚreturnc                 ó   — t         ‚©N©ÚNotImplementedError)r    r$   r%   s      r"   ÚaggregateResultzGrammarVisitor.aggregateResultF   s   € Ü!Ð!r#   c                 ó   — t         ‚r(   r)   )r    s    r"   ÚdefaultResultzGrammarVisitor.defaultResultI   s   € ä!Ð!r#   Úctxc           
      óì  — ddl m} |j                  «       dk(  sJ ‚|j                  d«      }t	        |t
        j                  «      rc || j                  |«      «      }t	        |t        «      s:t        d|› dt        |«      › d|j                  d«      j                  «       › �«      ‚|S t	        |t        «      r$t	        |j                  j                  t        «      sJ ‚|j                  j                  S )Nr   ©Ú
_get_valuer   zrThe following interpolation is used to denote a config key and thus should return a string, but instead returned `z` of type `z`: )Ú_utilsr1   ÚgetChildCountÚgetChildÚ
isinstancer   ÚInterpolationContextÚvisitInterpolationÚstrr   ÚtypeÚgetTextr   ÚsymbolÚtext)r    r.   r1   ÚchildÚress        r"   ÚvisitConfigKeyzGrammarVisitor.visitConfigKeyM   sã   € Ý&ð × Ñ Ó" aÒ'Ð'Ð'Ø—‘˜Q“ˆÜ�eÔ3×HÑHÔIÙ˜T×4Ñ4°UÓ;Ó<ˆCÜ˜c¤3Ô'Ü2ðJØJMÈð OÜ! #›Y˜K s¨3¯<©<¸«?×+BÑ+BÓ+DÐ*EðGóð ð
 ˆJä˜e¤\Ô2´zØ—‘×!Ñ!¤3ô8ð ð ð —<‘<×$Ñ$Ð$r#   c                 ól   — |j                  «       dk(  sJ ‚| j                  |j                  d«      «      S ©Né   r   ©r3   Úvisitr4   ©r    r.   s     r"   ÚvisitConfigValuezGrammarVisitor.visitConfigValueb   ó0   € à× Ñ Ó" aÒ'Ð'Ð'Ø�z‰z˜#Ÿ,™, q›/Ó*Ð*r#   c                 ó$   — | j                  |«      S r(   ©Ú_createPrimitiverE   s     r"   ÚvisitDictKeyzGrammarVisitor.visitDictKeyg   ó   € Ø×$Ñ$ SÓ)Ð)r#   c                 ó’   ‡ ‡— ‰j                  «       dk\  sJ ‚t        ˆˆ fd„t        d‰j                  «       dz
  d«      D «       «      S )NrB   c              3   ó^   •K  — | ]$  }‰j                  ‰j                  |«      «      –— Œ& y ­wr(   )ÚvisitDictKeyValuePairr4   )Ú.0Úir.   r    s     €€r"   Ú	<genexpr>z4GrammarVisitor.visitDictContainer.<locals>.<genexpr>o   s,   øè ø€ ð 
á9�ð ×&Ñ& s§|¡|°A£×7Ù9ùs   ƒ*-r   )r3   ÚdictÚrangerE   s   ``r"   ÚvisitDictContainerz!GrammarVisitor.visitDictContainerj   sM   ù€ ð × Ñ Ó" aÒ'Ð'Ð'Üô 
ä˜1˜c×/Ñ/Ó1°AÑ5°qÔ9ó
ó 
ð 	
r#   c                 ól   — |j                  «       dk(  sJ ‚| j                  |j                  d«      «      S ©Nr   r   rC   rE   s     r"   ÚvisitElementzGrammarVisitor.visitElementt   rG   r#   c                 ól   — |j                  «       dk(  sJ ‚| j                  |j                  d«      «      S rW   rC   rE   s     r"   r7   z!GrammarVisitor.visitInterpolationy   s2   € ð × Ñ Ó" aÒ'Ð'Ð'Ø�z‰z˜#Ÿ,™, q›/Ó*Ð*r#   c                 óp  — |j                  «       dk\  sJ ‚g }|j                  «       D ]à  }t        |t        «      r’|j                  }|j
                  t        j                  t        j                  t        j                  fv r|j                  |j                  «       Œv|j
                  t        j                  t        j                  fv rŒ£J ‚t        |t        j                  «      sJ ‚|j                  | j!                  |«      «       Œâ dj#                  |«      }| j%                  || j&                  «      S )Né   Ú )r3   ÚgetChildrenr5   r   r;   r9   r   ÚDOTÚBRACKET_OPENÚBRACKET_CLOSEÚappendr<   Ú
INTER_OPENÚINTER_CLOSEr   ÚConfigKeyContextr?   Újoinr   r   )r    r.   Úinter_key_tokensr=   ÚsÚ	inter_keys         r"   ÚvisitInterpolationNodez%GrammarVisitor.visitInterpolationNode   s  € ð × Ñ Ó" aÒ'Ð'Ð'àÐØ—_‘_Ö&ˆEÜ˜%¤Ô.Ø—L‘L�Ø—6‘6Ü)×-Ñ-Ü)×6Ñ6Ü)×7Ñ7ðñ ð
 %×+Ñ+¨A¯F©FÕ3àŸ6™6Ü-×8Ñ8Ü-×9Ñ9ð&ò ð ð ô
 " %Ô)?×)PÑ)PÔQÐQÐQØ ×'Ñ'¨×(;Ñ(;¸EÓ(BÕCð! 'ð$ —G‘GÐ,Ó-ˆ	Ø×/Ñ/°	¸4¿9¹9ÓEÐEr#   c                 ó  — d|j                  «       cxk  rdk  sJ ‚ J ‚| j                  |j                  d«      «      }|j                  d«      }g }g }t        |t        «      r)|j
                  j                  t        j                  k(  sYJ ‚t        |t        j                  «      sJ ‚| j                  |«      D ]'  \  }}|j                  |«       |j                  |«       Œ) | j                  |t        |«      t        |«      ¬«      S )Né   é   r   r[   )ÚnameÚargsÚargs_str)r3   rD   r4   r5   r   r;   r9   r   ÚBRACE_CLOSEr   ÚSequenceContextÚvisitSequencera   r   Útuple)r    r.   Úresolver_nameÚ	maybe_seqrn   ro   ÚvalÚtxts           r"   ÚvisitInterpolationResolverz)GrammarVisitor.visitInterpolationResolver    sñ   € ð
 �C×%Ñ%Ó'Ô,¨1Ò,Ð,Ñ,Ð,Ð,àŸ
™
 3§<¡<°£?Ó3ˆØ—L‘L “Oˆ	ØˆØˆÜ�i¤Ô.Ø×#Ñ#×(Ñ(Ô,A×,MÑ,MÒMÐMÐMä˜iÔ)?×)OÑ)OÔPÐPÐPØ ×.Ñ.¨yÖ9‘��SØ—‘˜CÔ Ø—‘ Õ$ð :ð ×3Ñ3ØÜ�t“Ü˜8“_ð 4ó 
ð 	
r#   c                 ó`  — ddl m} |j                  «       dk(  sJ ‚| j                  |j	                  d«      «      }|j	                  d«      }t        |t        «      r'|j                  j                  t        j                  k(  sJ ‚ || j                  |j	                  d«      «      «      }||fS )Nr   r0   r[   r   rB   )r2   r1   r3   rD   r4   r5   r   r;   r9   r   ÚCOLONrX   )r    r.   r1   ÚkeyÚcolonÚvalues         r"   rO   z$GrammarVisitor.visitDictKeyValuePair¹   s˜   € õ 	'à× Ñ Ó" aÒ'Ð'Ð'Ø�j‰j˜Ÿ™ a›Ó)ˆØ—‘˜Q“ˆä�uœlÔ+Ø—‘×!Ñ!Ô%:×%@Ñ%@Ò@ð	
ðAñ ˜4×,Ñ,¨S¯\©\¸!«_Ó=Ó>ˆØ�EˆzÐr#   c                 óð   — |j                  «       dv sJ ‚|j                  «       dk(  rg S |j                  d«      }t        |t        j                  «      sJ ‚t        d„ | j                  |«      D «       «      S )N©rB   r[   rB   r   c              3   ó&   K  — | ]	  \  }}|–— Œ y ­wr(   r   )rP   rv   Ú_s      r"   rR   z4GrammarVisitor.visitListContainer.<locals>.<genexpr>Ñ   s   è ø€ ÐCÑ&B™F˜C ”CÑ&Bùs   ‚)r3   r4   r5   r   rq   Úlistrr   )r    r.   Úsequences      r"   ÚvisitListContainerz!GrammarVisitor.visitListContainerÈ   sq   € ð × Ñ Ó" fÑ,Ð,Ð,Ø×ÑÓ !Ò#ØˆIØ—<‘< “?ˆÜ˜(Ô$:×$JÑ$JÔKÐKÐKÜÑC d×&8Ñ&8¸Ô&BÓCÓCÐCr#   c                 ó$   — | j                  |«      S r(   rI   rE   s     r"   ÚvisitPrimitivezGrammarVisitor.visitPrimitiveÓ   rL   r#   c                 óŽ   — |j                  «       }|dv sJ ‚|dk(  r)t        | j                  |j                  d«      «      «      S dS )Nr   r[   r   r\   )r3   r8   rD   r4   )r    r.   Úns      r"   ÚvisitQuotedValuezGrammarVisitor.visitQuotedValueÖ   sC   € à×ÑÓˆØ�F‰{Ðˆ{Ø34¸²6Œs�4—:‘:˜cŸl™l¨1›oÓ.Ó/ÐA¸rÐAr#   c                 ób  — ddl m} |j                  «       dk\  sJ ‚g }t        |j	                  «       «      d d d…   D ]à  }t        |t        «      rO|j                  j                  t        j                  k(  sJ ‚|j                  |j                  j                  «       Œbt        |t        j                  «      sJ ‚ || j                  |«      «      }t        |t         «      s+t#        d|j%                  «       › d|› dt        |«      › �«      ‚|j                  |«       Œâ dj'                  |«      S )Nr   r0   rB   z?The name of a resolver must be a string, but the interpolation z resolved to `z` which is of type Ú.)r2   r1   r3   r‚   r]   r5   r   r;   r9   r   ÚIDra   r<   r   r6   r7   r8   r   r:   re   )r    r.   r1   Úitemsr=   Úitems         r"   ÚvisitResolverNamez GrammarVisitor.visitResolverNameÜ   s  € Ý&ð × Ñ Ó" aÒ'Ð'Ð'ØˆÜ˜#Ÿ/™/Ó+Ó,©S¨q¨SÔ1ˆEÜ˜%¤Ô.Ø—|‘|×(Ñ(Ô,A×,DÑ,DÒDÐDÐDØ—‘˜UŸ\™\×.Ñ.Õ/ä! %Ô)?×)TÑ)TÔUÐUÐUÙ! $×"9Ñ"9¸%Ó"@ÓA�Ü! $¬Ô,Ü6ØYØ Ÿ=™=›?Ð+¨>¸$¸Ð?RÜ ›:˜,ð(óð ð
 —‘˜TÕ"ð 2ð �x‰x˜‹Ðr#   Nc              #   ó¸  ‡K  — ddl m} ‰j                  «       dk\  sJ ‚dˆfd„}d}‰j                  «       D ]‘  }t	        |t
        j                  «      r, || j                  |«      «      |j                  «       f–— d}ŒIt	        |t        «      r'|j                  j                  t        j                  k(  sJ ‚|r |«        d–— Œ�d}Œ“ |r |«        d–— y y ­w)Nr   r0   c                  ód   •— ‰j                  «       } t        j                  d| › d�t        ¬«       y )NzIn the sequence `z‰` some elements are missing: please replace them with empty quoted strings. See https://github.com/omry/omegaconf/issues/572 for details.)Úcategory)r:   ÚwarningsÚwarnÚUserWarning)rw   r.   s    €r"   Úempty_str_warningz7GrammarVisitor.visitSequence.<locals>.empty_str_warningû   s2   ø€ Ø—+‘+“-ˆCÜ�M‰MØ# C 5ð )Pð Qô %ö	r#   TF)r\   r\   )r&   N)r2   r1   r3   r]   r5   r   ÚElementContextrX   r:   r   r;   r9   r   ÚCOMMA)r    r.   r1   r–   Úis_previous_commar=   s    `    r"   rr   zGrammarVisitor.visitSequenceò   sØ   øè ø€ õ 	'ð × Ñ Ó" aÒ'Ð'Ð'õ	ð !ÐØ—_‘_Ö&ˆEÜ˜%Ô!7×!FÑ!FÔGñ
 ! ×!2Ñ!2°5Ó!9Ó:¸E¿M¹M»OÐKÒKØ$)Ñ!ô ˜u¤lÔ3ØŸ™×)Ñ)Ô-B×-HÑ-HÒHððIñ %Ù%Ô'Ø “Là(,Ñ%ð# 'ñ$ áÔØ‹Lð ùs   ƒCCc                 ól   — |j                  «       dk(  sJ ‚| j                  |j                  d«      «      S rA   rC   rE   s     r"   ÚvisitSingleElementz!GrammarVisitor.visitSingleElement  s2   € ð × Ñ Ó" aÒ'Ð'Ð'Ø�z‰z˜#Ÿ,™, q›/Ó*Ð*r#   c                 óð   — |j                  «       dk(  r<|j                  d«      }t        |t        j                  «      r| j                  |«      S | j                  t        |j                  «       «      «      S rW   )	r3   r4   r5   r   r6   r7   Ú	_unescaper‚   r]   )r    r.   Úcs      r"   Ú	visitTextzGrammarVisitor.visitText#  sa   € ð ×ÑÓ !Ò#Ø—‘˜Q“ˆAÜ˜!Ô3×HÑHÔIØ×.Ñ.¨qÓ1Ð1ð �~‰~œd 3§?¡?Ó#4Ó5Ó6Ð6r#   c                 ó  — |j                  «       dk(  �rÅ|j                  d«      }t        |t        j                  «      r| j                  |«      S t        |t        «      sJ ‚|j                  }|j                  t        j                  t        j                  t        j                  fv r|j                  S |j                  t        j                  k(  ry |j                  t        j                  k(  rt!        |j                  «      S |j                  t        j"                  k(  rt%        |j                  «      S |j                  t        j&                  k(  r|j                  j)                  «       dk(  S |j                  t        j*                  k(  r| j-                  |g«      S |j                  t        j.                  k(  rt1        d«      ‚J |j                  «       ‚| j-                  t3        |j5                  «       «      «      S )Nr   r   ÚtruezWS should never be reached)r3   r4   r5   r   r6   r7   r   r;   r9   r   rŒ   ÚUNQUOTED_CHARrz   r<   ÚNULLÚINTÚintÚFLOATÚfloatÚBOOLÚlowerÚESCr�   ÚWSÚAssertionErrorr‚   r]   )r    r.   r=   r;   s       r"   rJ   zGrammarVisitor._createPrimitive/  s†  € ð ×ÑÓ !Ó#Ø—L‘L “OˆEÜ˜%Ô!7×!LÑ!LÔMØ×.Ñ.¨uÓ5Ð5Ü˜e¤\Ô2Ð2Ð2Ø—\‘\ˆFà�{‰{Ü%×(Ñ(Ü%×3Ñ3Ü%×+Ñ+ðñ ð
 —{‘{Ð"Ø—‘Ô 5× :Ñ :Ò:ØØ—‘Ô 5× 9Ñ 9Ò9Ü˜6Ÿ;™;Ó'Ð'Ø—‘Ô 5× ;Ñ ;Ò;Ü˜VŸ[™[Ó)Ð)Ø—‘Ô 5× :Ñ :Ò:Ø—{‘{×(Ñ(Ó*¨fÑ4Ð4Ø—‘Ô 5× 9Ñ 9Ò9Ø—~‘~ u gÓ.Ð.Ø—‘Ô 5× 8Ñ 8Ò8ä$Ð%AÓBÐBØ%˜&Ÿ+™+Ó%�5à�~‰~œd 3§?¡?Ó#4Ó5Ó6Ð6r#   Úseqc                 ó
  — g }t        ||dd «      D �]^  \  }}t        |t        «      �r |j                  }|j                  t
        j                  k(  r*|j                  t        |j                  «      dz  dz    d }nã|j                  t
        j                  k(  sp|j                  t
        j                  k(  rt        |t        j                  «      s9|j                  t
        j                  k(  r/|�t        |t        j                  «      r|j                  ddd…   }nC|j                  }n6t        |t        j                  «      sJ ‚t        | j                  |«      «      }|j!                  |«       �Œa dj#                  |«      S )a<  
        Concatenate all symbols / interpolations in `seq`, unescaping symbols as needed.

        Interpolations are resolved and cast to string *WITHOUT* escaping their result
        (it is assumed that whatever escaping is required was already handled during the
        resolving of the interpolation).
        r   NrB   r\   )r   r5   r   r;   r9   r   Ú	ESC_INTERr<   Úlenrª   ÚTOP_ESCr   r6   Ú
QUOTED_ESCr8   r7   ra   re   )r    r­   ÚchrsÚnodeÚ	next_noderg   r<   s          r"   r�   zGrammarVisitor._unescapeU  sG  € ð ˆÜ*¨3°°A°B°×8‰OˆD�)Ü˜$¤Õ-Ø—K‘K�Ø—6‘6Ô2×<Ñ<Ò<ð Ÿ6™6¤C¨¯©£K°1Ñ$4°qÑ$8Ð"9Ð";Ð<‘Dð —F‘FÔ3×7Ñ7Ò7ð Ÿ™Ô"7×"?Ñ"?Ò?Ü&Ø%Ô'=×'RÑ'Rôð Ÿ™Ô"7×"BÑ"BÒBà%Ð-Ü)Ø )Ô+A×+VÑ+Vô ð Ÿ6™6 ! $ Q $™<‘DàŸ6™6‘Dä! $Ô(>×(SÑ(SÔTÐTÐTÜ˜4×2Ñ2°4Ó8Ó9�Ø�K‰K˜ÖðK  9ðN �w‰w�t‹}Ðr#   )6Ú__name__Ú
__module__Ú__qualname__r   r8   r
   r   r¥   r   r   r   r	   r+   r-   r   rd   r?   ÚConfigValueContextrF   ÚDictKeyContextrK   ÚDictContainerContextrU   r—   rX   r6   r7   ÚInterpolationNodeContextri   ÚInterpolationResolverContextrx   ÚDictKeyValuePairContextr   rO   ÚListContainerContextr„   ÚPrimitiveContextr†   ÚQuotedValueContextr‰   ÚResolverNameContextr�   rq   r   rr   ÚSingleElementContextr›   ÚTextContextrŸ   r   rJ   r   r�   Ú__classcell__)r!   s   @r"   r   r   '   sØ  ø„ ðà%-Ø�(˜3˜s™8Ñ$Ð%Ø�VÑðñ&
ðð *2°#°s°(Ñ);ðð �s˜3‘xÑ ðð �3˜�8‰nõð<"¨¨c©ð "Àð "ÈÈSÉ	ó "ð"˜t C™yó "ð%Ð"8×"IÑ"Ið %Ècó %ð*+Ð$:×$MÑ$Mð +ÐRUó +ð
*Ð 6× EÑ Eð *È#ó *ð
Ø)×>Ñ>ð
à	ˆc�3ˆh‰ó
ð+Ð 6× EÑ Eð +È#ó +ð
+Ø)×>Ñ>ð+à	ó+ðFØ)×BÑBðFà	�&Ñ	óFðB
Ø)×FÑFð
à	ó
ð2Ø)×AÑAðà	ˆs�Cˆx‰óð	DØ)×>Ñ>ð	Dà	ˆc‰ó	Dð*Ð"8×"IÑ"Ið *Ècó *ðBÐ$:×$MÑ$Mð BÐRUó BðÐ%;×%OÑ%Oð ÐTWó ð,(Ø)×9Ñ9ð(à	�3˜˜d�?Ñ	#ó(ðT+Ø)×>Ñ>ð+à	ó+ð
7Ð3×?Ñ?ð 
7ÀCó 
7ð$7àØ"×3Ñ3Ø"×1Ñ1ð3ñ
ð$7ð 
ó$7ðL3à�%˜Ð&<×&QÑ&QÐQÑRÑSð3ð 
÷3r#   r   ) Úsysr“   Ú	itertoolsr   Útypingr   r   r   r   r   r	   r
   r   r   r   Úantlr4r   Úerrorsr   Úbaser   Ú+omegaconf.grammar.gen.OmegaConfGrammarLexerr   Ú,omegaconf.grammar.gen.OmegaConfGrammarParserr   Ú3omegaconf.grammar.gen.OmegaConfGrammarParserVisitorr   ÚModuleNotFoundErrorÚprintÚstderrÚexitr   r   r#   r"   Ú<module>rÓ      s|   ðÛ 
Û Ý !÷÷ ÷ õ  å 0áÝðÝQÝSõôaÐ2õ aøð ò Ù	ØcØ�Z‰Zõð €C‡H�HˆQ†Kðús   ¼A Á+BÂB