better List() method