private function calculate1(array $array)
    {
        for ($i=count($array)-1; $i>=0; $i--) {
            if (isset($array[$i]) && isset($array[$i-1]) && isset($array[$i+1])
            && $array[$i] === '^') {
                $otp = 1;
                $this->checkInf($array[$i-1], $array[$i+1]);
                if (is_numeric($array[$i-1]) && is_numeric($array[$i+1])) {
                    if ($array[$i-1] < 0) {
                        $a = pow($array[$i-1]*-1, $array[$i+1]);
                        $otp = 2;
                    } else {
                        $a = pow($array[$i-1], $array[$i+1]);
                    }
                } else {
                    $this->correct = 0;
                    break;
                }
                unset($array[$i-1], $array[$i+1]);
                $array[$i] = ($otp == 1) ? $a : $a*-1;
                $array = array_values($array);
                $i = count($array)-1;
            }
        }
        return $array;
    }