yay for better code
ffs