A friend of mine asked me \"how to use CRTP to replace polymorphism in a multilevel inheritance\". More precisely, in a situation like this:
struct