自定义 banner
在Spring Boot中,你可以通过定制Banner来个性化你的应用程序启动时的输出。Banner是一个在应用程序启动时显示的ASCII艺术字形式的标志,用于增加应用程序的识别度和个性化。
以下是一些定制Banner的方法:
创建自定义Banner文件:
在resources目录下创建一个名为banner.txt的文本文件,使用ASCII字符绘制你想要的Banner图案。Spring
Boot将在应用程序启动时读取该文件并显示Banner。可通过 http://patorjk.com/software/taag 、https://www.ascii-art-generator.org/
生成
示例:
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0OkkkkkOOO00KKXXXXNNNNNNNNXXK0kxdoooodk0KXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0OkxxxxxxxkkOO0KKXXXXXNNNXXK0Oxdllllllox0KXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0OkddoooooodddxkOO0KXXXXXXK0OxdolccccccldO0XXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0OxdoollllllllloodxkOO00KKKOkdlccc::::::cok0KXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0Oxdollccccccccccclloddxkkkkdocc:::;;;;;::ldO0XXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0Oxdolcc::::::;;;::::ccllodddoc::;;;;;;;;;:coxOKXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0Oxdocc::;;;;;;,,,,,;;;;;:::cc::;;,,,,,,,;;;:ldkO00KKKKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNK0Oxdlc::;;;;,,,,,''''',,,,,,,,,,,''',,,,,,,,;:codxkkOOO00KXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOkdlc::;;,,,,,''''''''''''''..........''''',,;:cloodddxxkO0KXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOxolc:;;,,,,,'''''''...................'''',,,,;:ccllloddxO0KXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0Oxol::;;,,,'''''''''.....................'''',,,;;::ccclodkO0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0Oxol:;;,,,'''''''''''''''''''''''''.......''',,,,,;;;::cldkO0KXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOxdlc:;,,,''''''''',,,;;;;;;;:::::;;,'.....'''',,,,;;:clodkOKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXX0Oxdlc:;,,''''''',;;::clllllllooooolc:,''.....'',,;;:clodkO0KXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXX0Okdoc:;,''''',,;:cllooooddddxxxxddolc;,,'....'',;cldxkO0KKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXK0kxoc:;,'''',:cloolc:::looolllloooolc:;,'.....,;cdk0KXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXK0kxoc;,''';:loddol:;;;:c:;''',;:loolcc;,'....';cdk0XXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0kdl:;,,;:loddddo:;;:lll:;,,,;:cooollc:,'...';cdO0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXKOkdc;,,:lodxxxddlccldddolccccloooddool:,'..,;ldOKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOxl:,;codxkkxxdddddddxxddddddddddddddl:,'',:ox0KXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOo:;;cdkkkkxoooooooooolcclodxxxxxxxxoc;,,;ldOKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0xl::lxkOkdlccc:;'''',;;;;coxkkkkkkkdl:;;cok0XXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0xlloxkOkocclc:,''',;:cc::cldxxxxkxdlccclxOKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKOxodxkkxolool::::;;:cllc:;;:cooddxdooloxOKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOxxkkkxoc;,,;::;,'''',;;;::ccloddddddxk0KXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0OOOOkxdl:',:oolc;,..',;:clooooddddddkOKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK000Okxdo:,,;:;,'..';ccclooddddolllox0KXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXKK0Okxxdlcccc:;;;:cccclloodolc:;;:oOKXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0kxxdddoooolc:;:cccllooolc;,'..':oxOO0KKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKkoooddoollc::;:cllloool:;,'......';:lodkO0KXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKkl;;:loollc:::clloooolc;,'............',:codk0KXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOxl,..';:llllllllooollc;,...................',:lxO0XXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOkdc;'.....';clllllllc::;,............... .. ....,cdOKXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXKKXXKOxl:'..........',;::::;,'................. ..':dOKXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXK0OOkOO0KKOo;'................'''................ . ..,cdOXXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXKK00Okxolcclx0K0d;............................. .......... ...,lxOKXXXKK00KXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0Okkxdlc:,'...;d0K0o'. . .......... ........... . ...,lxOKXXK0kxoodk0KXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXK0Oxoc:;'........;d0K0o,. ......... . ....... ..,lxOKKK0Oxl;,',:oxOKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0Oxl:,....... ....;d0K0d;. ....... ......... .,cx0KKK0Oxl,.....,:ok0KXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXKOxoc;'.... .;dOKKk:.. ..... .... . .'cdOKKK0Od:,........,cdOKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXX0Oxl:,..... .'lkKKOl'. ..... ...... ...... .':dOKKK0ko:'..........';ok0XXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0Odl;'....... ..cx0KOo,. ..... .......... ..;ok0KK0ko;..............,cdOKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOdc;'......... .;dO00d;. ..... ........ .'cx0KK0xl;.................;lk0XXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0xl;'.......... .,lk00d;. ..... ....... .;oO0K0kl;...................':dOKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXKOd:'.......... ..cxOOx:. ...... ...... ..:x000ko;......................,cx0KXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXK0Oko:'.. . ..;dOOkc.. ...... .. ..... .'lk00Od:'............... ...:dOKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKKOkxoc;'.. .,lk0ko,. ...... ..... .,oOK0xc,............ ..;oOKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOkdl:,..... .'cxOOd:. ....... .,oO0Oo;.......... ..,oOKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXKOkdl:'....... ..:dOOxc.. .',,'.. .'oO0xc,........ ..:d0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOkdl:'........ .,lkOkl,. .'::,.. .'lkOxc'... ...:xKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNK0xo:,..... ..cxOko;. .';;,.. ..ckOkl'.. ..'lOXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOxl;'... ...... .,okkd:.. ..''.. .;dOko,. ..;d0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXX0xl,.... ...,:cc:,... ..:dkxc'. ..... .'lkOd:. .'ckKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXNXKkl;..... ..';cdxkOOkxl;'.. .'cdxo,. .:dkkl,. ..;oOXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXK0d:... ...,coxO0KKKKKK0xo:,'...;oxdc'. .,lxkd:. .'ckKNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXKKK000Okl,.. ..;cdkO0KKXXXXXXXK0Okdocccoxkd:.. .cxkko,. ..;oOXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXKKKK00OOkkxo:.. ..';ldkO0KKXXXNXNNNNXXXXKK0OOOkkko;.. .;okkxc.. ..:x0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXKKK00OOkxdoll:'.. ..,:ldkO0KKXXXXNNNNNNNNNNNNNXXXKK0Oxo;.. .'cxkko;. ..'ckKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXKKKKK00OOkxdol:;,'... ..,:odkO0KKXXXXNNNNNNNNNNNNNNNNNNNXXKOko;.. .;okkxc'. .'cx0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXKKK000OOOkkxdol:,'..... ...,:odkO0KKXXNNNNNNNNNNNNNNNNNNNNNNNNNXK0ko:'. .'lxkxo,. ..'cxKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXKK000OOOkxxdoolc:,.... ...';coxkO0KKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOxo:'. .:dkkd:. ..'ckKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKK00OOOkkxdolc;;,,'.... ..';cldkOO00KXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOxl;. .,okkdc'. ..,lOKNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXK00OOkxxdlc:;'........ ....,:ldxkO00KKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOxo;.. .:dkxo;. ..;d0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXK00Okxddoc:;'...... ... ....',;codxkOO0KKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKOxoc,. .,lxxdc'. ..:xKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKK0Okxdol:;,.......................',;:cloxkOO00KKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0kxdl,.. .cdkxl,. .,oOXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK00Okxoc:,'............'''''......',:codxkkO00KKKXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNK0OOxl;.. .:dxxo:. ..:x0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0Okxdoc;'.........'',,;;;;;;,,,,,,;:codkOO000KKXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0Okoc;.. .:dxxdc'. .'cx0KXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKK0Okxdlc;,'.....',,;;::::::::::::::clodxkO00KKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKK0kdc,. .,lool;.. ..'cdOKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK00Okddolc:;,,'',;;:cccllllllcccccccloodxkO00KKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXKOxc'.. ..;::,.. .':dOKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXK0OOkxdoolllc:::::ccllooooooooollllloodxxkOO0KKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXKkl,... ..',,'... .':dOKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0OOkkxxddddoolccllllooooooooooooooooodddxxkkO0KKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKd:,... .............'''......... ..'cx0KXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0OOkkkxxddddooollooooooddddddddddooooodddddxxkOO0KKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKxc;,.........................''''''''''''''''................... ..,lk0XXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0OkkkkkxxdddddooooooooddddddddddddddoodooooooddxkkOKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0dc:,,''''''''''''''''',,,,,,,,,,,,,'''''''''''.................... ..;oOKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0OkkkkkkxdddddddddoooddddddddddddddddooooollllloodkOKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOoc:;,'',,,,,,,,,,,,;;;;;;;;;;;;;;;,,'''''''''''''''........''........ ..:dOKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0Okkkkkxxddddddddddooddddddddoddddddddooolllllllllox0KXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXK0Okdlc:;,,,,;;;;;;;;;;;;;;;;;;;;;;;;;;,,''''''''',,,,,,''.....'''''',,... ..'cdO0KXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0Okkkkkxdddddddddddddddddddddooooooooooolllllccccclox0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0Okxdolccc::;;,,;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,',,,,,,,,,,,;;,,'....''',,:cc;... ..,cdkO0KXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOkkkkkxdooooodddooooooddddooooooooooooollllccccc:clok0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOxolc:::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,,,,,,,,,,;;;;;,'...'',,;cool;... ..':oxO0KXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0Okkkkxdoolloooooooooooooooooooooooooollllccccc:::cldOKNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKOdlc::::::::::::;;;;;;;;;;;;;;;;;,,,,;;;;;;;;;;,,,,,,,,,,,,,;;;;;,''''''',;ldkxl:'... ..';lxO0KXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0Okkkkxdollllooooooooooooooooooooolllllllccccccc:::cokKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKOdlc:::::::::::;;;;;;;;;;;;;;;;;;,,,,;;;;;;;;;;;;,,,,,,,;;;;;;;;;,,,'''',,;lxOOxoc,... ...;lxO0KXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOkkkkxdolllllllllllllllllllllllllllllllcccccccc::ccox0XXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0kocc:::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,,,,,;;;;;;;;;;;;;,,,,,,,,;:ok00Okdl;'... ..;lxOKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOkkkkxdollllllllllllllllllllllllllllccccccc:::::::clx0XXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKkdlc::::::::;;;;;;;;;;;::;;;;;;::::::;;;;;;;;,,,,;;;;:::::::::;;;,,,,;;;;:oOKXK0kxoc;'... ...;okOKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0Okkxxdoolllllllllllllllccccccccccccccccccc:::::::cok0XXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0xlc::::::::;;;;;;;;;;;:::::::::::::::;;;;,,,,,;;::::::::::::::::;;;;;;;;:coOXXXK0Okxoc;'. ..':dk0KXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOkkkxddoolllllccccccccccccccccccccccccccc:::::::cldkKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0xlc:::::::::;;;;::::::::::::::::::::;;;;;;,,;;::::::c::cccc:::::::;;;;;;;:cdOXNNXKK00Oxl;'.. ..,lxO0KXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0Okkxddoollccccccccccccccccccccccccccc:::::::::cldxOKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOxoc:::::::::::::::::::::::::::::::::;;;;;;:::::cccccccccccccccc:::::;;;;:::lkKXNNNXXKK0Oxl;... ..':dk0KXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXX0Okkxddolllccc::ccccccccccccccc::::::::::::::cldxO0KXNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOxolcccccccccc:::::::::::::::::::::::;;;;;:::ccccccccccccllllccccccc:::::::::lx0XNNNNNXXXK0Oxc,.. ..;lxOKXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0Okxdoollccc:::::::::::::::::::::::::::::clodxO0KKXNNNNNNNNNNNNNNNNNNNNNNNNNNX0kxollcccccccccccc:::::::::::::::;;;;;;;::::ccccccclllllllllllllllcccccc:::::::lx0XNNNNNNNNXXK0kdc'.. .':dO0KXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXK0Okxdolllcc:::::::::::::::::::::::::::ccloxkO00KXXNNNNNNNNNNNNNNNNNNNNNNNNX0kdollcccccccccccccc:cc:c::::::::::::::::::ccccllllllllllllllllllllllccccccc::::ldOXNNNNNNNNNNXXK0ko:'.. ..;ok0KXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXK0kxxdollc::::::::::::::::::::::::ccclodxkO00KKXXNNNNNNNNNNNNNNNNNNNNNNXKkdollccccccccccccccccccccccc:::::::::::::cccccccccllllllllllllllllllllllccccccc:cdOKNNNNNNNNNNNNXK0Oxo:'.. ...;lx0KXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
XXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXK0Okxxdolc:::::::::::::::::::::clloodxkOO00KKXXXNNNNNNNNNNNNNNNNNNNNNXOxollcccccccccccccccccccccccccccccccccccccccccccccccccccllllllllllllllllllllccccccokKXNNNNNNNNNNNNXK0Okxl;... ...,cxO0KXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
XXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXK0Okkxollcccccccccc::::cccclloodxxkOO0KKKKXXXNNNNNNNNNNNNNNNNNNNNX0kdllllccccccccccccccccccccc:ccccccccccccccccccccc:::::cclllllllooooooooolllllcccccldOXNNNNNNNNNNNNNXXK0Okdc'.. ...'cdO0KXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXK0OkkxddddoooooolllloooodddxxkkOO00KKKXXXXNNNNNNNNNNNNNNNNNNNNKOxollllllccccccccccccccccc:cc:::::::::::::::::::;;;;;::ccllllooooooooooooooolllccccclx0XNNNNNNNNNNNNNNXXK0Odc,.. ...':dO0KXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXK0OOOkkkkxxxxxxxxxxxxxkkkkOO000KKKXXXXNNNNNNNNNNNNNNNNNNNNXKkdollllllllccccccccccccccc::::::::::;;;;;;;;;;;;;;;;;;::cllloooooooooooooooooolllccccoOKNNNNNNNNNNNNNNNNXXKOxc,.. ....':dO0KXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXK0000OOOOOOOOOOOOOOOOO0000KKKXXXXNNNNNNNNNNNNNNNNNNNNNNX0kolllllllllccccccccccccc::::::::::;;;;,,,,,,,,,,,;;;;;;:cclllooooooooooooooooollllccclx0XNNNNNNNNNNNNNNNNNXKOxc,.. ...':dO0KXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXKKKKKKK000000000000KKKKKKXXXXXNNNNNNNNNNNNNNNNNNNNNNXKkdllllllllllcccccccccccc:::::::::;;;,,,,,,,,,,,,,,,;;;::ccllloooooooooooooooooollllcclokKNNNNNNNNNNNNNNNNNNXKOxc,. ..':dO0KXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXXKKKKKKKKKKKKXXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNXKOdlcllllclccccccccccccccc::::::;;;;;,,,,,,,,,,,,,,;cloolllllloooooooooooooooooolllccclox0XNNNNNNNNNNNNNNNNNNXKOxc'. ...:dk0KXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXNNXXXXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKOxlccllllccccccccccccccccc:::;;;;;;;,,,,,,,,,,,,;:cdk000kdollooooooooooooooooooolllcccldOKNNNNNNNNNNNNNNNNNNNXKOxc'.. ...:ok0KXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0xoccclllccccccccccccccccc::::;;;;;;,,,,,,,,,,;:clxOKXNXKOdolloooooooooooooooooollllcclox0XNNNNNNNNNNNNNNNNNNNXKOxc,...........':okOKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0koccccclcccccccccccccccccc::::;;;;;,,,,,,,,,,:lxO0KXNNNXKkdolloooooooooooooooooolllcccldOXNNNNNNNNNNNNNNNNNNNNXKOdc,'......''',;:oxO0KXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOdlccclcccccccccccccccccc::::::;;;;;,,,,,,,,;cx0XXXNNNNNXKkoooooooooodddooodoooooollcclokKXNNNNNNNNNNNNNNNNNNNXXKOdl:;;;;;;;::::cloxO0KXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKOdolccllcccccccccccccccccc:::::;;;;;,,,,,,,,:oOKXNNNNNNNNX0xoooooodddddddddddooooolllccox0XNNNNNNNNNNNNNNNNNNNNXXKOxocccclllooooooodkO0KXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXOdolccllccccccccccccccccc::::::;;;;;,,,,,,,,:dOXNNNNNNNNNNX0xooooodddddddddddoooooolllclxOXNNNNNNNNNNNNNNNNNNNNNXXKOxdooddxxxxxxxdddxkO0KXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOdollcllcccccccccccccccc:::::::;;;;,,,,,,,,;cx0XNNNNNNNNNNNXOxooooodddddddddooooooollllldOKNNNNNNNNNNNNNNNNNNNNNNXX0OkxxkkOOOOOkkkxxxkkO0KKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKOdllllcccccccccccccccccc:::::;;;;;;,,,,,,,,:okKXNNNNNNNNNNNNXOdooooodddddddddoooooollllllx0XNNNNNNNNNNNNNNNNNNNNNNXX0OOOO00KK000OOkkxxkkkO0KXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXOdollllllcccccccccccccc:::;;;;;;;;,,,,,,,,:lx0XNNNNNNNNNNNNNNKOdooooodddddddddoooooolllllox0XNNNNNNNNNNNNNNNNNNNNNNXXK0000KKXKKK00OOkxxxkkO0KXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0xollllllccccccccccccc:::::;;;;;,,,,,,,,,;lxOKXNNNNNNNNNNNNNNNKkdoooooooodddddoooooollllllox0XNNNNNNNNNNNNNNNNNNNNNNXXKKKKXXXXXXKK0OOkkxxxkkO0KXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0xolcclcccccccccccccc:::::;;;;;;,,,,,,,;:lxOKXNNNNNNNNNNNNNNNNXKkdooooooodddddddoooooollllcld0XNNNNNNNNNNNNNNNNNNNNNXXXXXXXXXXXXXXK0OOkxxxxxkOKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKkolclcccccccccccccc::::::;;;;;;,,,,,,;:oxOKXXXNNNNNNNNNNNNNNNNXKkdooooooddddddoooooolllccccld0XNNNNNNNNNNNNNNNNNNNNNNXXXXXXNNNNXXKK0OkxxdddxO0XXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOdllclccccccccccccc::::;;;;;;;;,,,,,;:ok0KXXNNNNNNNNNNNNNNNNNNNX0kdooooooooddddoooooollcc:::cdOXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXK0Okxxxddxk0KXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKOxollccccccccccc:::::::;;;;;;;;;;,,,:lx0XXNNNNNNNNNNNNNNNNNNNNNNX0kdoooooooooooooooollllcc:::cdOXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXK0OkkxxxxO0KXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0xolcllcccccccc::::::::;;;;;;;;;;;,;:oOKXNNNNNNNNNNNNNNNNNNNNNNNNXKOdolllllllllllllllllccccc::coOKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXK0OOOOOO0KXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0kolccccccccc::::::::;;;;;;;;;,;;;;;cd0XNNNNNNNNNNNNNNNNNNNNNNNNNNXX0kolllllllllllllccccccccccccldO0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXKK0000KKKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0kdllcccccccc:::::::;;;;;;;;;;;;;;;:lx0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0xolllcccllccccccccccccccccclox0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXKKKKKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKkdllcccccccc::::::::;;;;;;;;;;;,,;:okKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0xlcccccccccccccccccccccccccldkKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXXXXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKOxolllccccccc::::::::;;;;;;;;;;;;;cdOKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKOdlcccccccccc::::cccccccccclok0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXXNNNNNNNNNNNNNNNNNNNNNNNNNXOxolllcccccccc::::::::;;;;;;;;;;;:lxKXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOdolcccccc:::::::cc:::cccccldOKNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXNNNNNNNNNNNNNNNNNNNNNNNNKkolcccccccccc::::::::;;;;;;;;;,;:lxKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXK0xdlcccc:::::::::::::::ccccldOXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXNNNNNNNNNNNNNNNNNNNNNNKkoccccc::::::::;;;;;;,,,,,,,,,,,;lkKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKkdlc:::::::::::::::::cccccldOXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXNNNNNNNNNNNNNNNNNNNNXOdlc::::::;;;;;;,,,,,''''''',,',,:oOKNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKkoc:::::::::::::::::::cccclx0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXXNNNNNNNNNNNNNNNNNNKkoc::::;;;;;;,,,,,,''''''''''''',:oOKNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXOdl::::::::::::::::::::ccccokKNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXNNNNNNNNNNNNNNNNXKkoc:::;;;;;;,,,,,,,,''''''''''',;:okKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0koc::::::::::::::::::::ccclx0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXNNNNNNNNNNNNNNNXKkoc:::;;;;,,,,,,,,,,''''',,,,,,,;:okKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOdl::::::::::::::::::::ccccokKNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXXNNNNNNNNNNNNNXKOxlc::;;;;;;;;,,,,,,,,,,,,,;;;,,;:lkKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKOdc::::::::::::::::::ccccclx0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXXNNNNNNNNNNNNXKOdc::;;;;;;;;,,,,,,,,,,,;;;;;;;:cox0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXOdc:::::::::::::c:::cccccldOXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKK000000000000000KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXNNNNNNNNNNNNX0xlc:;;;;;;;;,,,,,,,,,,;;;;;;;:::lx0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKOoc::::::::::::cc:::cccccokKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK0KKKKKKKKKXXXNNNNNNNNNNNXKOdc:;;;;;;;;,,,,,,,,,,;;;;;;;:::lx0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKkoc:::::::::::cc::::cccclx0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXNNNNNNNNNNNX0xl::;;;;;;,,;;;,,,;;;;;;;;:::::lx0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0xl::::::::::::cc:::ccccldOXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK0KKKKKKKKKKKKKKXXXNNNNNNNNNXKkoc:;;;;;;;;;;;;;;;;;;;;:::::::lx0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKkoc::::::::::::::::::cccokKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXNNNNNNNNNKOdl::;;;;;;;;;;;;;;;;;;::::::::lx0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0xl::::::::::::::::::ccclx0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK00KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXNNNNNNNNX0xlc:;;;;;;;;;;;;;;;;;::::::::cox0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKkoc::::::::::::::::::ccldOXXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK0000000000000000000000000000KKKKKKKKKKKKKXXXNNNNNNNNKOdc::;;;;;;;;;;;;;;;;;:::::::cokKNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0dl::::;;;;;;::::::::cccokKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK00000000000000000000000000000KKKKKKKKKKKKKKKXXNNNNNNNNX0xl::;;;;;;;;;;;;;;;;;:::::::coOKNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKkoc::;;;;;;;;:::::::::cok0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK00000000000000000000000000000KKKKKKKKKKKKKKKKKXXXNNNNNNX0koc:;;;;;;;;;;;;;;;;;;;;::;:cdOXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNX0xl::;;;;;;;;:::::::::clx0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
XXKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK0000000000000000000000000000KKKKKKKKKKKKKKKKKKKKXXXXXNNNXKkoc::;;;;;;;;;;;;;;;;;;;;;;:cdOKNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXKkoc:;;;;;;;;;::::::::ccdOKNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
XXXXXKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK00000000000000000000000000000KKKKKK00000KKKKKKKKKKKKXXXXNNXKOdc:::;;;::::;;;;;;;;;;;;;;:cdOKNNNNNNNXXNNNNNNNNNNNNNNNNNNNNNNNNNX0xl:;;;;;;;;;;;:::::::cokKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNXXXXKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK000000000000000000000000KKKKKKKKKKKKKKKKKKKKKKKKKKKXXXNXXOdlc::::;:::;;;;;;;;;;;;;;;:cdOKNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKOoc;;;;;;;;;;::::::::clx0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNXXXXKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXXX0xlc:::;;;;;;;;;;;;;;;;;;;;;cdOKNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXOdc;;;;;;;;;::::::::::cdOKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNXXXXKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKXXXXK0xlc::;;;;;;;;;;;;;;,,,;;;;;cd0XNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNXOdc:;;;;;;;:::::::::::cokKXNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
XXXXXXXXXXKKKKKKKKKKKKKKKKKKKK00000000000000000000000000000000000000000000K000000000000000000000000000000KKKKKXKOxlc:;;;;;;;;;;;;;;;;;;;;;;:lx0XXNXXNNNNNNNNNNNNNNNNNNNNNNNNNNXKOdc:;;;;;;;:::::::::::clx0KXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNNNXXXXXXXNXXXXXXXXXXXNXXNNNXNNNNNNNN
KKKK0000000000000OOOOOOO00OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO000K0kdl::;;;;;;;;;;;;;;;;,,;;;;:lxO0KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKOxoc::;:;:::::::::::::::cdk0KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK
000000OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO00Okoc::;;;;;;;;;,,,;;;,,;;;;;:ldkO00000000000000000000000000000Oxocc:::::::::::::::::::coxO0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO00Oxoc:;;;;;;;;;,,,;;;;;,,;;;;:coxOOOOOO0000000000000000000000OOxolcc::::::::::::::::::clxO00000000000000000000000000000000000000000OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOkxlc:;;;;;;;;,,,;;;,;;,;;;;;;:ldkOOOOO00000OOO0000000000000Okxolccccc::::::::::::::::ldO000OOOOOOOOOOOO00OOO00000000000000000000OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOkdl::;;;;;;;;;;,,,,;;,,;;;;;;:ldkOOOOOOOOOOOOO000000000O00OOxollcccccccccc::::::::::ldkO00OOOOOOOOOOOOOOOOOOOOOOOOO0000000000000OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOkdl::;;;;;;;;;,,,;;,,;;;;;;,;:ldxxxddxkkOOOOOOOOOO0OOOOO0OOkdolllllllcccccc::::::::cokO0000000000000000000000000O000000000000000OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO00OOOxol::;;;;;;,,,;;,,,,;;;;;;,,;;::::;:lxkOOOOOOOOOOOOOOOO00OOkxdddddddolcc::;;;;;;,;coxOOOO00000000O00000000000000000000000000000OOOOOOOOOOO0000O000000000000000000000000000000000000000
OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO0000000OOxoc:::;;;;;;;;;;;;,,,,,;;,,,,'''..'cdkOOOOOOOOOOOOOOOO0OOOOOOOOOOOOxo:,''''.....':okOOOOOOOOOOOOOO0000000000000000000000000000OOOOO00OOO000000000000000000000000000000000000000000000
OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO000000000Okdoc::;;;;;;;;;;;,,,,,,''''........;okOOOOOOOOOOOOOOOO0OOOOO000000Okl;...........;lxOOOOOOOOOO00000000000000000000000000000000000OO00OOO000000000000000000000000000000000000000000000
OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO0000000000OOkdlc::;;;;;::::;,''........ ..'cdkOOOOO00OOOOOOOOOOOO000000000kl,...........'cdkOOO000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO00OO0000000OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO0000000000000OOOOkdlccccclloooc;..... ...;lxOOOOOOOOOOOOOOOO000000000000kl,............;lxOOO000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO00000000000000O00000000OOOOOOOOOOOOOOOOOOOOO0000OOOOOOOO000000000000000OOOOOOOOOOkxddooodxkkxdl;..... ...':okOOOOOOOOOOOOOO0000000000000kl,............,cxOOO000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
-
使用自定义Banner图像文件:
如果你希望使用图像作为Banner,可以创建一个名为banner.jpg
或banner.png
的图像文件,并将其放置在resources目录下。Spring
Boot将在启动时显示该图像文件作为Banner。
-
使用代码生成Banner:
你还可以使用代码生成Banner,通过编写Java代码来定义你的Banner图案。
示例:
@SpringBootApplication
public class SpringbootStudy2023Application {
public static void main(String[] args) {
SpringApplication run = new SpringApplication(SpringbootStudy2023Application.class);
// 优先级递减:banner.png/jpg 、banner.txt 、代码形式 banner
// banner.png/jpg 与 banner.txt 可同时展示,两者存在一个即可将代码形式 banner覆盖
run.setBanner((environment, sourceClass, out) -> {
out.println("******************************");
out.println("* j n t m *");
out.println("******************************");
});
// run.setBannerMode(Banner.Mode.OFF);
// run.setBannerMode(Banner.Mode.CONSOLE);
// run.setBannerMode(Banner.Mode.LOG);
run.run(args);
}
}
在上述示例中,我们使用setBanner方法自定义了Banner输出的逻辑。在这里,我们简单地打印了一个自定义的Banner文本。
关闭 Banner
要在Spring Boot应用程序中关闭Banner,可以使用SpringApplication类的setBannerMode()
方法。这个方法允许你设置不同的Banner.Mode选项来控制Banner的显示行为。
以下是几种常见的选项:
关闭Banner:
run.setBannerMode(Banner.Mode.OFF);
在上述示例中,我们通过将Banner.Mode设置为OFF来关闭Banner的显示。
控制台模式:
run.setBannerMode(Banner.Mode.CONSOLE);
使用CONSOLE模式会在控制台上显示Banner,默认选项。
日志模式:
run.setBannerMode(Banner.Mode.LOG);
使用LOG模式会将Banner输出到日志中,通常是在应用程序启动时的日志中。
通过设置Banner.Mode来选择合适的模式,你可以根据需要控制Banner的显示方式。