improved populateList(). fixed singleton destroy order