§
    â! hÛ ã                   ót  — d dl Z d dlZd dlZd dlZd dlmc mZ d dl	Z
d dl	mZmZmZmZmZ d dlmZ d dlmZ  ej        g d¢¬¦  «        d„ ¦   «         Z G d„ d¦  «        Zej                             d	d
 ej        d ej        d¦  «        ¬¦  «        g¦  «        ej                             dddidddœg¦  «        ej                             dddgddgg¦  «        d„ ¦   «         ¦   «         ¦   «         Zd„ Zej                             ddddœdddœdddœg¦  «        d„ ¦   «         Zd„ Zd„ Z d „ Z!d!„ Z"d"„ Z#ej                             d#d$ ej        d% ej        d¦  «        ¬¦  «         ej        d& ej        d¦  «        ¬¦  «        g¦  «        d'„ ¦   «         Z$ ej        d¦  «        d(„ ¦   «         Z%d)„ Z&d*„ Z'dS )+é    N)ÚIndexÚ	TimedeltaÚ
merge_asofÚoption_contextÚto_datetime)Ú
MergeError)ÚsÚmsÚusÚns)Úparamsc                 ó   — | j         S )z-
    Resolution for datetimelike dtypes.
    )Úparam)Úrequests    údc:\xampp_lite_8_4\www\timesheet\venv\Lib\site-packages\pandas/tests/reshape/merge/test_merge_asof.pyÚunitr      s   € ð
 Œ=Ðó    c                   óà  — e Zd ZdYd„Zej        d„ ¦   «         Zej        d„ ¦   «         Zej        d„ ¦   «         Zej        d„ ¦   «         Z	ej        d„ ¦   «         Z
