provide and yield