get rid of some unimplemented. add some other