added respond_to block