Added rateThread()