ack i am okay with two levels of encapsulation  encircledimagesource is potentially reusable beyond vectors  and the anonymous function is just avoiding duplication of the locally relevant ugly details 