+
+ /* XXX: There's a bug here. We're guessing that at this point
+ * anything we're looking at must be a run. This would be correct
+ * if there were no duplicate cards, but since there are
+ * duplicates this us quite broken. For example consider two
+ * sequences of entirely red cards:
+ *
+ * This is a run: 1, 2, 3, 4
+ * But this is not: 1, 3, 4, 4
+ *
+ * As currently written, this function will consider both of these
+ * groups to be a run. One possible fix is to throw away the
+ * highest - lowest heuristic and instead simply sort the cards up
+ * front and ensure the difference between each adjacent pair is
+ * exactly 1.
+ */