more efficient set/append