§
    „Øj]@  ã                  ó¨   — d dl mZ d dlZd dlmZ d dlmZ d dlmZ d dlmZ  G d„ dej        ¦  «        Z	e
d	k    rd dlZ ej        e	¦  «         dS dS )
é    )ÚannotationsN)Úcorpus)Úinterval)Únote)Úpitchc                  óV   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ ZdS )ÚTestc                ó&  — t          j        d¦  «        }t          j        d¦  «        }t          j        ||¦  «        }|                      |j        d¦  «         |                      |j        |¦  «         |                      |j        |¦  «         t          j        ||¬¦  «        }|                      |j        d¦  «         |                      |j	        d¦  «         |                      |j        |¦  «         |                      |j        |¦  «         d S )NÚA4ÚE5ÚP5)Ú
pitchStartÚpitchEndúP-5)
r   ÚPitchr   ÚIntervalÚassertEqualÚnameÚassertIsr   r   ÚdirectedName)ÚselfÚp1Úp2Úintvs       ú�/Users/tedpeters/Documents/Projects/Claude Projects/Misc Tools/notename-sheets/.venv/lib/python3.11/site-packages/music21/test/test_interval.pyÚtestConstructorPitcheszTest.testConstructorPitches   sð   € ÝŒ[˜ÑÔˆÝŒ[˜ÑÔˆÝÔ   RÑ(Ô(ˆØ×Ò˜œ DÑ)Ô)Ð)Ø�Š�d”o rÑ*Ô*Ð*Ø�Š�d”m RÑ(Ô(Ð(õ Ô ¨B¸Ð<Ñ<Ô<ˆØ×Ò˜œ DÑ)Ô)Ð)Ø×Ò˜Ô*¨EÑ2Ô2Ð2Ø�Š�d”o rÑ*Ô*Ð*Ø�Š�d”m RÑ(Ô(Ð(Ð(Ð(ó    c                ó¬  — t          j        ¦   «         }t          j        ¦   «         }d|_        d|_        d|_        d|_        t	          j        d¦  «        |j        _        t          j        ||¬¦  «        }|j	        }|j
        }|                      |j        ¦  «         |                      |j        ¦  «         t	          j        d¦  «        |j        _        t          j        ||¬¦  «        }t          j        ||¦  «        }|                      |t          j        ¦  «         |j        }|                      |j        |j        ¦  «         |                      |j        d¦  «         |                      |j        d	¦  «         |                      |j        d
¦  «         |                      |j        t          j        j        ¦  «         |j	        }	|	j
        }
|                      |
j        d¦  «         |                      |
j        d¦  «         |                      |
j        d¦  «         |                      |
j        d¦  «         |                      |j        d¦  «         |                      |j        d¦  «         |                      |j        d¦  «         |                      |j         d¦  «         t          j        ¦   «         }d|_        d|_        d|j        _        t          j        d¦  «        }|                      |j        d¦  «         |                      |j!        d¦  «         |                      |j        d¦  «         |                      |j        d¦  «         |                      |j         d¦  «         t          j        ¦   «         }d|_        t          j        ¦   «         }d|_        d|_        t          j        ||¦  «        }|                      |j"        d¦  «         t          j        ¦   «         }d|_        d|_        t          j        ¦   «         }d|_        d|_        t          j        ||¦  «        }t          j        ¦   «         }d|_        d|_        t          j#        ||¦  «        }|                      |j        d¦  «         |                      |j        d¦  «         t          j        d¦  «        }t          j#        ||¦  «        }t          j#        |d¦  «        }|                      |j        d¦  «         |                      |j        |j        ¦  «         t          j        d¦  «        }t          j#        ||¦  «        }|                      |j        d¦  «         t          j        ¦   «         }t          j#        |d¦  «        }|                      |j        d¦  «         |                      |j        d¦  «         t          j#        |d¦  «        }|                      |j        d¦  «         |                      |j        d¦  «         t          j#        |d ¦  «        }|                      |j        d!¦  «         |                      |j        d¦  «         t          j        d"¦  «        }t          j        d¦  «        }t          j        d#¦  «        }t          j        d$¦  «        }t          j        d$¦  «        } t          j$        ||¦  «        }!t          j$        ||¦  «        }"t          j$        || ¦  «        }#|                      |!|¦  «         |                      |"|¦  «         |                      |#|¦  «         t          j%        ||¦  «        }$t          j%        ||¦  «        }%t          j%        ||¦  «        }&t          j%        ||¦  «        }'|                      |$|¦  «         |                      |%|¦  «         |                      |&|¦  «         |                      |'|¦  «         t          j&        ||¦  «        }(t          j&        ||¦  «        })t          j&        || ¦  «        }*|                      |(|¦  «         |                      |)|¦  «         |                      |*|¦  «         t          j'        ||¦  «        }+t          j'        ||¦  «        },t          j'        ||¦  «        }-|                      |+|¦  «         |                      |,|¦  «         |                      |-|¦  «         t          j        ¦   «         }.t          j        ¦   «         }/d|/_        t          j        |.|/¦  «        }0|                      |0j
        j        d¦  «         |                      |0j
        j(        d%¦  «         |                      |0j)        d&¦  «         |                      |0j*        d'¦  «         t          j        ¦   «         }1d(|1_        d|1_        t          j        |.|1¦  «        }2|                      |2j	        j+        d)¦  «         |                      |2j	        j*        d*¦  «         |                      |2j	        j,        d+¦  «         |                      |2j	        j-        d,¦  «         |2j.        }3|                      |3j"        d-¦  «         |                      |3j	        j,        d,¦  «         |                      |3j	        j-        d,¦  «         |                      |3j.        j"        d.¦  «         d S )/NÚCé   ÚBé   ú-©Ú	noteStartÚnoteEndú#zDiminished SeventhzAscending Diminished SeventhÚd14é   é   é   é	   é   ÚDiòÿÿÿiˆúÿÿé
   é   zB-zDiminished OctavezE-zF#é   zE#z-P5r   zG-ÚP8Úm7zdd-2zB##ÚEzF-ÚFiøÿÿÿzP-8ÚP1ÚGzDescending Perfect FourthzP-4ÚP4r   zPerfect FifthzPerfect Fourth)/r   ÚNoteÚstepÚoctaver   Ú
