little optimize for addData method