rewrite renxing,make it more rational