update: changed design pattern to completely remove Resolves variable
and swapped it with the typeid(<subclass>) check