add more unimplemented functions