everything works, will come back and style it a bit