this isn't actually good code, but I want to save it