Having this pull double-shift as a trait and an IEffect seems a bit grotty. Can we do this using the normal IRender mechanism instead?