reworked a lot of stuff, but I think most of it should work. I just need to test on hammer now