private static boolean kmTypeProjectionEquals(KmTypeProjection p1, KmTypeProjection p2) {
    if (p1 == null) {
      return p2 == null;
    }
    return p2 != null && Objects.equals(p1.getVariance(), p2.getVariance()) && kmTypesEqual(p1.getType(), p2.getType());
  }
private static boolean kmTypeProjectionEquals(KmTypeProjection p1, KmTypeProjection p2)