updated the approach