§
    „Øjì  ã                  óä   — d Z ddlmZ ddlmZ ddlmZ ddlmZ  ej	        ddd¦  «        dd
„¦   «         Z
 ej	        ddd¦  «        dd„¦   «         ZdZedk    rdd	lZ ej        ¦   «          d	S d	S )z‰
Tools for generating new Streams from trees (fast, manipulable objects)

None of these things work acceptably yet.  This is super beta.
é    )Úannotations)Úcommon)ÚTreeException)ÚtimespanTreeÚv7Úv8zuse chordify() insteadNc           
     óÂ  — ddl m} t          | t          j        ¦  «        st          j        d¦  «        ‚|��á|                     ¦   «         }t          |¦  «        }|                     |j	        j
        ¦  «         t          |d¦  «        r*|j        r#|j        d                              dd¬¦  «        }n|                     dd¬¦  «        }|                      ¦   «         } |                      |¦  «         d}|                      ¦   «         t#          |¦  «        z   }t%          t'          |¦  «        ¦  «        }t          |                     |j        ¦  «        ¦  «        }t-          ||dd…         ¦  «        D ]¡\  }	}
|d         |	k    r&|                     d¦  «         |dz  }|d         |	k    °&|                      |	¦  «        }|
|	z
  }|dk     rt3          d	|›d
|
d›d|	d›�¦  «        ‚|                     |¦  «        }||                              |¦  «         Œ¢|S |                      ¦   «         }g }t-          ||dd…         ¦  «        D ]i\  }	}
|                      |	¦  «        }|
|	z
  }|dk     rt3          d	|›d|
d›d|	d›�¦  «        ‚|                     |¦  «        }|                     |¦  «         Œj|                     ¦   «         }|D ]}|                     |¦  «         Œ|S )aÝ  
    DEPRECATED -- DO NOT USE.  Use stream.chordify() instead.

    Creates a score from the PitchedTimespan objects stored in this
    offset-tree.

    A "template" score may be used to provide measure and time-signature
    information.

    >>> score = corpus.parse('bwv66.6')
    >>> scoreTree = score.asTimespans()
    >>> #_DOCS_SHOW chordifiedScore = tree.toStream.chordified(scoreTree, templateStream=score)
    >>> #_DOCS_SHOW chordifiedScore.show('text')
    {0.0} <music21.instrument.Instrument 'P1: Soprano: Instrument 1'>
    {0.0} <music21.stream.Measure 0 offset=0.0>
        {0.0} <music21.clef.TrebleClef>
        {0.0} <music21.key.Key of f# minor>
        {0.0} <music21.meter.TimeSignature 4/4>
        {0.0} <music21.chord.Chord A3 E4 C#5>
        {0.5} <music21.chord.Chord G#3 B3 E4 B4>
    {1.0} <music21.stream.Measure 1 offset=1.0>
        {0.0} <music21.chord.Chord F#3 C#4 F#4 A4>
        {1.0} <music21.chord.Chord G#3 B3 E4 B4>
        {2.0} <music21.chord.Chord A3 E4 C#5>
        {3.0} <music21.chord.Chord G#3 B3 E4 E5>
    {5.0} <music21.stream.Measure 2 offset=5.0>
        {0.0} <music21.chord.Chord A3 E4 C#5>
        {0.5} <music21.chord.Chord C#3 E4 A4 C#5>
        {1.0} <music21.chord.Chord E3 E4 G#4 B4>
        {1.5} <music21.chord.Chord E3 D4 G#4 B4>
        {2.0} <music21.chord.Chord A2 C#4 E4 A4>
        {3.0} <music21.chord.Chord E#3 C#4 G#4 C#5>
    {9.0} <music21.stream.Measure 3 offset=9.0>
        {0.0} <music21.layout.SystemLayout>
    ...
    r   ©ÚstreamzNeeds a TimespanTree to runNÚpartsF)ÚfillWithRestsÚretainVoicesé   z(Something is wrong with the verticality z its endTime Úfz is less than its offset z, its endTime )Úmusic21r   Ú
