found a bug in my type checking that I am just not going to fix, too complex to deal with right now