generate table finished