## [Retina], 51 bytes

*Happy birthday from a fellow string-processing language!*

Byte count assumes ISO 8859-1 encoding.

<pre><code>$
$.`$* 
+`(.*\S.*).$
$&amp;¶ $1
%(`$
¶$`
O$^r`.\G

¶.

</code></pre>

[Try it online!]

[Retina]: https://github.com/m-ender/retina
[Try it online!]: https://tio.run/nexus/retina#@6/CpaKXoKKlwKWdoKGnFROsp6WpBxRTO7RNQcWQS1UjQYXr0DaVBC5/lbiiBL0Ydy4gV4/r/3@P1JycfAA "Retina – TIO Nexus"