speaking function fixed