Type {1} cannot be a base class for {0} because the two are not the same kind of class. The base class and the derived class ...