Back
Close

ASCII ART kerning

Statement

 Goal

ASCII ART (https://www.codingame.com/training/easy/ascii-art) is one of the most popular official puzzles in Codingame, attempted by over 150k coders and with 2/3 success rate.

You probably have solved it and it is now a history of you. (If not, go there to solve it before trying this puzzle.) We are going to re-visit history.

Same objective - You will be given sample designs of A-Z alphabets. You shall grab each letter design from the samples, use the designs to print an ASCII art diagram of a specified message. The main objective is same as before.

New challenge - The difference is that you have to kern the ASCII art letters (meaning: adjusting the letter spacing) to achieve a better-looking result for words formed by the ASCII letters.


Scenario

         _                   _
| | | |
_____ | |__ ____ __| | _____
(____ | | _ \ / ___) / _ | | ___ |
/ ___ | | |_) ) ( (___ ( (_| | | ____|
\_____| |____/ \____) \____| |_____)
_ _
| | | |
_____| |__ ____ __| |_____
(____ | _ \ / ___) _ | ___ |
/ ___ | |_) | (__( (_| | ____|
\_____|____/ \____)____|_____)


Our star developer Bob got the above sample inputs from his client.

The upper half is the sample alphabets (partially listed here) showing complete design of individual letters.

The lower half is the kerned result of the alphabets, as if the letters are all used to form a word so that excessive spacings are removed. Use it as a reference of the desired result.

The client and his graphic art designer are no programmers. They cannot state their requirements in a technical way.

'Put adjacent letters together "as close as possible and reasonable".'
'The letters must still be comprehensible after compacting. Make it as "good-looking" as the given samples."
The client stated these as the requirements.

'Could you give me the rules to compact the letters?' Bob begged for better spec.

'You are the developer and I am the customer. I am paying you to make these rules for me. Isn't it?' said the client.

Bob was wordless to this immutable defense.

Working in a professional manner, Bob has to design a program to "learn" the rules of kerning from the given samples and then apply them on whatever messages the client wants, finally to output an ASCII art representation of the message.

Based on the above inputs, if the requested message is "bad ace", the expected output is:

 _               _
| | | |
| |__ _____ __| | _____ ____ _____
| _ \(____ |/ _ | (____ |/ ___) ___ |
| |_) ) ___ ( (_| | / ___ ( (___| ____|
|____/\_____|\____| \_____|\____)_____)


"Did I mention that I have several sets of ASCII alphabets fonts as samples? All have to be handled." The client uttered his final requirement.

Put yourself in Bob's shoes.
Enjoy it!
Input
Line 1: Integer H
H is the number of lines used to compose the alphabets. It is the height of the whole alphabets. Individual letters can have varying heights.

Line 2: A string of text message you are going to display using the given ASCII fonts.
You should ignore Upper or Lower cases because the look of the output letters depends on the given font, not on the message.

The following H lines:
- containing alphabets A-Z or a-z in full form.
- the lines are right-trimmed of spaces so that some lines can be shorter than others.
- between the letters there is at least one vertical column of empty space as separator.

The following H lines:
- containing alphabets after kerning. Letters A-Z are compacted together like a word. After that there is a space and then a "word", to illustrate how many spaces should be added for word-spacing.
- the lines are right-trimmed of spaces so that some lines can be shorter than others.
Output
H lines of string: your ASCII art output, containing the message illustrated by the given ASCII font.
Right-trim the lines of empty spaces.
(Codingame's treatment of blank line I/O is not consistent over the years. To avoid uncertainty, in all test cases there will not be a blank line in user output after trimming.)

Different fonts have different letter-spacing and word-spacing. Use the kerned sample to determine the correct spacing and style of every given font.
Constraints
length of each line in font samples ≤ 1024
length of message ≤ 100

The message may contain letters A-Z, a-z and space. There will not be undefined characters or punctuation in the message.

All ASCII art fonts appearing in validators are also appearing in test cases, to minimize surprise factors.
Example
Input
7
Dijkstra algorithm
         _                   _              ___           _       _     _   _       _
        | |                 | |            / __)         | |     (_)   (_) | |     | |                                                            _
 _____  | |__     ____    __| |  _____   _| |__    ____  | |__    _     _  | |  _  | |   ____    ____     ___    ____     ____    ____    ___   _| |_   _   _   _   _   _ _ _   _   _   _   _   _____
(____ | |  _ \   / ___)  / _  | | ___ | (_   __)  / _  | |  _ \  | |   | | | |_/ ) | |  |    \  |  _ \   / _ \  |  _ \   / _  |  / ___)  /___) (_   _) | | | | | | | | | | | | ( \ / ) | | | | (___  )
/ ___ | | |_) ) ( (___  ( (_| | | ____|   | |    ( (_| | | | | | | |   | | |  _ (  | |  | | | | | | | | | |_| | | |_| | | |_| | | |     |___ |   | |_  | |_| |  \ V /  | | | |  ) X (  | |_| |  / __/
\_____| |____/   \____)  \____| |_____)   |_|     \___ | |_| |_| |_|  _| | |_| \_)  \_) |_|_|_| |_| |_|  \___/  |  __/   \__  | |_|     (___/     \__) |____/    \_/    \___/  (_/ \_)  \__  | (_____)
                                                 (_____|             (__/                                       |_|         |_|                                                        (____/
       _              _          ___      _     _  _ _     _                                                                                                              _
      | |            | |        / __)    | |   (_)(_) |   | |                                           _                                                                | |
 _____| |__   ____ __| |_____ _| |__ ____| |__  _  _| |  _| | ____  ____   ___  ____   ____  ____ ___ _| |_ _   _ _   _ _ _ _ _   _ _   _ _____      _ _ _  ___   ____ __| |
(____ |  _ \ / ___) _  | ___ (_   __) _  |  _ \| || | |_/ ) ||    \|  _ \ / _ \|  _ \ / _  |/ ___)___|_   _) | | | | | | | | ( \ / ) | | (___  )    | | | |/ _ \ / ___) _  |
/ ___ | |_) | (__( (_| | ____| | | ( (_| | | | | || |  _ (| || | | | | | | |_| | |_| | |_| | |  |___ | | |_| |_| |\ V /| | | |) X (| |_| |/ __/     | | | | |_| | |  ( (_| |
\_____|____/ \____)____|_____) |_|  \___ |_| |_|_|| |_| \_)\_)_|_|_|_| |_|\___/|  __/ \__  |_|  (___/   \__)____/  \_/  \___/(_/ \_)\__  (_____)     \___/ \___/|_|   \____|
                                   (_____|      (__/                           |_|       |_|                                       (____/
Output
     _ _  _ _                                       _                   _       _
    | (_)(_) |           _                         | |                 (_)  _  | |
  __| |_  _| |  _  ___ _| |_  ____ _____      _____| | ____  ___   ____ _ _| |_| |__  ____
 / _  | || | |_/ )/___|_   _)/ ___|____ |    (____ | |/ _  |/ _ \ / ___) (_   _)  _ \|    \
( (_| | || |  _ (|___ | | |_| |   / ___ |    / ___ | ( (_| | |_| | |   | | | |_| | | | | | |
 \____|_|| |_| \_|___/   \__)_|   \_____|    \_____|\_)___ |\___/|_|   |_|  \__)_| |_|_|_|_|
       (__/                                          (_____|

Tags
LoopsArraysstring

Difficulty
Hard

Test cases
Big Rounds Test
Input
7 Dijkstra algorithm _ _ ___ _ _ _ _ _ | | | | / __) | | (_) (_) | | | | _ _____ | |__ ____ __| | _____ _| |__ ____ | |__ _ _ | | _ | | ____ ____ ___ ____ ____ ____ ___ _| |_ _ _ _ _ _ _ _ _ _ _ _ _____ (____ | | _ \ / ___) / _ | | ___ | (_ __) / _ | | _ \ | | | | | |_/ ) | | | \ | _ \ / _ \ | _ \ / _ | / ___) /___) (_ _) | | | | | | | | | | | | ( \ / ) | | | | (___ ) / ___ | | |_) ) ( (___ ( (_| | | ____| | | ( (_| | | | | | | | | | | _ ( | | | | | | | | | | | |_| | | |_| | | |_| | | | |___ | | |_ | |_| | \ V / | | | | ) X ( | |_| | / __/ \_____| |____/ \____) \____| |_____) |_| \___ | |_| |_| |_| _| | |_| \_) \_) |_|_|_| |_| |_| \___/ | __/ \__ | |_| (___/ \__) |____/ \_/ \___/ (_/ \_) \__ | (_____) (_____| (__/ |_| |_| (____/ _ _ ___ _ _ _ _ _ _ | | | | / __) | | (_)(_) | | | _ | | _____| |__ ____ __| |_____ _| |__ ____| |__ _ _| | _| | ____ ____ ___ ____ ____ ____ ___ _| |_ _ _ _ _ _ _ _ _ _ _ _ _____ _ _ _ ___ ____ __| | (____ | _ \ / ___) _ | ___ (_ __) _ | _ \| || | |_/ ) || \| _ \ / _ \| _ \ / _ |/ ___)___|_ _) | | | | | | | | ( \ / ) | | (___ ) | | | |/ _ \ / ___) _ | / ___ | |_) | (__( (_| | ____| | | ( (_| | | | | || | _ (| || | | | | | | |_| | |_| | |_| | | |___ | | |_| |_| |\ V /| | | |) X (| |_| |/ __/ | | | | |_| | | ( (_| | \_____|____/ \____)____|_____) |_| \___ |_| |_|_|| |_| \_)\_)_|_|_|_| |_|\___/| __/ \__ |_| (___/ \__)____/ \_/ \___/(_/ \_)\__ (_____) \___/ \___/|_| \____| (_____| (__/ |_| |_| (____/
Output
_ _ _ _ _ _ _ | (_)(_) | _ | | (_) _ | | __| |_ _| | _ ___ _| |_ ____ _____ _____| | ____ ___ ____ _ _| |_| |__ ____ / _ | || | |_/ )/___|_ _)/ ___|____ | (____ | |/ _ |/ _ \ / ___) (_ _) _ \| \ ( (_| | || | _ (|___ | | |_| | / ___ | / ___ | ( (_| | |_| | | | | | |_| | | | | | | \____|_|| |_| \_|___/ \__)_| \_____| \_____|\_)___ |\___/|_| |_| \__)_| |_|_|_|_| (__/ (_____|

Big Rounds Validator Validator
Input
7 java debugs well _ _ ___ _ _ _ _ _ | | | | / __) | | (_) (_) | | | | _ _____ | |__ ____ __| | _____ _| |__ ____ | |__ _ _ | | _ | | ____ ____ ___ ____ ____ ____ ___ _| |_ _ _ _ _ _ _ _ _ _ _ _ _____ (____ | | _ \ / ___) / _ | | ___ | (_ __) / _ | | _ \ | | | | | |_/ ) | | | \ | _ \ / _ \ | _ \ / _ | / ___) /___) (_ _) | | | | | | | | | | | | ( \ / ) | | | | (___ ) / ___ | | |_) ) ( (___ ( (_| | | ____| | | ( (_| | | | | | | | | | | _ ( | | | | | | | | | | | |_| | | |_| | | |_| | | | |___ | | |_ | |_| | \ V / | | | | ) X ( | |_| | / __/ \_____| |____/ \____) \____| |_____) |_| \___ | |_| |_| |_| _| | |_| \_) \_) |_|_|_| |_| |_| \___/ | __/ \__ | |_| (___/ \__) |____/ \_/ \___/ (_/ \_) \__ | (_____) (_____| (__/ |_| |_| (____/ _ _ ___ _ _ _ _ _ _ | | | | / __) | | (_)(_) | | | _ | | _____| |__ ____ __| |_____ _| |__ ____| |__ _ _| | _| | ____ ____ ___ ____ ____ ____ ___ _| |_ _ _ _ _ _ _ _ _ _ _ _ _____ _ _ _ ___ ____ __| | (____ | _ \ / ___) _ | ___ (_ __) _ | _ \| || | |_/ ) || \| _ \ / _ \| _ \ / _ |/ ___)___|_ _) | | | | | | | | ( \ / ) | | (___ ) | | | |/ _ \ / ___) _ | / ___ | |_) | (__( (_| | ____| | | ( (_| | | | | || | _ (| || | | | | | | |_| | |_| | |_| | | |___ | | |_| |_| |\ V /| | | |) X (| |_| |/ __/ | | | | |_| | | ( (_| | \_____|____/ \____)____|_____) |_| \___ |_| |_|_|| |_| \_)\_)_|_|_|_| |_|\___/| __/ \__ |_| (___/ \__)____/ \_/ \___/(_/ \_)\__ (_____) \___/ \___/|_| \____| (_____| (__/ |_| |_| (____/
Output
_ _ _ _ _ (_) | | | | | | | _ _____ _ _ _____ __| |_____| |__ _ _ ____ ___ _ _ _ _____| | | | (____ | | | (____ | / _ | ___ | _ \| | | |/ _ |/___) | | | | ___ | | | | / ___ |\ V // ___ | ( (_| | ____| |_) ) |_| ( (_| |___ | | | | | ____| | | _| \_____| \_/ \_____| \____|_____)____/|____/ \___ (___/ \___/|_____)\_)_) (__/ (_____|

Chunky Test
Input
5 The vast majority __ __ ___ __ __ __ __ __ __ .---.-. | |--. .----. .--| | .-----. .' _| .-----. | |--. |__| |__| | |--. | | .--------. .-----. .-----. .-----. .-----. .----. .-----. | |_ .--.--. .--.--. .--.--.--. .--.--. .--.--. .-----. | _ | | _ | | __| | _ | | -__| | _| | _ | | | | | | | | < | | | | | | | _ | | _ | | _ | | _| |__ --| | _| | | | | | | | | | | |_ _| | | | |-- __| |___._| |_____| |____| |_____| |_____| |__| |___ | |__|__| |__| | | |__|__| |__| |__|__|__| |__|__| |_____| | __| |__ | |__| |_____| |____| |_____| \___/ |________| |__.__| |___ | |_____| |_____| |___| |__| |__| |_____| __ __ ___ __ __ __ __ __ __ __ .---.-| |--.----.--| .-----.' _.-----| |--|__|__| |--| .--------.-----.-----.-----.-----.----.-----| |_.--.--.--.--.--.--.--.--.--.--.--.-----. .--.--.--.-----.----.--| | | _ | _ | __| _ | -__| _| _ | | | | <| | | | _ | _ | _ | _|__ --| _| | | | | | | |_ _| | |-- __| | | | | _ | _| _ | |___._|_____|____|_____|_____|__| |___ |__|__|__| |__|__|__|__|__|__|__|__|_____| __|__ |__| |_____|____|_____|\___/|________|__.__|___ |_____| |________|_____|__| |_____| |_____| |___| |__| |__| |_____|
Output
__ __ __ __ __ __ | |_| |--.-----. .--.--.---.-.-----| |_ .--------.---.-|__.-----.----|__| |_.--.--. | _| | -__| | | | _ |__ --| _| | | _ | | _ | _| | _| | | |____|__|__|_____| \___/|___._|_____|____| |__|__|__|___._| |_____|__| |__|____|___ | |___| |_____|

Chunky Validator Validator
Input
5 A majestic sunset __ __ ___ __ __ __ __ __ __ .---.-. | |--. .----. .--| | .-----. .' _| .-----. | |--. |__| |__| | |--. | | .--------. .-----. .-----. .-----. .-----. .----. .-----. | |_ .--.--. .--.--. .--.--.--. .--.--. .--.--. .-----. | _ | | _ | | __| | _ | | -__| | _| | _ | | | | | | | | < | | | | | | | _ | | _ | | _ | | _| |__ --| | _| | | | | | | | | | | |_ _| | | | |-- __| |___._| |_____| |____| |_____| |_____| |__| |___ | |__|__| |__| | | |__|__| |__| |__|__|__| |__|__| |_____| | __| |__ | |__| |_____| |____| |_____| \___/ |________| |__.__| |___ | |_____| |_____| |___| |__| |__| |_____| __ __ ___ __ __ __ __ __ __ __ .---.-| |--.----.--| .-----.' _.-----| |--|__|__| |--| .--------.-----.-----.-----.-----.----.-----| |_.--.--.--.--.--.--.--.--.--.--.--.-----. .--.--.--.-----.----.--| | | _ | _ | __| _ | -__| _| _ | | | | <| | | | _ | _ | _ | _|__ --| _| | | | | | | |_ _| | |-- __| | | | | _ | _| _ | |___._|_____|____|_____|_____|__| |___ |__|__|__| |__|__|__|__|__|__|__|__|_____| __|__ |__| |_____|____|_____|\___/|________|__.__|___ |_____| |________|_____|__| |_____| |_____| |___| |__| |__| |_____|
Output
__ __ __ __ .---.-. .--------.---.-|__.-----.-----| |_|__.----. .-----.--.--.-----.-----.-----| |_ | _ | | | _ | | -__|__ --| _| | __| |__ --| | | |__ --| -__| _| |___._| |__|__|__|___._| |_____|_____|____|__|____| |_____|_____|__|__|_____|_____|____| |___|

Slant Capital Test
Input
5 meeting cancelled iirc .aMMMb dMMMMb .aMMMb dMMMMb dMMMMMP dMMMMMP .aMMMMP dMP dMP dMP dMMMMMP dMP dMP dMP dMMMMMMMMb dMMMMb .aMMMb dMMMMb .aMMMb dMMMMb .dMMMb dMMMMMMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMMMMMP dMP"dMP dMP"dMP dMP"VMP dMP VMP dMP dMP dMP" dMP dMP amr dMP dMP.dMP dMP dMP"dMP"dMP dMP dMP dMP"dMP dMP.dMP dMP"dMP dMP.dMP dMP" VP dMP dMP dMP dMP dMP dMP dMP dMP dMK.dMP dMP.dMP .dMP" dMMMMMP dMMMMK" dMP dMP dMP dMMMP dMMMP dMP MMP" dMMMMMP dMP dMP dMMMMK" dMP dMP dMP dMP dMP dMP dMP dMP dMMMMP" dMP.dMP dMMMMK" VMMMb dMP dMP dMP dMP dMP dMP dMP dMP .dMMMK" VMMMMP .dMP" dMP dMP dMP.aMF dMP.aMP dMP.aMP dMP dMP dMP.dMP dMP dMP dMP dK .dMP dMP"AMF dMP dMP dMP dMP dMP dMP dMP.aMP dMP dMP.MMP dMP"AMF dP .dMP dMP dMP.aMP YMvAP" dMP.dMP.dMP dMP"AMF dA .dMP .dMP" dMP dMP dMMMMP" VMMMP" dMMMMP" dMMMMMP dMP VMMMP" dMP dMP dMP VMMMP" dMP dMP dMMMMMP dMP dMP dMP dMP dMP VMMMP" dMP VMMP"MP dMP dMP VMMMP" dMP VMMMP" VP" VMMMPVMMP" dMP dMP VMMMP" dMMMMMP .aMMMb dMMMMb .aMMMb dMMMMb dMMMMMP dMMMMMP .aMMMMP dMP dMP dMP dMMMMMP dMP dMP dMP dMMMMMMMMb dMMMMb .aMMMb dMMMMb .aMMMb dMMMMb .dMMMb dMMMMMMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMMMMMP dMP dMP dMP .aMMMb dMMMMb dMMMMb dMP"dMP dMP"dMP dMP"VMP dMP VMP dMP dMP dMP" dMP dMP amr dMP dMP.dMP dMP dMP"dMP"dMP dMP dMP dMP"dMP dMP.dMP dMP"dMP dMP.dMP dMP" VP dMP dMP dMP dMP dMP dMP dMP dMP dMK.dMP dMP.dMP .dMP" dMP dMP dMP dMP"dMP dMP.dMP dMP VMP dMMMMMP dMMMMK" dMP dMP dMP dMMMP dMMMP dMP MMP" dMMMMMP dMP dMP dMMMMK" dMP dMP dMP dMP dMP dMP dMP dMP dMMMMP" dMP.dMP dMMMMK" VMMMb dMP dMP dMP dMP dMP dMP dMP dMP .dMMMK" VMMMMP .dMP" dMP dMP dMP dMP dMP dMMMMK" dMP dMP dMP dMP dMP.aMF dMP.aMP dMP.aMP dMP dMP dMP.dMP dMP dMP dMP dK .dMP dMP"AMF dMP dMP dMP dMP dMP dMP dMP.aMP dMP dMP.MMP dMP"AMF dP .dMP dMP dMP.aMP YMvAP" dMP.dMP.dMP dMP"AMF dA .dMP .dMP" dMP.dMP.dMP dMP.aMP dMP"AMF dMP.aMP dMP dMP dMMMMP" VMMMP" dMMMMP" dMMMMMP dMP VMMMP" dMP dMP dMP VMMMP" dMP dMP dMMMMMP dMP dMP dMP dMP dMP VMMMP" dMP VMMP"MP dMP dMP VMMMP" dMP VMMMP" VP" VMMMPVMMP" dMP dMP VMMMP" dMMMMMP VMMMPVMMP" VMMMP" dMP dMP dMMMMP"
Output
dMMMMMMMMb dMMMMMP dMMMMMP dMMMMMMP dMP dMMMMb .aMMMMP .aMMMb .aMMMb dMMMMb .aMMMb dMMMMMP dMP dMP dMMMMMP dMMMMb dMP dMP dMMMMb .aMMMb dMP"dMP"dMP dMP dMP dMP amr dMP dMP dMP" dMP"VMP dMP"dMP dMP dMP dMP"VMP dMP dMP dMP dMP dMP VMP amr amr dMP.dMP dMP"VMP dMP dMP dMP dMMMP dMMMP dMP dMP dMP dMP dMP MMP" dMP dMMMMMP dMP dMP dMP dMMMP dMP dMP dMMMP dMP dMP dMP dMP dMMMMK" dMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMP.dMP dMP.aMP dMP dMP dMP dMP dMP.aMP dMP dMP dMP dMP dMP.aMP dMP dMP dMP"AMF dMP.aMP dMP dMP dMP dMMMMMP dMMMMMP dMP dMP dMP dMP VMMMP" VMMMP" dMP dMP dMP dMP VMMMP" dMMMMMP dMMMMMP dMMMMMP dMMMMMP dMMMMP" dMP dMP dMP dMP VMMMP"

Slant Capital Validator Validator
Input
5 download the internet .aMMMb dMMMMb .aMMMb dMMMMb dMMMMMP dMMMMMP .aMMMMP dMP dMP dMP dMMMMMP dMP dMP dMP dMMMMMMMMb dMMMMb .aMMMb dMMMMb .aMMMb dMMMMb .dMMMb dMMMMMMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMMMMMP dMP"dMP dMP"dMP dMP"VMP dMP VMP dMP dMP dMP" dMP dMP amr dMP dMP.dMP dMP dMP"dMP"dMP dMP dMP dMP"dMP dMP.dMP dMP"dMP dMP.dMP dMP" VP dMP dMP dMP dMP dMP dMP dMP dMP dMK.dMP dMP.dMP .dMP" dMMMMMP dMMMMK" dMP dMP dMP dMMMP dMMMP dMP MMP" dMMMMMP dMP dMP dMMMMK" dMP dMP dMP dMP dMP dMP dMP dMP dMMMMP" dMP.dMP dMMMMK" VMMMb dMP dMP dMP dMP dMP dMP dMP dMP .dMMMK" VMMMMP .dMP" dMP dMP dMP.aMF dMP.aMP dMP.aMP dMP dMP dMP.dMP dMP dMP dMP dK .dMP dMP"AMF dMP dMP dMP dMP dMP dMP dMP.aMP dMP dMP.MMP dMP"AMF dP .dMP dMP dMP.aMP YMvAP" dMP.dMP.dMP dMP"AMF dA .dMP .dMP" dMP dMP dMMMMP" VMMMP" dMMMMP" dMMMMMP dMP VMMMP" dMP dMP dMP VMMMP" dMP dMP dMMMMMP dMP dMP dMP dMP dMP VMMMP" dMP VMMP"MP dMP dMP VMMMP" dMP VMMMP" VP" VMMMPVMMP" dMP dMP VMMMP" dMMMMMP .aMMMb dMMMMb .aMMMb dMMMMb dMMMMMP dMMMMMP .aMMMMP dMP dMP dMP dMMMMMP dMP dMP dMP dMMMMMMMMb dMMMMb .aMMMb dMMMMb .aMMMb dMMMMb .dMMMb dMMMMMMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMMMMMP dMP dMP dMP .aMMMb dMMMMb dMMMMb dMP"dMP dMP"dMP dMP"VMP dMP VMP dMP dMP dMP" dMP dMP amr dMP dMP.dMP dMP dMP"dMP"dMP dMP dMP dMP"dMP dMP.dMP dMP"dMP dMP.dMP dMP" VP dMP dMP dMP dMP dMP dMP dMP dMP dMK.dMP dMP.dMP .dMP" dMP dMP dMP dMP"dMP dMP.dMP dMP VMP dMMMMMP dMMMMK" dMP dMP dMP dMMMP dMMMP dMP MMP" dMMMMMP dMP dMP dMMMMK" dMP dMP dMP dMP dMP dMP dMP dMP dMMMMP" dMP.dMP dMMMMK" VMMMb dMP dMP dMP dMP dMP dMP dMP dMP .dMMMK" VMMMMP .dMP" dMP dMP dMP dMP dMP dMMMMK" dMP dMP dMP dMP dMP.aMF dMP.aMP dMP.aMP dMP dMP dMP.dMP dMP dMP dMP dK .dMP dMP"AMF dMP dMP dMP dMP dMP dMP dMP.aMP dMP dMP.MMP dMP"AMF dP .dMP dMP dMP.aMP YMvAP" dMP.dMP.dMP dMP"AMF dA .dMP .dMP" dMP.dMP.dMP dMP.aMP dMP"AMF dMP.aMP dMP dMP dMMMMP" VMMMP" dMMMMP" dMMMMMP dMP VMMMP" dMP dMP dMP VMMMP" dMP dMP dMMMMMP dMP dMP dMP dMP dMP VMMMP" dMP VMMP"MP dMP dMP VMMMP" dMP VMMMP" VP" VMMMPVMMP" dMP dMP VMMMP" dMMMMMP VMMMPVMMP" VMMMP" dMP dMP dMMMMP"
Output
dMMMMb .aMMMb dMP dMP dMP dMMMMb dMP .aMMMb .aMMMb dMMMMb dMMMMMMP dMP dMP dMMMMMP dMP dMMMMb dMMMMMMP dMMMMMP dMMMMb dMMMMb dMMMMMP dMMMMMMP dMP VMP dMP"dMP dMP dMP dMP dMP dMP dMP dMP"dMP dMP"dMP dMP VMP dMP dMP dMP dMP amr dMP dMP dMP dMP dMP.dMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMMMMMP dMP dMP dMP dMMMMMP dMMMP dMP dMP dMP dMP dMMMP dMMMMK" dMP dMP dMMMP dMP dMP.aMP dMP.aMP dMP.dMP.dMP dMP dMP dMP dMP.aMP dMP dMP dMP.aMP dMP dMP dMP dMP dMP dMP dMP dMP dMP dMP"AMF dMP dMP dMP dMP dMMMMP" VMMMP" VMMMPVMMP" dMP dMP dMMMMMP VMMMP" dMP dMP dMMMMP" dMP dMP dMP dMMMMMP dMP dMP dMP dMP dMMMMMP dMP dMP dMP dMP dMMMMMP dMP

Medium Regular Test
Input
6 prefixing www to links _ _ __ _ _ _ _ _ _ __ _ | |__ ___ __| | ___ / _| __ _ | |__ (_) (_) | | __ | | _ __ ___ _ __ ___ _ __ __ _ _ __ ___ | |_ _ _ __ __ __ __ __ __ _ _ ____ / _` | | '_ \ / __| / _` | / _ \ | |_ / _` | | '_ \ | | | | | |/ / | | | '_ ` _ \ | '_ \ / _ \ | '_ \ / _` | | '__| / __| | __| | | | | \ \ / / \ \ /\ / / \ \/ / | | | | |_ / | (_| | | |_) | | (__ | (_| | | __/ | _| | (_| | | | | | | | | | | < | | | | | | | | | | | | | (_) | | |_) | | (_| | | | \__ \ | |_ | |_| | \ V / \ V V / > < | |_| | / / \__,_| |_.__/ \___| \__,_| \___| |_| \__, | |_| |_| |_| _/ | |_|\_\ |_| |_| |_| |_| |_| |_| \___/ | .__/ \__, | |_| |___/ \__| \__,_| \_/ \_/\_/ /_/\_\ \__, | /___| |___/ |__/ |_| |_| |___/ _ _ __ _ _ _ _ _ _ _ __ _| |__ ___ __| | ___ / _| __ _| |__ (_)(_) | _| |_ __ ___ _ __ ___ _ __ __ _ _ __ ___| |_ _ ___ ___ ___ ___ _ ____ __ _____ _ __ __| | / _` | '_ \ / __/ _` |/ _ \ |_ / _` | '_ \| || | |/ / | '_ ` _ \| '_ \ / _ \| '_ \ / _` | '__/ __| __| | | \ \ / \ \ /\ / \ \/ / | | |_ / \ \ /\ / / _ \| '__/ _` | | (_| | |_) | (_| (_| | __/ _| (_| | | | | || | <| | | | | | | | | | (_) | |_) | (_| | | \__ \ |_| |_| |\ V / \ V V / > <| |_| |/ / \ V V / (_) | | | (_| | \__,_|_.__/ \___\__,_|\___|_| \__, |_| |_|_|/ |_|\_\_|_| |_| |_|_| |_|\___/| .__/ \__, |_| |___/\__|\__,_| \_/ \_/\_/ /_/\_\\__, /___| \_/\_/ \___/|_| \__,_| |___/ |__/ |_| |_| |___/
Output
__ _ _ _ _ _ _ _ __ _ __ ___ / _(_)_ _(_)_ __ __ _ __ ___ ___ __ | |_ ___ | (_)_ __ | | _____ | '_ \| '__/ _ \ |_| \ \/ / | '_ \ / _` | \ \ /\ / \ \ /\ / \ \ /\ / / | __/ _ \ | | | '_ \| |/ / __| | |_) | | | __/ _| |> <| | | | | (_| | \ V V / \ V V / \ V V / | || (_) | | | | | | | <\__ \ | .__/|_| \___|_| |_/_/\_\_|_| |_|\__, | \_/\_/ \_/\_/ \_/\_/ \__\___/ |_|_|_| |_|_|\_\___/ |_| |___/

Medium Regular Validator Validator
Input
6 www xxx jjj exam helloworld _ _ __ _ _ _ _ _ _ __ _ | |__ ___ __| | ___ / _| __ _ | |__ (_) (_) | | __ | | _ __ ___ _ __ ___ _ __ __ _ _ __ ___ | |_ _ _ __ __ __ __ __ __ _ _ ____ / _` | | '_ \ / __| / _` | / _ \ | |_ / _` | | '_ \ | | | | | |/ / | | | '_ ` _ \ | '_ \ / _ \ | '_ \ / _` | | '__| / __| | __| | | | | \ \ / / \ \ /\ / / \ \/ / | | | | |_ / | (_| | | |_) | | (__ | (_| | | __/ | _| | (_| | | | | | | | | | | < | | | | | | | | | | | | | (_) | | |_) | | (_| | | | \__ \ | |_ | |_| | \ V / \ V V / > < | |_| | / / \__,_| |_.__/ \___| \__,_| \___| |_| \__, | |_| |_| |_| _/ | |_|\_\ |_| |_| |_| |_| |_| |_| \___/ | .__/ \__, | |_| |___/ \__| \__,_| \_/ \_/\_/ /_/\_\ \__, | /___| |___/ |__/ |_| |_| |___/ _ _ __ _ _ _ _ _ _ _ __ _| |__ ___ __| | ___ / _| __ _| |__ (_)(_) | _| |_ __ ___ _ __ ___ _ __ __ _ _ __ ___| |_ _ ___ ___ ___ ___ _ ____ __ _____ _ __ __| | / _` | '_ \ / __/ _` |/ _ \ |_ / _` | '_ \| || | |/ / | '_ ` _ \| '_ \ / _ \| '_ \ / _` | '__/ __| __| | | \ \ / \ \ /\ / \ \/ / | | |_ / \ \ /\ / / _ \| '__/ _` | | (_| | |_) | (_| (_| | __/ _| (_| | | | | || | <| | | | | | | | | | (_) | |_) | (_| | | \__ \ |_| |_| |\ V / \ V V / > <| |_| |/ / \ V V / (_) | | | (_| | \__,_|_.__/ \___\__,_|\___|_| \__, |_| |_|_|/ |_|\_\_|_| |_| |_|_| |_|\___/| .__/ \__, |_| |___/\__|\__,_| \_/ \_/\_/ /_/\_\\__, /___| \_/\_/ \___/|_| \__,_| |___/ |__/ |_| |_| |___/
Output
_ _ _ _ _ _ _ _ __ ___ ___ __ __ ___ ___ __ (_)(_)(_) _____ ____ _ _ __ ___ | |__ ___| | | _____ _____ _ __| | __| | \ \ /\ / \ \ /\ / \ \ /\ / / \ \/ \ \/ \ \/ / | || || | / _ \ \/ / _` | '_ ` _ \ | '_ \ / _ \ | |/ _ \ \ /\ / / _ \| '__| |/ _` | \ V V / \ V V / \ V V / > < > < > < | || || | | __/> < (_| | | | | | | | | | | __/ | | (_) \ V V / (_) | | | | (_| | \_/\_/ \_/\_/ \_/\_/ /_/\_/_/\_/_/\_\ _/ |/ |/ | \___/_/\_\__,_|_| |_| |_| |_| |_|\___|_|_|\___/ \_/\_/ \___/|_| |_|\__,_| |__/__/__/

Slant angular Test
Input
6 dgemwunaorssuvvwwxxzzzzxwvusronmeca w __ __ ____ __ _ _ __ __ __ ____ _ / /_ _____ ____/ / ___ / __/ ____ _ / /_ (_) (_) / /__ / / ____ ___ ____ ____ ____ ____ _ _____ _____ / /_ __ __ _ __ _ __ _ __ __ __ ____ / __ `/ / __ \ / ___/ / __ / / _ \ / /_ / __ `/ / __ \ / / / / / //_/ / / / __ `__ \ / __ \ / __ \ / __ \ / __ `/ / ___/ / ___/ / __/ / / / / | | / / | | /| / / | |/_/ / / / / /_ / / /_/ / / /_/ / / /__ / /_/ / / __/ / __/ / /_/ / / / / / / / / / / ,< / / / / / / / / / / / / / /_/ / / /_/ / / /_/ / / / (__ ) / /_ / /_/ / | |/ / | |/ |/ / _> < / /_/ / / /_ \__,_/ /_.___/ \___/ \__,_/ \___/ /_/ \__, / /_/ /_/ /_/ __/ / /_/|_| /_/ /_/ /_/ /_/ /_/ /_/ \____/ / .___/ \__, / /_/ /____/ \__/ \__,_/ |___/ |__/|__/ /_/|_| \__, / /___/ /____/ /___/ /_/ /_/ /____/ __ __ ____ __ _ _ __ __ __ __ ____ _/ /_ _________/ /__ / __/___ _/ /_ (_) (_) /__/ /___ ___ ____ ____ ____ ____ ___________/ /___ ___ ___ ___ ____ ______ _ ______ _________/ / / __ `/ __ \/ ___/ __ / _ \/ /_/ __ `/ __ \/ / / / //_/ / __ `__ \/ __ \/ __ \/ __ \/ __ `/ ___/ ___/ __/ / / / | / / | /| / / |/_/ / / /_ / | | /| / / __ \/ ___/ __ / / /_/ / /_/ / /__/ /_/ / __/ __/ /_/ / / / / / / / ,< / / / / / / / / / / /_/ / /_/ / /_/ / / (__ ) /_/ /_/ /| |/ /| |/ |/ /> </ /_/ / / /_ | |/ |/ / /_/ / / / /_/ / \__,_/_.___/\___/\__,_/\___/_/ \__, /_/ /_/_/_/ /_/|_/_/_/ /_/ /_/_/ /_/\____/ .___/\__, /_/ /____/\__/\__,_/ |___/ |__/|__/_/|_|\__, / /___/ |__/|__/\____/_/ \__,_/ /____/ /___/ /_/ /_/ /____/
Output
__ ____/ /___ ____ ____ ___ _ ____ ______ ____ _____ _________________ ___ ___ ___ ___ ___ ___ __________________ _ ___ ___ ____ ________________ ____ ____ ___ ___ _________ _ _ __ / __ / __ `/ _ \/ __ `__ \ | /| / / / / / __ \/ __ `/ __ \/ ___/ ___/ ___/ / / / | / / | / / | /| / / | /| / / |/_/ |/_/_ /_ /_ /_ / | |/_/ | /| / / | / / / / / ___/ ___/ __ \/ __ \/ __ `__ \/ _ \/ ___/ __ `/ | | /| / / / /_/ / /_/ / __/ / / / / / |/ |/ / /_/ / / / / /_/ / /_/ / / (__ |__ ) /_/ /| |/ /| |/ /| |/ |/ /| |/ |/ /> <_> < / /_/ /_/ /_/ /__> < | |/ |/ /| |/ / /_/ (__ ) / / /_/ / / / / / / / / / __/ /__/ /_/ / | |/ |/ / \__,_/\__, /\___/_/ /_/ /_/|__/|__/\__,_/_/ /_/\__,_/\____/_/ /____/____/\__,_/ |___/ |___/ |__/|__/ |__/|__/_/|_/_/|_| /___/___/___/___/_/|_| |__/|__/ |___/\__,_/____/_/ \____/_/ /_/_/ /_/ /_/\___/\___/\__,_/ |__/|__/ /____/

Slant angular Validator Validator
Input
6 hjxxxzzzsssvvvwwwaecxx z __ __ ____ __ _ _ __ __ __ ____ _ / /_ _____ ____/ / ___ / __/ ____ _ / /_ (_) (_) / /__ / / ____ ___ ____ ____ ____ ____ _ _____ _____ / /_ __ __ _ __ _ __ _ __ __ __ ____ / __ `/ / __ \ / ___/ / __ / / _ \ / /_ / __ `/ / __ \ / / / / / //_/ / / / __ `__ \ / __ \ / __ \ / __ \ / __ `/ / ___/ / ___/ / __/ / / / / | | / / | | /| / / | |/_/ / / / / /_ / / /_/ / / /_/ / / /__ / /_/ / / __/ / __/ / /_/ / / / / / / / / / / ,< / / / / / / / / / / / / / /_/ / / /_/ / / /_/ / / / (__ ) / /_ / /_/ / | |/ / | |/ |/ / _> < / /_/ / / /_ \__,_/ /_.___/ \___/ \__,_/ \___/ /_/ \__, / /_/ /_/ /_/ __/ / /_/|_| /_/ /_/ /_/ /_/ /_/ /_/ \____/ / .___/ \__, / /_/ /____/ \__/ \__,_/ |___/ |__/|__/ /_/|_| \__, / /___/ /____/ /___/ /_/ /_/ /____/ __ __ ____ __ _ _ __ __ __ __ ____ _/ /_ _________/ /__ / __/___ _/ /_ (_) (_) /__/ /___ ___ ____ ____ ____ ____ ___________/ /___ ___ ___ ___ ____ ______ _ ______ _________/ / / __ `/ __ \/ ___/ __ / _ \/ /_/ __ `/ __ \/ / / / //_/ / __ `__ \/ __ \/ __ \/ __ \/ __ `/ ___/ ___/ __/ / / / | / / | /| / / |/_/ / / /_ / | | /| / / __ \/ ___/ __ / / /_/ / /_/ / /__/ /_/ / __/ __/ /_/ / / / / / / / ,< / / / / / / / / / / /_/ / /_/ / /_/ / / (__ ) /_/ /_/ /| |/ /| |/ |/ /> </ /_/ / / /_ | |/ |/ / /_/ / / / /_/ / \__,_/_.___/\___/\__,_/\___/_/ \__, /_/ /_/_/_/ /_/|_/_/_/ /_/ /_/_/ /_/\____/ .___/\__, /_/ /____/\__/\__,_/ |___/ |__/|__/_/|_|\__, / /___/ |__/|__/\____/_/ \__,_/ /____/ /___/ /_/ /_/ /____/
Output
__ _ / /_ (_) ___ ___ ______________ ________________ ___ ___ ___ ___ ___ ______ ____ ______ ___ __ ____ / __ \ / / |/_/ |/_/ |/_/_ /_ /_ / / ___/ ___/ ___/ | / / | / / | / / | /| / / | /| / / | /| / / __ `/ _ \/ ___/ |/_/ |/_/ /_ / / / / / / /> <_> <_> < / /_/ /_/ /_(__ |__ |__ )| |/ /| |/ /| |/ /| |/ |/ /| |/ |/ /| |/ |/ / /_/ / __/ /___> <_> < / /_ /_/ /_/_/ /_/|_/_/|_/_/|_| /___/___/___/____/____/____/ |___/ |___/ |___/ |__/|__/ |__/|__/ |__/|__/\__,_/\___/\___/_/|_/_/|_| /___/ /___/

Mini Test
Input
4 close but not touching lj rj fa ef kf uj ys _ _. |_ _ _| _ _|_ _ |_ o o | | ._ _ ._ _ ._ _. ._ _ _|_ _ (_| |_) (_ (_| (/_ | (_| | | | | |< | | | | | | (_) |_) (_| | _> |_ |_| \/ \/\/ >< \/ /_ _| _| | | / _ _. |_ _ _| _ _|_ _ |_ o o | | ._ _ ._ _ ._ _. ._ _ _|_ _ _ ._ _| (_| |_) (_ (_| (/_ | (_| | | | | |< | | | | | | (_) |_) (_| | _> |_ |_| \/ \/\/ >< \/ /_ \/\/ (_) | (_| _| _| | | /
Output
_ _ _ _ | _ _ _ |_ _|_ ._ _ _|_ _|_ _ _ |_ o ._ _ | o ._ o _|_ _. _ _|_ | _|_ o _ (_ | (_) _> (/_ |_) |_| |_ | | (_) |_ |_ (_) |_| (_ | | | | | (_| | | | | | (_| (/_ | |< | |_| | \/ _> _| _| _| _| /

Mini Validator Validator
Input
4 ef bf ct xt fg fj rj kx et _ _. |_ _ _| _ _|_ _ |_ o o | | ._ _ ._ _ ._ _. ._ _ _|_ _ (_| |_) (_ (_| (/_ | (_| | | | | |< | | | | | | (_) |_) (_| | _> |_ |_| \/ \/\/ >< \/ /_ _| _| | | / _ _. |_ _ _| _ _|_ _ |_ o o | | ._ _ ._ _ ._ _. ._ _ _|_ _ _ ._ _| (_| |_) (_ (_| (/_ | (_| | | | | |< | | | | | | (_) |_) (_| | _> |_ |_| \/ \/\/ >< \/ /_ \/\/ (_) | (_| _| _| | | /
Output
_ _ _ _ _ _|_ |_ _|_ _ _|_ _|_ _|_ _ _|_ o ._ o | _ _|_ (/_ | |_) | (_ |_ >< |_ | (_| | | | | |< >< (/_ |_ _| _| _|

Mirror Test
Input
6 Think Out of the Box _ _ __ _ _ _ _ _ _ _ __ __| | ___ | |__ ___ |_ \ _ __ __| | (_) (_) __ | | | | ___ __ _ __ _ ___ __ _ _ __ __ _ ___ _| | _ _ __ __ __ __ __ __ _ _ ____ | '_ \ / _` | |__ \ | '_ \ / _ \ _| | | '_ \ / _` | | | | | \ \| | | | / _ ' _` | / _` | / _ \ / _` | | '_ \ |__` | |__ \ |__ | | | | | \ \ / / \ \ /\ / / \ \/ / | | | | \ _| | |_) | | (_| | __) | | |_) | \__ | |_ | | |_) | | | | | | | | | > | | | | | | | | | | | | | | (_) | | (_| | | |_) | | | / __/ _| | | |_| | \ V / \ V V / > < | |_| | \ \ |_.__/ \__,_| |___/ |_.__/ |___/ |_| | .__/ |_| |_| |_| | \_ /_/|_| |_| |_| |_| |_| |_| |_| \___/ \__, | | .__/ |_| \___| |__/ |_.__/ \_/ \_/\_/ /_/\_\ | .__/ |___\ \___| \__| |_| |_| \___| _ _ __ _ _ _ _ _ _ _ _ __ __| |___ | |__ ___ |_ \ _ __ __| (_|_)__ | | | ___ __ _ __ _ ___ __ _ _ __ __ _ ___ _| |_ ___ ___ ___ ___ _____ __ _____ __ _| |__ | '_ \ / _` |__ \| '_ \/ _ \ _| | '_ \ / _` | | |\ \| | |/ _ ' _` |/ _` |/ _ \ / _` | '_ \__` |__ \__ | | | \ \ / \ \ /\ / \ \/ / | | \ _| \ \ /\ / / _ \__` | '_ \ | |_) | (_| |__) | |_) \__ |_ | |_) | | | | | | > | | | | | | | | | | (_) | (_| | |_) | | / __/_| | |_| |\ V / \ V V / > <| |_| |\ \ \ V V / (_) | | | |_) | |_.__/ \__,_|___/|_.__/|___/ |_| .__/|_| |_|_| \/_/|_|_|_| |_| |_|_| |_|\___/ \__, | .__/ |_\___|__/|_.__/ \_/ \_/\_/ /_/\_\ .__/|___\ \_/\_/ \___/ |_|_.__/ \___| \__| |_|_| \___|
Output
_ _ _ _ _ __ _ _ _ _| | __| (_) __ ___ | | ___ _ _ _| | ___ |_ \ _| | __| |___ __| | _____ __ |__ |/ _` | |/ _` \ \| | / _ \| | | |__ | / _ \ _| | |__ |/ _` / _ \ / _` |/ _ \ \/ / _| | | | | | | | |> | | (_) | |_| |_| | | (_) |_ | _| | | | \__ | | (_| | (_) > < |__/|_| |_|_|_| |_/_/|_| \___/|_.__/|__/ \___/ |_| |__/|_| |_|___/ \__,_|\___/_/\_\

Mirror Validator Validator
Input
6 jf ji jr tv bw fx _ _ __ _ _ _ _ _ _ _ __ __| | ___ | |__ ___ |_ \ _ __ __| | (_) (_) __ | | | | ___ __ _ __ _ ___ __ _ _ __ __ _ ___ _| | _ _ __ __ __ __ __ __ _ _ ____ | '_ \ / _` | |__ \ | '_ \ / _ \ _| | | '_ \ / _` | | | | | \ \| | | | / _ ' _` | / _` | / _ \ / _` | | '_ \ |__` | |__ \ |__ | | | | | \ \ / / \ \ /\ / / \ \/ / | | | | \ _| | |_) | | (_| | __) | | |_) | \__ | |_ | | |_) | | | | | | | | | > | | | | | | | | | | | | | | (_) | | (_| | | |_) | | | / __/ _| | | |_| | \ V / \ V V / > < | |_| | \ \ |_.__/ \__,_| |___/ |_.__/ |___/ |_| | .__/ |_| |_| |_| | \_ /_/|_| |_| |_| |_| |_| |_| |_| \___/ \__, | | .__/ |_| \___| |__/ |_.__/ \_/ \_/\_/ /_/\_\ | .__/ |___\ \___| \__| |_| |_| \___| _ _ __ _ _ _ _ _ _ _ _ __ __| |___ | |__ ___ |_ \ _ __ __| (_|_)__ | | | ___ __ _ __ _ ___ __ _ _ __ __ _ ___ _| |_ ___ ___ ___ ___ _____ __ _____ __ _| |__ | '_ \ / _` |__ \| '_ \/ _ \ _| | '_ \ / _` | | |\ \| | |/ _ ' _` |/ _` |/ _ \ / _` | '_ \__` |__ \__ | | | \ \ / \ \ /\ / \ \/ / | | \ _| \ \ /\ / / _ \__` | '_ \ | |_) | (_| |__) | |_) \__ |_ | |_) | | | | | | > | | | | | | | | | | (_) | (_| | |_) | | / __/_| | |_| |\ V / \ V V / > <| |_| |\ \ \ V V / (_) | | | |_) | |_.__/ \__,_|___/|_.__/|___/ |_| .__/|_| |_|_| \/_/|_|_|_| |_| |_|_| |_|\___/ \__, | .__/ |_\___|__/|_.__/ \_/ \_/\_/ /_/\_\ .__/|___\ \_/\_/ \___/ |_|_.__/ \___| \__| |_|_| \___|
Output
_ __ _ _ _ _ _ __ (_)_ \ (_)(_) (_)__ _ _| |_ __ __| |_ __ |_ \__ __ | |_| | | || | | |__` | |__ \ \ / / / _` \ \ /\ / / _| \ \/ / | |_ | | || | | | | | _| |\ V / | (_| |\ V V / |_ |> < | \_|_| | \|_| | \_ |_| |__/ \_/ \__,_| \_/\_/ |_/_/\_\ \__| \__| \__|

Sparkling Test
Input
7 SEVEN ELEVEN ::: ::::::::: :::::::: ::::::::: :::::::::: :::::::::: :::::::: ::: ::: ::::::::::: ::::::::::: ::: ::: ::: ::: ::: :::: ::: :::::::: ::::::::: :::::::: ::::::::: :::::::: ::::::::::: ::: ::: ::: ::: ::: ::: ::: ::: ::: ::: ::::::::: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+:+: :+:+: :+:+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+:+ +:+ :+:+:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +#++:++#++: +#++:++#+ +#+ +#+ +:+ +#++:++# :#::+::# :#: +#++:++#++ +#+ +#+ +#++:++ +#+ +#+ +:+ +#+ +#+ +:+ +#+ +#+ +:+ +#++:++#+ +#+ +:+ +#++:++#: +#++:++#++ +#+ +#+ +:+ +#+ +:+ +#+ +:+ +#+ +#++:+ +#++: +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+# +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+#+# +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+#+ +#+ +#+ +#+ +#+ +#+ #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+#+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+#+#+# #+#+# #+#+# #+# #+# #+# #+# ### ### ######### ######## ######### ########## ### ######## ### ### ########### ##### ### ### ########## ### ### ### #### ######## ### ########### ### ### ######## ### ######## ### ### ### ### ### ### ######### ::: ::::::::: :::::::: ::::::::: :::::::::: :::::::::: :::::::: ::: ::: ::::::::::: ::::::::::: ::: ::: ::: ::: ::: :::: ::: :::::::: ::::::::: :::::::: ::::::::: :::::::: ::::::::::: ::: ::: ::: ::: ::: ::: ::: ::: ::: ::: ::::::::: ::: ::: :::::::: ::::::::: ::::::::: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+:+: :+:+: :+:+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+:+ +:+ :+:+:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +#++:++#++: +#++:++#+ +#+ +#+ +:+ +#++:++# :#::+::# :#: +#++:++#++ +#+ +#+ +#++:++ +#+ +#+ +:+ +#+ +#+ +:+ +#+ +#+ +:+ +#++:++#+ +#+ +:+ +#++:++#: +#++:++#++ +#+ +#+ +:+ +#+ +:+ +#+ +:+ +#+ +#++:+ +#++: +#+ +#+ +:+ +#+ +#+ +:+ +#++:++#: +#+ +:+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+# +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+#+# +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+#+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+#+#+# #+#+# #+#+# #+# #+# #+# #+# #+#+# #+#+# #+# #+# #+# #+# #+# #+# ### ### ######### ######## ######### ########## ### ######## ### ### ########### ##### ### ### ########## ### ### ### #### ######## ### ########### ### ### ######## ### ######## ### ### ### ### ### ### ######### ### ### ######## ### ### #########
Output
:::::::: :::::::::: ::: ::: :::::::::: :::: ::: :::::::::: ::: :::::::::: ::: ::: :::::::::: :::: ::: :+: :+: :+: :+: :+: :+: :+:+: :+: :+: :+: :+: :+: :+: :+: :+:+: :+: +:+ +:+ +:+ +:+ +:+ :+:+:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ :+:+:+ +:+ +#++:++#++ +#++:++# +#+ +:+ +#++:++# +#+ +:+ +#+ +#++:++# +#+ +#++:++# +#+ +:+ +#++:++# +#+ +:+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+#+# +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+#+# #+# #+# #+# #+#+#+# #+# #+# #+#+# #+# #+# #+# #+#+#+# #+# #+# #+#+# ######## ########## ### ########## ### #### ########## ########## ########## ### ########## ### ####

Sparkling Validator Validator
Input
7 HELLO World ::: ::::::::: :::::::: ::::::::: :::::::::: :::::::::: :::::::: ::: ::: ::::::::::: ::::::::::: ::: ::: ::: ::: ::: :::: ::: :::::::: ::::::::: :::::::: ::::::::: :::::::: ::::::::::: ::: ::: ::: ::: ::: ::: ::: ::: ::: ::: ::::::::: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+:+: :+:+: :+:+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+:+ +:+ :+:+:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +#++:++#++: +#++:++#+ +#+ +#+ +:+ +#++:++# :#::+::# :#: +#++:++#++ +#+ +#+ +#++:++ +#+ +#+ +:+ +#+ +#+ +:+ +#+ +#+ +:+ +#++:++#+ +#+ +:+ +#++:++#: +#++:++#++ +#+ +#+ +:+ +#+ +:+ +#+ +:+ +#+ +#++:+ +#++: +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+# +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+#+# +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+#+ +#+ +#+ +#+ +#+ +#+ #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+#+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+#+#+# #+#+# #+#+# #+# #+# #+# #+# ### ### ######### ######## ######### ########## ### ######## ### ### ########### ##### ### ### ########## ### ### ### #### ######## ### ########### ### ### ######## ### ######## ### ### ### ### ### ### ######### ::: ::::::::: :::::::: ::::::::: :::::::::: :::::::::: :::::::: ::: ::: ::::::::::: ::::::::::: ::: ::: ::: ::: ::: :::: ::: :::::::: ::::::::: :::::::: ::::::::: :::::::: ::::::::::: ::: ::: ::: ::: ::: ::: ::: ::: ::: ::: ::::::::: ::: ::: :::::::: ::::::::: ::::::::: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+:+: :+:+: :+:+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+:+ +:+ :+:+:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +#++:++#++: +#++:++#+ +#+ +#+ +:+ +#++:++# :#::+::# :#: +#++:++#++ +#+ +#+ +#++:++ +#+ +#+ +:+ +#+ +#+ +:+ +#+ +#+ +:+ +#++:++#+ +#+ +:+ +#++:++#: +#++:++#++ +#+ +#+ +:+ +#+ +:+ +#+ +:+ +#+ +#++:+ +#++: +#+ +#+ +:+ +#+ +#+ +:+ +#++:++#: +#+ +:+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+# +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+#+# +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+#+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+#+#+# #+#+# #+#+# #+# #+# #+# #+# #+#+# #+#+# #+# #+# #+# #+# #+# #+# ### ### ######### ######## ######### ########## ### ######## ### ### ########### ##### ### ### ########## ### ### ### #### ######## ### ########### ### ### ######## ### ######## ### ### ### ### ### ### ######### ### ### ######## ### ### #########
Output
::: ::: :::::::::: ::: ::: :::::::: ::: ::: :::::::: ::::::::: ::: ::::::::: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: :+: +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +#++:++#++ +#++:++# +#+ +#+ +#+ +:+ +#+ +:+ +#+ +#+ +:+ +#++:++#: +#+ +#+ +:+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ #+# #+# #+# #+# #+# #+# #+# #+#+# #+#+# #+# #+# #+# #+# #+# #+# #+# ### ### ########## ########## ########## ######## ### ### ######## ### ### ########## #########

Solution language

Solution

Stub generator input