now throwing not implemented exceptions instead of trivial function