allow any callable as overload implementation