§
    fŠtj‹ ã                   ó–  — d dl Zd dlmZmZmZmZmZmZm	Z	 d dl
Z
d dl
mZ d dlmZ ddlmZ e
j        j        Ze
j        j        Z G d„ d¦  «        Z eej        ej        ¦  «         G d	„ d
¦  «        ¦   «         Z eej        ej        ¦  «         G d„ d¦  «        ¦   «         Z eej        ¦  «        d„ ¦   «         Z eej        ¦  «        d„ ¦   «         Z eej        ¦  «        d„ ¦   «         Z eej        ¦  «        d„ ¦   «         Z edd¬¦  «         eej        ¦  «        d„ ¦   «         ¦   «         Z  eddgd¬¦  «         edd¬¦  «        e
j         !                    d e	ej        ¦  «         e	ej        ¦  «         e	ej        ¦  «         e	ej        ¦  «        g¦  «        e
j         !                    dddg¦  «        e
j         !                    dddg¦  «        d„ ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         Z" eddgd¬¦  «         eej#        ¦  «        d„ ¦   «         ¦   «         Z$ eej%        ¦  «        d „ ¦   «         Z&dS )!é    N)Úis_cupyÚis_numpyÚxp_assert_closeÚxp_assert_equalÚassert_array_almost_equalÚmake_xp_test_caseÚmake_xp_pytest_param)Úraises)Úndimageé   )Útypesc                   ó(=  — e Zd Z eej        ¦  «        ej                             de	¦  «        d„ ¦   «         ¦   «         Z
 eej        ¦  «        ej                             de	¦  «        d„ ¦   «         ¦   «         Z eej        ¦  «        ej                             de	¦  «        d„ ¦   «         ¦   «         Z edd¬¦  «         eej        ¦  «        ej                             de	¦  «        d„ ¦   «         ¦   «         ¦   «         Z ed	d
¬¦  «         eej        ¦  «        ej                             de	¦  «        d„ ¦   «         ¦   «         ¦   «         Z eej        ¦  «        ej                             de	¦  «        d„ ¦   «         ¦   «         Z eej        ¦  «        d„ ¦   «         Z eej        ej        ¦  «        ej                             de	¦  «        d„ ¦   «         ¦   «         Z eej        ej        ¦  «        ej                             de	¦  «        d„ ¦   «         ¦   «         Z edd¬¦  «         eej        ¦  «        ej                             de	¦  «        d„ ¦   «         ¦   «         ¦   «         Z edd¬¦  «         eej        ¦  «        d„ ¦   «         ¦   «         Z edd¬¦  «         eej        ¦  «        ej                             de	¦  «        d„ ¦   «         ¦   «         ¦   «         Z ed	d
¬¦  «         eej        ej        ¦  «        ej                             de	¦  «        d„ ¦   «         ¦   «         ¦   «         Z edd¬¦  «         eej        ej        ¦  «        ej                             de	¦  «        d„ ¦   «         ¦   «         ¦   «         Z eej        ej        ¦  «        ej                             de	¦  «        d„ ¦   «         ¦   «         Z eej        ej        ¦  «        ej                             de	¦  «        d„ ¦   «         ¦   «         Z ed	d¬¦  «         eej        ¦  «        d„ ¦   «         ¦   «         Z edd¬¦  «         eej        ¦  «        d„ ¦   «         ¦   «         Z eej         ¦  «        d „ ¦   «         Z! eej         ¦  «        d!„ ¦   «         Z" eej         ¦  «        d"„ ¦   «         Z# eej         ¦  «        d#„ ¦   «         Z$ eej%        ¦  «        d$„ ¦   «         Z& eej%        ¦  «        d%„ ¦   «         Z' eej%        ¦  «        d&„ ¦   «         Z( eej)        ¦  «        ej                             de	¦  «        d'„ ¦   «         ¦   «         Z* eej)        ¦  «        ej                             de	¦  «        d(„ ¦   «         ¦   «         Z+ eej)        ¦  «        ej                             de	¦  «        d)„ ¦   «         ¦   «         Z, eej)        ¦  «        ej                             de	¦  «        d*„ ¦   «         ¦   «         Z- eej)        ¦  «        ej                             de	¦  «        d+„ ¦   «         ¦   «         Z. ed	d,¬¦  «         eej)        ¦  «        ej                             de	¦  «        d-„ ¦   «         ¦   «         ¦   «         Z/ eej)        ¦  «        ej                             de	¦  «        d.„ ¦   «         ¦   «         Z0 eej)        ¦  «        ej                             de	¦  «        d/„ ¦   «         ¦   «         Z1 eej)        ¦  «        ej                             de	¦  «        d0„ ¦   «         ¦   «         Z2 eej)        ¦  «        ej                             de	¦  «        d1„ ¦   «         ¦   «         Z3 eej)        ¦  «        ej                             de	¦  «        d2„ ¦   «         ¦   «         Z4 eej)        ¦  «        ej                             de	¦  «        d3„ ¦   «         ¦   «         Z5 eej)        ¦  «        ej                             de	¦  «        d4„ ¦   «         ¦   «         Z6 eej)        ¦  «        ej                             de	¦  «        d5„ ¦   «         ¦   «         Z7 eej)        ¦  «        ej                             de	¦  «        d6„ ¦   «         ¦   «         Z8 eej)        ¦  «        ej                             de	¦  «        d7„ ¦   «         ¦   «         Z9 eej)        ¦  «        ej                             de	¦  «        d8„ ¦   «         ¦   «         Z: eej)        ¦  «        ej                             de	¦  «        d9„ ¦   «         ¦   «         Z; eej)        ¦  «        ej                             de	¦  «        d:„ ¦   «         ¦   «         Z< eej)        ¦  «        ej                             de	¦  «        d;„ ¦   «         ¦   «         Z= eej)        ¦  «        ej                             de	¦  «        d<„ ¦   «         ¦   «         Z> eej)        ¦  «        ej                             de	¦  «        d=„ ¦   «         ¦   «         Z? eej)        ¦  «        ej                             de	¦  «        d>„ ¦   «         ¦   «         Z@ eej)        ¦  «        ej                             de	¦  «        d?„ ¦   «         ¦   «         ZA eej)        ¦  «        ej                             de	¦  «        d@„ ¦   «         ¦   «         ZB eej)        ¦  «        ej                             de	¦  «        dA„ ¦   «         ¦   «         ZC eej)        ¦  «        ej                             de	¦  «        dB„ ¦   «         ¦   «         ZD ed	dC¬¦  «         eej)        ¦  «        dD„ ¦   «         ¦   «         ZE edd	gdE¬F¦  «         ed	dG¬¦  «         eej)        ¦  «        dH„ ¦   «         ¦   «         ¦   «         ZF ed	dC¬¦  «         eej)        ¦  «        dI„ ¦   «         ¦   «         ZG edd	gdE¬F¦  «         ed	dG¬¦  «         eej)        ¦  «        dJ„ ¦   «         ¦   «         ¦   «         ZH edd	gdE¬F¦  «         eej)        ¦  «        dK„ ¦   «         ¦   «         ZI ed	dG¬¦  «         eej)        ¦  «        dL„ ¦   «         ¦   «         ZJ ed	dG¬¦  «         eej)        ¦  «        dM„ ¦   «         ¦   «         ZK eej)        ¦  «        dN„ ¦   «         ZL edd	gdE¬F¦  «         eej)        ¦  «        dO„ ¦   «         ¦   «         ZM ed	dG¬¦  «         eej)        ¦  «        dP„ ¦   «         ¦   «         ZN edd	gdE¬F¦  «         ed	dG¬¦  «         eej)        ¦  «        dQ„ ¦   «         ¦   «         ¦   «         ZO eej)        ¦  «        dR„ ¦   «         ZP edd	gdE¬F¦  «         ed	dG¬¦  «         eej)        ¦  «        dS„ ¦   «         ¦   «         ¦   «         ZQ edd	gdE¬F¦  «         ed	dG¬¦  «         eej)        ¦  «        dT„ ¦   «         ¦   «         ¦   «         ZRej                             de	¦  «         eejS        ¦  «        dU„ ¦   «         ¦   «         ZTej                             de	¦  «         eejS        ¦  «        dV„ ¦   «         ¦   «         ZUej                             de	¦  «         eejS        ¦  «        dW„ ¦   «         ¦   «         ZVej                             de	¦  «         eejS        ¦  «        dX„ ¦   «         ¦   «         ZWej                             de	¦  «         eejS        ¦  «        dY„ ¦   «         ¦   «         ZXej                             de	¦  «         eejS        ¦  «        dZ„ ¦   «         ¦   «         ZYej                             de	¦  «         eejS        ¦  «        d[„ ¦   «         ¦   «         ZZej                             de	¦  «         eejS        ¦  «        d\„ ¦   «         ¦   «         Z[ej                             de	¦  «         eejS        ¦  «        d]„ ¦   «         ¦   «         Z\ej                             de	¦  «         eejS        ¦  «        d^„ ¦   «         ¦   «         Z]ej                             de	¦  «         eejS        ¦  «        d_„ ¦   «         ¦   «         Z^ej                             de	¦  «         eejS        ¦  «        d`„ ¦   «         ¦   «         Z_ej                             de	¦  «         eejS        ¦  «        da„ ¦   «         ¦   «         Z`ej                             de	¦  «         eejS        ¦  «        db„ ¦   «         ¦   «         Zaej                             de	¦  «         eejS        ¦  «        dc„ ¦   «         ¦   «         Zbej                             de	¦  «         eejS        ¦  «        dd„ ¦   «         ¦   «         Zcej                             de	¦  «         eejS        ¦  «        de„ ¦   «         ¦   «         Zdej                             de	¦  «         eejS        ¦  «        df„ ¦   «         ¦   «         Zeej                             de	¦  «         eejS        ¦  «        dg„ ¦   «         ¦   «         Zfej                             de	¦  «         eejS        ¦  «        dh„ ¦   «         ¦   «         Zgej                             de	¦  «         eejS        ¦  «        di„ ¦   «         ¦   «         Zhej                             de	¦  «         eejS        ¦  «        dj„ ¦   «         ¦   «         Ziej                             de	¦  «         eejS        ¦  «        dk„ ¦   «         ¦   «         Zjej                             de	¦  «         eejS        ¦  «        dl„ ¦   «         ¦   «         Zkej                             de	¦  «         eejS        ¦  «        dm„ ¦   «         ¦   «         Zlej                             de	¦  «         eejS        ¦  «        dn„ ¦   «         ¦   «         Zmej                             de	¦  «         eejS        ¦  «        do„ ¦   «         ¦   «         Znej                             de	¦  «         eejS        ¦  «        dp„ ¦   «         ¦   «         Zoej                             de	¦  «         eejS        ¦  «        dq„ ¦   «         ¦   «         Zp ed	dG¬¦  «         eejS        ¦  «        dr„ ¦   «         ¦   «         Zq edd	gds¬F¦  «         ed	dG¬¦  «         eejS        ¦  «        dt„ ¦   «         ¦   «         ¦   «         Zr ed	dG¬¦  «         eejS        ¦  «        du„ ¦   «         ¦   «         Zs edd	gds¬F¦  «         ed	dG¬¦  «         eejS        ¦  «        dv„ ¦   «         ¦   «         ¦   «         Zt ed	dG¬¦  «         eejS        ¦  «        dw„ ¦   «         ¦   «         Zu edd	gdx¬F¦  «         ed	dG¬¦  «         eejS        ¦  «        dy„ ¦   «         ¦   «         ¦   «         Zvej                             de	¦  «         eejS        ¦  «        dz„ ¦   «         ¦   «         Zw eejS        ¦  «        d{„ ¦   «         Zx eejy        ¦  «        d|„ ¦   «         Zz eejy        ¦  «        d}„ ¦   «         Z{ eejy        ¦  «        d~„ ¦   «         Z| eej}        ¦  «        ej                             de	¦  «        d„ ¦   «         ¦   «         Z~ eej}        ¦  «        ej                             de	¦  «        d€„ ¦   «         ¦   «         Zej                             de	¦  «         eej€        ¦  «        d�„ ¦   «         ¦   «         Z�ej                             de	¦  «         eej€        ¦  «        d‚„ ¦   «         ¦   «         Z‚ eejƒ        ¦  «        dƒ„ ¦   «         Z„ eejƒ        ¦  «        d„„ ¦   «         Z… eejƒ        ¦  «        d…„ ¦   «         Z† ed¬†¦  «         ed	d‡¬¦  «         edˆd‰¬¦  «        ej                             dŠd‹dŒg¦  «        ej                             d�dŽd�g¦  «        ej                             d�g d‘¢¦  «        ej                             d’ e‡ej)        ¦  «         e‡ejS        ¦  «         e‡ej}        ¦  «         e‡ej€        ¦  «         e‡ejˆ        ¦  «         e‡ejy        ¦  «         e‡ejƒ        ¦  «        g¦  «        d“„ ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         Z‰ eejŠ        ¦  «        d”„ ¦   «         Z‹ edˆd•¬¦  «         ed–d•¬¦  «         ed	d—¬¦  «         eejŠ        ¦  «        d˜„ ¦   «         ¦   «         ¦   «         ¦   «         ZŒ eejŠ        ¦  «        d™„ ¦   «         Z� eejŠ        ¦  «        dš„ ¦   «         ZŽ eej�        ¦  «        d›„ ¦   «         Z� eej�        ¦  «        dœ„ ¦   «         Z‘ eej�        ¦  «        d�„ ¦   «         Z’ eej“        ¦  «        dž„ ¦   «         Z” eej“        ¦  «        dŸ„ ¦   «         Z• eej–        ¦  «        d „ ¦   «         Z— eej–        ¦  «        d¡„ ¦   «         Z˜ edds¬¦  «         eej�        ejŠ        ej™        ¦  «        d¢„ ¦   «         ¦   «         Zš eej�        ejŠ        ej™        ¦  «        d£„ ¦   «         Z› edds¬¦  «         eej�        ejŠ        ejœ        ¦  «        d¤„ ¦   «         ¦   «         Z� eej�        ejŠ        ejœ        ¦  «        d¥„ ¦   «         Zž edˆd•¬¦  «         ed–d•¬¦  «         eej“        ejŸ        ¦  «        d¦„ ¦   «         ¦   «         ¦   «         Z  eej“        ejŸ        ¦  «        d§„ ¦   «         Z¡ ed	d¨¬¦  «         eejŸ        ¦  «        d©„ ¦   «         ¦   «         Z¢ edˆd•¬¦  «         ed–d•¬¦  «         eejŸ        ¦  «        dª„ ¦   «         ¦   «         ¦   «         Z£ edˆd•¬¦  «         ed–d•¬¦  «         eej–        ej¤        ¦  «        d«„ ¦   «         ¦   «         ¦   «         Z¥ eej–        ej¤        ¦  «        d¬„ ¦   «         Z¦ ed	d­¬¦  «         eej¤        ¦  «        d®„ ¦   «         ¦   «         Z§ edˆd•¬¦  «         ed–d•¬¦  «         eej¤        ¦  «        d¯„ ¦   «         ¦   «         ¦   «         Z¨ ed¬†¦  «         ed	d‡¬¦  «         edˆd‰¬¦  «        ej                             d�dŽd�g¦  «        ej                             d�g d‘¢¦  «        ej                             d°g d±¢¦  «        ej                             d²g d³¢¦  «        ej                             d’ e‡ejŠ        ¦  «         e‡ej�        ¦  «         e‡ej“        ¦  «         e‡ej–        ¦  «         e‡ejœ        ¦  «         e‡ej™        ¦  «         e‡ejŸ        ¦  «         e‡ej¤        ¦  «        g¦  «        d´„ ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         Z© edd	gdµ¬F¦  «         eejˆ        ¦  «        ej                             de	¦  «        d¶„ ¦   «         ¦   «         ¦   «         Zª eejˆ        ¦  «        ej                             de	¦  «        d·„ ¦   «         ¦   «         Z« eejˆ        ¦  «        ej                             de	¦  «        d¸„ ¦   «         ¦   «         Z¬d¹S )ºÚTestNdimageMorphologyÚdtypec                 ó  — t          ||¦  «        }|                     g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	|¬¦  «        }t          j        |dd¬¦  «        \  }}g d¢g d¢g d¢g d¢g d	¢g d¢g d¢g d¢g d¢g	}|                     |¦  «        }t	          ||z  |¦  «         g d¢g d
¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	g}|                     |¦  «        }t	          ||¦  «         d S )N©	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   Ú	euclideanT©Úreturn_indices)	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   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%   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   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   ©ÚgetattrÚasarrayr   Údistance_transform_bfr   ©Úselfr   ÚxpÚdataÚoutÚftÚexpecteds          úa/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/scipy/ndimage/tests/test_morphology.pyÚtest_distance_transform_bf01z2TestNdimageMorphology.test_distance_transform_bf01   s  € õ ˜˜EÑ"Ô"ˆð �zŠzÐ6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6ð8ð @Eð ñ Fô Fˆõ Ô/°°kØ?CðEñ Eô E‰ˆˆRà/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/ð1ˆð —:’:˜hÑ'Ô'ˆÝ! #¨¡)¨XÑ6Ô6Ð6à0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2ð 1Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2ð3ˆð$ —:’:˜hÑ'Ô'ˆÝ! " hÑ/Ô/Ð/Ð/Ð/ó    c                 ó   — t          ||¦  «        }|                     g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	|¬¦  «        }t          j        |dd¬¦  «        \  }}g d¢g d¢g d¢g d¢g d	¢g d¢g d¢g d¢g d¢g	}|                     |¦  «        }t	          ||¦  «         g d¢g d
¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	g}|                     |¦  «        }t	          ||¦  «         d S )Nr   r   r   r   Ú	cityblockTr   ©	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   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-   r1   s          r8   Útest_distance_transform_bf02z2TestNdimageMorphology.test_distance_transform_bf02G   s  € õ ˜˜EÑ"Ô"ˆà�zŠzÐ6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6ð8ð @Eð ñ Fô Fˆõ Ô/°°kØ?CðEñ Eô E‰ˆˆRð 0Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/ð1ˆð —:’:˜hÑ'Ô'ˆÝ! # xÑ0Ô0Ð0à0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2ð 1Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2ð3ˆð$ —:’:˜hÑ'Ô'ˆÝ! " hÑ/Ô/Ð/Ð/Ð/r:   c                 ó   — t          ||¦  «        }|                     g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	|¬¦  «        }t          j        |dd¬¦  «        \  }}g d¢g d¢g d¢g d¢g d	¢g d¢g d¢g d¢g d¢g	}|                     |¦  «        }t	          ||¦  «         g d¢g d
¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	g}|                     |¦  «        }t	          ||¦  «         d S )Nr   r   r   r   Ú
chessboardTr   )	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#   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   )	r   r   r   r   r"   r"   r%   r%   r   )	r   r   r   r   r$   r"   r"   r%   r   r-   r1   s          r8   Útest_distance_transform_bf03z2TestNdimageMorphology.test_distance_transform_bf03y   s  € õ ˜˜EÑ"Ô"ˆà�zŠzÐ6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6ð8ð @Eð ñ Fô Fˆõ Ô/°°lØ?CðEñ Eô E‰ˆˆRð 0Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/ð1ˆð —:’:˜hÑ'Ô'ˆÝ! # xÑ0Ô0Ð0à0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2ð 1Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2ð3ˆð$ —:’:˜hÑ'Ô'ˆÝ! " hÑ/Ô/Ð/Ð/Ð/r:   Tz,inplace distances= arrays are numpy-specific)Únp_onlyÚreasonc                 ó´  — t          ||¦  «        }|                     g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	|¬¦  «        }t          j        |d¬¦  «        \  }}g }g }|                     |j        |j        ¬¦  «        }t          j        ||¬¦  «         |                     |¦  «         t          j        |dd¬	¦  «        }	|                     |	¦  «         t          j	        |j        |j
        ¬¦  «        }	t          j        |dd
|	¬¦  «         |                     |	¦  «         t          j        |d¬¦  «        \  }}	|                     |¦  «         |                     |	¦  «         |                     |j        |j        ¬¦  «        }t          j        ||d
¬¦  «        }	|                     |¦  «         |                     |	¦  «         t          j	        |j        |j
        ¬¦  «        }	t          j        |d
|	¬¦  «        }|                     |¦  «         |                     |	¦  «         |                     |j        |j        ¬¦  «        }t          j	        |j        |j
        ¬¦  «        }	t          j        ||d
|	¬¦  «         |                     |¦  «         |                     |	¦  «         |D ]}t          ||¦  «         Œ|D ]}	t          ||	¦  «         Œd S )Nr   r   r   r   r   r   ©Ú	distancesF©Úreturn_distancesr   T©rK   r   Úindices©rI   r   ©r   rM   ©rI   r   rM   )r.   r/   r   r0   ÚzerosÚshapeÚfloat64ÚappendÚnprM   Úint32r   ©
r2   r   r3   r4   ÚtdtÚtftÚdtsÚftsÚdtr6   s
             r8   Útest_distance_transform_bf04z2TestNdimageMorphology.test_distance_transform_bf04¬   s  € õ ˜˜EÑ"Ô"ˆà�zŠzÐ6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6ð8ð @Eð ñ Fô Fˆõ Ô0°ÀaÐHÑHÔH‰ˆˆSØˆØˆØ�XŠX�d”j¨¬
