tests passing bugs fixed