same. if these are not implemented they should raise `NotImplementedError`