ˆXÑ3Ô3ˆÝÔ% d°bÐ9Ñ9Ô9Ð9Ø�
Š
�2‰ŒˆÝÔ*Ø 5¸ð<ñ <ô <ˆà�
Š
�2‰ŒˆÝŒZ˜œ
¨"¬(Ð3Ñ3Ô3ˆÝÔ%Ø 5¸Àrð	Kñ 	Kô 	Kð 	Kà�
Š
�2‰ŒˆÝÔ.Ø ð$ñ $ô $‰ˆˆBà�
Š
�2‰ŒˆØ�
Š
�2‰ŒˆØ�XŠX�d”j¨¬
ˆXÑ3Ô3ˆÝÔ*Ø˜B¨tð5ñ 5ô 5ˆà�
Š
�2‰ŒˆØ�
Š
�2‰ŒˆÝŒZ˜œ
¨"¬(Ð3Ñ3Ô3ˆÝÔ*Ø ¨rð3ñ 3ô 3ˆà�
Š
�2‰ŒˆØ�
Š
�2‰ŒˆØ�XŠX�d”j¨¬
ˆXÑ3Ô3ˆÝŒZ˜œ
¨"¬(Ð3Ñ3Ô3ˆÝÔ%Ø˜B¨t¸Rð	Añ 	Aô 	Að 	Aà�
Š
�2‰ŒˆØ�
Š
�2‰ŒˆØð 	/ð 	/ˆBÝ% c¨2Ñ.Ô.Ð.Ð.Øð 	/ð 	/ˆBÝ% c¨2Ñ.Ô.Ð.Ð.ð	/ð 	/r:   Úcupyz(CuPy does not have distance_transform_bf©rF   c                 ó  — t          ||¦  «        }|                     g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	|¬¦  «        }t          j        |ddddg¬¦  «        \  }}g d¢g d¢g d	¢g d
¢g d¢g d
¢g d	¢g d¢g d¢g	}|                     |¦  «        }t	          ||z  |¦  «         g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	g}|                     |¦  «        }t	          ||¦  «         d S )Nr   r   r   r   r   Tr   ©r   Úsampling)	r   r   r   r   r   r   r   r   r   )	r   r   r   r   é   r   r   r   r   )	r   r   r   rc   é    rc   r   r   r   r   r   r   r!   r#   r&   r'   r(   r)   r*   r+   r,   r-   r1   s          r8   Útest_distance_transform_bf05z2TestNdimageMorphology.test_distance_transform_bf05ã   s  € õ ˜˜EÑ"Ô"ˆà�zŠzÐ6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6ð8ð @Eð ñ Fô Fˆõ Ô/Ø�+¨d¸aÀ¸VðEñ Eô E‰ˆˆRà/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø0Ð0Ð0Ø2Ð2Ð2Ø0Ð0Ð0Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/ð1ˆð —:’:˜hÑ'Ô'ˆÝ! #¨¡)¨XÑ6Ô6Ð6à0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2ð 1Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2ð3ˆð$ —:’:˜hÑ'Ô'ˆÝ! " hÑ/Ô/Ð/Ð/Ð/r:   c                 ó  — t          ||¦  «        }|                     g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	|¬¦  «        }t          j        |ddddg¬	¦  «        \  }}g d¢g d¢g d
¢g d¢g d¢g d¢g d
¢g d¢g d¢g	}|                     |¦  «        }t	          ||z  |¦  «         g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	g}|                     |¦  «        }t	          ||¦  «         d S )Nr   r   r   r   r   Tr   r   ra   )	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    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"   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-   r1   s          r8   Útest_distance_transform_bf06z2TestNdimageMorphology.test_distance_transform_bf06  s  € õ ˜˜EÑ"Ô"ˆà�zŠzÐ6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6ð8ð @Eð ñ Fô Fˆõ Ô/Ø�+¨d¸aÀ¸VðEñ Eô E‰ˆˆRà/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/ð1ˆð —:’:˜hÑ'Ô'ˆÝ! #¨¡)¨XÑ6Ô6Ð6à0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2ð 1Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2ð3ˆð$ —:’:˜hÑ'Ô'ˆÝ! " hÑ/Ô/Ð/Ð/Ð/r:   c                 óî   — |                      g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	¦  «        }t          t          ¦  «        5  t          j        |dd¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   r   r   FrJ   )r/   Úassert_raisesÚRuntimeErrorr   r0   )r2   r3   r4   s      r8   Útest_distance_transform_bf07z2TestNdimageMorphology.test_distance_transform_bf07F  s  € ð �zŠzÐ6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6ð8ñ 9ô 9ˆõ �<Ñ(Ô(ð 	ð 	ÝÔ)Ø u¸Uðñ ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   ÁA*Á*A.Á1A.c                 óÆ  — t          ||¦  «        }|                     g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	|¬¦  «        }t          j        |dd¬¦  «        \  }}t          j        |d¦  «        }t          ||¦  «         g d¢g d¢g d	¢g d
¢g d¢g d¢g d¢g d¢g d¢g	g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	g}|                     |¦  «        }t          ||¦  «         d S )Nr   r   r   r   r<   Tr   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$   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   r   r   r$   r"   r%   r   ©r.   r/   r   Údistance_transform_cdtr0   r   ©r2   r   r3   r4   r5   r6   Úbfr7   s           r8   Útest_distance_transform_cdt01z3TestNdimageMorphology.test_distance_transform_cdt01W  s°  € õ ˜˜EÑ"Ô"ˆð �zŠzÐ6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6ð8ð @Eð ñ Fô Fˆõ Ô0Ø�+¨dð4ñ 4ô 4‰ˆˆRåÔ*¨4°Ñ=Ô=ˆÝ! " cÑ*Ô*Ð*à0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2ð 1Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2ð3ˆð$ —:’:˜hÑ'Ô'ˆÝ! " hÑ/Ô/Ð/Ð/Ð/r:   c                 óÆ  — t          ||¦  «        }|                     g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	|¬¦  «        }t          j        |dd¬¦  «        \  }}t          j        |d¦  «        }t          ||¦  «         g d¢g d¢g d	¢g d
¢g d¢g d¢g d¢g d¢g d¢g	g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	g}|                     |¦  «        }t          ||¦  «         d S )Nr   r   r   r   rA   Tr   r   rn   )	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$   ro   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   rC   rB   rp   rr   s           r8   Útest_distance_transform_cdt02z3TestNdimageMorphology.test_distance_transform_cdt02�  s±  € õ ˜˜EÑ"Ô"ˆØ�zŠzÐ6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6ð8ð @Eð ñ Fô Fˆõ Ô0°°|Ø@DðFñ Fô F‰ˆˆRåÔ*¨4°Ñ>Ô>ˆÝ! " cÑ*Ô*Ð*à0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2ð 1Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2ð3ˆð$ —:’:˜hÑ'Ô'ˆÝ! " hÑ/Ô/Ð/Ð/Ð/r:   z*inplace indices= arrays are numpy-specificc                 óD  — t          ||¦  «        }|                     g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	|¬¦  «        }t          j        |d¬¦  «        \  }}g }g }|                     |j        |j        ¬¦  «        }t          j        ||¬¦  «         |                     |¦  «         t          j        |dd¬	¦  «        }	|                     |	¦  «         |                     t          j	        |j        t          j        ¬¦  «        ¦  «        }	t          j        |dd|	¬
¦  «         |                     |	¦  «         t          j        |d¬¦  «        \  }}	|                     |¦  «         |                     |	¦  «         |                     |j        |j        ¬¦  «        }t          j        ||d¬¦  «        }	|                     |¦  «         |                     |	¦  «         |                     t          j	        |j        t          j        ¬¦  «        ¦  «        }	t          j        |d|	¬¦  «        }|                     |¦  «         |                     |	¦  «         |                     |j        |j        ¬¦  «        }|                     t          j	        |j        t          j        ¬¦  «        ¦  «        }	t          j        ||d|	¬¦  «         |                     |¦  «         |                     |	¦  «         |D ]}t          ||¦  «         Œ|D ]}	t          ||	¦  «         Œd S )Nr   r   r   r   Tr   rH   FrJ   rL   rN   rO   rP   )r.   r/   r   rq   rQ   rR   rV   rT   rU   rM   r   rW   s
             r8   Útest_distance_transform_cdt03z3TestNdimageMorphology.test_distance_transform_cdt03©  s7  € õ ˜˜EÑ"Ô"ˆØ�zŠzÐ6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6ð8ð @Eð ñ Fô Fˆõ Ô1°$ÀtÐLÑLÔL‰ˆˆSØˆØˆØ�XŠX�d”j¨¬ˆXÑ1Ô1ˆÝÔ& t°rÐ:Ñ:Ô:Ð:Ø�
Š
�2‰ŒˆÝÔ+Ø 5¸ð?ñ ?ô ?ˆà�
Š
�2‰ŒˆØ�ZŠZ�œ
 4¤:µR´XÐ>Ñ>Ô>Ñ?Ô?ˆÝÔ&Ø 5¸Àrð	Kñ 	Kô 	Kð 	Kà�
Š
�2‰ŒˆÝÔ/Ø ð'ñ 'ô '‰ˆˆBà�
Š
�2‰ŒˆØ�
Š
�2‰ŒˆØ�XŠX�d”j¨¬ˆXÑ1Ô1ˆÝÔ+Ø˜B¨tð5ñ 5ô 5ˆà�
Š
�2‰ŒˆØ�
Š
�2‰ŒˆØ�ZŠZ�œ
 4¤:µR´XÐ>Ñ>Ô>Ñ?Ô?ˆÝÔ+Ø ¨rð3ñ 3ô 3ˆà�
Š
�2‰ŒˆØ�
Š
�2‰ŒˆØ�XŠX�d”j¨¬ˆXÑ1Ô1ˆØ�ZŠZ�œ
 4¤:µR´XÐ>Ñ>Ô>Ñ?Ô?ˆÝÔ& t°rØ6:ÀBð	Hñ 	Hô 	Hð 	Hà�
Š
�2‰ŒˆØ�
Š
�2‰ŒˆØð 	/ð 	/ˆBÝ% c¨2Ñ.Ô.Ð.Ð.Øð 	/ð 	/ˆBÝ% c¨2Ñ.Ô.Ð.Ð.ð	/ð 	/r:   z3XXX: does not raise unless indices is a numpy arrayc                 óD  — |                      g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	¦  «        }|                     |j        f|j        z   |j        ¬¦  «        }t          t          ¦  «        5  t          j        |dd|¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   r   r   r   TFrL   )	r/   rQ   ÚndimrR   rV   rj   rk   r   r0   )r2   r3   r4   Úindices_outs       r8   Útest_distance_transform_cdt04z3TestNdimageMorphology.test_distance_transform_cdt04ß  s)  € ð �zŠzÐ6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6ð8ñ 9ô 9ˆð —h’h ¤	˜|¨d¬jÑ8ÀÄ�hÑIÔIˆÝ�<Ñ(Ô(ð 	ð 	ÝÔ)ØØ!%Ø$Ø#ð	ñ ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   Á/BÂBÂBÚtorchzint overflowc                 ó  — t          ||¦  «        }|                     g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	|¬¦  «        }|                     d¦  «        }t          j        ||¬¦  «        }|                     |¦  «        dk    sJ ‚d S )Nr   r   r   r   ©r    r    ©Úmetriciëÿÿÿ)r.   r/   Úonesr   rq   Úsum)r2   r   r3   r4   Ú
metric_argÚactuals         r8   Útest_distance_transform_cdt05z3TestNdimageMorphology.test_distance_transform_cdt05÷  sÓ   € õ ˜˜EÑ"Ô"ˆð �zŠzÐ6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6ð8ð @Eð ñ Fô Fˆð —W’W˜V‘_”_ˆ
ÝÔ/°¸ZÐHÑHÔHˆØ�vŠv�f‰~Œ~ Ò$Ð$Ð$Ð$Ð$Ð$r:   c                 ó¤  — t          ||¦  «        }|                     g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	|¬¦  «        }t          j        |d¬¦  «        \  }}t          j        |d¦  «        }t          ||¦  «         t          j        |¦  «        }|t          j        |j        dd …         |j	        ¬¦  «        z
  }| 
                    t          j        ¦  «        }t          j        |||¦  «         t          j                             |d	¬
¦  «        }t          j        ||¦  «         |                     |¦  «        }t          ||¦  «         d S )Nr   r   r   r   Tr   r   r   r   ©Úaxis)r.   r/   r   Údistance_transform_edtr0   r   rU   rM   rR   r   ÚastyperS   ÚmultiplyÚaddÚreduceÚsqrt)	r2   r   r3   r4   r5   r6   rs   Únp_ftr\   s	            r8   Útest_distance_transform_edt01z3TestNdimageMorphology.test_distance_transform_edt01  so  € õ
 ˜˜EÑ"Ô"ˆð �zŠzÐ6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6ð8ð @Eð ñ Fô Fˆõ Ô0°ÀdÐKÑKÔK‰ˆˆRÝÔ*¨4°Ñ=Ô=ˆÝ! " cÑ*Ô*Ð*õ ”
˜2‘”ˆØ•R”Z ¤¨A¨B¨B¤°u´{ÐCÑCÔCÑCˆØ�YŠY•r”zÑ"Ô"ˆÝ
Œ�B˜˜BÑÔÐÝŒV�]Š]˜2 Aˆ]Ñ&Ô&ˆÝ
Œ��B‰Œˆà�ZŠZ˜‰^Œ^ˆÝ! " bÑ)Ô)Ð)Ð)Ð)r:   z%inplace distances= are numpy-specificc                 ó2  — t          ||¦  «        }|                     g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	|¬¦  «        }t          j        |d¬¦  «        \  }}g }g }|                     |j        |j        ¬¦  «        }t          j        ||¬¦  «         |                     |¦  «         t          j        |dd¬	¦  «        }	|                     |	¦  «         t          j	        |j        |j
        ¬¦  «        }	|                     |	¦  «        }	t          j        |d
d|	¬¦  «         |                     |	¦  «         t          j        |d¬¦  «        \  }}	|                     |¦  «         |                     |	¦  «         |                     |j        |j        ¬¦  «        }t          j        ||d¬¦  «        }	|                     |¦  «         |                     |	¦  «         t          j	        |j        |j
        ¬¦  «        }	|                     |	¦  «        }	t          j        |d|	¬¦  «        }|                     |¦  «         |                     |	¦  «         |                     |j        |j        ¬¦  «        }t          j	        |j        |j
        ¬¦  «        }	|                     |	¦  «        }	t          j        ||d|	¬¦  «         |                     |¦  «         |                     |	¦  «         |D ]}t          ||¦  «         Œ|D ]}	t          ||	¦  «         Œd S )Nr   r   r   r   Tr   rH   r   rJ   FrL   rN   rO   rP   )r.   r/   r   rŠ   rQ   rR   rS   rT   rU   rM   rV   r   rW   s
             r8   Útest_distance_transform_edt02z3TestNdimageMorphology.test_distance_transform_edt02+  s@  € õ ˜˜EÑ"Ô"ˆØ�zŠzÐ6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6ð8ð @Eð ñ Fô Fˆõ Ô1°$ÀtÐLÑLÔL‰ˆˆSØˆØˆà�XŠX�d”j¨¬