ej        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„ Zd„ Zd„ Zd„ Zej                             dddg¦  «        d„ ¦   «         Zd„ Zd„ Z d„ Z!d „ Z"d!„ Z#d"„ Z$d#„ Z%d$„ Z&d%„ Z'd&„ Z(ej                             d' e)d(¦  «         e*j+        d)¬*¦  «        gd+d,g¬-¦  «        d.„ ¦   «         Z,d/„ Z-d0„ Z.d1„ Z/d2„ Z0d3„ Z1d4„ Z2d5„ Z3d6„ Z4d7„ Z5d8„ Z6d9„ Z7d:„ Z8d;„ Z9d<„ Z:d=„ Z;d>„ Z<d?„ Z=d@„ Z>dA„ Z?dB„ Z@dC„ ZAdD„ ZBdE„ ZCej                             dFdG„ dH„ gdIdJg¬-¦  «        ej                             dKdLdMg¦  «        dN„ ¦   «         ¦   «         ZDdO„ ZEdP„ ZFdQ„ ZGej                             dg dR¢¦  «        dS„ ¦   «         ZHdT„ ZIdU„ ZJdV„ ZKdW„ ZLdXS )ZÚTestAsOfMergeFc                 ó–   — |r-|                      ddgd¬¦  «                             d¬¦  «        }t          |j        ¦  «        |_        |S )NÚtimeÚtickerÚlast)ÚkeepT©Údrop)Údrop_duplicatesÚreset_indexr   r   )ÚselfÚdfÚdedupes      r   Ú	prep_datazTestAsOfMerge.prep_data   sX   € Øð 	Ø×#Ò# V¨XÐ$6¸VÐ#ÑDÔD×PÒPØð Qñ ô ˆBõ ˜bœgÑ&Ô&ˆŒØˆ	r   c                 ó˜  — t          j        g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d	¢g d
¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢gd                     d¦  «        ¬¦  «        }|d                              d¦  «        |d<   |d                              d¦  «        |d<   |                      |¦  «        S ) N©ú20160525 13:30:00.023ÚMSFTú51.9500Ú75ÚNASDAQ©ú20160525 13:30:00.038r&   r'   Ú155r)   ©ú20160525 13:30:00.048ÚGOOGz720.7700Ú100r)   ©r.   r/   z720.9200r0   r)   ©r.   r/   ú720.9300Ú200r)   ©r.   r/   r3   Ú300r)   ©r.   r/   r3   Ú600r)   ©r.   r/   r3   Ú44r)   ©ú20160525 13:30:00.074ÚAAPLú98.6700Ú478343r)   ©ú20160525 13:30:00.075r=   r>   r?   r)   ©rA   r=   z98.6600Ú6r)   ©rA   r=   ú98.6500Ú30r)   ©rA   r=   rE   r(   r)   ©rA   r=   rE   Ú20r)   ©rA   r=   rE   Ú35r)   ©rA   r=   rE   Ú10r)   ©rA   r=   ú98.5500rC   ÚARCA©ú20160525 13:30:00.076r=   ú98.5600Ú1000rP   ©rR   r=   rS   r4   rP   ©rR   r=   rS   r6   rP   ©rR   r=   rS   Ú400rP   ©rR   r=   rS   r8   rP   ©ú20160525 13:30:00.078r&   r'   Ú783r)   ©r[   r&   r'   r0   r)   ú'time,ticker,price,quantity,marketCenterú,©ÚcolumnsÚpriceÚfloat64ÚquantityÚint64©ÚpdÚ	DataFrameÚsplitÚastyper"   ©r   r    s     r   ÚtradeszTestAsOfMerge.trades&   sn  € åŒ\àLÐLÐLØMÐMÐMØNÐNÐNØNÐNÐNØNÐNÐNØNÐNÐNØNÐNÐNØMÐMÐMØPÐPÐPØPÐPÐPØKÐKÐKØLÐLÐLØLÐLÐLØLÐLÐLØLÐLÐLØLÐLÐLØIÐIÐIØIÐIÐIØLÐLÐLØKÐKÐKØKÐKÐKØKÐKÐKØKÐKÐKØKÐKÐKØMÐMÐMØMÐMÐMØMÐMÐMð7ð: >×CÒCÀCÑHÔHð=
ñ 
ô 
ˆð@ ˜”k×(Ò(¨Ñ3Ô3ˆˆ7‰Ø˜Jœ×.Ò.¨wÑ7Ô7ˆˆ:‰Ø�~Š~˜bÑ!Ô!Ð!r   c                 óZ  — t          j        g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d	¢gd
                     d¦  «        ¬¦  «        }|d                              d¦  «        |d<   |d                              d¦  «        |d<   |                      |d¬¦  «        S )N©r%   r/   ú720.50ú720.93©r%   r&   ú51.95rr   ©ú20160525 13:30:00.041r&   rr   rr   ©r.   r/   ro   rp   ©ú20160525 13:30:00.072r/   ro   z720.88©rA   r=   ú98.55ú98.56©rR   r=   ry   rz   ©r[   r&   rr   rr   ©r[   r&   ú51.92rr   útime,ticker,bid,askr_   r`   Úbidrc   ÚaskT©r!   rf   rk   s     r   ÚquoteszTestAsOfMerge.quotesL   s  € åŒ\àEÐEÐEØCÐCÐCØCÐCÐCØEÐEÐEØEÐEÐEØEÐEÐEØEÐEÐEØEÐEÐEØCÐCÐCØCÐCÐCØCÐCÐCØCÐCÐCØCÐCÐCØCÐCÐCØCÐCÐCØCÐCÐCð!ð$ *×/Ò/°Ñ4Ô4ð'
ñ 
ô 
ˆð* �u”I×$Ò$ YÑ/Ô/ˆˆ5‰	Ø�u”I×$Ò$ YÑ/Ô/ˆˆ5‰	Ø�~Š~˜b¨ˆ~Ñ.Ô.Ð.r   c                 óB  — t          j        g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢d	d
dddt          j        t          j        gg d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢gd                     d¦  «        ¬¦  «        }|d                               d!¦  «        |d <   |d"                              d#¦  «        |d"<   |d$                              d!¦  «        |d$<   |d%                              d!¦  «        |d%<   |                      |¦  «        S ©&N©r%   r&   rr   r(   r)   rr   rr   ©r+   r&   rr   r,   r)   rr   rr   ©r.   r/   z720.77r0   r)   ú720.5rp   ©r.   r/   z720.92r0   r)   r‰   rp   ©r.   r/   rp   r4   r)   r‰   rp   ©r.   r/   rp   r6   r)   r‰   rp   ©r.   r/   rp   r8   r)   r‰   rp   ©r.   r/   rp   r:   r)   r‰   rp   r<   r=   ú98.67r?   r)   ©rA   r=   r�   r?   r)   ry   rz   ©rA   r=   ú98.66rC   r)   ry   rz   ©rA   r=   ú98.65rF   r)   ry   rz   ©rA   r=   r”   r(   r)   ry   rz   ©rA   r=   r”   rI   r)   ry   rz   ©rA   r=   r”   rK   r)   ry   rz   ©rA   r=   r”   rM   r)   ry   rz   ©rA   r=   ry   rC   rP   ry   rz   ©rR   r=   rz   rT   rP   ry   rz   ©rR   r=   rz   r4   rP   ry   rz   ©rR   r=   rz   r6   rP   ry   rz   ©rR   r=   rz   rX   rP   ry   rz   ©rR   r=   rz   r8   rP   ry   rz   ©r[   r&   rr   r\   r)   r~   rr   ©r[   r&   rr   r0   r)   r~   rr   ú/time,ticker,price,quantity,marketCenter,bid,askr_   r`   rb   rc   rd   re   r€   r�   ©rg   rh   ÚnpÚnanri   rj   r"   rk   s     r   ÚasofzTestAsOfMerge.asofg   ó_  € åŒ\ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ð ,ØØØØÝ”FÝ”Fððð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðWtðj F×KÒKÈCÑPÔPðmw
ñ w
ô w
ˆðp ˜”k×(Ò(¨Ñ3Ô3ˆˆ7‰Ø˜Jœ×.Ò.¨wÑ7Ô7ˆˆ:‰Ø�u”I×$Ò$ YÑ/Ô/ˆˆ5‰	Ø�u”I×$Ò$ YÑ/Ô/ˆˆ5‰	Ø�~Š~˜bÑ!Ô!Ð!r   c                 óB  — t          j        g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢d	d
dddt          j        t          j        gg d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢gd                     d¦  «        ¬¦  «        }|d                               d!¦  «        |d <   |d"                              d#¦  «        |d"<   |d$                              d!¦  «        |d$<   |d%                              d!¦  «        |d%<   |                      |¦  «        S r…   r¢   rk   s     r   Ú	tolerancezTestAsOfMerge.toleranceg  r¦   r   c                 ó6  — t          j        dddddt          j        t          j        gg d¢g d¢g d¢g d	¢g d
¢g d¢g d¢dddddt          j        t          j        gdddddt          j        t          j        gdddddt          j        t          j        gdddddt          j        t          j        gdddddt          j        t          j        gdddddt          j        t          j        gdddddt          j        t          j        gdddddt          j        t          j        gdddddt          j        t          j        gdddddt          j        t          j        gg d¢g d¢g d¢g d¢g d¢g d¢g d ¢g d!¢g d!¢gd"                     d#¦  «        ¬$¦  «        }|d%                              d&¦  «        |d%<   |d'                              d(¦  «        |d'<   |d)                              d&¦  «        |d)<   |d*                              d&¦  «        |d*<   |                      |¦  «        S ©+Nr%   r&   rr   r(   r)   r‡   rˆ   rŠ   r‹   rŒ   r�   rŽ   r<   r=   r�   r?   rA   r’   rC   r”   rF   rI   rK   rM   ry   rP   rš   r›   rœ   r�   rž   )r[   r&   rr   r\   r)   rr   rr   )r[   r&   rr   r0   r)   rr   rr   r¡   r_   r`   rb   rc   rd   re   r€   r�   r¢   )r   Údatapathr    s      r   Úallow_exact_matchesz!TestAsOfMerge.allow_exact_matchesg  óû  € åŒ\ð ,ØØØØÝ”FÝ”Fððð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ð ,ØØØØÝ”FÝ”Fðð ,ØØØØÝ”FÝ”Fðð ,ØØØØÝ”FÝ”Fðð ,ØØØØÝ”FÝ”Fðð ,ØØØØÝ”FÝ”Fðð ,ØØØØÝ”FÝ”Fðð ,ØØØØÝ”FÝ”Fðð ,ØØØØÝ”FÝ”Fðð )¨&°'¸3ÀÍÌÕPRÔPVÐWØ(¨&°'¸3ÀÍÌÕPRÔPVÐWðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðwdðJ F×KÒKÈCÑPÔPðMg
ñ g
ô g
ˆðP ˜”k×(Ò(¨Ñ3Ô3ˆˆ7‰Ø˜Jœ×.Ò.¨wÑ7Ô7ˆˆ:‰Ø�u”I×$Ò$ YÑ/Ô/ˆˆ5‰	Ø�u”I×$Ò$ YÑ/Ô/ˆˆ5‰	Ø�~Š~˜bÑ!Ô!Ð!r   c                 ó6  — t          j        dddddt          j        t          j        gg d¢g d¢g d¢g d	¢g d
¢g d¢g d¢dddddt          j        t          j        gdddddt          j        t          j        gdddddt          j        t          j        gdddddt          j        t          j        gdddddt          j        t          j        gdddddt          j        t          j        gdddddt          j        t          j        gdddddt          j        t          j        gdddddt          j        t          j        gdddddt          j        t          j        gg d¢g d¢g d¢g d¢g d¢g d¢g d ¢g d!¢g d!¢gd"                     d#¦  «        ¬$¦  «        }|d%                              d&¦  «        |d%<   |d'                              d(¦  «        |d'<   |d)                              d&¦  «        |d)<   |d*                              d&¦  «        |d*<   |                      |¦  «        S rª   r¢   rk   s     r   Ú!allow_exact_matches_and_tolerancez/TestAsOfMerge.allow_exact_matches_and_toleranceW  r­   r   c                 óü   — t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢g d¢dœ¦  «        }t          ||d¬	¦  «        }t          j        ||¦  «         d
S )údoc-string examples©é   é   é
   ©ÚaÚbÚc©r·   Úleft_val©r³   é   é   é   é   ©r·   Ú	right_val©r³   r¾   rÀ   ©r·   r»   rÂ   r·   ©ÚonN©rg   rh   r   ÚtmÚassert_frame_equal©r   ÚleftÚrightÚexpectedÚresults        r   Útest_examples1zTestAsOfMerge.test_examples1G  s™   € åŒ| * * *¸/¸/¸/ÐJÐJÑKÔKˆÝ” ? ? ?ÀÀÀÐQÐQÑRÔRˆå”<Ø�*�*¨/¨/¨/È	È	È	ÐRÐRñ
ô 
ˆõ ˜D %¨CÐ0Ñ0Ô0ˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó~  — |dk    rt          j        d¦  «         t          j        t	          g d¢¦  «                             d|› d�¦  «        g d¢g d¢g d¢d	œg d	¢¬
¦  «        }t          j        t	          g d¢¦  «                             d|› d�¦  «        g d¢g d¢g d¢dœg d¢¬
¦  «        }t          ||dd¬¦  «         t          ||ddt          d¦  «        ¬¦  «         t          j        t	          g d¢¦  «                             d|› d�¦  «        g d¢g d¢g d¢t          j	        dt          j	        t          j	        t          j	        gt          j	        dt          j	        t          j	        t          j	        gdœg d¢¬
¦  «        }t          ||ddt          d¦  «        d¬¦  «        }t          j        ||¦  «         dS )r±   r	   zNThis test is invalid for unit='s' because that would round the trades['time']])r%   r+   r.   r.   r.   úM8[ú]©r&   r&   r/   r/   r=   ©çš™™™™ùI@rÕ   g\�Âõ(††@ç�Âõ(\‡†@g     €X@©éK   é›   éd   rÚ   rÚ   )r   r   rb   rd   r`   )r%   r%   ú20160525 13:30:00.030rt   r.   ú20160525 13:30:00.049rw   rA   )r/   r&   r&   r&   r/   r=   r/   r&   )ç     „†@rÕ   ç\�Âõ(üI@ç…ëQ¸þI@rÝ   ç�Âõ(\X@rÝ   gáz®GJ@)ç=
×£p‡†@ç{®GáúI@ç=
×£pýI@ç      J@rá   çq=
×£€X@g×£p=
‡†@g¤p=
×J@)r   r   r€   r�   r   r   ©rÆ   ÚbyÚ2ms©rÆ   rç   r¨   rÞ   rã   )r   r   rb   rd   r€   r�   Ú10msF©rÆ   rç   r¨   r¬   N)ÚpytestÚskiprg   rh   r   rj   r   r   r£   r¤   rÈ   rÉ   )r   r   rl   rƒ   rÍ   rÎ   s         r   Útest_examples2zTestAsOfMerge.test_examples2S  sN  € à�3Š;ˆ;ÝŒKð,ñô ð õ ”å#ðð ð ñô ÷ ’&˜˜t˜˜˜Ñ'Ô'ØBÐBÐBØ>Ð>Ð>Ø4Ð4Ð4ðð ð <Ð;Ð;ð
ñ 
ô 
ˆõ$ ”å#ð	ð 	ð 	ñô ÷ ’&˜˜t˜˜˜Ñ'Ô'ð	ð 	ð 	ð SÐRÐRØRÐRÐRð1ð ð4 5Ð4Ð4ð7
ñ 
ô 
ˆõ< 	�6˜6 f°Ð:Ñ:Ô:Ð:å�6˜6 f°ÅYÈuÑEUÔEUÐVÑVÔVÐVå”<å#ðð ð ñô ÷ ’&˜˜t˜˜˜Ñ'Ô'ØBÐBÐBØ>Ð>Ð>Ø4Ð4Ð4Ýœ ¥r¤v­r¬vµr´vÐ>Ýœ ¥r¤v­r¬vµr´vÐ>ðð ð  JÐIÐIð#
ñ 
ô 
ˆõ( ØØØØÝ Ñ'Ô'Ø %ð
ñ 
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó  — t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢ddt          j        gdœ¦  «        }t	          ||d	d
¬¦  «        }t          j        ||¦  «         dS )r±   r²   r¶   rº   r¼   rÁ   r³   r¿   rÄ   r·   Úforward©rÆ   Ú	directionN©rg   rh   r£   r¤   r   rÈ   rÉ   rÊ   s        r   Útest_examples3zTestAsOfMerge.test_examples3¬  s¡   € õ Œ| * * *¸/¸/¸/ÐJÐJÑKÔKˆÝ” ? ? ?ÀÀÀÐQÐQÑRÔRˆå”<Ø�*�*¨/¨/¨/ÈÈAÍrÌvÈÐWÐWñ
ô 
ˆõ ˜D %¨C¸9ÐEÑEÔEˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 óþ   — t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢g d¢dœ¦  «        }t          ||dd	¬
¦  «        }t          j        ||¦  «         dS )r±   r²   r¶   rº   r¼   rÁ   )r³   r¿   rÀ   rÄ   r·   Únearestrñ   NrÇ   rÊ   s        r   Útest_examples4zTestAsOfMerge.test_examples4º  s�   € õ Œ| * * *¸/¸/¸/ÐJÐJÑKÔKˆÝ” ? ? ?ÀÀÀÐQÐQÑRÔRˆå”<Ø�*�*¨/¨/¨/È	È	È	ÐRÐRñ
ô 
ˆõ ˜D %¨C¸9ÐEÑEÔEˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 óZ   — |}t          ||dd¬¦  «        }t          j        ||¦  «         d S )Nr   r   ræ   ©r   rÈ   rÉ   ©r   rl   r¥   rƒ   rÍ   rÎ   s         r   Ú
test_basiczTestAsOfMerge.test_basicÈ  s6   € Øˆå˜F F¨v¸(ÐCÑCÔCˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó  — |}|j                              d¦  «        |_         |j                              d¦  «        |_         |j                              d¦  «        |_         t          ||dd¬¦  «        }t          j        ||¦  «         d S )NÚcategoryr   r   ræ   )r   rj   r   rÈ   rÉ   rú   s         r   Útest_basic_categoricalz$TestAsOfMerge.test_basic_categoricalÎ  s{   € ØˆØœ×,Ò,¨ZÑ8Ô8ˆŒØœ×,Ò,¨ZÑ8Ô8ˆŒØ"œ/×0Ò0°Ñ<Ô<ˆŒå˜F F¨v¸(ÐCÑCÔCˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó¸   — |}|                      d¦  «        }t          ||ddd¬¦  «        }|j        |_        ||j                 }t	          j        ||¦  «         d S )Nr   Tr   )Ú
left_indexÚright_onrç   )Ú	set_indexr   Úindexra   rÈ   rÉ   rú   s         r   Útest_basic_left_indexz#TestAsOfMerge.test_basic_left_index×  si   € àˆØ×!Ò! &Ñ)Ô)ˆåØ�F t°fÀð
ñ 
ô 
ˆð  œˆŒà˜FœNÔ+ˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó†   — |}|                      d¦  «        }t          ||ddd¬¦  «        }t          j        ||¦  «         d S )Nr   Tr   )Úleft_onÚright_indexrç   ©r  r   rÈ   rÉ   rú   s         r   Útest_basic_right_indexz$TestAsOfMerge.test_basic_right_indexå  sT   € ØˆØ×!Ò! &Ñ)Ô)ˆåØ�F F¸Àð
ñ 
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 óÖ   — |                      d¦  «        }|                      d¦  «        }|                      d¦  «        }t          ||ddd¬¦  «        }t          j        ||¦  «         d S )Nr   Tr   ©r   r  rç   r  rú   s         r   Ú!test_basic_left_index_right_indexz/TestAsOfMerge.test_basic_left_index_right_indexî  ss   € Ø—>’> &Ñ)Ô)ˆØ×!Ò! &Ñ)Ô)ˆØ×!Ò! &Ñ)Ô)ˆåØ�F t¸À(ð
ñ 
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 óì   — |                      ddg¦  «        }|                      d¦  «        }t          j        t          d¬¦  «        5  t	          ||dd¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   rb   zleft can only have one index©ÚmatchT©r   r  ©r  rì   Úraisesr   r   ©r   rl   rƒ   s      r   Útest_multi_index_leftz#TestAsOfMerge.test_multi_index_leftø  sÒ   € à×!Ò! 6¨7Ð"3Ñ4Ô4ˆØ×!Ò! &Ñ)Ô)ˆÝŒ]�:Ð-KÐLÑLÔLð 	Jð 	JÝ�v˜v°$ÀDÐIÑIÔIÐIð	Jð 	Jð 	Jñ 	Jô 	Jð 	Jð 	Jð 	Jð 	Jð 	Jð 	Jð 	Jøøøð 	Jð 	Jð 	Jð 	Jð 	Jð 	Jó   ÁA)Á)A-Á0A-c                 óì   — |                      d¦  «        }|                      ddg¦  «        }t          j        t          d¬¦  «        5  t	          ||dd¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   r€   zright can only have one indexr  Tr  r  r  s      r   Útest_multi_index_rightz$TestAsOfMerge.test_multi_index_rightÿ  sÑ   € à×!Ò! &Ñ)Ô)ˆØ×!Ò! 6¨5 /Ñ2Ô2ˆÝŒ]�:Ð-LÐMÑMÔMð 	Jð 	JÝ�v˜v°$ÀDÐIÑIÔIÐIð	Jð 	Jð 	Jñ 	Jô 	Jð 	Jð 	Jð 	Jð 	Jð 	Jð 	Jð 	Jøøøð 	Jð 	Jð 	Jð 	Jð 	Jð 	Jr  c                 óî   — |                      d¦  «        }|                      d¦  «        }d}t          j        t          |¬¦  «        5  t	          ||ddd¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   z:Can only pass argument "left_on" OR "left_index" not both.r  rb   T)r  r   r  r  ©r   rl   rƒ   Úmsgs       r   Útest_on_and_index_left_onz'TestAsOfMerge.test_on_and_index_left_on  sÈ   € à×!Ò! &Ñ)Ô)ˆØ×!Ò! &Ñ)Ô)ˆØJˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	ð 	ÝØ˜¨¸DÈdðñ ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	ó   ÁA*Á*A.Á1A.c                 óî   — |                      d¦  «        }|                      d¦  «        }d}t          j        t          |¬¦  «        5  t	          ||ddd¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   z<Can only pass argument "right_on" OR "right_index" not both.r  r€   T)r  r   r  r  r  s       r   Útest_on_and_index_right_onz(TestAsOfMerge.test_on_and_index_right_on  sÈ   € Ø×!Ò! &Ñ)Ô)ˆØ×!Ò! &Ñ)Ô)ˆØLˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	ð 	ÝØ˜¨¸4ÈTðñ ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	r  c                 ó\   — |}t          ||ddd¬¦  «        }t          j        ||¦  «         d S )Nr   r   )rÆ   Úleft_byÚright_byrù   rú   s         r   Útest_basic_left_by_right_byz)TestAsOfMerge.test_basic_left_by_right_by  sA   € àˆåØ�F˜v¨xÀ(ð
ñ 
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó¾   — |}||j         dk             }t          ||dd¬¦  «        }t          j        |j        |j         dk    ddgf<   t          j        ||¦  «         d S )Nr&   r   r   ræ   r€   r�   )r   r   r£   r¤   ÚlocrÈ   rÉ   )r   rl   r¥   rƒ   rÍ   ÚqrÎ   s          r   Útest_missing_right_byz#TestAsOfMerge.test_missing_right_by"  se   € Øˆà�6”= FÒ*Ô+ˆÝ˜F A¨&°XÐ>Ñ>Ô>ˆÝBDÄ&ˆŒ�X”_¨Ò.°¸°Ð>Ñ?Ý
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó   — t          j        t          g d¢¦  «        g d¢g d¢g d¢g d¢dœg d¢¬¦  «        }t          j        t          g d¢¦  «        g d	¢g d
¢g d¢g d¢dœg d¢¬¦  «        }t          j        t          g d¢¦  «        g d¢g d¢g d¢g d¢t          j        dddt          j        gt          j        dddt          j        gdœg d¢¬¦  «        }t          ||dddg¬¦  «        }t          j        ||¦  «         d S )N©r%   r%   z20160525 13:30:00.046r.   ú20160525 13:30:00.050rÓ   ©rP   ÚNSDQr+  ÚBATSr+  rÔ   r×   ©r   r   Úexchrb   rd   r`   ©r%   r%   rÛ   rt   z20160525 13:30:00.045rÜ   )r/   r&   r&   r&   r/   r=   ©r,  r+  rP   rP   r+  rP   ©ç®Gáz„†@rÕ   rÞ   rß   rÝ   rà   ©rÖ   râ   rã   rä   rá   rå   ©r   r   r.  r€   r�   rÕ   rÝ   r2  râ   rá   rÖ   ©r   r   r.  rb   rd   r€   r�   r   r   r.  ræ   )rg   rh   r   r£   r¤   r   rÈ   rÉ   )r   rl   rƒ   rÍ   rÎ   s        r   Útest_multibyzTestAsOfMerge.test_multiby*  s¬  € å”å#ðð ð ñô ð CÐBÐBØ@Ð@Ð@Ø>Ð>Ð>Ø4Ð4Ð4ðð ð DÐCÐCð!
ñ 
ô 
ˆõ& ”å#ðð ð ñ	ô 	ð KÐJÐJØHÐHÐHØCÐCÐCØCÐCÐCðð ð  =Ð<Ð<ð#
ñ 
ô 
ˆõ( ”<å#ðð ð ñô ð CÐBÐBØ@Ð@Ð@Ø>Ð>Ð>Ø4Ð4Ð4Ýœ  v¨vµr´vÐ>Ýœ  v¨vµr´vÐ>ðð ð" RÐQÐQð%
ñ 
ô 
ˆõ* ˜F F¨v¸8ÀVÐ:LÐMÑMÔMˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   ÚdtypeÚobjectÚstringc                 ó�  — t          j        t          g d¢¦  «        g d¢g d¢g d¢g d¢dœg d¢¬¦  «        }|                     ||dœ¦  «        }t          j        t          g d	¢¦  «        g d
¢g d¢g d¢g d¢dœg d¢¬¦  «        }|                     ||dœ¦  «        }t          j        t          g d¢¦  «        g d¢g d¢g d¢g d¢t          j        dddt          j        gt          j        dddt          j        gdœg d¢¬¦  «        }|                     ||dœ¦  «        }t          ||dddg¬¦  «        }t          j        ||¦  «         d S )Nr(  )r   r   r³   r³   r½   r*  rÔ   r×   r-  r`   )r   r.  r/  )r³   r   r   r   r³   r½   r0  r1  r3  r4  rÕ   rÝ   r2  râ   rá   rÖ   r5  r   r   r.  ræ   )	rg   rh   r   rj   r£   r¤   r   rÈ   rÉ   )r   r7  rl   rƒ   rÍ   rÎ   s         r   Ú test_multiby_heterogeneous_typesz.TestAsOfMerge.test_multiby_heterogeneous_typesk  sò  € õ ”å#ðð ð ñô ð *˜/˜/Ø@Ð@Ð@Ø>Ð>Ð>Ø4Ð4Ð4ðð ð DÐCÐCð!
ñ 
ô 
ˆð$ —’¨%¸Ð?Ð?Ñ@Ô@ˆå”å#ðð ð ñ	ô 	ð -Ð,Ð,ØHÐHÐHØCÐCÐCØCÐCÐCðð ð  =Ð<Ð<ð#
ñ 
ô 
ˆð& —’¨%¸Ð?Ð?Ñ@Ô@ˆå”<å#ðð ð ñô ð *˜/˜/Ø@Ð@Ð@Ø>Ð>Ð>Ø4Ð4Ð4Ýœ  v¨vµr´vÐ>Ýœ  v¨vµr´vÐ>ðð ð" RÐQÐQð%
ñ 
ô 
ˆð( —?’?¨e¸UÐ#CÐ#CÑDÔDˆå˜F F¨v¸8ÀVÐ:LÐMÑMÔMˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c           	      ó¤  — t          j        t          d¦  «        ddgt          d¦  «        ddgt          d¦  «        ddgt          d¦  «        ddggg d¢¬¦  «                             d	¦  «        }|j        t          j        d
¦  «        z
  |_        t          j        t          d¦  «        dddgt          d¦  «        dddgt          d¦  «        dddgt          d¦  «        dddggg d¢¬¦  «                             d	¦  «        }d}t          j        t          |¬¦  «        5  t          ||ddddg¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NÚ20160602r³   r·   r½   Ú20160603r¸   ©r   Úk1Úk2r`   r   r   Ú20160502ç      ð?ç       @Ú20160503ç      @ç      @©r   r@  rA  Úvalueúincompatible merge keysr  Tr@  rA  r  )
