diff --git a/extreme_data/meteo_france_data/adamont_data/abstract_adamont_study.py b/extreme_data/meteo_france_data/adamont_data/abstract_adamont_study.py
new file mode 100644
index 0000000000000000000000000000000000000000..b03510e8253c65d55d9a985bdc7153132a139857
--- /dev/null
+++ b/extreme_data/meteo_france_data/adamont_data/abstract_adamont_study.py
@@ -0,0 +1,114 @@
+import os
+import os.path as op
+from collections import OrderedDict
+from datetime import datetime, timedelta
+from enum import Enum
+from typing import List
+
+import numpy as np
+from netCDF4._netCDF4 import Dataset
+
+from extreme_data.meteo_france_data.adamont_data.adamont.adamont_variables import AbstractAdamontVariable
+from extreme_data.meteo_france_data.adamont_data.adamont_scenario import scenario_to_str, AdamontScenario, \
+    get_year_min_and_year_max_from_scenario, gcm_rcm_couple_to_full_name, get_suffix_for_the_nc_file
+from extreme_data.meteo_france_data.adamont_data.utils.utils import massif_number_to_massif_name
+
+ADAMONT_PATH = r"/home/erwan/Documents/projects/spatiotemporalextremes/local/spatio_temporal_datasets/ADAMONT"
+
+from cached_property import cached_property
+
+from extreme_data.meteo_france_data.scm_models_data.abstract_study import AbstractStudy
+from extreme_data.meteo_france_data.scm_models_data.utils import Season, FrenchRegion, french_region_to_str
+
+
+class AbstractAdamontStudy(AbstractStudy):
+    YEAR_MIN = 1950
+    YEAR_MAX = 2100
+
+    def __init__(self, variable_class: type, altitude: int = 1800,
+                 year_min=None, year_max=None,
+                 multiprocessing=True, season=Season.annual,
+                 french_region=FrenchRegion.alps,
+                 scenario=AdamontScenario.histo, gcm_rcm_couple=('CNRM-CM5', 'ALADIN53')):
+        # Load the default year_min & year_max for the scenario if not specified
+        if year_min is None and year_max is None:
+            year_min, year_max = get_year_min_and_year_max_from_scenario(scenario, gcm_rcm_couple)
+        super().__init__(variable_class=variable_class, altitude=altitude, year_min=year_min, year_max=year_max,
+                         multiprocessing=multiprocessing, season=season, french_region=french_region)
+        self.gcm_rcm_couple = gcm_rcm_couple
+        self.gcm_rcm_full_name = gcm_rcm_couple_to_full_name[gcm_rcm_couple]
+        self.scenario = scenario
+        assert issubclass(self.variable_class, AbstractAdamontVariable)
+        # Assert the massif_name are in the same order
+        for i, massif_name in enumerate(self.all_massif_names()):
+            assert massif_name == massif_number_to_massif_name[i + 1]
+
+    # Loading part
+
+    @cached_property
+    def ordered_years(self):
+        return list(range(self.year_min, self.year_max + 1))
+
+    @cached_property
+    def winter_year_for_each_time_step(self):
+        start = datetime(year=self.year_min - 1, month=8, day=1, hour=6, minute=0, second=0)
+        hours_after_start = np.array(self.dataset.variables['TIME'])
+        dates = [start + timedelta(hours=h) for h in hours_after_start]
+        winter_year = [date.year if date.month < 8 else date.year + 1 for date in dates]
+        winter_year[-1] = winter_year[-2]
+        return np.array(winter_year)
+
+    @cached_property
+    def year_to_variable_object(self) -> OrderedDict:
+        year_to_data_list = {}
+        for year in self.ordered_years:
+            year_to_data_list[year] = []
+        data_list = self.dataset.variables[self.variable_class.keyword()]
+        data_year_list = self.winter_year_for_each_time_step
+        assert len(data_list) == len(data_year_list)
+        for year_data, data in zip(data_year_list, data_list):
+            year_to_data_list[year_data].append(data)
+        year_to_variable_object = OrderedDict()
+        for year in self.ordered_years:
+            variable_array = np.array(year_to_data_list[year])
+            year_to_variable_object[year] = self.variable_class(variable_array)
+        return year_to_variable_object
+
+    @cached_property
+    def flat_mask(self):
+        zs_list = [int(e) for e in np.array(self.dataset.variables['ZS'])]
+        return np.array(zs_list) == self.altitude
+
+    @cached_property
+    def study_massif_names(self) -> List[str]:
+        massif_ids = np.array(self.dataset.variables['MASSIF_NUMBER'])[self.flat_mask]
+        return [massif_number_to_massif_name[massif_id] for massif_id in massif_ids]
+
+    @cached_property
+    def dataset(self):
+        return Dataset(self.nc_file_path)
+
+    # PATHS
+
+    @property
+    def variable_name(self):
+        return self.variable_class.variable_name_for_folder_and_nc_file()
+
+    @property
+    def scenario_name(self):
+        return scenario_to_str(self.scenario)
+
+    @property
+    def region_name(self):
+        return french_region_to_str(self.french_region)
+
+    @property
+    def nc_files_path(self):
+        return op.join(ADAMONT_PATH, self.variable_name, self.scenario_name)
+
+    @property
+    def nc_file_path(self):
+        suffix_nc_file = get_suffix_for_the_nc_file(self.scenario, self.gcm_rcm_couple)
+        nc_file = '{}_FORCING_{}_{}_{}_{}.nc'.format(self.variable_name, self.gcm_rcm_full_name, self.scenario_name,
+                                                     self.region_name, suffix_nc_file)
+        return op.join(self.nc_files_path, nc_file)
diff --git a/extreme_data/meteo_france_data/adamont_data/abstract_simulation_study.py b/extreme_data/meteo_france_data/adamont_data/abstract_simulation_study.py
deleted file mode 100644
index b852d342ce54b08feb35999574db854b3876d177..0000000000000000000000000000000000000000
--- a/extreme_data/meteo_france_data/adamont_data/abstract_simulation_study.py
+++ /dev/null
@@ -1,125 +0,0 @@
-import os.path as op
-import os
-from collections import OrderedDict
-from datetime import datetime, timedelta
-from typing import List
-
-import numpy as np
-from netCDF4._netCDF4 import Dataset
-
-from extreme_data.meteo_france_data.scm_models_data.abstract_variable import AbstractVariable
-from extreme_data.meteo_france_data.scm_models_data.crocus.crocus_variables import CrocusTotalSweVariable
-from root_utils import classproperty
-
-ADAMONT_PATH = r"/home/erwan/Documents/projects/spatiotemporalextremes/local/spatio_temporal_datasets/ADAMONT"
-
-from cached_property import cached_property
-
-from extreme_data.meteo_france_data.scm_models_data.abstract_study import AbstractStudy, YEAR_MIN, YEAR_MAX
-from extreme_data.meteo_france_data.scm_models_data.safran.safran_variable import SafranSnowfallVariable
-from extreme_data.meteo_france_data.scm_models_data.utils import Season, FrenchRegion
-
-
-class SimulationStudy(AbstractStudy):
-    scenarios = ['HISTO', 'RCP26', 'RCP45', 'RCP85']
-
-    def __init__(self, variable_class: type, altitude: int = 1800, year_min=YEAR_MIN, year_max=YEAR_MAX,
-                 multiprocessing=True, orientation=None, slope=20.0, season=Season.annual,
-                 french_region=FrenchRegion.alps, split_years=None,
-                 scenario="HISTO", ensemble_idx=0):
-        super().__init__(variable_class, altitude, year_min, year_max, multiprocessing, orientation, slope, season,
-                         french_region, split_years)
-        if scenario == 'HISTO':
-            self.year_min, self.year_max = 1950, 2004
-        else:
-            self.year_min, self.year_max = 2006, 2100
-        assert scenario in self.scenarios
-        assert 0 <= ensemble_idx <= 13
-        self.scenario = scenario
-        self.ensemble_idx = ensemble_idx
-        # Assert the massif_name are in the same order
-        for i, massif_name in enumerate(self.all_massif_names()):
-            assert massif_name == self.massif_number_to_massif_name[i + 1]
-
-    @property
-    def simulations_path(self):
-        return op.join(ADAMONT_PATH, self.variable_class.keyword(), self.scenario)
-
-    @property
-    def nc_path(self):
-        nc_file = os.listdir(self.simulations_path)[self.ensemble_idx]
-        print(" ", nc_file)
-        return op.join(self.simulations_path, nc_file)
-
-    @property
-    def massif_number_to_massif_name(self):
-        # from adamont_data metadata
-        s = """1	Chablais
-        2	Aravis
-        3	Mont-Blanc
-        4	Bauges
-        5	Beaufortain
-        6	Haute-Tarentaise
-        7	Chartreuse
-        8	Belledonne
-        9	Maurienne
-        10	Vanoise
-        11	Haute-Maurienne
-        12	Grandes-Rousses
-        13	Thabor
-        14	Vercors
-        15	Oisans
-        16	Pelvoux
-        17	Queyras
-        18	Devoluy
-        19	Champsaur
-        20	Parpaillon
-        21	Ubaye
-        22	Haut_Var-Haut_Verdon
-        23	Mercantour"""
-        l = s.split('\n')
-        return {int(k): m for k, m in dict([e.split() for e in l]).items()}
-
-    @property
-    def dataset(self):
-        return Dataset(self.nc_path)
-
-    @cached_property
-    def ordered_years(self):
-        return sorted(list(set(self.winter_year_for_each_time_step)))
-
-    @cached_property
-    def winter_year_for_each_time_step(self):
-        start = datetime(year=2005, month=8, day=1, hour=6, minute=0, second=0)
-        hours_after_start = np.array(self.dataset.variables['TIME'])
-        dates = [start + timedelta(hours=h) for h in hours_after_start]
-        winter_year = [date.year if date.month < 8 else date.year + 1 for date in dates]
-        winter_year[-1] = winter_year[-2]
-        return np.array(winter_year)
-
-    @cached_property
-    def year_to_variable_object(self) -> OrderedDict:
-        year_to_data_list = {}
-        for year in self.ordered_years:
-            year_to_data_list[year] = []
-        data_list = self.dataset.variables[self.variable_class.keyword()]
-        data_year_list = self.winter_year_for_each_time_step
-        assert len(data_list) == len(data_year_list)
-        for year_data, data in zip(data_year_list, data_list):
-            year_to_data_list[year_data].append(data)
-        year_to_variable_object = OrderedDict()
-        for year in self.ordered_years:
-            variable_array = np.array(year_to_data_list[year])
-            year_to_variable_object[year] = self.variable_class(variable_array)
-        return year_to_variable_object
-
-    @cached_property
-    def flat_mask(self):
-        zs_list = [int(e) for e in np.array(self.dataset.variables['ZS'])]
-        return np.array(zs_list) == self.altitude
-
-    @cached_property
-    def study_massif_names(self) -> List[str]:
-        massif_ids = np.array(self.dataset.variables['MASSIF_NUMBER'])[self.flat_mask]
-        return [self.massif_number_to_massif_name[massif_id] for massif_id in massif_ids]
-
diff --git a/extreme_data/meteo_france_data/adamont_data/adamont/__init__.py b/extreme_data/meteo_france_data/adamont_data/adamont/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/extreme_data/meteo_france_data/adamont_data/adamont/adamont_snowfall.py b/extreme_data/meteo_france_data/adamont_data/adamont/adamont_snowfall.py
new file mode 100644
index 0000000000000000000000000000000000000000..e1ffa1dc927ee2f8ea69850ec7a2fc179f959d7c
--- /dev/null
+++ b/extreme_data/meteo_france_data/adamont_data/adamont/adamont_snowfall.py
@@ -0,0 +1,26 @@
+import numpy as np
+
+from extreme_data.meteo_france_data.adamont_data.abstract_adamont_study import AbstractAdamontStudy
+from extreme_data.meteo_france_data.adamont_data.adamont_scenario import AdamontScenario
+from extreme_data.meteo_france_data.adamont_data.adamont.adamont_variables import \
+    SafranSnowfallSimulationVariable
+from extreme_data.meteo_france_data.scm_models_data.abstract_study import YEAR_MIN, YEAR_MAX
+from extreme_data.meteo_france_data.scm_models_data.abstract_variable import AbstractVariable
+from extreme_data.meteo_france_data.scm_models_data.utils import Season, FrenchRegion
+
+
+class AdamontSnowfall(AbstractAdamontStudy):
+
+    def __init__(self, altitude: int = 1800,
+                 year_min=None, year_max=None,
+                 multiprocessing=True, season=Season.annual,
+                 french_region=FrenchRegion.alps,
+                 scenario=AdamontScenario.histo, gcm_rcm_couple=('CNRM-CM5', 'ALADIN53')):
+        super().__init__(SafranSnowfallSimulationVariable, altitude,
+                         year_min, year_max,
+                         multiprocessing, season, french_region, scenario, gcm_rcm_couple)
+
+
+if __name__ == '__main__':
+    study = AdamontSnowfall(altitude=1800)
+    print(study.year_to_annual_maxima)
diff --git a/extreme_data/meteo_france_data/adamont_data/adamont/adamont_variables.py b/extreme_data/meteo_france_data/adamont_data/adamont/adamont_variables.py
new file mode 100644
index 0000000000000000000000000000000000000000..367089545bde87d5920013f8b494a49351e55dba
--- /dev/null
+++ b/extreme_data/meteo_france_data/adamont_data/adamont/adamont_variables.py
@@ -0,0 +1,26 @@
+import numpy as np
+
+from extreme_data.meteo_france_data.scm_models_data.abstract_variable import AbstractVariable
+
+
+class AbstractAdamontVariable(AbstractVariable):
+
+    @classmethod
+    def variable_name_for_folder_and_nc_file(cls):
+        return cls.keyword()
+
+
+class SafranSnowfallSimulationVariable(AbstractAdamontVariable):
+    UNIT = 'kg $m^{-2}$'
+
+    @property
+    def daily_time_serie_array(self) -> np.ndarray:
+        return self.variable_array
+
+    @classmethod
+    def keyword(cls):
+        return 'SNOW'
+
+    @classmethod
+    def variable_name_for_folder_and_nc_file(cls):
+        return 'Snow'
diff --git a/extreme_data/meteo_france_data/adamont_data/adamont_scenario.py b/extreme_data/meteo_france_data/adamont_data/adamont_scenario.py
new file mode 100644
index 0000000000000000000000000000000000000000..3e20e6b264bd8750470a6748990188bec64a757c
--- /dev/null
+++ b/extreme_data/meteo_france_data/adamont_data/adamont_scenario.py
@@ -0,0 +1,57 @@
+from enum import Enum
+
+
+class AdamontScenario(Enum):
+    histo = 0
+    rcp26 = 1
+    rcp45 = 2
+    rcp85 = 3
+
+
+def get_year_min_and_year_max_from_scenario(adamont_scenario, gcm_rcm_couple):
+    assert isinstance(adamont_scenario, AdamontScenario)
+    if adamont_scenario == AdamontScenario.histo:
+        gcm, rcm = gcm_rcm_couple
+        if gcm == 'HadGEM2-ES':
+            year_min = 1982
+        elif rcm == 'RCA4':
+            year_min = 1971
+        elif gcm_rcm_couple in [('NorESM1-M', 'DMI-HIRHAM5'), ('IPSL-CM5A-MR', 'WRF331F')]:
+            year_min = 1952
+        else:
+            year_min = 1951
+        return year_min, 2005
+    else:
+        return 2006, 2100
+
+
+def get_suffix_for_the_nc_file(adamont_scenario, gcm_rcm_couple):
+    year_min, year_max = get_year_min_and_year_max_from_scenario(adamont_scenario, gcm_rcm_couple)
+    return '{}080106_{}080106_daysum'.format(year_min-1, year_max)
+
+
+def scenario_to_str(adamont_scenario):
+    return str(adamont_scenario).split('.')[-1].upper()
+
+
+gcm_rcm_couple_to_full_name = {
+    ('CNRM-CM5', 'ALADIN53'): 'CNRM-ALADIN53_CNRM-CERFACS-CNRM-CM5',
+    ('CNRM-CM5', 'RCA4'): 'SMHI-RCA4_CNRM-CERFACS-CNRM-CM5',
+    ('CNRM-CM5', 'CCLM4-8-17'): 'CLMcom-CCLM4-8-17_CNRM-CERFACS-CNRM-CM5',
+    ('EC-EARTH', 'CCLM4-8-17'): 'CLMcom-CCLM4-8-17_ICHEC-EC-EARTH',
+    ('MPI-ESM-LR', 'CCLM4-8-17'): 'CLMcom-CCLM4-8-17_MPI-M-MPI-ESM-LR',
+    ('HadGEM2-ES', 'CCLM4-8-17'): 'CLMcom-CCLM4-8-17_MOHC-HadGEM2-ES',
+    ('HadGEM2-ES', 'RACMO22E'): 'KNMI-RACMO22E_MOHC-HadGEM2-ES',
+
+    ('NorESM1-M', 'DMI-HIRHAM5'): 'DMI-HIRHAM5_NCC-NorESM1-M',
+    ('IPSL-CM5A-MR', 'WRF331F'): 'IPSL-INERIS-WRF331F_IPSL-IPSL-CM5A-MR',
+    ('EC-EARTH', 'RCA4'): 'SMHI-RCA4_ICHEC-EC-EARTH',
+    ('IPSL-CM5A-MR', 'RCA4'): 'SMHI-RCA4_IPSL-IPSL-CM5A-MR',
+    ('HadGEM2-ES', 'RCA4'): 'SMHI-RCA4_MOHC-HadGEM2-ES',
+    ('MPI-ESM-LR', 'RCA4'): 'SMHI-RCA4_MPI-M-MPI-ESM-LR',
+
+
+    ('MPI-ESM-LR', 'REMO2009'): 'MPI-CSC-REMO2009_MPI-M-MPI-ESM-LR',
+
+
+}
diff --git a/extreme_data/meteo_france_data/adamont_data/deprecated/__init__.py b/extreme_data/meteo_france_data/adamont_data/deprecated/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/extreme_data/meteo_france_data/adamont_data/ensemble_simulation.py b/extreme_data/meteo_france_data/adamont_data/deprecated/ensemble_simulation.py
similarity index 97%
rename from extreme_data/meteo_france_data/adamont_data/ensemble_simulation.py
rename to extreme_data/meteo_france_data/adamont_data/deprecated/ensemble_simulation.py
index 1731a81dec752a557c57707f4c27b82337a25b9d..bde64857e9a074cb94c17c2ca1e8c03c2c6d7398 100644
--- a/extreme_data/meteo_france_data/adamont_data/ensemble_simulation.py
+++ b/extreme_data/meteo_france_data/adamont_data/deprecated/ensemble_simulation.py
@@ -5,7 +5,7 @@ import os.path as op
 import numpy as np
 from cached_property import cached_property
 
