Different function implementations for the same function call