               correct: []
               incorrect: []
 
+            # This is correcting for an error in the recorded data. Many-more
+            # incorrect results were recorded than allowed.
             if data.incorrect > data.correct + 2
               data.incorrect = data.correct + 2
 
             acc[input][btnSize][margin].correct.push data.correct
             acc[input][btnSize][margin].incorrect.push data.incorrect
 
-            if input is 'k' and btnSize is '31.25' and margin is '20'
-              console.log data.correct, data.incorrect
+            # Added correct/incorrect counts for only eye-input modes.
+            if input isnt 'k'
+              userEyeAcc.correct += data.correct
+              userEyeAcc.incorrect += data.incorrect
+
+            switch input
+              when 'k'
+                userKAcc.correct += data.correct
+                userKAcc.incorrect += data.incorrect
+              when 'b'
+                userBAcc.correct += data.correct
+                userBAcc.incorrect += data.incorrect
+              when 'm'
+                userMAcc.correct += data.correct
+                userMAcc.incorrect += data.incorrect
+
+      # Calculate the mean eye-input mode accuracy.
+      userMeanEyeAccuracy.push(
+        userEyeAcc.correct / (userEyeAcc.incorrect + userEyeAcc.correct))
+
+      userKeypressEyeAccuracy.push(
+        userKAcc.correct / (userKAcc.incorrect + userKAcc.correct))
+
+      userBlinkAccuracy.push(
+        userBAcc.correct / (userBAcc.incorrect + userBAcc.correct))
+
+      userMouseAccuracy.push(
+        userMAcc.correct / (userMAcc.incorrect + userMAcc.correct))
 
     for input of acc
       for btnSize of acc[input]
+        if +btnSize < 10 then continue
         for margin, data of acc[input][btnSize]
           mean[input] ?= {}
           mean[input][btnSize] ?= {}

      layout: layout
    plotly.plot data, graphOptions, (err, msg) ->
      if err then console.error error





analyzeSUIExperiment = (files, options) ->
  suiEvents = []
  times = []

  fn = (file, done) ->
    async.waterfall [
