First draft completed answer