+-*/ using local functions
rename: evaluate -> eval