working on area function