first whack at compiling 'choice' operator
merge conflict