using functions as variables