All you need is one more level of indirection...