/Y /setcmykcolor where { %%ifelse Use built-in operator /setcmykcolor get }{ %%ifelse Emulate setcmykcolor with setrgbcolor { %%def 1 sub 3 { %%repeat 3 index add neg dup 0 lt { pop 0 } if 3 1 roll } repeat setrgbcolor } bind
/stringbbox {gsave NP 0 0 m false charpath flattenpath pathbbox 4 2 roll pop pop 1.1 mul cvi exch 1.1 mul cvi exch grestore} def --- Predefined untyped Y combinator appears to delete things until there is nothing left to delete. Not sure.