; merry christmas from pascal bourguinon
(loop with height = 18
for i below height
for w = (truncate (+ i (* (/ i 8) (sin (/ (* pi i) 2)))))
for l = (format nil "~A~V{*~}~A" (if (zerop (random 5)) "i " " ") (* 2 w) '(()) (if (zerop (random 6)) " i" " "))
do (format t "~VA~A~%" (- (+ 2 height) (truncate (length l) 2)) "" l)
finally (loop repeat 3 do (format t "~VA||||~%" height "")))
OyBtZXJyeSBjaHJpc3RtYXMgZnJvbSBwYXNjYWwgYm91cmd1aW5vbgoKKGxvb3Agd2l0aCBoZWlnaHQgPSAxOAogIGZvciBpIGJlbG93IGhlaWdodAogIGZvciB3ID0gKHRydW5jYXRlICgrIGkgKCogKC8gaSA4KSAoc2luICgvICgqIHBpIGkpIDIpKSkpKQogIGZvciBsID0gKGZvcm1hdCBuaWwgIn5BflZ7Kn59fkEiIChpZiAoemVyb3AgKHJhbmRvbSA1KSkgImkgIiAiICIpICgqIDIgdykgJygoKSkgKGlmICh6ZXJvcCAocmFuZG9tIDYpKSAiIGkiICIgIikpCiAgZG8gKGZvcm1hdCB0ICJ+VkF+QX4lIiAoLSAoKyAyIGhlaWdodCkgKHRydW5jYXRlIChsZW5ndGggbCkgMikpICIiIGwpCiAgZmluYWxseSAobG9vcCByZXBlYXQgMyBkbyAoZm9ybWF0IHQgIn5WQXx8fHx+JSIgaGVpZ2h0ICIiKSkp