I guess exception handling is supposed to check __subclasscheck__