Lots of stupid user checking