fix bugs, all done.