-from extreme_data.meteo_france_data.adamont_data.single_simulation import SingleSimulation
+from extreme_data.meteo_france_data.adamont_data.deprecated.single_simulation import SingleSimulation
 
 ADAMONT_PATH = r"/home/erwan/Documents/projects/spatiotemporalextremes/local/spatio_temporal_datasets/ADAMONT"
 
diff --git a/extreme_data/meteo_france_data/adamont_data/single_simulation.py b/extreme_data/meteo_france_data/adamont_data/deprecated/single_simulation.py
similarity index 100%
rename from extreme_data/meteo_france_data/adamont_data/single_simulation.py
rename to extreme_data/meteo_france_data/adamont_data/deprecated/single_simulation.py
diff --git a/extreme_data/meteo_france_data/adamont_data/download_adamont.py b/extreme_data/meteo_france_data/adamont_data/download_adamont.py
deleted file mode 100644
index 1b75a25d3523c3055ce467f7895b8fd4c41df250..0000000000000000000000000000000000000000
--- a/extreme_data/meteo_france_data/adamont_data/download_adamont.py
+++ /dev/null
@@ -1,44 +0,0 @@
-import subprocess
-
-"""
-Go to: https://drias-prod.meteo.fr/
-On the top left, select "simulation au format netcdf" instead of "simulation au format csv"
-Then, select the fact that you want to url
-"""
-
-requests = """https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/CNRM-CM5/ALADIN53/rcp8.5/day/snow/Snow_FORCING_CNRM-ALADIN53_CNRM-CERFACS-CNRM-CM5_RCP85_alp_2005080106_2100080106_daysum.nc
-https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/IPSL-CM5A/WRF331F/rcp8.5/day/snow/Snow_FORCING_IPSL-INERIS-WRF331F_IPSL-IPSL-CM5A-MR_RCP85_alp_2005080106_2100080106_daysum.nc
-https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/CNRM-CM5/RCA4/rcp8.5/day/snow/Snow_FORCING_SMHI-RCA4_CNRM-CERFACS-CNRM-CM5_RCP85_alp_2005080106_2100080106_daysum.nc
-https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/EC-EARTH/RCA4/rcp8.5/day/snow/Snow_FORCING_SMHI-RCA4_ICHEC-EC-EARTH_RCP85_alp_2005080106_2100080106_daysum.nc
-https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MOHC-HadGEM2/RCA4/rcp8.5/day/snow/Snow_FORCING_SMHI-RCA4_MOHC-HadGEM2-ES_RCP85_alp_2005080106_2099080106_daysum.nc
-https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/IPSL-CM5A/RCA4/rcp8.5/day/snow/Snow_FORCING_SMHI-RCA4_IPSL-IPSL-CM5A-MR_RCP85_alp_2005080106_2100080106_daysum.nc
-https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MPI-ESM-LR/RCA4/rcp8.5/day/snow/Snow_FORCING_SMHI-RCA4_MPI-M-MPI-ESM-LR_RCP85_alp_2005080106_2100080106_daysum.nc
-https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MOHC-HadGEM2/RACMO22E/rcp8.5/day/snow/Snow_FORCING_KNMI-RACMO22E_MOHC-HadGEM2-ES_RCP85_alp_2005080106_2099080106_daysum.nc
-https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/CNRM-CM5/CCLM4-8-17/rcp8.5/day/snow/Snow_FORCING_CLMcom-CCLM4-8-17_CNRM-CERFACS-CNRM-CM5_RCP85_alp_2005080106_2100080106_daysum.nc
-https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/EC-EARTH/CCLM4-8-17/rcp8.5/day/snow/Snow_FORCING_CLMcom-CCLM4-8-17_ICHEC-EC-EARTH_RCP85_alp_2005080106_2100080106_daysum.nc
-https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MOHC-HadGEM2/CCLM4-8-17/rcp8.5/day/snow/Snow_FORCING_CLMcom-CCLM4-8-17_MOHC-HadGEM2-ES_RCP85_alp_2005080106_2099080106_daysum.nc
-https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MPI-ESM-LR/CCLM4-8-17/rcp8.5/day/snow/Snow_FORCING_CLMcom-CCLM4-8-17_MPI-M-MPI-ESM-LR_RCP85_alp_2005080106_2100080106_daysum.nc
-https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MPI-ESM-LR/REMO019/rcp8.5/day/snow/Snow_FORCING_MPI-CSC-REMO2009_MPI-M-MPI-ESM-LR_RCP85_alp_2005080106_2100080106_daysum.nc
-https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/NorESM1/HIRHAM5/rcp8.5/day/snow/Snow_FORCING_DMI-HIRHAM5_NCC-NorESM1-M_RCP85_alp_2005080106_2100080106_daysum.nc
-"""
-
-# requests = """https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/CNRM-CM5/ALADIN53/historical/day/snowswe/SNOWSWE_PRO_CNRM-ALADIN53_CNRM-CERFACS-CNRM-CM5_HISTO_alp_1950080106_2005073106_6h.nc
-# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/IPSL-CM5A/WRF331F/historical/day/snowswe/SNOWSWE_PRO_IPSL-INERIS-WRF331F_IPSL-IPSL-CM5A-MR_HISTO_alp_1951080106_2005073106_6h.nc
-# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/CNRM-CM5/RCA4/historical/day/snowswe/SNOWSWE_PRO_SMHI-RCA4_CNRM-CERFACS-CNRM-CM5_HISTO_alp_1970080106_2005073106_6h.nc
-# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/EC-EARTH/RCA4/historical/day/snowswe/SNOWSWE_PRO_SMHI-RCA4_ICHEC-EC-EARTH_HISTO_alp_1970080106_2005073106_6h.nc
-# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MOHC-HadGEM2/RCA4/historical/day/snowswe/SNOWSWE_PRO_SMHI-RCA4_MOHC-HadGEM2-ES_HISTO_alp_1981080106_2005073106_6h.nc
-# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/IPSL-CM5A/RCA4/historical/day/snowswe/SNOWSWE_PRO_SMHI-RCA4_IPSL-IPSL-CM5A-MR_HISTO_alp_1970080106_2005073106_6h.nc
-# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MPI-ESM-LR/RCA4/historical/day/snowswe/SNOWSWE_PRO_SMHI-RCA4_MPI-M-MPI-ESM-LR_HISTO_alp_1970080106_2005073106_6h.nc
-# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MOHC-HadGEM2/RACMO22E/historical/day/snowswe/SNOWSWE_PRO_KNMI-RACMO22E_MOHC-HadGEM2-ES_HISTO_alp_1981080106_2005073106_6h.nc
-# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/CNRM-CM5/CCLM4-8-17/historical/day/snowswe/SNOWSWE_PRO_CLMcom-CCLM4-8-17_CNRM-CERFACS-CNRM-CM5_HISTO_alp_1950080106_2005073106_6h.nc
-# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/EC-EARTH/CCLM4-8-17/historical/day/snowswe/SNOWSWE_PRO_CLMcom-CCLM4-8-17_ICHEC-EC-EARTH_HISTO_alp_1950080106_2005073106_6h.nc
-# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MOHC-HadGEM2/CCLM4-8-17/historical/day/snowswe/SNOWSWE_PRO_CLMcom-CCLM4-8-17_MOHC-HadGEM2-ES_HISTO_alp_1981080106_2005073106_6h.nc
-# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MPI-ESM-LR/CCLM4-8-17/historical/day/snowswe/SNOWSWE_PRO_CLMcom-CCLM4-8-17_MPI-M-MPI-ESM-LR_HISTO_alp_1950080106_2005073106_6h.nc
-# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MPI-ESM-LR/REMO019/historical/day/snowswe/SNOWSWE_PRO_MPI-CSC-REMO2009_MPI-M-MPI-ESM-LR_HISTO_alp_1950080106_2005073106_6h.nc
-# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/NorESM1/HIRHAM5/historical/day/snowswe/SNOWSWE_PRO_DMI-HIRHAM5_NCC-NorESM1-M_HISTO_alp_1951080106_2005073106_6h.nc
-# """
-
-for request in requests.split('\n')[:]:
-    command_line = 'wget {}'.format(request)
-    print(command_line)
-    subprocess.run(command_line, shell=True)
\ No newline at end of file
diff --git a/extreme_data/meteo_france_data/adamont_data/snowfall_simulation.py b/extreme_data/meteo_france_data/adamont_data/snowfall_simulation.py
deleted file mode 100644
index e9d990ae26bfa84e7e3aafa8c544d9f4f130f838..0000000000000000000000000000000000000000
--- a/extreme_data/meteo_france_data/adamont_data/snowfall_simulation.py
+++ /dev/null
@@ -1,34 +0,0 @@
-import numpy as np
-
-from extreme_data.meteo_france_data.adamont_data.abstract_simulation_study import SimulationStudy
-from extreme_data.meteo_france_data.scm_models_data.abstract_study import YEAR_MIN, YEAR_MAX
-from extreme_data.meteo_france_data.scm_models_data.abstract_variable import AbstractVariable
-from extreme_data.meteo_france_data.scm_models_data.utils import Season, FrenchRegion
-
-
-class SafranSnowfallSimulationVariable(AbstractVariable):
-    UNIT = 'kg $m^{-2}$'
-
-
-    @property
-    def daily_time_serie_array(self) -> np.ndarray:
-        return self.variable_array
-
-    @classmethod
-    def keyword(cls):
-        return 'SNOW'
-
-
-class SafranSnowfallSimulationRCP85(SimulationStudy):
-
-    def __init__(self, altitude: int = 1800, year_min=YEAR_MIN, year_max=YEAR_MAX,
-                 multiprocessing=True, orientation=None, slope=20.0, season=Season.annual,
-                 french_region=FrenchRegion.alps, split_years=None, ensemble_idx=0):
-        super().__init__(SafranSnowfallSimulationVariable, altitude, year_min, year_max, multiprocessing, orientation,
-                         slope,
-                         season, french_region, split_years, "RCP85", ensemble_idx)
-
-
-if __name__ == '__main__':
-    study = SafranSnowfallSimulationRCP85(altitude=1800)
-    print(study.year_to_annual_maxima)
diff --git a/extreme_data/meteo_france_data/adamont_data/utils/__init__.py b/extreme_data/meteo_france_data/adamont_data/utils/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/extreme_data/meteo_france_data/adamont_data/utils/download_adamont.py b/extreme_data/meteo_france_data/adamont_data/utils/download_adamont.py
new file mode 100644
index 0000000000000000000000000000000000000000..7cc10d7f89f8a72553c83787f9ff3447ba8164d4
--- /dev/null
+++ b/extreme_data/meteo_france_data/adamont_data/utils/download_adamont.py
@@ -0,0 +1,59 @@
+import subprocess
+
+"""
+Go to: https://drias-prod.meteo.fr/
+On the top left, select "simulation au format netcdf" instead of "simulation au format csv"
+Then, select the fact that you want to url
+"""
+
+# requests = """https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/CNRM-CM5/ALADIN53/rcp8.5/day/snow/Snow_FORCING_CNRM-ALADIN53_CNRM-CERFACS-CNRM-CM5_RCP85_alp_2005080106_2100080106_daysum.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/IPSL-CM5A/WRF331F/rcp8.5/day/snow/Snow_FORCING_IPSL-INERIS-WRF331F_IPSL-IPSL-CM5A-MR_RCP85_alp_2005080106_2100080106_daysum.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/CNRM-CM5/RCA4/rcp8.5/day/snow/Snow_FORCING_SMHI-RCA4_CNRM-CERFACS-CNRM-CM5_RCP85_alp_2005080106_2100080106_daysum.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/EC-EARTH/RCA4/rcp8.5/day/snow/Snow_FORCING_SMHI-RCA4_ICHEC-EC-EARTH_RCP85_alp_2005080106_2100080106_daysum.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MOHC-HadGEM2/RCA4/rcp8.5/day/snow/Snow_FORCING_SMHI-RCA4_MOHC-HadGEM2-ES_RCP85_alp_2005080106_2099080106_daysum.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/IPSL-CM5A/RCA4/rcp8.5/day/snow/Snow_FORCING_SMHI-RCA4_IPSL-IPSL-CM5A-MR_RCP85_alp_2005080106_2100080106_daysum.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MPI-ESM-LR/RCA4/rcp8.5/day/snow/Snow_FORCING_SMHI-RCA4_MPI-M-MPI-ESM-LR_RCP85_alp_2005080106_2100080106_daysum.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MOHC-HadGEM2/RACMO22E/rcp8.5/day/snow/Snow_FORCING_KNMI-RACMO22E_MOHC-HadGEM2-ES_RCP85_alp_2005080106_2099080106_daysum.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/CNRM-CM5/CCLM4-8-17/rcp8.5/day/snow/Snow_FORCING_CLMcom-CCLM4-8-17_CNRM-CERFACS-CNRM-CM5_RCP85_alp_2005080106_2100080106_daysum.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/EC-EARTH/CCLM4-8-17/rcp8.5/day/snow/Snow_FORCING_CLMcom-CCLM4-8-17_ICHEC-EC-EARTH_RCP85_alp_2005080106_2100080106_daysum.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MOHC-HadGEM2/CCLM4-8-17/rcp8.5/day/snow/Snow_FORCING_CLMcom-CCLM4-8-17_MOHC-HadGEM2-ES_RCP85_alp_2005080106_2099080106_daysum.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MPI-ESM-LR/CCLM4-8-17/rcp8.5/day/snow/Snow_FORCING_CLMcom-CCLM4-8-17_MPI-M-MPI-ESM-LR_RCP85_alp_2005080106_2100080106_daysum.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MPI-ESM-LR/REMO019/rcp8.5/day/snow/Snow_FORCING_MPI-CSC-REMO2009_MPI-M-MPI-ESM-LR_RCP85_alp_2005080106_2100080106_daysum.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/NorESM1/HIRHAM5/rcp8.5/day/snow/Snow_FORCING_DMI-HIRHAM5_NCC-NorESM1-M_RCP85_alp_2005080106_2100080106_daysum.nc
+# """
+
+requests = """https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/CNRM-CM5/ALADIN53/rcp4.5/day/snow/Snow_FORCING_CNRM-ALADIN53_CNRM-CERFACS-CNRM-CM5_RCP45_alp_2005080106_2100080106_daysum.nc
+https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/IPSL-CM5A/WRF331F/rcp4.5/day/snow/Snow_FORCING_IPSL-INERIS-WRF331F_IPSL-IPSL-CM5A-MR_RCP45_alp_2005080106_2100080106_daysum.nc
+https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/CNRM-CM5/RCA4/rcp4.5/day/snow/Snow_FORCING_SMHI-RCA4_CNRM-CERFACS-CNRM-CM5_RCP45_alp_2005080106_2100080106_daysum.nc
+https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/EC-EARTH/RCA4/rcp4.5/day/snow/Snow_FORCING_SMHI-RCA4_ICHEC-EC-EARTH_RCP45_alp_2005080106_2100080106_daysum.nc
+https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MOHC-HadGEM2/RCA4/rcp4.5/day/snow/Snow_FORCING_SMHI-RCA4_MOHC-HadGEM2-ES_RCP45_alp_2005080106_2099080106_daysum.nc
+https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/IPSL-CM5A/RCA4/rcp4.5/day/snow/Snow_FORCING_SMHI-RCA4_IPSL-IPSL-CM5A-MR_RCP45_alp_2005080106_2100080106_daysum.nc
+https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MPI-ESM-LR/RCA4/rcp4.5/day/snow/Snow_FORCING_SMHI-RCA4_MPI-M-MPI-ESM-LR_RCP45_alp_2005080106_2100080106_daysum.nc
+https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MOHC-HadGEM2/RACMO22E/rcp4.5/day/snow/Snow_FORCING_KNMI-RACMO22E_MOHC-HadGEM2-ES_RCP45_alp_2005080106_2099080106_daysum.nc
+https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/CNRM-CM5/CCLM4-8-17/rcp4.5/day/snow/Snow_FORCING_CLMcom-CCLM4-8-17_CNRM-CERFACS-CNRM-CM5_RCP45_alp_2005080106_2100080106_daysum.nc
+https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/EC-EARTH/CCLM4-8-17/rcp4.5/day/snow/Snow_FORCING_CLMcom-CCLM4-8-17_ICHEC-EC-EARTH_RCP45_alp_2005080106_2100080106_daysum.nc
+https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MOHC-HadGEM2/CCLM4-8-17/rcp4.5/day/snow/Snow_FORCING_CLMcom-CCLM4-8-17_MOHC-HadGEM2-ES_RCP45_alp_2005080106_2099080106_daysum.nc
+https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MPI-ESM-LR/CCLM4-8-17/rcp4.5/day/snow/Snow_FORCING_CLMcom-CCLM4-8-17_MPI-M-MPI-ESM-LR_RCP45_alp_2005080106_2100080106_daysum.nc
+https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MPI-ESM-LR/REMO019/rcp4.5/day/snow/Snow_FORCING_MPI-CSC-REMO2009_MPI-M-MPI-ESM-LR_RCP45_alp_2005080106_2100080106_daysum.nc
+https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/NorESM1/HIRHAM5/rcp4.5/day/snow/Snow_FORCING_DMI-HIRHAM5_NCC-NorESM1-M_RCP45_alp_2005080106_2100080106_daysum.nc"""
+
+# requests = """https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/CNRM-CM5/ALADIN53/historical/day/snowswe/SNOWSWE_PRO_CNRM-ALADIN53_CNRM-CERFACS-CNRM-CM5_HISTO_alp_1950080106_2005073106_6h.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/IPSL-CM5A/WRF331F/historical/day/snowswe/SNOWSWE_PRO_IPSL-INERIS-WRF331F_IPSL-IPSL-CM5A-MR_HISTO_alp_1951080106_2005073106_6h.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/CNRM-CM5/RCA4/historical/day/snowswe/SNOWSWE_PRO_SMHI-RCA4_CNRM-CERFACS-CNRM-CM5_HISTO_alp_1970080106_2005073106_6h.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/EC-EARTH/RCA4/historical/day/snowswe/SNOWSWE_PRO_SMHI-RCA4_ICHEC-EC-EARTH_HISTO_alp_1970080106_2005073106_6h.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MOHC-HadGEM2/RCA4/historical/day/snowswe/SNOWSWE_PRO_SMHI-RCA4_MOHC-HadGEM2-ES_HISTO_alp_1981080106_2005073106_6h.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/IPSL-CM5A/RCA4/historical/day/snowswe/SNOWSWE_PRO_SMHI-RCA4_IPSL-IPSL-CM5A-MR_HISTO_alp_1970080106_2005073106_6h.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MPI-ESM-LR/RCA4/historical/day/snowswe/SNOWSWE_PRO_SMHI-RCA4_MPI-M-MPI-ESM-LR_HISTO_alp_1970080106_2005073106_6h.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MOHC-HadGEM2/RACMO22E/historical/day/snowswe/SNOWSWE_PRO_KNMI-RACMO22E_MOHC-HadGEM2-ES_HISTO_alp_1981080106_2005073106_6h.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/CNRM-CM5/CCLM4-8-17/historical/day/snowswe/SNOWSWE_PRO_CLMcom-CCLM4-8-17_CNRM-CERFACS-CNRM-CM5_HISTO_alp_1950080106_2005073106_6h.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/EC-EARTH/CCLM4-8-17/historical/day/snowswe/SNOWSWE_PRO_CLMcom-CCLM4-8-17_ICHEC-EC-EARTH_HISTO_alp_1950080106_2005073106_6h.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MOHC-HadGEM2/CCLM4-8-17/historical/day/snowswe/SNOWSWE_PRO_CLMcom-CCLM4-8-17_MOHC-HadGEM2-ES_HISTO_alp_1981080106_2005073106_6h.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MPI-ESM-LR/CCLM4-8-17/historical/day/snowswe/SNOWSWE_PRO_CLMcom-CCLM4-8-17_MPI-M-MPI-ESM-LR_HISTO_alp_1950080106_2005073106_6h.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/MPI-ESM-LR/REMO019/historical/day/snowswe/SNOWSWE_PRO_MPI-CSC-REMO2009_MPI-M-MPI-ESM-LR_HISTO_alp_1950080106_2005073106_6h.nc
+# https://climatedata.umr-cnrm.fr/public/dcsc/projects/DRIAS/ADAMONT2017/Alpes/NorESM1/HIRHAM5/historical/day/snowswe/SNOWSWE_PRO_DMI-HIRHAM5_NCC-NorESM1-M_HISTO_alp_1951080106_2005073106_6h.nc
+# """
+
+for request in requests.split('\n')[:]:
+    command_line = 'wget {}'.format(request)
+    print(command_line)
+    subprocess.run(command_line, shell=True)
\ No newline at end of file
diff --git a/extreme_data/meteo_france_data/adamont_data/utils/utils.py b/extreme_data/meteo_france_data/adamont_data/utils/utils.py
new file mode 100644
index 0000000000000000000000000000000000000000..a1fceb85eea62a1382366a9a33c8be8e62a8b7d0
--- /dev/null
+++ b/extreme_data/meteo_france_data/adamont_data/utils/utils.py
@@ -0,0 +1,33 @@
+from enum import Enum
+
+
+def _massif_number_to_massif_name():
+    # from adamont_data metadata
+    s = """1	Chablais
+    2	Aravis
+    3	Mont-Blanc
+    4	Bauges
+    5	Beaufortain
+    6	Haute-Tarentaise
+    7	Chartreuse
+    8	Belledonne
+    9	Maurienne
+    10	Vanoise
+    11	Haute-Maurienne
+    12	Grandes-Rousses
+    13	Thabor
+    14	Vercors
+    15	Oisans
+    16	Pelvoux
+    17	Queyras
+    18	Devoluy
+    19	Champsaur
+    20	Parpaillon
+    21	Ubaye
+    22	Haut_Var-Haut_Verdon
+    23	Mercantour"""
+    l = s.split('\n')
+    return {int(k): m for k, m in dict([e.split() for e in l]).items()}
+
+
+massif_number_to_massif_name = _massif_number_to_massif_name()
diff --git a/extreme_data/meteo_france_data/scm_models_data/abstract_study.py b/extreme_data/meteo_france_data/scm_models_data/abstract_study.py
index c3bf33a42519e7c1385e7178bf526d3dff73f3b0..24432d063fd0c4c7b2bdf808420a8db526e43794 100644
--- a/extreme_data/meteo_france_data/scm_models_data/abstract_study.py
+++ b/extreme_data/meteo_france_data/scm_models_data/abstract_study.py
@@ -1,5 +1,4 @@
 import datetime
