finish the code, but bugs