Very clever! I was sometimes astounded by my good luck (e.g. I got a 1 several times exactly when I needed it). The pre-generated levels, and particularly the last two, often relied almost entirely on getting the exact right number, which was less fun. With the other (and the randomised) levels, I could combine e.g. a 4 and a 3 to make a 1, which was both helpful and interesting.
Anyway, this was fun; nicely done.