     :as initiate}
    current-client]
 
-  (log/info "Opening the Crypto box we just received from the client")
-  (log/debug "The box we're opening is" (count vouch-wrapper) "bytes long")
-  (let [message-length (- (count vouch-wrapper) K/minimum-vouch-length)]
-    (let [{log-state ::log2/state
-           clear-text ::crypto/unboxed} (crypto/open-box log-state
-                                                         K/initiate-nonce-prefix
-                                                         outer-i-nonce
-                                                         vouch-wrapper
-                                                         (get-in current-client [::state/shared-secrets
-                                                                                 ::state/client-short<->server-short]))]
-      (if clear-text
-        {::log/state (log2/info log-state
-                                ::open-client-crypto-box
-                                "Decomposing...")
-         ::K/initiate-client-vouch-wrapper (serial/decompose (assoc-in K/initiate-client-vouch-wrapper
-                                                                       [::K/message ::K/length]
-                                                                       message-length)
-                                                             clear-text)}
-        {::log/state (log2/warn log-state
-                                ::open-client-crypto-box
-                                "Opening client crypto vouch failed")}))))
+  (println "Mark: top of open-client-crypto-box")
+  (let [log-state (log2/info log-state
+                             ::open-client-crypto-box
+                             "Opening the Crypto box we just received from the client")
+        vouch-length (count vouch-wrapper)
+        log-state (log2/debug log-state
+                              ::open-client-crypto-box
+                              (str "The box we're opening is " vouch-length " bytes long"))
+        message-length (- vouch-length K/minimum-vouch-length)
+        {log-state ::log2/state
+         clear-text ::crypto/unboxed
+         :as unboxed} (try
+                        (crypto/open-box log-state
+                                         K/initiate-nonce-prefix
+                                         outer-i-nonce
+                                         vouch-wrapper
+                                         (get-in current-client [::state/shared-secrets
+                                                                 ::state/client-short<->server-short]))
+                        (catch Exception ex
+                          (println "Mark: Opening crypto-box failed")
+                          {::log2/state (log2/exception log-state ex
+                                                        ::open-client-crypto-box)}))]
+    (println (str "Mark: crypto-box open succeeded. unboxed: '" (dissoc unboxed ::log2/state) "'."))
+    (if clear-text
+      {::log2/state (log2/info log-state
+                               ::open-client-crypto-box
+                               "Decomposing...")
+       ::K/initiate-client-vouch-wrapper (serial/decompose (assoc-in K/initiate-client-vouch-wrapper
+                                                                     [::K/message ::K/length]
+                                                                     message-length)
+                                                           clear-text)}
+      {::log2/state (log2/warn log-state
+                               ::open-client-crypto-box
+                               "Opening client crypto vouch failed")})))
 
 (s/fdef validate-server-name
         :args (s/cat :state ::state/state

                                   ;; Now we're ready to tackle handling the main message body cryptobox.
                                   ;; This corresponds to line 373 in the reference implementation.
                                   (try
                                     (let [{log-state ::log2/state
                                            client-message-box ::K/initiate-client-vouch-wrapper} (open-client-crypto-box log-state
                                                                                                                          initiate

(s/fdef do-handle
  :args (s/cat :state ::state/state
               :packet ::shared/network-packet)
  :ret ::state/delta)
(defn do-handle
  "Deal with an incoming initiate packet

  Called mostly for side-effects, but the return value matters."
  [{log-state ::log2/state
    :keys [::log2/logger]
    :as state}
