implemented
add test for another implementation