Reworked: further thought on design revealed that spaces were not being handled properly.