protocol for printing descriptors that actually works