rg   rh   r   r  r  Ú	Timestamprì   r  r   r   )r   rË   rÌ   r  s       r   Útest_mismatched_index_dtypez)TestAsOfMerge.test_mismatched_index_dtype°  sÔ  € åŒ|å˜ZÑ(Ô(¨!¨SÐ1Ý˜ZÑ(Ô(¨!¨SÐ1Ý˜ZÑ(Ô(¨!¨SÐ1Ý˜ZÑ(Ô(¨!¨SÐ1ð	ð )Ð(Ð(ð
ñ 
ô 
÷ Š)�FÑ
Ô
ð 	ð ”Z¥"¤,¨q¡/¤/Ñ1ˆŒ
å”å˜ZÑ(Ô(¨!¨S°#Ð6Ý˜ZÑ(Ô(¨!¨S°#Ð6Ý˜ZÑ(Ô(¨!¨S°#Ð6Ý˜ZÑ(Ô(¨!¨S°#Ð6ð	ð 2Ð1Ð1ð
ñ 
ô 
÷ Š)�FÑ
Ô
ð 	ð (ˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	Xð 	XÝ�t˜U¨tÀÈ4ÐQUÈ,ÐWÑWÔWÐWð	Xð 	Xð 	Xñ 	Xô 	Xð 	Xð 	Xð 	Xð 	Xð 	Xð 	Xð 	Xøøøð 	Xð 	Xð 	Xð 	Xð 	Xð 	Xs   Ä!EÅE	ÅE	c           	      óž  — t          j        t          d¦  «        ddgt          d¦  «        ddgt          d¦  «        ddgt          d¦  «        ddggg d¢¬¦  «                             d	¦  «        }t          j        t          d
¦  «        dddgt          d
¦  «        dddgt          d¦  «        dddgt          d¦  «        dddggg d¢¬¦  «                             d	¦  «        }t          j        t          d¦  «        dddgt          d¦  «        dddgt          d¦  «        dddgt          d¦  «        dddggg d¢¬¦  «                             d	¦  «        }t	          ||ddddg¬¦  «        }t          j        ||¦  «         t          j        t          d¬¦  «        5  t	          ||ddddgdg¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr=  r³   r·   r½   r>  r¸   r?  r`   r   rB  rC  rD  rE  rF  rG  rH  Tr@  rA  r  z,left_by and right_by must be the same lengthr  )r   r  r   r!  )
rg   rh   r   r  r   rÈ   rÉ   rì   r  r   rÊ   s        r   Útest_multiby_indexedz"TestAsOfMerge.test_multiby_indexedÌ  s‚  € åŒ|å˜ZÑ(Ô(¨!¨SÐ1Ý˜ZÑ(Ô(¨!¨SÐ1Ý˜ZÑ(Ô(¨!¨SÐ1Ý˜ZÑ(Ô(¨!¨SÐ1ð	ð )Ð(Ð(ð
ñ 
ô 
÷ Š)�FÑ
Ô
ð 	õ ”å˜ZÑ(Ô(¨!¨S°#Ð6Ý˜ZÑ(Ô(¨!¨S°#Ð6Ý˜ZÑ(Ô(¨!¨S°#Ð6Ý˜ZÑ(Ô(¨!¨S°#Ð6ð	ð 2Ð1Ð1ð
ñ 
ô 
÷ Š)�FÑ
Ô
ð 	õ ”<å˜ZÑ(Ô(¨!¨S°#Ð6Ý˜ZÑ(Ô(¨!¨S°#Ð6Ý˜ZÑ(Ô(¨!¨S°#Ð6Ý˜ZÑ(Ô(¨!¨S°#Ð6ð	ð 2Ð1Ð1ð
ñ 
ô 
÷ Š)�FÑ
Ô
ð 	õ Ø�% D°dÀÀd¸|ð
ñ 
ô 
ˆõ 	Ô˜h¨Ñ/Ô/Ð/åŒ]ÝÐLð
ñ 
ô 
ð 
	ð 
	õ ØØØØ Ø˜t˜Ø˜ðñ ô ð ð
	ð 
	ð 
	ñ 
	ô 
	ð 
	ð 
	ð 
	ð 
	ð 
	ð 
	ð 
	øøøð 
	ð 
	ð 
	ð 
	ð 
	ð 
	s   ÆGÇGÇ	Gc           
      óp
  — t          j        g g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘d	d
dddt          j        t          j        g‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d ¢‘g d!¢‘g d"¢‘g d"¢‘g d#¢‘g d#¢‘g d$¢‘g d%¢‘g d&¢‘g d'¢‘g d(¢‘g d)¢‘g d*¢‘g d+¢‘g d,¢‘g d-¢‘g d.¢‘g d/¢‘g d0¢‘g d1¢‘g d2¢‘g d2¢‘g d3¢‘g d4¢‘g d5¢‘g d6¢‘g d7¢‘g d8¢‘g d9¢‘g d:¢‘g d;¢‘g d;¢‘g d<¢‘g d=¢‘g d>¢‘g d?¢‘g d@¢‘g dA¢‘g dB¢‘g dC¢‘g dD¢‘g dE¢‘g dF¢‘g dG¢‘g dH¢‘g dI¢‘g dI¢‘dJ                     dK¦  «        ¬L¦  «        }|dM                              dN¦  «        |dM<   |dO                              dP¦  «        |dO<   |dQ                              dN¦  «        |dQ<   |dR                              dN¦  «        |dR<   |                      |¦  «        }t          j        g g dS¢‘g dT¢‘g dU¢‘g dV¢‘g dW¢‘g dX¢‘g dY¢‘g dZ¢‘g d[¢‘g d\¢‘g d]¢‘g d^¢‘g d_¢‘g d`¢‘g da¢‘g db¢‘g dc¢‘g dc¢‘g dd¢‘g de¢‘g df¢‘g dg¢‘g dh¢‘g de¢‘g di¢‘g dj¢‘g dj¢‘g dk¢‘g dl¢‘g dm¢‘g dn¢‘g do¢‘g dp¢‘g dp¢‘g dq¢‘g dq¢‘g dr¢‘g ds¢‘g dt¢‘g du¢‘g dv¢‘g dw¢‘g dx¢‘g dy¢‘g dz¢‘g d{¢‘g d|¢‘g d}¢‘g d~¢‘g d¢‘g d€¢‘g d€¢‘g d�¢‘g d‚¢‘g dƒ¢‘g d„¢‘g d…¢‘g d†¢‘g d‡¢‘g dˆ¢‘g d‰¢‘g d‰¢‘g dŠ¢‘g d‹¢‘g dŒ¢‘g d�¢‘g dŽ¢‘g d�¢‘g d�¢‘g d‘¢‘g d’¢‘g d“¢‘g d”¢‘g d•¢‘g d–¢‘g d—¢‘g d—¢‘d˜                     dK¦  «        ¬L¦  «        }|dM                              dN¦  «        |dM<   |dO                              dP¦  «        |dO<   |                      |¦  «        }t          j        g g d™¢‘g dš¢‘g d›¢‘g dœ¢‘g dœ¢‘g dœ¢‘g dœ¢‘g d�¢‘g dž¢‘g dŸ¢‘g dŸ¢‘g dŸ¢‘g d ¢‘g d ¢‘g d ¢‘g d¡¢‘g d¢¢‘g d£¢‘g d¤¢‘g d¥¢‘g d¦¢‘g d§¢‘g d¨¢‘g d¨¢‘g d¨¢‘g d¨¢‘g d©¢‘g dª¢‘g d«¢‘g d¬¢‘g d¬¢‘g d­¢‘g d®¢‘g d®¢‘g d¯¢‘g d°¢‘g d¯¢‘g d¯¢‘g d°¢‘g d±¢‘g d±¢‘g d²¢‘g d³¢‘g d³¢‘g d´¢‘g dµ¢‘g d¶¢‘g d¶¢‘g d·¢‘g d·¢‘g d¸¢‘g d¹¢‘g d¹¢‘g dº¢‘g d¹¢‘g dº¢‘d»                     dK¦  «        ¬L¦  «        }|dQ                              dN¦  «        |dQ<   |dR                              dN¦  «        |dR<   |                      |d¼¬½¦  «        }t          ||d¾d¿¬À¦  «        }t          j	        ||¦  «         d S )ÁNr†   r‡   rˆ   rŠ   r‹   rŒ   r�   rŽ   r<   r=   r�   r?   r)   r�   r‘   r“   r•   r–   r—   r˜   r™   rš   r›   rœ   r�   rž   rŸ   r    )ú20160525 13:30:00.084r=   z98.64Ú40r)   ry   rz   )rP  r=   ry   Ú149ÚEDGXry   rz   )ú20160525 13:30:00.086r=   rz   Ú500rP   ry   ú98.63)ú20160525 13:30:00.104r=   rV  Ú647rS  ú98.62rV  )rW  r=   rV  r6   rS  rY  rV  )rW  r=   rV  Ú50r)   rY  rV  )rW  r=   rV  Ú70r)   rY  rV  )rW  r=   rV  Ú1r)   rY  rV  )rW  r=   rV  Ú62r)   rY  rV  )rW  r=   rV  rM   r)   rY  rV  )rW  r=   rV  r0   rP   rY  rV  )ú20160525 13:30:00.105r=   rV  r0   rP   rY  rV  )r^  r=   rV  Ú700rP   rY  rV  )ú20160525 13:30:00.106r=   rV  Ú61rS  rY  rV  )ú20160525 13:30:00.107r=   rV  r0   rP   rY  rV  )rb  r=   rV  Ú53rP   rY  rV  )ú20160525 13:30:00.108r=   rV  r0   rP   rY  rV  )rd  r=   rV  Ú839rP   rY  rV  )ú20160525 13:30:00.115r=   rV  Ú5rS  rY  rV  )ú20160525 13:30:00.118r=   rV  Ú295rS  rY  rV  )rh  r=   rV  rg  rS  rY  rV  )ú20160525 13:30:00.128r=   rV  r0   r)   rY  rV  )rj  r&   r~   r0   rP   r~   rr   )ú20160525 13:30:00.129r=   rY  r0   r)   ú98.61rV  )rk  r=   rY  rM   r)   rl  rV  )rk  r=   rY  Ú59r)   rl  rV  )rk  r=   rY  Ú31r)   rl  rV  )rk  r=   rY  Ú69r)   rl  rV  )rk  r=   rY  Ú12r)   rl  rV  )rk  r=   rY  rp  rS  rl  rV  )rk  r=   rY  r0   rP   rl  rV  )ú20160525 13:30:00.130r&   rr   Ú317rP   ú51.93rr   )rq  r&   rr   Ú283rP   rs  rr   )ú20160525 13:30:00.135r&   rs  r0   rS  r~   rr   )ru  r=   rY  r0   rP   rl  rY  )ú20160525 13:30:00.144r=   rY  rp  r)   rl  rY  )rv  r=   rY  Ú88r)   rl  rY  )rv  r=   rY  Ú162r)   rl  rY  )rv  r=   rl  r0   r,  rl  rY  )rv  r=   rY  ra  rP   rl  rY  )rv  r=   rY  Ú25rP   rl  rY  )rv  r=   rY  Ú14rP   rl  rY  )ú20160525 13:30:00.145r=   rY  rp  rP   ú98.6rV  )r{  r=   rY  r0   rP   r|  rV  )r{  r=   rV  r0   r)   r|  rV  r¡   r_   r`   rb   rc   rd   re   r€   r�   r$   r*   r-   r1   r2   r5   r7   r9   r;   r@   rB   rD   rG   rH   rJ   rL   rN   rQ   rU   rV   rW   rY   rZ   r]   )rP  r=   z98.6400rQ  r)   )rP  r=   rO   rR  rS  )rT  r=   rS   rU  rP   )rW  r=   ú98.6300rX  rS  )rW  r=   r}  r6   rS  )rW  r=   r}  rZ  r)   )rW  r=   r}  r[  r)   )rW  r=   r}  r\  r)   )rW  r=   r}  r]  r)   )rW  r=   r}  rM   r)   )rW  r=   r}  r0   rP   )r^  r=   r}  r0   rP   )r^  r=   r}  r_  rP   )r`  r=   r}  ra  rS  )rb  r=   r}  r0   rP   )rb  r=   r}  rc  rP   )rd  r=   r}  r0   rP   )rd  r=   r}  re  rP   )rf  r=   r}  rg  rS  )rh  r=   r}  ri  rS  )rh  r=   r}  rg  rS  )rj  r=   r}  r0   r)   )rj  r&   z51.9200r0   rP   )rk  r=   ú98.6200r0   r)   )rk  r=   r~  rM   r)   )rk  r=   r~  rm  r)   )rk  r=   r~  rn  r)   )rk  r=   r~  ro  r)   )rk  r=   r~  rp  r)   )rk  r=   r~  rp  rS  )rk  r=   r~  r0   rP   )rq  r&   r'   rr  rP   )rq  r&   r'   rt  rP   )ru  r&   z51.9300r0   rS  )ru  r=   r~  r0   rP   )rv  r=   r~  rp  r)   )rv  r=   r~  rw  r)   )rv  r=   r~  rx  r)   )rv  r=   z98.6100r0   r,  )rv  r=   r~  ra  rP   )rv  r=   r~  ry  rP   )rv  r=   r~  rz  rP   )r{  r=   r~  rp  rP   )r{  r=   r~  r0   rP   )r{  r=   r}  r0   r)   r^   rn   rq   rs   ru   rv   rx   r{   r|   r}   )z20160525 13:30:00.079r&   r~   rr   )z20160525 13:30:00.080r=   ry   rz   )rP  r=   ry   rz   )rT  r=   ry   rV  )z20160525 13:30:00.088r=   r”   rV  )z20160525 13:30:00.089r=   rV  rV  )rW  r=   rV  rV  )rW  r=   rY  rV  )r^  r=   rY  rV  )rb  r=   rY  rV  )rf  r=   rY  rV  )rh  r=   rY  rV  )rj  r=   rY  rV  )rk  r=   rY  rV  )rk  r=   rl  rV  )rq  r&   rs  rr   )rq  r=   rl  rV  )z20160525 13:30:00.131r=   rl  rY  )ru  r&   r~   rr   )ru  r=   rl  rY  )z20160525 13:30:00.136r=   rl  rY  )rv  r=   rl  rY  )r{  r=   rl  rY  )r{  r=   rl  rV  )r{  r=   z98.60rV  r   Tr‚   r   r   ræ   )
rg   rh   r£   r¤   ri   rj   r"   r   rÈ   rÉ   )r   r«   rÍ   rl   rƒ   rÎ   s         r   Útest_basic2zTestAsOfMerge.test_basic2þ  s€  € Ý”<ðv
ðð ð ðv
ðð ð ðv
ð&ð ð ð'v
ð8ð ð ð9v
ðJð ð ðKv
ð\ð ð ð]v
ðnð ð ðov
ð@ð ð ðAv
ðT ,ØØØØÝ”FÝ”FððSv
ðdð ð ðev
ðvð ð ðwv
ðHð ð ðIv
ðZð ð ð[v
ðlð ð ðmv
ð~ð ð ðv
ðPð ð ðQv
ðbð ð ðcv
ðtð ð ðuv
ðFð ð ðGv
ðXð ð ðYv
ðjð ð ðkv
ð|ð ð ð}v
ðNð ð ðOv
ð`ð ð ðav
ðrð ð ðsv
ðDð ð ðEv
ðVð ð ðWv
ðhð ð ðiv
ðzð ð ð{v
ðLð ð ðMv
ð^ð ð ð_v
ðpð ð ðqv
ðB	ð ð ðC	v
ðT	ð ð ðU	v
ðf	ð ð ðg	v
ðx	ð ð ðy	v
ðJ
ð ð ðK
v
ð\
ð ð ð]
v
ðn
ð ð ðo
v
ð@ð ð ðAv
ðRð ð ðSv
ðdð ð ðev
ðvð ð ðwv
ðHð ð ðIv
ðZð ð ð[v
ðlð ð ðmv
ð~ð ð ðv
ðPð ð ðQv
ðbð ð ðcv
ðtð ð ðuv
ðFð ð ðGv
ðXð ð ðYv
ðjð ð ðkv
ð|ð ð ð}v
ðNð ð ðOv
ð`ð ð ðav
ðrð ð ðsv
ðDð ð ðEv
ðVð ð ðWv
ðhð ð ðiv
ðzð ð ð{v
ðLð ð ðMv
ð^ð ð ð_v
ðpð ð ðqv
ðBð ð ðCv
ðTð ð ðUv
ðfð ð ðgv
ðxð ð ðyv
ðJð ð ðKv
ð\ð ð ð]v
ðnð ð ðov
ð@ð ð ðAv
ðRð ð ðSv
ðdð ð ðev
ðvð ð ðwv
ðHð ð ðIv
ðZð ð ð[v
ðn F×KÒKÈCÑPÔPðqy

ñ y

ô y

ˆðt % WÔ-×4Ò4°YÑ?Ô?ˆ�ÑØ'¨
Ô3×:Ò:¸7ÑCÔCˆ�ÑØ" 5œ/×0Ò0°Ñ;Ô;ˆ�‰Ø" 5œ/×0Ò0°Ñ;Ô;ˆ�‰Ø—>’> (Ñ+Ô+ˆå”ðNØLÐLÐLðNàMÐMÐMðNð OÐNÐNðNð OÐNÐNð	Nð
 OÐNÐNðNð OÐNÐNðNð OÐNÐNðNð NÐMÐMðNð QÐPÐPðNð QÐPÐPðNð LÐKÐKðNð MÐLÐLðNð MÐLÐLðNð MÐLÐLðNð MÐLÐLðNð  MÐLÐLð!Nð" JÐIÐIð#Nð$ JÐIÐIð%Nð& MÐLÐLð'Nð( LÐKÐKð)Nð* LÐKÐKð+Nð, LÐKÐKð-Nð. LÐKÐKð/Nð0 LÐKÐKð1Nð2 NÐMÐMð3Nð4 NÐMÐMð5Nð6 NÐMÐMð7Nð8 MÐLÐLð9Nð: LÐKÐKð;Nð< LÐKÐKð=Nð> LÐKÐKð?Nð@ LÐKÐKðANðB MÐLÐLðCNðD MÐLÐLðENðF MÐLÐLðGNðH MÐLÐLðINðJ LÐKÐKðKNðL MÐLÐLðMNðN MÐLÐLðONðP LÐKÐKðQNðR LÐKÐKðSNðT LÐKÐKðUNðV KÐJÐJðWNðX LÐKÐKðYNðZ KÐJÐJð[Nð\ LÐKÐKð]Nð^ LÐKÐKð_Nð` JÐIÐIðaNðb LÐKÐKðcNðd JÐIÐIðeNðf NÐMÐMðgNðh NÐMÐMðiNðj LÐKÐKðkNðl NÐMÐMðmNðn MÐLÐLðoNðp MÐLÐLðqNðr MÐLÐLðsNðt MÐLÐLðuNðv MÐLÐLðwNðx KÐJÐJðyNðz LÐKÐKð{Nð| LÐKÐKð}Nð~ LÐKÐKðNð@ LÐKÐKðANðB LÐKÐKðCNðD LÐKÐKðENðF MÐLÐLðGNðH MÐLÐLðINðJ NÐMÐMðKNðL LÐKÐKðMNðN KÐJÐJðONðP KÐJÐJðQNðR KÐJÐJðSNðT KÐJÐJðUNðV LÐKÐKðWNðX NÐMÐMðYNðZ NÐMÐMð[Nð^ >×CÒCÀCÑHÔHðaQ
ñ Q
ô Q
ˆðd ! œ/×0Ò0°Ñ;Ô;ˆˆw‰Ø# JÔ/×6Ò6°wÑ?Ô?ˆˆzÑØ—’ Ñ'Ô'ˆå”ð9ØEÐEÐEð9àCÐCÐCð9ð DÐCÐCð9ð FÐEÐEð	9ð
 FÐEÐEð9ð FÐEÐEð9ð FÐEÐEð9ð FÐEÐEð9ð DÐCÐCð9ð DÐCÐCð9ð DÐCÐCð9ð DÐCÐCð9ð DÐCÐCð9ð DÐCÐCð9ð DÐCÐCð9ð  DÐCÐCð!9ð" DÐCÐCð#9ð$ DÐCÐCð%9ð& DÐCÐCð'9ð( DÐCÐCð)9ð* DÐCÐCð+9ð, DÐCÐCð-9ð. DÐCÐCð/9ð0 DÐCÐCð19ð2 DÐCÐCð39ð4 DÐCÐCð59ð6 DÐCÐCð79ð8 DÐCÐCð99ð: DÐCÐCð;9ð< DÐCÐCð=9ð> DÐCÐCð?9ð@ DÐCÐCðA9ðB DÐCÐCðC9ðD DÐCÐCðE9ðF DÐCÐCðG9ðH DÐCÐCðI9ðJ DÐCÐCðK9ðL DÐCÐCðM9ðN DÐCÐCðO9ðP DÐCÐCðQ9ðR DÐCÐCðS9ðT DÐCÐCðU9ðV DÐCÐCðW9ðX DÐCÐCðY9ðZ DÐCÐCð[9ð\ DÐCÐCð]9ð^ DÐCÐCð_9ð` DÐCÐCða9ðb DÐCÐCðc9ðd DÐCÐCðe9ðf DÐCÐCðg9ðh DÐCÐCði9ðj DÐCÐCðk9ðl DÐCÐCðm9ðn DÐCÐCðo9ðp DÐCÐCðq9ðt *×/Ò/°Ñ4Ô4ðw<
ñ <
ô <
ˆðz ˜uœ×,Ò,¨YÑ7Ô7ˆˆu‰Ø˜uœ×,Ò,¨YÑ7Ô7ˆˆu‰Ø—’ ¨t�Ñ4Ô4ˆå˜F F¨v¸(ÐCÑCÔCˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 óœ   — d„ } ||¦  «        } ||¦  «        } ||¦  «        }t          ||d¬¦  «        }t          j        ||¦  «         d S )Nc                 óv   — | | j         dk                                  dd¬¦  «                             d¬¦  «        S )Nr&   r   r³   )ÚaxisTr   )r   r   r   ©Úxs    r   ú<lambda>z0TestAsOfMerge.test_basic_no_by.<locals>.<lambda>[	  s5   € �a˜œ FÒ*Ô+ßŠT�( ˆTÑ#Ô#ßŠ[˜dˆ[Ñ#Ô#ð r   r   rÅ   rù   )r   rl   r¥   rƒ   ÚfrÍ   rÎ   s          r   Útest_basic_no_byzTestAsOfMerge.test_basic_no_byY	  sg   € ð$ð $ð 	
ð �1�T‘7”7ˆØ��6‘”ˆØ��6‘”ˆå˜F F¨vÐ6Ñ6Ô6ˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó´  — d}t          j        t          |¬¦  «        5  t          ||ddd¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d¬¦  «        5  t          ||ddgd¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d¬¦  «        5  t          ||d¬	¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )
Nz6incompatible merge keys \[1\] .* must be the same typer  r   r€   r   )r  r  rç   zcan only asof on a key for leftræ   )rç   ©rì   r  r   r   r  s       r   Útest_valid_join_keysz"TestAsOfMerge.test_valid_join_keysh	  sÆ  € ØGˆåŒ]�:¨SÐ1Ñ1Ô1ð 	Tð 	TÝ�v˜v¨vÀÈ(ÐSÑSÔSÐSð	Tð 	Tð 	Tñ 	Tô 	Tð 	Tð 	Tð 	Tð 	Tð 	Tð 	Tøøøð 	Tð 	Tð 	Tð 	Tõ Œ]�:Ð-NÐOÑOÔOð 	Kð 	KÝ�v˜v¨6°8Ð*<ÀÐJÑJÔJÐJð	Kð 	Kð 	Kñ 	Kô 	Kð 	Kð 	Kð 	Kð 	Kð 	Kð 	Køøøð 	Kð 	Kð 	Kð 	Kõ Œ]�:Ð-NÐOÑOÔOð 	4ð 	4Ý�v˜v¨(Ð3Ñ3Ô3Ð3ð	4ð 	4ð 	4ñ 	4ô 	4ð 	4ð 	4ð 	4ð 	4ð 	4ð 	4ð 	4øøøð 	4ð 	4ð 	4ð 	4ð 	4ð 	4s3   ž?¿AÁAÁ%BÂBÂBÂ-CÃCÃCc                 óþ   — t          j        ||g¦  «                             ddg¦  «                             d¬¦  «        }t	          ||dd¬¦  «        }|                      |¦  «        }t          j        ||¦  «         d S )Nr   r   Tr   ræ   )rg   ÚconcatÚsort_valuesr   r   r"   rÈ   rÉ   )r   r«   rl   rƒ   r¥   r%  rÎ   rÍ   s           r   Útest_with_duplicatesz"TestAsOfMerge.test_with_duplicatest	  s|   € åŒI�v˜vÐ&Ñ'Ô'ßŠ[˜& (Ð+Ñ,Ô,ßŠ[˜dˆ[Ñ#Ô#ð 	
õ
 ˜F A¨&°XÐ>Ñ>Ô>ˆØ—>’> $Ñ'Ô'ˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 óü   — t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢dœ¦  «        }t          ||d¬¦  «        }t          j        g d¢g d¢g d¢dœ¦  «        }t          j        ||¦  «         d S )	N)r³   r³   r¾   ©r³   r½   r¾   )Úkeyr»   )r³   r½   r½   )r‘  rÂ   r‘  rÅ   )r‘  r»   rÂ   rÇ   ©r   Údf1Údf2rÎ   rÍ   s        r   Útest_with_duplicates_no_onz(TestAsOfMerge.test_with_duplicates_no_on~	  s™   € ÝŒl 9 9 9¸)¸)¸)ÐDÐDÑEÔEˆÝŒl 9 9 9¸9¸9¸9ÐEÐEÑFÔFˆÝ˜C ¨Ð/Ñ/Ô/ˆÝ”<Ø�I�I¨9¨9¨9À9À9À9ÐMÐMñ
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 óš   — d}t          j        t          |¬¦  «        5  t          ||ddd¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nz/allow_exact_matches must be boolean, passed foor  r   r   Úfoo©rÆ   rç   r¬   r‰  r  s       r   Útest_valid_allow_exact_matchesz,TestAsOfMerge.test_valid_allow_exact_matches‡	  s¢   € Ø?ˆåŒ]�:¨SÐ1Ñ1Ô1ð 	ð 	ÝØ˜ 6¨hÈEðñ ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   žA Á AÁAc           
      ó¦  — t          ||ddt          d¦  «        ¬¦  «         t          |                     ¦   «         |                     ¦   «         ddd¬¦  «         d}t          j        t
          |¬¦  «        5  t          ||ddd¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t
          |¬¦  «        5  t          |                     ¦   «         |                     ¦   «         ddd	¬¦  «         d d d ¦  «         n# 1 swxY w Y   d
}t          j        t
          |¬¦  «        5  t          ||ddt          d¦  «         ¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t
          |¬¦  «        5  t          |                     ¦   «         |                     ¦   «         ddd¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   r   Ú1sré   r  r³   z6incompatible tolerance .*, must be compat with type .*r  rC  ztolerance must be positiveéÿÿÿÿ)r   r   r   rì   r  r   r  s       r   Útest_valid_tolerancez"TestAsOfMerge.test_valid_tolerance�	  s   € å�6˜6 f°ÅYÈtÁ_Ä_ÐUÑUÔUÐUõ 	Ø×ÒÑ Ô Ø×ÒÑ Ô ØØØð	