-from enum import Enum
 
 from matplotlib.lines import Line2D
 import io
diff --git a/extreme_data/meteo_france_data/scm_models_data/utils.py b/extreme_data/meteo_france_data/scm_models_data/utils.py
index 0502267efe9fb99f7d435f740cd2c100b2e97b41..bbde7b7d48cbe95cfeddd9a9d4a42347c2e60e87 100644
--- a/extreme_data/meteo_france_data/scm_models_data/utils.py
+++ b/extreme_data/meteo_france_data/scm_models_data/utils.py
@@ -36,6 +36,13 @@ class FrenchRegion(Enum):
     pyrenees = 2
 
 
+def french_region_to_str(french_region):
+    if french_region is FrenchRegion.alps:
+        return 'alp'
+    else:
+        raise NotImplementedError()
+
+
 season_to_start_day_and_last_day = {
     Season.annual: ('08-01', '07-31'),
     Season.winter_extended: ('11-01', '05-31'),
diff --git a/extreme_data/meteo_france_data/scm_models_data/visualization/main_study_visualizer.py b/extreme_data/meteo_france_data/scm_models_data/visualization/main_study_visualizer.py
index b67ca98fc9692eb89e6cc57a9bb74ccdd652428d..f5bd8d100be8d135220e6c8c6838dfb48de64eb0 100644
--- a/extreme_data/meteo_france_data/scm_models_data/visualization/main_study_visualizer.py
+++ b/extreme_data/meteo_france_data/scm_models_data/visualization/main_study_visualizer.py
@@ -2,7 +2,7 @@ import time
 from collections import OrderedDict
 from typing import List
 
-from extreme_data.meteo_france_data.adamont_data.snowfall_simulation import SafranSnowfallSimulationRCP85
+from extreme_data.meteo_france_data.adamont_data.adamont.adamont_snowfall import AdamontSnowfall
 from extreme_data.meteo_france_data.scm_models_data.abstract_study import AbstractStudy
 from extreme_data.meteo_france_data.scm_models_data.crocus.crocus import CrocusDepth, CrocusSweTotal, \
     ExtendedCrocusDepth, \
@@ -57,7 +57,7 @@ SCM_STUDY_CLASS_TO_ABBREVIATION = {
     CrocusSnowDepthDifference: 'max HS - HS at max of GSL',
     CrocusSnowDepthAtMaxofSwe: 'HS at max of GSL',
     CrocusSnowDensity: 'Density',
-    SafranSnowfallSimulationRCP85: 'SF1 RCP85 projections',
+    SafranSnowfall: 'SF1 RCP85 projections',
     SafranDateFirstSnowfall: 'SF1 first date'
 }
 
@@ -155,7 +155,7 @@ def extended_visualization():
 
 def annual_mean_vizu_compare_durand_study(safran=True, take_mean_value=True, altitude=1800):
     if safran:
-        for study_class in [SafranPrecipitation, SafranRainfall, SafranSnowfall, SafranTemperature][-1:]:
+        for study_class in [SafranPrecipitation, SafranRainfall, AdamontSnowfall, SafranTemperature][-1:]:
             study = study_class(altitude=altitude, year_min=1958, year_max=2001)
             study_visualizer = StudyVisualizer(study)
             study_visualizer.visualize_annual_mean_values(take_mean_value=True)
@@ -173,7 +173,7 @@ def all_normal_vizu():
 
 
 def case_study():
-    for study in study_iterator(study_class=SafranSnowfall, only_first_one=False, altitudes=[2100],
+    for study in study_iterator(study_class=AdamontSnowfall, only_first_one=False, altitudes=[2100],
                                 nb_consecutive_days=3):
         study_visualizer = StudyVisualizer(study, save_to_file=False, temporal_non_stationarity=False)
         study_visualizer.visualize_all_mean_and_max_graphs()
diff --git a/projects/altitude_spatial_model/altitudes_fit/plots/plot_histogram_altitude_studies.py b/projects/altitude_spatial_model/altitudes_fit/plots/plot_histogram_altitude_studies.py
index b49429882bcafcb7df591790caad083a8e1d8af7..7f1461ac0b7ccf0de76a5a4970e1fd3c34e48c95 100644
--- a/projects/altitude_spatial_model/altitudes_fit/plots/plot_histogram_altitude_studies.py
+++ b/projects/altitude_spatial_model/altitudes_fit/plots/plot_histogram_altitude_studies.py
@@ -122,7 +122,8 @@ def plot_shoe_plot_changes_against_altitude(massif_names, visualizer_list: List[
 
     all_changes = [v.all_changes(massif_names, relative=relative) for v in visualizer_list]
     all_changes = list(zip(*all_changes))
-    labels = ['All models', 'Temporally non-stationary models', 'Temporally non-stationary models which are significant']
+    labels = ['All models', 'Temporally non-stationary models',
+              'Temporally non-stationary models which are significant']
     colors = ['darkgreen', 'forestgreen', 'limegreen']
     nb_massifs = [len(v.get_valid_names(massif_names)) for v in visualizer_list]
 
@@ -134,7 +135,6 @@ def plot_shoe_plot_changes_against_altitude(massif_names, visualizer_list: List[
     labelsize = 10
     linewidth = 3
 
-
     x = np.array([4 * width * (i + 1) for i in range(len(nb_massifs))])
     for j, (changes, label, color) in enumerate(list(zip(all_changes, labels, colors)), -1):
         positions = x + j * width
diff --git a/projects/projection_snow_load/main_difference_between_reanalysis_and_simulations.py b/projects/projection_snow_load/main_difference_between_reanalysis_and_simulations.py
index 40930a83fb70fe985b777758f21cf65b776e9538..d35eb536c88574885169ba12a0b3981192f8266d 100644
--- a/projects/projection_snow_load/main_difference_between_reanalysis_and_simulations.py
+++ b/projects/projection_snow_load/main_difference_between_reanalysis_and_simulations.py
@@ -1,4 +1,4 @@
-from extreme_data.meteo_france_data.adamont_data.ensemble_simulation import EnsembleSimulation
+from extreme_data.meteo_france_data.adamont_data.deprecated.ensemble_simulation import EnsembleSimulation
 from extreme_data.meteo_france_data.scm_models_data.crocus.crocus import CrocusSnowLoad3Days, \
     CrocusSweTotal
 from extreme_data.meteo_france_data.scm_models_data.visualization.study_visualizer import \
diff --git a/test/test_extreme_data/test_meteo_france_data/test_SCM_study.py b/test/test_extreme_data/test_meteo_france_data/test_SCM_study.py
index f098eadea20552278960b2de69f65f9572c54342..de34379a7b6156c73f18f6795778002a2afbb368 100644
--- a/test/test_extreme_data/test_meteo_france_data/test_SCM_study.py
+++ b/test/test_extreme_data/test_meteo_france_data/test_SCM_study.py
@@ -5,7 +5,7 @@ from random import sample
 
 import pandas as pd
 
-from extreme_data.meteo_france_data.adamont_data.abstract_simulation_study import SimulationStudy
+from extreme_data.meteo_france_data.adamont_data.abstract_adamont_study import AbstractAdamontStudy
 from extreme_data.meteo_france_data.scm_models_data.crocus.crocus import CrocusSnowLoad3Days
 from extreme_data.meteo_france_data.scm_models_data.safran.cumulated_study import NB_DAYS
 from extreme_data.meteo_france_data.scm_models_data.safran.safran import SafranSnowfall, SafranTemperature, \
@@ -64,9 +64,7 @@ class TestSCMAllStudy(unittest.TestCase):
     def test_variables(self):
         for study_class in SCM_STUDY_CLASS_TO_ABBREVIATION.keys():
             study = study_class(year_max=1959)
-            if not issubclass(study_class, SimulationStudy):
-                print(study_class)
-                _ = study.year_to_annual_maxima[1959]
+            _ = study.year_to_annual_maxima[1959]
         self.assertTrue(True)
 
 
diff --git a/test/test_extreme_data/test_meteo_france_data/test_adamont_study.py b/test/test_extreme_data/test_meteo_france_data/test_adamont_study.py
index 4f72286be42c8d1f92c015aefb786106fc7d8fc9..d72ae3c95a754890b0168b1bd0a699d92d93d16e 100644
--- a/test/test_extreme_data/test_meteo_france_data/test_adamont_study.py
+++ b/test/test_extreme_data/test_meteo_france_data/test_adamont_study.py
@@ -1,13 +1,26 @@
 import unittest
 
-from extreme_data.meteo_france_data.adamont_data.snowfall_simulation import SafranSnowfallSimulationRCP85
+from extreme_data.meteo_france_data.adamont_data.adamont_scenario import AdamontScenario, gcm_rcm_couple_to_full_name
+from extreme_data.meteo_france_data.adamont_data.adamont.adamont_snowfall import AdamontSnowfall
 
 
 class TestAdamontStudy(unittest.TestCase):
 
-    def test_year_to_date(self):
-        study = SafranSnowfallSimulationRCP85(altitude=900)
+    def test_load_adamont_snowfall(self):
+        study_list = [
+            AdamontSnowfall(altitude=900),
+            AdamontSnowfall(altitude=1800)
+        ]
+        study_list.extend([AdamontSnowfall(altitude=900, scenario=AdamontScenario.rcp45),
+                           AdamontSnowfall(altitude=900, scenario=AdamontScenario.rcp85)])
+        study_list.extend([AdamontSnowfall(altitude=900, gcm_rcm_couple=gcm_rcm_couple)
+                           for gcm_rcm_couple in gcm_rcm_couple_to_full_name.keys()])
+        for study in study_list:
+            annual_maxima_for_year_min = study.year_to_annual_maxima[study.year_min]
+            # print(study.altitude, study.scenario_name, study.gcm_rcm_couple)
+            # print(annual_maxima_for_year_min)
         self.assertTrue(True)
 
+
 if __name__ == '__main__':
-    unittest.main()
\ No newline at end of file
+    unittest.main()