The branching logic here is a bit confusing. So if we're past the end of water use data, we're going to append the next value to the row, otherwise, we set the variable that we were just checking for branching to true and are we going to go through another loop here? You may want to document this if/else a bit to clear up confusion. Also, watch your tabbing (line 163-164)