     (let [first-char (first s1)
           remove-from-s2 (string-remove-char s2 first-char)]
       (if (nil? remove-from-s2)
-        (inc (string-char-counts-difference (clojure.contrib.string/drop 1 s1) s2))
-        (string-char-counts-difference (clojure.contrib.string/drop 1 s1) remove-from-s2)))))
+        (inc (string-char-counts-difference (.substring s1 1 (count s1)) s2))
+        (string-char-counts-difference (.substring s1 1 (count s1)) remove-from-s2)))))
       
 
 (define-registered in 

                                                                     (push-item input :string 
                                                                                (make-push-state))))
                                    top-string (top-item :string final-state)
                                    desired-output (let [short (clojure.contrib.string/butlast 2 input)]
                                                     (str short short))]
                                (if (not (string? top-string))
                                  1000

(ns examples.string
  (:use [clojush]
	[clojure.math.numeric-tower]))

; Tries to get a string with the most unique characters. If there are at least goal, succeeds.
#_(pushgp :error-function (fn [program]