AccidentalÚ
accidentalr   r   ÚdiatonicÚgenericÚassertFalseÚisDiatonicStepÚ
assertTrueÚisSkipÚnotesToChromaticÚassertIsInstanceÚChromaticIntervalÚ	chromaticr   Ú	semitonesÚsimpleNiceNameÚdirectedSimpleNiceNamer   Ú	specifierÚ	SpecifierÚ
DIMINISHEDÚdirectedÚ
undirectedÚsimpleDirectedÚsimpleUndirectedÚmod12ÚintervalClassÚcentsÚniceNameÚtransposeNoteÚgetWrittenHigherNoteÚgetAbsoluteHigherNoteÚgetWrittenLowerNoteÚgetAbsoluteLowerNoteÚsemiSimpleDirectedr   ÚdirectedSimpleNameÚdirectedNiceNameÚ
simpleNameÚmod7Ú
complement)4r   Ún1Ún2Úint0ÚdInt0ÚgInt0Úint1ÚcInt1ÚcInt2ÚdInt1ÚgInt1Ún4ÚcIÚlowBÚhighBbÚdimOctÚnoteA1ÚnoteA2Ú
intervalA1ÚnoteA3ÚnoteA4Ú	interval1Ún5Ún6Ún7Ún8Ún9Ún10ÚnEÚnESharpÚnFFlatÚnF1ÚnF2Úhigher1Úhigher2Úhigher3Úhigher4Úhigher5Úhigher6Úhigher7Úlower1Úlower2Úlower3Úlower4Úlower5Úlower6ÚmiddleCÚlowerCÚdescendingOctaveÚlowerGÚdescendingFourthÚperfectFifths4                                                       r   Ú	testFirstzTest.testFirst   sp	  € ÝŒY‰[Œ[ˆÝŒY‰[Œ[ˆàˆŒØˆŒ	àˆŒØˆŒ	Ý#Ô.¨sÑ3Ô3ˆŒÔåÔ ¨2°rÐ:Ñ:Ô:ˆØ”ˆØ”ˆà×Ò˜Ô-Ñ.Ô.Ð.Ø�Š˜œÑ%Ô%Ð%å#Ô.¨sÑ3Ô3ˆŒÔÝÔ ¨2°rÐ:Ñ:Ô:ˆõ Ô)¨"¨bÑ1Ô1ˆØ×Ò˜e¥XÔ%?Ñ@Ô@Ð@Ø”ˆØ×Ò˜œ¨%¬/Ñ:Ô:Ð:à×Ò˜Ô,Ð.BÑCÔCÐCà×Ò˜Ô4Ð6TÑUÔUÐUØ×Ò˜œ EÑ*Ô*Ð*Ø×Ò˜œ­Ô);Ô)FÑGÔGÐGð ”ˆØ”ˆà×Ò˜œ¨Ñ,Ô,Ð,Ø×Ò˜Ô)¨2Ñ.Ô.Ð.Ø×Ò˜Ô-¨qÑ1Ô1Ð1Ø×Ò˜Ô/°Ñ3Ô3Ð3à×Ò˜œ¨"Ñ-Ô-Ð-Ø×Ò˜Ô)¨2Ñ.Ô.Ð.Ø×Ò˜œ aÑ(Ô(Ð(Ø×Ò˜Ô,¨aÑ0Ô0Ð0åŒY‰[Œ[ˆØˆŒØˆŒ	Ø!ˆŒÔõ Ô'¨Ñ,Ô,ˆØ×Ò˜œ sÑ+Ô+Ð+Ø×Ò˜œ 5Ñ)Ô)Ð)Ø×Ò˜œ¨Ñ+Ô+Ð+Ø×Ò˜œ 2Ñ&Ô&Ð&Ø×Ò˜Ô)¨1Ñ-Ô-Ð-åŒy‰{Œ{ˆØˆŒ	Ý”‘”ˆØˆŒØˆŒÝÔ" 4¨Ñ0Ô0ˆØ×Ò˜œÐ*=Ñ>Ô>Ð>å”‘”ˆØˆŒØˆŒÝ”‘”ˆØˆŒØˆŒÝÔ& v¨vÑ6Ô6ˆ
å”‘”ˆØˆŒØˆŒåÔ'¨°
Ñ;Ô;ˆØ×Ò˜œ dÑ+Ô+Ð+Ø×Ò˜œ¨Ñ*Ô*Ð*åÔ% eÑ,Ô,ˆ	åÔ# B¨	Ñ2Ô2ˆÝÔ# B¨Ñ.Ô.ˆØ×Ò˜œ $Ñ'Ô'Ð'Ø×Ò˜œ "¤'Ñ*Ô*Ð*õ Ô% eÑ,Ô,ˆ	åÔ# B¨	Ñ2Ô2ˆØ×Ò˜œ $Ñ'Ô'Ð'ÝŒY‰[Œ[ˆÝÔ# B¨Ñ-Ô-ˆØ×Ò˜œ #Ñ&Ô&Ð&Ø×Ò˜œ AÑ&Ô&Ð&åÔ# B¨Ñ-Ô-ˆØ×Ò˜œ $Ñ'Ô'Ð'Ø×Ò˜œ AÑ&Ô&Ð&ÝÔ$ R¨Ñ0Ô0ˆØ×Ò˜œ 5Ñ)Ô)Ð)Ø×Ò˜œ QÑ'Ô'Ð'õ ŒY�s‰^Œ^ˆÝ”)˜D‘/”/ˆÝ”˜4‘”ˆÝŒi˜‰nŒnˆÝŒi˜‰nŒnˆåÔ/°°GÑ<Ô<ˆÝÔ/°¸Ñ@Ô@ˆÝÔ/°°SÑ9Ô9ˆà×Ò˜ 'Ñ*Ô*Ð*Ø×Ò˜ &Ñ)Ô)Ð)Ø×Ò˜ #Ñ&Ô&Ð&åÔ0°°WÑ=Ô=ˆÝÔ0°¸&ÑAÔAˆÝÔ0°¸#Ñ>Ô>ˆÝÔ0°°gÑ>Ô>ˆà×Ò˜ 'Ñ*Ô*Ð*Ø×Ò˜ 'Ñ*Ô*Ð*Ø×Ò˜ 'Ñ*Ô*Ð*Ø×Ò˜ #Ñ&Ô&Ð&åÔ-¨g°rÑ:Ô:ˆÝÔ-¨f°gÑ>Ô>ˆÝÔ-¨c°3Ñ7Ô7ˆà×Ò˜ Ñ$Ô$Ð$Ø×Ò˜ Ñ)Ô)Ð)Ø×Ò˜ Ñ%Ô%Ð%åÔ.¨w¸Ñ;Ô;ˆÝÔ.¨v°wÑ?Ô?ˆÝÔ.¨w¸Ñ<Ô<ˆà×Ò˜ Ñ$Ô$Ð$Ø×Ò˜ Ñ(Ô(Ð(Ø×Ò˜ Ñ)Ô)Ð)å”)‘+”+ˆÝ”‘”ˆØˆŒÝ#Ô,¨W°fÑ=Ô=ÐØ×ÒÐ)Ô1Ô@À!ÑDÔDÐDà×ÒÐ)Ô1ÔDÀbÑIÔIÐIà×ÒÐ)Ô6¸Ñ>Ô>Ð>Ø×ÒÐ)Ô<¸dÑCÔCÐCå”‘”ˆØˆŒØˆŒÝ#Ô,¨W°fÑ=Ô=ÐØ×ÒÐ)Ô2ÔCØ4ñ	6ô 	6ð 	6à×ÒÐ)Ô2ÔEÀuÑMÔMÐMØ×ÒÐ)Ô2Ô=¸tÑDÔDÐDØ×ÒÐ)Ô2Ô7¸Ñ>Ô>Ð>à'Ô2ˆØ×Ò˜Ô.°Ñ@Ô@Ð@Ø×Ò˜Ô.Ô9¸4Ñ@Ô@Ð@Ø×Ò˜Ô.Ô3°TÑ:Ô:Ð:Ø×Ò˜Ô0Ô9Ð;KÑLÔLÐLÐLÐLr   c                ó¶   — t          j        d¦  «        }t          j        d¦  «        }t          j        ||¦  «        }|                      |j        d¦  «         d S )NÚcÚgr"   )r   r   r   r   r   rS   )r   r   r   Úis       r   ÚtestCreateIntervalFromPitchz Test.testCreateIntervalFromPitchÔ   sP   € ÝŒ[˜ÑÔˆÝŒ[˜ÑÔˆÝÔ˜b "Ñ%Ô%ˆØ×Ò˜œ¨!Ñ,Ô,Ð,Ð,Ð,r   c                óH  — d„ }t          j        d¦  «        }|j        d                              dd¦  «        }|                       ||¦  «        g d¢¦  «         |                     ¦   «                              d¦  «        }|                       ||¦  «        g d¢¦  «         d S )	Nc                óÎ   — g }|                       ¦   «         j        D ]H}|j        j        �%|                     |j        j        j        ¦  «         Œ3|                     d¦  «         ŒI|S )NÚx)ÚflattenÚnotesr   r=   ÚappendÚdisplayStatus)Ús_innerÚpostÚes      r   ÚcollectAccidentalDisplayStatuszBTest.testTransposeImported.<locals>.collectAccidentalDisplayStatusÛ   se   € ØˆDØ—_’_Ñ&Ô&Ô,ð %ð %�Ø”7Ô%Ð1Ø—K’K ¤Ô 2Ô @ÑAÔAÐAÐAà—K’K Ñ$Ô$Ð$Ð$ØˆKr   zbach/bwv66.6r-   r0   é   )rœ   Frœ   rœ   TFrœ   FFFFFFrœ   rœ   rœ   FFFrœ   rœ   rœ   rœ   TFÚp5)rœ   Nrœ   rœ   NNNNNNNNNrœ   NNNNNrœ   rœ   rœ   NNN)r   ÚparseÚpartsÚmeasuresr   r�   Ú	transpose)r   r¤   ÚsÚsSubÚsTransposeds        r   ÚtestTransposeImportedzTest.testTransposeImportedÚ   sØ   € ð	ð 	ð 	õ ŒL˜Ñ(Ô(ˆàŒw�qŒz×"Ò" 1 aÑ(Ô(ˆà×ÒÐ7Ð7¸Ñ=Ô=ð;ð ;ð ;ñ	<ô 	<ð 	<ð
 —l’l‘n”n×.Ò.¨tÑ4Ô4ˆð 	×ÒÐ7Ð7¸ÑDÔDðAð Að Añ	Bô 	Bð 	Bð 	Bð 	Br   c                ó  — t          j        d¦  «        }|                      |j        j        d¦  «         |                      |j        d¦  «         t          j        d¦  «        }|                      |j        j        d¦  «         |                      |j        d¦  «         t          j        d¦  «        }|                      |j        j        d¦  «         |                      |j        d	¦  «         t          j        d
¦  «        }|                      |j        j        d¦  «         |                      |j        d¦  «         t          j        d¦  «        }|                      |j        d¦  «         |                      |j        d¦  «         |                      t          |¦  «        d¦  «         |                      |                     ¦   «         d¦  «         t          j        d¦  «        }|                      t          |¦  «        d¦  «         |                      |                     ¦   «         d¦  «         t          j        d¦  «        }|                      t          |¦  «        d¦  «         |                      |                     ¦   «         d¦  «         t          j        d¦  «        }|                      t          |¦  «        d¦  «         |                      |                     ¦   «         d¦  «         t          j        d¦  «        }t          j	        d¦  «        }| 
                    |¦  «        }|                      t          |¦  «        d¦  «         t          j        d¦  «        }t          j	        d¦  «        }| 
                    |¦  «        }|                      t          |¦  «        d¦  «         t          j        d¦  «        }t          j	        d¦  «        }| 
                    |¦  «        }|                      t          |¦  «        d¦  «         t          j        d¦  «        }t          j	        d¦  «        }d |_        |                      t          |¦  «        d!¦  «         | 
                    |¦  «        }|                      t          |¦  «        d"¦  «         t          j        d#¦  «        }t          j	        d¦  «        }d$|_        |                      t          |¦  «        d%¦  «         | 
                    |¦  «        }|                      t          |¦  «        d&¦  «         t          j        d#¦  «        }t          j	        d¦  «        }d'|_        | 
                    |¦  «        }|                      t          |¦  «        d(¦  «         t          j        d)¦  «        }t          j	        d*¦  «        }d |_        | 
                    |¦  «        }|                      t          |¦  «        d+¦  «         t          j        d,¦  «        }t          j	        d*¦  «        }d|_        | 
                    |¦  «        }|                      t          |¦  «        d-¦  «         t          j        d.¦  «        }t          j	        d*¦  «        }d|_        | 
                    |¦  «        }|                      t          |¦  «        d/¦  «         t          j        d0¦  «        }t          j	        d*¦  «        }d|_        | 
                    |¦  «        }|                      t          |¦  «        d1¦  «         t          j        d0¦  «        }t          j	        d*¦  «        }d$|_        | 
                    |¦  «        }|                      t          |¦  «        d2¦  «         d S )3NÚm3i,  g     Àr@r¦   i¼  g     à…@é   i   g      ‰@g      !@g     �Š@g      @g     h€@z%<music21.interval.Interval P4 (+25c)>é   g      @z%<music21.interval.Interval P4 (-25c)>içÿÿÿgìQ¸…ë@z%<music21.interval.Interval M3 (+48c)>g      H@g      @z%<music21.interval.Interval M3 (+50c)>g      I@Úc4zF4(+25c)g333333@z	F#4(-20c)g      @úF#4r"   r/   zC4(+10c)zF4(+10c)gÍÌÌÌÌÌ@iìÿÿÿzC4(-20c)ÚG4éP   zG#4gš™™™™™É?Úe4z	E~4(-20c)gš™™™™™©?zE4(+10c)gš™™™™(@zE5(+10c)g33333³'@zE5(-10c)z	E`5(+15c))r   r   r   rG   rT   ÚstrÚ_diatonicIntervalCentShiftÚassertAlmostEqualr   r   ÚtransposePitchÚ	microtone)r   r˜   r   r   s       r   ÚtestIntervalMicrotonesAzTest.testIntervalMicrotonesAõ   sJ  € ÝÔ˜dÑ#Ô#ˆØ×Ò˜œÔ*¨CÑ0Ô0Ð0Ø×Ò˜œ %Ñ(Ô(Ð(åÔ˜dÑ#Ô#ˆØ×Ò˜œÔ*¨CÑ0Ô0Ð0Ø×Ò˜œ %Ñ(Ô(Ð(åÔ˜aÑ Ô ˆØ×Ò˜œÔ*¨CÑ0Ô0Ð0Ø×Ò˜œ %Ñ(Ô(Ð(åÔ˜cÑ"Ô"ˆØ×Ò˜œÔ*¨EÑ2Ô2Ð2Ø×Ò˜œ %Ñ(Ô(Ð(åÔ˜dÑ#Ô#ˆØ×Ò˜œ %Ñ(Ô(Ð(à×Ò˜œ %Ñ(Ô(Ð(Ø×Ò�˜Q™œÐ!HÑIÔIÐIØ×Ò˜×5Ò5Ñ7Ô7¸Ñ<Ô<Ð<åÔ˜dÑ#Ô#ˆØ×Ò�˜Q™œÐ!HÑIÔIÐIØ×Ò˜×5Ò5Ñ7Ô7¸Ñ=Ô=Ð=åÔ˜dÑ#Ô#ˆØ×Ò�˜Q™œÐ!HÑIÔIÐIØ×Ò˜q×;Ò;Ñ=Ô=¸tÑDÔDÐDåÔ˜cÑ"Ô"ˆØ×Ò�˜Q™œÐ!HÑIÔIÐIØ×Ò˜q×;Ò;Ñ=Ô=¸tÑDÔDÐDåÔ˜dÑ#Ô#ˆÝŒ[˜ÑÔˆØ×Ò˜bÑ!Ô!ˆØ×Ò�˜R™œ *Ñ-Ô-Ð-åÔ˜dÑ#Ô#ˆÝŒ[˜ÑÔˆØ×Ò˜bÑ!Ô!ˆØ×Ò�˜R™œ +Ñ.Ô.Ð.åÔ˜dÑ#Ô#ˆÝŒ[˜ÑÔˆØ×Ò˜bÑ!Ô!ˆØ×Ò�˜R™œ %Ñ(Ô(Ð(åÔ˜aÑ Ô ˆÝŒ[˜ÑÔˆØˆŒØ×Ò�˜R™œ *Ñ-Ô-Ð-Ø×Ò˜bÑ!Ô!ˆØ×Ò�˜R™œ *Ñ-Ô-Ð-åÔ˜dÑ#Ô#ˆÝŒ[˜ÑÔˆØˆŒØ×Ò�˜R™œ *Ñ-Ô-Ð-Ø×Ò˜bÑ!Ô!ˆØ×Ò�˜R™œ $Ñ'Ô'Ð'åÔ˜dÑ#Ô#ˆÝŒ[˜ÑÔˆØˆŒØ×Ò˜bÑ!Ô!ˆØ×Ò�˜R™œ %Ñ(Ô(Ð(åÔ˜dÑ#Ô#ˆÝŒ[˜ÑÔˆØˆŒØ×Ò˜bÑ!Ô!ˆØ×Ò�˜R™œ +Ñ.Ô.Ð.åÔ˜dÑ#Ô#ˆÝŒ[˜ÑÔˆØˆŒØ×Ò˜bÑ!Ô!ˆØ×Ò�˜R™œ *Ñ-Ô-Ð-åÔ˜eÑ$Ô$ˆÝŒ[˜ÑÔˆØˆŒØ×Ò˜bÑ!Ô!ˆØ×Ò�˜R™œ *Ñ-Ô-Ð-åÔ˜eÑ$Ô$ˆÝŒ[˜ÑÔˆØˆŒØ×Ò˜bÑ!Ô!ˆØ×Ò�˜R™œ *Ñ-Ô-Ð-åÔ˜eÑ$Ô$ˆÝŒ[˜ÑÔˆØˆŒØ×Ò˜bÑ!Ô!ˆØ×Ò�˜R™œ +Ñ.Ô.Ð.Ð.Ð.r   c                óv  — t          j        t          j        d¦  «        t          j        d¦  «        ¦  «        }|                      t          |¦  «        d¦  «         t          j        t          j        d¦  «        t          j        d¦  «        ¦  «        }|                      t          |¦  «        d¦  «         d S )Nr³   zc#4z<music21.interval.Interval A1>zc~4z%<music21.interval.Interval A1 (-50c)>)r   r   r   r9   r   r¸   )r   r˜   s     r   ÚtestIntervalMicrotonesBzTest.testIntervalMicrotonesBZ  sŠ   € ÝÔ�dœi¨™oœo­t¬y¸Ñ/?Ô/?Ñ@Ô@ˆØ×Ò�˜Q™œÐ!AÑBÔBÐBåÔ�dœi¨™oœo­t¬y¸Ñ/?Ô/?Ñ@Ô@ˆØ×Ò�˜Q™œÐ!HÑIÔIÐIÐIÐIr   c                ó¼   — t          j        d¦  «        }t          j        d¦  «        }t          j        ||¬¦  «        }|j        }|                      |d¦  «         d S )NÚC4zC-4r$   zDescending Diminished Unison)r   r9   r   r   r]   r   )r   ÚnsÚner˜   r]   s        r   ÚtestDescendingAugmentedUnisonz"Test.testDescendingAugmentedUnisona  sZ   € ÝŒY�t‰_Œ_ˆÝŒY�uÑÔˆÝÔ¨°BÐ7Ñ7Ô7ˆØÔ-ÐØ×ÒÐ)Ð+IÑJÔJÐJÐJÐJr   c                óf  — t          j        d¦  «        }t          j        d¦  «        }|                     |¦  «        }|                      |j        d¦  «         t          j        d¦  «        }t          j        d¦  «        }|                     |¦  «        }|                      |j        d¦  «         d S )NrÁ   r"   ÚF4zB#3)r   r9   r   rF   rª   r   ÚnameWithOctave)r   rÂ   r˜   rb   s       r   Ú"testTransposeWithChromaticIntervalz'Test.testTransposeWithChromaticIntervalh  s”   € ÝŒY�t‰_Œ_ˆÝÔ& qÑ)Ô)ˆØ�\Š\˜!‰_Œ_ˆØ×Ò˜Ô*¨DÑ1Ô1Ð1åŒY�uÑÔˆÝÔ& qÑ)Ô)ˆØ�\Š\˜!‰_Œ_ˆØ×Ò˜Ô*¨DÑ1Ô1Ð1Ð1Ð1r   c                ó4  — t          j        d¦  «        }t          j        d¦  «        }|                      |j        ¦  «         |                     |¦  «        }|                      |j        |j        ¦  «         |  	                    |j
        |j
        ¦  «         d S )NzD#4r   )r   r   r   r   rB   ÚimplicitDiatonicr»   r   ÚpsÚassertNotEqualr   )r   Úpr˜   r   s       r   ÚtestTransposeImplicitzTest.testTransposeImplicits  sƒ   € ÝŒK˜ÑÔˆÝÔ˜aÑ Ô ˆØ�Š˜Ô*Ñ+Ô+Ð+Ø×Ò˜aÑ Ô ˆØ×Ò˜œ˜rœuÑ%Ô%Ð%Ø×Ò˜AœF B¤GÑ,Ô,Ð,Ð,Ð,r   c                ó  — t          j        d¦  «        }t          j        d¦  «        }g }t	          d¦  «        D ]4}|                     |j        ¦  «         |                     |d d¬¦  «         Œ5|                      |g d¢¦  «         |  	                    t           j
        d¦  «        5  |                     |d ¬¦  «         d d d ¦  «         n# 1 swxY w Y   |                     |¦  «        }|                      |j        d	¦  «         d S )
