rewrite i2