(defun fortunecookie ()
(let* ((id (read-line))
(time-list (multiple-value-list (decode-universal-time (get-universal-time))))
(year (+ 1900 (nth 5 time-list)))
(month (nth 4 time-list))
(day (nth 3 time-list))
(date-str (format nil "~4,'0d~2,'0d~2,'0d" year month day))
(combined (concatenate 'string id date-str))
(seed (reduce #'+ (map 'list #'char-code combined)))
(result (nth (mod seed 5)
'("大吉!挑戦を続けよう"
"中吉!今日は集中の日"
"小吉!まずは一歩"
"吉!粘り勝ちを目指そう"
"凶…でも明日がある!"))))
(format t "入力:~A~%結果(~A):~A~%" id date-str result)))
(fortunecookie)
KGRlZnVuIGZvcnR1bmVjb29raWUgKCkKICAobGV0KiAoKGlkIChyZWFkLWxpbmUpKQogICAgICAgICAodGltZS1saXN0IChtdWx0aXBsZS12YWx1ZS1saXN0IChkZWNvZGUtdW5pdmVyc2FsLXRpbWUgKGdldC11bml2ZXJzYWwtdGltZSkpKSkKICAgICAgICAgKHllYXIgKCsgMTkwMCAobnRoIDUgdGltZS1saXN0KSkpCiAgICAgICAgIChtb250aCAobnRoIDQgdGltZS1saXN0KSkKICAgICAgICAgKGRheSAobnRoIDMgdGltZS1saXN0KSkKICAgICAgICAgKGRhdGUtc3RyIChmb3JtYXQgbmlsICJ+NCwnMGR+MiwnMGR+MiwnMGQiIHllYXIgbW9udGggZGF5KSkKICAgICAgICAgKGNvbWJpbmVkIChjb25jYXRlbmF0ZSAnc3RyaW5nIGlkIGRhdGUtc3RyKSkKICAgICAgICAgKHNlZWQgKHJlZHVjZSAjJysgKG1hcCAnbGlzdCAjJ2NoYXItY29kZSBjb21iaW5lZCkpKQogICAgICAgICAocmVzdWx0IChudGggKG1vZCBzZWVkIDUpCiAgICAgICAgICAgICAgICAgICAgICAnKCLlpKflkInvvIHmjJHmiKbjgpLntprjgZHjgojjgYYiCiAgICAgICAgICAgICAgICAgICAgICAgICLkuK3lkInvvIHku4rml6Xjga/pm4bkuK3jga7ml6UiCiAgICAgICAgICAgICAgICAgICAgICAgICLlsI/lkInvvIHjgb7jgZrjga/kuIDmrakiCiAgICAgICAgICAgICAgICAgICAgICAgICLlkInvvIHnspjjgorli53jgaHjgpLnm67mjIfjgZ3jgYYiCiAgICAgICAgICAgICAgICAgICAgICAgICLlh7bigKbjgafjgoLmmI7ml6XjgYzjgYLjgovvvIEiKSkpKQogICAgKGZvcm1hdCB0ICLlhaXlipvvvJp+QX4l57WQ5p6c77yIfkHvvInvvJp+QX4lIiBpZCBkYXRlLXN0ciByZXN1bHQpKSkKCihmb3J0dW5lY29va2llKQo=