implemented slightly janky system of catching bad/nonexistant input on safari