add data and code