make everything immutable, jit tuning