ñ 	
ô 	
ð 	
ð Hˆõ Œ]�:¨SÐ1Ñ1Ô1ð 	Lð 	LÝ�v˜v¨&°XÈÐKÑKÔKÐKð	Lð 	Lð 	Lñ 	Lô 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	Løøøð 	Lð 	Lð 	Lð 	Lõ Œ]�:¨SÐ1Ñ1Ô1ð 	ð 	ÝØ×"Ò"Ñ$Ô$Ø×"Ò"Ñ$Ô$ØØØðñ ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð +ˆõ Œ]�:¨SÐ1Ñ1Ô1ð 	ð 	ÝØ˜ 6¨hÅ9ÈTÁ?Ä?ÐBRðñ ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ
 Œ]�:¨SÐ1Ñ1Ô1ð 	ð 	ÝØ×"Ò"Ñ$Ô$Ø×"Ò"Ñ$Ô$ØØØðñ ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	sH   Á7BÂBÂBÂ>9DÄDÄ
DÄ+#EÅEÅ!EÆ 9GÇG
ÇG
c                 óœ  — |                      dd¬¦  «        }|                      dd¬¦  «        }|j        j        rJ ‚|j        j        rJ ‚t          j        t
          d¬¦  «        5  t          ||dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   |                      d¦  «        }|j        j        sJ ‚|j        j        rJ ‚t          j        t
          d¬¦  «        5  t          ||dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   |                      d¦  «        }|j        j        sJ ‚|j        j        sJ ‚t          ||dd¬¦  «         d S )	Nr   F)Ú	ascendingzleft keys must be sortedr  r   ræ   zright keys must be sorted)r�  r   Úis_monotonic_increasingrì   r  Ú
ValueErrorr   r  s      r   Útest_non_sortedzTestAsOfMerge.test_non_sorted½	  sç  € Ø×#Ò# F°eÐ#Ñ<Ô<ˆØ×#Ò# F°eÐ#Ñ<Ô<ˆð ”;Ô6Ð6Ð6Ð6Ø”;Ô6Ð6Ð6Ð6ÝŒ]�:Ð-GÐHÑHÔHð 	?ð 	?Ý�v˜v¨&°XÐ>Ñ>Ô>Ð>ð	?ð 	?ð 	?ñ 	?ô 	?ð 	?ð 	?ð 	?ð 	?ð 	?ð 	?øøøð 	?ð 	?ð 	?ð 	?ð ×#Ò# FÑ+Ô+ˆØŒ{Ô2Ð2Ð2Ð2Ø”;Ô6Ð6Ð6Ð6ÝŒ]�:Ð-HÐIÑIÔIð 	?ð 	?Ý�v˜v¨&°XÐ>Ñ>Ô>Ð>ð	?ð 	?ð 	?ñ 	?ô 	?ð 	?ð 	?ð 	?ð 	?ð 	?ð 	?øøøð 	?ð 	?ð 	?ð 	?ð ×#Ò# FÑ+Ô+ˆØŒ{Ô2Ð2Ð2Ð2ØŒ{Ô2Ð2Ð2Ð2õ 	�6˜6 f°Ð:Ñ:Ô:Ð:Ð:Ð:s$   Á&BÂB
ÂB
ÃC=Ã=DÄDÚtolerance_tsÚ1dayr³   )Údaysr   zdatetime.timedelta)Úidsc                 ó\   — t          ||dd|¬¦  «        }|}t          j        ||¦  «         d S )Nr   r   ré   rù   )r   r£  rl   rƒ   r¨   rÎ   rÍ   s          r   Útest_tolerancezTestAsOfMerge.test_toleranceÔ	  sC   € õ Ø�F˜v¨(¸lð
ñ 
ô 
ˆð ˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó  — t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢dt          j        dgdœ¦  «        }t	          ||d	d
d¬¦  «        }t          j        ||¦  «         d S )Nr²   r¶   rº   ©r³   r½   r¾   rÀ   é   rÁ   r³   r«  rÄ   r·   rð   ©rÆ   rò   r¨   ró   rÊ   s        r   Útest_tolerance_forwardz$TestAsOfMerge.test_tolerance_forwardà	  ó«   € õ Œ| * * *¸/¸/¸/ÐJÐJÑKÔKˆÝ”Ð#3Ð#3Ð#3ÐBRÐBRÐBRÐSÐSÑTÔTˆå”<Ø�*�*¨/¨/¨/ÈÍBÌFÐTVÈÐXÐXñ
ô 
ˆõ ˜D %¨C¸9ÐPQÐRÑRÔRˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó  — t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢dt          j        dgdœ¦  «        }t	          ||d	d
d¬¦  «        }t          j        ||¦  «         d S )Nr²   r¶   rº   rª  rÁ   r³   r«  rÄ   r·   rö   r¬  ró   rÊ   s        r   Útest_tolerance_nearestz$TestAsOfMerge.test_tolerance_nearestí	  r®  r   c           
      ó¼  — t          j        t          j        t          d¦  «        ddt	          j        d¦  «        |¬¦  «        t          j        d¦  «        dœ¦  «        }t          j        t          j        t          d¦  «        ddt	          j        d¦  «        |¬¦  «        t          d¦  «        d	œ¦  «        }t          ||d
