updating to functional recipe