approach2 added