isinstancer   ÚTimespanTreeÚTimespanTreeExceptionÚmeasureOffsetMapÚlistÚappendÚdurationÚquarterLengthÚhasattrr   ÚtemplateÚcopyÚsplitAtÚallTimePointsÚtupleÚsortedÚsetÚgetElementsByClassÚMeasureÚzipÚpopÚgetVerticalityAtr   ÚmakeElementÚScore)Ú	timespansÚtemplateStreamr   ÚmosÚtemplateOffsetsÚoutputStreamÚmeasureIndexr   ÚmeasureListÚoffsetÚendTimeÚvertr   ÚelementÚelementss                  úŠ/Users/tedpeters/Documents/Projects/Claude Projects/Misc Tools/notename-sheets/.venv/lib/python3.11/site-packages/music21/tree/toStream.pyÚ
chordifiedr6      s|  € ðL ÐÐÐÐÐÝ�i¥Ô!:Ñ;Ô;ð PÝÔ0Ð1NÑOÔOÐOàÑ!à×-Ò-Ñ/Ô/ˆÝ˜s™)œ)ˆØ×Ò˜~Ô6ÔDÑEÔEÐEå�N GÑ,Ô,ð 	\Ø"Ô(ð	\à)Ô/°Ô2×;Ò;È%ØINð <ñ Pô PˆLˆLð *×2Ò2ÀÐUZÐ2Ñ[Ô[ˆLà—N’NÑ$Ô$ˆ	Ø×Ò˜/Ñ*Ô*Ð*àˆà!×/Ò/Ñ1Ô1µE¸/Ñ4JÔ4JÑJˆÝ�s =Ñ1Ô1Ñ2Ô2ˆå˜<×:Ò:¸6¼>ÑJÔJÑKÔKˆå" =°-ÀÀÀÔ2CÑDÔDð 	6ð 	6‰OˆF�GØ! !Ô$¨Ò.Ð.Ø×#Ò# AÑ&Ô&Ð&Ø Ñ!�ð " !Ô$¨Ò.Ð.ð ×-Ò-¨fÑ5Ô5ˆDØ# fÑ,ˆMØ˜qÒ Ð Ý#ð[Øð[ð [Ø,3ÐZð[ð [ØPVÐZð[ð [ñô ð ð ×&Ò& }Ñ5Ô5ˆGØ˜Ô%×,Ò,¨WÑ5Ô5Ð5Ð5ØÐà!×/Ò/Ñ1Ô1ˆØˆÝ" =°-ÀÀÀÔ2CÑDÔDð 		%ð 		%‰OˆF�GØ×-Ò-¨fÑ5Ô5ˆDØ# fÑ,ˆMØ˜qÒ Ð Ý#ð\Øð\ð \Ø-4Ð[ð\ð \ØQWÐ[ð\ð \ñô ð ð ×&Ò& }Ñ5Ô5ˆGØ�OŠO˜GÑ$Ô$Ð$Ð$à—|’|‘~”~ˆØð 	)ð 	)ˆGØ×Ò Ñ(Ô(Ð(Ð(ØÐó    ÚtsTreeú('music21.tree.timespanTree.TimespanTree'r*   ú'music21.stream.Score'c                óò   — ddl m} |                      ¦   «         }|                     ¦   «         }|j        D ]@}|                     |d¦  «        }|€Œt          ||¦  «        }|                     |¦  «         ŒA|S )z,
    DEPRECATED in v7 -- use chordify()
    r   r
   N)r   r   ÚtoPartwiseTimespanTreesr(   r   Úgetr6   r   )r8   r*   r   ÚtreeMappingÚoutputScoreÚpartÚpartwiseTimespansÚ
outputParts           r5   ÚpartwiserC   y   s�   € ð ÐÐÐÐÐØ×0Ò0Ñ2Ô2€KØ—,’,‘.”.€KØÔ$ð 'ð 'ˆØ'ŸOšO¨D°$Ñ7Ô7ÐØÐ$ØÝÐ 1°4Ñ8Ô8ˆ
Ø×Ò˜:Ñ&Ô&Ð&Ð&ØÐr7   © Ú__main__)N)r8   r9   r*   r:   )Ú__doc__Ú
__future__r   r   r   Úmusic21.exceptions21r   Úmusic21.treer   Ú
deprecatedr6   rC   Ú
_DOC_ORDERÚ__name__ÚmainTestrD   r7   r5   ú<module>rN      s   ððð ð
 #Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ð Ð Ø .Ð .Ð .Ð .Ð .Ð .Ø %Ð %Ð %Ð %Ð %Ð %ð €Ô�4˜Ð7Ñ8Ô8ð_ð _ð _ñ 9Ô8ð_ðB €Ô�4˜Ð7Ñ8Ô8ðð ð ñ 9Ô8ðð" €
ð ˆzÒÐØ€N€N€NØ€GÔÑÔÐÐÐð Ðr7   