improve assemble data