The generated code isn't entirely correct which considering the tests do pass means the tests need to be fixed too.