cast qs to list to prevent extra join