@Nullable
  private static ProjectDependencies read(final IonReader reader, final ReadContext context) {
    if (reader.next() == null) return null;
    reader.stepIn();

    ProjectDependencies model =
      context.objectMap.computeIfAbsent(readInt(reader, OBJECT_ID_FIELD), new IntObjectMap.SimpleObjectFactory<ProjectDependenciesImpl>() {

        @Override
        public ProjectDependenciesImpl create() {
          ProjectDependenciesImpl dependencies = new ProjectDependenciesImpl();
          List<ComponentDependencies> componentsDependencies = readComponentsDependencies(reader, context);
          for (ComponentDependencies componentDependencies : componentsDependencies) {
            dependencies.add(componentDependencies);
          }
          return dependencies;
        }
      });
    reader.stepOut();
    return model;
  }
@Nullable
  private static ProjectDependencies read(final IonReader reader, final ReadContext context)