public override bool Equals(RootType other) => Equals(other as SubRootType1);
public override bool Equals(RootType other) => Equals(other as DerivedType1);