Thank you, Richard. That was very informative. I just wanted to put my thought on why you had to use Vector(target.location) in the call to the append function. I think it is because when you append target.location, it is appended as a reference (not vale). So whenever the object location changes, all elements in the list will point to the current location.