I shall refactor until Alan merges out of pure annoyance