it compiles

But looks hacky, and I bet there are better idioms to use. In
particular, it should not use any of the internal "__" type of funcs.