rewrite gi2c module