build iteratively