implemented functionOperation