t          d¦  «        ¬¦  «        }t          j        t          j        t          d¦  «        ddt	          j        d¦  «        |¬¦  «        t          j        d¦  «        t          d¦  «        dœ¦  «        }t          j        ||¦  «         d S )Nz
2016-01-02ÚDr´   ÚUTC)ÚstartÚfreqÚperiodsÚtzr   )ÚdateÚvalue1z
2016-01-01ÚABCDE)r¸  Úvalue2r¸  z1 day©rÆ   r¨   ÚBCDEE)r¸  r¹  r»  )rg   rh   Ú
date_ranger   ÚpytzÚtimezoner£   ÚarangeÚlistr   r   rÈ   rÉ   )r   r   rË   rÌ   rÎ   rÍ   s         r   Útest_tolerance_tzzTestAsOfMerge.test_tolerance_tzú	  s]  € åŒ|åœÝ% lÑ3Ô3ØØÝ”} UÑ+Ô+Øðñ ô õ œ) A™,œ,ð	ð 	ñ
ô 
ˆõ ”åœÝ% lÑ3Ô3ØØÝ”} UÑ+Ô+Øðñ ô õ ˜w™-œ-ð	ð 	ñ
ô 
ˆõ ˜D %¨F½iÈÑ>PÔ>PÐQÑQÔQˆå”<åœÝ% lÑ3Ô3ØØÝ”} UÑ+Ô+Øðñ ô õ œ) A™,œ,Ý˜w™-œ-ð
ð 
ñ
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó  — t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢ddt          j        gdœ¦  «        }t	          ||d	d
d¬¦  «        }t          j        ||¦  «         d S )N)çš™™™™™ñ?g      @gÍÌÌÌÌÌ%@r¶   rº   )rC  ç      @çffffff
@g      @g      '@rÁ   r³   rÇ  rÄ   r·   rö   ç      à?r¬  ró   rÊ   s        r   Útest_tolerance_floatz"TestAsOfMerge.test_tolerance_float%
  sº   € åŒ|Ð"2Ð"2Ð"2ÀÀÀÐPÐPÑQÔQˆÝ”Ø,Ð,Ð,Ð;UÐ;UÐ;UÐVÐVñ
ô 
ˆõ ”<à%Ð%Ð%Ø+˜O˜OØ ¥b¤fÐ-ðð ñ
ô 
ˆõ ˜D %¨C¸9ÐPSÐTÑTÔTˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c           
      óò   — |                      d¦  «        }|                      d¦  «        }|                      d¦  «        }t          ||dddt          d¦  «        ¬¦  «        }t          j        ||¦  «         d S )Nr   Tr   r¤  )r   r  rç   r¨   )r  r   r   rÈ   rÉ   )r   rl   rƒ   r¨   rÍ   rÎ   s         r   Útest_index_tolerancez"TestAsOfMerge.test_index_tolerance7
  s„   € à×&Ò& vÑ.Ô.ˆØ×!Ò! &Ñ)Ô)ˆØ×!Ò! &Ñ)Ô)ˆåØØØØØÝ Ñ'Ô'ð
ñ 
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó\   — t          ||ddd¬¦  «        }|}t          j        ||¦  «         d S )Nr   r   Fr˜  rù   )r   rl   rƒ   r¬   rÎ   rÍ   s         r   Útest_allow_exact_matchesz&TestAsOfMerge.test_allow_exact_matchesG
  sA   € ÝØ�F˜v¨(Èð
ñ 
ô 
ˆð 'ˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó   — t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢g d¢dœ¦  «        }t          ||dd	d
¬¦  «        }t          j        ||¦  «         d S )Nr²   r¶   rº   rª  rÁ   )r½   rÀ   r«  rÄ   r·   rð   F©rÆ   rò   r¬   rÇ   rÊ   s        r   Ú test_allow_exact_matches_forwardz.TestAsOfMerge.test_allow_exact_matches_forwardN
  ó®   € õ Œ| * * *¸/¸/¸/ÐJÐJÑKÔKˆÝ”Ð#3Ð#3Ð#3ÐBRÐBRÐBRÐSÐSÑTÔTˆå”<Ø�*�*¨/¨/¨/È
È
È
ÐSÐSñ
ô 
ˆõ Ø�%˜C¨9È%ð
ñ 
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó   — t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢g d¢dœ¦  «        }t          ||dd	d
¬¦  «        }t          j        ||¦  «         d S )Nr²   r¶   rº   rª  rÁ   )r½   r¾   r«  rÄ   r·   rö   FrÏ  rÇ   rÊ   s        r   Ú test_allow_exact_matches_nearestz.TestAsOfMerge.test_allow_exact_matches_nearest]
  rÑ  r   c           	      óx   — t          ||ddt          d¦  «        d¬¦  «        }|}t          j        ||¦  «         d S )Nr   r   Ú100msFrë   )r   r   rÈ   rÉ   )r   rl   rƒ   r¯   rÎ   rÍ   s         r   Ú&test_allow_exact_matches_and_tolerancez4TestAsOfMerge.test_allow_exact_matches_and_tolerancel
  sR   € õ ØØØØÝ Ñ(Ô(Ø %ð
ñ 
ô 
ˆð 5ˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c           	      ó°  — t          j        t          dg¦  «        dgdœ¦  «        }t          j        t          ddg¦  «        ddgdœ¦  «        }t          ||d¬	¦  «        }t          j        t          dg¦  «        dgdgd
œ¦  «        }t	          j        ||¦  «         t          ||dd¬¦  «        }t          j        t          dg¦  «        dgdgd
œ¦  «        }t	          j        ||¦  «         t          ||ddt          d¦  «        ¬¦  «        }t          j        t          dg¦  «        dgt          j        gd
œ¦  «        }t	          j        ||¦  «         d S )Nú2016-07-15 13:30:00.030Úbob©r   Úusernameú2016-07-15 13:30:00.000r³   r½   ©r   Úversionr   rÅ   ©r   rÛ  rÞ  F)rÆ   r¬   rê   ©rÆ   r¬   r¨   )	rg   rh   r   r   rÈ   rÉ   r   r£   r¤   r’  s        r   Ú'test_allow_exact_matches_and_tolerance2z5TestAsOfMerge.test_allow_exact_matches_and_tolerance2z
  s¤  € åŒlÝ Ð";Ð!<Ñ=Ô=ÈEÈ7ÐSÐSñ
ô 
ˆõ Œlå#Ø.Ð0IÐJñô ð ˜q˜6ð	ð ñ
ô 
ˆõ ˜C ¨Ð0Ñ0Ô0ˆÝ”<å#Ð%>Ð$?Ñ@Ô@Ø"˜GØ˜3ðð ñ
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/å˜C ¨ÀUÐKÑKÔKˆÝ”<å#Ð%>Ð$?Ñ@Ô@Ø"˜GØ˜3ðð ñ
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/åØØØØ %Ý Ñ'Ô'ð
ñ 
ô 
ˆõ ”<å#Ð%>Ð$?Ñ@Ô@Ø"˜GÝœF˜8ðð ñ
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c           	      ó�  — t          j        t          ddg¦  «        ddgdœ¦  «        }t          j        t          ddg¦  «        ddgdœ¦  «        }t          ||d	d
t	          d¦  «        ¬¦  «        }t          j        t          ddg¦  «        ddgt
          j        t
          j        gdœ¦  «        }t          j        ||¦  «         d S )NrØ  rÙ  ÚcharlierÚ  rÜ  r³   r½   rÝ  r   Frê   rà  rß  )	rg   rh   r   r   r   r£   r¤   rÈ   rÉ   r’  s        r   Ú'test_allow_exact_matches_and_tolerance3z5TestAsOfMerge.test_allow_exact_matches_and_tolerance3¬
  s
  € åŒlå#Ø.Ð0IÐJñô ð # IÐ.ð	ð ñ
ô 
ˆõ Œlå#Ø.Ð0IÐJñô ð ˜q˜6ð	ð ñ
ô 
ˆõ ØØØØ %Ý Ñ'Ô'ð
ñ 
ô 
ˆõ ”<å#Ø.Ð0IÐJñô ð # IÐ.ÝœF¥B¤FÐ+ðð ñ
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó  — t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢t          j        ddgdœ¦  «        }t	          ||d	d
dd¬¦  «        }t          j        ||¦  «         d S )Nr²   r¶   rº   ©r³   r¾   é   r¿   r«  rÁ   r¿   r«  rÄ   r·   rð   Fr³   ©rÆ   rò   r¬   r¨   ró   rÊ   s        r   Ú.test_allow_exact_matches_and_tolerance_forwardz<TestAsOfMerge.test_allow_exact_matches_and_tolerance_forwardÑ
  ó»   € õ Œ| * * *¸/¸/¸/ÐJÐJÑKÔKˆÝ”Ð#3Ð#3Ð#3ÐBRÐBRÐBRÐSÐSÑTÔTˆå”<Ø�*�*¨/¨/¨/ÍÌÐQRÐTVÈÐXÐXñ
ô 
ˆõ ØØØØØ %Øð
ñ 
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó  — t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢t          j        ddgd	œ¦  «        }t	          ||d
ddd¬¦  «        }t          j        ||¦  «         d S )Nr²   r¶   rº   ræ  )r³   r¾   rç  rÀ   r«  rÁ   rç  r«  rÄ   r·   rö   Fr³   rè  ró   rÊ   s        r   Ú.test_allow_exact_matches_and_tolerance_nearestz<TestAsOfMerge.test_allow_exact_matches_and_tolerance_nearestå
  rê  r   c           
      ó,  — t          j        g d¢g d¢g d¢dœ¦  «        }t          j        g d¢g d¢g d¢dœ¦  «        }t          j        g d¢g d¢g d¢dt          j        d	d
dgdœ¦  «        }t	          ||ddd¬¦  «        }t          j        ||¦  «         d S )N©r³   r´   rµ   é   é   )ÚXrñ  ÚYÚZrò  ©r·   r¸   r¹   ÚdÚe©r·   r¸   r»   ©r³   r¿   r«  rð  é   )rñ  ró  rò  ró  rò  ©r·   r¸   rÂ   r³   r«  rð  rù  ©r·   r¸   r»   rÂ   r·   r¸   rð   ©rÆ   rç   rò   ró   rÊ   s        r   Útest_forward_byzTestAsOfMerge.test_forward_byù
  sí   € õ Œ|à'Ð'Ð'Ø.Ð.Ð.Ø5Ð5Ð5ðð ñ
ô 
ˆõ ”à'Ð'Ð'Ø.Ð.Ð.Ø/Ð/Ð/ðð ñ
ô 
ˆõ ”<à'Ð'Ð'Ø.Ð.Ð.Ø5Ð5Ð5Ø¥¤¨¨R°Ð4ð	ð ñ
ô 
ˆõ ˜D %¨C°CÀ9ÐMÑMÔMˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó  — t          j        g d¢g d¢g d¢dœ¦  «        }t          j        g d¢g d¢g d¢dœ¦  «        }t          j        g d¢g d¢g d¢g d¢d	œ¦  «        }t          ||d
dd¬¦  «        }t          j        ||¦  «         d S )Nrî  )rñ  rñ  ró  ró  rò  rô  r÷  rø  )rñ  ró  ró  ró  rò  rú  )r³   r³   r«  r«  rù  rû  r·   r¸   rö   rü  rÇ   rÊ   s        r   Útest_nearest_byzTestAsOfMerge.test_nearest_by  sæ   € õ Œ|à'Ð'Ð'Ø.Ð.Ð.Ø5Ð5Ð5ðð ñ
ô 
ˆõ ”à'Ð'Ð'Ø.Ð.Ð.Ø/Ð/Ð/ðð ñ
ô 
ˆõ ”<à'Ð'Ð'Ø.Ð.Ð.Ø5Ð5Ð5Ø/Ð/Ð/ð	ð ñ
ô 
ˆõ ˜D %¨C°CÀ9ÐMÑMÔMˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 óv  — t          j        t          g d¢¦  «        g d¢g d¢dœg d¢¬¦  «        }t          j        t          g d¢¦  «        g d¢g d¢d	œg d	¢¬¦  «        }t          ||d
d¬¦  «        }t          j        t          g d¢¦  «        g d¢g d¢g d¢dœg d¢¬¦  «        }t	          j        ||¦  «         d S )N)ú20160525 13:30:00.020rÛ   ú20160525 13:30:00.040r)  ú20160525 13:30:00.060)r³   r½   r³   r¾   r½   )rÅ  g333333ó?gÍÌÌÌÌÌô?gffffffö?g      ø?)r   r‘  r¹  r`   )z20160525 13:30:00.015r  z20160525 13:30:00.025z20160525 13:30:00.035r  z20160525 13:30:00.055r  z20160525 13:30:00.065)r½   r³   r³   r¾   r½   r³   r½   r¾   )çÍÌÌÌÌÌ @çš™™™™™@çffffff@ç333333@rÆ  gÍÌÌÌÌÌ@çš™™™™™@gffffff@)r   r‘  r»  r   r‘  ræ   )r  r  r  r  r  )r   r‘  r¹  r»  )rg   rh   r   r   rÈ   rÉ   r’  s        r   Útest_by_intzTestAsOfMerge.test_by_int5  sM  € åŒlå#ðð ð ñô ð '��Ø3Ð3Ð3ðð ð .Ð-Ð-ð
ñ 
ô 
ˆõ" Œlå#ð	ð 	ð 	ñô ð 0Ð/Ð/ØBÐBÐBðð ð  .Ð-Ð-ð#
ñ 
ô 
ˆõ( ˜C ¨°EÐ:Ñ:Ô:ˆå”<å#ðð ð ñô ð '��Ø3Ð3Ð3Ø3Ð3Ð3ðð ð 8Ð7Ð7ð
ñ 
ô 
ˆõ$ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó’  — t          j        g d¢t          d¦  «        dœddg¬¦  «        }t          j        g d¢g d¢d	œdd
g¬¦  «        }|                     d¦  «                             d¬¦  «        }t          ||d¬¦  «        }t          j        t          d¦  «        g d¢g d¢dœg d¢¬¦  «        }t          j        ||¦  «         d S )N)ç
×£p=
@çHPüs×b?çáz®G!9@çÍÌÌÌÌ@u@çHáz®Ç>@çš™™™™C�@çÞqŠŽäò?ÚABCDEFG)rb   Úsymbolr  rb   r`   )ç        rC  ç      Y@)ç-Cëâ6?ç{®Gáz„?çš™™™™™©?)rb   Úmpvr  Tr   rÅ   ÚBGACEDF)r  r  r  r  r  r  r  )r  r  r  r  r  r  r  )r  rb   r  ©rg   rh   rÂ  r�  r   r   rÈ   rÉ   r’  s        r   Útest_on_floatzTestAsOfMerge.test_on_floatr  s  € åŒlàNÐNÐNÝ˜y™/œ/ðð ð ˜wÐ'ð
ñ 
ô 
ˆõ ŒlØ'Ð'Ð'Ð0DÐ0DÐ0DÐEÐEØ˜eÐ$ð
ñ 
ô 
ˆð
 �oŠo˜gÑ&Ô&×2Ò2¸Ð2Ñ=Ô=ˆå˜C ¨Ð1Ñ1Ô1ˆå”<å˜y™/œ/ØNÐNÐNØEÐEÐEðð ð
 /Ð.Ð.ð
