working!!! but tests broken :(