conditionals and value definitions