follow the best practice.