ˆXÑ3Ô3ˆÝÔ& t°rÐ:Ñ:Ô:Ð:Ø�
Š
�2‰ŒˆåÔ+Ø 1°Tð;ñ ;ô ;ˆà�
Š
�2‰ŒˆåŒZ˜œ
¨"¬(Ð3Ñ3Ô3ˆØ�ZŠZ˜‰^Œ^ˆÝÔ&Ø 5¸Àrð	Kñ 	Kô 	Kð 	Kà�
Š
�2‰ŒˆåÔ/Ø ð'ñ 'ô '‰ˆˆBà�
Š
�2‰ŒˆØ�
Š
�2‰Œˆà�XŠX�d”j¨¬
ˆXÑ3Ô3ˆÝÔ+Ø˜B¨tð5ñ 5ô 5ˆà�
Š
�2‰ŒˆØ�
Š
�2‰ŒˆåŒZ˜œ
¨"¬(Ð3Ñ3Ô3ˆØ�ZŠZ˜‰^Œ^ˆÝÔ+Ø ¨rð3ñ 3ô 3ˆà�
Š
�2‰ŒˆØ�
Š
�2‰Œˆà�XŠX�d”j¨¬
ˆXÑ3Ô3ˆÝŒZ˜œ
¨"¬(Ð3Ñ3Ô3ˆØ�ZŠZ˜‰^Œ^ˆÝÔ&Ø˜B¨t¸Rð	Añ 	Aô 	Að 	Aà�
Š
�2‰ŒˆØ�
Š
�2‰Œˆàð 	/ð 	/ˆBÝ% c¨2Ñ.Ô.Ð.Ð.Øð 	/ð 	/ˆBÝ% c¨2Ñ.Ô.Ð.Ð.ð	/ð 	/r:   c                 ó  — t          ||¦  «        }|                     g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	|¬¦  «        }t          j        |dddg¬¦  «        }t          j        |ddg¬¦  «        }t          ||¦  «         d S )Nr   r   r   r   r   r   ©rb   ©r.   r/   r   r0   rŠ   r   ©r2   r   r3   r4   Úrefr5   s         r8   Útest_distance_transform_edt03z3TestNdimageMorphology.test_distance_transform_edt03m  óÖ   € õ ˜˜EÑ"Ô"ˆà�zŠzÐ6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6ð8ð @Eð ñ Fô Fˆõ Ô+¨D°+ÈÈAÈÐOÑOÔOˆÝÔ,¨T¸QÀ¸FÐCÑCÔCˆÝ! # sÑ+Ô+Ð+Ð+Ð+r:   c                 ó  — t          ||¦  «        }|                     g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	|¬¦  «        }t          j        |dddg¬¦  «        }t          j        |ddg¬¦  «        }t          ||¦  «         d S )	Nr   r   r   r   r   r   r   r•   r–   r—   s         r8   Útest_distance_transform_edt4z2TestNdimageMorphology.test_distance_transform_edt4€  rš   r:   z8Only 2D and 3D distance transforms are supported in CuPyc                 óœ   — t          j        |                     d¦  «        ¦  «        }t          ||                     dg¦  «        ¦  «         d S )NFç        )r   rŠ   r/   r   )r2   r3   r5   s      r8   Útest_distance_transform_edt5z2TestNdimageMorphology.test_distance_transform_edt5“  sD   € õ Ô,¨R¯ZªZ¸Ñ->Ô->Ñ?Ô?ˆÝ! # r§z¢z°2°$Ñ'7Ô'7Ñ8Ô8Ð8Ð8Ð8r:   c                 ó2  — |                      g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g	¦  «        }|                     |j        |j        ¬¦  «        }t	          t
          ¦  «        5  t          j        |dd|¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   r   r   r   TF)r   rK   rI   )r/   rQ   rR   rS   rj   rk   r   r0   )r2   r3   r4   Údistances_outs       r8   Útest_distance_transform_edt6z2TestNdimageMorphology.test_distance_transform_edt6œ  s   € ð �zŠzÐ6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6Ø6Ð6Ð6ð8ñ 9ô 9ˆð Ÿš ¤°2´:˜Ñ>Ô>ˆÝ�<Ñ(Ô(ð 	ð 	ÝÔ)ØØ#Ø!&Ø'ð	ñ ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   Á&BÂBÂBc                 ó@   — t          j        dd¦  «        }|dk    sJ ‚d S )Nr   r   )r   Úgenerate_binary_structure©r2   r3   Ústructs      r8   Útest_generate_structure01z/TestNdimageMorphology.test_generate_structure01´  s%   € åÔ2°1°aÑ8Ô8ˆØ˜Š{ˆ{ˆ{ˆ{ˆ{ˆ{r:   c                 óT   — t          j        dd¦  «        }t          |g d¢¦  «         d S )Nr   ©r   r   r   ©r   r¤   r   r¥   s      r8   Útest_generate_structure02z/TestNdimageMorphology.test_generate_structure02¹  s.   € åÔ2°1°aÑ8Ô8ˆÝ! &¨)¨)¨)Ñ4Ô4Ð4Ð4Ð4r:   c                 ób   — t          j        dd¦  «        }t          |g d¢g d¢g d¢g¦  «         d S )Nr   r   ©r   r   r   r©   rª   r¥   s      r8   Útest_generate_structure03z/TestNdimageMorphology.test_generate_structure03¾  óK   € åÔ2°1°aÑ8Ô8ˆÝ! &¨9¨9¨9Ø+4¨9¨9Ø+4¨9¨9ð+6ñ 	7ô 	7ð 	7ð 	7ð 	7r:   c                 ób   — t          j        dd¦  «        }t          |g d¢g d¢g d¢g¦  «         d S )Nr   r©   rª   r¥   s      r8   Útest_generate_structure04z/TestNdimageMorphology.test_generate_structure04Å  r¯   r:   c                 ó  — g d¢g d¢g d¢g}|                      |¦  «        }t          j        |d¦  «        }t          j         g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }t          ||¦  «         d S )Nr­   r©   r   ©r   r   r   r   r   ©r   r   r   r   r   ©r   r   r   r   r   r   ©r/   r   Úiterate_structurerU   Úboolr   ©r2   r3   r¦   r5   r7   s        r8   Útest_iterate_structure01z.TestNdimageMorphology.test_iterate_structure01Ì  s®   € à�)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆÝÔ'¨°Ñ2Ô2ˆÝ”:˜˜˜Ø.˜˜Ø.˜˜Ø.˜˜Ø.˜˜ð	0õ 8<ð	=ñ =ô =ˆð
 —:’:˜hÑ'Ô'ˆÝ! # xÑ0Ô0Ð0Ð0Ð0r:   c                 ó  — ddgddgddgg}|                      |¦  «        }t          j        |d¦  «        }t          j         g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }t          ||¦  «         d S )Nr   r   r   )r   r   r   ©r   r   r   r©   r   r¶   r¹   s        r8   Útest_iterate_structure02z.TestNdimageMorphology.test_iterate_structure02Û  s®   € à�a�&Ø�a�&Ø�a�&ðˆð —’˜FÑ#Ô#ˆÝÔ'¨°Ñ2Ô2ˆÝ”:˜y˜y˜yØ(˜y˜yØ(˜y˜yØ(˜y˜yØ(˜y˜yð	*õ 26ð	7ñ 7ô 7ˆð
 —:’:˜hÑ'Ô'ˆå! # xÑ0Ô0Ð0Ð0Ð0r:   c                 ó@  — g d¢g d¢g d¢g}|                      |¦  «        }t          j        |dd¦  «        }g d¢g d¢g d¢g d¢g d¢g}t          j         |t          ¬¦  «        }|                      |¦  «        }t          |d	         |¦  «         |d         ddgk    sJ ‚d S )
Nr­   r©   r   r   r³   r´   rµ   r   r   r¶   r¹   s        r8   Útest_iterate_structure03z.TestNdimageMorphology.test_iterate_structure03ë  sÉ   € à�)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆÝÔ'¨°°1Ñ5Ô5ˆØ#�O�OØ#�O�OØ#�O�OØ#�O�OØ#�O�Oð	%ˆõ
 ”:˜h­dÐ3Ñ3Ô3ˆØ—:’:˜hÑ'Ô'ˆÝ! # a¤&¨(Ñ3Ô3Ð3Ø�1Œv˜!˜Q˜ÒÐÐÐÐÐr:   c                 óÀ   — t          ||¦  «        }|                     g |¬¦  «        }t          j        |¦  «        }||                     d|j        ¬¦  «        k    sJ ‚d S ©Nr   r   ©r.   r‚   r   Úbinary_erosionr/   r   ©r2   r   r3   r4   r5   s        r8   Útest_binary_erosion01z+TestNdimageMorphology.test_binary_erosion01ü  sa   € õ ˜˜EÑ"Ô"ˆØ�wŠw�r ˆwÑ'Ô'ˆÝÔ$ TÑ*Ô*ˆØ�b—j’j ¨#¬)�jÑ4Ô4Ò4Ð4Ð4Ð4Ð4Ð4r:   c                 óÄ   — t          ||¦  «        }|                     g |¬¦  «        }t          j        |d¬¦  «        }||                     d|j        ¬¦  «        k    sJ ‚d S )Nr   r   ©Úborder_valuerÂ   rÄ   s        r8   Útest_binary_erosion02z+TestNdimageMorphology.test_binary_erosion02  sf   € õ ˜˜EÑ"Ô"ˆØ�wŠw�r ˆwÑ'Ô'ˆÝÔ$ T¸Ð:Ñ:Ô:ˆØ�b—j’j ¨#¬)�jÑ4Ô4Ò4Ð4Ð4Ð4Ð4Ð4r:   c                 óÆ   — t          ||¦  «        }|                     dg|¬¦  «        }t          j        |¦  «        }t	          ||                     dg¦  «        ¦  «         d S ©Nr   r   r   ©r.   r‚   r   rÃ   r   r/   rÄ   s        r8   Útest_binary_erosion03z+TestNdimageMorphology.test_binary_erosion03  s\   € õ ˜˜EÑ"Ô"ˆØ�wŠw˜�s %ˆwÑ(Ô(ˆÝÔ$ TÑ*Ô*ˆÝ! # r§z¢z°1°#¡¤Ñ7Ô7Ð7Ð7Ð7r:   c                 óÊ   — t          ||¦  «        }|                     dg|¬¦  «        }t          j        |d¬¦  «        }t	          ||                     dg¦  «        ¦  «         d S ©Nr   r   rÇ   rÌ   rÄ   s        r8   Útest_binary_erosion04z+TestNdimageMorphology.test_binary_erosion04  sa   € õ ˜˜EÑ"Ô"ˆØ�wŠw˜�s %ˆwÑ(Ô(ˆÝÔ$ T¸Ð:Ñ:Ô:ˆÝ! # r§z¢z°1°#¡¤Ñ7Ô7Ð7Ð7Ð7r:   c                 óÈ   — t          ||¦  «        }|                     dg|¬¦  «        }t          j        |¦  «        }t	          ||                     g d¢¦  «        ¦  «         d S )Nr    r   r­   rÌ   rÄ   s        r8   Útest_binary_erosion05z+TestNdimageMorphology.test_binary_erosion05  s`   € õ ˜˜EÑ"Ô"ˆØ�wŠw˜�s %ˆwÑ(Ô(ˆÝÔ$ TÑ*Ô*ˆÝ! # r§z¢z°)°)°)Ñ'<Ô'<Ñ=Ô=Ð=Ð=Ð=r:   z(https://github.com/cupy/cupy/issues/8912c                 óò   — t          ||¦  «        }|                     d|¬¦  «        }|                     |d¦  «        }t          j        |¦  «        }t          ||                     g d¢¦  «        ¦  «         d S )N©r   r   ©r    r­   )r.   r‚   Úbroadcast_tor   rÃ   r   r/   rÄ   s        r8   Ú!test_binary_erosion05_broadcastedz7TestNdimageMorphology.test_binary_erosion05_broadcasted%  sq   € õ ˜˜EÑ"Ô"ˆØ�wŠw�u EˆwÑ*Ô*ˆØ�Š˜t UÑ+Ô+ˆÝÔ$ TÑ*Ô*ˆÝ! # r§z¢z°)°)°)Ñ'<Ô'<Ñ=Ô=Ð=Ð=Ð=r:   c                 óÌ   — t          ||¦  «        }|                     dg|¬¦  «        }t          j        |d¬¦  «        }t	          ||                     g d¢¦  «        ¦  «         d S ©Nr    r   r   rÇ   r©   rÌ   rÄ   s        r8   Útest_binary_erosion06z+TestNdimageMorphology.test_binary_erosion06/  se   € õ ˜˜EÑ"Ô"ˆØ�wŠw˜�s %ˆwÑ(Ô(ˆÝÔ$ T¸Ð:Ñ:Ô:ˆÝ! # r§z¢z°)°)°)Ñ'<Ô'<Ñ=Ô=Ð=Ð=Ð=r:   c                 óÈ   — t          ||¦  «        }|                     dg|¬¦  «        }t          j        |¦  «        }t	          ||                     g d¢¦  «        ¦  «         d S )Nr$   r   r´   rÌ   rÄ   s        r8   Útest_binary_erosion07z+TestNdimageMorphology.test_binary_erosion077  s`   € õ ˜˜EÑ"Ô"ˆØ�wŠw˜�s %ˆwÑ(Ô(ˆÝÔ$ TÑ*Ô*ˆÝ! # r§z¢z°/°/°/Ñ'BÔ'BÑCÔCÐCÐCÐCr:   c                 óÌ   — t          ||¦  «        }|                     dg|¬¦  «        }t          j        |d¬¦  «        }t	          ||                     g d¢¦  «        ¦  «         d S )Nr$   r   r   rÇ   rµ   rÌ   rÄ   s        r8   Útest_binary_erosion08z+TestNdimageMorphology.test_binary_erosion08?  se   € õ ˜˜EÑ"Ô"ˆØ�wŠw˜�s %ˆwÑ(Ô(ˆÝÔ$ T¸Ð:Ñ:Ô:ˆÝ! # r§z¢z°/°/°/Ñ'BÔ'BÑCÔCÐCÐCÐCr:   c                 óÚ   — t          j        dg|¬¦  «        }d|d<   |                     |¦  «        }t          j        |¦  «        }t          ||                     g d¢¦  «        ¦  «         d S )Nr$   r   r   r   ©r   r   r   r   r   ©rU   r‚   r/   r   rÃ   r   rÄ   s        r8   Útest_binary_erosion09z+TestNdimageMorphology.test_binary_erosion09G  sj   € õ Œw˜�s %Ð(Ñ(Ô(ˆØˆˆQ‰Ø�zŠz˜$ÑÔˆÝÔ$ TÑ*Ô*ˆÝ! # r§z¢z°/°/°/Ñ'BÔ'BÑCÔCÐCÐCÐCr:   c                 óÞ   — t          j        dg|¬¦  «        }d|d<   |                     |¦  «        }t          j        |d¬¦  «        }t          ||                     g d¢¦  «        ¦  «         d S )Nr$   r   r   r   r   rÇ   )r   r   r   r   r   rá   rÄ   s        r8   Útest_binary_erosion10z+TestNdimageMorphology.test_binary_erosion10P  so   € õ Œw˜�s %Ð(Ñ(Ô(ˆØˆˆQ‰Ø�zŠz˜$ÑÔˆÝÔ$ T¸Ð:Ñ:Ô:ˆÝ! # r§z¢z°/°/°/Ñ'BÔ'BÑCÔCÐCÐCÐCr:   c                 ó  — t          j        dg|¬¦  «        }d|d<   |                     |¦  «        }|                     g d¢¦  «        }t          j        ||d¬¦  «        }t          ||                     g d¢¦  «        ¦  «         d S )	Nr$   r   r   r   ©r   r   r   r   rÇ   ©r   r   r   r   r   rá   ©r2   r   r3   r4   r¦   r5   s         r8   Útest_binary_erosion11z+TestNdimageMorphology.test_binary_erosion11Y  s†   € õ Œw˜�s %Ð(Ñ(Ô(ˆØˆˆQ‰Ø�zŠz˜$ÑÔˆØ—’˜I˜I˜IÑ&Ô&ˆÝÔ$ T¨6ÀÐBÑBÔBˆÝ! # r§z¢z°/°/°/Ñ'BÔ'BÑCÔCÐCÐCÐCr:   c                 ó  — t          j        dg|¬¦  «        }d|d<   |                     |¦  «        }|                     g d¢¦  «        }t          j        ||dd¬¦  «        }t          ||                     g d	¢¦  «        ¦  «         d S )
Nr$   r   r   r   ræ   r   éÿÿÿÿ©rÈ   Úorigin©r   r   r   r   r   rá   rè   s         r8   Útest_binary_erosion12z+TestNdimageMorphology.test_binary_erosion12c  sˆ   € õ Œw˜�s %Ð(Ñ(Ô(ˆØˆˆQ‰Ø�zŠz˜$ÑÔˆØ—’˜I˜I˜IÑ&Ô&ˆÝÔ$ T¨6ÀÈ"ÐMÑMÔMˆÝ! # r§z¢z°/°/°/Ñ'BÔ'BÑCÔCÐCÐCÐCr:   c                 ó  — t          j        dg|¬¦  «        }d|d<   |                     |¦  «        }|                     g d¢¦  «        }t          j        ||dd¬¦  «        }t          ||                     g d¢¦  «        ¦  «         d S )	Nr$   r   r   r   ræ   r   rì   ©r   r   r   r   r   rá   rè   s         r8   Útest_binary_erosion13z+TestNdimageMorphology.test_binary_erosion13m  sˆ   € õ Œw˜�s %Ð(Ñ(Ô(ˆØˆˆQ‰Ø�zŠz˜$ÑÔˆØ—’˜I˜I˜IÑ&Ô&ˆÝÔ$ T¨6ÀÈ!ÐLÑLÔLˆÝ! # r§z¢z°/°/°/Ñ'BÔ'BÑCÔCÐCÐCÐCr:   c                 ó  — t          j        dg|¬¦  «        }d|d<   |                     |¦  «        }|                     ddg¦  «        }t          j        ||d¬¦  «        }t          ||                     g d¢¦  «        ¦  «         d S )Nr$   r   r   r   r   rÇ   )r   r   r   r   r   rá   rè   s         r8   Útest_binary_erosion14z+TestNdimageMorphology.test_binary_erosion14w  s†   € õ Œw˜�s %Ð(Ñ(Ô(ˆØˆˆQ‰Ø�zŠz˜$ÑÔˆØ—’˜Q ˜FÑ#Ô#ˆÝÔ$ T¨6ÀÐBÑBÔBˆÝ! # r§z¢z°/°/°/Ñ'BÔ'BÑCÔCÐCÐCÐCr:   c                 ó  — t          j        dg|¬¦  «        }d|d<   |                     |¦  «        }|                     ddg¦  «        }t          j        ||dd¬¦  «        }t          ||                     g d¢¦  «        ¦  «         d S )	Nr$   r   r   r   r   rë   rì   )r   r   r   r   r   rá   rè   s         r8   Útest_binary_erosion15z+TestNdimageMorphology.test_binary_erosion15�  sˆ   € õ Œw˜�s %Ð(Ñ(Ô(ˆØˆˆQ‰Ø�zŠz˜$ÑÔˆØ—’˜Q ˜FÑ#Ô#ˆÝÔ$ T¨6ÀÈ"ÐMÑMÔMˆÝ! # r§z¢z°/°/°/Ñ'BÔ'BÑCÔCÐCÐCÐCr:   c                 óÎ   — t          ||¦  «        }|                     ddg|¬¦  «        }t          j        |d¬¦  «        }t	          ||                     dgg¦  «        ¦  «         d S rÏ   rÌ   rÄ   s        r8   Útest_binary_erosion16z+TestNdimageMorphology.test_binary_erosion16‹  sg   € õ ˜˜EÑ"Ô"ˆØ�wŠw˜˜1�v UˆwÑ+Ô+ˆÝÔ$ T¸Ð:Ñ:Ô:ˆÝ! # r§z¢z°A°3°%Ñ'8Ô'8Ñ9Ô9Ð9Ð9Ð9r:   c                 óÊ   — t          ||¦  «        }|                     ddg|¬¦  «        }t          j        |¦  «        }t	          ||                     dgg¦  «        ¦  «         d S rË   rÌ   rÄ   s        r8   Útest_binary_erosion17z+TestNdimageMorphology.test_binary_erosion17“  sb   € õ ˜˜EÑ"Ô"ˆØ�wŠw˜˜1�v UˆwÑ+Ô+ˆÝÔ$ TÑ*Ô*ˆÝ! # r§z¢z°A°3°%Ñ'8Ô'8Ñ9Ô9Ð9Ð9Ð9r:   c                 óÌ   — t          ||¦  «        }|                     ddg|¬¦  «        }t          j        |¦  «        }t	          ||                     g d¢g¦  «        ¦  «         d S )Nr   r    r   ©r   r   r   rÌ   rÄ   s        r8   Útest_binary_erosion18z+TestNdimageMorphology.test_binary_erosion18›  sd   € õ ˜˜EÑ"Ô"ˆØ�wŠw˜˜1�v UˆwÑ+Ô+ˆÝÔ$ TÑ*Ô*ˆÝ! # r§z¢z°9°9°9°+Ñ'>Ô'>Ñ?Ô?Ð?Ð?Ð?r:   c                 óÐ   — t          ||¦  «        }|                     ddg|¬¦  «        }t          j        |d¬¦  «        }t	          ||                     g d¢g¦  «        ¦  «         d S )Nr   r    r   rÇ   r©   rÌ   rÄ   s        r8   Útest_binary_erosion19z+TestNdimageMorphology.test_binary_erosion19£  si   € õ ˜˜EÑ"Ô"ˆØ�wŠw˜˜1�v UˆwÑ+Ô+ˆÝÔ$ T¸Ð:Ñ:Ô:ˆÝ! # r§z¢z°9°9°9°+Ñ'>Ô'>Ñ?Ô?Ð?Ð?Ð?r:   c           	      óØ   — t          ||¦  «        }|                     ddg|¬¦  «        }t          j        |¦  «        }t	          ||                     g d¢g d¢g d¢g¦  «        ¦  «         d S )Nr    r   rü   r­   rÌ   rÄ   s        r8   Útest_binary_erosion20z+TestNdimageMorphology.test_binary_erosion20«  sˆ   € õ ˜˜EÑ"Ô"ˆØ�wŠw˜˜1�v UˆwÑ+Ô+ˆÝÔ$ TÑ*Ô*ˆÝ! # r§z¢z°9°9°9Ø3<°9°9Ø3<°9°9ð3>ñ (?ô (?ñ 	@ô 	@ð 	@ð 	@ð 	@r:   c           	      óÜ   — t          ||¦  «        }|                     ddg|¬¦  «        }t          j        |d¬¦  «        }t	          ||                     g d¢g d¢g d¢g¦  «        ¦  «         d S rÙ   rÌ   rÄ   s        r8   Útest_binary_erosion21z+TestNdimageMorphology.test_binary_erosion21µ  s�   € õ ˜˜EÑ"Ô"ˆØ�wŠw˜˜1�v UˆwÑ+Ô+ˆÝÔ$ T¸Ð:Ñ:Ô:ˆÝ! # r§z¢z°9°9°9Ø3<°9°9Ø3<°9°9ð3>ñ (?ô (?ñ 	@ô 	@ð 	@ð 	@ð 	@r:   c                 ó.  — t          ||¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                     |¦  «        }|                     g d¢g d¢g d¢g d¢g d¢g d	¢g d
¢g d¢g|¬¦  «        }t          j        |d¬¦  «        }t	          ||¦  «         d S )N©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   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   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   ©r2   r   r3   r7   r4   r5   s         r8   Útest_binary_erosion22z+TestNdimageMorphology.test_binary_erosion22¿  s  € õ ˜˜EÑ"Ô"ˆØ,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,ð.ˆð —:’:˜hÑ'Ô'ˆØ�zŠzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5ð =Bð ñ Cô Cˆõ Ô$ T¸Ð:Ñ:Ô:ˆÝ! # xÑ0Ô0Ð0Ð0Ð0r:   c                 ó„  — t          ||¦  «        }t          j        dd¦  «        }|                     |¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                     |¦  «        }|                     g d¢g d¢g d¢g d¢g d¢g d¢g d	¢g d¢g|¬
¦  «        }t          j        ||d¬¦  «        }t          ||¦  «         d S )Nr   r  r  r	  r
  r  r  r  r  r   r   rÇ   )r.   r   r¤   r/   rÃ   r   ©r2   r   r3   r¦   r7   r4   r5   s          r8   Útest_binary_erosion23z+TestNdimageMorphology.test_binary_erosion23×  s4  € õ ˜˜EÑ"Ô"ˆÝÔ2°1°aÑ8Ô8ˆØ—’˜FÑ#Ô#ˆØ,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,ð.ˆð —:’:˜hÑ'Ô'ˆØ�zŠzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5ð =Bð ñ Cô Cˆõ Ô$ T¨6ÀÐBÑBÔBˆÝ! # xÑ0Ô0Ð0Ð0Ð0r:   c                 óf  — t          ||¦  «        }|                     ddgddgg¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                     |¦  «        }|                     g d¢g d¢g d¢g d	¢g d¢g d
¢g d¢g d¢g|¬¦  «        }t          j        ||d¬¦  «        }t	          ||¦  «         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  r  s          r8   Útest_binary_erosion24z+TestNdimageMorphology.test_binary_erosion24ñ  s6  € õ ˜˜EÑ"Ô"ˆØ—’˜a ˜VØ ˜Vð%ñ &ô &ˆà,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,ð.ˆð —:’:˜hÑ'Ô'ˆØ�zŠzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5ð =Bð ñ Cô Cˆõ Ô$ T¨6ÀÐBÑBÔBˆÝ! # xÑ0Ô0Ð0Ð0Ð0r:   c                 óp  — t          ||¦  «        }g d¢g d¢g d¢g}|                     |¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                     |¦  «        }|                     g d¢g d¢g d¢g d	¢g d
¢g d¢g d¢g d¢g|¬¦  «        }t          j        ||d¬¦  «        }t	          ||¦  «         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   r   r   r   ©r   r   r   r   r   r   r   r   r  r   r   rÇ   r  r  s          r8   Útest_binary_erosion25z+TestNdimageMorphology.test_binary_erosion25  s@  € õ ˜˜EÑ"Ô"ˆØ�)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆØ,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,ð.ˆð —:’:˜hÑ'Ô'ˆØ�zŠzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5ð =Bð ñ Cô Cˆõ Ô$ T¨6ÀÐBÑBÔBˆÝ! # xÑ0Ô0Ð0Ð0Ð0r:   c                 ór  — t          ||¦  «        }g d¢g d¢g d¢g}|                     |¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                     |¦  «        }|                     g d¢g d¢g d	¢g d
¢g d¢g d¢g d¢g d¢g|¬¦  «        }t          j        ||dd¬¦  «        }t	          ||¦  «         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   r   r   r   r   r   r   r   r	  r
  r  r  r  r  r   r   ©rë   rë   rì   r  r  s          r8   Útest_binary_erosion26z+TestNdimageMorphology.test_binary_erosion26'  sI  € õ ˜˜EÑ"Ô"ˆØ�)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆØ,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,ð.ˆð —:’:˜hÑ'Ô'ˆØ�zŠzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5ð =Bð ñ Cô Cˆõ Ô$ T¨6ÀØ,4ð6ñ 6ô 6ˆå! # xÑ0Ô0Ð0Ð0Ð0r:   ú5CuPy: NotImplementedError: only brute_force iterationc           
      óx  — g d¢g d¢g d¢g}|                      |¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                      |¦  «        }t          j         g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }t          j        ||dd	¬
¦  «        }t          ||¦  «         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   r   r   r   r   r   ©rÈ   Ú
iterations©r/   rU   r¸   r   rÃ   r   ©r2   r3   r¦   r7   r4   r5   s         r8   Útest_binary_erosion27z+TestNdimageMorphology.test_binary_erosion27D  s4  € ð
 �)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆØ)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)ð+ˆð —:’:˜hÑ'Ô'ˆÝŒzÐ0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2õ :>ð?ñ ?ô ?ˆð �zŠz˜$ÑÔˆÝÔ$ T¨6ÀØ01ð3ñ 3ô 3ˆå! # xÑ0Ô0Ð0Ð0Ð0r:   z)inplace out= arguments are numpy-specific©rE   Ú
exceptionsrF   ú/NotImplementedError: only brute_force iterationc           
      ó  — g d¢g d¢g d¢g}|                      |¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}t          j         |t          ¬¦  «        }|                      |¦  «        }t          j         g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }t          j        |j        t          ¬¦  «        }|                      |¦  «        }t          j        ||dd	|¬
¦  «         t          ||¦  «         d S )Nr­   r©   r'  r(  r   r)  r*  r   r   ©rÈ   r,  Úoutput©r/   rU   r¸   rQ   rR   r   rÃ   r   r.  s         r8   Útest_binary_erosion28z+TestNdimageMorphology.test_binary_erosion28a  sr  € ð �)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆØ)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)ð+ˆõ ”:˜h­dÐ3Ñ3Ô3ˆØ—:’:˜hÑ'Ô'ˆÝŒzÐ0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2õ :>ð?ñ ?ô ?ˆð �zŠz˜$ÑÔˆÝŒh�t”z­Ð.Ñ.Ô.ˆØ�jŠj˜‰oŒoˆÝÔ˜t V¸!Ø*+°Cð	9ñ 	9ô 	9ð 	9å! # xÑ0Ô0Ð0Ð0Ð0r:   c           
      óx  — g d¢g d¢g d¢g}|                      |¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                      |¦  «        }t          j         g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }t          j        ||d	d
