fixed Calc()