NÚC1r   é!   T)ÚmaxAccidentalÚinPlace)!rÐ   ÚG1ÚD2ÚA2ÚE3ÚB3r´   zC#5zG#5zD#6zA#6zE#7zB#7zF##8zC##9zG##9zD##10zA##10zE##11zB##11zF###12zC###13zG###13zD###14zA###14zE###15zB###15zF####16zC####17zG####17zD####18zA####18zE####19z$5 is not a supported accidental type)rÒ   zB-20)r   r   r   r   ÚrangerŸ   rÇ   r»   r   ÚassertRaisesRegexÚAccidentalException)r   rÍ   r   ÚoutÚ_r   s         r   ÚtestRepeatedTransposePitchzTest.testRepeatedTransposePitch{  s^  € ÝŒK˜ÑÔˆÝÔ  Ñ&Ô&ˆØˆÝ�r‘”ð 	Eð 	EˆAØ�JŠJ�qÔ'Ñ(Ô(Ð(Ø×Ò °¸tÐÑDÔDÐDÐDØ×ÒØðð ð ñ	
ô 	
ð 	
ð ×#Ò#¥EÔ$=Ø$JñLô Lð 	7ð 	7à×Ò °ÐÑ6Ô6Ð6ð	7ð 	7ð 	7ñ 	7ô 	7ð 	7ð 	7ð 	7ð 	7ð 	7ð 	7øøøð 	7ð 	7ð 	7ð 	7ð × Ò  Ñ#Ô#ˆØ×Ò˜Ô*¨FÑ3Ô3Ð3Ð3Ð3s   Â'CÃCÃCc                ó¼  — t          j        d¦  «        }|                      t          ¦  «        5  t	          j        d|¬¦  «        }d d d ¦  «         n# 1 swxY w Y   t	          j        d¬¦  «        }||_        |                      |j        j	        d¦  «         |j        }|                      t          ¦  «        5  t	          j        d||¬¦  «         d d d ¦  «         n# 1 swxY w Y   |                      t          ¦  «        5  t	          j        t	          j
        d¦  «        ||¬	¦  «         d d d ¦  «         n# 1 swxY w Y   t	          j        d||¬¦  «        }|                      |j        |¦  «         |                      |j        |¦  «         |                      |j        d¦  «         |                      |j        d
