add list generate function