; dobble
(define (dobble n)
(do ((i 0 (+ i 1))) ((= i n))
(do ((j 0 (+ j 1))) ((= j n))
(do ((k 0 (+ k 1)))
((= k n) (display (+ (* n n) i)) (newline))
(display (+ (* (modulo (+ (* i k) j) n) n) k))
(display " "))))
(do ((i 0 (+ i 1))) ((= i n))
(do ((j 0 (+ j 1)))
((= j n) (display (+ (* n n) n)) (newline))
(display (+ (* j n) i)) (display " ")))
(do ((i 0 (+ i 1)))
((= i n) (display (+ (* n n) n)) (newline))
(display (+ (* n n) i)) (display " ")))
(dobble 7)
OyBkb2JibGUKCihkZWZpbmUgKGRvYmJsZSBuKQogIChkbyAoKGkgMCAoKyBpIDEpKSkgKCg9IGkgbikpCiAgICAoZG8gKChqIDAgKCsgaiAxKSkpICgoPSBqIG4pKQogICAgICAoZG8gKChrIDAgKCsgayAxKSkpCiAgICAgICAgICAoKD0gayBuKSAoZGlzcGxheSAoKyAoKiBuIG4pIGkpKSAobmV3bGluZSkpCiAgICAgICAgKGRpc3BsYXkgKCsgKCogKG1vZHVsbyAoKyAoKiBpIGspIGopIG4pIG4pIGspKQogICAgICAgIChkaXNwbGF5ICIgIikpKSkKICAoZG8gKChpIDAgKCsgaSAxKSkpICgoPSBpIG4pKQogICAgKGRvICgoaiAwICgrIGogMSkpKQogICAgICAgICgoPSBqIG4pIChkaXNwbGF5ICgrICgqIG4gbikgbikpIChuZXdsaW5lKSkKICAgICAgKGRpc3BsYXkgKCsgKCogaiBuKSBpKSkgKGRpc3BsYXkgIiAiKSkpCiAgKGRvICgoaSAwICgrIGkgMSkpKQogICAgICAoKD0gaSBuKSAoZGlzcGxheSAoKyAoKiBuIG4pIG4pKSAobmV3bGluZSkpCiAgICAoZGlzcGxheSAoKyAoKiBuIG4pIGkpKSAoZGlzcGxheSAiICIpKSkKCihkb2JibGUgNyk=