@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);
        }
    }
@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);
        }
    }
@ 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 ) ; } }
************************************************************************
************************************************************************