¬¦  «        }t          ||¦  «         d S )Nr­   r©   r'  r(  r)  r*  ©r   r   r   r   r   r   r   r   r   r    r+  r-  r.  s         r8   Útest_binary_erosion29z+TestNdimageMorphology.test_binary_erosion29‚  s7  € ð
 �)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆØ)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)ð+ˆð —:’:˜hÑ'Ô'ˆÝŒzÐ0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2õ :>ð?ñ ?ô ?ˆð �zŠz˜$ÑÔˆÝÔ$ T¨6Ø23ÀðCñ Cô Cˆå! # xÑ0Ô0Ð0Ð0Ð0r:   c           
      ól  — g d¢g d¢g d¢g}|                      |¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}t          j         |t          ¬¦  «        }|                      |¦  «        }t          j         g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }t          j        |j        t          ¬¦  «        }|                      |¦  «        }t          j        ||d	d
|¬¦  «         t          ||¦  «         t          j        ||d	d
|¬¦  «         t          ||¦  «         d S )Nr­   r©   r'  r(  r   r)  r*  r9  r   r    r4  r6  r.  s         r8   Útest_binary_erosion30z+TestNdimageMorphology.test_binary_erosion30Ÿ  s©  € ð �)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆØ)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)ð+ˆõ ”:˜h­dÐ3Ñ3Ô3ˆØ—:’:˜hÑ'Ô'ˆÝŒzÐ0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2õ :>ð?ñ ?ô ?ˆð �zŠz˜$ÑÔˆÝŒh�t”z­Ð.Ñ.Ô.ˆØ�jŠj˜‰oŒoˆÝÔ˜t V¸!Ø*+°Cð	9ñ 	9ô 	9ð 	9å! # xÑ0Ô0Ð0õ 	Ô˜t V¸!Ø*+°Dð	:ñ 	:ô 	:ð 	:å! $¨Ñ1Ô1Ð1Ð1Ð1r:   c           
      ó  — g d¢g d¢g d¢g}|                      |¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}t          j         |t          ¬¦  «        }|                      |¦  «        }t          j         g d	¢g d
¢g d¢g d¢g d¢g d
¢g d	¢gt          ¬¦  «        }|                      |¦  «        }t          j        |j        t          ¬¦  «        }|                      |¦  «        }t          j        ||dd|d¬¦  «         t          ||¦  «         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   r   r   r   r   r(  r)  r*  r9  r   r"  )rÈ   r,  r5  rí   r6  r.  s         r8   Útest_binary_erosion31z+TestNdimageMorphology.test_binary_erosion31Å  sx  € ð �)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆØ)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)ð+ˆõ ”:˜h­dÐ3Ñ3Ô3ˆØ—:’:˜hÑ'Ô'ˆÝŒzÐ0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2õ :>ð?ñ ?ô ?ˆð �zŠz˜$ÑÔˆÝŒh�t”z­Ð.Ñ.Ô.ˆØ�jŠj˜‰oŒoˆÝÔ˜t V¸!Ø*+°CÀð	Jñ 	Jô 	Jð 	Jå! # xÑ0Ô0Ð0Ð0Ð0r:   c           
      óx  — g d¢g d¢g d¢g}|                      |¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                      |¦  «        }t          j         g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }t          j        ||dd	¬
¦  «        }t          ||¦  «         d S r&  r-  r.  s         r8   Útest_binary_erosion32z+TestNdimageMorphology.test_binary_erosion32ä  s7  € ð �)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆØ)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)ð+ˆð —:’:˜hÑ'Ô'ˆÝŒzÐ0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2õ :>ð?ñ ?ô ?ˆð �zŠz˜$ÑÔˆÝÔ$ T¨6Ø23ÀðCñ Cô Cˆå! # xÑ0Ô0Ð0Ð0Ð0r:   c           
      óÒ  — g d¢g d¢g d¢g}|                      |¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                      |¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                      |¦  «        }t          j         g d¢g d	¢g d
¢g d
¢g d
¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }t          j        ||d|d¬¦  «        }t          ||¦  «         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   r   r   r   r9  )r   r   r   r   r   r   r   r)  r(  r   r   rë   )rÈ   Úmaskr,  r-  ©r2   r3   r¦   r7   rH  r4   r5   s          r8   Útest_binary_erosion33z+TestNdimageMorphology.test_binary_erosion33   s’  € ð �)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆØ)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)ð+ˆð —:’:˜hÑ'Ô'ˆØ%Ð%Ð%Ø%Ð%Ð%Ø%Ð%Ð%Ø%Ð%Ð%Ø%Ð%Ð%Ø%Ð%Ð%Ø%Ð%Ð%ð'ˆð �zŠz˜$ÑÔˆÝŒzÐ0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2õ :>ð?ñ ?ô ?ˆð �zŠz˜$ÑÔˆÝÔ$ T¨6Ø23¸$È2ðOñ Oô Oˆå! # xÑ0Ô0Ð0Ð0Ð0r:   c           
      óÐ  — g d¢g d¢g d¢g}|                      |¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                      |¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                      |¦  «        }t          j         g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }t          j        ||d	|¬
¦  «        }t          ||¦  «         d S )Nr­   r©   r'  r(  r*  r)  ©r   r   r   r   r   r   r   r   r   )rÈ   rH  r-  rI  s          r8   Útest_binary_erosion34z+TestNdimageMorphology.test_binary_erosion34$  sŽ  € à�)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆØ)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)ð+ˆð —:’:˜hÑ'Ô'ˆØ%Ð%Ð%Ø%Ð%Ð%Ø%Ð%Ð%Ø%Ð%Ð%Ø%Ð%Ð%Ø%Ð%Ð%Ø%Ð%Ð%ð'ˆð �zŠz˜$ÑÔˆÝŒzÐ0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2õ :>ð?ñ ?ô ?ˆð �zŠz˜$ÑÔˆÝÔ$ T¨6Ø23¸$ð@ñ @ô @ˆå! # xÑ0Ô0Ð0Ð0Ð0r:   c           
      óV  — g d¢g d¢g d¢g}|                      |¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}t          j         |t          ¬¦  «        }|                      |¦  «        }t          j         g d¢g d¢g d¢g d	¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }g d
¢g d¢g d¢g d¢g d
¢g d¢g d¢g}t          j         |t          ¬¦  «        }|                      |¦  «        }|                     ||¦  «        }|                     ||                     |¦  «        ¦  «        }|                     ||¦  «        }t          j        |j        t          ¬¦  «        }|                      |¦  «        }t          j	        ||dd|d|¬¦  «         t          ||¦  «         d S )Nr­   r©   r'  r)  rL  r   r(  r*  r9  r>  r?  r@  rA  r   r"  )rÈ   r,  r5  rí   rH  )r/   rU   r¸   Úlogical_andÚlogical_notÚ
logical_orrQ   rR   r   rÃ   r   )r2   r3   r¦   rH  r4   Útmpr7   r5   s           r8   Útest_binary_erosion35z+TestNdimageMorphology.test_binary_erosion35F  s)  € ð �)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆØ%Ð%Ð%Ø%Ð%Ð%Ø%Ð%Ð%Ø%Ð%Ð%Ø%Ð%Ð%Ø%Ð%Ð%Ø%Ð%Ð%ð'ˆõ Œz˜$¥dÐ+Ñ+Ô+ˆØ�zŠz˜$ÑÔˆÝŒzÐ0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2õ :>ð?ñ ?ô ?ˆð �zŠz˜$ÑÔˆØ$Ð$Ð$Ø$Ð$Ð$Ø$Ð$Ð$Ø$Ð$Ð$Ø$Ð$Ð$Ø$Ð$Ð$Ø$Ð$Ð$ð&ˆõ Œj˜¥DÐ)Ñ)Ô)ˆØ�jŠj˜‰oŒoˆØ—>’> # tÑ,Ô,ˆØ�nŠn˜T 2§>¢>°$Ñ#7Ô#7Ñ8Ô8ˆØ—=’= ¨3Ñ/Ô/ˆÝŒh�t”z­Ð.Ñ.Ô.ˆØ�jŠj˜‰oŒoˆÝÔ˜t V¸!Ø*+°CØ&.°Tð	;ñ 	;ô 	;ð 	;õ 	" # xÑ0Ô0Ð0Ð0Ð0r:   c                 óú  — g d¢g d¢g d¢g}|                      |¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}t          j         |t          ¬¦  «        }|                      |¦  «        }g d¢g d¢g d¢g d	¢g d
¢g d¢g d¢g d¢g}t          j         |t          ¬¦  «        }|                      |¦  «        }t          j         g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }|                     ||¦  «        }|                     ||                     |¦  «        ¦  «        }|                     ||¦  «        }t          j        |||dd¬¦  «        }t          ||¦  «         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  r  r  r   r"  )rH  rÈ   rí   )	r/   rU   r¸   rO  rP  rQ  r   rÃ   r   )r2   r3   r¦   rH  rR  r4   r7   r5   s           r8   Útest_binary_erosion36z+TestNdimageMorphology.test_binary_erosion36r  s  € ð �)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆØ(Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(ð*ˆõ Œz˜$¥dÐ+Ñ+Ô+ˆØ�zŠz˜$ÑÔˆØ'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'ð)ˆõ Œj˜¥DÐ)Ñ)Ô)ˆØ�jŠj˜‰oŒoˆÝŒzÐ3Ð3Ð3Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4ð6õ >BðCñ Cô Cˆð �zŠz˜$ÑÔˆØ—>’> # tÑ,Ô,ˆØ�nŠn˜T 2§>¢>°$Ñ#7Ô#7Ñ8Ô8ˆØ—=’= ¨3Ñ/Ô/ˆÝÔ$ T¨6¸Ø23¸HðFñ Fô Fˆå! # xÑ0Ô0Ð0Ð0Ð0r:   c                 ó.  — t          j        g d¢g d¢g d¢gt          ¬¦  «        }|                     |¦  «        }|                     |¦  «        }t	          j        |||ddd¬¦  «        }||u sJ ‚t          t	          j        ||dd¬¦  «        |¦  «         d S )Nræ   r­   r   r   T)Ú	structurer5  r,  rÈ   Úbrute_force)rX  r,  rÈ   )rU   r/   r¸   Ú
zeros_liker   rÃ   r   )r2   r3   ÚaÚbr5   s        r8   Útest_binary_erosion37z+TestNdimageMorphology.test_binary_erosion37ž  sÉ   € õ ŒJ˜	˜	˜	Ø!˜	˜	Ø!˜	˜	ð#å*.ð0ñ 0ô 0ˆð �JŠJ�q‰MŒMˆØ�MŠM˜!ÑÔˆÝÔ$ Q°!¸AÈ!Ø26ÀDðJñ Jô Jˆà�aˆxˆxˆxˆxÝÝÔ" 1°¸aØ04ð6ñ 6ô 6àñ	ô 	ð 	ð 	ð 	r:   c                 ó  — t          j        g d¢g d¢g d¢gt          ¬¦  «        }|                     |¦  «        }d}t          t          ¦  «        5  t          j        ||¬¦  «        }d d d ¦  «         d S # 1 swxY w Y   d S )Nræ   r­   r   g       @©r,  )rU   r/   r¸   rj   Ú	TypeErrorr   rÃ   )r2   r3   r4   r,  Ú_s        r8   Útest_binary_erosion38z+TestNdimageMorphology.test_binary_erosion38±  sç   € åŒz˜9˜9˜9Ø$˜9˜9Ø$˜9˜9ð&å-1ð3ñ 3ô 3ˆð �zŠz˜$ÑÔˆØˆ
Ý�9Ñ%Ô%ð 	Dð 	DÝÔ& t¸
ÐCÑCÔCˆAð	Dð 	Dð 	Dñ 	Dô 	Dð 	Dð 	Dð 	Dð 	Dð 	Dð 	Dð 	Døøøð 	Dð 	Dð 	Dð 	Dð 	Dð 	Ds   ÁA4Á4A8Á;A8c           
      óD  — t          j        d¦  «        }g d¢g d¢g d¢g}|                     |¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                     |t          ¬¦  «        }|                     |¦  «        }t          j        g d¢g d¢g d¢g d	¢g d¢g d¢g d¢gt          ¬¦  «        }|                     |¦  «        }t          j        |j        t          ¬¦  «        }|                     |¦  «        }t          j        ||d
||¬¦  «         t          ||¦  «         d S ©Nr    r­   r©   r'  r(  r   r)  r*  r9  r   r4  )	rU   rV   r/   r¸   rQ   rR   r   rÃ   r   ©r2   r3   r,  r¦   r7   r4   r5   s          r8   Útest_binary_erosion39z+TestNdimageMorphology.test_binary_erosion39»  s„  € õ ”X˜a‘[”[ˆ
Ø�)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆØ)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)ð+ˆð —:’:˜h­d�:Ñ3Ô3ˆØ—:’:˜hÑ'Ô'ˆÝŒzÐ0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2õ :>ð?ñ ?ô ?ˆð �zŠz˜$ÑÔˆÝŒh�t”z­Ð.Ñ.Ô.ˆØ�jŠj˜‰oŒoˆÝÔ˜t V¸!Ø*4¸Sð	Bñ 	Bô 	Bð 	Bå! # xÑ0Ô0Ð0Ð0Ð0r:   c           
      óB  — t          j        d¦  «        }g d¢g d¢g d¢g}|                     |¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}t          j        |t          ¬¦  «        }|                     |¦  «        }t          j        g d¢g d¢g d¢g d	¢g d¢g d¢g d¢gt          ¬¦  «        }|                     |¦  «        }t          j        |j        t          ¬¦  «        }|                     |¦  «        }t          j        ||d
||¬¦  «         t          ||¦  «         d S rd  )	rU   Úint64r/   r¸   rQ   rR   r   rÃ   r   re  s          r8   Útest_binary_erosion40z+TestNdimageMorphology.test_binary_erosion40Ý  sƒ  € õ ”X˜a‘[”[ˆ
Ø�)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆØ)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)Ø)Ð)Ð)ð+ˆõ ”:˜h­dÐ3Ñ3Ô3ˆØ—:’:˜hÑ'Ô'ˆÝŒzÐ0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2õ :>ð?ñ ?ô ?ˆð �zŠz˜$ÑÔˆÝŒh�t”z­Ð.Ñ.Ô.ˆØ�jŠj˜‰oŒoˆÝÔ˜t V¸!Ø*4¸Sð	Bñ 	Bô 	Bð 	Bå! # xÑ0Ô0Ð0Ð0Ð0r:   c                 óÀ   — t          ||¦  «        }|                     g |¬¦  «        }t          j        |¦  «        }||                     d|j        ¬¦  «        k    sJ ‚d S rÁ   )r.   r‚   r   Úbinary_dilationr/   r   rÄ   s        r8   Útest_binary_dilation01z,TestNdimageMorphology.test_binary_dilation01ÿ  sa   € õ ˜˜EÑ"Ô"ˆØ�wŠw�r ˆwÑ'Ô'ˆÝÔ% dÑ+Ô+ˆØ�b—j’j ¨#¬)�jÑ4Ô4Ò4Ð4Ð4Ð4Ð4Ð4r:   c                 ó²   — t          ||¦  «        }|                     g |¬¦  «        }t          j        |¦  «        }||                     d¦  «        k    sJ ‚d S )Nr   F)r.   rQ   r   rk  r/   rÄ   s        r8   Útest_binary_dilation02z,TestNdimageMorphology.test_binary_dilation02  s[   € õ ˜˜EÑ"Ô"ˆØ�xŠx˜ %ˆxÑ(Ô(ˆÝÔ% dÑ+Ô+ˆØ�b—j’j Ñ'Ô'Ò'Ð'Ð'Ð'Ð'Ð'r:   c                 óÔ   — t          ||¦  «        }|                     dg|¬¦  «        }t          j        |¦  «        }t	          ||                     dg|j        ¬¦  «        ¦  «         d S ©Nr   r   )r.   r‚   r   rk  r   r/   r   rÄ   s        r8   Útest_binary_dilation03z,TestNdimageMorphology.test_binary_dilation03  sd   € õ ˜˜EÑ"Ô"ˆØ�wŠw˜�s %ˆwÑ(Ô(ˆÝÔ% dÑ+Ô+ˆÝ! # r§z¢z°1°#¸S¼Y zÑ'GÔ'GÑHÔHÐHÐHÐHr:   c                 óÆ   — t          ||¦  «        }|                     dg|¬¦  «        }t          j        |¦  «        }t	          ||                     dg¦  «        ¦  «         d S rË   ©r.   rQ   r   rk  r   r/   rÄ   s        r8   Útest_binary_dilation04z,TestNdimageMorphology.test_binary_dilation04  s\   € õ ˜˜EÑ"Ô"ˆØ�xŠx˜˜ 5ˆxÑ)Ô)ˆÝÔ% dÑ+Ô+ˆÝ! # r§z¢z°1°#¡¤Ñ7Ô7Ð7Ð7Ð7r:   c                 óÈ   — t          ||¦  «        }|                     dg|¬¦  «        }t          j        |¦  «        }t	          ||                     g d¢¦  «        ¦  «         d S ©Nr    r   r©   ©r.   r‚   r   rk  r   r/   rÄ   s        r8   Útest_binary_dilation05z,TestNdimageMorphology.test_binary_dilation05  s`   € õ ˜˜EÑ"Ô"ˆØ�wŠw˜�s %ˆwÑ(Ô(ˆÝÔ% dÑ+Ô+ˆÝ! # r§z¢z°)°)°)Ñ'<Ô'<Ñ=Ô=Ð=Ð=Ð=r:   c                 óò   — t          ||¦  «        }|                     d|¬¦  «        }|                     |d¦  «        }t          j        |¦  «        }t          ||                     g d¢¦  «        ¦  «         d S )NrÔ   r   rÕ   r©   )r.   r‚   rÖ   r   rk  r   r/   rÄ   s        r8   Ú"test_binary_dilation05_broadcastedz8TestNdimageMorphology.test_binary_dilation05_broadcasted'  sq   € õ ˜˜EÑ"Ô"ˆØ�wŠw�u EˆwÑ*Ô*ˆØ�Š˜t TÑ*Ô*ˆÝÔ% dÑ+Ô+ˆÝ! # r§z¢z°)°)°)Ñ'<Ô'<Ñ=Ô=Ð=Ð=Ð=r:   c                 óÈ   — t          ||¦  «        }|                     dg|¬¦  «        }t          j        |¦  «        }t	          ||                     g d¢¦  «        ¦  «         d S )Nr    r   rü   rs  rÄ   s        r8   Útest_binary_dilation06z,TestNdimageMorphology.test_binary_dilation060  s`   € õ ˜˜EÑ"Ô"ˆØ�xŠx˜˜ 5ˆxÑ)Ô)ˆÝÔ% dÑ+Ô+ˆÝ! # r§z¢z°)°)°)Ñ'<Ô'<Ñ=Ô=Ð=Ð=Ð=r:   c                 óÚ   — t          j        dg|¬¦  «        }d|d<   |                     |¦  «        }t          j        |¦  «        }t          ||                     g d¢¦  «        ¦  «         d S )Nr    r   r   r©   ©rU   rQ   r/   r   rk  r   rÄ   s        r8   Útest_binary_dilation07z,TestNdimageMorphology.test_binary_dilation078  sj   € õ Œx˜˜ 5Ð)Ñ)Ô)ˆØˆˆQ‰Ø�zŠz˜$ÑÔˆÝÔ% dÑ+Ô+ˆÝ! # r§z¢z°)°)°)Ñ'<Ô'<Ñ=Ô=Ð=Ð=Ð=r:   c                 óä   — t          j        dg|¬¦  «        }d|d<   d|d<   |                     |¦  «        }t          j        |¦  «        }t          ||                     g d¢¦  «        ¦  «         d S )Nr$   r   r   r    rµ   r~  rÄ   s        r8   Útest_binary_dilation08z,TestNdimageMorphology.test_binary_dilation08A  ss   € õ Œx˜˜ 5Ð)Ñ)Ô)ˆØˆˆQ‰ØˆˆQ‰Ø�zŠz˜$ÑÔˆÝÔ% dÑ+Ô+ˆÝ! # r§z¢z°/°/°/Ñ'BÔ'BÑCÔCÐCÐCÐCr:   c                 óÚ   — t          j        dg|¬¦  «        }d|d<   |                     |¦  «        }t          j        |¦  «        }t          ||                     g d¢¦  «        ¦  «         d S )Nr$   r   r   ©r   r   r   r   r   r~  rÄ   s        r8   Útest_binary_dilation09z,TestNdimageMorphology.test_binary_dilation09K  sj   € õ Œx˜˜ 5Ð)Ñ)Ô)ˆØˆˆQ‰Ø�zŠz˜$ÑÔˆÝÔ% dÑ+Ô+ˆÝ! # r§z¢z°/°/°/Ñ'BÔ'BÑCÔCÐCÐCÐCr:   c                 óÞ   — t          j        dg|¬¦  «        }d|d<   |                     |¦  «        }t          j        |d¬¦  «        }t          ||                     g d¢¦  «        ¦  «         d S )Nr$   r   r   rë   ©rí   r´   r~  rÄ   s        r8   Útest_binary_dilation10z,TestNdimageMorphology.test_binary_dilation10T  so   € õ Œx˜˜ 5Ð)Ñ)Ô)ˆØˆˆQ‰Ø�zŠz˜$ÑÔˆÝÔ% d°2Ð6Ñ6Ô6ˆÝ! # r§z¢z°/°/°/Ñ'BÔ'BÑCÔCÐCÐCÐCr:   c                 óÞ   — t          j        dg|¬¦  «        }d|d<   |                     |¦  «        }t          j        |d¬¦  «        }t          ||                     g d¢¦  «        ¦  «         d S )Nr$   r   r   r†  ©r   r   r   r   r   r~  rÄ   s        r8   Útest_binary_dilation11z,TestNdimageMorphology.test_binary_dilation11]  so   € õ Œx˜˜ 5Ð)Ñ)Ô)ˆØˆˆQ‰Ø�zŠz˜$ÑÔˆÝÔ% d°1Ð5Ñ5Ô5ˆÝ! # r§z¢z°/°/°/Ñ'BÔ'BÑCÔCÐCÐCÐCr:   c                 ó
  — t          j        dg|¬¦  «        }d|d<   |                     |¦  «        }|                     g d¢¦  «        }t          j        ||¦  «        }t          ||                     g d¢¦  «        ¦  «         d S )Nr$   r   r   ræ   )r   r   r   r   r   r~  rè   s         r8   Útest_binary_dilation12z,TestNdimageMorphology.test_binary_dilation12f  s�   € õ Œx˜˜ 5Ð)Ñ)Ô)ˆØˆˆQ‰Ø�zŠz˜$ÑÔˆØ—’˜I˜I˜IÑ&Ô&ˆÝÔ% d¨FÑ3Ô3ˆÝ! # r§z¢z°/°/°/Ñ'BÔ'BÑCÔCÐCÐCÐCr:   c                 ó  — t          j        dg|¬¦  «        }d|d<   |                     |¦  «        }|                     g d¢¦  «        }t          j        ||d¬¦  «        }t          ||                     g d¢¦  «        ¦  «         d S )Nr$   r   r   ræ   rÇ   rç   r~  rè   s         r8   Útest_binary_dilation13z,TestNdimageMorphology.test_binary_dilation13p  s†   € õ Œx˜˜ 5Ð)Ñ)Ô)ˆØˆˆQ‰Ø�zŠz˜$ÑÔˆØ—’˜I˜I˜IÑ&Ô&ˆÝÔ% d¨FÀÐCÑCÔCˆÝ! # r§z¢z°/°/°/Ñ'BÔ'BÑCÔCÐCÐCÐCr:   c                 ó  — t          j        dg|¬¦  «        }d|d<   |                     |¦  «        }|                     g d¢¦  «        }t          j        ||d¬¦  «        }t          ||                     g d¢¦  «        ¦  «         d S )Nr$   r   r   ræ   rë   r†  )r   r   r   r   r   r~  rè   s         r8   Útest_binary_dilation14z,TestNdimageMorphology.test_binary_dilation14z  s†   € õ Œx˜˜ 5Ð)Ñ)Ô)ˆØˆˆQ‰Ø�zŠz˜$ÑÔˆØ—’˜I˜I˜IÑ&Ô&ˆÝÔ% d¨F¸2Ð>Ñ>Ô>ˆÝ! # r§z¢z°/°/°/Ñ'BÔ'BÑCÔCÐCÐCÐCr:   c                 ó  — t          j        dg|¬¦  «        }d|d<   |                     |¦  «        }|                     g d¢¦  «        }t          j        ||dd¬¦  «        }t          ||                     g d¢¦  «        ¦  «         d S )Nr$   r   r   ræ   rë   ©rí   rÈ   rñ   r~  rè   s         r8   Útest_binary_dilation15z,TestNdimageMorphology.test_binary_dilation15„  s’   € õ Œx˜˜ 5Ð)Ñ)Ô)ˆØˆˆQ‰Ø�zŠz˜$ÑÔˆØ—’˜I˜I˜IÑ&Ô&ˆÝÔ% d¨FØ-/¸aðAñ Aô Aˆå! # r§z¢z°/°/°/Ñ'BÔ'BÑCÔCÐCÐCÐCr:   c                 óÊ   — t          ||¦  «        }|                     ddg|¬¦  «        }t          j        |¦  «        }t	          ||                     dgg¦  «        ¦  «         d S rp  rw  rÄ   s        r8   Útest_binary_dilation16z,TestNdimageMorphology.test_binary_dilation16�  sb   € õ ˜˜EÑ"Ô"ˆØ�wŠw˜˜1�v UˆwÑ+Ô+ˆÝÔ% dÑ+Ô+ˆÝ! # r§z¢z°A°3°%Ñ'8Ô'8Ñ9Ô9Ð9Ð9Ð9r:   c                 óÊ   — t          ||¦  «        }|                     ddg|¬¦  «        }t          j        |¦  «        }t	          ||                     dgg¦  «        ¦  «         d S rË   rs  rÄ   s        r8   Útest_binary_dilation17z,TestNdimageMorphology.test_binary_dilation17—  sb   € õ ˜˜EÑ"Ô"ˆØ�xŠx˜˜A˜ eˆxÑ,Ô,ˆÝÔ% dÑ+Ô+ˆÝ! # r§z¢z°A°3°%Ñ'8Ô'8Ñ9Ô9Ð9Ð9Ð9r:   c                 óÌ   — t          ||¦  «        }|                     ddg|¬¦  «        }t          j        |¦  «        }t	          ||                     g d¢g¦  «        ¦  «         d S )Nr   r    r   r©   rw  rÄ   s        r8   Útest_binary_dilation18z,TestNdimageMorphology.test_binary_dilation18Ÿ  sd   € õ ˜˜EÑ"Ô"ˆØ�wŠw˜˜1�v UˆwÑ+Ô+ˆÝÔ% dÑ+Ô+ˆÝ! # r§z¢z°9°9°9°+Ñ'>Ô'>Ñ?Ô?Ð?Ð?Ð?r:   c           	      óØ   — t          ||¦  «        }|                     ddg|¬¦  «        }t          j        |¦  «        }t	          ||                     g d¢g d¢g d¢g¦  «        ¦  «         d S rv  rw  rÄ   s        r8   Útest_binary_dilation19z,TestNdimageMorphology.test_binary_dilation19§  sˆ   € õ ˜˜EÑ"Ô"ˆØ�wŠw˜˜1�v UˆwÑ+Ô+ˆÝÔ% dÑ+Ô+ˆÝ! # r§z¢z°9°9°9Ø3<°9°9Ø3<°9°9ð3>ñ (?ô (?ñ 	@ô 	@ð 	@ð 	@ð 	@r:   c           	      óê   — t          j        ddg|¬¦  «        }d|d<   |                     |¦  «        }t          j        |¦  «        }t          ||                     g d¢g d¢g d¢g¦  «        ¦  «         d S )Nr    r   r   ©r   r   r­   r©   r~  rÄ   s        r8   Útest_binary_dilation20z,TestNdimageMorphology.test_binary_dilation20±  s’   € õ Œx˜˜A˜ eÐ,Ñ,Ô,ˆØˆˆT‰
