diff --git a/.coverage b/.coverage
deleted file mode 100644
index bf1a819edb9c1da044cf1d4a9886dcae9c8a0d44..0000000000000000000000000000000000000000
Binary files a/.coverage and /dev/null differ
diff --git a/.coverage.DESKTOP-ATMEKSV.11452.XLITHjZx b/.coverage.DESKTOP-ATMEKSV.11452.XLITHjZx
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/.coverage.DESKTOP-ATMEKSV.12176.XLfAodNx b/.coverage.DESKTOP-ATMEKSV.12176.XLfAodNx
new file mode 100644
index 0000000000000000000000000000000000000000..81e53f831236a6e47a886ccb6403982ccf33b461
Binary files /dev/null and b/.coverage.DESKTOP-ATMEKSV.12176.XLfAodNx differ
diff --git a/.coverage.DESKTOP-ATMEKSV.13588.XZYsjQJx b/.coverage.DESKTOP-ATMEKSV.13588.XZYsjQJx
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/.coverage.DESKTOP-ATMEKSV.16272.XbRVHzCx b/.coverage.DESKTOP-ATMEKSV.16272.XbRVHzCx
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/.coverage.DESKTOP-ATMEKSV.17272.XFfrcjIx b/.coverage.DESKTOP-ATMEKSV.17272.XFfrcjIx
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/.coverage.DESKTOP-ATMEKSV.19516.XYmGXWjx b/.coverage.DESKTOP-ATMEKSV.19516.XYmGXWjx
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/.coverage.DESKTOP-ATMEKSV.22008.XRkuWJDx b/.coverage.DESKTOP-ATMEKSV.22008.XRkuWJDx
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/.coverage.DESKTOP-ATMEKSV.26464.XmAwipdx b/.coverage.DESKTOP-ATMEKSV.26464.XmAwipdx
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/.coverage.DESKTOP-ATMEKSV.26608.XOhHWLjx b/.coverage.DESKTOP-ATMEKSV.26608.XOhHWLjx
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/.coverage.DESKTOP-ATMEKSV.28232.XbgqjYTx b/.coverage.DESKTOP-ATMEKSV.28232.XbgqjYTx
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/.coverage.DESKTOP-ATMEKSV.29620.XFvzCgcx b/.coverage.DESKTOP-ATMEKSV.29620.XFvzCgcx
deleted file mode 100644
index e1f7e6f75f5aa9a7a33884193b67b7cc22082200..0000000000000000000000000000000000000000
Binary files a/.coverage.DESKTOP-ATMEKSV.29620.XFvzCgcx and /dev/null differ
diff --git a/.coverage.DESKTOP-ATMEKSV.3204.XyITjfkx b/.coverage.DESKTOP-ATMEKSV.3204.XyITjfkx
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/.coverage.DESKTOP-ATMEKSV.32192.XvDmKXMx b/.coverage.DESKTOP-ATMEKSV.32192.XvDmKXMx
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/.coverage.DESKTOP-ATMEKSV.5212.XQFhYiNx b/.coverage.DESKTOP-ATMEKSV.5212.XQFhYiNx
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/.coverage.DESKTOP-ATMEKSV.8636.XwlJQXIx b/.coverage.DESKTOP-ATMEKSV.8636.XwlJQXIx
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/.coverage.DESKTOP-ATMEKSV.8780.XTtoPmMx b/.coverage.DESKTOP-ATMEKSV.8780.XTtoPmMx
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/.coverage.DESKTOP-ATMEKSV.8936.XNLbUDNx b/.coverage.DESKTOP-ATMEKSV.8936.XNLbUDNx
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/CHANGELOG.md b/CHANGELOG.md
index d1669ae56def290bc636a0c6b39c71e9b1be0d40..daded68320a07869efaa6c5b2d643b97eaa110e7 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -17,6 +17,7 @@ Examples
 * Moved functions for sequential training from `Engine` to `SeqDesign`
 * Moved `hellinger_distance`, `logpdf`, `subdomain` into `surrogate_models/seq_design`
 * Early stop in `BayesInf` for `BayesModelComp`
+* Allow singular matrices in exploitation with `BayesActDesign` 
 
 Bug fixes
 * Import of `ExpDesign` allowed
diff --git a/src/bayesvalidrox/bayes_inference/bayes_model_comparison.py b/src/bayesvalidrox/bayes_inference/bayes_model_comparison.py
index dc66e1cf5322928c6f7cc16392b96f302bd6d04a..6374cdc01db0535bd255c88e8b6b8065eaba9112 100644
--- a/src/bayesvalidrox/bayes_inference/bayes_model_comparison.py
+++ b/src/bayesvalidrox/bayes_inference/bayes_model_comparison.py
@@ -484,7 +484,6 @@ class BayesModelComparison:
         for name in names:
             fig, ax = plt.subplots()
             for i, model in enumerate(model_names[1:]):
