adding numeric functions