add rate(incomplete)