Ø�zŠz˜$ÑÔˆÝÔ% dÑ+Ô+ˆÝ! # r§z¢z°9°9°9Ø3<°9°9Ø3<°9°9ð3>ñ (?ô (?ñ 	@ô 	@ð 	@ð 	@ð 	@r:   c           	      ó@  — t          j        dd¦  «        }|                     |¦  «        }t          j        ddg|¬¦  «        }d|d<   |                     |¦  «        }t          j        ||¦  «        }t          ||                     g d¢g d¢g d¢g¦  «        ¦  «         d S )Nr   r    r   r   r�  r©   )r   r¤   r/   rU   rQ   rk  r   )r2   r   r3   r¦   r4   r5   s         r8   Útest_binary_dilation21z,TestNdimageMorphology.test_binary_dilation21¼  s·   € õ Ô2°1°aÑ8Ô8ˆØ—’˜FÑ#Ô#ˆÝŒx˜˜A˜ eÐ,Ñ,Ô,ˆØˆˆT‰
Ø�zŠz˜$ÑÔˆÝÔ% d¨FÑ3Ô3ˆÝ! # r§z¢z°9°9°9Ø3<°9°9Ø3<°9°9ð3>ñ (?ô (?ñ 	@ô 	@ð 	@ð 	@ð 	@r:   c                 ó*  — t          ||¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                     |¦  «        }|                     g d¢g d¢g d¢g d	¢g d
¢g d¢g d¢g d¢g|¬¦  «        }t          j        |¦  «        }t	          ||¦  «         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  r  r  r  r   ©r.   r/   r   rk  r   r  s         r8   Útest_binary_dilation22z,TestNdimageMorphology.test_binary_dilation22É  s
  € õ ˜˜EÑ"Ô"ˆØ,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,ð.ˆð —:’:˜hÑ'Ô'ˆØ�zŠzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5ð =Bð ñ Cô Cˆõ Ô% dÑ+Ô+ˆÝ! # xÑ0Ô0Ð0Ð0Ð0r:   c                 ó.  — t          ||¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                     |¦  «        }|                     g d¢g d¢g d¢g d	¢g d
¢g d¢g d¢g d¢g|¬¦  «        }t          j        |d¬¦  «        }t	          ||¦  «         d S )N©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   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         r8   Útest_binary_dilation23z,TestNdimageMorphology.test_binary_dilation23á  s  € õ ˜˜EÑ"Ô"ˆØ,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,ð.ˆð —:’:˜hÑ'Ô'ˆØ�zŠzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5ð =Bð ñ Cô Cˆõ Ô% d¸Ð;Ñ;Ô;ˆÝ! # xÑ0Ô0Ð0Ð0Ð0r:   c                 ó.  — t          ||¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                     |¦  «        }|                     g d¢g d¢g d¢g d	¢g d
¢g d¢g d¢g d¢g|¬¦  «        }t          j        |d¬¦  «        }t	          ||¦  «         d S )N©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   r   r   r!  r  r	  r  r  r  r   r�  r†  r¥  r  s         r8   Útest_binary_dilation24z,TestNdimageMorphology.test_binary_dilation24ù  s  € õ ˜˜EÑ"Ô"ˆØ,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,ð.ˆð —:’:˜hÑ'Ô'ˆØ�zŠzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5ð =Bð ñ Cô Cˆõ Ô% d°6Ð:Ñ:Ô:ˆÝ! # xÑ0Ô0Ð0Ð0Ð0r:   c                 ó0  — t          ||¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                     |¦  «        }|                     g d¢g d¢g d¢g d	¢g d
¢g d¢g d¢g d¢g|¬¦  «        }t          j        |dd¬¦  «        }t	          ||¦  «         d S )N©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   r   r   r   r  r	  r  r  r  r   r�  r   r’  r¥  r  s         r8   Útest_binary_dilation25z,TestNdimageMorphology.test_binary_dilation25  s  € õ ˜˜EÑ"Ô"ˆØ,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,ð.ˆð —:’:˜hÑ'Ô'ˆØ�zŠzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5ð =Bð ñ Cô Cˆõ Ô% d°6ÈÐJÑJÔJˆÝ! # xÑ0Ô0Ð0Ð0Ð0r:   c                 ó€  — t          ||¦  «        }t          j        dd¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                     |¦  «        }|                     |¦  «        }|                     g d¢g d¢g d¢g d¢g d	¢g d
¢g d¢g d¢g|¬¦  «        }t          j        ||¦  «        }t          ||¦  «         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¤   r/   rk  r   r  s          r8   Útest_binary_dilation26z,TestNdimageMorphology.test_binary_dilation26)  s/  € õ ˜˜EÑ"Ô"ˆÝÔ2°1°aÑ8Ô8ˆØ,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,ð.ˆð —’˜FÑ#Ô#ˆØ—:’:˜hÑ'Ô'ˆØ�zŠzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5ð =Bð ñ Cô Cˆõ Ô% d¨FÑ3Ô3ˆÝ! # xÑ0Ô0Ð0Ð0Ð0r:   c                 óf  — t          ||¦  «        }ddgddgg}g d¢g d¢g d¢g d¢g d¢g d¢g d	¢g d	¢g}|                     |¦  «        }|                     |¦  «        }|                     g d	¢g d¢g d	¢g d¢g d
¢g d¢g d	¢g d	¢g|¬¦  «        }t          j        ||¦  «        }t	          ||¦  «         d S )Nr   r   r	  r«  r  r  r  ©r   r   r   r   r   r   r   r   r  r  r  r   r¥  r  s          r8   Útest_binary_dilation27z,TestNdimageMorphology.test_binary_dilation27C  s2  € õ ˜˜EÑ"Ô"ˆØ�a�&Ø�a�&ðˆà,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,ð.ˆð —’˜FÑ#Ô#ˆØ—:’:˜hÑ'Ô'ˆØ�zŠzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5ð =Bð ñ Cô Cˆõ Ô% d¨FÑ3Ô3ˆÝ! # xÑ0Ô0Ð0Ð0Ð0r:   c                 óþ   — t          ||¦  «        }g d¢g d¢g d¢g d¢g}|                     |¦  «        }|                     g d¢g d¢g d¢g d¢g|¬¦  «        }t          j        |d¬¦  «        }t	          ||¦  «         d S )N)r   r   r   r   )r   r   r   r   )r   r   r   r   r   r   rÇ   r¥  r  s         r8   Útest_binary_dilation28z,TestNdimageMorphology.test_binary_dilation28^  s³   € õ ˜˜EÑ"Ô"ˆØ �L�LØ �L�LØ �L�LØ �L�Lð"ˆð —:’:˜hÑ'Ô'ˆØ�zŠz˜<˜<˜<Ø'˜<˜<Ø'˜<˜<Ø'˜<˜<ð)ð 16ð ñ 7ô 7ˆõ Ô% d¸Ð;Ñ;Ô;ˆÝ! # xÑ0Ô0Ð0Ð0Ð0r:   c                 óX  — ddgddgg}g d¢g d¢g d¢g d¢g d¢g}|                      |¦  «        }|                      |¦  «        }t          j         g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }t          j        ||d¬	¦  «        }t          ||¦  «         d S )
Nr   r   rà   ©r   r   r   r   r   ©r   r   r   r   r   r´   r   r   r_  ©r/   rU   r¸   r   rk  r   r.  s         r8   Útest_binary_dilation29z,TestNdimageMorphology.test_binary_dilation29n  óé   € ð �a�&Ø�a�&ðˆà#�O�OØ#�O�OØ#�O�OØ#�O�OØ#�O�Oð	%ˆð
 —’˜FÑ#Ô#ˆØ—:’:˜hÑ'Ô'ˆÝŒz˜?˜?˜?Ø*˜?˜?Ø*˜?˜?Ø*˜?˜?Ø*˜?˜?ð	,õ 48ð	9ñ 9ô 9ˆð
 �zŠz˜$ÑÔˆÝÔ% d¨F¸qÐAÑAÔAˆÝ! # xÑ0Ô0Ð0Ð0Ð0r:   z!output= arrays are numpy-specificc                 óÆ  — ddgddgg}g d¢g d¢g d¢g d¢g d¢g}|                      |¦  «        }|                      |¦  «        }|                      g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }t          j        |j        t          ¬¦  «        }|                      |¦  «        }t          j        ||d|¬	¦  «         t          ||¦  «         d S )
Nr   r   rà   r¼  r½  r´   r   r   ©r,  r5  )r/   r¸   rU   rQ   rR   r   rk  r   r.  s         r8   Útest_binary_dilation30z,TestNdimageMorphology.test_binary_dilation30„  s  € ð �a�&Ø�a�&ðˆà#�O�OØ#�O�OØ#�O�OØ#�O�OØ#�O�Oð	%ˆð
 —’˜FÑ#Ô#ˆØ—:’:˜hÑ'Ô'ˆØ�zŠz˜?˜?˜?Ø*˜?˜?Ø*˜?˜?Ø*˜?˜?Ø*˜?˜?ð	,õ 48ð	 ñ 9ô 9ˆð
 �zŠz˜$ÑÔˆÝŒh�t”z­Ð.Ñ.Ô.ˆØ�jŠj˜‰oŒoˆÝÔ  f¸À3ÐGÑGÔGÐGÝ! # xÑ0Ô0Ð0Ð0Ð0r:   c                 óX  — ddgddgg}g d¢g d¢g d¢g d¢g d¢g}|                      |¦  «        }|                      |¦  «        }t          j         g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }t          j        ||d	¬
¦  «        }t          ||¦  «         d S )Nr   r   r¼  r½  r´   ©r   r   r   r   r   rà   r   r    r_  r¾  r.  s         r8   Útest_binary_dilation31z,TestNdimageMorphology.test_binary_dilation31ž  rÀ  r:   c                 óÄ  — ddgddgg}g d¢g d¢g d¢g d¢g d¢g}|                      |¦  «        }|                      |¦  «        }t          j         g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }t          j        |j        t          ¬¦  «        }|                      |¦  «        }t          j        ||d	|¬
¦  «         t          ||¦  «         d S )Nr   r   r¼  r½  r´   rÅ  rà   r   r    rÂ  ©r/   rU   r¸   rQ   rR   r   rk  r   r.  s         r8   Útest_binary_dilation32z,TestNdimageMorphology.test_binary_dilation32´  s  € ð �a�&Ø�a�&ðˆà#�O�OØ#�O�OØ#�O�OØ#�O�OØ#�O�Oð	%ˆð
 —’˜FÑ#Ô#ˆØ—:’:˜hÑ'Ô'ˆÝŒz˜?˜?˜?Ø*˜?˜?Ø*˜?˜?Ø*˜?˜?Ø*˜?˜?ð	,õ 48ð	9ñ 9ô 9ˆð
 �zŠz˜$ÑÔˆÝŒh�t”z­Ð.Ñ.Ô.ˆØ�jŠj˜‰oŒoˆÝÔ  f¸À3ÐGÑGÔGÐGÝ! # xÑ0Ô0Ð0Ð0Ð0r:   c                 óH  — g d¢g d¢g d¢g}|                      |¦  «        }t          j         g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }t          j         g d¢g d¢g d	¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }t          j         g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }t          j        ||d
|d¬¦  «        }t          ||¦  «         d S )Nr­   r©   r	  r  ©r   r   r   r   r   r   r   r   rU  r·  r   ©r   r   r   r   r   r   r   r   rë   r   ©r,  rH  rÈ   r¾  rI  s          r8   Útest_binary_dilation33z,TestNdimageMorphology.test_binary_dilation33Î  sì  € ð �)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆÝ”:Ð7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7ð9õ AEðFñ Fô Fˆð —:’:˜hÑ'Ô'ˆÝŒzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5õ =AðBñ Bô Bˆð �zŠz˜$ÑÔˆÝŒzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5õ =AðBñ Bô Bˆð �zŠz˜$ÑÔˆåÔ% d¨F¸rØ+/¸aðAñ Aô Aˆå! # xÑ0Ô0Ð0Ð0Ð0r:   z)inplace output= arrays are numpy-specificc                 óÆ  — g d¢g d¢g d¢g}|                      |¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}t          j         g d¢g d¢g d¢g d¢g d¢g d	¢g d¢g d¢gt          ¬
¦  «        }|                      |¦  «        }t          j        |j        t          ¬
¦  «        }|                      |¦  «        }t          j        ||d|d¬¦  «        }t          ||¦  «         d S )Nr­   r©   r	  ©r   r   r   r   r   r   r   r   r   r  r  r  r  r   rë   r   rÍ  rÈ  rI  s          r8   Útest_binary_dilation34z,TestNdimageMorphology.test_binary_dilation34ö  se  € ð �)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆØ,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,ð.ˆõ ŒzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5õ =AðBñ Bô Bˆð �zŠz˜$ÑÔˆÝŒx˜œ
­$Ð/Ñ/Ô/ˆØ�zŠz˜$ÑÔˆÝÔ% d¨F¸rØ+/¸aðAñ Aô Aˆå! # xÑ0Ô0Ð0Ð0Ð0r:   c                 óÀ  — t          ||¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}t          j        g d¢g d¢g d¢g d	¢g d
¢g d¢g d¢g d¢g¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}t          j        |t          ¬¦  «        }t          j        ||¦  «        }t          j        |t          j        |¦  «        ¦  «        }t          j        ||¦  «        }|                     |¦  «        }|                     |¦  «        }|                     g d¢g d¢g d¢g d	¢g d
¢g d¢g d¢g d¢g|¬¦  «        }t          j        ||dd¬¦  «        }t          ||¦  «         d S )Nr®  r¯  r  r°  r¨  r±  r  r	  r  r  r  r  r   r�  r   )rH  rí   rÈ   )
r.   rU   r/   r¸   rO  rP  rQ  r   rk  r   )r2   r   r3   rR  r4   rH  r7   r5   s           r8   Útest_binary_dilation35z,TestNdimageMorphology.test_binary_dilation35  s0  € õ ˜˜EÑ"Ô"ˆØ'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'ð)ˆõ ŒzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5ñ 6ô 6ˆð )Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(ð*ˆõ Œz˜$¥dÐ+Ñ+Ô+ˆå”> # tÑ,Ô,ˆÝŒn˜T¥2¤>°$Ñ#7Ô#7Ñ8Ô8ˆÝ”= ¨3Ñ/Ô/ˆà�zŠz˜$ÑÔˆØ—:’:˜hÑ'Ô'ˆà�zŠzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5ð =Bð ñ Cô Cˆõ Ô% d°Ø-3À!ðEñ Eô Eˆå! # xÑ0Ô0Ð0Ð0Ð0r:   c                 óÈ   — t          j        g t          ¬¦  «        }|                     |¦  «        }t	          j        |d¬¦  «        }||                     d¦  «        k    sJ ‚d S )Nr   rë   r_  F)rU   rQ   r¸   r/   r   rk  )r2   r3   r4   r5   s       r8   Útest_binary_dilation36z,TestNdimageMorphology.test_binary_dilation36I  sa   € õ Œx˜¥$Ð'Ñ'Ô'ˆØ�zŠz˜$ÑÔˆÝÔ% d°rÐ:Ñ:Ô:ˆØ�b—j’j Ñ'Ô'Ò'Ð'Ð'Ð'Ð'Ð'r:   c                 óF  — g d¢g d¢g d¢g}|                      |¦  «        }t          j         g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }t          j         g d¢g d¢g d	¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }t          j         g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                      |¦  «        }t          j        |||d
¬¦  «        }t          ||¦  «         d S )Nr­   r©   r	  r  rË  rU  r·  r   rÌ  r   ©rH  rÈ   )r/   rU   r¸   r   Úbinary_propagationr   rI  s          r8   Útest_binary_propagation01z/TestNdimageMorphology.test_binary_propagation01Q  sè  € à�)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆÝ”:Ð7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7ð9õ AEðFñ Fô Fˆð —:’:˜hÑ'Ô'ˆÝŒzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5õ =AðBñ Bô Bˆð �zŠz˜$ÑÔˆÝŒzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5õ =AðBñ Bô Bˆð �zŠz˜$ÑÔˆÝÔ(¨¨vØ.2ÀðDñ Dô Dˆå! # xÑ0Ô0Ð0Ð0Ð0r:   c                 óî  — g d¢g d¢g d¢g}g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                      |¦  «        }|                      |¦  «        }t          j         g d¢g d¢g d¢g d¢g d¢g d	¢g d¢g d¢gt          ¬
¦  «        }|                      |¦  «        }t          j        |j        t          ¬
¦  «        }|                      |¦  «        }t          j        |||d¬¦  «        }t          ||¦  «         d S )Nr­   r©   r	  rÐ  r   r  r  r  r  r   r   r×  )r/   rU   r¸   rQ   rR   r   rØ  r   rI  s          r8   Útest_binary_propagation02z/TestNdimageMorphology.test_binary_propagation02v  sr  € à�)�)Ø�)�)Ø�)�)ðˆð -Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,ð.ˆð —:’:˜hÑ'Ô'ˆØ—’˜FÑ#Ô#ˆÝŒzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5õ =AðBñ Bô Bˆð �zŠz˜$ÑÔˆÝŒx˜œ
­$Ð/Ñ/Ô/ˆØ�zŠz˜$ÑÔˆÝÔ(¨¨vØ.2ÀðDñ Dô Dˆå! # xÑ0Ô0Ð0Ð0Ð0r:   c                 óö   — |                      t          j        g t          ¬¦  «        ¦  «        }|                      t          j        g t          ¬¦  «        ¦  «        }t	          j        |¦  «        }||k    sJ ‚d S )Nr   )r/   rU   rQ   r¸   r   rØ  )r2   r3   r4   r7   r5   s        r8   Útest_binary_propagation03z/TestNdimageMorphology.test_binary_propagation03”  se   € ð �zŠz�"œ( 2­TÐ2Ñ2Ô2Ñ3Ô3ˆØ—:’:�bœh rµÐ6Ñ6Ô6Ñ7Ô7ˆÝÔ(¨Ñ.Ô.ˆØ�hŠˆˆˆˆˆr:   c                 ó*  — t          ||¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                     |¦  «        }|                     g d¢g d¢g d¢g d¢g d	¢g d¢g d¢g d¢g|¬
¦  «        }t          j        |¦  «        }t	          ||¦  «         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   Úbinary_openingr   r  s         r8   Útest_binary_opening01z+TestNdimageMorphology.test_binary_opening01œ  ó
  € õ ˜˜EÑ"Ô"ˆØ,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,ð.ˆð —:’:˜hÑ'Ô'ˆØ�zŠzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5ð =Bð ñ Cô Cˆõ Ô$ TÑ*Ô*ˆÝ! # xÑ0Ô0Ð0Ð0Ð0r:   c                 ó€  — t          ||¦  «        }t          j        dd¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                     |¦  «        }|                     |¦  «        }|                     g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g|¬	¦  «        }t          j        ||¦  «        }t          ||¦  «         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   r  r   )r.   r   r¤   r/   rá  r   r  s          r8   Útest_binary_opening02z+TestNdimageMorphology.test_binary_opening02´  ó/  € õ ˜˜EÑ"Ô"ˆÝÔ2°1°aÑ8Ô8ˆØ,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,ð.ˆð —:’:˜hÑ'Ô'ˆØ—’˜FÑ#Ô#ˆØ�zŠzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5ð =Bð ñ Cô Cˆõ Ô$ T¨6Ñ2Ô2ˆÝ! # xÑ0Ô0Ð0Ð0Ð0r:   c                 ó*  — t          ||¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                     |¦  «        }|                     g d¢g d	¢g d
