add list struct