Ë
    Ìi  ã                   ó0   — d dl mZ d dlmZ d dlmZ dd„Zy)é    )ÚOrderedDict)Úcopy)ÚRowc                 óH  ‡— t        t        | j                  «      «      }t        t        | j                  «      «      }|D ]q  \  }}|j	                  | «      }||v r$|st        d«      ‚|j                  |«      Š||‰<   n"|j                  |«       |j                  |«       |j                  | «       Œs t        «       }|D ]  \  }}|j                  | «      ||<   Œ g }	t        | j                  «      D ]›  \  Š}
|rFg }t        |«      D ]5  \  }}||v r|j                  ||   ‰   «       Œ"|j                  |
|   «       Œ7 n3|
j                  «       t        ˆfd„|j                  «       D «       «      z   }|	j                  t        ||«      «       Œ� | j!                  |	||«      S )a¨  
    Create a new table by applying one or more :class:`.Computation` instances
    to each row.

    :param computations:
        A sequence of pairs of new column names and :class:`.Computation`
        instances.
    :param replace:
        If :code:`True` then new column names can match existing names, and
        those columns will be replaced with the computed data.
    :returns:
        A new :class:`.Table`.
    zXNew column name "%s" already exists. Specify replace=True to replace with computed data.c              3   ó(   •K  — | ]	  }|‰   –— Œ y ­w)N© )Ú.0ÚcÚis     €úT/var/www/html/strategist-ai/venv/lib/python3.12/site-packages/agate/table/compute.pyú	<genexpr>zcompute.<locals>.<genexpr><   s   øè ø€ Ò)M°1¨!¨A­$Ñ)Mùs   ƒ)Úlistr   Ú_column_namesÚ_column_typesÚget_computed_data_typeÚ
ValueErrorÚindexÚappendÚvalidater   ÚrunÚ	enumerateÚ_rowsÚvaluesÚtupler   Ú_fork)ÚselfÚcomputationsÚreplaceÚcolumn_namesÚcolumn_typesÚnew_column_nameÚcomputationÚnew_column_typeÚnew_columnsÚnew_rowsÚrowr   ÚjÚcolumn_namer   s                 @r   Úcomputer)      s¢  ø€ ô œ˜T×/Ñ/Ó0Ó1€LÜœ˜T×/Ñ/Ó0Ó1€Là(4ò #Ñ$ˆ˜Ø%×<Ñ<¸TÓBˆà˜lÑ*ÙÜ Ønóð ð ×"Ñ" ?Ó3ˆAØ-ˆL˜ŠOà×Ñ Ô0Ø×Ñ Ô0à×Ñ˜TÕ"ð#ô" “-€Kà(4ò =Ñ$ˆ˜Ø'2§¡°tÓ'<ˆ�OÒ$ð=ð €Hä˜DŸJ™JÓ'ò 3‰ˆˆ3áØˆFä"+¨LÓ"9ò *‘��;Ø +Ñ-Ø—M‘M +¨kÑ":¸1Ñ"=Õ>à—M‘M # a¡&Õ)ñ	*ð —Z‘Z“\¤EÓ)M¸×8JÑ8JÓ8LÔ)MÓ$MÑMˆFà�‰œ˜F LÓ1Õ2ð3ð  �:‰:�h ¨lÓ;Ð;ó    N)F)Úcollectionsr   r   Ú
agate.rowsr   r)   r   r*   r   ú<module>r-      s   ðÝ #Ý å ô9<r*   