fix else after tail call