finish iteration2