return -1 if getlist fails