corrected vector addition for push, etc