     (let [q-but-last (vec (butlast q))
           q-last (last q)
           el (query driver q-but-last)
-          [loc term] (q-expand driver q-last)]
+          [loc term] (q-expand q-last)]
 
       (find-elements-from* driver el loc term))
 
     :else
-    (let [[loc term] (q-expand driver q)]
+    (let [[loc term] (q-expand q)]
       (find-elements* driver loc term))))
 
 ;;

  ([driver text]
   (has-text? driver {:tag :*} text))
  ([driver q text]
   (let [[locator term] (q-expand driver q)
         term1 (format "%s[contains(text(), \"%s\")]" term text)
         term2 (format "%s//*[contains(text(), \"%s\")]" term text)]
     (when-not (= locator locator-xpath)

      (if (empty? q-rest)
        el
        (let [q (first q-rest)
              [loc term] (q-expand q)]
          (recur (find-element-from* driver el loc term)
                 (rest q-rest)))))

    :else
    (let [[loc term] (q-expand q)]
      (find-element* driver loc term))))

(defn query-all
