completed whole flow