That's pretty much what I had before. But it was removed because the C++ => D conversion couldn't deal with it.