still some little buggy things, but pretty close