first data

finish it first time