add practice caculate