# Pen & paper solution The input program is composed by 14 repeated iterations with slight variations on 3 particular instructions: - I4: `div z A` where `A` can be either 1 or 26; - I5: `add x B` where `B` can be any number; - I15 `add y C` where `C` can be any number. Below is the table of the three sets of values for each iteration: | A | B | C ---+----+-----+---- 1 | 1 | 13 | 6 2 | 1 | 11 | 11 3 | 1 | 12 | 5 4 | 1 | 10 | 6 5 | 1 | 14 | 8 6 | 26 | -1 | 14 7 | 1 | 14 | 9 8 | 26 | -16 | 4 9 | 26 | -8 | 7 10 | 1 | 12 | 13 11 | 26 | -16 | 11 12 | 26 | -13 | 11 13 | 26 | -6 | 6 14 | 26 | -6 | 1 Each iteration `i` can be modelled with a function `f_i(z,a,b,c)` where `a`, `b`, `c` are the parameters for the given iteration and `z` is the output from the previous iteration (or 0 otherwise). Function `f_i` can be defined as follows: ```{#iteration} f_i(z,1,b,c) = z if (z % 26) == i - a f_i(z,1,b,c) = 26*z + (i + b) otherwise f_i(z,26,b,c) = z/26 if (z % 26) == i - a f_i(z,26,b,c) = 26*(z/26) + (i + b) otherwise ``` **Note:** since we are dealing with integer division we cannot simplify `26*(z/26)` with `z`.