overload respond_to?