Working, but still kind of broken