¢g d¢g d¢g d¢g d¢g d¢g|¬¦  «        }t          j        |¦  «        }t	          ||¦  «         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   Úbinary_closingr   r  s         r8   Útest_binary_closing01z+TestNdimageMorphology.test_binary_closing01Î  rã  r:   c                 ó€  — t          ||¦  «        }t          j        dd¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                     |¦  «        }|                     |¦  «        }|                     g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g|¬	¦  «        }t          j        ||¦  «        }t          ||¦  «         d S )
Nr   r  rÐ  r  r¢  rå  r´  ræ  r   )r.   r   r¤   r/   rê  r   r  s          r8   Útest_binary_closing02z+TestNdimageMorphology.test_binary_closing02æ  rè  r:   c           
      ób  — t          j        g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                     |¦  «        }t          j        g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                     |¦  «        }t          j        |¦  «        }t          ||¦  «         d S )Nr  r  r   r  ©rU   r/   r¸   r   Úbinary_fill_holesr   ©r2   r3   r7   r4   r5   s        r8   Útest_binary_fill_holes01z.TestNdimageMorphology.test_binary_fill_holes01 	  s  € å”:Ð7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7ð9õ AEðFñ Fô Fˆð —:’:˜hÑ'Ô'ˆåŒzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5õ =AðBñ Bô Bˆð �zŠz˜$ÑÔˆåÔ'¨Ñ-Ô-ˆÝ! # xÑ0Ô0Ð0Ð0Ð0r:   c           
      ób  — t          j        g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                     |¦  «        }t          j        g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                     |¦  «        }t          j        |¦  «        }t          ||¦  «         d S )Nr  r  r  r   r  rï  rñ  s        r8   Útest_binary_fill_holes02z.TestNdimageMorphology.test_binary_fill_holes02	  ó  € å”:Ð7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7Ø7Ð7Ð7ð9õ AEðFñ Fô Fˆð —:’:˜hÑ'Ô'ˆÝŒzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5õ =AðBñ Bô Bˆð �zŠz˜$ÑÔˆÝÔ'¨Ñ-Ô-ˆÝ! # xÑ0Ô0Ð0Ð0Ð0r:   c           
      ób  — t          j        g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                     |¦  «        }t          j        g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                     |¦  «        }t          j        |¦  «        }t          ||¦  «         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   r   r   r   r   r   r   r   rï  rñ  s        r8   Útest_binary_fill_holes03z.TestNdimageMorphology.test_binary_fill_holes03,	  rõ  r:   )Úcpu_onlyz2these filters do not yet have axes support in CuPyz	jax.numpyz.these filters are not implemented in JAX.numpyrÈ   r   r   rí   )r   r   )rë   r   Úexpand_axis©r   r   r   Úfuncc           
      óR  — |j         }t          j        g d¢g d¢g d¢gt          ¦  «        }|                     |¦  «        }t          j        g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¦  «        }|                     |¦  «        }|dk    rt	          ||¬	¦  «        }	nt	          |¬
¦  «        }	|dv}
|
r||	d<   n|dk    rt          j        d¦  «          |||fi |	¤Ž}d}|                     |g|z  |¬¦  «        }|                     |g|z  |¬¦  «        }g d¢}|                     |¦  «         t          |¦  «        st          |¦  «        r@|                     t          j        |j        t          ¦  «        ¦  «        } |||f||dœ|	¤Ž n |||fd|i|	¤Ž}t          ||¦  «         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   Úbinary_hit_or_miss)Úorigin1Úorigin2r†  )rý  rð  rÈ   r   z-border_value !=0 unsupported by this functionr$   rˆ   rú  ©r5  Úaxesr  )Ú__name__rU   r/   r¸   ÚdictÚpytestÚskipÚstackÚremover   r   rQ   rR   r   )r2   r3   rû  rù  rí   rÈ   Ú	func_namer¦   r4   ÚkwargsÚborder_supportedr7   Ún_repsr  r5   s                  r8   Útest_binary_axesz&TestNdimageMorphology.test_binary_axesA	  s4  € ð( ”Mˆ	Ý”˜Y˜Y˜YØ&˜Y˜YØ&˜Y˜Yð(å)-ñ/ô /ˆð —’˜FÑ#Ô#ˆåŒzÐ0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2õ 48ñ9ô 9ˆð �zŠz˜$ÑÔˆØÐ,Ò,Ð,Ý &°&Ð9Ñ9Ô9ˆFˆFå Ð(Ñ(Ô(ˆFØ$ð -Bð BÐàð 	IØ%1ˆF�>Ñ"Ð"Ø˜QÒÐÝŒKÐGÑHÔHÐHà�4˜˜fÐ/Ð/¨Ð/Ð/ˆð ˆØ—8’8˜X˜J¨Ñ/°k�8ÑBÔBˆØ�xŠx˜˜ ™¨kˆxÑ:Ô:ˆð ˆyˆyˆØ�Š�KÑ Ô Ð Ý�B‰<Œ<ð 	:�7 2™;œ;ð 	:Ø—*’*�RœX d¤jµ$Ñ7Ô7Ñ8Ô8ˆCØˆD��vÐ? c°Ð?Ð?¸Ð?Ð?Ð?Ð?ð �$�t˜VÐ9Ð9¨$Ð9°&Ð9Ð9ˆCÝ˜˜XÑ&Ô&Ð&Ð&Ð&r:   c           	      óü   — |                      g d¢g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }t          j        ||¬¦  «        }t          ||                      g d¢g d¢g d	¢g¦  «        ¦  «         d S )
N©r    r   r$   r   r   ©r%   r"   rg   r    r$   ©r$   r   r    r%   r   ræ   ©r   r   r   ©Ú	footprint©r   r   r   r   r   ©r   r    r   r    r   ©r$   r$   r    r    r   ©r/   r   Úgrey_erosionr   ©r2   r3   Úarrayr  r5  s        r8   Útest_grey_erosion01z)TestNdimageMorphology.test_grey_erosion01€	  s²   € à—
’
˜O˜O˜OØ+˜O˜OØ+˜O˜Oð-ñ .ô .ˆð —J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	ÝÔ% e°yÐAÑAÔAˆÝ! &Ø"$§*¢*¨o¨o¨oØ.=¨o¨oØ.=¨o¨oð.?ñ #@ô #@ñ	Aô 	Að 	Að 	Að 	Ar:   z!output=array requires buffer viewz
dask.arrayz(https://github.com/cupy/cupy/issues/8398c           	      óþ   — |                      g d¢g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }t          j        |||¬¦  «         t          ||                      g d¢g d¢g d	¢g¦  «        ¦  «         d S )
Nr  r  r  ræ   r  )r  r5  r  r  r  r  )r2   r3   r  r  s       r8   Útest_grey_erosion01_overlapz1TestNdimageMorphology.test_grey_erosion01_overlapŒ	  s²   € ð —
’
˜O˜O˜OØ+˜O˜OØ+˜O˜Oð-ñ .ô .ˆð —J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	ÝÔ˜U¨iÀÐFÑFÔFÐFÝ! %Ø"$§*¢*¨o¨o¨oØ.=¨o¨oØ.=¨o¨oð.?ñ #@ô #@ñ	
ô 	
ð 	
ð 	
ð 	
r:   c           	      ó4  — |                      g d¢g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }t          j        |||¬¦  «        }t          ||                      g d¢g d	¢g d
¢g¦  «        ¦  «         d S )Nr  r  r  ræ   r  rü   ©r  rX  r  r  r  r  ©r2   r3   r  r  rX  r5  s         r8   Útest_grey_erosion02z)TestNdimageMorphology.test_grey_erosion02�	  óÔ   € à—
’
˜O˜O˜OØ+˜O˜OØ+˜O˜Oð-ñ .ô .ˆð —J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	Ø—J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	ÝÔ% e°yØ09ð;ñ ;ô ;ˆå! &Ø"$§*¢*¨o¨o¨oØ.=¨o¨oØ.=¨o¨oð.?ñ #@ô #@ñ	
ô 	
ð 	
ð 	
ð 	
r:   c           	      ó4  — |                      g d¢g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }t          j        |||¬¦  «        }t          ||                      g d¢g d	¢g d
¢g¦  «        ¦  «         d S )Nr  r  r  ræ   r  r©   r  r‰  )r   r   r   r   r   )r   r   r   r   r   r  r   s         r8   Útest_grey_erosion03z)TestNdimageMorphology.test_grey_erosion03¬	  r"  r:   c           	      óü   — |                      g d¢g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }t          j        ||¬¦  «        }t          ||                      g d¢g d¢g d	¢g¦  «        ¦  «         d S )
Nr  r  r  r¼   ræ   r  ©r%   r%   rg   rg   r$   ©r%   rg   r   rg   r%   ©r   r   r   r%   r%   ©r/   r   Úgrey_dilationr   r  s        r8   Útest_grey_dilation01z*TestNdimageMorphology.test_grey_dilation01»	  s­   € à—
’
˜O˜O˜OØ+˜O˜OØ+˜O˜Oð-ñ .ô .ˆð —J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	ÝÔ& u¸	ÐBÑBÔBˆÝ! &Ø"$§*¢*¨o¨o¨oØ.=¨o¨oØ.=¨o¨oð.?ñ #@ô #@ñ	
ô 	
ð 	
ð 	
ð 	
r:   c           	      ó4  — |                      g d¢g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }t          j        |||¬¦  «        }t          ||                      g d¢g d	¢g d
¢g¦  «        ¦  «         d S )Nr  r  r  r¼   ræ   rü   r  r&  r'  r(  r)  r   s         r8   Útest_grey_dilation02z*TestNdimageMorphology.test_grey_dilation02È	  sÔ   € à—
’
˜O˜O˜OØ+˜O˜OØ+˜O˜Oð-ñ .ô .ˆð —J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	Ø—J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	ÝÔ& u¸	Ø1:ð<ñ <ô <ˆå! &Ø"$§*¢*¨o¨o¨oØ.=¨o¨oØ.=¨o¨oð.?ñ #@ô #@ñ	
ô 	
ð 	
ð 	
ð 	
r:   c           	      ó4  — |                      g d¢g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }t          j        |||¬¦  «        }t          ||                      g d¢g d	¢g d
¢g¦  «        ¦  «         d S )Nr  r  r  r¼   ræ   r©   r  )r   r   é
   r/  r"   )r   r/  rg   r/  r   )rg   rg   rg   r   r   r)  r   s         r8   Útest_grey_dilation03z*TestNdimageMorphology.test_grey_dilation03×	  sÙ   € à—
’
˜O˜O˜OØ+˜O˜OØ+˜O˜Oð-ñ .ô .ˆð —J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	Ø—J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	ÝÔ& u¸	Ø1:ð<ñ <ô <ˆå! &Ø"$§*¢*Ð.?Ð.?Ð.?Ø.?Ð.?Ð.?Ø.=¨o¨oð.?ñ #@ô #@ñ	
ô 	
ð 	
ð 	
ð 	
r:   c                 ó  — |                      g d¢g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }t          j        ||¬¦  «        }t          j        ||¬¦  «        }t          j        ||¬¦  «        }t          ||¦  «         d S ©Nr  r  r  ræ   r  r  ©r/   r   r  r*  Úgrey_openingr   ©r2   r3   r  r  rR  r7   r5  s          r8   Útest_grey_opening01z)TestNdimageMorphology.test_grey_opening01æ	  s£   € à—
’
˜O˜O˜OØ+˜O˜OØ+˜O˜Oð-ñ .ô .ˆð —J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	ÝÔ" 5°IÐ>Ñ>Ô>ˆÝÔ(¨¸	ÐBÑBÔBˆÝÔ% e°yÐAÑAÔAˆÝ! &¨(Ñ3Ô3Ð3Ð3Ð3r:   c                 óX  — |                      g d¢g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }t          j        |||¬¦  «        }t          j        |||¬¦  «        }t          j        |||¬¦  «        }t          ||¦  «         d S ©Nr  r  r  ræ   r  rü   r  r3  ©r2   r3   r  r  rX  rR  r7   r5  s           r8   Útest_grey_opening02z)TestNdimageMorphology.test_grey_opening02ñ	  sÜ   € à—
’
˜O˜O˜OØ+˜O˜OØ+˜O˜Oð-ñ .ô .ˆð —J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	Ø—J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	ÝÔ" 5°IØ-6ð8ñ 8ô 8ˆåÔ(¨¸	Ø3<ð>ñ >ô >ˆåÔ% e°yØ09ð;ñ ;ô ;ˆå! &¨(Ñ3Ô3Ð3Ð3Ð3r:   c                 ó  — |                      g d¢g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }t          j        ||¬¦  «        }t          j        ||¬¦  «        }t          j        ||¬¦  «        }t          ||¦  «         d S r2  ©r/   r   r*  r  Úgrey_closingr   r5  s          r8   Útest_grey_closing01z)TestNdimageMorphology.test_grey_closing01 
  s£   € à—
’
˜O˜O˜OØ+˜O˜OØ+˜O˜Oð-ñ .ô .ˆð —J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	ÝÔ# E°YÐ?Ñ?Ô?ˆÝÔ'¨°yÐAÑAÔAˆÝÔ% e°yÐAÑAÔAˆÝ! &¨(Ñ3Ô3Ð3Ð3Ð3r:   c                 óX  — |                      g d¢g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }t          j        |||¬¦  «        }t          j        |||¬¦  «        }t          j        |||¬¦  «        }t          ||¦  «         d S r8  r<  r9  s           r8   Útest_grey_closing02z)TestNdimageMorphology.test_grey_closing02
  sÜ   € à—
’
˜O˜O˜OØ+˜O˜OØ+˜O˜Oð-ñ .ô .ˆð —J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	Ø—J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	ÝÔ# E°YØ.7ð9ñ 9ô 9ˆåÔ'¨°yØ2;ð=ñ =ô =ˆåÔ% e°yØ09ð;ñ ;ô ;ˆå! &¨(Ñ3Ô3Ð3Ð3Ð3r:   c                 ó¦  — |                      g d¢g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }t          j        |||¬¦  «        }t          j        |||¬¦  «        }||z
  }|                     |j        |j        ¬¦  «        }t          j        ||||¬	¦  «         t          ||¦  «         d S ©
Nr  r  r  ræ   r  rü   r  r   ©r  rX  r5  )	r/   r   r*  r  rQ   rR   r   Úmorphological_gradientr   ©	r2   r3   r  r  rX  Útmp1Útmp2r7   r5  s	            r8   Útest_morphological_gradient01z3TestNdimageMorphology.test_morphological_gradient01
  s	  € ð —
’
˜O˜O˜OØ+˜O˜OØ+˜O˜Oð-ñ .ô .ˆð —J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	Ø—J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	ÝÔ$ U°iØ/8ð:ñ :ô :ˆåÔ# E°YØ.7ð9ñ 9ô 9ˆà˜$‘;ˆØ—’˜%œ+¨U¬[�Ñ9Ô9ˆÝÔ& u¸	Ø1:À6ð	Kñ 	Kô 	Kð 	Kå! &¨(Ñ3Ô3Ð3Ð3Ð3r:   c                 ób  — |                      g d¢g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }t          j        |||¬¦  «        }t          j        |||¬¦  «        }||z
  }t          j        |||¬¦  «        }t          ||¦  «         d S r8  )r/   r   r*  r  rD  r   rE  s	            r8   Útest_morphological_gradient02z3TestNdimageMorphology.test_morphological_gradient02-
  sê   € ð —
’
˜O˜O˜OØ+˜O˜OØ+˜O˜Oð-ñ .ô .ˆð —J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	Ø—J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	ÝÔ$ U°iØ/8ð:ñ :ô :ˆåÔ# E°YØ.7ð9ñ 9ô 9ˆà˜$‘;ˆÝÔ/°ÀØ:CðEñ Eô Eˆå! &¨(Ñ3Ô3Ð3Ð3Ð3r:   c                 ó²  — |                      g d¢g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }t          j        |||¬¦  «        }t          j        |||¬¦  «        }||z   d|z  z
  }|                     |j        |j        ¬	¦  «        }t          j        ||||¬
¦  «         t          ||¦  «         d S )Nr  r  r  ræ   r  rü   r  r   r   rC  )	r/   r   r*  r  rQ   rR   r   Úmorphological_laplacer   rE  s	            r8   Útest_morphological_laplace01z2TestNdimageMorphology.test_morphological_laplace01>
  s  € ð —
’
˜O˜O˜OØ+˜O˜OØ+˜O˜Oð-ñ .ô .ˆð —J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	Ø—J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	ÝÔ$ U°iØ/8ð:ñ :ô :ˆåÔ# E°YØ.7ð9ñ 9ô 9ˆà˜$‘;  U¡Ñ*ˆØ—’˜%œ+¨U¬[�Ñ9Ô9ˆÝÔ% e°yØ09À&ð	Jñ 	Jô 	Jð 	Jå! &¨(Ñ3Ô3Ð3Ð3Ð3r:   c                 ón  — |                      g d¢g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }t          j        |||¬¦  «        }t          j        |||¬¦  «        }||z   d|z  z
  }t          j        |||¬¦  «        }t          ||¦  «         d S )	Nr  r  r  ræ   r  rü   r  r   )r/   r   r*  r  rL  r   rE  s	            r8   Útest_morphological_laplace02z2TestNdimageMorphology.test_morphological_laplace02Q
  só   € ð —
’
˜O˜O˜OØ+˜O˜OØ+˜O˜Oð-ñ .ô .ˆð —J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	Ø—J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	ÝÔ$ U°iØ/8ð:ñ :ô :ˆåÔ# E°YØ.7ð9ñ 9ô 9ˆà˜$‘;  U¡Ñ*ˆÝÔ.¨uÀ	Ø9BðDñ Dô Dˆå! &¨(Ñ3Ô3Ð3Ð3Ð3r:   c                 óx  — |                      g d¢g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }t          j        |||¬¦  «        }||z
  }|                     |j        |j        ¬¦  «        }t          j        ||||¬	¦  «         t          ||¦  «         d S rB  )r/   r   r4  rQ   rR   r   Úwhite_tophatr   r9  s           r8   Útest_white_tophat01z)TestNdimageMorphology.test_white_tophat01b
  së   € ð —
