        +DDDL+ +LDDDDD+
      LD++++D+D+::::::+D
     D+-::::=D+::::::::+LLDD+
    D=::::::=L=-::::::=LL++=+D
    D-:::::=LDD=-::-=+L=-::::=D
    L+--==+++===++LDD+:::::::-D
  DL+++==:::::::::-+D-:::::::=D
 D=:::::::::::::::::++:::::-+D
D+::::::::::::::::::+D++==+LD+
 D=:::::::::::::::::+LD+=--:-+D
  L+=-::::::::::::::L+-::::::=D
   DLL++-::::::::::-D:::::::-+D
       DL+:::::::::+D=-:::-=+D
         D=:::::::-D +LDLLD+
          L+--::-=D
           +LDLDD+