 
        (if (eq 1 (length simplified-exprs))
            (car simplified-exprs)
-         (list 'unknown `(progn ,@(--map (nth 1 it) simplified-exprs))))))
+         (list 'unknown `(progn ,@(mapcar #'cl-second simplified-exprs))))))
     
     ;; Eliminate or simplify a when statement if we can evaluate the
     ;; condition.

    (whatif--simplify 'x '((x . 42)))
    (list 'value 42))))

(ert-deftest simplify--if ()
  (should
   (equal
    (whatif--simplify '(if x y z) nil)

   (equal
    (whatif--simplify '(if x y z) '((x . 42)))
    (list 'unknown 'y))))

(ert-deftest simplify--if-body ()
  "We should always simplify the THEN and ELSE."
  (should
   (equal
    (whatif--simplify '(if x y z) '((y . 42) (z . 41)))
    (list 'unknown '(if x 42 41)))))

(ert-deftest simplify--progn ()
  (should