’
˜O˜O˜OØ+˜O˜OØ+˜O˜Oð-ñ .ô .ˆð —J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	Ø—J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	ÝÔ" 5°IØ-6ð8ñ 8ô 8ˆà˜3‘;ˆØ—’˜%œ+¨U¬[�Ñ9Ô9ˆÝÔ˜U¨iØ'0¸ð	Añ 	Aô 	Að 	Aå! &¨(Ñ3Ô3Ð3Ð3Ð3r:   c                 ó4  — |                      g d¢g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }t          j        |||¬¦  «        }||z
  }t          j        |||¬¦  «        }t	          ||¦  «         d S r8  )r/   r   r4  rQ  r   r9  s           r8   Útest_white_tophat02z)TestNdimageMorphology.test_white_tophat02s
  sÇ   € à—
’
˜O˜O˜OØ+˜O˜OØ+˜O˜Oð-ñ .ô .ˆð —J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	Ø—J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	ÝÔ" 5°IØ-6ð8ñ 8ô 8ˆà˜3‘;ˆÝÔ% e°yØ09ð;ñ ;ô ;ˆå! &¨(Ñ3Ô3Ð3Ð3Ð3r:   z	cupy#8399c           
      óÆ  — t          j        g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                     |¦  «        }t          j        dt          ¬¦  «        }|                     |¦  «        }t          j        g d¢g d¢g d¢g d	¢g d
¢g d	¢g d¢gt          ¬¦  «        }|                     |¦  «        }t	          j        ||¬¦  «        }t          ||¦  «         d S )N©r   r   r   r   r   r   r   r*  ©r   r   r   r   r   r   r   rF  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   r   r   r   r   r   r   ©rX  )rU   r/   r¸   r‚   r   rQ  r   ©r2   r3   r  rX  r7   r5  s         r8   Útest_white_tophat03z)TestNdimageMorphology.test_white_tophat03�
  ó?  € õ ”
Ð1Ð1Ð1Ø1Ð1Ð1Ø1Ð1Ð1Ø1Ð1Ð1Ø1Ð1Ð1Ø1Ð1Ð1Ø1Ð1Ð1ð3õ ;?ð@ñ @ô @ˆð —
’
˜5Ñ!Ô!ˆÝ”G˜F­$Ð/Ñ/Ô/ˆ	Ø—J’J˜yÑ)Ô)ˆ	Ý”:Ð4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4ð6õ >BðCñ Cô Cˆð —:’:˜hÑ'Ô'ˆåÔ% e°yÐAÑAÔAˆÝ˜ Ñ)Ô)Ð)Ð)Ð)r:   c                 ó,  — t          j        dt          ¬¦  «        }t          j        dt          ¬¦  «        }|                     |¦  «        }|                     |¦  «        }|                     ||j        ¬¦  «        }t          j        |||¬¦  «         d S ©Nr$   r   r   )rX  r5  )	rU   Úeyer¸   r‚   r/   Ú
empty_likerS   r   rQ  ©r2   r3   r  rX  r5  s        r8   Útest_white_tophat04z)TestNdimageMorphology.test_white_tophat04›
  s…   € õ ”�q¥Ð%Ñ%Ô%ˆÝ”G˜F­$Ð/Ñ/Ô/ˆ	à—
’
˜5Ñ!Ô!ˆØ—J’J˜yÑ)Ô)ˆ	ð —’˜u¨B¬J�Ñ7Ô7ˆÝÔ˜U¨iÀÐGÑGÔGÐGÐGÐGr:   c                 óx  — |                      g d¢g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }t          j        |||¬¦  «        }||z
  }|                     |j        |j        ¬¦  «        }t          j        ||||¬	¦  «         t          ||¦  «         d S rB  )r/   r   r=  rQ   rR   r   Úblack_tophatr   r9  s           r8   Útest_black_tophat01z)TestNdimageMorphology.test_black_tophat01©
  së   € ð —
’
˜O˜O˜OØ+˜O˜OØ+˜O˜Oð-ñ .ô .ˆð —J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	Ø—J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	ÝÔ" 5°IØ-6ð8ñ 8ô 8ˆà˜‘;ˆØ—’˜%œ+¨U¬[�Ñ9Ô9ˆÝÔ˜U¨iØ'0¸ð	Añ 	Aô 	Að 	Aå! &¨(Ñ3Ô3Ð3Ð3Ð3r:   c                 ó4  — |                      g d¢g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }|                      g d¢g d¢g¦  «        }t          j        |||¬¦  «        }||z
  }t          j        |||¬¦  «        }t	          ||¦  «         d S r8  )r/   r   r=  rc  r   r9  s           r8   Útest_black_tophat02z)TestNdimageMorphology.test_black_tophat02º
  sÇ   € à—
’
˜O˜O˜OØ+˜O˜OØ+˜O˜Oð-ñ .ô .ˆð —J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	Ø—J’J 	 	 	¨9¨9¨9Ð5Ñ6Ô6ˆ	ÝÔ" 5°IØ-6ð8ñ 8ô 8ˆà˜‘;ˆÝÔ% e°yØ09ð;ñ ;ô ;ˆå! &¨(Ñ3Ô3Ð3Ð3Ð3r:   zcupy/cupy#8399c           
      óÆ  — t          j        g d¢g d¢g d¢g d¢g d¢g d¢g d¢gt          ¬¦  «        }|                     |¦  «        }t          j        dt          ¬¦  «        }|                     |¦  «        }t          j        g d¢g d¢g d¢g d¢g d	¢g d¢g d
¢gt          ¬¦  «        }|                     |¦  «        }t	          j        ||¬¦  «        }t          ||¦  «         d S )NrV  r*  rW  rF  r   r   )r   r   r   r   r   r   r   )r   r   r   r   r   r   r   )r   r   r   r   r   r   r   rG  rX  )rU   r/   r¸   r‚   r   rc  r   rY  s         r8   Útest_black_tophat03z)TestNdimageMorphology.test_black_tophat03È
  r[  r:   c                 ó$  — |                      t          j        dt          ¬¦  «        ¦  «        }|                      t          j        dt          ¬¦  «        ¦  «        }|                     ||j        ¬¦  «        }t          j        |||¬¦  «         d S r]  )	r/   rU   r^  r¸   r‚   r_  rS   r   rc  r`  s        r8   Útest_black_tophat04z)TestNdimageMorphology.test_black_tophat04â
  s{   € ð —
’
�2œ6 !­4Ð0Ñ0Ô0Ñ1Ô1ˆØ—J’J�rœw vµTÐ:Ñ:Ô:Ñ;Ô;ˆ	ð —’˜u¨B¬J�Ñ7Ô7ˆÝÔ˜U¨iÀÐGÑGÔGÐGÐGÐGr:   Úmode)ÚreflectÚconstantÚnearestÚmirrorÚwrapÚfootprint_mode)Úsizer  rX  c           
      óš  — |                      g d¢g d¢g d¢g d¢g d¢g d¢g d¢g¦  «        }t          ||¬¦  «        }|d	k    rd
|d	<   n|                      g d¢g d¢g¦  «        |d<   |dk    r|                     |d         ¦  «        |d<    ||fi |¤Ž}	d}
|                     |	g|
z  |¬¦  «        }	|                     |g|
z  |¬¦  «        }g d¢}|                     |¦  «         t          |¦  «        st          |¦  «        r.|                     |	j        |	j	        ¬¦  «        } ||f||dœ|¤Ž n ||fd|i|¤Ž}t          ||	¦  «         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   r   )r   r   rg   r    r   r   r   )r   r   r   r   r   r   r   )rí   rk  rr  )r   r    ræ   r  r  rX  r$   rˆ   rú  r   r   r  )r/   r  Ú	ones_liker  r  r   r   rQ   rR   r   r   )r2   r3   rû  rù  rí   rq  rk  r4   r	  r7   r  r  r5   s                r8   Útest_grey_axesz$TestNdimageMorphology.test_grey_axesí
  sÊ  € ð4 �zŠzÐ0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2ñ 3ô 3ˆõ ˜V¨$Ð/Ñ/Ô/ˆØ˜VÒ#Ð#Ø#ˆF�6‰NˆNà"$§*¢*¨i¨i¨i¸¸¸Ð-CÑ"DÔ"DˆF�;ÑØ˜[Ò(Ð(Ø"$§,¢,¨v°kÔ/BÑ"CÔ"CˆF�;Ñà�4˜Ð'Ð' Ð'Ð'ˆð ˆØ—8’8˜X˜J¨Ñ/°k�8ÑBÔBˆØ�xŠx˜˜ ™¨kˆxÑ:Ô:ˆð ˆyˆyˆØ�Š�KÑ Ô Ð å�B‰<Œ<ð 	2�7 2™;œ;ð 	2Ø—(’(˜8œ>°´�(Ñ@Ô@ˆCØˆD�Ð7˜c¨Ð7Ð7°Ð7Ð7Ð7Ð7ð �$�tÐ1Ð1 $Ð1¨&Ð1Ð1ˆCÝ˜˜XÑ&Ô&Ð&Ð&Ð&r:   ú!inplace output= is numpy-specificc                 óÖ  — t          ||¦  «        }g d¢g d¢g d¢g}|                     |¦  «        }g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                     |¦  «        }|                     g d¢g d¢g d¢g d¢g d¢g d	¢g d	¢g d¢g|¬
¦  «        }|                     t          j        |j        t
          ¬
¦  «        ¦  «        }t          j        |||¬¦  «         t          ||¦  «         d S )Nr­   r©   rà   )r   r   r   r   r   rƒ  rî   )r   r   r   r   r   r´   )r   r   r   r   r   r   ©r5  )	r.   r/   rU   rQ   rR   r¸   r   rý  r   r  s          r8   Útest_hit_or_miss01z(TestNdimageMorphology.test_hit_or_miss01)  s?  € õ
 ˜˜EÑ"Ô"ˆØ�)�)Ø�)�)Ø�)�)ðˆð —’˜FÑ#Ô#ˆØ#�O�OØ#�O�OØ#�O�OØ#�O�OØ#�O�OØ#�O�OØ#�O�OØ#�O�Oð%ˆð —:’:˜hÑ'Ô'ˆØ�zŠz˜?˜?˜?Ø*˜?˜?Ø*˜?˜?Ø*˜?˜?Ø*˜?˜?Ø*˜?˜?Ø*˜?˜?Ø*˜?˜?ð,ð 49ð ñ :ô :ˆð �jŠj�œ $¤*µDÐ9Ñ9Ô9Ñ:Ô:ˆÝÔ" 4¨¸Ð<Ñ<Ô<Ð<Ý! # xÑ0Ô0Ð0Ð0Ð0r:   c                 ó<  — t          ||¦  «        }g d¢g d¢g d¢g}g d¢g d¢g d¢g d¢g}|                     |¦  «        }|                     |¦  «        }|                     g d¢g d¢g d¢g d¢g|¬¦  «        }t          j        ||¦  «        }t	          ||¦  «         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  s          r8   Útest_hit_or_miss02z(TestNdimageMorphology.test_hit_or_miss02H  só   € õ ˜˜EÑ"Ô"ˆØ�)�)Ø�)�)Ø�)�)ðˆð -Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,ð.ˆð —’˜FÑ#Ô#ˆØ—:’:˜hÑ'Ô'ˆØ�zŠzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5ð =Bð ñ Cô Cˆõ Ô(¨¨vÑ6Ô6ˆÝ! # xÑ0Ô0Ð0Ð0Ð0r:   c                 ó®  — t          ||¦  «        }g d¢g d¢g d¢g}g d¢g d¢g d¢g}g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}|                     |¦  «        }|                     |¦  «        }|                     |¦  «        }|                     g d¢g d¢g d¢g d	¢g d
¢g d¢g d¢g d¢g|¬¦  «        }t          j        |||¦  «        }t	          ||¦  «         d S )Nrü   r©   r  r  r   r{  r¢  r  r´  ræ  rß  r  r   r|  )r2   r   r3   Ústruct1Ústruct2r7   r4   r5   s           r8   Útest_hit_or_miss03z(TestNdimageMorphology.test_hit_or_miss03\  sl  € õ ˜˜EÑ"Ô"ˆØ�9�9Ø�9�9Ø�9�9ðˆð �9�9Ø�9�9Ø�9�9ðˆð -Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,ð.ˆð —*’*˜WÑ%Ô%ˆØ—*’*˜WÑ%Ô%ˆØ—:’:˜hÑ'Ô'ˆØ�zŠzÐ3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3Ø3Ð3Ð3ð5ð =Bð ñ Cô Cˆõ Ô(¨¨w¸Ñ@Ô@ˆÝ! # xÑ0Ô0Ð0Ð0Ð0r:   N)­r  Ú
__module__Ú__qualname__r   r   r0   r  ÚmarkÚparametrizer   r9   r?   rD   Úskip_xp_backendsr]   Úxfail_xp_backendsre   rh   rl   rq   rt   rv   rx   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é   rï   rò   rô   rö   rø   rú   rý   rÿ   r  r  r  r  r  r  r#  r/  r7  r:  r<  rB  rD  rJ  rM  rS  rV  r]  rb  rf  ri  rk  rl  rn  rq  rt  rx  rz  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Õ  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-  r0  r4  r6  r:  r=  r>  r@  rD  rH  rJ  rL  rM  rO  rQ  rR  rT  rZ  ra  rc  rd  rf  rh  rj  ru  ry  r}  r�  © r:   r8   r   r      s +  € € € € € àÐ�wÔ4Ñ5Ô5Ø„[×Ò˜W eÑ,Ô,ð.0ð .0ñ -Ô,ñ 6Ô5ð.0ð` Ð�wÔ4Ñ5Ô5Ø„[×Ò˜W eÑ,Ô,ð.0ð .0ñ -Ô,ñ 6Ô5ð.0ð` Ð�wÔ4Ñ5Ô5Ø„[×Ò˜W eÑ,Ô,ð.0ð .0ñ -Ô,ñ 6Ô5ð.0ðb ÐØÐKðñ ô ð Ð�wÔ4Ñ5Ô5Ø„[×Ò˜W eÑ,Ô,ð0/ð 0/ñ -Ô,ñ 6Ô5ñô ð
0/ðd Ð�vÐ&PÐQÑQÔQØÐ�wÔ4Ñ5Ô5Ø„[×Ò˜W eÑ,Ô,ð-0ð -0ñ -Ô,ñ 6Ô5ñ RÔQð-0ð^ Ð�wÔ4Ñ5Ô5Ø„[×Ò˜W eÑ,Ô,ð-0ð -0ñ -Ô,ñ 6Ô5ð-0ð^ Ð�wÔ4Ñ5Ô5ðð ñ 6Ô5ðð  Ð�wÔ4ØÔ5ñ7ô 7à„[×Ò˜W eÑ,Ô,ð%0ð %0ñ -Ô,ñ7ô 7ð%0ðN Ð�wÔ4ØÔ5ñ7ô 7à„[×Ò˜W eÑ,Ô,ð#0ð #0ñ -Ô,ñ7ô 7ð#0ðJ ÐØÐIðñ ô ð Ð�wÔ5Ñ6Ô6Ø„[×Ò˜W eÑ,Ô,ð//ð //ñ -Ô,ñ 7Ô6ñô ð
//ðb ÐØÐRðñ ô ð Ð�wÔ5Ñ6Ô6ðð ñ 7Ô6ñô ðð( Ð�w ~Ð6Ñ6Ô6ØÐ�wÔ5Ñ6Ô6Ø„[×Ò˜W eÑ,Ô,ð%ð %ñ -Ô,ñ 7Ô6ñ 7Ô6ð%ð" Ð�fÐ%OÐPÑPÔPØÐ�wÔ5ØÔ4ñ6ô 6à„[×Ò˜W eÑ,Ô,ð*ð *ñ -Ô,ñ6ô 6ñ QÔPð*ð8 ÐØÐDðñ ô ð Ð�wÔ5ØÔ4ñ6ô 6à„[×Ò˜W eÑ,Ô,ð:/ð :/ñ -Ô,ñ6ô 6ñô ð:/ðx Ð�wÔ5ØÔ4ñ6ô 6à„[×Ò˜W eÑ,Ô,ð,ð ,ñ -Ô,ñ6ô 6ð,ð  Ð�wÔ5ØÔ4ñ6ô 6à„[×Ò˜W eÑ,Ô,ð,ð ,ñ -Ô,ñ6ô 6ð,ð  ÐØÐQðñ ô ð Ð�wÔ5Ñ6Ô6ð9ð 9ñ 7Ô6ñô ð9ð
 ÐØÐRðñ ô ð Ð�wÔ5Ñ6Ô6ðð ñ 7Ô6ñô ðð( Ð�wÔ8Ñ9Ô9ðð ñ :Ô9ðð Ð�wÔ8Ñ9Ô9ð5ð 5ñ :Ô9ð5ð Ð�wÔ8Ñ9Ô9ð7ð 7ñ :Ô9ð7ð Ð�wÔ8Ñ9Ô9ð7ð 7ñ :Ô9ð7ð Ð�wÔ0Ñ1Ô1ð1ð 1ñ 2Ô1ð1ð Ð�wÔ0Ñ1Ô1ð1ð 1ñ 2Ô1ð1ð Ð�wÔ0Ñ1Ô1ð ð  ñ 2Ô1ð ð  Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð5ð 5ñ -Ô,ñ /Ô.ð5ð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð5ð 5ñ -Ô,ñ /Ô.ð5ð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð8ð 8ñ -Ô,ñ /Ô.ð8ð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð8ð 8ñ -Ô,ñ /Ô.ð8ð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð>ð >ñ -Ô,ñ /Ô.ð>ð Ð�vÐ&PÐQÑQÔQØÐ�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð>ð >ñ -Ô,ñ /Ô.ñ RÔQð>ð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð>ð >ñ -Ô,ñ /Ô.ð>ð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ðDð Dñ -Ô,ñ /Ô.ðDð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ðDð Dñ -Ô,ñ /Ô.ðDð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ðDð Dñ -Ô,ñ /Ô.ðDð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ðDð Dñ -Ô,ñ /Ô.ðDð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ðDð Dñ -Ô,ñ /Ô.ðDð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ðDð Dñ -Ô,ñ /Ô.ðDð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ðDð Dñ -Ô,ñ /Ô.ðDð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ðDð Dñ -Ô,ñ /Ô.ðDð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ðDð Dñ -Ô,ñ /Ô.ðDð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð:ð :ñ -Ô,ñ /Ô.ð:ð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð:ð :ñ -Ô,ñ /Ô.ð:ð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð@ð @ñ -Ô,ñ /Ô.ð@ð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð@ð @ñ -Ô,ñ /Ô.ð@ð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð@ð @ñ -Ô,ñ /Ô.ð@ð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð@ð @ñ -Ô,ñ /Ô.ð@ð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð1ð 1ñ -Ô,ñ /Ô.ð1ð, Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð1ð 1ñ -Ô,ñ /Ô.ð1ð0 Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð1ð 1ñ -Ô,ñ /Ô.ð1ð0 Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð1ð 1ñ -Ô,ñ /Ô.ð1ð4 Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð1ð 1ñ -Ô,ñ /Ô.ð1ð6 ÐØÐNðñ ô ð Ð�wÔ-Ñ.Ô.ð1ð 1ñ /Ô.ñô ð1ð2 Ð˜d°¨xØHðJñ Jô JàÐ�vØOðQñ Qô QàÐ�wÔ-Ñ.Ô.ð1ð 1ñ /Ô.ñQô QñJô Jð
1ð8 ÐØÐNðñ ô ð Ð�wÔ-Ñ.Ô.ð1ð 1ñ /Ô.ñô ð1ð2 Ð˜d°¨xØHðJñ Jô JàÐ�vØOðQñ Qô QàÐ�wÔ-Ñ.Ô.ð2ð 2ñ /Ô.ñQô QñJô Jð
2ðB Ð˜d°¨xØHðJñ Jô JàÐ�wÔ-Ñ.Ô.ð1ð 1ñ /Ô.ñJô Jð1ð8 Ð�vØOðQñ Qô QàÐ�wÔ-Ñ.Ô.ð1ð 1ñ /Ô.ñQô Qð1ð2 Ð�vØOðQñ Qô QàÐ�wÔ-Ñ.Ô.ð1ð 1ñ /Ô.ñQô Qð1ðB Ð�wÔ-Ñ.Ô.ð1ð 1ñ /Ô.ð1ðB Ð˜d°¨xØHðJñ Jô JàÐ�wÔ-Ñ.Ô.ð'1ð '1ñ /Ô.ñJô Jð'1ðR Ð�vØOðQñ Qô QàÐ�wÔ-Ñ.Ô.ð'1ð '1ñ /Ô.ñQô Qð'1ðR Ð˜d°¨xØHðJñ Jô JàÐ�vØOðQñ Qô QàÐ�wÔ-Ñ.Ô.ðð ñ /Ô.ñQô QñJô Jð
ð Ð�wÔ-Ñ.Ô.ðDð Dñ /Ô.ðDð Ð˜d°¨xØHðJñ Jô JàÐ�vØOðQñ Qô QàÐ�wÔ-Ñ.Ô.ð1ð 1ñ /Ô.ñQô QñJô Jð
1ð: Ð˜d°¨xØHðJñ Jô JàÐ�vØOðQñ Qô QàÐ�wÔ-Ñ.Ô.ð1ð 1ñ /Ô.ñQô QñJô Jð
1ð: „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð5ð 5ñ 0Ô/ñ -Ô,ð5ð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð(ð (ñ 0Ô/ñ -Ô,ð(ð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ðIð Iñ 0Ô/ñ -Ô,ðIð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð8ð 8ñ 0Ô/ñ -Ô,ð8ð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð>ð >ñ 0Ô/ñ -Ô,ð>ð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð>ð >ñ 0Ô/ñ -Ô,ð>ð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð>ð >ñ 0Ô/ñ -Ô,ð>ð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð>ð >ñ 0Ô/ñ -Ô,ð>ð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ðDð Dñ 0Ô/ñ -Ô,ðDð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ðDð Dñ 0Ô/ñ -Ô,ðDð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ðDð Dñ 0Ô/ñ -Ô,ðDð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ðDð Dñ 0Ô/ñ -Ô,ðDð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ðDð Dñ 0Ô/ñ -Ô,ðDð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ðDð Dñ 0Ô/ñ -Ô,ðDð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ðDð Dñ 0Ô/ñ -Ô,ðDð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ðDð Dñ 0Ô/ñ -Ô,ðDð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð:ð :ñ 0Ô/ñ -Ô,ð:ð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð:ð :ñ 0Ô/ñ -Ô,ð:ð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð@ð @ñ 0Ô/ñ -Ô,ð@ð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð@ð @ñ 0Ô/ñ -Ô,ð@ð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð@ð @ñ 0Ô/ñ -Ô,ð@ð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð	@ð 	@ñ 0Ô/ñ -Ô,ð	@ð „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð1ð 1ñ 0Ô/ñ -Ô,ð1ð, „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð1ð 1ñ 0Ô/ñ -Ô,ð1ð, „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð1ð 1ñ 0Ô/ñ -Ô,ð1ð, „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð1ð 1ñ 0Ô/ñ -Ô,ð1ð, „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð1ð 1ñ 0Ô/ñ -Ô,ð1ð0 „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð1ð 1ñ 0Ô/ñ -Ô,ð1ð2 „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð1ð 1ñ 0Ô/ñ -Ô,ð1ð Ð�vØOðQñ Qô QàÐ�wÔ.Ñ/Ô/ð1ð 1ñ 0Ô/ñQô Qð1ð& Ð˜d°¨xØ@ðBñ Bô BàÐ�vØOðQñ Qô QàÐ�wÔ.Ñ/Ô/ð1ð 1ñ 0Ô/ñQô QñBô Bð
1ð* Ð�vØOðQñ Qô QàÐ�wÔ.Ñ/Ô/ð1ð 1ñ 0Ô/ñQô Qð1ð& Ð˜d°¨xØ@ðBñ Bô BàÐ�vØOðQñ Qô QàÐ�wÔ.Ñ/Ô/ð1ð 1ñ 0Ô/ñQô QñBô Bð
1ð* Ð�vØOðQñ Qô QàÐ�wÔ.Ñ/Ô/ð#1ð #1ñ 0Ô/ñQô Qð#1ðJ Ð˜d°¨xØHðJñ Jô JàÐ�vØOðQñ Qô QàÐ�wÔ.Ñ/Ô/ð1ð 1ñ 0Ô/ñQô QñJô Jð
1ð8 „[×Ò˜W eÑ,Ô,ØÐ�wÔ.Ñ/Ô/ð.1ð .1ñ 0Ô/ñ -Ô,ð.1ð` Ð�wÔ.Ñ/Ô/ð(ð (ñ 0Ô/ð(ð Ð�wÔ1Ñ2Ô2ð"1ð "1ñ 3Ô2ð"1ðH Ð�wÔ1Ñ2Ô2ð1ð 1ñ 3Ô2ð1ð: Ð�wÔ1Ñ2Ô2ðð ñ 3Ô2ðð Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð1ð 1ñ -Ô,ñ /Ô.ð1ð, Ð�wÔ-Ñ.Ô.Ø„[×Ò˜W eÑ,Ô,ð1ð 1ñ -Ô,ñ /Ô.ð1ð0 „[×Ò˜W eÑ,Ô,ØÐ�wÔ-Ñ.Ô.ð1ð 1ñ /Ô.ñ -Ô,ð1ð, „[×Ò˜W eÑ,Ô,ØÐ�wÔ-Ñ.Ô.ð1ð 1ñ /Ô.ñ -Ô,ð1ð0 Ð�wÔ0Ñ1Ô1ð1ð 1ñ 2Ô1ð1ð, Ð�wÔ0Ñ1Ô1ð1ð 1ñ 2Ô1ð1ð( Ð�wÔ0Ñ1Ô1ð1ð 1ñ 2Ô1ð1ð( Ð˜tÐ$Ñ$Ô$ØÐØÐKðMñ Mô MàÐØÐLðNñ Nô Nà„[×Ò˜^¨Q°¨FÑ3Ô3Ø„[×Ò˜X¨°Ð'8Ñ9Ô9Ø„[×Ò˜]¨I¨I¨IÑ6Ô6Ø„[×ÒØØ Ð  Ô!7Ñ8Ô8Ø Ð  Ô!8Ñ9Ô9Ø Ð  Ô!7Ñ8Ô8Ø Ð  Ô!7Ñ8Ô8Ø Ð  Ô!;Ñ<Ô<Ø Ð  Ô!;Ñ<Ô<Ø Ð  Ô!:Ñ;Ô;ð
ñ
ô 
ð*'ð *'ñ
ô 
ñ 7Ô6ñ :Ô9ñ 4Ô3ñNô NñMô Mñ %Ô$ð&*'ðX Ð�wÔ+Ñ,Ô,ð	Að 	Añ -Ô,ð	Að Ð�kÐ*MÐNÑNÔNØÐ�lÐ+NÐOÑOÔOØÐ�vÐ&PÐQÑQÔQØÐ�wÔ+Ñ,Ô,ð
ð 
ñ -Ô,ñ RÔQñ PÔOñ OÔNð
ð Ð�wÔ+Ñ,Ô,ð
ð 
ñ -Ô,ð
ð Ð�wÔ+Ñ,Ô,ð
ð 
ñ -Ô,ð
ð Ð�wÔ,Ñ-Ô-ð

ð 

ñ .Ô-ð

ð Ð�wÔ,Ñ-Ô-ð
ð 
ñ .Ô-ð
ð Ð�wÔ,Ñ-Ô-ð
ð 
ñ .Ô-ð
ð Ð�wÔ+Ñ,Ô,ð4ð 4ñ -Ô,ð4ð Ð�wÔ+Ñ,Ô,ð4ð 4ñ -Ô,ð4ð Ð�wÔ+Ñ,Ô,ð4ð 4ñ -Ô,ð4ð Ð�wÔ+Ñ,Ô,ð4ð 4ñ -Ô,ð4ð Ð˜dÐ+NÐOÑOÔOØÐ�wÔ,¨gÔ.BØÔ5ñ7ô 7ð4ð 4ñ7ô 7ñ PÔOð4ð  Ð�wÔ,¨gÔ.BØÔ5ñ7ô 7ð4ð 4ñ7ô 7ð4ð Ð˜dÐ+NÐOÑOÔOØÐ�wÔ,¨gÔ.BØÔ4ñ6ô 6ð4ð 4ñ6ô 6ñ PÔOð4ð  Ð�wÔ,¨gÔ.BØÔ4ñ6ô 6ð4ð 4ñ6ô 6ð4ð Ð�kÐ*MÐNÑNÔNØÐ�lÐ+NÐOÑOÔOØÐ�wÔ+¨WÔ-AÑBÔBð4ð 4ñ CÔBñ PÔOñ OÔNð4ð Ð�wÔ+¨WÔ-AÑBÔBð4ð 4ñ CÔBð4ð Ð�v kÐ2Ñ2Ô2ØÐ�wÔ+Ñ,Ô,ð*ð *ñ -Ô,ñ 3Ô2ð*ð0 Ð�kÐ*MÐNÑNÔNØÐ�lÐ+NÐOÑOÔOØÐ�wÔ+Ñ,Ô,ð	Hð 	Hñ -Ô,ñ PÔOñ OÔNð	Hð Ð�kÐ*MÐNÑNÔNØÐ�lÐ+NÐOÑOÔOØÐ�wÔ+¨WÔ-AÑBÔBð4ð 4ñ CÔBñ PÔOñ OÔNð4ð Ð�wÔ+¨WÔ-AÑBÔBð4ð 4ñ CÔBð4ð Ð�vÐ&6Ð7Ñ7Ô7ØÐ�wÔ+Ñ,Ô,ð*ð *ñ -Ô,ñ 8Ô7ð*ð0 Ð�kÐ*MÐNÑNÔNØÐ�lÐ+NÐOÑOÔOØÐ�wÔ+Ñ,Ô,ðHð Hñ -Ô,ñ PÔOñ OÔNðHð Ð˜tÐ$Ñ$Ô$ØÐØÐKðMñ Mô MàÐØÐLðNñ Nô Nà„[×Ò˜X¨°Ð'8Ñ9Ô9Ø„[×Ò˜]¨I¨I¨IÑ6Ô6Ø„[×Ò˜Vð &8ð &8ð &8ñ 9ô 9à„[×ÒÐ-ð 0=ð 0=ð 0=ñ >ô >à„[×ÒØà Ð  Ô!5Ñ6Ô6Ø Ð  Ô!6Ñ7Ô7Ø Ð  Ô!5Ñ6Ô6Ø Ð  Ô!5Ñ6Ô6Ø Ð  Ô!>Ñ?Ô?Ø Ð  Ô!?Ñ@Ô@Ø Ð  Ô!5Ñ6Ô6Ø Ð  Ô!5Ñ6Ô6ð		
ñô ð"'ð "'ñô ñ>ô >ñ9ô 9ñ 7Ô6ñ :Ô9ñNô NñMô Mñ %Ô$ð0"'ðH Ð˜d°¨xØ@ðBñ Bô BàÐ�wÔ1Ñ2Ô2Ø„[×Ò˜W eÑ,Ô,ð1ð 1ñ -Ô,ñ 3Ô2ñBô Bð1ð6 Ð�wÔ1Ñ2Ô2Ø„[×Ò˜W eÑ,Ô,ð1ð 1ñ -Ô,ñ 3Ô2ð1ð$ Ð�wÔ1Ñ2Ô2Ø„[×Ò˜W eÑ,Ô,ð1ð 1ñ -Ô,ñ 3Ô2ð1ð 1ð 1r:   r   c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )ÚTestDilateFixc                 óz  — |                      g d¢g d¢g d¢g d¢g d¢g|j        ¬¦  «        | _        |                     d¦  «        | _        t          j        | j        | j        ¬¦  «        }t          |¦  «        r!|                     |j        ¦  «        | _	        d S | 
                    ||j        ¦  «        | _	        d S )Nrà   r¼  r½  r   r   rX  )r/   Úuint8r  r‚   Úsq3x3r   rk  r   ÚviewÚ
dilated3x3r‹   )r2   r3   r�  s      r8   Ú_setupzTestDilateFix._setup‚  sº   € à—Z’Z   Ø!0  Ø!0  Ø!0  Ø!0  ð	!2ð :<¼ð	  ñ Cô CˆŒ
ð —W’W˜V‘_”_ˆŒ
ÝÔ,¨T¬ZÀ4Ä:ÐNÑNÔNˆ
å�B‰<Œ<ð 	>Ø(Ÿošo¨b¬hÑ7Ô7ˆDŒOˆOˆOà Ÿiši¨
°B´HÑ=Ô=ˆDŒOˆOˆOr:   c                 ó    — |                       |¦  «         t          j        | j        | j        ¬¦  «        }t          || j        dz   ¦  «         d S )NrX  r   )r�  r   r*  r  r�  r   r�  ©r2   r3   Úresults      r8   Útest_dilation_square_structurez,TestDilateFix.test_dilation_square_structure“  sG   € Ø�Š�B‰ŒˆÝÔ& t¤z¸T¼ZÐHÑHÔHˆå! &¨$¬/¸AÑ*=Ñ>Ô>Ð>Ð>Ð>r:   c                 ó�   — |                       |¦  «         t          j        | j        d¬¦  «        }t	          || j        ¦  «         d S )Nr    )rr  )r�  r   r*  r  r   r�  r’  s      r8   Útest_dilation_scalar_sizez'TestDilateFix.test_dilation_scalar_size™  s@   € Ø�Š�B‰ŒˆÝÔ& t¤z¸Ð:Ñ:Ô:ˆÝ! &¨$¬/Ñ:Ô:Ð:Ð:Ð:r:   N)r  r‚  rƒ  r�  r”  r–  rˆ  r:   r8   rŠ  rŠ  }  sA   € € € € € ð
>ð >ð >ð"?ð ?ð ?ð;ð ;ð ;ð ;ð ;r:   rŠ  c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )ÚTestBinaryOpeningClosingc                 ó`  — t          j        dt          ¬¦  «        }d|dd…dd…f<   d|d<   |                     |¦  «        | _        |                     d¦  «        | _        t          j        | j        | j        dd d¦  «        | _	        t          j
        | j        | j        dd d¦  «        | _        d S )	N©r$   r$   r   Tr   r   )r   r   r   r   )rU   rQ   r¸   r/   r  r‚   r�  r   rá  Ú
