[Community Puzzle] Shadow Casting

In my opinion a shadow cant cast any shadow, so test 4 has a bug for me, but it mades me change my code a couples of times to pass it. I enjoyed it.

for those with problems in test 4 you could try this custom case (remember change the setting to expert mode):
input:

1
a-a`a

expected output:

a-a`a
 -----
  `````