conditionals reference
functions