please don't look too closely at my bad vectoring