Removed a bit of a gulping ripped off from @codesleuth