-                #print(model, i)
                 plt.plot(list(range(1, self.n_meas+1)),
                          model_weights_dict[name][i],
                          color=Color[i], marker='o',
diff --git a/src/bayesvalidrox/post_processing/post_processing.py b/src/bayesvalidrox/post_processing/post_processing.py
index 7953716513437060e767962e4e64318ae6cb8415..020695c7668a66f8073c76ea8a5fc43cf7b5f189 100644
--- a/src/bayesvalidrox/post_processing/post_processing.py
+++ b/src/bayesvalidrox/post_processing/post_processing.py
@@ -321,7 +321,6 @@ class PostProcessing:
 
             if len(name_util) == 0:
                 continue
-            print(seq_dict)
 
             # Box plot when Replications have been detected.
             if any(int(name.split("rep_", 1)[1]) > 1 for name in name_util):
@@ -494,8 +493,8 @@ class PostProcessing:
                         seq_values = np.nan_to_num(seq_values)
 
                         # Plot the error evolution for each output
-                        print(x_idx.shape)
-                        print(seq_values.mean(axis=1).shape)
+                        #print(x_idx.shape)
+                        #print(seq_values.mean(axis=1).shape)
                         plt.semilogy(x_idx, seq_values.mean(axis=1),
                                      marker=markers[idx], ls='--', lw=2,
                                      color=colors[idx],
diff --git a/src/bayesvalidrox/surrogate_models/engine.py b/src/bayesvalidrox/surrogate_models/engine.py
index ecc9e9485e53b2174ae5c9cfc8c7ebf1676aa5d0..330ac293884516f2eaa107c11d4e661bccfc6ba3 100644
--- a/src/bayesvalidrox/surrogate_models/engine.py
+++ b/src/bayesvalidrox/surrogate_models/engine.py
@@ -97,7 +97,6 @@ class Engine:
 
         # Read ExpDesign (training and targets) from the provided hdf5
         if ExpDesign.hdf5_file is not None:
-            # TODO: need to run 'generate_ED' as well after this or not?
             ExpDesign.read_from_file(self.out_names)
         else:
             # Check if an old hdf5 file exists: if yes, rename it
@@ -599,7 +598,6 @@ class Engine:
                     self.seqRMSEMean[strKey] = seqRMSEMean
                     self.seqRMSEStd[strKey] = seqRMSEStd
 
-        # return self.MetaModel
 
     # -------------------------------------------------------------------------
     def _normpdf(self, y_hat_pce, std_pce, obs_data, total_sigma2s,
diff --git a/src/bayesvalidrox/surrogate_models/sequential_design.py b/src/bayesvalidrox/surrogate_models/sequential_design.py
index d4004b8b8c60ce4ffa957f4855d462566630f8f5..878ac740214de987f5fea9e1389e01305d2d044b 100644
--- a/src/bayesvalidrox/surrogate_models/sequential_design.py
+++ b/src/bayesvalidrox/surrogate_models/sequential_design.py
@@ -533,8 +533,6 @@ class SequentialDesign:
             temp = totalScore.copy()
             temp[np.isnan(totalScore)] = -np.inf                # Since we are maximizing
             sorted_idxtotalScore = np.argsort(temp)[::-1]
-            print(sorted_idxtotalScore)
-            print(n_new_samples)
             bestIdx = sorted_idxtotalScore[:n_new_samples]
             if type(bestIdx) is int:
                 bestIdx = [bestIdx]
@@ -543,7 +541,6 @@ class SequentialDesign:
             if explore_method.lower() == 'voronoi':
                 Xnew = np.zeros((n_new_samples, ndim))
                 for i, idx in enumerate(bestIdx):
-                    print(explore.closestPoints)
                     X_can = explore.closestPoints[idx]
 
                     # Calculate the maxmin score for the region of interest
@@ -708,8 +705,6 @@ class SequentialDesign:
                 y_hat = {key: items[idx] for key, items in y_can.items()}
                 std = {key: items[idx] for key, items in std_can.items()}
 
-                # print(y_hat)
-                # print(std)
                 U_J_d[idx] = self.util_BayesianActiveDesign(
                     y_hat, std, sigma2Dict, var)
 
@@ -830,8 +825,7 @@ class SequentialDesign:
         logPriorLikelihoods = np.zeros(mc_size)
         for key in list(y_hat):
             cov = np.diag(std[key] ** 2)
-            print(key, y_hat[key], std[key])
-            # TODO: added the allow_singular = True here
+            # Allow for singular matrices
             rv = stats.multivariate_normal(mean=y_hat[key], cov=cov, allow_singular=True)
             Y_MC[key] = rv.rvs(size=mc_size)
             logPriorLikelihoods += rv.logpdf(Y_MC[key])
@@ -1284,7 +1278,6 @@ class SequentialDesign:
                 Phi[idx] = np.linalg.cond(M)
 
             else:
-                # print(var.lower())
                 raise Exception('The optimality criterion you requested has '
                                 'not been implemented yet!')
 
@@ -1325,7 +1318,6 @@ class SequentialDesign:
         for idx, out in enumerate(self.out_names):
 
             # (Meta)Model Output
-            # print(y_hat_pce[out])
             nsamples, nout = y_hat_pce[out].shape
 
             # Prepare data and remove NaN
diff --git a/src/bayesvalidrox/surrogate_models/surrogate_models.py b/src/bayesvalidrox/surrogate_models/surrogate_models.py
index b71040b405769617ab33fbb68d97d652c2e1d2d2..e56cfe40f1592b6d2389b9faf2cf160af0da0fad 100644
--- a/src/bayesvalidrox/surrogate_models/surrogate_models.py
+++ b/src/bayesvalidrox/surrogate_models/surrogate_models.py
@@ -1081,6 +1081,7 @@ class MetaModel:
                     text = f"$\\alpha={clf_poly.alpha_:.1f}$\n$"
                     f"\\L={clf_poly.scores_[-1]:.1f}$"
 
+                # TODO: save this figure and close it, do not show
                 plt.text(0.75, 0.5, text, fontsize=18, transform=ax.transAxes)
                 plt.show()
             print('=' * 80)