Lots and lots of metafunctions. Enjoy!
Merge conflict