ñ 
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ón  — t          j        |¦  «        j        }t          j        g d¢t          d¦  «        dœddg¬¦  «        } ||j        ¦  «        |_        t          j        g d¢t          d¦  «        d	œdd
g¬¦  «        } ||j        ¦  «        |_        |                     d¦  «                             d¬¦  «        }t          ||d¬¦  «        }t          j        t          d¦  «        g d¢t          d¦  «        dœg d¢¬¦  «        } ||j        ¦  «        |_        t          j        ||¦  «         d S )N©r´   r½   é   rÚ   éN   éx   éO   r  )rI  r  r  rI  r`   ©r   éP   r!  é}   Úxyzw)rI  rÎ   rÎ   Tr   rÅ   ÚBACEGDF©r½   r´   r  r   r"  rÚ   r!  Úxxxxxyz)r  rI  rÎ   )r£   r7  Útyperg   rh   rÂ  rI  r�  r   r   rÈ   rÉ   ©r   Úany_real_numpy_dtyper7  r“  r”  rÎ   rÍ   s          r   Útest_on_specialized_typez&TestAsOfMerge.test_on_specialized_type�  sS  € å”Ð-Ñ.Ô.Ô3ˆåŒlØ2Ð2Ð2½dÀ9¹o¼oÐNÐNØ˜wÐ'ð
ñ 
ô 
ˆð �E˜#œ)Ñ$Ô$ˆŒ	åŒlØ'Ð'Ð'µ4¸±<´<Ð@Ð@Ø˜hÐ'ð
ñ 
ô 
ˆð �E˜#œ)Ñ$Ô$ˆŒ	à�oŠo˜gÑ&Ô&×2Ò2¸Ð2Ñ=Ô=ˆÝ˜C ¨Ð1Ñ1Ô1ˆå”<å˜y™/œ/Ø5Ð5Ð5Ý˜y™/œ/ðð ð
 2Ð1Ð1ð
ñ 
ô 
ˆð ˜˜xœ~Ñ.Ô.ˆŒå
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 óÆ  — t          j        |¦  «        j        }t          j        g d¢g d¢t          d¦  «        dœg d¢¬¦  «        } ||j        ¦  «        |_        t          j        g d¢g d¢t          d	¦  «        d
œg d
¢¬¦  «        } ||j        ¦  «        |_        |                     d¦  «                             d¬¦  «        }t          ||dd¬¦  «        }t          j        t          d¦  «        g d¢g d¢t           j
        dt           j
        t           j
        t           j
        ddgdœg d¢¬¦  «        } ||j        ¦  «        |_        t          j        ||¦  «         d S )Nr  )r³   r½   r¾   r½   r¾   r³   r½   r  )rI  r‘  r  )r  r‘  rI  r`   r#  )r³   r½   r½   r¾   r&  )rI  r‘  rÎ   rI  Tr   r‘  ræ   r'  )r½   r³   r¾   r¾   r½   r½   r³   r(  r„  Úy)r  r‘  rI  rÎ   )r£   r7  r*  rg   rh   rÂ  rI  r�  r   r   r¤   rÈ   rÉ   r+  s          r   Útest_on_specialized_type_by_intz-TestAsOfMerge.test_on_specialized_type_by_int¯  s‡  € å”Ð-Ñ.Ô.Ô3ˆåŒlà5Ð5Ð5Ø,Ð,Ð,Ý˜y™/œ/ðð ð
 /Ð.Ð.ð
ñ 
ô 
ˆð �E˜#œ)Ñ$Ô$ˆŒ	åŒlØ'Ð'Ð'°°°ÍÈVÉÌÐUÐUØ.Ð.Ð.ð
ñ 
ô 
ˆð �E˜#œ)Ñ$Ô$ˆŒ	à�oŠo˜gÑ&Ô&×2Ò2¸Ð2Ñ=Ô=ˆÝ˜C ¨°UÐ;Ñ;Ô;ˆå”<å˜y™/œ/Ø,Ð,Ð,Ø5Ð5Ð5Ýœ6 3­¬µ´½¼ÀÀSÐIð	ð ð 9Ð8Ð8ð
ñ 
ô 
ˆð ˜˜xœ~Ñ.Ô.ˆŒå
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 óø  — t          j        t          d¦  «        g d¢g d¢dœg d¢¬¦  «        }t          j        g d¢g d¢g d¢d	œg d	¢¬¦  «        }|                     d
¦  «                             d¬¦  «        }|                     d
¦  «                             d¬¦  «        }t          ||d
d¬¦  «        }t          j        t          d¦  «        g d¢g d¢g d¢dœg d¢¬¦  «        }t          j        ||¦  «         d S )NÚ	AAABBBCCC)	r³   r½   r¾   r³   r½   r¾   r³   r½   r¾   )	ç®Gáz
@çÜ×�sF
@ç£¼
@ç)\�Âõ()@ç®Gáz.)@ç      )@çfffff¢w@ç33333£w@ç     ¤w@)r  r.  rb   r`   )	r³   r³   r³   r½   r½   r½   r¾   r¾   r¾   )	r  rC  r  r  ç      @r  r  r<  g     @�@)	r  r  r  r  r  çš™™™™™¹?r  ç      Ð?rC  )r.  rb   r  rb   Tr   r.  ræ   )	r¾   r½   r³   r¾   r³   r½   r³   r½   r¾   )	r5  r4  r3  r8  r6  r7  r9  r:  r;  )	r  r  r  r>  r  r  r  r=  r>  )r  r.  rb   r  r  r’  s        r   Útest_on_float_by_intz"TestAsOfMerge.test_on_float_by_intÓ  si  € åŒlå˜{Ñ+Ô+Ø3Ð3Ð3ð
ð 
ð 
ðð ð 0Ð/Ð/ð!
ñ 
ô 
ˆõ& Œlà3Ð3Ð3ØMÐMÐMØQÐQÐQðð ð
 -Ð,Ð,ð
ñ 
ô 
ˆð �oŠo˜gÑ&Ô&×2Ò2¸Ð2Ñ=Ô=ˆØ�oŠo˜gÑ&Ô&×2Ò2¸Ð2Ñ=Ô=ˆå˜C ¨°VÐ<Ñ<Ô<ˆå”<å˜{Ñ+Ô+Ø3Ð3Ð3ð
ð 
ð 
ð QÐPÐPðð ð  7Ð6Ð6ð#
ñ 
ô 
ˆõ( 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó  — |rd}nd}t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢dœ¦  «        }t          j        t          |¬¦  «        5  t          ||d	¬
¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NrJ  ú@Incompatible merge dtype, .*, both sides must have numeric dtyper²   r¶   ©r»   r·   r¼   ©rÂ   r·   r  r·   rÅ   ©rg   rh   rì   r  r   r   )r   Úusing_infer_stringr  rË   rÌ   s        r   Ú test_merge_datatype_error_raisesz.TestAsOfMerge.test_merge_datatype_error_raises  sã   € Øð 	VØ+ˆCˆCàUˆCåŒ|¨¨¨¸/¸/¸/ÐJÐJÑKÔKˆÝ”¨?¨?¨?ÀÀÀÐQÐQÑRÔRˆåŒ]�:¨SÐ1Ñ1Ô1ð 	,ð 	,Ý�t˜U sÐ+Ñ+Ô+Ð+ð	,ð 	,ð 	,ñ 	,ô 	,ð 	,ð 	,ð 	,ð 	,ð 	,ð 	,ð 	,øøøð 	,ð 	,ð 	,ð 	,ð 	,ð 	,s   ÁA9Á9A=Â A=c                 óJ  — d}t          j        g d¢t          j        g d¢¦  «        dœ¦  «        }t          j        g d¢t          j        g d¢¦  «        dœ¦  «        }t          j        t
          |¬¦  «        5  t          ||d	¬
¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NzHincompatible merge keys \[0\] .* both sides category, but not equal onesr²   r¶   rB  r¼   )r·   rñ  r¹   rñ  r¸   rC  r  r·   rÅ   )rg   rh   ÚCategoricalrì   r  r   r   )r   r  rË   rÌ   s       r   Ú,test_merge_datatype_categorical_error_raisesz:TestAsOfMerge.test_merge_datatype_categorical_error_raises  s  € ð!ð 	õ
 Œ|Ø#˜˜­"¬.¸¸¸Ñ*IÔ*IÐJÐJñ
ô 
ˆõ ”à,˜_˜_Ý”^Ð$=Ð$=Ð$=Ñ>Ô>ðð ñ
ô 
ˆõ Œ]�:¨SÐ1Ñ1Ô1ð 	,ð 	,Ý�t˜U sÐ+Ñ+Ô+Ð+ð	,ð 	,ð 	,ñ 	,ô 	,ð 	,ð 	,ð 	,ð 	,ð 	,ð 	,ð 	,øøøð 	,ð 	,ð 	,ð 	,ð 	,ð 	,s   Á8BÂBÂBc                 ó  — t          j        dgdgt          j        dg¦  «        dœ¦  «        }t          ||dddg¬¦  «        }t          j        dgdgt          j        dg¦  «        dœ¦  «        }t	          j        ||¦  «         d S )Nr   ©r„  r/  Úzr„  r/  rL  ræ   )rg   rh   rH  r   rÈ   rÉ   )r   r    rÎ   rÍ   s       r   Ú:test_merge_groupby_multiple_column_with_categorical_columnzHTestAsOfMerge.test_merge_groupby_multiple_column_with_categorical_column+  s‡   € åŒ\  ¨1¨#µB´NÀAÀ3Ñ4GÔ4GÐHÐHÑIÔIˆÝ˜B  s°°S¨zÐ:Ñ:Ô:ˆÝ”< q c°°½"¼.È!ÈÑ:MÔ:MÐ NÐ NÑOÔOˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   Úfuncc                 ó   — | S ©N© rƒ  s    r   r…  zTestAsOfMerge.<lambda>3  s   € ˜1€ r   c                 ó    — t          | ¦  «        S rP  )r   rƒ  s    r   r…  zTestAsOfMerge.<lambda>3  s   € ­°A©¬€ r   ÚnumericÚdatetimeÚsiderË   rÌ   c                 ó~  — d|› d�} |ddt           j        g¦  «        } |g d¢¦  «        }t          j        |g d¢dœ¦  «        }t          j        |g d¢d	œ¦  «        }t	          j        t          |¬
¦  «        5  |dk    rt          ||d¬¦  «         nt          ||d¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nz"Merge keys contain null values on z siderC  r<  )rC  r<  g      $@r¶   rº   )r³   r¿   r«  rÁ   r  rË   r·   rÅ   )r£   r¤   rg   rh   rì   r  r¡  r   )r   rN  rU  r  ÚnullsÚ	non_nullsÚdf_nullr    s           r   Útest_merge_on_nansz TestAsOfMerge.test_merge_on_nans2  s'  € ð ?°4Ð>Ð>Ð>ˆØ��c˜3¥¤Ð'Ñ(Ô(ˆØ�DÐ)Ð)Ð)Ñ*Ô*ˆ	Ý”, U¸¸¸ÐHÐHÑIÔIˆÝŒ\ 	¸
¸
¸
ÐCÐCÑDÔDˆåŒ]�:¨SÐ1Ñ1Ô1ð 	0ð 	0Ø�vŠ~ˆ~Ý˜7 B¨3Ð/Ñ/Ô/Ð/Ð/å˜2˜w¨3Ð/Ñ/Ô/Ð/ð		0ð 	0ð 	0ñ 	0ô 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0øøøð 	0ð 	0ð 	0ð 	0ð 	0ð 	0s   Á9,B2Â2B6Â9B6c                 óÌ  — t          j        t           j        ddg|¬¦  «        }|j        j        dv r$t          j        |j        j        ¦  «        j        }n#t          j	        |j        j        ¦  «        j        }||d<   t          j
        |g d¢g d¢g d¢d	œ¦  «        }t          j
        |g d
¢g d¢g d¢d	œ¦  «        }t          ||ddgd¬¦  «        }t          j
        |g d¢g d¢g d¢dœ¦  «        }t          j        t
          j        t
          j        t
          j        gt          ¬¦  «        |d<   |r|d                              d¦  «        |d<   t          j        ||¦  «         d S )Nr   r³   ©r7  )ÚiÚur½   )ÚHELLOÚToÚYou)r½   rç  r¿   )r·   r¹   rö  ©Úby_col1Úby_col2Úon_colrI  )ÚWORLDÚWideÚWeb)r³   r½   r¿   )r¸   rõ  r†  rc  rd  re  ©rç   rÆ   ©rc  rd  re  Úvalue_xÚvalue_yústring[pyarrow_numpy])rg   ÚarrayÚNAr7  Úkindr£   ÚiinfoÚnumpy_dtypeÚmaxÚfinforh   r   r¤   r8  rj   rÈ   rÉ   )	r   Úany_numeric_ea_dtyperE  ÚarrÚmax_valrË   rÌ   rÎ   rÍ   s	            r   Útest_by_nullablezTestAsOfMerge.test_by_nullableD  s‘  € õ Œh�œ˜q !�}Ð,@ÐAÑAÔAˆØŒ9Œ>˜ZÐ'Ð'Ý”h˜sœyÔ4Ñ5Ô5Ô9ˆGˆGå”h˜sœyÔ4Ñ5Ô5Ô9ˆGð ˆˆA‰åŒ|àØ1Ð1Ð1Ø#˜)˜)Ø(˜˜ð	ð ñ
ô 
ˆõ ”àØ3Ð3Ð3Ø#˜)˜)Ø(˜˜ð	ð ñ
ô 
ˆõ ˜D %¨Y¸	Ð,BÀxÐPÑPÔPˆÝ”<àØ1Ð1Ð1Ø#˜)˜)Ø*˜?˜?ð	ð ñ
ô 
ˆõ !œh­¬µ´½¼Ð'?ÅvÐNÑNÔNˆ�ÑØð 	VØ"*¨9Ô"5×"<Ò"<Ð=TÑ"UÔ"UˆH�YÑÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 ó¸  — t          j        t          j        dg¦  «                             d¦  «        dgdgdœ¦  «        }t          j        t          j        dg¦  «                             d¦  «        dgdgdœ¦  «        }t	          ||dd	¬
¦  «        }t          j        t          j        dd¬¦  «        dddggg d¢¬¦  «        }t          j        ||¦  «         d S )Nú
2018-01-01r³  r½   r·   )Úby_colre  Úvaluesr³   r¸   r{  re  ri  ©r·  )r{  re  Úvalues_xÚvalues_yr`   )rg   rh   ÚDatetimeIndexÚtz_localizer   rK  rÈ   rÉ   )r   rË   rÌ   rÎ   rÍ   s        r   Útest_merge_by_col_tz_awarez(TestAsOfMerge.test_merge_by_col_tz_awarer  sú   € åŒ|åÔ*¨L¨>Ñ:Ô:×FÒFÀuÑMÔMØ˜#Ø˜%ðð ñ
ô 
ˆõ ”åÔ*¨L¨>Ñ:Ô:×FÒFÀuÑMÔMØ˜#Ø˜%ðð ñ
ô 
ˆõ ˜D %¨H¸ÐBÑBÔBˆÝ”<ÝŒl˜<¨EÐ2Ñ2Ô2°A°s¸CÐ@ÐAØ@Ð@Ð@ð
ñ 
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 óV  — t          j        t          j        dg¦  «                             d¦  «        dgdgdgdœ¦  «        }t          j        t          j        dg¦  «                             d¦  «        dgdgd	gdœ¦  «        }t	          ||d
dgd¬¦  «        }t          j        t          j        dd¬¦  «        dddggg d¢¬¦  «        }t          j        t          j        gt          ¬¦  «        |d<   |r|d          
                    d¦  «        |d<   t          j        ||¦  «         d S )Nrz  r³  r_  r½   r·   rb  rf  r³   r¸   rc  rd  re  ri  r}  rj  r`   r\  rl  rm  )rg   rh   r€  r�  r   rK  r£   rn  r¤   r8  rj   rÈ   rÉ   )r   rE  rË   rÌ   rÎ   rÍ   s         r   Útest_by_mixed_tz_awarez$TestAsOfMerge.test_by_mixed_tz_aware‰  sM  € åŒ|åÔ+¨\¨NÑ;Ô;×GÒGÈÑNÔNØ#˜9Ø˜#Ø˜ð	ð ñ
ô 
ˆõ ”åÔ+¨\¨NÑ;Ô;×GÒGÈÑNÔNØ#˜9Ø˜#Ø˜ð	ð ñ
ô 
ˆõ ˜D %¨Y¸	Ð,BÀxÐPÑPÔPˆÝ”<ÝŒl˜<¨EÐ2Ñ2Ô2°G¸QÀÐDÐEØ?Ð?Ð?ð
ñ 
ô 
ˆõ !œh­¬ xµvÐ>Ñ>Ô>ˆ�ÑØð 	VØ"*¨9Ô"5×"<Ò"<Ð=TÑ"UÔ"UˆH�YÑÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   )rc   Úint16zm8[ns]zM8[us]c                 ót  — t          j        t          j        dg|¬¦  «        dgdgdœ¦  «        }t          j        t          j        dg|¬¦  «        dgdgdœ¦  «        }t	          ||dd¬	¦  «        }t          j        t          j        dg|¬¦  «        dgdgdgd
œ¦  «        }t          j        ||¦  «         d S )Nr³   r\  r½   r·   )r{  re  rI  r¸   r{  re  ri  )r{  re  rk  rl  )rg   rh   r£   rn  r   rÈ   rÉ   )r   r7  rË   rÌ   rÎ   rÍ   s         r   Útest_by_dtypezTestAsOfMerge.test_by_dtype¥  sé   € õ Œ|åœ( A 3¨eÐ4Ñ4Ô4Ø˜#Ø˜ðð ñ
ô 
ˆõ ”åœ( A 3¨eÐ4Ñ4Ô4Ø˜#Ø˜ðð ñ
ô 
ˆõ ˜D %¨H¸ÐBÑBÔBˆÝ”<åœ( A 3¨eÐ4Ñ4Ô4Ø˜#Ø˜5Ø˜5ð	ð ñ
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 óx  — |dk    rt          j        d¦  «         t          j        t	          t          g d¢g d¢¦  «        ¦  «        ddg¬¦  «        }t          j        |d         d¦  «                             d	|› d
�¦  «        |d<   t          j        t	          t          g d¢g d¢¦  «        ¦  «        ddg¬¦  «        }t          j        |d         d¦  «                             d	|› d
�¦  «        |d<   t          j        t	          t          g d¢g d¢dt          j	        ddt          j	        t          j	        g¦  «        ¦  «        g d¢¬¦  «        }t          j        |d         d¦  «                             d	|› d
�¦  «        |d<   t          ||dt          d¦  «        d¬¦  «        }t          j        ||¦  «         d S )Nr	   zHThis test is invalid with unit='s' because that would round left['time'])r   r´   rµ   rð  é   r  )r   r³   r½   r¾   rç  r´   r   rË   r`   r
   zm8[rÒ   )r   r¾   é	   rï  rð  é   rÌ   r   r½   rç  )r   rË   rÌ   Ú1msrö   )rÆ   r¨   rò   )rì   rí   rg   rh   rÂ  ÚzipÚto_timedeltarj   r£   r¤   r   r   rÈ   rÉ   )r   r   rË   rÌ   rÍ   rÎ   s         r   Ú test_timedelta_tolerance_nearestz.TestAsOfMerge.test_timedelta_tolerance_nearestÁ  sã  € à�3Š;ˆ;ÝŒKð%ñô ð õ
 Œ|Ý•Ð+Ð+Ð+Ð-?Ð-?Ð-?Ñ@Ô@ÑAÔAØ˜VÐ$ð
