fixed bug in _if; recursion works