return c:IsCanBeLinkMaterial(tc) and c:IsAttribute(ATTRIBUTE_WIND) and c:IsRace(RACE_SPELLCASTER) and Duel.GetLocationCountFromEx(tp,tp,c,tc)>0
end
function cm.lhfilter(c,tp,tc)
return c:IsCanBeLinkMaterial(tc) and c:IsAttribute(ATTRIBUTE_WIND)
end
function cm.lspcon(e,c)
if c==nil then return true end
local tp=c:GetControler()
return Duel.IsExistingMatchingCard(cm.lffilter,tp,LOCATION_MZONE,0,1,nil,tp,c) and Duel.IsExistingMatchingCard(cm.lhfilter,tp,LOCATION_HAND,0,1,nil,tp,c)
end
function cm.lspop(e,tp,eg,ep,ev,re,r,rp,c)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_LMATERIAL)
local g=Duel.SelectMatchingCard(tp,cm.lffilter,tp,LOCATION_MZONE,0,1,1,nil,tp,c)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_LMATERIAL)
local g2=Duel.SelectMatchingCard(tp,cm.lhfilter,tp,LOCATION_HAND,0,1,1,nil,tp,c)