made a bunch of stuff but it doesn't work yet