diff --git a/benchmarks/empirist.pl b/benchmarks/empirist.pl
index 24687ec..9c063c7 100644
--- a/benchmarks/empirist.pl
+++ b/benchmarks/empirist.pl
@@ -51,6 +51,14 @@
     my $raw = $gold_path . $_[1] . '/raw/' . $_[0];
     system 'somajo-tokenizer ' . $raw . ' 2> /dev/null > ' . $empirist_path . $_[1] . '/somajo/' . $_[0];
   },
+  elephant => sub {
+    my $raw = $gold_path . $_[1] . '/raw/' . $_[0];
+    system './elephant-wrapper/bin/tokenize.sh -i ' . $raw . ' UD_German | sed "s/\s/\n/g" > ' . $empirist_path . $_[1] . '/elephant/' . $_[0];
+  },
+  spacy => sub {
+    my $raw = $gold_path . $_[1] . '/raw/' . $_[0];
+    system 'python3 ./spacy/spacy_tok.py ' . $raw . ' > ' . $empirist_path . $_[1] . '/spacy/' . $_[0];
+  },
   stanford => sub {
     my $raw = $gold_path . $_[1] . '/raw/' . $_[0];
     system 'CLASSPATH=/euralex/stanford-corenlp-4.4.0/* java edu.stanford.nlp.pipeline.StanfordCoreNLP ' .
@@ -60,20 +68,24 @@
   }
 );
 
-#delete $tools{waste};
-#delete $tools{datok};
-#delete $tools{korap_tokenizer};
-#delete $tools{opennlp_simple};
-#delete $tools{opennlp_tokenizer};
-#delete $tools{tree_tagger};
-#delete $tools{jtok};
-#delete $tools{syntok};
-#delete $tools{somajo};
-#delete $tools{stanford};
+# delete $tools{waste};
+# delete $tools{datok};
+# delete $tools{korap_tokenizer};
+# delete $tools{opennlp_simple};
+# delete $tools{opennlp_tokenizer};
+# delete $tools{tree_tagger};
+# delete $tools{jtok};
+# delete $tools{syntok};
+# delete $tools{somajo};
+# delete $tools{stanford};
+# delete $tools{spacy};
+# delete $tools{elephant};
 
 # Create project folders
 foreach (keys %tools) {
+  system 'rm -r ' . $empirist_path . 'cmc/' . $_;
   mkdir $empirist_path . 'cmc/' . $_;
+  system 'rm -r ' . $empirist_path . 'web/' . $_;
   mkdir $empirist_path . 'web/' . $_;
 };
 
diff --git a/benchmarks/ud_tokens.pl b/benchmarks/ud_tokens.pl
index 6ae8fba..089ee51 100644
--- a/benchmarks/ud_tokens.pl
+++ b/benchmarks/ud_tokens.pl
@@ -46,6 +46,12 @@
   syntok => sub {
     system 'python3 -m syntok.tokenizer ' . $raw . ' | sed "s/\s/\n/g" > ' . $ud_path . '/syntok/' . $base;
   },
+  elephant => sub {
+    system './elephant-wrapper/bin/tokenize.sh -i ' . $raw . ' UD_German | sed "s/\s/\n/g" > ' . $ud_path . '/elephant/' . $base;
+  },
+  spacy => sub {
+    system 'python3 ./spacy/spacy_tok.py ' . $raw . ' > ' . $ud_path . '/spacy/' . $base;
+  },
   somajo => sub {
     system 'somajo-tokenizer ' . $raw . ' 2> /dev/null > ' . $ud_path . '/somajo/' . $base;
   },
@@ -57,16 +63,18 @@
   }
 );
 
-# delete $tools{waste};
-# delete $tools{datok};
-# delete $tools{korap_tokenizer};
-# delete $tools{opennlp_simple};
-# delete $tools{opennlp_tokenizer};
-# delete $tools{tree_tagger};
-# delete $tools{jtok};
-# delete $tools{syntok};
-# delete $tools{somajo};
-# delete $tools{stanford};
+ delete $tools{waste};
+ delete $tools{datok};
+ delete $tools{korap_tokenizer};
+ delete $tools{opennlp_simple};
+ delete $tools{opennlp_tokenizer};
+ delete $tools{tree_tagger};
+ delete $tools{jtok};
+ delete $tools{syntok};
+ delete $tools{somajo};
+ delete $tools{stanford};
+# delete $tools{elephant};
+# delete $tools{spacy};
 
 # Create project folders
 foreach (keys %tools) {
