Hmm, I don't see a good way to do this cleanly without simply requiring mask classes to implement a method to do this.