diff --git a/DESCRIPTION b/DESCRIPTION
index 39d9a876553191b068386d92e7a5a56a6b0bd705..3a1b4fa9f0508511c14fe2bc5df09f83c40e8fdf 100644
--- a/DESCRIPTION
+++ b/DESCRIPTION
@@ -1,8 +1,8 @@
 Package: airGRteaching
 Type: Package
 Title: Teaching Hydrological Modelling with the GR Rainfall-Runoff Models ('Shiny' Interface Included)
-Version: 0.2.9.24
-Date: 2020-03-30
+Version: 0.2.10.0
+Date: 2020-04-13
 Authors@R: c(
   person("Olivier", "Delaigue", role = c("aut", "cre"), comment = c(ORCID = "0000-0002-7668-8468"), email = "airGR@inrae.fr"),
   person("Laurent", "Coron", role = c("aut"), comment = c(ORCID = "0000-0002-1503-6204")),
diff --git a/NEWS.md b/NEWS.md
index 90ce27fd12f74d9330656f0777997fd9ecaa3561..42e41405104fc7e81ea69f4aed8173d2899ef997 100644
--- a/NEWS.md
+++ b/NEWS.md
@@ -4,11 +4,12 @@
 
 
 
-### 0.2.9.24 Release Notes (2020-03-30)
+### 0.2.10.0 Release Notes (2020-04-13)
 
 
 #### New features
 
+- the <code>ShinyGR()</code> interface, can now run on monthly time series, using the GR2M model
 - in the <code>ShinyGR()</code> interface, there is a new tab panel that shows a summary sheets of basin if the name of the dataset contains the code station  (8 characters : 1 letter and 7 numbers) of the Banque Hydro French database (so it is available only for the dataset of this database)
 
 
diff --git a/inst/ShinyGR/ui.R b/inst/ShinyGR/ui.R
index 613811153f13f7f8af061665591f6b27447960e2..d9d5d243d5111cc2d4c731ef0d2765c3db91a78e 100644
--- a/inst/ShinyGR/ui.R
+++ b/inst/ShinyGR/ui.R
@@ -50,20 +50,27 @@ navbarPage(title       = div("airGRteaching",
                                                h4("Choose a model:"),
                                                fluidRow(
                                                  column(width = 6, selectInput("HydroModel", label = "Hydrological model",
-                                                                               choices = c("GR4J", "GR5J", "GR6J"))),
+                                                                               choices = c("GR4J", "GR5J", "GR6J", "GR2M"))),
                                                  column(width = 6, selectInput("SnowModel", label = "Snow model",
                                                                                choices = c("None", "CemaNeige")))
                                                ),
                                                
                                                
                                                h4("Parameters values:"),
-                                               conditionalPanel(condition = "input.HydroModel == 'GR4J' || input.HydroModel =='GR5J' || input.HydroModel =='GR6J'",
-                                                                sliderInput("X1", label = "X1  (production store capacity)",
-                                                                            post = "  [mm]",
-                                                                            min = 0, 
-                                                                            max = 2500, 
-                                                                            step = 10, 
-                                                                            value = 1250),
+                                               sliderInput("X1", label = "X1  (production store capacity)",
+                                                           post = "  [mm]",
+                                                           min = 0, 
+                                                           max = 2500, 
+                                                           step = 10, 
+                                                           value = 1250),
+                                               conditionalPanel(condition = "input.HydroModel == 'GR2M'",
+                                                                sliderInput("X2GR2M", label = "X2  (groundwater exchange coeff.)",
+                                                                            post = "  [-]",
+                                                                            min = -5, 
+                                                                            max = +5, 
+                                                                            step = 0.05,
+                                                                            value = 0)),
+                                               conditionalPanel(condition = "input.HydroModel != 'GR2M'",
                                                                 sliderInput("X2", label = "X2  (intercatchment exchange coeff.)",
                                                                             post = "  [mm/d]",
                                                                             min = -5, 
@@ -109,7 +116,7 @@ navbarPage(title       = div("airGRteaching",
                                                                             max = 10, 
                                                                             step = 0.5, 
                                                                             value = 5)),
-                                               
+                                  
                                                h4("Automatic calibration:"),
                                                fluidRow(
                                                  column(width = 6, selectInput("TypeCrit", label = "Objective function",