support if-then-else (issue #104)