fixed conds conflicts
add new recursive elseif tests