def METHOD_NAME(m, m2):
    # check if two morphs are identical
    # soma
    assert isinstance(m2.soma, type(m.soma))
    assert m.soma.radius == m2.soma.radius
    for v1, v2 in zip(m.soma.iter(), m2.soma.iter()):
        assert np.allclose(v1, v2)
    # neurites
    for v1, v2 in zip(iter_segments(m), iter_segments(m2)):
        (v1_start, v1_end), (v2_start, v2_end) = v1, v2
        assert np.allclose(v1_start, v2_start)
        assert np.allclose(v1_end, v2_end)
    # check if the ids are different
    # somata
    assert m.soma is not m2.soma
    # neurites
    for neu1, neu2 in zip(m.neurites, m2.neurites):
        assert neu1 is not neu2
    # check if changes are propagated between morphs
    m2.soma.radius = 10.
    assert m.soma.radius != m2.soma.radius