..............................,d888888888b,
.........................,dP"'................`"Qb,
............,d88buP"............................."Qud88b,
.............dP".....8'............................`8..... "Qb
...........dP".....::8.._.:.@;.._..;@..:._..8::......."Qb
..........,8'......: P"...........` '............."Qb::.......`8,
..........dP....:::8(.........`--^--'.............)8:::.... ..Qb
..........8'......::::"Qba,.....,......,......,adP"::::.. .....`8
.........,8........::::::,p`""..............""'q,:::::: .........`8,
........,d'........:::::,d'......................`b,:::: :..........`b,
.......,d'.........:::: 'd........................`b:::: ::...........`b,
......,d'....q888q8b,......,p.......q,......,d8p888p....... ......`b,
.......d'..d",.....;....`b,...8,.........,8...,d'....;... ...,"b......`b
.....,8....8.`.....`.....b,.....`b,..,d'.....,d'.....'... ...'.8........8,
..../.q,....`b,..........`b..a88a..a88a..d'...........,d'. .........,p
..`q,......`b,.............8.......8.8.......8............,d ".....,p'
....`"Q888`b,.....`Q888P"."Q888P'........,d'888P"'
.................."Q88P"........................"Q88P