I can't be bothered refactoring this
so I give you the following