code: @Override
      public void resetWorkingSolution(InvestmentSolution solution) {
          this.solution = solution;
          squaredStandardDeviationFemtosMaximum = solution.getParametrization()
                  .calculateSquaredStandardDeviationFemtosMaximum();
          squaredStandardDeviationFemtos = 0L;
          List<Region> regionList = solution.getRegionList();
          regionQuantityTotalMap = new HashMap<>();
          for (Region region : regionList) {
              regionQuantityTotalMap.put(region, 0L);
          }
          List<Sector> sectorList = solution.getSectorList();
          sectorQuantityTotalMap = new HashMap<>(sectorList.size());
          for (Sector sector : sectorList) {
              sectorQuantityTotalMap.put(sector, 0L);
          }
          hardScore = 0L;
          softScore = 0L;
          for (AssetClassAllocation allocation : solution.getAssetClassAllocationList()) {
              insertQuantityMillis(allocation, true);
          }
      }
docs: ************************************************************************