add calc_profit func