#include<stdio.h>
#define W" |"
#define V W" | %.7s "
#define D(x)for(i=0,++j;i++<x;)
#define R L("%s.%1$s.%1$s",I);L(q^7?".%s.%1$s":"%2$s----.%1$s",I,I+3);L(". |\n|");D(30)d(n)
(*L
)()=printf;char*P
="_______ + _(\")_ _n_ $ . ____ __.==,_ .*. _ _ . . . _ _ |~| //'`\\ |=| , * j .&%$+* | _ | ('v') .==..W. .W. ... .-. _j_j_j_ /~\\ (_ . _) (\") |,| __/ \\__ /_%_/|--|XX|- /.\\ (O X O).i_i_i.( `v' ) | | //....\\ / \\ + . + .'''. */'\"'\\&| ($) |// \\\\.--' ||*| |*| '* ` //`); ||__| /~*~\\ / : \\ >( o )< | | `. .'|_|_| | _| | |_-_| / ^ \\ |-~~-~| \\ / Y ||()()| |(%)| . ' .{*=*=*}$\\._./%| \" o||\\ /|\\_____/|*| |*||_/\\*_| %% _|/$$|_/~*~~*\\(_/ \\_)( o )._|_|_. /.^.\\ |_|_|/ (____' (.-o-.) \\/ \\/ |_____| V _|_ ||_[]_| |___| ~~~~~~~ '._.' '%&*+$'| === | Y Y `=====''M' 'M'[_____]// CRIMBGLUFWDKPXHQJYASENTVO",*I
=" .-----------",*T
="_________";q
,i
,j
,k
,l
,g
;d
(o
){l
=~
-i
%5+j
*5;k
=7*l
-168*~
(i
>10)-(g
=7*(l
>17));if(q
=P
[672+l
]-65)q
>o
?q
^24?i
<16?L
(W
"%9c"W
,32):i
<21?L
(W
"%10d |",q
):i
<26?L
(W
"_%s_|",T
):L
("%15c",32):i
<16?L
(W
"%26c|",32):i
<21?L
(W
"%25d |",q
):i
<26?L
(W
"%s%1$s%s|",T
,T
+1):L
("%30c",32):q
^24?i
<6?L
(W
"\\%9.7s |",P
+7*l
-g
):i
<16?L
(V
"|",P
+k
):i
<21?L
(V
"|",P
+7*l
+504-g
):i
<26?L
(W
" |%s|",T
):L
(" \\|%10c",32):i
<6?L
(W
"\\%9.7s %7c%9c",P
+7*l
,'~','|'):i
<11?L
(V
"%s"W
,P
+k
," ~ MERRY ~ "):i
<16?L
(V
"%s |",P
+k
,"~ CHRISTMAS! ~"):i
<21?L
(V
"%9.7s "W
,P
+7*l
+504,P
+608):i
<26?L
(W
" |%s%1$s%s|",T
,T
+3):L
(" \\|%25c",32);i
%5||L
(W
"\n|");}f
(n
){L
(".");D
(77)L
("-");L
(".\n|",j
=-1);R
;R
;R
;R
;R
;D
(77)L
("_");L
("|");}
main
(){f
(24);puts("");f
(4);}
I2luY2x1ZGU8c3RkaW8uaD4KCiNkZWZpbmUgVyIgIHwiCiNkZWZpbmUgViBXIiB8ICUuN3MgIgojZGVmaW5lIEQoeClmb3IoaT0wLCsrajtpKys8eDspCiNkZWZpbmUgUiBMKCIlcy4lMSRzLiUxJHMiLEkpO0wocV43PyIuJXMuJTEkcyI6IiUyJHMtLS0tLiUxJHMiLEksSSszKTtMKCIuICB8XG58Iik7RCgzMClkKG4pCigqTCkoKT1wcmludGY7Y2hhcipQPSJfX19fX19fICAgKyAgICBfKFwiKV8gICBfbl8gICAgICQgICAgICAuICAgICBfX19fIF9fLj09LF8gIC4qLiAgIF8gICBfICAuIC4gLiAgXyAgIF8gICB8fnwgICAvLydgXFwgICB8PXwgICAsICAgKiAgICBqICAgLiYlJCsqIHwgIF8gIHwgKCd2JykgICAgLj09Li5XLiAuVy4gIC4uLiAgICAgLi0uIF9qX2pfal8gIC9+XFwgIChfIC4gXykgIChcIikgICAgfCx8ICBfXy8gXFxfXyAvXyVfL3wtLXxYWHwtICAvLlxcICAoTyBYIE8pLmlfaV9pLiggYHYnICkgIHwgfCAgLy8uLi4uXFwgIC8gXFwgICsgIC4gKyAgLicnJy4gKi8nXCInXFwmfCAoJCkgfC8vICAgXFxcXC4tLScgIHx8KnwgfCp8ICcqICBgICAgLy9gKTsgfHxfX3wgIC9+Kn5cXCAgLyA6IFxcID4oIG8gKTwgIHwgfCAgYC4gICAuJ3xffF98IHwgX3wgIHwgIHxfLV98ICAvIF4gXFwgfC1+fi1+fCBcXCAgIC8gICAgWSAgIHx8KCkoKXwgfCglKXwgICAuICcgLnsqPSo9Kn0kXFwuXy4vJXwgIFwiIG98fFxcICAgL3xcXF9fX19fL3wqfCB8Knx8Xy9cXCpffCAlJSAgICBffC8kJHxfL34qfn4qXFwoXy8gXFxfKSggIG8gICkuX3xffF8uIC8uXi5cXCB8X3xffC8gKF9fX18nICguLW8tLikgXFwvIFxcLyB8X19fX198ICAgViAgICAgX3xfICB8fF9bXV98IHxfX198IH5+fn5+fn4gJy5fLicgJyUmKiskJ3wgPT09IHwgIFkgWSAgYD09PT09JydNJyAnTSdbX19fX19dLy8gICAgIENSSU1CR0xVRldES1BYSFFKWUFTRU5UVk8iLCpJPSIgIC4tLS0tLS0tLS0tLSIsKlQ9Il9fX19fX19fXyI7cSxpLGosayxsLGc7ZChvKXtsPX4taSU1K2oqNTtrPTcqbC0xNjgqfihpPjEwKS0oZz03KihsPjE3KSk7aWYocT1QWzY3MitsXS02NSlxPm8/cV4yND9pPDE2P0woVyIlOWMiVywzMik6aTwyMT9MKFciJTEwZCB8IixxKTppPDI2P0woVyJfJXNffCIsVCk6TCgiJTE1YyIsMzIpOmk8MTY/TChXIiUyNmN8IiwzMik6aTwyMT9MKFciJTI1ZCB8IixxKTppPDI2P0woVyIlcyUxJHMlc3wiLFQsVCsxKTpMKCIlMzBjIiwzMik6cV4yND9pPDY/TChXIlxcJTkuN3MgfCIsUCs3KmwtZyk6aTwxNj9MKFYifCIsUCtrKTppPDIxP0woViJ8IixQKzcqbCs1MDQtZyk6aTwyNj9MKFciIHwlc3wiLFQpOkwoIiAgIFxcfCUxMGMiLDMyKTppPDY/TChXIlxcJTkuN3MgJTdjJTljIixQKzcqbCwnficsJ3wnKTppPDExP0woViIlcyJXLFAraywiICB+IE1FUlJZIH4gICIpOmk8MTY/TChWIiVzIHwiLFAraywifiBDSFJJU1RNQVMhIH4iKTppPDIxP0woViIlOS43cyAgICAiVyxQKzcqbCs1MDQsUCs2MDgpOmk8MjY/TChXIiB8JXMlMSRzJXN8IixULFQrMyk6TCgiICAgXFx8JTI1YyIsMzIpO2klNXx8TChXIlxufCIpO31mKG4pe0woIi4iKTtEKDc3KUwoIi0iKTtMKCIuXG58IixqPS0xKTtSO1I7UjtSO1I7RCg3NylMKCJfIik7TCgifCIpO30KCm1haW4oKXtmKDI0KTtwdXRzKCIiKTtmKDQpO30=