add if, else, else if, end if generator function