--if rp==tp then return Duel.IsExistingMatchingCard(Card.IsSSetable,tp,LOCATION_HAND,0,1,nil) and Duel.IsPlayerCanDraw(tp,2) and Duel.GetLocationCount(tp,LOCATION_SZONE)>1
--else return Duel.IsExistingMatchingCard(nil,tp,0,LOCATION_HAND,2,nil) and Duel.IsPlayerCanDraw(1-tp,2) and Duel.GetLocationCount(1-tp,LOCATION_SZONE)>1 end
if ph>PHASE_MAIN1 and ph<PHASE_MAIN2 then ph=PHASE_BATTLE end
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_DISABLE)
e2:SetTargetRange(0,LOCATION_ONFIELD)
e2:SetTarget(cm.disable)
e2:SetReset(RESET_PHASE+ph)
Duel.RegisterEffect(e2,tp)--]]
end
functioncm.disfilter(c)
returnc:GetCounter(0x1972)>0andaux.NegateAnyFilter(c)--(not c:IsType(TYPE_MONSTER) or (c:IsType(TYPE_EFFECT) or bit.band(c:GetOriginalType(),TYPE_EFFECT)==TYPE_EFFECT))