implemented divise