ñ 
ô 
ˆõ
 ” t¨F¤|°TÑ:Ô:×AÒAÀ-ÈÀ-À-À-ÑPÔPˆˆV‰å”Ý•Ð*Ð*Ð*Ð,>Ð,>Ð,>Ñ?Ô?Ñ@Ô@Ø˜WÐ%ð
ñ 
ô 
ˆõ
 œ¨¨f¬°tÑ<Ô<×CÒCÀMÈ$ÀMÀMÀMÑRÔRˆˆf‰å”<ÝÝØ*Ð*Ð*Ø&Ð&Ð&Ø�œ  1¥b¤f­b¬fÐ5ñô ñô ð .Ð-Ð-ð	
ñ 	
ô 	
ˆõ œ?¨8°FÔ+;¸TÑBÔB×IÒIÈ-ÐPTÈ-È-È-ÑXÔXˆ�ÑåØ�%˜F­i¸Ñ.>Ô.>È)ð
ñ 
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c                 óÈ  — t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢dœ¦  «        }|d                              |¦  «        |d<   |d                              |¦  «        |d<   t          j        g d¢g d¢t          j        ddgd	œ¦  «        }|d                              |¦  «        |d<   t          ||dd
¬¦  «        }t          j        ||¦  «         d S )N)r   rµ   r‰  r�  rº   )r´   rð  r  rÁ   r·   rC  rD  rÄ   rµ   r¼  )rg   rh   rj   r£   r¤   r   rÈ   rÉ   )r   Úany_int_dtyperË   rÌ   rÍ   rÎ   s         r   Útest_int_type_tolerancez%TestAsOfMerge.test_int_type_toleranceê  sô   € õ Œ| + + +¸9¸9¸9ÐEÐEÑFÔFˆÝ” ; ; ;¸Y¸Y¸YÐGÐGÑHÔHˆØ˜”I×$Ò$ ]Ñ3Ô3ˆˆS‰	Ø˜3”Z×&Ò& }Ñ5Ô5ˆˆc‰
å”<Ø�+�+¨9¨9¨9ÅBÄFÈCÐQTÐCUÐVÐVñ
ô 
ˆð ! œ×,Ò,¨]Ñ;Ô;ˆ�‰å˜D %¨C¸2Ð>Ñ>Ô>ˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c           	      ó`  — t          j        dddd¬¦  «        }t          j        g d¢dg|dd …         ¬	¦  «        }t          j        |d
gdz  dgz   dœ¦  «        }t          ||ddg¬¦  «        }t          j        g d¢|dd …         d
gdz  dgz   dœt          j        dddd¬¦  «        ¬¦  «        }t	          j        ||¦  «         t          ||ddg¬¦  «        }t          j        |d
gdz  dgz   t          j        ddddgdœt          g d¢¦  «        ¬¦  «        }t	          j        ||¦  «         d S )Nz
2019-10-01Ú30minr´   r³  )rµ  r¶  r·  )çÍÌÌÌÌÌì?çš™™™™™é?çffffffæ?ç333333ã?Úxyzr³   )ra   r  g®Gáz®@rç  g…ëQ¸…@)Ú	from_dateÚabcTrš  )rË   rÌ   r   r  r¾   )r™  rš  r›  z2019-10-01 00:30:00©r  )rË   rÌ   r  r  r•  r–  r—  r˜  )rš  r›  r™  )r   r³   r½   r¾   rç  )	rg   r¾  rh   r   rÈ   rÉ   r£   r¤   r   )r   r  rË   rÌ   rÎ   rÍ   s         r   Útest_merge_index_column_tzz(TestAsOfMerge.test_merge_index_column_tzú  sŽ  € å”˜l°À!ÈÐNÑNÔNˆÝŒ|Ð0Ð0Ð0¸5¸'ÈÈqÈrÈrÌÐSÑSÔSˆÝ”¨5¸$¸À!¹ÀtÀfÑ9LÐMÐMÑNÔNˆÝØ˜U¨t¸{¸mð
ñ 
ô 
ˆõ ”<à+Ð+Ð+Ø" 1 2 2œYØ�v ‘z T FÑ*ðð õ
 ”-Ø%¨G¸QÀ5ðñ ô ð	
ñ 	
ô 	
ˆõ 	Ô˜f hÑ/Ô/Ð/åØ˜d°¸{¸mð
ñ 
ô 
ˆõ ”<à"Ø�v ‘z T FÑ*Ýœ  S¨#¨sÐ3ðð õ
 ˜˜˜Ñ(Ô(ð
ñ 
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r   c           	      óL  — |dk    rt          j        d¦  «         t          j        ddd|¬¦  «        t	          d¬¦  «                             |¦  «        z   }t          j        dd	|¬
¦  «        }t          j        ddit          j        |¦  «        ¬¦  «        }t          j        ddit          j        |¦  «        ¬¦  «        }t          j        dddœt          j        |¦  «        ¬¦  «        }t          ||ddt	          d¬¦  «        ¬¦  «        }t          j
        ||¦  «         d S )Nr	   z?This test is invalid with unit='s' because that would round dr1z1/1/2020z	1/20/2020Ú2D)r´  Úendrµ  r   gš™™™™™Ù?)Úsecondsz2/1/2020)r´  r   r   Úval1r—  rœ  Úval2Úbar)r¢  r£  TrÈ  )r   r  r¨   )rì   rí   rg   r¾  r   Úas_unitrh   r€  r   rÈ   rÉ   )r   r   Údr1Údr2r“  r”  rÍ   rÎ   s           r   Ú%test_left_index_right_index_tolerancez3TestAsOfMerge.test_left_index_right_index_tolerance  s;  € à�3Š;ˆ;ÝŒKØQñô ð õ ŒmØ +°D¸tð
ñ 
ô 
å˜cÐ"Ñ"Ô"×*Ò*¨4Ñ0Ô0ñ1ˆõ Œm *°*À4ÐHÑHÔHˆåŒl˜F E˜?µ"Ô2BÀ3Ñ2GÔ2GÐHÑHÔHˆÝŒl˜F E˜?µ"Ô2BÀ3Ñ2GÔ2GÐHÑHÔHˆå”<Ø EÐ*Ð*µ"Ô2BÀ3Ñ2GÔ2Gð
ñ 
ô 
ˆõ ØØØØÝ¨Ð,Ñ,Ô,ð
ñ 
ô 
ˆõ 	Ô˜f hÑ/Ô/Ð/Ð/Ð/r   N)F)MÚ__name__Ú
__module__Ú__qualname__r"   rì   Úfixturerl   rƒ   r¥   r¨   r¬   r¯   rÏ   rî   rô   r÷   rû   rþ   r  r	  r  r  r  r  r  r"  r&  r6  ÚmarkÚparametrizer;  rL  rN  r  r‡  rŠ  rŽ  r•  r™  r�  r¢  r   rT  Ú	timedeltar¨  r­  r°  rÃ  rÉ  rË  rÍ  rÐ  rÓ  rÖ  rá  rä  ré  rì  rý  rÿ  r	  r  r-  r0  r?  rF  rI  rM  rZ  rx  r‚  r„  r‡  r�  r’  r�  r¨  rQ  r   r   r   r      s�  € € € € € ðð ð ð ð „^ð#"ð #"ñ „^ð#"ðJ „^ð/ð /ñ „^ð/ð4 „^ð}"ð }"ñ „^ð}"ð~ „^ð}"ð }"ñ „^ð}"ð~ „^ðm"ð m"ñ „^ðm"ð^ „^ðm"ð m"ñ „^ðm"ð^
0ð 
0ð 
0ðW0ð W0ð W0ðr0ð 0ð 0ð0ð 0ð 0ð0ð 0ð 0ð0ð 0ð 0ð0ð 0ð 0ð0ð 0ð 0ð0ð 0ð 0ðJð Jð JðJð Jð Jðð ð ðð ð ð0ð 0ð 0ð0ð 0ð 0ð?0ð ?0ð ?0ðB „[×Ò˜W x°Ð&:Ñ;Ô;ðB0ð B0ñ <Ô;ðB0ðHXð Xð Xð80ð 0ð 0ðdY0ð Y0ð Y0ðv0ð 0ð 0ð
4ð 
4ð 
4ð0ð 0ð 0ð0ð 0ð 0ðð ð ð,ð ,ð ,ð\;ð ;ð ;ð. „[×ÒØØ	ˆ�6Ñ	Ô	Ð.˜HÔ.°AÐ6Ñ6Ô6Ð7ØÐ.Ð/ð ñ ô ð
0ð 0ñô ð
0ð0ð 0ð 0ð0ð 0ð 0ð)0ð )0ð )0ðV0ð 0ð 0ð$0ð 0ð 0ð 0ð 0ð 0ð0ð 0ð 0ð0ð 0ð 0ð0ð 0ð 0ð00ð 00ð 00ðd#0ð #0ð #0ðJ0ð 0ð 0ð(0ð 0ð 0ð(0ð 0ð 0ð<0ð 0ð 0ð<;0ð ;0ð ;0ðz0ð 0ð 0ð<0ð 0ð 0ð>"0ð "0ð "0ðH70ð 70ð 70ðr
,ð 
,ð 
,ð,ð ,ð ,ð&0ð 0ð 0ð „[×ÒØ��Ð6Ð6Ð7¸iÈÐ=Tð ñ ô ð „[×Ò˜V f¨gÐ%6Ñ7Ô7ð0ð 0ñ 8Ô7ñô ð0ð,0ð ,0ð ,0ð\0ð 0ð 0ð.0ð 0ð 0ð8 „[×Ò˜WÐ&NÐ&NÐ&NÑOÔOð0ð 0ñ PÔOð0ð6'0ð '0ð '0ðR0ð 0ð 0ð 0ð 0ð 0ðB0ð 0ð 0ð 0ð 0r   r   Úinfer_stringFTÚpyarrow)ÚmarksÚkwargsrÆ   r„  r  Údataz2019-06-01 00:09:12z2019-06-01 00:10:29rC  c                 ó:  — t          d|¦  «        5  t          j        d|i|¬¦  «        }t          j        d|i|¬¦  «        }t          j        t
          d¬¦  «        5  t          ||fi | ¤Ž d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )Nzfuture.infer_stringr„  rœ  rA  r  )r   rg   rh   rì   r  r   r   )r³  r´  r°  rË   rÌ   s        r   Ú#test_merge_asof_non_numerical_dtyper¶  7  s5  € õ 
Ð-¨|Ñ	<Ô	<ð .ð .ÝŒ|˜S $˜K¨tÐ4Ñ4Ô4ˆÝ”˜c 4˜[°Ð5Ñ5Ô5ˆÝŒ]ÝØUð
ñ 
ô 
ð 	.ð 	.õ �t˜UÐ-Ð- fÐ-Ð-Ð-ð		.ð 	.ð 	.ñ 	.ô 	.ð 	.ð 	.ð 	.ð 	.ð 	.ð 	.øøøð 	.ð 	.ð 	.ð 	.ð.ð .ð .ñ .ô .ð .ð .ð .ð .ð .ð .ð .øøøð .ð .ð .ð .ð .ð .s6   ‘ABÁA8Á,BÁ8A<	Á<BÁ?A<	Â BÂBÂBc            	      ó  — t          j        g d¢g d¢dœ¦  «        } t          j        g d¢g d¢dœ¦  «        }t          j        t          d¬¦  «        5  t          | |dd	d	d
¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )N)rp  Ú13Ú15r¶   )r·   Ú	left_val1)rõ  rö  r†  rº   rA  r  rº  r·   r»   )r  r  r   r!  rD  ©rË   rÌ   s     r   Ú*test_merge_asof_non_numerical_dtype_objectr¼  M  sï   € åŒ<Ð0Ð0Ð0¸¸¸ÐOÐOÑPÔP€DÝŒL˜˜˜¸O¸O¸OÐLÐLÑMÔM€EÝ	ŒÝØQð
ñ 
ô 
ð 
ð 
õ 	ØØØØØØð	
ñ 	
ô 	
ð 	
ð	
ð 
ð 
ñ 
ô 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
øøøð 
ð 
ð 
ð 
ð 
ð 
s   ÁA5Á5A9Á<A9)r  r   Ú	left_time)r  r  rÌ   )r   r  c                 ó$  — t          g d¢d¬¦  «        }t          j        g d¢g d¢dœ|¬¦  «        }t          j        dg d	¢ig d	¢¬¦  «        }t          ||fi | ¤Ž}t          j        g d¢g d¢g d
¢dœ|¬¦  «        }t	          j        ||¦  «         d S )Nr²   Útest©Únamer¶   )r³   rç  rµ   )rË   r½  rœ  rÌ   r¼   rÃ   )rË   r½  rÌ   )r   rg   rh   r   rÈ   rÉ   )r³  r  rË   rÌ   rÎ   rÍ   s         r   Útest_merge_asof_index_behaviorrÂ  _  sÄ   € õ �*�*�* 6Ð*Ñ*Ô*€EÝŒ<   ¸z¸z¸zÐJÐJÐRWÐXÑXÔX€DÝŒL˜' ? ? ?Ð3¸?¸?¸?ÐKÑKÔK€EÝ˜˜eÐ.Ð. vÐ.Ð.€FåŒ|Ø ��¨z¨z¨zÀIÀIÀIÐNÐNØðñ ô €Hõ Ô˜& (Ñ+Ô+Ð+Ð+Ð+r   c                  ó>  — t          j        dg d¢it          g d¢d¬¦  «        ¬¦  «        } t          j        dg d¢it          g d	¢d¬¦  «        ¬¦  «        }t          | |dd¬
¦  «        }t          j        g d¢g d¢g d¢dœ¦  «        }t	          j        ||¦  «         d S )Nr¸   ©rµ   r«  rï  r�  r·   rÀ  rœ  r¹   ©r‰  é   é   )r   r½   r¾   ©r  r  r¶   )rg   rh   r   r   rÈ   rÉ   ©rË   rÌ   rÎ   rÍ   s       r   Ú'test_merge_asof_numeric_column_in_indexrÊ  u  s²   € åŒ<˜˜l˜l˜lÐ+µ5¸¸¸ÈÐ3MÑ3MÔ3MÐNÑNÔN€DÝŒL˜#˜|˜|˜|Ð,µE¸)¸)¸)È#Ð4NÑ4NÔ4NÐOÑOÔO€Eå˜˜e¨S¸3Ð?Ñ?Ô?€FÝŒ| ) ) )°,°,°,À\À\À\ÐRÐRÑSÔS€HÝÔ˜& (Ñ+Ô+Ð+Ð+Ð+r   c                  ó–  — t          j        dg d¢it           j                             g d¢g d¢gddg¬¦  «        ¬¦  «        } t          j        d	g d
¢it           j                             g d¢g d¢gddg¬¦  «        ¬¦  «        }t	          | |dd¬¦  «        }t          j        g d¢g d¢g d
¢dœ¦  «        }t          j        ||¦  «         d S )Nr¸   rÄ  r�  r¶   r·   rL  )Únamesrœ  r¹   rÅ  rK  r/  rÈ  )rg   rh   Ú
MultiIndexÚfrom_arraysr   rÈ   rÉ   rÉ  s       r   Ú,test_merge_asof_numeric_column_in_multiindexrÏ    sò   € åŒ<Ø	ˆlˆlˆlÐÝŒm×'Ò'¨¨¨°O°O°OÐ(DÈSÐRUÈJÐ'ÑWÔWðñ ô €Dõ ŒLØ	ˆlˆlˆlÐÝŒm×'Ò'¨¨¨°O°O°OÐ(DÈSÐRUÈJÐ'ÑWÔWðñ ô €Eõ
 ˜˜e¨S¸3Ð?Ñ?Ô?€FÝŒ| ) ) )°,°,°,À\À\À\ÐRÐRÑSÔS€HÝÔ˜& (Ñ+Ô+Ð+Ð+Ð+r   c                  óp  — t          j        dg d¢it          g d¢d¬¦  «        ¬¦  «        } t          j        dg d¢it          g d	¢d¬¦  «        ¬¦  «        }t          j        t
          d
¬¦  «        5  t          | |dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   |                      ¦   «                              ddg¦  «        } |                     ¦   «                              ddg¦  «        }t          j        t
          d
¬¦  «        5  t          | |dd¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr¸   rÄ  )r\  Ú2Ú3r·   rÀ  rœ  r¹   rÅ  )ÚmÚnÚorA  r  rÈ  )	rg   rh   r   rì   r  r   r   r   r  r»  s     r   Ú3test_merge_asof_numeri_column_in_index_object_dtyperÖ  �  sÌ  € åŒ<˜˜l˜l˜lÐ+µ5¸¸¸ÈsÐ3SÑ3SÔ3SÐTÑTÔT€DÝŒL˜#˜|˜|˜|Ð,µE¸/¸/¸/ÐPSÐ4TÑ4TÔ4TÐUÑUÔU€Eå	ŒÝØQð
ñ 
ô 
ð ;ð ;õ 	�4˜¨°cÐ:Ñ:Ô:Ð:ð	;ð ;ð ;ñ ;ô ;ð ;ð ;ð ;ð ;ð ;ð ;øøøð ;ð ;ð ;ð ;ð ×ÒÑÔ×'Ò'¨¨c¨
Ñ3Ô3€DØ×ÒÑÔ×)Ò)¨3°¨*Ñ5Ô5€Eå	ŒÝØQð
ñ 
ô 
ð ;ð ;õ 	�4˜¨°cÐ:Ñ:Ô:Ð:ð	;ð ;ð ;ñ ;ô ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;øøøð ;ð ;ð ;ð ;ð ;ð ;s$   Á2BÂBÂBÄ
D+Ä+D/Ä2D/c                 ó"  — t          j        ddgd| › d�¬¦  «        }t          j        ddg|dœ¦  «        }t          j        t          j        d	¦  «        d
d| ¬¦  «        }t          j        dg d¢i¦  «        }t          |||ddd¬¦  «        }t          j        g d¢t          j        ddg|dœ¦  «        }t          j	        ||¦  «         t          ||d|dd¬¦  «        }t          j        ddg|ddgdœ¦  «        }t          j	        ||¦  «         d S )Nz2021/01/01 00:37z2021/01/01 01:40rÑ   rÒ   r\  r½   r¿   )r·   Útsz2021/01/01 00:00r¾   Ú1h)r´  r¶  rµ  r   r¸   )rç  é   rÀ   rØ  FÚbackward)r  r  r¬   rò   )r¸   r·   rØ  rç  rÚ  )r·   rØ  r¸   )
rg   r€  rh   r¾  rK  r   r£   r¤   rÈ   rÉ   )r   ÚdtirÌ   Úts_mergerË   rÎ   rÍ   s          r   Útest_merge_asof_array_as_onrÞ  ¤  sh  € å
Ô
Ø	Ð/Ð0¸¸d¸¸¸ðñ ô €Cõ ŒLà�Q�Øð	
ð 	
ñô €Eõ Œ}ÝŒlÐ-Ñ.Ô.¸ÀÈ4ðñ ô €Hõ Œ<˜˜i˜i˜iÐ(Ñ)Ô)€DÝØØØØØ!Øðñ ô €Fõ Œ| ) ) )µ2´6¸1¸a°.ÈÐQÐQÑRÔR€HÝÔ˜& (Ñ+Ô+Ð+åØØØØØ!Øðñ ô €Fõ Œ|à�Q�ØØ�Q�ð	
ð 	
ñô €Hõ Ô˜& (Ñ+Ô+Ð+Ð+Ð+r   c                  ó  — t          j        g d¢gg d¢¬¦  «        } t          j        g d¢gg d¢¬¦  «        }t          j        t          d¬¦  «        5  t          | |d¬	¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d¬¦  «        5  t          | |dd
¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d¬¦  «        5  t          | |dd¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )N)r³   r½   r·   )r·   r·   r»   r`   )r³   r³   r³   )r·   r·   rÂ   zcolumn label 'a'r  r·   rÅ   rÂ   rÈ  r»   )rg   rh   rì   r  r¡  r   r»  s     r   Ú+test_merge_asof_raise_for_duplicate_columnsrà  Ð  s   € åŒ<˜˜˜˜Ð/EÐ/EÐ/EÐFÑFÔF€DÝŒL˜)˜)˜)˜Ð.EÐ.EÐ.EÐFÑFÔF€Eå	Œ•zÐ);Ð	<Ñ	<Ô	<ð (ð (Ý�4˜ 3Ð'Ñ'Ô'Ð'ð(ð (ð (ñ (ô (ð (ð (ð (ð (ð (ð (øøøð (ð (ð (ð (õ 
Œ•zÐ);Ð	<Ñ	<Ô	<ð Cð CÝ�4˜¨°kÐBÑBÔBÐBðCð Cð Cñ Cô Cð Cð Cð Cð Cð Cð Cøøøð Cð Cð Cð Cõ 
Œ•zÐ);Ð	<Ñ	<Ô	<ð Bð BÝ�4˜¨
¸SÐAÑAÔAÐAðBð Bð Bñ Bô Bð Bð Bð Bð Bð Bð Bð Bøøøð Bð Bð Bð Bð Bð Bs6   ÁA1Á1A5Á8A5ÂB7Â7B;Â>B;ÃC>Ã>DÄDr7  ÚInt64zint64[pyarrow]ztimestamp[s][pyarrow]c                 óœ  — t          j        g d¢g d¢dœ¦  «        }t          j        g d¢g d¢dœ¦  «        }|                     d| i¦  «        }|                     d| i¦  «        }t          ||d¬¦  «        }t          j        g d¢g d¢t          j        dd	gd
œ¦  «        }|                     d| i¦  «        }t          j        ||¦  «         d S )N)r³   r¾   r´   r�  )Újoin_colr»   )r½   r¾   rç  )rã  rÂ   rã  rÅ   rD  rF  )rã  r»   rÂ   )rg   rh   rj   r   r£   r¤   rÈ   rÉ   )r7  rË   rÌ   rÎ   rÍ   s        r   Útest_merge_asof_extension_dtyperä  ß  s   € õ Œ<à!˜	˜	Ø!˜	˜	ð	
ð 	
ñô €Dõ ŒLà!˜	˜	Ø"˜˜ð	
ð 	
ñô €Eð �;Š;˜
 EÐ*Ñ+Ô+€DØ�LŠL˜* eÐ,Ñ-Ô-€EÝ˜˜e¨
