require implementation for tipm(1)