gets tests passing. this took took long and i am a sad