Revision ae1c27d6-cf2e-4691-a490-772414869de9 - Code Golf Stack Exchange
## [><>](https://esolangs.org/wiki/Fish), 1 byte per line, <s>243</s> <s>161</s> 135 bytes
*-26 bytes thanks to Jo King!*
2D languages FTW! Although writing loops and branches using goto instructions instead of the 2D structure is not fun.
v
l
:
:
3
%
:
&
0
4
7
*
&
?
.
~
~
"
e
l
p
p
A
"
o
o
o
o
o
$
5
%
:
&
0
a
5
*
&
?
.
~
~
"
e
i
P
"
o
o
o
*
0
@
?
n
?
~
l
{
:
}
=
?
;
a
o
1
[Try it online!](https://tio.run/##S8sszvj/v4wrh8sKCI25VIGkGpcBlwmXOZcWkGXPpcdVB4RKXKlANQVA6Ahk58OhCpcpXE8ikI2uJ5MrAK5eC6jGASibB8R1QNOqgfpquWyBPGug3nwuw////@uWGRsAAA "><> – Try It Online"), or watch it at the [fish playground](https://fishlanguage.com/playground)!
The fish swims downward along the code, using conditional gotos to skip things depending on what divides the accumulator.
I believe this meets the spec: whatever newlines are removed, the fish always hits the initial `v` (the only direction-changing instruction present), so the fish always swims downwards in the first column. Thus deleting a newline has the effect of simply removing the next character from the fish's path, and I don't think you can remove any of the characters without changing the output.