Improve exchange to return a sequence not a list