rewrite some part