Ð3Ñ3Ô3€FÝŒ|à!˜	˜	Ø!˜	˜	Ýœ& # sÐ+ð	
ð 	
ñô €Hð �Š 
¨EÐ2Ñ3Ô3€HÝÔ˜& (Ñ+Ô+Ð+Ð+Ð+r   c                  ó*  — t          j        t          j        ddd¦  «        gd¬¦  «        } t          j        | dgdœ¦  «        }t	          ||dt          d¦  «        ¬¦  «        }t          j        | dgdgd	œ¦  «        }t          j        ||¦  «         d S )
Niç  r³   ztimestamp[us, UTC][pyarrow]r\  )Ú	timestamprI  ræ  r›  r¼  )ræ  rk  rl  )rg   ÚSeriesrT  rh   r   r   rÈ   rÉ   )Úserr    rÎ   rÍ   s       r   Ú$test_merge_asof_pyarrow_td_toleranceré    s¸   € õ Œ)Ý	Ô	˜4  AÑ	&Ô	&Ð'Ð/Lðñ ô €Cõ 
ŒàØ�Sð	
ð 	
ñ
ô 
€Bõ ˜˜B ;½)ÀD¹/¼/ÐJÑJÔJ€FÝŒ|àØ�sØ�sð	
ð 	
ñô €Hõ Ô˜& (Ñ+Ô+Ð+Ð+Ð+r   c                  óJ  — t          j        dgdgd¬¦  «        } t          j        dgdgd¬¦  «        }d| j        j        j        _        d|j        j        j        _        t          | |dd¬¦  «        }t          j        dgdgd	œdg¬
¦  «        }t          j	        ||¦  «         d S )Nr½   rË   )r  rÁ  r³   rÌ   FTr  r»  rœ  )
rg   rç  r  r|  ÚflagsÚ	writeabler   rh   rÈ   rÉ   rÉ  s       r   Ú!test_merge_asof_read_only_ndarrayrí    s§   € åŒ9�a�S  ¨&Ð1Ñ1Ô1€DÝŒI�q�c ! ¨7Ð3Ñ3Ô3€Eà(-€D„JÔÔÔ%Ø).€E„KÔÔÔ&Ý˜˜e°À$ÐGÑGÔG€FÝŒ| a S°A°3Ð7Ð7À¸sÐCÑCÔC€HÝÔ˜& (Ñ+Ô+Ð+Ð+Ð+r   c            
      ó4  — t          j        t          j        g d¢ddg¬¦  «        dgdz  dgdz  t          d¦  «        dœ¦  «        } t          j        t          j        ddgddg¬¦  «        dgd	z  dd	gt          d	¦  «        dœ¦  «        }t	          | |d
dgddddg¬¦  «        }t          j        t          j        g d¢ddg¬¦  «        dgdz  dgdz  t          d¦  «        t
          j        t
          j        ddgdœ¦  «        }t          j        ||¦  «         d S )N)r·   r·   r¸   r¸   r·   r¸   )Ú
categoriesr„  rç  r³   )Úc1Úc2ÚtÚvr½   rð  rñ  rò  rð   Ú_leftÚ_right)rç   rÆ   rò   Úsuffixesr  )rð  rñ  rò  Úv_leftÚv_right)	rg   rh   rH  Úranger   r£   r¤   rÈ   rÉ   rÉ  s       r   Ú(test_merge_asof_multiby_with_categoricalrú  &  sV  € åŒ<å”.Ð!5Ð!5Ð!5À3ÈÀ*ÐMÑMÔMØ�%˜!‘)Ø��q‘Ý�q‘”ð		
ð 	
ñô €Dõ ŒLå”. # s ¸¸c¸
ÐCÑCÔCØ�%˜!‘)Ø�Q�Ý�q‘”ð		
ð 	
ñô €Eõ ØØØ�$ˆ<ØØØ˜8Ð$ðñ ô €Fõ Œ|å”.Ð!5Ð!5Ð!5À3ÈÀ*ÐMÑMÔMØ�%˜!‘)Ø��q‘Ý˜A‘h”hÝœ¥¤¨¨SÐ1ð	
ð 	
ñô €Hõ Ô˜& (Ñ+Ô+Ð+Ð+Ð+r   )(rT  Únumpyr£   rì   r¿  Úpandas.util._test_decoratorsÚutilÚ_test_decoratorsÚtdÚpandasrg   r   r   r   r   r   Úpandas._testingÚ_testingrÈ   Úpandas.core.reshape.merger   r¬  r   r   r­  r®  r   Ú
skip_if_nor¶  r¼  rÂ  rÊ  rÏ  rÖ  rÞ  rà  rä  ré  rí  rú  rQ  r   r   ú<module>r     sm  ðØ €€€à Ð Ð Ð Ø €€€Ø €€€à )Ð )Ð )Ð )Ð )Ð )Ð )Ð )Ð )à Ð Ð Ð ðð ð ð ð ð ð ð ð ð ð ð ð ð ð Ð Ð Ð Ð Ð Ø 0Ð 0Ð 0Ð 0Ð 0Ð 0ð €„Ð.Ð.Ð.Ð/Ñ/Ô/ðð ñ 0Ô/ððW40ð W40ð W40ð W40ð W40ñ W40ô W40ð W40ðth „×ÒØ�U˜L˜FœL¨°]°R´]À9Ñ5MÔ5MÐNÑNÔNÐOñô ð „×ÒØ��cˆ{¨4ÀÐEÐEÐFñô ð „×ÒØ
ØÐ2Ð3°cÐ;PÐ5QÐRñô ð	.ð 	.ñ	ô ñô ñô ð	.ð
ð 
ð 
ð$ „×ÒØà¨DÐ1Ð1Ø°Ð5Ð5Ø¨Ð1Ð1ðñô ð,ð ,ñô ð,ð,ð ,ð ,ð,ð ,ð ,ð ;ð ;ð ;ð*),ð ),ð ),ðXBð Bð Bð „×ÒØàØˆŒÐ%¨]¨R¬]¸9Ñ-EÔ-EÐFÑFÔFØˆŒÐ,°M°B´MÀ)Ñ4LÔ4LÐMÑMÔMðñô ð,ð ,ñô ð,ð8 €„ˆyÑÔð,ð ,ñ Ôð,ð,	,ð 	,ð 	,ð#,ð #,ð #,ð #,ð #,r   