     (if (or
           (empty? left-part)
           (and prev-left-is-dead prev-right-is-dead))
-      (if (and (not= prev-left-streak-type prev-right-streak-type)
-               (not= prev-left-streak-type :wall)
-               (not= prev-right-streak-type :wall))
+      (if (not= prev-left-streak-type prev-right-streak-type)
         ; Types differents
         (let [opl (if (= :min prev-left-streak-type) + +)
               opr (if (= :min prev-right-streak-type) + +)]
           (+
             (opl
               (cond
-                (or (= :wall prev-left-streak-type) (= :empty prev-left-streak-type)) 0
+                (not= :max prev-left-streak-type) 0
 
                 (= 4 prev-left-direct-streak) Double/POSITIVE_INFINITY
                 (and

                  (= 0 prev-right-direct-streak)) 50000

                (<= 4 (+ prev-left-streak-count prev-left-partial-streak-count)) (+ prev-left-direct-streak prev-left-streak-count)
                :else 0))

            (opr
              (cond

                (or (= :wall prev-right-streak-type) (= :empty prev-right-streak-type)) 0
                (= 4 prev-right-direct-streak) Double/POSITIVE_INFINITY
                (and
                  (= 3 prev-right-direct-streak)

                  (< 0 prev-left-partial-streak-count)
                  (= 0 prev-left-direct-streak)) 50000

                (<= 4 (+ prev-right-streak-count prev-right-partial-streak-count)) 
                    (+ prev-right-direct-streak prev-right-streak-count)
                :else 1))
            ))
        ; Types identiques
        (let [op (if (or (= :min prev-left-streak-type) (= :min prev-right-streak-type)) + +)]
          (op (cond
                (not= :max prev-left-streak-type) 0 ;
                (= 4 (+ prev-left-direct-streak prev-right-direct-streak)) Double/POSITIVE_INFINITY
                                                                             
                (and (= 3 (+ prev-left-direct-streak prev-right-direct-streak))
                     (>= prev-right-partial-streak-count 1)
                     (>= prev-left-partial-streak-count 1)) 50000
                (<= 5 (+ prev-left-direct-streak prev-right-direct-streak)) 0

                :else (+ prev-left-direct-streak
