diff --git a/scripts/section_helper.sh b/scripts/section_helper.sh
new file mode 100644
index 0000000..ddefe0d
--- /dev/null
+++ b/scripts/section_helper.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+
+# Reference: https://docs.gitlab.com/ee/ci/jobs/#custom-collapsible-sections
+
+#
+# Takes 2 Parameters a new section id and a heading/title
+#
+function start_section() {
+  id=$1
+  title=$2
+  echo -e "\e[0Ksection_start:$(date +%s):${id}[collapsed=true]\r\e[0K\e[36;1m${title}\e[0m"
+}
+
+#
+# Takes 1 Parameter, the unique section id of the section that should end
+#
+function end_section() {
+  id=$1
+  echo -e "\e[0Ksection_end:$(date +%s):${id}\r\e[0K"
+}
diff --git a/scripts/udpipe2 b/scripts/udpipe2
new file mode 100755
index 0000000..ac7eec4
--- /dev/null
+++ b/scripts/udpipe2
@@ -0,0 +1,55 @@
+#!/bin/bash
+
+usage() { echo "Usage: $0 [-r | -s <server>] [-m <model>] [-l] < c.conllu > c.ud.conllu" 1>&2; exit 1; }
+
+LOCAL_SERVER=http://compute.ids-mannheim.de:8001
+LINDAT_SERVER=https://lindat.mff.cuni.cz/services/udpipe/api
+
+server=${LOCAL_SERVER}
+model=de_hdt
+
+udpipe_server_is_operational () {
+  [ $(curl -s -o /dev/null -w "%{http_code}" ${1}/models) -eq 200 ]
+}
+
+if ! udpipe_server_is_operational $server; then 
+    echo "WARING: Local server $server is not responding, defaulting to LINDAT server." >&2
+    server=$LINDAT_SERVER
+fi
+
+while getopts "s:m:rhl" o; do
+    case "${o}" in
+        r)
+            server=${LINDAT_SERVER}
+            ;;
+        s)
+            server=${OPTARG}
+            ;;
+        m)
+            model=${OPTARG}
+            ;;
+        l)
+            curl ${server}/models
+            exit 0
+            ;;
+        *)
+            usage
+            ;;
+    esac
+done
+shift $((OPTIND-1))
+
+if ! udpipe_server_is_operational $server; then 
+    echo "ERROR: Udpipe server $server is not operational." >&2
+    exit -1
+fi
+
+idx=1
+while [[ $idx -gt 0 ]]; do
+    idx=0
+    while IFS= read -r line && ( [[ $idx -lt 120000 ]] || ! [[ -z "$line" ]] ); do
+        $(( idx++ )) 2> /dev/null
+        echo "$line"
+#	echo "$line" >&2
+    done  > >(curl --silent -F data=@- -F model=${model} -F tagger= -F parser= ${server}/process | jq -j .result )
+done
