improved createList method