training returns finish iteration