Okay I got the hunch that this behavior is used e.g. down where the color is created, however that seems tricky to me. In that case I'd be more for creating it and saving it in a variable, then calling mark_to_dispose with that variable and then return that variable... I dunno maybe that pattern happens to often but relying on the fact that a mark_to_dispose method returns the element seems, weird