       (if (< i as-len)
         (let [a (aget as i)
               b (aget bs i)]
-          (if (or (and (identical? (typeof a) (typeof b))
-                       (> a b))
-                  (> (typeof a) (typeof b)))
-            true
-            false))
+          (or (and (identical? (typeof a) (typeof b))
+                   (> a b))
+              (> (typeof a) (typeof b))))
         false))))
 
 (defn ^boolean key-lte [as bs]

       (dotimes [i 500000]
         (.assoc! tree (if (even? i) #js [i i i] #js [(str i) (str i) (str i)]) (* 2 i))))))

  (g)

  (defn h []
    (time

       (dotimes [i 500000]
         (.assoc! tree #js [i i i] (* 2 i))))))

  (time (dotimes [_ 10] (f)))

  (defn g []
    (time
