Generate a YGOPro Lua script for the following Yu-Gi-Oh card effect:
This card can be used to Ritual Summon any "Nouvelles" Ritual Monster. You must also Tribute monsters from your hand or field whose total Levels equal or exceed the Level of the Ritual Monster you Ritual Summon. Then, if you Ritual Summoned "Buerillabaisse de Nouvelles", you can apply the following effect. ● Add 1 "Recipe" Ritual Spell from your Deck or GY to your hand, except "Recette de Poisson (Fish Recipe)".
--Ｒｅｃｅｔｔｅ ｄｅ Ｐｏｉｓｓｏｎ～魚料理のレシピ～
--Recette de Poisson (Fish Recipe)
--scripted by Naim
local s,id=GetID()
function s.initial_effect(c)
	--Ritual Summon any "Nouvelles" monster
	local e1=Ritual.AddProcGreater({handler=c,filter=aux.FilterBoolFunction(Card.IsSetCard,SET_NOUVELLES),
		stage2=s.stage2,extratg=s.extratg})
	e1:SetCategory(e1:GetCategory()|CATEGORY_SEARCH|CATEGORY_TOHAND)
end
s.listed_series={SET_RECIPE,SET_NOUVELLES}
s.listed_names={id,26223582} --Buerillabaisse de Nouvelles
function s.thfilter(c)
	return c:IsSetCard(SET_RECIPE) and c:IsRitualSpell() and not c:IsCode(id) and c:IsAbleToHand()
end
function s.stage2(mat,e,tp,eg,ep,ev,re,r,rp,tc)
	if not tc:IsCode(26223582) then return end
	local g=Duel.GetMatchingGroup(aux.NecroValleyFilter(s.thfilter),tp,LOCATION_GRAVE|LOCATION_DECK,0,nil)
	if #g>0 and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
		Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
		local sg=g:Select(tp,1,1,nil)
		Duel.BreakEffect()
		Duel.SendtoHand(sg,nil,REASON_EFFECT)
		Duel.ConfirmCards(1-tp,sg)
	end
end
function s.extratg(e,tp,eg,ep,ev,re,r,rp,chk)
	if chk==0 then return true end
	Duel.SetPossibleOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_GRAVE|LOCATION_DECK)
end