diff --git a/docs/uebung_ackley.docx b/docs/uebung_ackley_pt1_write_function.docx
similarity index 100%
rename from docs/uebung_ackley.docx
rename to docs/uebung_ackley_pt1_write_function.docx
diff --git a/docs/uebung_ackley_pt2_write_program.docx b/docs/uebung_ackley_pt2_write_program.docx
new file mode 100644
index 0000000000000000000000000000000000000000..7abc44ea334ebae410cd09f6de881b454ca80e42
Binary files /dev/null and b/docs/uebung_ackley_pt2_write_program.docx differ
diff --git a/mc_work/dorun.go b/mc_work/dorun.go
index 3ae3121fc990139b0bd50d9742bb36a59bd71bef..31f9954c2aedf54f5cc6487c5ffaa60d886114bb 100644
--- a/mc_work/dorun.go
+++ b/mc_work/dorun.go
@@ -199,7 +199,7 @@ func saveStep(cprm *cprm, n int, tmprtr float64, x []float32, fTrial float64) {
 // doRun does a Monte Carlo run.
 // We only need single precision for most things, except for function
 // values, but the interface to the plot and interface packages mostly
-// want double precision, so we have a lot of float64 that shoudl be
+// want double precision, so we have a lot of float64 that should be
 // float32.
 func singleRun(mcPrm *McPrm) (MCresult, error) {
 	var cprm cprm
diff --git a/mc_work/rdprm.go b/mc_work/rdprm.go
index a74e1a572de1897981ee2bb7dc045e4aadec5599..d91d2ce0eac34200e1554a30de12ddb72f6c3213 100644
--- a/mc_work/rdprm.go
+++ b/mc_work/rdprm.go
@@ -3,6 +3,10 @@
 // We have magic keywords like ini_temp.
 // These are stored in a map along with string values. These are then converted
 // to floats or ints and put into a structure or variable.
+// This is a superset of the requirements in the Uebung. We
+//   - hop over blank lines
+//   - ignore case
+//   - allow comments - anything after a hash (#)
 
 package mcwork