docs: public String getComponentRamDistribution() {
      // Generate a map with the minimal RAM size for each component
      Map<String, ByteAmount> ramMap = new HashMap<>();
      for (ContainerPlan containerPlan : this.getContainers()) {
        for (InstancePlan instancePlan : containerPlan.getInstances()) {
          ByteAmount newRam = instancePlan.getResource().getRam();
          ByteAmount currentRam = ramMap.get(instancePlan.getComponentName());
          if (currentRam == null || currentRam.asBytes() > newRam.asBytes()) {
            ramMap.put(instancePlan.getComponentName(), newRam);
          }
        }
      }
  
      // Convert it into a formatted String
      StringBuilder ramMapBuilder = new StringBuilder();
      for (String component : ramMap.keySet()) {
        ramMapBuilder.append(String.format("%s:%d,", component, ramMap.get(component).asBytes()));
      }
  
      // Remove the duplicated "," at the end
      ramMapBuilder.deleteCharAt(ramMapBuilder.length() - 1);
      return ramMapBuilder.toString();
    }