Using yield and provide