Alice, 49 bytes * 2 = 98 144
/:G!4o3r8"1=5',0Grey9Z<@
\"b0=dnm 2'i%g<7R6~e.;o/
Try it online!
Explanation
/...@
\.../
This is the usual framework for linear programs that operate entirely in Ordinal mode. Unfolding the zigzag control flow, we get:
"G04d3m821i5g,7G6ee9;<:b!=onr "'=%'<0Rr~y.Zo@
The basic idea is to avoid characters which repeat more than twice with the help of a transliteration. The transliteration we're going to do is the following:
input: "G04d3m821i5g,7G6ee9;<:b!"
from: "0123456789:;<"
to: "onr "
The way transliteration works in Alice is that the from
and to
strings are first repeated to the LCM of their lengths, although in this case, all the matters is the length of the from
string, so we get:
from: "0123456789:;<"
to: "onr onr onr o"
This way, we get four different characters to represent the o
s, and three each for n
, r
and the space. We can generate the from
string using range expansion as follows:
'< Push "<".
0 Append a zero.
R Reverse.
r Range expansion.
The only issue now is that we'd need four "
for both the input
and the to
string. To avoid that, we put them both into a single string and split it at a =
used as a separator.
"G04d3m821i5g,7G6ee9;<:b!=onr "
Push the string containing both parts.
'=% Split around "=".
The rest is just:
~ Swap "from" and "to".
y Transliterate.
.Z Duplicate and interleave. This duplicates each character.
o Print.
@ Terminate the program.