actually implement the correct method signature