¦  «         t	          j        t	          j
        d
¦  «        ||¬	¦  «        }|                      |j        |¦  «         |                      |j        |¦  «         |                      |j        d¦  «         |                      |j        d
¦  «         d S )NrÁ   r8   )r   r%   )r   rÆ   Úd5)r   r%   r&   r¥   )rG   r%   r&   r"   )r   r9   ÚassertRaisesÚ
ValueErrorr   r   r%   r   r&   rÇ   rF   r   r   rH   )r   ÚnoteCr˜   ÚnoteFÚi2Úi3s         r   ÚtestIntervalWithOneNoteGivenz!Test.testIntervalWithOneNoteGiven’  sø  € Ý”	˜$‘”ˆØ×Ò�zÑ*Ô*ð 	>ð 	>ÝÔ! t°uÐ=Ñ=Ô=ˆAð	>ð 	>ð 	>ñ 	>ô 	>ð 	>ð 	>ð 	>ð 	>ð 	>ð 	>øøøð 	>ð 	>ð 	>ð 	>åÔ 4Ð(Ñ(Ô(ˆØˆŒØ×Ò˜œÔ1°4Ñ8Ô8Ð8Ø”	ˆð ×Ò�zÑ*Ô*ð 	Ið 	IÝÔ 4°5À%ÐHÑHÔHÐHð	Ið 	Ið 	Iñ 	Iô 	Ið 	Ið 	Ið 	Ið 	Ið 	Ið 	Iøøøð 	Ið 	Ið 	Ið 	Ið ×Ò�zÑ*Ô*ð 	-ð 	-ÝÔ­Ô(BÀ1Ñ(EÔ(EØ(-Ø&+ð-ñ -ô -ð -ð	-ð 	-ð 	-ñ 	-ô 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-øøøð 	-ð 	-ð 	-ð 	-õ Ô D°EÀ5ÐIÑIÔIˆØ�Š�b”l EÑ*Ô*Ð*Ø�Š�b”j %Ñ(Ô(Ð(Ø×Ò˜œ $Ñ'Ô'Ð'Ø×Ò˜œ qÑ)Ô)Ð)åÔ­Ô)CÀAÑ)FÔ)FØ).Ø',ð.ñ .ô .ˆð 	�Š�b”l EÑ*Ô*Ð*Ø�Š�b”j %Ñ(Ô(Ð(Ø×Ò˜œ $Ñ'Ô'Ð'Ø×Ò˜œ qÑ)Ô)Ð)Ð)Ð)s5   ¯AÁAÁAÂ:CÃC"Ã%C"Ä*D9Ä9D=Å D=c                ó*  — t          j        ¦   «         }|                      |j        d¦  «         t          j        ¦   «         }|                      |j        d¦  «         |                      |j        d¦  «         |                      |j        d¦  «         dS )z<
        As of v8, an empty Interval is equal to P1
        g        r   r6   N)r   ÚDiatonicIntervalr   rT   r   rS   r   )r   Úemptys     r   ÚtestEmptyIntervalPropertiesz Test.testEmptyIntervalProperties¶  s‡   € õ Ô)Ñ+Ô+ˆØ×Ò˜œ cÑ*Ô*Ð*åÔ!Ñ#Ô#ˆØ×Ò˜œ cÑ*Ô*Ð*Ø×Ò˜Ô,¨aÑ0Ô0Ð0Ø×Ò˜œ TÑ*Ô*Ð*Ð*Ð*r   N)Ú__name__Ú
__module__Ú__qualname__r   r”   r™   r®   r½   r¿   rÄ   rÈ   rÎ   rÞ   rç   rë   © r   r   r	   r	      sÝ   € € € € € ð)ð )ð )ðvMð vMð vMðp-ð -ð -ðBð Bð Bð6c/ð c/ð c/ðJJð Jð JðKð Kð Kð	2ð 	2ð 	2ð-ð -ð -ð4ð 4ð 4ð.!*ð !*ð !*ðH
+ð 
+ð 
+ð 
+ð 
+r   r	   Ú__main__)Ú
__future__r   ÚunittestÚmusic21r   r   r   r   ÚTestCaser	   rì   ÚmainTestrï   r   r   ú<module>rö      sÕ   ðØ "Ð "Ð "Ð "Ð "Ð "à €€€à Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð ðu+ð u+ð u+ð u+ð u+ˆ8Ôñ u+ô u+ð u+ðp ˆzÒÐØ€N€N€NØ€GÔ�TÑÔÐÐÐð Ðr   