code: public static Class<? extends Schema> schemaClass(int version, String type) {
      if (version < 1) return null;
      Class<? extends Schema> clz = iced_to_schema.get(new Pair<>(type, version));
  
      if (clz != null) return clz; // found!
  
      clz = schemaClass(version==EXPERIMENTAL_VERSION? HIGHEST_SUPPORTED_VERSION : version-1, type);
      if (clz != null) iced_to_schema.put(new Pair<>(type, version), clz); // found a lower-numbered schema: cache
      return clz;
    }
docs: For a given version and type (Iced class simpleName) return the appropriate Schema
  class, if any.
  <p>
  If a higher version is asked for than is available (e.g., if the highest version of
  Frame is FrameV2 and the client asks for the schema for (Frame, 17) then FrameV2 will
  be returned.  This compatibility lookup is cached.
  @deprecated