opened_oldrê  Ú
closed_old)r2   r3   r[  s      r8   r�  zTestBinaryOpeningClosing._setup¢  s    € ÝŒH�V¥4Ð(Ñ(Ô(ˆØˆˆ!ˆAˆ#ˆq�ˆsˆ(‰Øˆˆ$‰Ø—Z’Z ‘]”]ˆŒ
Ø—W’W˜V‘_”_ˆŒ
Ý!Ô0°´¸T¼ZØ12°D¸!ñ=ô =ˆŒå!Ô0°´¸T¼ZØ12°D¸!ñ=ô =ˆŒˆˆr:   c           
      ó¤   — |                       |¦  «         t          j        | j        | j        dd dd dd¦  «        }t          || j        ¦  «         d S ©Nr   r   F)r�  r   rá  r  r�  r   r›  )r2   r3   Ú
opened_news      r8   Útest_opening_new_argumentsz3TestBinaryOpeningClosing.test_opening_new_arguments­  óP   € Ø�Š�B‰ŒˆÝÔ+¨D¬J¸¼
ÀAÀtØ,-¨t°Q¸ñ?ô ?ˆ
å˜
 D¤OÑ4Ô4Ð4Ð4Ð4r:   c           
      ó¤   — |                       |¦  «         t          j        | j        | j        dd dd dd¦  «        }t          || j        ¦  «         d S rž  )r�  r   rê  r  r�  r   rœ  )r2   r3   Ú
closed_news      r8   Útest_closing_new_argumentsz3TestBinaryOpeningClosing.test_closing_new_arguments³  r¡  r:   N)r  r‚  rƒ  r�  r   r¤  rˆ  r:   r8   r˜  r˜  Ÿ  sA   € € € € € ð	=ð 	=ð 	=ð5ð 5ð 5ð5ð 5ð 5ð 5ð 5r:   r˜  c                 óº   — |                       dg¦  «        }t          t          t          j        |d¬¦  «         t          t          t          j        |d¬¦  «         d S ©Nr   g      à?r_  ç      ø?)r‚   rj   r`  r   rÃ   ©r3   r4   s     r8   Ú)test_binary_erosion_noninteger_iterationsr©  º  óO   € ð �7Š7�A�3‰<Œ<€DÝ•)�WÔ3°TÀcÐJÑJÔJÐJÝ•)�WÔ3°TÀcÐJÑJÔJÐJÐJÐJr:   c                 óº   — |                       dg¦  «        }t          t          t          j        |d¬¦  «         t          t          t          j        |d¬¦  «         d S r¦  )r‚   rj   r`  r   rk  r¨  s     r8   Ú*test_binary_dilation_noninteger_iterationsr¬  Ã  sO   € ð �7Š7�A�3‰<Œ<€DÝ•)�WÔ4°dÀsÐKÑKÔKÐKÝ•)�WÔ4°dÀsÐKÑKÔKÐKÐKÐKr:   c                 óº   — |                       dg¦  «        }t          t          t          j        |d¬¦  «         t          t          t          j        |d¬¦  «         d S r¦  )r‚   rj   r`  r   rá  r¨  s     r8   Ú)test_binary_opening_noninteger_iterationsr®  Ì  rª  r:   c                 óº   — |                       dg¦  «        }t          t          t          j        |d¬¦  «         t          t          t          j        |d¬¦  «         d S r¦  )r‚   rj   r`  r   rê  r¨  s     r8   Ú)test_binary_closing_noninteger_iterationsr°  Õ  rª  r:   r^   r$  r_   c           
      óN  — |                       dg¦  «        }t          t          j        |dd¬¦  «        t          j        |dt	          d¦  «        ¬¦  «        ¦  «         t          t          j        |dd¬¦  «        t          j        |dt	          d¦  «        ¬¦  «        ¦  «         d S )Nr   r   r§  )r,  rY  rž   )r‚   r   r   rÃ   r¸   r¨  s     r8   Ú;test_binary_closing_noninteger_brute_force_passes_when_truer²  Þ  s¥   € ð �7Š7�A�3‰<Œ<€DÝ•GÔ*¨4¸AÈ3ÐOÑOÔOÝÔ*¨4¸AÍ4ÐPSÉ9Ì9ÐUÑUÔUñô ð õ •GÔ*¨4¸AÈ3ÐOÑOÔOÝÔ*¨4¸AÍ4ÐPSÉ9Ì9ÐUÑUÔUñô ð ð ð r:   Trv  r0  r2  rû  r,  r$   rY  Fc                 óp  — t           j                             d¦  «        }|                     ddd¬¦  «                             t
          ¦  «        }|                     |¦  «        }|                     ¦   «         } | |||¬¦  «        }t          ||¦  «          | ||||¬¦  «         t          ||¦  «         d S )Né{   r   r   éd   ©ÚlowÚhighrr  )rY  r,  )rY  r,  r5  )	rU   ÚrandomÚRandomStateÚrandintr‹   r¸   r/   Úcopyr   )rû  r,  rY  r3   Úrstater4   Ú	data_origr7   s           r8   Útest_binary_input_as_outputr¿  í  sµ   € õ ŒY×"Ò" 3Ñ'Ô'€FØ�>Š>˜a a¨cˆ>Ñ2Ô2×9Ò9½$Ñ?Ô?€DØ�:Š:�dÑÔ€Dð —	’	‘”€IØˆt�D k¸jÐIÑIÔI€HÝ�D˜)Ñ$Ô$Ð$ð 	€Dˆ˜;°:ÀdÐKÑKÔKÐKÝ�D˜(Ñ#Ô#Ð#Ð#Ð#r:   c                 óŠ  — t           j                             d¦  «        }|                     ddd¬¦  «                             t
          ¦  «        }|                      |¦  «        }|                     ¦   «         }t          j	        |¦  «        }t          ||¦  «         t          j	        ||¬¦  «         t          ||¦  «         d S )Nr´  r   r   rµ  r¶  rx  )rU   r¹  rº  r»  r‹   r¸   r/   r¼  r   rý  r   )r3   r½  r4   r¾  r7   s        r8   Ú'test_binary_hit_or_miss_input_as_outputrÁ  
  s¬   € õ ŒY×"Ò" 3Ñ'Ô'€FØ�>Š>˜a a¨cˆ>Ñ2Ô2×9Ò9½$Ñ?Ô?€DØ�:Š:�dÑÔ€Dð —	’	‘”€IÝÔ)¨$Ñ/Ô/€HÝ�D˜)Ñ$Ô$Ð$õ Ô˜t¨DÐ1Ñ1Ô1Ð1Ý�D˜(Ñ#Ô#Ð#Ð#Ð#r:   c                 óÄ   — d}t          j        t          |¬¦  «        5  t          j        |                      d¦  «        d¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nzinvalid metric provided)Úmatchrš  Úgarbager€   )r  r
   Ú
ValueErrorr   rq   r‚   )r3   Úmsgs     r8   Ú*test_distance_transform_cdt_invalid_metricrÇ    s©   € à
#€CÝ	Œ•z¨Ð	-Ñ	-Ô	-ð 9ð 9ÝÔ& r§w¢w¨v¡¤Ø.7ð	9ñ 	9ô 	9ð 	9ð9ð 9ð 9ñ 9ô 9ð 9ð 9ð 9ð 9ð 9ð 9ð 9øøøð 9ð 9ð 9ð 9ð 9ð 9s   ž*AÁAÁA)'ÚnumpyrU   Úscipy._lib._array_apir   r   r   r   r   r   r	   r  r
   rj   Úscipyr   Ú r   r„  r†  r‡  r   rk  r*  rŠ  rá  rê  r˜  rÃ   r©  r¬  r®  r°  r²  r…  r¿  rý  rÁ  rq   rÇ  rˆ  r:   r8   ú<module>rÌ     s  ðØ Ð Ð Ð ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð €€€Ø *Ð *Ð *Ð *Ð *Ð *à Ð Ð Ð Ð Ð à Ð Ð Ð Ð Ð à”;Ô/Ð Ø”KÔ1Ð ðg-1ð g-1ð g-1ð g-1ð g-1ñ g-1ô g-1ð g-1ðT[ Ð�7Ô*¨GÔ,AÑBÔBð;ð ;ð ;ð ;ð ;ñ ;ô ;ñ CÔBð;ðB Ð�7Ô)¨7Ô+AÑBÔBð5ð 5ð 5ð 5ð 5ñ 5ô 5ñ CÔBð5ð4 Ð�7Ô)Ñ*Ô*ðKð Kñ +Ô*ðKð Ð�7Ô*Ñ+Ô+ðLð Lñ ,Ô+ðLð Ð�7Ô)Ñ*Ô*ðKð Kñ +Ô*ðKð Ð�7Ô)Ñ*Ô*ðKð Kñ +Ô*ðKð ÐØ
ÐJðñ ô ð Ð�7Ô)Ñ*Ô*ðð ñ +Ô*ñô ðð Ð˜$¨F¨8Ø<ð>ñ >ô >àÐ�6Ð"SÐTÑTÔTØ„×ÒØ
àÐ˜WÔ3Ñ4Ô4ØÐ˜WÔ4Ñ5Ô5ØÐ˜WÔ3Ñ4Ô4ØÐ˜WÔ3Ñ4Ô4ð	ñô ð „×Ò˜¨¨1 vÑ.Ô.Ø„×Ò˜¨°¨Ñ6Ô6ð$ð $ñ 7Ô6ñ /Ô.ñô ñ UÔTñ>ô >ð$ð Ð˜$¨F¨8Ø<ð>ñ >ô >àÐ�7Ô-Ñ.Ô.ð$ð $ñ /Ô.ñ>ô >ð$ð Ð�7Ô1Ñ2Ô2ð9ð 9ñ 3Ô2ð9ð 9ð 9r:   