diff --git a/notebooks/AGIPD/AGIPD_Correct_and_Verify.ipynb b/notebooks/AGIPD/AGIPD_Correct_and_Verify.ipynb
index b47dea5b89b8b740f3567980c56d4d139e5d0bc1..392e0fd2197db8f5eee7c92bafdbe0e6726a9906 100644
--- a/notebooks/AGIPD/AGIPD_Correct_and_Verify.ipynb
+++ b/notebooks/AGIPD/AGIPD_Correct_and_Verify.ipynb
@@ -270,26 +270,6 @@
     "print(f\"Detector instance {dinstance}\")"
    ]
   },
-  {
-   "cell_type": "code",
-   "execution_count": null,
-   "metadata": {},
-   "outputs": [],
-   "source": [
-    "# Display Information about the selected pulses indices for correction.\n",
-    "pulses_lst = list(range(*max_pulses)) if not (len(max_pulses)==1 and max_pulses[0]==0) else max_pulses\n",
-    "\n",
-    "try:\n",
-    "    if len(pulses_lst) > 1:\n",
-    "        print(\"A range of {} pulse indices is selected: from {} to {} with a step of {}\"\n",
-    "               .format(len(pulses_lst), pulses_lst[0] , pulses_lst[-1] + (pulses_lst[1] - pulses_lst[0]),\n",
-    "                       pulses_lst[1] - pulses_lst[0]))\n",
-    "    else:\n",
-    "        print(f\"one pulse is selected: a pulse of idx {pulses_lst[0]}\")\n",
-    "except Exception as e:\n",
-    "    raise ValueError(f\"max_pulses input Error: {e}\")"
-   ]
-  },
   {
    "cell_type": "code",
    "execution_count": null,
diff --git a/src/cal_tools/agipdlib.py b/src/cal_tools/agipdlib.py
index 2881c9589828ae8b1c6dbebeb4eea3b457bb3250..91eebf23d81f656fecfd91acc92dda1fc1de7475 100644
--- a/src/cal_tools/agipdlib.py
+++ b/src/cal_tools/agipdlib.py
@@ -247,13 +247,37 @@ class AgipdCorrections:
         # Data description
         self.h5_data_path = h5_data_path
         self.h5_index_path = h5_index_path
-        self.rng_pulses = max_pulses
         # avoid list(range(*[0]]))
+
+        self.rng_pulses = [202 if p > 202 else p for p in max_pulses]
+
         self.pulses_lst = (
-            list(range(*max_pulses))
-            if max_pulses != [0]
-            else max_pulses
+            list(range(*self.rng_pulses))
+            if self.rng_pulses != [0]
+            else self.rng_pulses
         )
+        if self.rng_pulses != max_pulses:
+            print(
+                "WARNING: \"max_pulses\" list has been modified from "
+                f"{max_pulses} to {self.rng_pulses}. As the number of "
+                "operating memory cells are less than the selected "
+                "maximum pulse."
+            )
+
+        try:
+            if len(self.pulses_lst) > 1:
+                print(
+                    f"A range of {len(self.pulses_lst)} pulse indices "
+                    f"is selected: from {self.pulses_lst[0]} to "
+                    f"{self.pulses_lst[-1]+(self.pulses_lst[1]-self.pulses_lst[0])}"  # noqa
+                    f" with a step of {self.pulses_lst[1] - self.pulses_lst[0]}."  # noqa
+                )
+            else:
+                print(
+                    "one pulse is selected: a pulse of idx"
+                    f" {self.pulses_lst[0]}.")
+        except Exception as e:
+            raise ValueError(f"\"max_pulses\" input Error: {e}")
 
         self.max_cells = max_cells
         self.gain_mode = gain_mode